X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-mpeg%2Fsrc%2Fcodecs%2Faac%2Fsbr%2Fbs.rs;h=dbce7276c553aabf6c8de221087ec9fe03215b45;hb=b8ea95bcd62ebd2a6b58a889c0a2e0e35fa212d3;hp=74e820da626bc669289021eb8c4d8181e2ddfdaf;hpb=e36af1571ce5619b333843ef9e10ad36843c9178;p=nihav.git diff --git a/nihav-mpeg/src/codecs/aac/sbr/bs.rs b/nihav-mpeg/src/codecs/aac/sbr/bs.rs index 74e820d..dbce727 100644 --- a/nihav-mpeg/src/codecs/aac/sbr/bs.rs +++ b/nihav-mpeg/src/codecs/aac/sbr/bs.rs @@ -159,7 +159,7 @@ fn read_grid(br: &mut BitReader, chan: &mut SBRChannel) -> DecoderResult<()> { let var_bord_1 = br.read(2)? as u8; let num_rel_0 = br.read(2)? as usize; let num_rel_1 = br.read(2)? as usize; - chan.num_env = (num_rel_0 as usize) + (num_rel_1 as usize) + 1; + chan.num_env = num_rel_0 + num_rel_1 + 1; let mut rel_bord_0 = [0u8; NUM_ENVELOPES]; let mut rel_bord_1 = [0u8; NUM_ENVELOPES]; for el in rel_bord_0[..num_rel_0].iter_mut() { @@ -259,8 +259,8 @@ fn read_envelope(br: &mut BitReader, chan: &mut SBRChannel, coupled: bool, cbs: for (i, band_env) in envelope[..num_env_bands].iter_mut().enumerate() { let delta = br.read_cb(t_cb)?; let last = match (freq_res, chan.last_freq_res) { - (true, false) => chan.last_envelope[state.high_to_low_res[i]], - (false, true) => chan.last_envelope[state.low_to_high_res[i]], + (false, true) => chan.last_envelope[state.high_to_low_res[i]], + (true, false) => chan.last_envelope[state.low_to_high_res[i]], _ => chan.last_envelope[i], }; *band_env = last + delta * scale;