[FFmpeg-devel] [PATCH 2/2] avcodec/mpeg4videodec: Keep data_partitioning in sync between threads

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Fri Aug 19 23:16:04 EEST 2022


Andreas Rheinhardt:
> Fixes frame-threaded decoding of samples created by concatting
> a video with data partitioning and a video not using it.
> (Only the MPEG-4 decoder sets this, so it is synced in
> mpeg4_update_thread_context() despite being a MpegEncContext-field.)
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
>  libavcodec/mpeg4videodec.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c
> index bfebc3806c..d89adf8d63 100644
> --- a/libavcodec/mpeg4videodec.c
> +++ b/libavcodec/mpeg4videodec.c
> @@ -3534,6 +3534,7 @@ static int mpeg4_update_thread_context(AVCodecContext *dst,
>      s->vol_sprite_usage          = s1->vol_sprite_usage;
>      s->sprite_brightness_change  = s1->sprite_brightness_change;
>      s->num_sprite_warping_points = s1->num_sprite_warping_points;
> +    s->m.data_partitioning       = s1->m.data_partitioning;
>      s->rvlc                      = s1->rvlc;
>      s->resync_marker             = s1->resync_marker;
>      s->t_frame                   = s1->t_frame;

Will apply the remaining two patches of this patchset tomorrow unless
there are exceptions.

- Andreas


More information about the ffmpeg-devel mailing list