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

mpeg4videodec: move MpegEncContext.rvlc to Mpeg4DecContext

This commit is contained in:
Anton Khirnov 2013-11-26 11:23:16 +01:00
parent 9f0617d213
commit bc5abfb19e
4 changed files with 5 additions and 4 deletions

View File

@ -66,6 +66,8 @@ typedef struct Mpeg4DecContext {
int time_increment_bits;
int shape;
int vol_sprite_usage;
// reversible vlc
int rvlc;
} Mpeg4DecContext;
/* dc encoding for mpeg4 */

View File

@ -1226,7 +1226,7 @@ static int mpeg4_decode_partitioned_mb(MpegEncContext *s, int16_t block[6][64])
s->dsp.clear_blocks(s->block[0]);
/* decode each block */
for (i = 0; i < 6; i++) {
if (mpeg4_decode_block(s, block[i], i, cbp & 32, s->mb_intra, s->rvlc) < 0) {
if (mpeg4_decode_block(s, block[i], i, cbp & 32, s->mb_intra, ctx->rvlc) < 0) {
av_log(s->avctx, AV_LOG_ERROR,
"texture corrupted at %d %d %d\n",
s->mb_x, s->mb_y, s->mb_intra);
@ -1935,7 +1935,7 @@ no_cplx_est:
s->data_partitioning = get_bits1(gb);
if (s->data_partitioning)
s->rvlc = get_bits1(gb);
ctx->rvlc = get_bits1(gb);
if (vo_ver_id != 1) {
s->new_pred = get_bits1(gb);

View File

@ -599,7 +599,6 @@ typedef struct MpegEncContext {
int low_latency_sprite;
int data_partitioning; ///< data partitioning flag from header
int partitioned_frame; ///< is current frame partitioned
int rvlc; ///< reversible vlc
int resync_marker; ///< could this stream contain resync markers
int low_delay; ///< no reordering needed / has no b-frames
int vo_type;

View File

@ -71,7 +71,7 @@ static int vaapi_mpeg4_start_frame(AVCodecContext *avctx, av_unused const uint8_
pic_param->vol_fields.bits.quant_type = s->mpeg_quant;
pic_param->vol_fields.bits.quarter_sample = s->quarter_sample;
pic_param->vol_fields.bits.data_partitioned = s->data_partitioning;
pic_param->vol_fields.bits.reversible_vlc = s->rvlc;
pic_param->vol_fields.bits.reversible_vlc = ctx->rvlc;
pic_param->vol_fields.bits.resync_marker_disable = !s->resync_marker;
pic_param->no_of_sprite_warping_points = s->num_sprite_warping_points;
for (i = 0; i < s->num_sprite_warping_points && i < 3; i++) {