Browse Source

mpeg4videodec: move scalability from MpegEncContext to Mpeg4DecContext

tags/n2.2-rc1
Anton Khirnov 12 years ago
parent
commit
58c120a929
3 changed files with 5 additions and 5 deletions
  1. +1
    -0
      libavcodec/mpeg4video.h
  2. +4
    -4
      libavcodec/mpeg4videodec.c
  3. +0
    -1
      libavcodec/mpegvideo.h

+ 1
- 0
libavcodec/mpeg4video.h View File

@@ -75,6 +75,7 @@ typedef struct Mpeg4DecContext {

int new_pred;
int enhancement_type;
int scalability;

/* bug workarounds */
int divx_version;


+ 4
- 4
libavcodec/mpeg4videodec.c View File

@@ -1953,9 +1953,9 @@ no_cplx_est:
ctx->new_pred = 0;
}

s->scalability = get_bits1(gb);
ctx->scalability = get_bits1(gb);

if (s->scalability) {
if (ctx->scalability) {
GetBitContext bak = *gb;
int h_sampling_factor_n;
int h_sampling_factor_m;
@@ -1975,7 +1975,7 @@ no_cplx_est:
v_sampling_factor_n == 0 || v_sampling_factor_m == 0) {
/* illegal scalability header (VERY broken encoder),
* trying to workaround */
s->scalability = 0;
ctx->scalability = 0;
*gb = bak;
} else
av_log(s->avctx, AV_LOG_ERROR, "scalability not supported\n");
@@ -2249,7 +2249,7 @@ static int decode_vop_header(Mpeg4DecContext *ctx, GetBitContext *gb)
ctx->cplx_estimation_trash_b);
}

if (!s->scalability) {
if (!ctx->scalability) {
if (ctx->shape != RECT_SHAPE && s->pict_type != AV_PICTURE_TYPE_I)
skip_bits1(gb); // vop shape coding type
} else {


+ 0
- 1
libavcodec/mpegvideo.h View File

@@ -589,7 +589,6 @@ typedef struct MpegEncContext {
int mcsel;
int quant_precision;
int quarter_sample; ///< 1->qpel, 0->half pel ME/MC
int scalability;
int aspect_ratio_info; //FIXME remove
int sprite_warping_accuracy;
int data_partitioning; ///< data partitioning flag from header


Loading…
Cancel
Save