On Sat, May 23, 2020 at 06:09:06PM +0000, Lynne wrote:
> ffmpeg | branch: master | Lynne <d...@lynne.ee> | Thu May 14 00:37:21 2020 
> +0100| [727cac88b8c4b1facd93a3c863ef7e7072feda36] | committer: Lynne
> 
> lavfi/vulkan: use all enabled queues in the queue family
> 
> This should significantly improve the performance with certain
> filterchains.
> 
> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=727cac88b8c4b1facd93a3c863ef7e7072feda36
> ---
> 
>  libavfilter/vf_avgblur_vulkan.c   |  39 ++---
>  libavfilter/vf_chromaber_vulkan.c |  30 ++--
>  libavfilter/vf_overlay_vulkan.c   |  37 ++---
>  libavfilter/vf_scale_vulkan.c     |  30 ++--
>  libavfilter/vulkan.c              | 296 
> +++++++++++++++++++++++++++++---------
>  libavfilter/vulkan.h              |  74 ++++++++--
>  6 files changed, 371 insertions(+), 135 deletions(-)
> 
> diff --git a/libavfilter/vf_avgblur_vulkan.c b/libavfilter/vf_avgblur_vulkan.c
> index 105d753f73..12d57e0875 100644
> --- a/libavfilter/vf_avgblur_vulkan.c
> +++ b/libavfilter/vf_avgblur_vulkan.c
> @@ -97,6 +97,10 @@ static av_cold int init_filter(AVFilterContext *ctx, 
> AVFrame *in)
>      if (!sampler)
>          return AVERROR_EXTERNAL;
>  
> +    s->vkctx.queue_family_idx = s->vkctx.hwctx->queue_family_comp_index;
> +    s->vkctx.queue_count = GET_QUEUE_COUNT(s->vkctx.hwctx, 0, 1, 0);

> +    s->vkctx.cur_queue_idx = rand() % s->vkctx.queue_count;
[...]
> +    s->vkctx.cur_queue_idx = rand() % s->vkctx.queue_count;
[...]
> +    s->vkctx.cur_queue_idx = rand() % s->vkctx.queue_count;
[...]
> +    s->vkctx.cur_queue_idx = rand() % s->vkctx.queue_count;

This modifies global state, is neither thread safe nor can it be used from a
library (it breaks a user application using rand())

if you need a PRNG, 
Please see libavutil/lfg.h, or simply use a simple LCG like state= 
state*1664525+1013904223

thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

I have never wished to cater to the crowd; for what I know they do not
approve, and what they approve I do not know. -- Epicurus

Attachment: signature.asc
Description: PGP signature

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to