diff options
author | rfelker <rfelker@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-04-04 23:31:33 +0000 |
---|---|---|
committer | rfelker <rfelker@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-04-04 23:31:33 +0000 |
commit | ef714f38cafc6d44d9729e36f988f6333c55f9d1 (patch) | |
tree | 961830751074164891538db7cd6812e9c57528cd /libfaad2/output.c | |
parent | d27e670ad08df67877fd3e0d6e99dfcd2227f762 (diff) | |
download | mpv-ef714f38cafc6d44d9729e36f988f6333c55f9d1.tar.bz2 mpv-ef714f38cafc6d44d9729e36f988f6333c55f9d1.tar.xz |
100l, messed up coefficients when improving precision..
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15054 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libfaad2/output.c')
-rw-r--r-- | libfaad2/output.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libfaad2/output.c b/libfaad2/output.c index 6061519721..6b882ad6d1 100644 --- a/libfaad2/output.c +++ b/libfaad2/output.c @@ -573,10 +573,10 @@ void* output_to_PCM(NeAACDecHandle hDecoder, for(i = 0; i < frame_len; i++) { int32_t tmp; - tmp = (ch1[i] + ((ch0[i]+ch3[i])<<1) + (ch0[i]+ch3[i]) + (1<<(REAL_BITS+2))) >> (REAL_BITS+3); + tmp = ((ch1[i]<<2) + ((ch0[i]+ch3[i])<<1) + (ch0[i]+ch3[i]) + (1<<(REAL_BITS+2))) >> (REAL_BITS+3); if ((tmp+0x8000) & ~0xffff) tmp = ~(tmp>>31)-0x8000; short_sample_buffer[0] = tmp; - tmp = (ch2[i] + ((ch0[i]+ch4[i])<<1) + (ch0[i]+ch4[i]) + (1<<(REAL_BITS+2))) >> (REAL_BITS+3); + tmp = ((ch2[i]<<2) + ((ch0[i]+ch4[i])<<1) + (ch0[i]+ch4[i]) + (1<<(REAL_BITS+2))) >> (REAL_BITS+3); if ((tmp+0x8000) & ~0xffff) tmp = ~(tmp>>31)-0x8000; short_sample_buffer[1] = tmp; short_sample_buffer += channels; |