diff --git a/libavcodec/dxva2_vc1.c b/libavcodec/dxva2_vc1.c index 92c78fdf55..2e9a00eb07 100644 --- a/libavcodec/dxva2_vc1.c +++ b/libavcodec/dxva2_vc1.c @@ -97,7 +97,7 @@ static void fill_picture_parameters(AVCodecContext *avctx, (v->vstransform ); pp->bPicOverflowBlocks = (v->quantizer_mode << 6) | (v->multires << 5) | - (s->resync_marker << 4) | + (v->resync_marker << 4) | (v->rangered << 3) | (s->max_b_frames ); pp->bPicExtrapolation = (!v->interlace || v->fcm == PROGRESSIVE) ? 1 : 2; diff --git a/libavcodec/mss2.c b/libavcodec/mss2.c index 30bcc966c4..dd96394c31 100644 --- a/libavcodec/mss2.c +++ b/libavcodec/mss2.c @@ -778,7 +778,7 @@ static av_cold int wmv9_init(AVCodecContext *avctx) v->overlap = 0; - v->s.resync_marker = 0; + v->resync_marker = 0; v->rangered = 0; v->s.max_b_frames = avctx->max_b_frames = 0; diff --git a/libavcodec/vaapi_vc1.c b/libavcodec/vaapi_vc1.c index b8f0530f26..266fa3c5ba 100644 --- a/libavcodec/vaapi_vc1.c +++ b/libavcodec/vaapi_vc1.c @@ -169,7 +169,7 @@ static int vaapi_vc1_start_frame(AVCodecContext *avctx, av_unused const uint8_t pic_param->sequence_fields.bits.psf = v->psf; pic_param->sequence_fields.bits.multires = v->multires; pic_param->sequence_fields.bits.overlap = v->overlap; - pic_param->sequence_fields.bits.syncmarker = s->resync_marker; + pic_param->sequence_fields.bits.syncmarker = v->resync_marker; pic_param->sequence_fields.bits.rangered = v->rangered; pic_param->sequence_fields.bits.max_b_frames = s->avctx->max_b_frames; #if VA_CHECK_VERSION(0,32,0) diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c index 7a3331bc0c..181a4df378 100644 --- a/libavcodec/vc1.c +++ b/libavcodec/vc1.c @@ -367,7 +367,7 @@ int ff_vc1_decode_sequence_header(AVCodecContext *avctx, VC1Context *v, GetBitCo v->overlap = get_bits1(gb); //common - v->s.resync_marker = get_bits1(gb); + v->resync_marker = get_bits1(gb); v->rangered = get_bits1(gb); if (v->rangered && v->profile == PROFILE_SIMPLE) { av_log(avctx, AV_LOG_INFO, @@ -409,7 +409,7 @@ int ff_vc1_decode_sequence_header(AVCodecContext *avctx, VC1Context *v, GetBitCo "DQuant=%i, Quantizer mode=%i, Max B frames=%i\n", v->profile, v->frmrtq_postproc, v->bitrtq_postproc, v->s.loop_filter, v->multires, v->fastuvmc, v->extended_mv, - v->rangered, v->vstransform, v->overlap, v->s.resync_marker, + v->rangered, v->vstransform, v->overlap, v->resync_marker, v->dquant, v->quantizer_mode, avctx->max_b_frames); return 0; } diff --git a/libavcodec/vc1.h b/libavcodec/vc1.h index df69c77a4d..0cf4e0f9f7 100644 --- a/libavcodec/vc1.h +++ b/libavcodec/vc1.h @@ -399,6 +399,7 @@ typedef struct VC1Context{ int end_mb_x; ///< Horizontal macroblock limit (used only by mss2) int parse_only; ///< Context is used within parser + int resync_marker; ///< could this stream contain resync markers } VC1Context; /** Find VC-1 marker in buffer diff --git a/libavcodec/vdpau_vc1.c b/libavcodec/vdpau_vc1.c index c6e3343460..c655529aaf 100644 --- a/libavcodec/vdpau_vc1.c +++ b/libavcodec/vdpau_vc1.c @@ -87,7 +87,7 @@ static int vdpau_vc1_start_frame(AVCodecContext *avctx, info->range_mapuv = v->range_mapuv; /* Specific to simple/main profile only */ info->multires = v->multires; - info->syncmarker = v->s.resync_marker; + info->syncmarker = v->resync_marker; info->rangered = v->rangered | (v->rangeredfrm << 1); info->maxbframes = v->s.max_b_frames; info->deblockEnable = v->postprocflag & 1;