From af0fafcb6f086e4e0f087866b5de71c428049555 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 19 Dec 2012 21:38:39 +0100 Subject: [PATCH] h264: decode_update_thread_context() copy parameter sets before using them Signed-off-by: Michael Niedermayer --- libavcodec/h264.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavcodec/h264.c b/libavcodec/h264.c index b63fe9c318..63a4c76ac3 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1200,6 +1200,13 @@ static int decode_update_thread_context(AVCodecContext *dst, s->height = s1->height; s->mb_height = s1->mb_height; h->b_stride = h1->b_stride; + // SPS/PPS + copy_parameter_set((void **)h->sps_buffers, (void **)h1->sps_buffers, + MAX_SPS_COUNT, sizeof(SPS)); + h->sps = h1->sps; + copy_parameter_set((void **)h->pps_buffers, (void **)h1->pps_buffers, + MAX_PPS_COUNT, sizeof(PPS)); + h->pps = h1->pps; if ((err = h264_slice_header_init(h, 1)) < 0) { av_log(h->s.avctx, AV_LOG_ERROR, "h264_slice_header_init() failed");