[FFmpeg-devel] [PATCH] lavc/libaomenc: Add a maximum constraint of 64 encoder threads.

mypopy at gmail.com mypopy at gmail.com
Wed Nov 28 02:54:56 EET 2018


On Wed, Nov 28, 2018 at 4:47 AM Carl Eugen Hoyos <ceffmpeg at gmail.com> wrote:

> 2018-11-27 10:18 GMT+01:00, Jun Zhao <mypopydev at gmail.com>:
> > fixed the error in Intel(R) Xeon(R) Gold 6152 CPU like:
> > [libaom-av1 @ 0x469f340] Failed to initialize encoder: Invalid parameter
> > [libaom-av1 @ 0x469f340]   Additional information: g_threads out of range
> > [..MAX_NUM_THREADS]
> >
> > Signed-off-by: Jun Zhao <mypopydev at gmail.com>
> > ---
> >  libavcodec/libaomenc.c |    3 ++-
> >  1 files changed, 2 insertions(+), 1 deletions(-)
> >
> > diff --git a/libavcodec/libaomenc.c b/libavcodec/libaomenc.c
> > index cb31c55..ccb0cf9 100644
> > --- a/libavcodec/libaomenc.c
> > +++ b/libavcodec/libaomenc.c
> > @@ -504,7 +504,8 @@ static av_cold int aom_init(AVCodecContext *avctx,
> >      enccfg.g_h            = avctx->height;
> >      enccfg.g_timebase.num = avctx->time_base.num;
> >      enccfg.g_timebase.den = avctx->time_base.den;
> > -    enccfg.g_threads      = avctx->thread_count ? avctx->thread_count :
> > av_cpu_count();
> > +    enccfg.g_threads      =
> > +     FFMIN(avctx->thread_count ? avctx->thread_count : av_cpu_count(),
> 64);
>
> Is there a limitation in libaom's api that requires users to never set
> g_threads >64 that we missed so far?
> Or is there a bug in libaom that you would like to fix in FFmpeg?
>
> Please explain, Carl Eugen
>
> I  belive this is a libaom's limitation and we missed the check in FFmpeg
part,
libvpx have the same issue and the commit d6b1248fc try to fix the same
issue.


More information about the ffmpeg-devel mailing list