Correct order of parsing for pulse scalefactor band and offset to match the

specification.

Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15311 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Alex Converse 17 years ago committed by Robert Swain
parent 46cd15ca31
commit 19645d742e
  1. 2
      libavcodec/aac.c

@ -597,7 +597,7 @@ static int decode_scalefactors(AACContext * ac, float sf[120], GetBitContext * g
static void decode_pulses(Pulse * pulse, GetBitContext * gb, const uint16_t * swb_offset) { static void decode_pulses(Pulse * pulse, GetBitContext * gb, const uint16_t * swb_offset) {
int i; int i;
pulse->num_pulse = get_bits(gb, 2) + 1; pulse->num_pulse = get_bits(gb, 2) + 1;
pulse->pos[0] = get_bits(gb, 5) + swb_offset[get_bits(gb, 6)]; pulse->pos[0] = swb_offset[get_bits(gb, 6)] + get_bits(gb, 5);
pulse->amp[0] = get_bits(gb, 4); pulse->amp[0] = get_bits(gb, 4);
for (i = 1; i < pulse->num_pulse; i++) { for (i = 1; i < pulse->num_pulse; i++) {
pulse->pos[i] = get_bits(gb, 5) + pulse->pos[i-1]; pulse->pos[i] = get_bits(gb, 5) + pulse->pos[i-1];

Loading…
Cancel
Save