Browse Source

avcodec/wmalosslessdec: simplify

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.6
zhaoxiu.zeng Michael Niedermayer 11 years ago
parent
commit
9e6198f0a4
1 changed files with 4 additions and 12 deletions
  1. +4
    -12
      libavcodec/wmalosslessdec.c

+ 4
- 12
libavcodec/wmalosslessdec.c View File

@@ -553,10 +553,7 @@ static int decode_channel_residues(WmallDecodeCtx *s, int ch, int tile_size)
s->ave_sum[ch] = residue + s->ave_sum[ch] -
(s->ave_sum[ch] >> s->movave_scaling);

if (residue & 1)
residue = -(residue >> 1) - 1;
else
residue = residue >> 1;
residue = (residue >> 1) ^ -(residue & 1);
s->channel_residues[ch][i] = residue;
}

@@ -646,12 +643,8 @@ static void mclms_update(WmallDecodeCtx *s, int icoef, int *pred)

for (ich = num_channels - 1; ich >= 0; ich--) {
s->mclms_recent--;
s->mclms_prevvalues[s->mclms_recent] = s->channel_residues[ich][icoef];
if (s->channel_residues[ich][icoef] > range - 1)
s->mclms_prevvalues[s->mclms_recent] = range - 1;
else if (s->channel_residues[ich][icoef] < -range)
s->mclms_prevvalues[s->mclms_recent] = -range;

s->mclms_prevvalues[s->mclms_recent] = av_clip(s->channel_residues[ich][icoef],
-range, range - 1);
s->mclms_updates[s->mclms_recent] = WMASIGN(s->channel_residues[ich][icoef]);
}

@@ -1073,8 +1066,7 @@ static int decode_frame(WmallDecodeCtx *s)

av_dlog(s->avctx, "Frame done\n");

if (s->skip_frame)
s->skip_frame = 0;
s->skip_frame = 0;

if (s->len_prefix) {
if (len != (get_bits_count(gb) - s->frame_offset) + 2) {


Loading…
Cancel
Save