1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

vc1: move MpegEncContext.resync_marker into VC1Context.

The field still remains in MpegEncContext because it is used by the
mpeg4 decoder.
This commit is contained in:
Anton Khirnov 2013-11-26 12:18:44 +01:00
parent a5a71992ca
commit c2f7417eeb
6 changed files with 7 additions and 6 deletions

View File

@ -97,7 +97,7 @@ static void fill_picture_parameters(AVCodecContext *avctx,
(v->vstransform ); (v->vstransform );
pp->bPicOverflowBlocks = (v->quantizer_mode << 6) | pp->bPicOverflowBlocks = (v->quantizer_mode << 6) |
(v->multires << 5) | (v->multires << 5) |
(s->resync_marker << 4) | (v->resync_marker << 4) |
(v->rangered << 3) | (v->rangered << 3) |
(s->max_b_frames ); (s->max_b_frames );
pp->bPicExtrapolation = (!v->interlace || v->fcm == PROGRESSIVE) ? 1 : 2; pp->bPicExtrapolation = (!v->interlace || v->fcm == PROGRESSIVE) ? 1 : 2;

View File

@ -779,7 +779,7 @@ static av_cold int wmv9_init(AVCodecContext *avctx)
v->overlap = 0; v->overlap = 0;
v->s.resync_marker = 0; v->resync_marker = 0;
v->rangered = 0; v->rangered = 0;
v->s.max_b_frames = avctx->max_b_frames = 0; v->s.max_b_frames = avctx->max_b_frames = 0;

View File

@ -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.psf = v->psf;
pic_param->sequence_fields.bits.multires = v->multires; pic_param->sequence_fields.bits.multires = v->multires;
pic_param->sequence_fields.bits.overlap = v->overlap; 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.rangered = v->rangered;
pic_param->sequence_fields.bits.max_b_frames = s->avctx->max_b_frames; pic_param->sequence_fields.bits.max_b_frames = s->avctx->max_b_frames;
#if VA_CHECK_VERSION(0,32,0) #if VA_CHECK_VERSION(0,32,0)

View File

@ -367,7 +367,7 @@ int ff_vc1_decode_sequence_header(AVCodecContext *avctx, VC1Context *v, GetBitCo
v->overlap = get_bits1(gb); //common v->overlap = get_bits1(gb); //common
v->s.resync_marker = get_bits1(gb); v->resync_marker = get_bits1(gb);
v->rangered = get_bits1(gb); v->rangered = get_bits1(gb);
if (v->rangered && v->profile == PROFILE_SIMPLE) { if (v->rangered && v->profile == PROFILE_SIMPLE) {
av_log(avctx, AV_LOG_INFO, av_log(avctx, AV_LOG_INFO,
@ -408,7 +408,7 @@ int ff_vc1_decode_sequence_header(AVCodecContext *avctx, VC1Context *v, GetBitCo
"DQuant=%i, Quantizer mode=%i, Max B frames=%i\n", "DQuant=%i, Quantizer mode=%i, Max B frames=%i\n",
v->profile, v->frmrtq_postproc, v->bitrtq_postproc, v->profile, v->frmrtq_postproc, v->bitrtq_postproc,
v->s.loop_filter, v->multires, v->fastuvmc, v->extended_mv, 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); v->dquant, v->quantizer_mode, avctx->max_b_frames);
return 0; return 0;
} }

View File

@ -401,6 +401,7 @@ typedef struct VC1Context{
int end_mb_x; ///< Horizontal macroblock limit (used only by mss2) int end_mb_x; ///< Horizontal macroblock limit (used only by mss2)
int parse_only; ///< Context is used within parser int parse_only; ///< Context is used within parser
int resync_marker; ///< could this stream contain resync markers
} VC1Context; } VC1Context;
/** Find VC-1 marker in buffer /** Find VC-1 marker in buffer

View File

@ -83,7 +83,7 @@ static int vdpau_vc1_start_frame(AVCodecContext *avctx,
info->range_mapuv = v->range_mapuv; info->range_mapuv = v->range_mapuv;
/* Specific to simple/main profile only */ /* Specific to simple/main profile only */
info->multires = v->multires; info->multires = v->multires;
info->syncmarker = v->s.resync_marker; info->syncmarker = v->resync_marker;
info->rangered = v->rangered | (v->rangeredfrm << 1); info->rangered = v->rangered | (v->rangeredfrm << 1);
info->maxbframes = v->s.max_b_frames; info->maxbframes = v->s.max_b_frames;
info->deblockEnable = v->postprocflag & 1; info->deblockEnable = v->postprocflag & 1;