Remove all kind of trailing whitespaces from all MPlayer's files.
authorbircoph <bircoph@b3059339-0415-0410-9bf9-f77b7e298cf2>
Wed, 13 May 2009 15:22:13 +0000 (15:22 +0000)
committerbircoph <bircoph@b3059339-0415-0410-9bf9-f77b7e298cf2>
Wed, 13 May 2009 15:22:13 +0000 (15:22 +0000)
This affects all kind of spaces (' ',^I,^M,^L,...): actually
[:space:] regex character set.

git-svn-id: svn://git.mplayerhq.hu/mplayer/trunk@29306 b3059339-0415-0410-9bf9-f77b7e298cf2

132 files changed:
LICENSE
liba52/bitstream.c
liba52/bitstream.h
liba52/crc.c
liba52/downmix.c
liba52/imdct.c
liba52/imdct_3dnow.h
liba52/liba52_changes.diff
liba52/parse.c
liba52/srfftp.h
liba52/srfftp_3dnow.h
liba52/test.c
libfaad2/analysis.h
libfaad2/bits.c
libfaad2/cfft.h
libfaad2/codebook/hcb.h
libfaad2/codebook/hcb_1.h
libfaad2/codebook/hcb_10.h
libfaad2/codebook/hcb_11.h
libfaad2/codebook/hcb_2.h
libfaad2/codebook/hcb_3.h
libfaad2/codebook/hcb_4.h
libfaad2/codebook/hcb_5.h
libfaad2/codebook/hcb_6.h
libfaad2/codebook/hcb_7.h
libfaad2/codebook/hcb_8.h
libfaad2/codebook/hcb_9.h
libfaad2/codebook/hcb_sf.h
libfaad2/decoder.c
libfaad2/decoder.h
libfaad2/drc.c
libfaad2/drc.h
libfaad2/drm_dec.c
libfaad2/drm_dec.h
libfaad2/error.c
libfaad2/error.h
libfaad2/filtbank.c
libfaad2/filtbank.h
libfaad2/fixed.h
libfaad2/hcr.c
libfaad2/huffman.c
libfaad2/huffman.h
libfaad2/ic_predict.c
libfaad2/ic_predict.h
libfaad2/iq_table.h
libfaad2/is.c
libfaad2/is.h
libfaad2/kbd_win.h
libfaad2/local_changes.diff
libfaad2/lt_predict.c
libfaad2/lt_predict.h
libfaad2/mdct.c
libfaad2/mdct.h
libfaad2/mdct_tab.h
libfaad2/mp4.c
libfaad2/mp4.h
libfaad2/ms.c
libfaad2/ms.h
libfaad2/output.h
libfaad2/pns.c
libfaad2/pns.h
libfaad2/ps_dec.c
libfaad2/ps_dec.h
libfaad2/pulse.c
libfaad2/pulse.h
libfaad2/rvlc.c
libfaad2/rvlc.h
libfaad2/sbr_dct.h
libfaad2/sbr_dec.c
libfaad2/sbr_e_nf.c
libfaad2/sbr_e_nf.h
libfaad2/sbr_fbt.c
libfaad2/sbr_fbt.h
libfaad2/sbr_hfadj.c
libfaad2/sbr_hfadj.h
libfaad2/sbr_hfgen.c
libfaad2/sbr_hfgen.h
libfaad2/sbr_huff.c
libfaad2/sbr_huff.h
libfaad2/sbr_noise.h
libfaad2/sbr_qmf.h
libfaad2/sbr_syntax.c
libfaad2/sbr_syntax.h
libfaad2/sbr_tf_grid.c
libfaad2/sbr_tf_grid.h
libfaad2/sine_win.h
libfaad2/specrec.c
libfaad2/specrec.h
libfaad2/ssr.c
libfaad2/ssr.h
libfaad2/ssr_fb.c
libfaad2/ssr_fb.h
libfaad2/ssr_ipqf.c
libfaad2/ssr_ipqf.h
libfaad2/ssr_win.h
libfaad2/syntax.c
libfaad2/syntax.h
libfaad2/tns.c
libfaad2/tns.h
libmpeg2/alpha_asm.h
libmpeg2/cpu_accel.c
libmpeg2/header.c
libmpeg2/idct_alpha.c
libmpeg2/libmpeg2_changes.diff
libmpeg2/slice.c
tremor/asm_arm.h
tremor/backends.h
tremor/bitwise.c
tremor/block.c
tremor/codebook.c
tremor/codebook.h
tremor/codec_internal.h
tremor/floor0.c
tremor/floor1.c
tremor/framing.c
tremor/info.c
tremor/ivorbiscodec.h
tremor/mapping0.c
tremor/mdct.c
tremor/mdct_lookup.h
tremor/misc.h
tremor/ogg.h
tremor/os.h
tremor/os_types.h
tremor/res012.c
tremor/sharedbook.c
tremor/synthesis.c
tremor/tremor.diff
tremor/window.c
vidix/dhahelperwin/common.ver
vidix/dhahelperwin/dhahelper.rc
vidix/dhahelperwin/ntverp.h

diff --git a/LICENSE b/LICENSE
index 983f982..3841ae9 100644 (file)
--- a/LICENSE
+++ b/LICENSE
@@ -55,7 +55,7 @@ patent must be licensed for everyone's free use or not licensed at all.
 
   The precise terms and conditions for copying, distribution and
 modification follow.
-\f
+
                    GNU GENERAL PUBLIC LICENSE
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 
@@ -110,7 +110,7 @@ above, provided that you also meet all of these conditions:
     License.  (Exception: if the Program itself is interactive but
     does not normally print such an announcement, your work based on
     the Program is not required to print an announcement.)
-\f
+
 These requirements apply to the modified work as a whole.  If
 identifiable sections of that work are not derived from the Program,
 and can be reasonably considered independent and separate works in
@@ -168,7 +168,7 @@ access to copy from a designated place, then offering equivalent
 access to copy the source code from the same place counts as
 distribution of the source code, even though third parties are not
 compelled to copy the source along with the object code.
-\f
+
   4. You may not copy, modify, sublicense, or distribute the Program
 except as expressly provided under this License.  Any attempt
 otherwise to copy, modify, sublicense or distribute the Program is
@@ -225,7 +225,7 @@ impose that choice.
 
 This section is intended to make thoroughly clear what is believed to
 be a consequence of the rest of this License.
-\f
+
   8. If the distribution and/or use of the Program is restricted in
 certain countries either by patents or by copyrighted interfaces, the
 original copyright holder who places the Program under this License
@@ -278,7 +278,7 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
 POSSIBILITY OF SUCH DAMAGES.
 
                     END OF TERMS AND CONDITIONS
-\f
+
            How to Apply These Terms to Your New Programs
 
   If you develop a new program, and you want it to be of the greatest
index a46ccce..7307527 100644 (file)
@@ -99,7 +99,7 @@ int32_t a52_bitstream_get_bh_2 (a52_state_t * state, uint32_t num_bits)
 
     if (num_bits != 0)
        result = (result << num_bits) | (state->current_word >> (32 - num_bits));
-       
+
     state->bits_left = 32 - num_bits;
 
     return result;
index 8500212..e894f16 100644 (file)
@@ -104,11 +104,11 @@ static inline uint32_t bitstream_get (a52_state_t * state, uint32_t num_bits)
     result<<= (indx&0x07);
     result>>= 32 - num_bits;
     indx+= num_bits;
-    
+
     return result;
 #else
     uint32_t result;
-       
+
     if (num_bits < state->bits_left) {
        result = (state->current_word << (32 - state->bits_left)) >> (32 - num_bits);
        state->bits_left -= num_bits;
@@ -136,11 +136,11 @@ static inline int32_t bitstream_get_2 (a52_state_t * state, uint32_t num_bits)
     result<<= (indx&0x07);
     result>>= 32 - num_bits;
     indx+= num_bits;
-        
+
     return result;
 #else
     int32_t result;
-       
+
     if (num_bits < state->bits_left) {
        result = (((int32_t)state->current_word) << (32 - state->bits_left)) >> (32 - num_bits);
        state->bits_left -= num_bits;
index d19a4a2..aa0a19c 100644 (file)
@@ -1,23 +1,23 @@
-/* 
+/*
  *    crc.c
  *
  *     Copyright (C) Aaron Holtzman - May 1999
  *
  *  This file is part of ac3dec, a free Dolby AC-3 stream decoder.
- *     
+ *
  *  ac3dec is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
  *  the Free Software Foundation; either version 2, or (at your option)
  *  any later version.
- *   
+ *
  *  ac3dec is distributed in the hope that it will be useful,
  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  *  GNU General Public License for more details.
- *   
+ *
  *  You should have received a copy of the GNU General Public License
  *  along with GNU Make; see the file COPYING.  If not, write to
- *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 
+ *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  *
  */
 
@@ -25,7 +25,7 @@
 #include <stdio.h>
 #include <inttypes.h>
 
-static const uint16_t crc_lut[256] = 
+static const uint16_t crc_lut[256] =
 {
        0x0000,0x8005,0x800f,0x000a,0x801b,0x001e,0x0014,0x8011,
        0x8033,0x0036,0x003c,0x8039,0x0028,0x802d,0x8027,0x0022,
index c44317f..212c87d 100644 (file)
@@ -62,7 +62,7 @@ void downmix_accel_init(uint32_t mm_accel)
     if(mm_accel & MM_ACCEL_X86_3DNOW) a52_downmix= downmix_3dnow;
 #endif
 }
+
 int a52_downmix_init (int input, int flags, sample_t * level,
                      sample_t clev, sample_t slev)
 {
@@ -695,10 +695,10 @@ static void mix2to1_SSE (sample_t * dest, sample_t * src, sample_t bias)
        "mov $-1024, %%"REG_S"          \n\t"
        ASMALIGN(4)
        "1:                             \n\t"
-       "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-       "movaps 16(%0, %%"REG_S"), %%xmm1\n\t" 
-       "addps (%1, %%"REG_S"), %%xmm0  \n\t" 
-       "addps 16(%1, %%"REG_S"), %%xmm1\n\t" 
+       "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
+       "movaps 16(%0, %%"REG_S"), %%xmm1\n\t"
+       "addps (%1, %%"REG_S"), %%xmm0  \n\t"
+       "addps 16(%1, %%"REG_S"), %%xmm1\n\t"
        "addps %%xmm7, %%xmm0           \n\t"
        "addps %%xmm7, %%xmm1           \n\t"
        "movaps %%xmm0, (%1, %%"REG_S") \n\t"
@@ -718,9 +718,9 @@ static void mix3to1_SSE (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"          \n\t"
        ASMALIGN(4)
        "1:                             \n\t"
-       "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-       "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" 
-       "addps 2048(%0, %%"REG_S"), %%xmm0\n\t" 
+       "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
+       "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t"
+       "addps 2048(%0, %%"REG_S"), %%xmm0\n\t"
        "addps %%xmm7, %%xmm1           \n\t"
        "addps %%xmm1, %%xmm0           \n\t"
        "movaps %%xmm0, (%0, %%"REG_S") \n\t"
@@ -739,10 +739,10 @@ static void mix4to1_SSE (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"          \n\t"
        ASMALIGN(4)
        "1:                             \n\t"
-       "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-       "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" 
-       "addps 2048(%0, %%"REG_S"), %%xmm0\n\t" 
-       "addps 3072(%0, %%"REG_S"), %%xmm1\n\t" 
+       "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
+       "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t"
+       "addps 2048(%0, %%"REG_S"), %%xmm0\n\t"
+       "addps 3072(%0, %%"REG_S"), %%xmm1\n\t"
        "addps %%xmm7, %%xmm0           \n\t"
        "addps %%xmm1, %%xmm0           \n\t"
        "movaps %%xmm0, (%0, %%"REG_S") \n\t"
@@ -761,12 +761,12 @@ static void mix5to1_SSE (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"          \n\t"
        ASMALIGN(4)
        "1:                             \n\t"
-       "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-       "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" 
-       "addps 2048(%0, %%"REG_S"), %%xmm0\n\t" 
-       "addps 3072(%0, %%"REG_S"), %%xmm1\n\t" 
+       "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
+       "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t"
+       "addps 2048(%0, %%"REG_S"), %%xmm0\n\t"
+       "addps 3072(%0, %%"REG_S"), %%xmm1\n\t"
        "addps %%xmm7, %%xmm0           \n\t"
-       "addps 4096(%0, %%"REG_S"), %%xmm1\n\t" 
+       "addps 4096(%0, %%"REG_S"), %%xmm1\n\t"
        "addps %%xmm1, %%xmm0           \n\t"
        "movaps %%xmm0, (%0, %%"REG_S") \n\t"
        "add $16, %%"REG_S"             \n\t"
@@ -784,9 +784,9 @@ static void mix3to2_SSE (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"          \n\t"
        ASMALIGN(4)
        "1:                             \n\t"
-       "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" 
+       "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
        "addps %%xmm7, %%xmm0           \n\t" //common
-       "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
+       "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
        "movaps 2048(%0, %%"REG_S"), %%xmm2\n\t"
        "addps %%xmm0, %%xmm1           \n\t"
        "addps %%xmm0, %%xmm2           \n\t"
@@ -807,9 +807,9 @@ static void mix21to2_SSE (sample_t * left, sample_t * right, sample_t bias)
                "mov $-1024, %%"REG_S"          \n\t"
                ASMALIGN(4)
                "1:                             \n\t"
-               "movaps 1024(%1, %%"REG_S"), %%xmm0\n\t" 
+               "movaps 1024(%1, %%"REG_S"), %%xmm0\n\t"
                "addps %%xmm7, %%xmm0           \n\t" //common
-               "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
+               "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
                "movaps (%1, %%"REG_S"), %%xmm2 \n\t"
                "addps %%xmm0, %%xmm1           \n\t"
                "addps %%xmm0, %%xmm2           \n\t"
@@ -831,7 +831,7 @@ static void mix21toS_SSE (sample_t * samples, sample_t bias)
                ASMALIGN(4)
                "1:                             \n\t"
                "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t"  // surround
-               "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
+               "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
                "movaps 1024(%0, %%"REG_S"), %%xmm2\n\t"
                "addps %%xmm7, %%xmm1           \n\t"
                "addps %%xmm7, %%xmm2           \n\t"
@@ -854,10 +854,10 @@ static void mix31to2_SSE (sample_t * samples, sample_t bias)
                "mov $-1024, %%"REG_S"          \n\t"
                ASMALIGN(4)
                "1:                             \n\t"
-               "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"  
-               "addps 3072(%0, %%"REG_S"), %%xmm0\n\t"  
+               "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
+               "addps 3072(%0, %%"REG_S"), %%xmm0\n\t"
                "addps %%xmm7, %%xmm0           \n\t" // common
-               "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
+               "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
                "movaps 2048(%0, %%"REG_S"), %%xmm2\n\t"
                "addps %%xmm0, %%xmm1           \n\t"
                "addps %%xmm0, %%xmm2           \n\t"
@@ -878,10 +878,10 @@ static void mix31toS_SSE (sample_t * samples, sample_t bias)
                "mov $-1024, %%"REG_S"          \n\t"
                ASMALIGN(4)
                "1:                             \n\t"
-               "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"  
+               "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
                "movaps 3072(%0, %%"REG_S"), %%xmm3\n\t" // surround
                "addps %%xmm7, %%xmm0           \n\t" // common
-               "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
+               "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
                "movaps 2048(%0, %%"REG_S"), %%xmm2\n\t"
                "addps %%xmm0, %%xmm1           \n\t"
                "addps %%xmm0, %%xmm2           \n\t"
@@ -904,9 +904,9 @@ static void mix22toS_SSE (sample_t * samples, sample_t bias)
                "mov $-1024, %%"REG_S"          \n\t"
                ASMALIGN(4)
                "1:                             \n\t"
-               "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t"  
+               "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t"
                "addps 3072(%0, %%"REG_S"), %%xmm0\n\t" // surround
-               "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
+               "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
                "movaps 1024(%0, %%"REG_S"), %%xmm2\n\t"
                "addps %%xmm7, %%xmm1           \n\t"
                "addps %%xmm7, %%xmm2           \n\t"
@@ -929,13 +929,13 @@ static void mix32to2_SSE (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"          \n\t"
        ASMALIGN(4)
        "1:                             \n\t"
-       "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" 
+       "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
        "addps %%xmm7, %%xmm0           \n\t" // common
        "movaps %%xmm0, %%xmm1          \n\t" // common
-       "addps (%0, %%"REG_S"), %%xmm0  \n\t" 
-       "addps 2048(%0, %%"REG_S"), %%xmm1\n\t" 
-       "addps 3072(%0, %%"REG_S"), %%xmm0\n\t" 
-       "addps 4096(%0, %%"REG_S"), %%xmm1\n\t" 
+       "addps (%0, %%"REG_S"), %%xmm0  \n\t"
+       "addps 2048(%0, %%"REG_S"), %%xmm1\n\t"
+       "addps 3072(%0, %%"REG_S"), %%xmm0\n\t"
+       "addps 4096(%0, %%"REG_S"), %%xmm1\n\t"
        "movaps %%xmm0, (%0, %%"REG_S") \n\t"
        "movaps %%xmm1, 1024(%0, %%"REG_S")\n\t"
        "add $16, %%"REG_S"             \n\t"
@@ -953,16 +953,16 @@ static void mix32toS_SSE (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"          \n\t"
        ASMALIGN(4)
        "1:                             \n\t"
-       "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" 
-       "movaps 3072(%0, %%"REG_S"), %%xmm2\n\t" 
+       "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
+       "movaps 3072(%0, %%"REG_S"), %%xmm2\n\t"
        "addps %%xmm7, %%xmm0           \n\t" // common
-       "addps 4096(%0, %%"REG_S"), %%xmm2\n\t" // surround     
-       "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
-       "movaps 2048(%0, %%"REG_S"), %%xmm3\n\t" 
-       "subps %%xmm2, %%xmm1           \n\t"   
-       "addps %%xmm2, %%xmm3           \n\t"   
-       "addps %%xmm0, %%xmm1           \n\t"   
-       "addps %%xmm0, %%xmm3           \n\t"   
+       "addps 4096(%0, %%"REG_S"), %%xmm2\n\t" // surround
+       "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
+       "movaps 2048(%0, %%"REG_S"), %%xmm3\n\t"
+       "subps %%xmm2, %%xmm1           \n\t"
+       "addps %%xmm2, %%xmm3           \n\t"
+       "addps %%xmm0, %%xmm1           \n\t"
+       "addps %%xmm0, %%xmm3           \n\t"
        "movaps %%xmm1, (%0, %%"REG_S") \n\t"
        "movaps %%xmm3, 1024(%0, %%"REG_S")\n\t"
        "add $16, %%"REG_S"             \n\t"
@@ -980,8 +980,8 @@ static void move2to1_SSE (sample_t * src, sample_t * dest, sample_t bias)
                "mov $-1024, %%"REG_S"          \n\t"
                ASMALIGN(4)
                "1:                             \n\t"
-               "movaps (%0, %%"REG_S"), %%xmm0 \n\t"  
-               "movaps 16(%0, %%"REG_S"), %%xmm1\n\t"  
+               "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
+               "movaps 16(%0, %%"REG_S"), %%xmm1\n\t"
                "addps 1024(%0, %%"REG_S"), %%xmm0\n\t"
                "addps 1040(%0, %%"REG_S"), %%xmm1\n\t"
                "addps %%xmm7, %%xmm0           \n\t"
@@ -1229,13 +1229,13 @@ static void mix2to1_3dnow (sample_t * dest, sample_t * src, sample_t bias)
        "mov $-1024, %%"REG_S"  \n\t"
        ASMALIGN(4)
        "1:                     \n\t"
-       "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
+       "movq  (%0, %%"REG_S"), %%mm0   \n\t"
        "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-       "movq  16(%0, %%"REG_S"), %%mm2 \n\t" 
+       "movq  16(%0, %%"REG_S"), %%mm2 \n\t"
        "movq  24(%0, %%"REG_S"), %%mm3 \n\t"
-       "pfadd (%1, %%"REG_S"), %%mm0   \n\t" 
+       "pfadd (%1, %%"REG_S"), %%mm0   \n\t"
        "pfadd 8(%1, %%"REG_S"), %%mm1  \n\t"
-       "pfadd 16(%1, %%"REG_S"), %%mm2 \n\t" 
+       "pfadd 16(%1, %%"REG_S"), %%mm2 \n\t"
        "pfadd 24(%1, %%"REG_S"), %%mm3 \n\t"
        "pfadd %%mm7, %%mm0             \n\t"
        "pfadd %%mm7, %%mm1             \n\t"
@@ -1260,11 +1260,11 @@ static void mix3to1_3dnow (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"  \n\t"
        ASMALIGN(4)
        "1:                     \n\t"
-       "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
+       "movq  (%0, %%"REG_S"), %%mm0   \n\t"
        "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-       "movq  1024(%0, %%"REG_S"), %%mm2\n\t" 
+       "movq  1024(%0, %%"REG_S"), %%mm2\n\t"
        "movq  1032(%0, %%"REG_S"), %%mm3\n\t"
-       "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t" 
+       "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t"
        "pfadd 2056(%0, %%"REG_S"), %%mm1\n\t"
        "pfadd %%mm7, %%mm0             \n\t"
        "pfadd %%mm7, %%mm1             \n\t"
@@ -1287,13 +1287,13 @@ static void mix4to1_3dnow (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"  \n\t"
        ASMALIGN(4)
        "1:                     \n\t"
-       "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
+       "movq  (%0, %%"REG_S"), %%mm0   \n\t"
        "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-       "movq  1024(%0, %%"REG_S"), %%mm2\n\t" 
+       "movq  1024(%0, %%"REG_S"), %%mm2\n\t"
        "movq  1032(%0, %%"REG_S"), %%mm3\n\t"
-       "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t" 
+       "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t"
        "pfadd 2056(%0, %%"REG_S"), %%mm1\n\t"
-       "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t" 
+       "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t"
        "pfadd 3080(%0, %%"REG_S"), %%mm3\n\t"
        "pfadd %%mm7, %%mm0             \n\t"
        "pfadd %%mm7, %%mm1             \n\t"
@@ -1316,17 +1316,17 @@ static void mix5to1_3dnow (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"  \n\t"
        ASMALIGN(4)
        "1:                     \n\t"
-       "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
+       "movq  (%0, %%"REG_S"), %%mm0   \n\t"
        "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-       "movq  1024(%0, %%"REG_S"), %%mm2\n\t" 
+       "movq  1024(%0, %%"REG_S"), %%mm2\n\t"
        "movq  1032(%0, %%"REG_S"), %%mm3\n\t"
-       "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t" 
+       "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t"
        "pfadd 2056(%0, %%"REG_S"), %%mm1\n\t"
-       "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t" 
+       "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t"
        "pfadd 3080(%0, %%"REG_S"), %%mm3\n\t"
        "pfadd %%mm7, %%mm0             \n\t"
        "pfadd %%mm7, %%mm1             \n\t"
-       "pfadd 4096(%0, %%"REG_S"), %%mm2\n\t" 
+       "pfadd 4096(%0, %%"REG_S"), %%mm2\n\t"
        "pfadd 4104(%0, %%"REG_S"), %%mm3\n\t"
        "pfadd %%mm2, %%mm0             \n\t"
        "pfadd %%mm3, %%mm1             \n\t"
@@ -1347,11 +1347,11 @@ static void mix3to2_3dnow (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"  \n\t"
        ASMALIGN(4)
        "1:                     \n\t"
-       "movq   1024(%0, %%"REG_S"), %%mm0\n\t" 
+       "movq   1024(%0, %%"REG_S"), %%mm0\n\t"
        "movq   1032(%0, %%"REG_S"), %%mm1\n\t"
        "pfadd  %%mm7, %%mm0            \n\t" //common
        "pfadd  %%mm7, %%mm1            \n\t" //common
-       "movq   (%0, %%"REG_S"), %%mm2  \n\t" 
+       "movq   (%0, %%"REG_S"), %%mm2  \n\t"
        "movq   8(%0, %%"REG_S"), %%mm3 \n\t"
        "movq   2048(%0, %%"REG_S"), %%mm4\n\t"
        "movq   2056(%0, %%"REG_S"), %%mm5\n\t"
@@ -1378,11 +1378,11 @@ static void mix21to2_3dnow (sample_t * left, sample_t * right, sample_t bias)
                "mov $-1024, %%"REG_S"  \n\t"
                ASMALIGN(4)
                "1:                     \n\t"
-               "movq  1024(%1, %%"REG_S"), %%mm0\n\t" 
+               "movq  1024(%1, %%"REG_S"), %%mm0\n\t"
                "movq  1032(%1, %%"REG_S"), %%mm1\n\t"
                "pfadd %%mm7, %%mm0             \n\t" //common
                "pfadd %%mm7, %%mm1             \n\t" //common
-               "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
+               "movq  (%0, %%"REG_S"), %%mm2   \n\t"
                "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
                "movq  (%1, %%"REG_S"), %%mm4   \n\t"
                "movq  8(%1, %%"REG_S"), %%mm5  \n\t"
@@ -1411,7 +1411,7 @@ static void mix21toS_3dnow (sample_t * samples, sample_t bias)
                "1:                     \n\t"
                "movq  2048(%0, %%"REG_S"), %%mm0\n\t"  // surround
                "movq  2056(%0, %%"REG_S"), %%mm1\n\t"  // surround
-               "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
+               "movq  (%0, %%"REG_S"), %%mm2   \n\t"
                "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
                "movq  1024(%0, %%"REG_S"), %%mm4\n\t"
                "movq  1032(%0, %%"REG_S"), %%mm5\n\t"
@@ -1442,13 +1442,13 @@ static void mix31to2_3dnow (sample_t * samples, sample_t bias)
                "mov $-1024, %%"REG_S"  \n\t"
                ASMALIGN(4)
                "1:                     \n\t"
-               "movq  1024(%0, %%"REG_S"), %%mm0\n\t"  
+               "movq  1024(%0, %%"REG_S"), %%mm0\n\t"
                "movq  1032(%0, %%"REG_S"), %%mm1\n\t"
-               "pfadd 3072(%0, %%"REG_S"), %%mm0\n\t"  
+               "pfadd 3072(%0, %%"REG_S"), %%mm0\n\t"
                "pfadd 3080(%0, %%"REG_S"), %%mm1\n\t"
                "pfadd %%mm7, %%mm0             \n\t" // common
                "pfadd %%mm7, %%mm1             \n\t" // common
-               "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
+               "movq  (%0, %%"REG_S"), %%mm2   \n\t"
                "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
                "movq  2048(%0, %%"REG_S"), %%mm4\n\t"
                "movq  2056(%0, %%"REG_S"), %%mm5\n\t"
@@ -1475,11 +1475,11 @@ static void mix31toS_3dnow (sample_t * samples, sample_t bias)
                "mov $-1024, %%"REG_S"  \n\t"
                ASMALIGN(4)
                "1:                     \n\t"
-               "movq   1024(%0, %%"REG_S"), %%mm0\n\t"  
+               "movq   1024(%0, %%"REG_S"), %%mm0\n\t"
                "movq   1032(%0, %%"REG_S"), %%mm1\n\t"
                "pfadd  %%mm7, %%mm0            \n\t" // common
                "pfadd  %%mm7, %%mm1            \n\t" // common
-               "movq   (%0, %%"REG_S"), %%mm2  \n\t" 
+               "movq   (%0, %%"REG_S"), %%mm2  \n\t"
                "movq   8(%0, %%"REG_S"), %%mm3 \n\t"
                "movq   2048(%0, %%"REG_S"), %%mm4\n\t"
                "movq   2056(%0, %%"REG_S"), %%mm5\n\t"
@@ -1512,11 +1512,11 @@ static void mix22toS_3dnow (sample_t * samples, sample_t bias)
                "mov $-1024, %%"REG_S"  \n\t"
                ASMALIGN(4)
                "1:                     \n\t"
-               "movq  2048(%0, %%"REG_S"), %%mm0\n\t"  
+               "movq  2048(%0, %%"REG_S"), %%mm0\n\t"
                "movq  2056(%0, %%"REG_S"), %%mm1\n\t"
                "pfadd 3072(%0, %%"REG_S"), %%mm0\n\t" // surround
                "pfadd 3080(%0, %%"REG_S"), %%mm1\n\t" // surround
-               "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
+               "movq  (%0, %%"REG_S"), %%mm2   \n\t"
                "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
                "movq  1024(%0, %%"REG_S"), %%mm4\n\t"
                "movq  1032(%0, %%"REG_S"), %%mm5\n\t"
@@ -1547,19 +1547,19 @@ static void mix32to2_3dnow (sample_t * samples, sample_t bias)
        "mov $-1024, %%"REG_S"  \n\t"
        ASMALIGN(4)
        "1:                     \n\t"
-       "movq   1024(%0, %%"REG_S"), %%mm0\n\t" 
+       "movq   1024(%0, %%"REG_S"), %%mm0\n\t"
        "movq   1032(%0, %%"REG_S"), %%mm1\n\t"
        "pfadd  %%mm7, %%mm0            \n\t" // common
        "pfadd  %%mm7, %%mm1            \n\t" // common
        "movq   %%mm0, %%mm2            \n\t" // common
        "movq   %%mm1, %%mm3            \n\t" // common
-       "pfadd  (%0, %%"REG_S"), %%mm0  \n\t" 
+       "pfadd  (%0, %%"REG_S"), %%mm0  \n\t"
        "pfadd  8(%0, %%"REG_S"), %%mm1 \n\t"
-       "pfadd  2048(%0, %%"REG_S"), %%mm2\n\t" 
+       "pfadd  2048(%0, %%"REG_S"), %%mm2\n\t"
        "pfadd  2056(%0, %%"REG_S"), %%mm3\n\t"
-       "pfadd  3072(%0, %%"REG_S"), %%mm0\n\t" 
+       "pfadd  3072(%0, %%"REG_S"), %%mm0\n\t"
        "pfadd  3080(%0, %%"REG_S"), %%mm1\n\t"
-       "pfadd  4096(%0, %%"REG_S"), %%mm2\n\t" 
+       "pfadd  4096(%0, %%"REG_S"), %%mm2\n\t"
        "pfadd  4104(%0, %%"REG_S"), %%mm3\n\t"
        "movq   %%mm0, (%0, %%"REG_S")  \n\t"
        "movq   %%mm1, 8(%0, %%"REG_S") \n\t"
@@ -1581,25 +1581,25 @@ static void mix32toS_3dnow (sample_t * samples, sample_t bias)
        "1:                     \n\t"
        "movd  %1, %%mm7                \n\t"
        "punpckldq %1, %%mm7            \n\t"
-       "movq  1024(%0, %%"REG_S"), %%mm0\n\t" 
+       "movq  1024(%0, %%"REG_S"), %%mm0\n\t"
        "movq  1032(%0, %%"REG_S"), %%mm1\n\t"
-       "movq  3072(%0, %%"REG_S"), %%mm4\n\t" 
+       "movq  3072(%0, %%"REG_S"), %%mm4\n\t"
        "movq  3080(%0, %%"REG_S"), %%mm5\n\t"
        "pfadd %%mm7, %%mm0             \n\t" // common
        "pfadd %%mm7, %%mm1             \n\t" // common
-       "pfadd 4096(%0, %%"REG_S"), %%mm4\n\t" // surround      
+       "pfadd 4096(%0, %%"REG_S"), %%mm4\n\t" // surround
        "pfadd 4104(%0, %%"REG_S"), %%mm5\n\t" // surround
-       "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
+       "movq  (%0, %%"REG_S"), %%mm2   \n\t"
        "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
-       "movq  2048(%0, %%"REG_S"), %%mm6\n\t" 
+       "movq  2048(%0, %%"REG_S"), %%mm6\n\t"
        "movq  2056(%0, %%"REG_S"), %%mm7\n\t"
-       "pfsub %%mm4, %%mm2             \n\t"   
+       "pfsub %%mm4, %%mm2             \n\t"
        "pfsub %%mm5, %%mm3             \n\t"
-       "pfadd %%mm4, %%mm6             \n\t"   
+       "pfadd %%mm4, %%mm6             \n\t"
        "pfadd %%mm5, %%mm7             \n\t"
-       "pfadd %%mm0, %%mm2             \n\t"   
+       "pfadd %%mm0, %%mm2             \n\t"
        "pfadd %%mm1, %%mm3             \n\t"
-       "pfadd %%mm0, %%mm6             \n\t"   
+       "pfadd %%mm0, %%mm6             \n\t"
        "pfadd %%mm1, %%mm7             \n\t"
        "movq  %%mm2, (%0, %%"REG_S")   \n\t"
        "movq  %%mm3, 8(%0, %%"REG_S")  \n\t"
@@ -1620,9 +1620,9 @@ static void move2to1_3dnow (sample_t * src, sample_t * dest, sample_t bias)
                "mov $-1024, %%"REG_S"  \n\t"
                ASMALIGN(4)
                "1:                     \n\t"
-               "movq  (%0, %%"REG_S"), %%mm0   \n\t"  
+               "movq  (%0, %%"REG_S"), %%mm0   \n\t"
                "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-               "movq  16(%0, %%"REG_S"), %%mm2 \n\t"  
+               "movq  16(%0, %%"REG_S"), %%mm2 \n\t"
                "movq  24(%0, %%"REG_S"), %%mm3 \n\t"
                "pfadd 1024(%0, %%"REG_S"), %%mm0\n\t"
                "pfadd 1032(%0, %%"REG_S"), %%mm1\n\t"
index b813345..089fa0a 100644 (file)
@@ -72,24 +72,24 @@ static const int pm128[128] attribute_used __attribute__((aligned(16))) =
        5, 21, 37, 53, 69, 85, 101, 117, 13, 29, 45,  61, 77, 93, 109, 125,
        3, 19, 35, 51, 67, 83,  99, 115, 11, 43, 75, 107, 27, 59,  91, 123,
        7, 23, 39, 55, 71, 87, 103, 119, 15, 31, 47,  63, 79, 95, 111, 127
-}; 
+};
 
 static uint8_t attribute_used bit_reverse_512[] = {
-       0x00, 0x40, 0x20, 0x60, 0x10, 0x50, 0x30, 0x70, 
-       0x08, 0x48, 0x28, 0x68, 0x18, 0x58, 0x38, 0x78, 
-       0x04, 0x44, 0x24, 0x64, 0x14, 0x54, 0x34, 0x74, 
-       0x0c, 0x4c, 0x2c, 0x6c, 0x1c, 0x5c, 0x3c, 0x7c, 
-       0x02, 0x42, 0x22, 0x62, 0x12, 0x52, 0x32, 0x72, 
-       0x0a, 0x4a, 0x2a, 0x6a, 0x1a, 0x5a, 0x3a, 0x7a, 
-       0x06, 0x46, 0x26, 0x66, 0x16, 0x56, 0x36, 0x76, 
-       0x0e, 0x4e, 0x2e, 0x6e, 0x1e, 0x5e, 0x3e, 0x7e, 
-       0x01, 0x41, 0x21, 0x61, 0x11, 0x51, 0x31, 0x71, 
-       0x09, 0x49, 0x29, 0x69, 0x19, 0x59, 0x39, 0x79, 
-       0x05, 0x45, 0x25, 0x65, 0x15, 0x55, 0x35, 0x75, 
-       0x0d, 0x4d, 0x2d, 0x6d, 0x1d, 0x5d, 0x3d, 0x7d, 
-       0x03, 0x43, 0x23, 0x63, 0x13, 0x53, 0x33, 0x73, 
-       0x0b, 0x4b, 0x2b, 0x6b, 0x1b, 0x5b, 0x3b, 0x7b, 
-       0x07, 0x47, 0x27, 0x67, 0x17, 0x57, 0x37, 0x77, 
+       0x00, 0x40, 0x20, 0x60, 0x10, 0x50, 0x30, 0x70,
+       0x08, 0x48, 0x28, 0x68, 0x18, 0x58, 0x38, 0x78,
+       0x04, 0x44, 0x24, 0x64, 0x14, 0x54, 0x34, 0x74,
+       0x0c, 0x4c, 0x2c, 0x6c, 0x1c, 0x5c, 0x3c, 0x7c,
+       0x02, 0x42, 0x22, 0x62, 0x12, 0x52, 0x32, 0x72,
+       0x0a, 0x4a, 0x2a, 0x6a, 0x1a, 0x5a, 0x3a, 0x7a,
+       0x06, 0x46, 0x26, 0x66, 0x16, 0x56, 0x36, 0x76,
+       0x0e, 0x4e, 0x2e, 0x6e, 0x1e, 0x5e, 0x3e, 0x7e,
+       0x01, 0x41, 0x21, 0x61, 0x11, 0x51, 0x31, 0x71,
+       0x09, 0x49, 0x29, 0x69, 0x19, 0x59, 0x39, 0x79,
+       0x05, 0x45, 0x25, 0x65, 0x15, 0x55, 0x35, 0x75,
+       0x0d, 0x4d, 0x2d, 0x6d, 0x1d, 0x5d, 0x3d, 0x7d,
+       0x03, 0x43, 0x23, 0x63, 0x13, 0x53, 0x33, 0x73,
+       0x0b, 0x4b, 0x2b, 0x6b, 0x1b, 0x5b, 0x3b, 0x7b,
+       0x07, 0x47, 0x27, 0x67, 0x17, 0x57, 0x37, 0x77,
        0x0f, 0x4f, 0x2f, 0x6f, 0x1f, 0x5f, 0x3f, 0x7f};
 
 static uint8_t fftorder[] = {
@@ -120,8 +120,8 @@ static sample_t __attribute__((aligned(16))) xcos1[128];
 static sample_t __attribute__((aligned(16))) xsin1[128];
 
 #if ARCH_X86 || ARCH_X86_64
-// NOTE: SSE needs 16byte alignment or it will segfault 
-// 
+// NOTE: SSE needs 16byte alignment or it will segfault
+//
 static float __attribute__((aligned(16))) sseSinCos1c[256];
 static float __attribute__((aligned(16))) sseSinCos1d[256];
 static float attribute_used __attribute__((aligned(16))) ps111_1[4]={1,1,1,-1};
@@ -328,7 +328,7 @@ void imdct_do_512 (sample_t * data, sample_t * delay, sample_t bias)
     sample_t t_r, t_i, a_r, a_i, b_r, b_i, w_1, w_2;
     const sample_t * window = a52_imdct_window;
     complex_t buf[128];
-       
+
     for (i = 0; i < 128; i++) {
        k = fftorder[i];
        t_r = pre1[i].real;
@@ -417,17 +417,17 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
   sample_t *data_ptr;
   sample_t *delay_ptr;
   sample_t *window_ptr;
-       
+
   /* 512 IMDCT with source and dest data in 'data' */
-       
+
   /* Pre IFFT complex multiply plus IFFT cmplx conjugate & reordering*/
   for( i=0; i < 128; i++) {
-    /* z[i] = (X[256-2*i-1] + j * X[2*i]) * (xcos1[i] + j * xsin1[i]) ; */ 
+    /* z[i] = (X[256-2*i-1] + j * X[2*i]) * (xcos1[i] + j * xsin1[i]) ; */
     int j= bit_reverse_512[i];
     buf[i].real =         (data[256-2*j-1] * xcos1[j])  -  (data[2*j]       * xsin1[j]);
     buf[i].imag = -1.0 * ((data[2*j]       * xcos1[j])  +  (data[256-2*j-1] * xsin1[j]));
   }
-  
+
   /* 1. iteration */
   for(i = 0; i < 128; i += 2) {
 #if 0
@@ -440,7 +440,7 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
     buf[i+1].real = tmp_a_r - tmp_b_r;
     buf[i+1].imag =  tmp_a_i - tmp_b_i;
 #else
-    vector float temp, bufv; 
+    vector float temp, bufv;
 
     bufv = vec_ld(i << 3, (float*)buf);
     temp = vec_perm(bufv, bufv, vcprm(2,3,0,1));
@@ -448,7 +448,7 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
     vec_st(bufv, i << 3, (float*)buf);
 #endif
   }
-        
+
   /* 2. iteration */
   // Note w[1]={{1,0}, {0,-1}}
   for(i = 0; i < 128; i += 4) {
@@ -472,7 +472,7 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
     buf[i+3].imag =  tmp_a_i + tmp_b_i;
 #else
     vector float buf01, buf23, temp1, temp2;
-       
+
     buf01 = vec_ld((i + 0) << 3, (float*)buf);
     buf23 = vec_ld((i + 2) << 3, (float*)buf);
     buf23 = vec_perm(buf23,buf23,vcprm(0,1,3,2));
@@ -540,14 +540,14 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
     buf45 = vec_ld((i + 4) << 3, (float*)buf);
     buf67 = vec_ld((i + 6) << 3, (float*)buf);
     buf67 = vec_perm(buf67, buf67, vcprm(1,0,2,3));
-       
+
     vec_st(vec_add(buf01, buf45), (i + 0) << 3, (float*)buf);
     vec_st(vec_madd(buf67, vcii(p,n,p,p), buf23), (i + 2) << 3, (float*)buf);
     vec_st(vec_sub(buf01, buf45), (i + 4) << 3, (float*)buf);
     vec_st(vec_nmsub(buf67, vcii(p,n,p,p), buf23), (i + 6) << 3, (float*)buf);
 #endif
   }
-    
+
   /* 4-7. iterations */
   for (m=3; m < 7; m++) {
     two_m = (1 << m);
@@ -600,10 +600,10 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
         vecq = vec_madd(temp4, vcii(n,p,n,p), temp3);
         // then butterfly with buf[p] and buf[p+1]
         vecp = vec_ld(p << 3, (float*)buf);
-        
+
         temp1 = vec_add(vecp, vecq);
         temp2 = vec_sub(vecp, vecq);
-                
+
         vec_st(temp1, p << 3, (float*)buf);
         vec_st(temp2, q << 3, (float*)buf);
 #endif
@@ -660,7 +660,7 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
     tempCS01 = vec_perm(cosv, sinv, vcprm(s0,0,s1,1));
     temp2 = vec_madd(temp1133, tempCS01, vczero);
     bufv_0 = vec_madd(temp2, vcii(p,n,p,n), temp1);
-    
+
     vec_st(bufv_0, (i + 0) << 3, (float*)buf);
 
     /* idem with bufv_2 and high-order cosv/sinv */
@@ -674,36 +674,36 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
     bufv_2 = vec_madd(temp2, vcii(p,n,p,n), temp1);
 
     vec_st(bufv_2, (i + 2) << 3, (float*)buf);
-    
+
 #endif
   }
-  
+
   data_ptr = data;
   delay_ptr = delay;
   window_ptr = a52_imdct_window;
 
   /* Window and convert to real valued signal */
-  for(i=0; i< 64; i++) { 
-    *data_ptr++   = -buf[64+i].imag   * *window_ptr++ + *delay_ptr++ + bias; 
-    *data_ptr++   =  buf[64-i-1].real * *window_ptr++ + *delay_ptr++ + bias; 
+  for(i=0; i< 64; i++) {
+    *data_ptr++   = -buf[64+i].imag   * *window_ptr++ + *delay_ptr++ + bias;
+    *data_ptr++   =  buf[64-i-1].real * *window_ptr++ + *delay_ptr++ + bias;
   }
-    
-  for(i=0; i< 64; i++) { 
-    *data_ptr++  = -buf[i].real       * *window_ptr++ + *delay_ptr++ + bias; 
-    *data_ptr++  =  buf[128-i-1].imag * *window_ptr++ + *delay_ptr++ + bias; 
+
+  for(i=0; i< 64; i++) {
+    *data_ptr++  = -buf[i].real       * *window_ptr++ + *delay_ptr++ + bias;
+    *data_ptr++  =  buf[128-i-1].imag * *window_ptr++ + *delay_ptr++ + bias;
   }
-    
+
   /* The trailing edge of the window goes into the delay line */
   delay_ptr = delay;
 
-  for(i=0; i< 64; i++) { 
-    *delay_ptr++  = -buf[64+i].real   * *--window_ptr; 
-    *delay_ptr++  =  buf[64-i-1].imag * *--window_ptr; 
+  for(i=0; i< 64; i++) {
+    *delay_ptr++  = -buf[64+i].real   * *--window_ptr;
+    *delay_ptr++  =  buf[64-i-1].imag * *--window_ptr;
   }
-    
+
   for(i=0; i<64; i++) {
-    *delay_ptr++  =  buf[i].imag       * *--window_ptr; 
-    *delay_ptr++  = -buf[128-i-1].real * *--window_ptr; 
+    *delay_ptr++  =  buf[i].imag       * *--window_ptr;
+    *delay_ptr++  = -buf[128-i-1].real * *--window_ptr;
   }
 }
 #endif
@@ -716,8 +716,8 @@ imdct_do_512_altivec(sample_t data[],sample_t delay[], sample_t bias)
 #define HAVE_AMD3DNOW 1
 #include "srfftp_3dnow.h"
 
-const i_cmplx_t x_plus_minus_3dnow __attribute__ ((aligned (8))) = {{ 0x00000000UL, 0x80000000UL }}; 
-const i_cmplx_t x_minus_plus_3dnow __attribute__ ((aligned (8))) = {{ 0x80000000UL, 0x00000000UL }}; 
+const i_cmplx_t x_plus_minus_3dnow __attribute__ ((aligned (8))) = {{ 0x00000000UL, 0x80000000UL }};
+const i_cmplx_t x_minus_plus_3dnow __attribute__ ((aligned (8))) = {{ 0x80000000UL, 0x00000000UL }};
 const complex_t HSQRT2_3DNOW __attribute__ ((aligned (8))) = { 0.707106781188, 0.707106781188 };
 
 #undef HAVE_AMD3DNOWEXT
@@ -746,9 +746,9 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
     sample_t *data_ptr;
     sample_t *delay_ptr;
     sample_t *window_ptr;
-       
+
     /* 512 IMDCT with source and dest data in 'data' */
-    /* see the c version (dct_do_512()), its allmost identical, just in C */ 
+    /* see the c version (dct_do_512()), its allmost identical, just in C */
 
     /* Pre IFFT complex multiply plus IFFT cmplx conjugate */
     /* Bit reversed shuffling */
@@ -809,7 +809,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
        }
     }
 */
-    
+
     /* 1. iteration */
        // Note w[0][0]={1,0}
        __asm__ volatile(
@@ -831,7 +831,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                :: "g" (buf), "r" (buf + 128)
                : "%"REG_S
        );
-        
+
     /* 2. iteration */
        // Note w[1]={{1,0}, {0,-1}}
        __asm__ volatile(
@@ -863,8 +863,8 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
  Note sseW2+48={1,-1,sqrt(2),-sqrt(2))
 */
        __asm__ volatile(
-               "movaps 48+"MANGLE(sseW2)", %%xmm6\n\t" 
-               "movaps 16+"MANGLE(sseW2)", %%xmm7\n\t" 
+               "movaps 48+"MANGLE(sseW2)", %%xmm6\n\t"
+               "movaps 16+"MANGLE(sseW2)", %%xmm7\n\t"
                "xorps %%xmm5, %%xmm5           \n\t"
                "xorps %%xmm2, %%xmm2           \n\t"
                "mov %0, %%"REG_S"              \n\t"
@@ -890,10 +890,10 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                "addps %%xmm1, %%xmm3           \n\t"
                "subps %%xmm4, %%xmm0           \n\t"
                "subps %%xmm5, %%xmm1           \n\t"
-               "movaps %%xmm2, (%%"REG_S")     \n\t" 
-               "movaps %%xmm3, 16(%%"REG_S")   \n\t" 
-               "movaps %%xmm0, 32(%%"REG_S")   \n\t" 
-               "movaps %%xmm1, 48(%%"REG_S")   \n\t" 
+               "movaps %%xmm2, (%%"REG_S")     \n\t"
+               "movaps %%xmm3, 16(%%"REG_S")   \n\t"
+               "movaps %%xmm0, 32(%%"REG_S")   \n\t"
+               "movaps %%xmm1, 48(%%"REG_S")   \n\t"
                "add $64, %%"REG_S"     \n\t"
                "cmp %1, %%"REG_S"      \n\t"
                " jb 1b                 \n\t"
@@ -927,7 +927,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                "movaps %%xmm1, (%%"REG_S", %%"REG_D")  \n\t"
                "movaps %%xmm0, (%%"REG_d", %%"REG_D")  \n\t"
                "add $16, %%"REG_D"                     \n\t"
-               "cmp %3, %%"REG_D"                      \n\t" //FIXME (opt) count against 0 
+               "cmp %3, %%"REG_D"                      \n\t" //FIXME (opt) count against 0
                "jb 2b                                  \n\t"
                "add %2, %%"REG_S"                      \n\t"
                "cmp %1, %%"REG_S"                      \n\t"
@@ -954,9 +954,9 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                " jnz 1b                                \n\t"
                :: "r" (buf+128)
                : "%"REG_S
-       );   
+       );
+
 
-       
     data_ptr = data;
     delay_ptr = delay;
     window_ptr = a52_imdct_window;
@@ -980,7 +980,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
                "add  $16, %%"REG_S"                    \n\t"
                "sub  $16, %%"REG_D"                    \n\t"
-               "cmp  $512, %%"REG_S"                   \n\t" 
+               "cmp  $512, %%"REG_S"                   \n\t"
                " jb 1b                                 \n\t"
                :: "r" (buf+64), "r" (data_ptr), "r" (delay_ptr), "m" (bias)
                : "%"REG_S, "%"REG_D
@@ -988,7 +988,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
        data_ptr+=128;
        delay_ptr+=128;
 //     window_ptr+=128;
-       
+
        __asm__ volatile(
                "mov $1024, %%"REG_D"                   \n\t"  // 512
                "xor %%"REG_S", %%"REG_S"               \n\t"  // 0
@@ -1007,7 +1007,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
                "add $16, %%"REG_S"                     \n\t"
                "sub $16, %%"REG_D"                     \n\t"
-               "cmp $512, %%"REG_S"                    \n\t" 
+               "cmp $512, %%"REG_S"                    \n\t"
                " jb 1b                                 \n\t"
                :: "r" (buf), "r" (data_ptr), "r" (delay_ptr), "m" (bias)
                : "%"REG_S, "%"REG_D
@@ -1025,21 +1025,21 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                "1:                                     \n\t"
                "movlps (%0, %%"REG_S"), %%xmm0         \n\t" // ? ? ? A
                "movlps 8(%0, %%"REG_S"), %%xmm1        \n\t" // ? ? ? C
-               "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // D ? ? C 
-               "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // B ? ? A 
+               "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // D ? ? C
+               "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // B ? ? A
                "shufps $0xCC, %%xmm1, %%xmm0           \n\t" // D C B A
                "mulps 1024+"MANGLE(sseWindow)"(%%"REG_S"), %%xmm0\n\t"
                "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
                "add $16, %%"REG_S"                     \n\t"
                "sub $16, %%"REG_D"                     \n\t"
-               "cmp $512, %%"REG_S"                    \n\t" 
+               "cmp $512, %%"REG_S"                    \n\t"
                " jb 1b                                 \n\t"
                :: "r" (buf+64), "r" (delay_ptr)
                : "%"REG_S, "%"REG_D
        );
        delay_ptr+=128;
 //     window_ptr-=128;
-       
+
        __asm__ volatile(
                "mov $1024, %%"REG_D"                   \n\t"  // 1024
                "xor %%"REG_S", %%"REG_S"               \n\t"  // 0
@@ -1047,14 +1047,14 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias)
                "1:                                     \n\t"
                "movlps (%0, %%"REG_S"), %%xmm0 \n\t" // ? ? A ?
                "movlps 8(%0, %%"REG_S"), %%xmm1        \n\t" // ? ? C ?
-               "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // ? D C ? 
-               "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // ? B A ? 
+               "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // ? D C ?
+               "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // ? B A ?
                "shufps $0x99, %%xmm1, %%xmm0           \n\t" // D C B A
                "mulps 1536+"MANGLE(sseWindow)"(%%"REG_S"), %%xmm0\n\t"
                "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
                "add $16, %%"REG_S"                     \n\t"
                "sub $16, %%"REG_D"                     \n\t"
-               "cmp $512, %%"REG_S"                    \n\t" 
+               "cmp $512, %%"REG_S"                    \n\t"
                " jb 1b                                 \n\t"
                :: "r" (buf), "r" (delay_ptr)
                : "%"REG_S, "%"REG_D
@@ -1088,7 +1088,7 @@ void a52_imdct_256(sample_t * data, sample_t * delay, sample_t bias)
     /* Post IFFT complex multiply */
     /* Window and convert to real valued signal */
     for (i = 0; i < 32; i++) {
-       /* y1[n] = z1[n] * (xcos2[n] + j * xs in2[n]) ; */ 
+       /* y1[n] = z1[n] * (xcos2[n] + j * xs in2[n]) ; */
        t_r = post2[i].real;
        t_i = post2[i].imag;
 
@@ -1209,12 +1209,12 @@ void a52_imdct_init (uint32_t mm_accel)
            sseSinCos1c[2*i+0]= xcos1[i];
            sseSinCos1c[2*i+1]= -xcos1[i];
            sseSinCos1d[2*i+0]= xsin1[i];
-           sseSinCos1d[2*i+1]= xsin1[i];       
+           sseSinCos1d[2*i+1]= xsin1[i];
        }
        for (i = 1; i < 7; i++) {
            j = 1 << i;
            for (k = 0; k < j; k+=2) {
-           
+
                sseW[i][4*k + 0] = w[i][k+0].real;
                sseW[i][4*k + 1] = w[i][k+0].real;
                sseW[i][4*k + 2] = w[i][k+1].real;
@@ -1223,15 +1223,15 @@ void a52_imdct_init (uint32_t mm_accel)
                sseW[i][4*k + 4] = -w[i][k+0].imag;
                sseW[i][4*k + 5] = w[i][k+0].imag;
                sseW[i][4*k + 6] = -w[i][k+1].imag;
-               sseW[i][4*k + 7] = w[i][k+1].imag;          
-               
+               sseW[i][4*k + 7] = w[i][k+1].imag;
+
        //we multiply more or less uninitalized numbers so we need to use exactly 0.0
                if(k==0)
                {
 //                     sseW[i][4*k + 0]= sseW[i][4*k + 1]= 1.0;
                        sseW[i][4*k + 4]= sseW[i][4*k + 5]= 0.0;
                }
-               
+
                if(2*k == j)
                {
                        sseW[i][4*k + 0]= sseW[i][4*k + 1]= 0.0;
@@ -1243,9 +1243,9 @@ void a52_imdct_init (uint32_t mm_accel)
        for(i=0; i<128; i++)
        {
                sseWindow[2*i+0]= -a52_imdct_window[2*i+0];
-               sseWindow[2*i+1]=  a52_imdct_window[2*i+1];     
+               sseWindow[2*i+1]=  a52_imdct_window[2*i+1];
        }
-       
+
        for(i=0; i<64; i++)
        {
                sseWindow[256 + 2*i+0]= -a52_imdct_window[254 - 2*i+1];
index 1c13f06..e8a91d1 100644 (file)
@@ -43,7 +43,7 @@
 static void FFT_4_3DNOW(complex_t *x)
 {
   /* delta_p = 1 here */
-  /* x[k] = sum_{i=0..3} x[i] * w^{i*k}, w=e^{-2*pi/4} 
+  /* x[k] = sum_{i=0..3} x[i] * w^{i*k}, w=e^{-2*pi/4}
    */
   __asm__ volatile(
        "movq   24(%1), %%mm3\n\t"
@@ -86,10 +86,10 @@ static void FFT_4_3DNOW(complex_t *x)
 static void FFT_8_3DNOW(complex_t *x)
 {
   /* delta_p = diag{1, sqrt(i)} here */
-  /* x[k] = sum_{i=0..7} x[i] * w^{i*k}, w=e^{-2*pi/8} 
+  /* x[k] = sum_{i=0..7} x[i] * w^{i*k}, w=e^{-2*pi/8}
    */
   complex_t wT1, wB1, wB2;
-  
+
   __asm__ volatile(
        "movq   8(%2), %%mm0\n\t"
        "movq   24(%2), %%mm1\n\t"
@@ -111,9 +111,9 @@ static void FFT_8_3DNOW(complex_t *x)
        :"memory");
 
   fft_4_3dnow(&x[0]);
-  
+
   /* x[0] x[4] x[2] x[6] */
-  
+
   __asm__ volatile(
       "movq    40(%1), %%mm0\n\t"
       "movq    %%mm0,  %%mm3\n\t"
@@ -151,7 +151,7 @@ static void FFT_8_3DNOW(complex_t *x)
       :"=r"(x)
       :"0"(x), "r"(&wT1), "r"(&wB1)
       :"memory");
-  
+
   /* x[1] x[5] */
   __asm__ volatile (
        "movq   %6,     %%mm6\n\t"
@@ -180,7 +180,7 @@ static void FFT_8_3DNOW(complex_t *x)
        "pxor   %%mm6,  %%mm1\n\t"
        "pfacc  %%mm1,  %%mm0\n\t"
        "pfmul  %4,     %%mm0\n\t"
-       
+
        "movq   40(%3), %%mm5\n\t"
 #if HAVE_AMD3DNOWEXT
        "pswapd %%mm5,  %%mm5\n\t"
@@ -189,7 +189,7 @@ static void FFT_8_3DNOW(complex_t *x)
        "punpckhdq %%mm1, %%mm5\n\t"
 #endif
        "movq   %%mm5,  %0\n\t"
-       
+
        "movq   8(%3),  %%mm1\n\t"
        "movq   %%mm1,  %%mm2\n\t"
        "pfsub  %%mm0,  %%mm1\n\t"
@@ -197,7 +197,7 @@ static void FFT_8_3DNOW(complex_t *x)
        "movq   %%mm1,  40(%3)\n\t"
        "movq   %%mm2,  8(%3)\n\t"
        :"=m"(wB2)
-       :"m"(wT1), "m"(wB1), "r"(x), "m"(HSQRT2_3DNOW), 
+       :"m"(wT1), "m"(wB1), "r"(x), "m"(HSQRT2_3DNOW),
         "m"(x_plus_minus_3dnow), "m"(x_minus_plus_3dnow)
        :"memory");
 
@@ -212,7 +212,7 @@ static void FFT_8_3DNOW(complex_t *x)
        "punpckldq %%mm1, %%mm2\n\t"
        "punpckhdq %%mm2, %%mm1\n\t"
 #endif
-       "pxor   %%mm6,  %%mm1\n\t"      
+       "pxor   %%mm6,  %%mm1\n\t"
        "pfadd  %%mm1,  %%mm0\n\t"
        "movq   %2,     %%mm2\n\t"
        "movq   56(%4), %%mm3\n\t"
@@ -253,10 +253,10 @@ static void FFT_ASMB_3DNOW(int k, complex_t *x, complex_t *wTB,
   x3k = x2k + 2 * k;
   x4k = x3k + 2 * k;
   wB = wTB + 2 * k;
-  
+
   TRANSZERO_3DNOW(x[0],x2k[0],x3k[0],x4k[0]);
   TRANS_3DNOW(x[1],x2k[1],x3k[1],x4k[1],wTB[1],wB[1],d[1],d_3[1]);
-  
+
   --k;
   for(;;) {
      TRANS_3DNOW(x[2],x2k[2],x3k[2],x4k[2],wTB[2],wB[2],d[2],d_3[2]);
@@ -271,7 +271,7 @@ static void FFT_ASMB_3DNOW(int k, complex_t *x, complex_t *wTB,
      wTB += 2;
      wB += 2;
   }
+
 }
 
 void FFT_ASMB16_3DNOW(complex_t *x, complex_t *wTB)
@@ -291,13 +291,13 @@ void FFT_ASMB16_3DNOW(complex_t *x, complex_t *wTB)
   /* transform x[3], x[11], x[7], x[15] */
   TRANS_3DNOW(x[3],x[7],x[11],x[15],wTB[3],wTB[7],delta16[3],delta16_3[3]);
 
-} 
+}
 
 static void FFT_128P_3DNOW(complex_t *a)
 {
   FFT_8_3DNOW(&a[0]); FFT_4_3DNOW(&a[8]); FFT_4_3DNOW(&a[12]);
   FFT_ASMB16_3DNOW(&a[0], &a[8]);
-  
+
   FFT_8_3DNOW(&a[16]), FFT_8_3DNOW(&a[24]);
   FFT_ASMB_3DNOW(4, &a[0], &a[16],&delta32[0], &delta32_3[0]);
 
@@ -314,7 +314,7 @@ static void FFT_128P_3DNOW(complex_t *a)
   FFT_ASMB16_3DNOW(&a[64], &a[72]);
 
   FFT_8_3DNOW(&a[80]); FFT_8_3DNOW(&a[88]);
-  
+
   /* FFT_32(&a[64]); */
   FFT_ASMB_3DNOW(4, &a[64], &a[80],&delta32[0], &delta32_3[0]);
 
@@ -325,7 +325,7 @@ static void FFT_128P_3DNOW(complex_t *a)
   FFT_8_3DNOW(&a[112]), FFT_8_3DNOW(&a[120]);
   /* FFT_32(&a[96]); */
   FFT_ASMB_3DNOW(4, &a[96], &a[112], &delta32[0], &delta32_3[0]);
-  
+
   /* FFT_128(&a[0]); */
   FFT_ASMB_3DNOW(16, &a[0], &a[64], &delta128[0], &delta128_3[0]);
 }
@@ -353,9 +353,9 @@ imdct_do_512_3dnow
     sample_t *data_ptr;
     sample_t *delay_ptr;
     sample_t *window_ptr;
-       
+
     /* 512 IMDCT with source and dest data in 'data' */
-       
+
     /* Pre IFFT complex multiply plus IFFT cmplx conjugate & reordering*/
 #if 1
       __asm__ volatile (
@@ -396,7 +396,7 @@ imdct_do_512_3dnow
 #else
   __asm__ volatile ("femms":::"memory");
     for( i=0; i < 128; i++) {
-       /* z[i] = (X[256-2*i-1] + j * X[2*i]) * (xcos1[i] + j * xsin1[i]) ; */ 
+       /* z[i] = (X[256-2*i-1] + j * X[2*i]) * (xcos1[i] + j * xsin1[i]) ; */
        int j= pm128[i];
        buf[i].real =         (data[256-2*j-1] * xcos1[j])  -  (data[2*j]       * xsin1[j]);
        buf[i].imag = -1.0 * ((data[2*j]       * xcos1[j])  +  (data[256-2*j-1] * xsin1[j]));
@@ -432,9 +432,9 @@ imdct_do_512_3dnow
 
     FFT_128P_3DNOW (&buf[0]);
 //    __asm__ volatile ("femms \n\t":::"memory");
-    
+
     /* Post IFFT complex multiply  plus IFFT complex conjugate*/
-#if 1  
+#if 1
   __asm__ volatile (
        "movq %0, %%mm7\n\t"
        "movq %1, %%mm6\n\t"
@@ -448,9 +448,9 @@ imdct_do_512_3dnow
 #if !HAVE_AMD3DNOWEXT
                "punpckldq %%mm1, %%mm2\n\t"
                "punpckhdq %%mm2, %%mm1\n\t"
-#else                   
+#else
                "pswapd %%mm1, %%mm1\n\t" /* ac3_buf[i].re | ac3_buf[i].im */
-#endif                  
+#endif
                "movd %3, %%mm3\n\t" /* ac3_xsin[i] */
                "punpckldq %2, %%mm3\n\t" /* ac3_xsin[i] | ac3_xcos[i] */
                "pfmul %%mm3, %%mm0\n\t"
@@ -472,7 +472,7 @@ imdct_do_512_3dnow
 /*             ac3_buf[i].re =(tmp_a_r * ac3_xcos1[i])  +  (tmp_a_i  * ac3_xsin1[i]);
                ac3_buf[i].im =(tmp_a_r * ac3_xsin1[i])  -  (tmp_a_i  * ac3_xcos1[i]);*/
        }
-#else    
+#else
   __asm__ volatile ("femms":::"memory");
     for( i=0; i < 128; i++) {
        /* y[n] = z[n] * (xcos1[n] + j * xsin1[n]) ; */
@@ -482,7 +482,7 @@ imdct_do_512_3dnow
        buf[i].imag =(tmp_a_r * xsin1[i])  +  (tmp_a_i  * xcos1[i]);
     }
 #endif
-       
+
     data_ptr = data;
     delay_ptr = delay;
     window_ptr = a52_imdct_window;
@@ -519,16 +519,16 @@ imdct_do_512_3dnow
                delay_ptr += 2;
        }
        window_ptr += 128;
-#else    
+#else
   __asm__ volatile ("femms":::"memory");
-    for(i=0; i< 64; i++) { 
-       *data_ptr++   = -buf[64+i].imag   * *window_ptr++ + *delay_ptr++ + bias; 
-       *data_ptr++   =  buf[64-i-1].real * *window_ptr++ + *delay_ptr++ + bias; 
+    for(i=0; i< 64; i++) {
+       *data_ptr++   = -buf[64+i].imag   * *window_ptr++ + *delay_ptr++ + bias;
+       *data_ptr++   =  buf[64-i-1].real * *window_ptr++ + *delay_ptr++ + bias;
     }
-    
-    for(i=0; i< 64; i++) { 
-       *data_ptr++  = -buf[i].real       * *window_ptr++ + *delay_ptr++ + bias; 
-       *data_ptr++  =  buf[128-i-1].imag * *window_ptr++ + *delay_ptr++ + bias; 
+
+    for(i=0; i< 64; i++) {
+       *data_ptr++  = -buf[i].real       * *window_ptr++ + *delay_ptr++ + bias;
+       *data_ptr++  =  buf[128-i-1].imag * *window_ptr++ + *delay_ptr++ + bias;
     }
 #endif
 
@@ -566,16 +566,16 @@ imdct_do_512_3dnow
                delay_ptr += 2;
        }
   __asm__ volatile ("femms":::"memory");
-#else    
+#else
   __asm__ volatile ("femms":::"memory");
-    for(i=0; i< 64; i++) { 
-       *delay_ptr++  = -buf[64+i].real   * *--window_ptr; 
-       *delay_ptr++  =  buf[64-i-1].imag * *--window_ptr; 
+    for(i=0; i< 64; i++) {
+       *delay_ptr++  = -buf[64+i].real   * *--window_ptr;
+       *delay_ptr++  =  buf[64-i-1].imag * *--window_ptr;
     }
-    
+
     for(i=0; i<64; i++) {
-       *delay_ptr++  =  buf[i].imag       * *--window_ptr; 
-       *delay_ptr++  = -buf[128-i-1].real * *--window_ptr; 
+       *delay_ptr++  =  buf[i].imag       * *--window_ptr;
+       *delay_ptr++  = -buf[128-i-1].real * *--window_ptr;
     }
-#endif    
+#endif
 }
index f00bb44..1b3574f 100644 (file)
@@ -3,7 +3,7 @@
 @@ -59,4 +66,9 @@
  int a52_block (a52_state_t * state);
  void a52_free (a52_state_t * state);
+
 +void* a52_resample_init(uint32_t mm_accel,int flags,int chans);
 +extern int (* a52_resample) (float * _f, int16_t * s16);
 +
@@ -15,7 +15,7 @@
 @@ -103,18 +107,34 @@
  #define DELTA_BIT_NONE (2)
  #define DELTA_BIT_RESERVED (3)
+
 +#if ARCH_X86_64
 +# define REG_a "rax"
 +# define REG_d "rdx"
@@ -33,7 +33,7 @@
  void a52_bit_allocate (a52_state_t * state, ba_t * ba, int bndstart,
                       int start, int end, int fastleak, int slowleak,
                       expbap_t * expbap);
+
  int a52_downmix_init (int input, int flags, sample_t * level,
                      sample_t clev, sample_t slev);
 +void downmix_accel_init(uint32_t mm_accel);
@@ -44,7 +44,7 @@
                  sample_t clev, sample_t slev);
 -void a52_upmix (sample_t * samples, int acmod, int output);
 +extern void (*a52_upmix) (sample_t * samples, int acmod, int output);
+
  void a52_imdct_init (uint32_t mm_accel);
  void a52_imdct_256 (sample_t * data, sample_t * delay, sample_t bias);
 -void a52_imdct_512 (sample_t * data, sample_t * delay, sample_t bias);
@@ -53,9 +53,9 @@
 --- liba52/bitstream.c 2006-06-12 15:05:07.000000000 +0200
 +++ liba52/bitstream.c 2006-06-05 02:23:02.000000000 +0200
 @@ -31,6 +35,10 @@
+
  #define BUFFER_SIZE 4096
+
 +#ifdef ALT_BITSTREAM_READER
 +int indx=0;
 +#endif
 +#endif
      bitstream_get (state, align * 8);
  }
+
 --- liba52/bitstream.h 2006-06-12 15:05:07.000000000 +0200
 +++ liba52/bitstream.h 2006-06-05 02:23:02.000000000 +0200
 @@ -21,6 +25,42 @@
   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   */
+
 +/* code from ffmpeg/libavcodec */
 +#if defined(__sparc__) || defined(hpux)
 +/*
 +
  /* (stolen from the kernel) */
  #ifdef WORDS_BIGENDIAN
+
 @@ -28,7 +68,7 @@
+
  #else
+
 -#     if 0 && defined (__i386__)
 +#     if defined (__i386__)
+
  #     define swab32(x) __i386_swab32(x)
        static inline const uint32_t __i386_swab32(uint32_t x)
 @@ -39,19 +79,34 @@
+
  #     else
+
 -#     define swab32(x)\
 -((((uint8_t*)&x)[0] << 24) | (((uint8_t*)&x)[1] << 16) |  \
 - (((uint8_t*)&x)[2] << 8)  | (((uint8_t*)&x)[3]))
 +      }
  #     endif
  #endif
+
 +#ifdef ALT_BITSTREAM_READER
 +extern int indx;
 +#endif
  void a52_bitstream_set_ptr (a52_state_t * state, uint8_t * buf);
  uint32_t a52_bitstream_get_bh (a52_state_t * state, uint32_t num_bits);
  int32_t a52_bitstream_get_bh_2 (a52_state_t * state, uint32_t num_bits);
+
  static inline uint32_t bitstream_get (a52_state_t * state, uint32_t num_bits)
  {
 +#ifdef ALT_BITSTREAM_READER
 +    result<<= (indx&0x07);
 +    result>>= 32 - num_bits;
 +    indx+= num_bits;
-+    
++
 +    return result;
 +#else
      uint32_t result;
-       
+
      if (num_bits < state->bits_left) {
 @@ -61,10 +116,29 @@
      }
+
      return a52_bitstream_get_bh (state, num_bits);
 +#endif
 +}
 +      bitstream_get(state, num_bits);
 +#endif
  }
+
  static inline int32_t bitstream_get_2 (a52_state_t * state, uint32_t num_bits)
  {
 +#ifdef ALT_BITSTREAM_READER
 +    result<<= (indx&0x07);
 +    result>>= 32 - num_bits;
 +    indx+= num_bits;
-+        
++
 +    return result;
 +#else
      int32_t result;
-       
+
      if (num_bits < state->bits_left) {
 @@ -74,4 +148,5 @@
      }
+
      return a52_bitstream_get_bh_2 (state, num_bits);
 +#endif
  }
 + *
 + * SSE optimizations from Michael Niedermayer (michaelni@gmx.at)
   */
+
  #include "config.h"
+
  #include <string.h>
  #include <inttypes.h>
+
  #include "a52.h"
  #include "a52_internal.h"
 +#include "mm_accel.h"
+
  #define CONVERT(acmod,output) (((output) << 3) + (acmod))
+
 +
 +void (*a52_downmix)(sample_t * samples, int acmod, int output, sample_t bias,
 +            sample_t clev, sample_t slev)= NULL;
 +    if(mm_accel & MM_ACCEL_X86_3DNOW) a52_downmix= downmix_3dnow;
 +#endif
 +}
-+ 
++
  int a52_downmix_init (int input, int flags, sample_t * level,
                      sample_t clev, sample_t slev)
  {
 @@ -447,7 +479,7 @@
        samples[i] = 0;
  }
+
 -void a52_downmix (sample_t * samples, int acmod, int output, sample_t bias,
 +void downmix_C (sample_t * samples, int acmod, int output, sample_t bias,
                  sample_t clev, sample_t slev)
      switch (CONVERT (acmod, output & A52_CHANNEL_MASK)) {
 @@ -559,7 +591,7 @@
        break;
+
      case CONVERT (A52_3F2R, A52_2F1R):
 -      mix3to2 (samples, bias);
 +      mix3to2 (samples, bias); //FIXME possible bug? (output doesnt seem to be used)
        move2to1 (samples + 768, samples + 512, bias);
        break;
+
 @@ -583,12 +615,12 @@
        break;
+
      case CONVERT (A52_3F1R, A52_3F2R):
 -      memcpy (samples + 1027, samples + 768, 256 * sizeof (sample_t));
 +      memcpy (samples + 1024, samples + 768, 256 * sizeof (sample_t));
        break;
      }
  }
+
 -void a52_upmix (sample_t * samples, int acmod, int output)
 +void upmix_C (sample_t * samples, int acmod, int output)
  {
      switch (CONVERT (acmod, output & A52_CHANNEL_MASK)) {
+
 @@ -653,3 +685,1104 @@
        goto mix_31to21;
      }
 +      "mov $-1024, %%"REG_S"          \n\t"
 +      ASMALIGN(4)
 +      "1:                             \n\t"
-+      "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-+      "movaps 16(%0, %%"REG_S"), %%xmm1\n\t" 
-+      "addps (%1, %%"REG_S"), %%xmm0  \n\t" 
-+      "addps 16(%1, %%"REG_S"), %%xmm1\n\t" 
++      "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
++      "movaps 16(%0, %%"REG_S"), %%xmm1\n\t"
++      "addps (%1, %%"REG_S"), %%xmm0  \n\t"
++      "addps 16(%1, %%"REG_S"), %%xmm1\n\t"
 +      "addps %%xmm7, %%xmm0           \n\t"
 +      "addps %%xmm7, %%xmm1           \n\t"
 +      "movaps %%xmm0, (%1, %%"REG_S") \n\t"
 +      "mov $-1024, %%"REG_S"          \n\t"
 +      ASMALIGN(4)
 +      "1:                             \n\t"
-+      "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-+      "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" 
-+      "addps 2048(%0, %%"REG_S"), %%xmm0\n\t" 
++      "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
++      "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t"
++      "addps 2048(%0, %%"REG_S"), %%xmm0\n\t"
 +      "addps %%xmm7, %%xmm1           \n\t"
 +      "addps %%xmm1, %%xmm0           \n\t"
 +      "movaps %%xmm0, (%0, %%"REG_S") \n\t"
 +      "mov $-1024, %%"REG_S"          \n\t"
 +      ASMALIGN(4)
 +      "1:                             \n\t"
-+      "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-+      "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" 
-+      "addps 2048(%0, %%"REG_S"), %%xmm0\n\t" 
-+      "addps 3072(%0, %%"REG_S"), %%xmm1\n\t" 
++      "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
++      "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t"
++      "addps 2048(%0, %%"REG_S"), %%xmm0\n\t"
++      "addps 3072(%0, %%"REG_S"), %%xmm1\n\t"
 +      "addps %%xmm7, %%xmm0           \n\t"
 +      "addps %%xmm1, %%xmm0           \n\t"
 +      "movaps %%xmm0, (%0, %%"REG_S") \n\t"
 +      "mov $-1024, %%"REG_S"          \n\t"
 +      ASMALIGN(4)
 +      "1:                             \n\t"
-+      "movaps (%0, %%"REG_S"), %%xmm0 \n\t" 
-+      "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" 
-+      "addps 2048(%0, %%"REG_S"), %%xmm0\n\t" 
-+      "addps 3072(%0, %%"REG_S"), %%xmm1\n\t" 
++      "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
++      "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t"
++      "addps 2048(%0, %%"REG_S"), %%xmm0\n\t"
++      "addps 3072(%0, %%"REG_S"), %%xmm1\n\t"
 +      "addps %%xmm7, %%xmm0           \n\t"
-+      "addps 4096(%0, %%"REG_S"), %%xmm1\n\t" 
++      "addps 4096(%0, %%"REG_S"), %%xmm1\n\t"
 +      "addps %%xmm1, %%xmm0           \n\t"
 +      "movaps %%xmm0, (%0, %%"REG_S") \n\t"
 +      "add $16, %%"REG_S"             \n\t"
 +      "mov $-1024, %%"REG_S"          \n\t"
 +      ASMALIGN(4)
 +      "1:                             \n\t"
-+      "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" 
++      "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
 +      "addps %%xmm7, %%xmm0           \n\t" //common
-+      "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
++      "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
 +      "movaps 2048(%0, %%"REG_S"), %%xmm2\n\t"
 +      "addps %%xmm0, %%xmm1           \n\t"
 +      "addps %%xmm0, %%xmm2           \n\t"
 +              "mov $-1024, %%"REG_S"          \n\t"
 +              ASMALIGN(4)
 +              "1:                             \n\t"
-+              "movaps 1024(%1, %%"REG_S"), %%xmm0\n\t" 
++              "movaps 1024(%1, %%"REG_S"), %%xmm0\n\t"
 +              "addps %%xmm7, %%xmm0           \n\t" //common
-+              "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
++              "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
 +              "movaps (%1, %%"REG_S"), %%xmm2 \n\t"
 +              "addps %%xmm0, %%xmm1           \n\t"
 +              "addps %%xmm0, %%xmm2           \n\t"
 +              ASMALIGN(4)
 +              "1:                             \n\t"
 +              "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t"  // surround
-+              "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
++              "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
 +              "movaps 1024(%0, %%"REG_S"), %%xmm2\n\t"
 +              "addps %%xmm7, %%xmm1           \n\t"
 +              "addps %%xmm7, %%xmm2           \n\t"
 +              "mov $-1024, %%"REG_S"          \n\t"
 +              ASMALIGN(4)
 +              "1:                             \n\t"
-+              "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"  
-+              "addps 3072(%0, %%"REG_S"), %%xmm0\n\t"  
++              "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
++              "addps 3072(%0, %%"REG_S"), %%xmm0\n\t"
 +              "addps %%xmm7, %%xmm0           \n\t" // common
-+              "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
++              "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
 +              "movaps 2048(%0, %%"REG_S"), %%xmm2\n\t"
 +              "addps %%xmm0, %%xmm1           \n\t"
 +              "addps %%xmm0, %%xmm2           \n\t"
 +              "mov $-1024, %%"REG_S"          \n\t"
 +              ASMALIGN(4)
 +              "1:                             \n\t"
-+              "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"  
++              "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
 +              "movaps 3072(%0, %%"REG_S"), %%xmm3\n\t" // surround
 +              "addps %%xmm7, %%xmm0           \n\t" // common
-+              "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
++              "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
 +              "movaps 2048(%0, %%"REG_S"), %%xmm2\n\t"
 +              "addps %%xmm0, %%xmm1           \n\t"
 +              "addps %%xmm0, %%xmm2           \n\t"
 +              "mov $-1024, %%"REG_S"          \n\t"
 +              ASMALIGN(4)
 +              "1:                             \n\t"
-+              "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t"  
++              "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t"
 +              "addps 3072(%0, %%"REG_S"), %%xmm0\n\t" // surround
-+              "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
++              "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
 +              "movaps 1024(%0, %%"REG_S"), %%xmm2\n\t"
 +              "addps %%xmm7, %%xmm1           \n\t"
 +              "addps %%xmm7, %%xmm2           \n\t"
 +      "mov $-1024, %%"REG_S"          \n\t"
 +      ASMALIGN(4)
 +      "1:                             \n\t"
-+      "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" 
++      "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
 +      "addps %%xmm7, %%xmm0           \n\t" // common
 +      "movaps %%xmm0, %%xmm1          \n\t" // common
-+      "addps (%0, %%"REG_S"), %%xmm0  \n\t" 
-+      "addps 2048(%0, %%"REG_S"), %%xmm1\n\t" 
-+      "addps 3072(%0, %%"REG_S"), %%xmm0\n\t" 
-+      "addps 4096(%0, %%"REG_S"), %%xmm1\n\t" 
++      "addps (%0, %%"REG_S"), %%xmm0  \n\t"
++      "addps 2048(%0, %%"REG_S"), %%xmm1\n\t"
++      "addps 3072(%0, %%"REG_S"), %%xmm0\n\t"
++      "addps 4096(%0, %%"REG_S"), %%xmm1\n\t"
 +      "movaps %%xmm0, (%0, %%"REG_S") \n\t"
 +      "movaps %%xmm1, 1024(%0, %%"REG_S")\n\t"
 +      "add $16, %%"REG_S"             \n\t"
 +      "mov $-1024, %%"REG_S"          \n\t"
 +      ASMALIGN(4)
 +      "1:                             \n\t"
-+      "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" 
-+      "movaps 3072(%0, %%"REG_S"), %%xmm2\n\t" 
++      "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t"
++      "movaps 3072(%0, %%"REG_S"), %%xmm2\n\t"
 +      "addps %%xmm7, %%xmm0           \n\t" // common
-+      "addps 4096(%0, %%"REG_S"), %%xmm2\n\t" // surround     
-+      "movaps (%0, %%"REG_S"), %%xmm1 \n\t" 
-+      "movaps 2048(%0, %%"REG_S"), %%xmm3\n\t" 
-+      "subps %%xmm2, %%xmm1           \n\t"   
-+      "addps %%xmm2, %%xmm3           \n\t"   
-+      "addps %%xmm0, %%xmm1           \n\t"   
-+      "addps %%xmm0, %%xmm3           \n\t"   
++      "addps 4096(%0, %%"REG_S"), %%xmm2\n\t" // surround
++      "movaps (%0, %%"REG_S"), %%xmm1 \n\t"
++      "movaps 2048(%0, %%"REG_S"), %%xmm3\n\t"
++      "subps %%xmm2, %%xmm1           \n\t"
++      "addps %%xmm2, %%xmm3           \n\t"
++      "addps %%xmm0, %%xmm1           \n\t"
++      "addps %%xmm0, %%xmm3           \n\t"
 +      "movaps %%xmm1, (%0, %%"REG_S") \n\t"
 +      "movaps %%xmm3, 1024(%0, %%"REG_S")\n\t"
 +      "add $16, %%"REG_S"             \n\t"
 +              "mov $-1024, %%"REG_S"          \n\t"
 +              ASMALIGN(4)
 +              "1:                             \n\t"
-+              "movaps (%0, %%"REG_S"), %%xmm0 \n\t"  
-+              "movaps 16(%0, %%"REG_S"), %%xmm1\n\t"  
++              "movaps (%0, %%"REG_S"), %%xmm0 \n\t"
++              "movaps 16(%0, %%"REG_S"), %%xmm1\n\t"
 +              "addps 1024(%0, %%"REG_S"), %%xmm0\n\t"
 +              "addps 1040(%0, %%"REG_S"), %%xmm1\n\t"
 +              "addps %%xmm7, %%xmm0           \n\t"
 +      "mov $-1024, %%"REG_S"  \n\t"
 +      ASMALIGN(4)
 +      "1:                     \n\t"
-+      "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
++      "movq  (%0, %%"REG_S"), %%mm0   \n\t"
 +      "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-+      "movq  16(%0, %%"REG_S"), %%mm2 \n\t" 
++      "movq  16(%0, %%"REG_S"), %%mm2 \n\t"
 +      "movq  24(%0, %%"REG_S"), %%mm3 \n\t"
-+      "pfadd (%1, %%"REG_S"), %%mm0   \n\t" 
++      "pfadd (%1, %%"REG_S"), %%mm0   \n\t"
 +      "pfadd 8(%1, %%"REG_S"), %%mm1  \n\t"
-+      "pfadd 16(%1, %%"REG_S"), %%mm2 \n\t" 
++      "pfadd 16(%1, %%"REG_S"), %%mm2 \n\t"
 +      "pfadd 24(%1, %%"REG_S"), %%mm3 \n\t"
 +      "pfadd %%mm7, %%mm0             \n\t"
 +      "pfadd %%mm7, %%mm1             \n\t"
 +      "mov $-1024, %%"REG_S"  \n\t"
 +      ASMALIGN(4)
 +      "1:                     \n\t"
-+      "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
++      "movq  (%0, %%"REG_S"), %%mm0   \n\t"
 +      "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-+      "movq  1024(%0, %%"REG_S"), %%mm2\n\t" 
++      "movq  1024(%0, %%"REG_S"), %%mm2\n\t"
 +      "movq  1032(%0, %%"REG_S"), %%mm3\n\t"
-+      "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t" 
++      "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t"
 +      "pfadd 2056(%0, %%"REG_S"), %%mm1\n\t"
 +      "pfadd %%mm7, %%mm0             \n\t"
 +      "pfadd %%mm7, %%mm1             \n\t"
 +      "mov $-1024, %%"REG_S"  \n\t"
 +      ASMALIGN(4)
 +      "1:                     \n\t"
-+      "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
++      "movq  (%0, %%"REG_S"), %%mm0   \n\t"
 +      "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-+      "movq  1024(%0, %%"REG_S"), %%mm2\n\t" 
++      "movq  1024(%0, %%"REG_S"), %%mm2\n\t"
 +      "movq  1032(%0, %%"REG_S"), %%mm3\n\t"
-+      "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t" 
++      "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t"
 +      "pfadd 2056(%0, %%"REG_S"), %%mm1\n\t"
-+      "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t" 
++      "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t"
 +      "pfadd 3080(%0, %%"REG_S"), %%mm3\n\t"
 +      "pfadd %%mm7, %%mm0             \n\t"
 +      "pfadd %%mm7, %%mm1             \n\t"
 +      "mov $-1024, %%"REG_S"  \n\t"
 +      ASMALIGN(4)
 +      "1:                     \n\t"
-+      "movq  (%0, %%"REG_S"), %%mm0   \n\t" 
++      "movq  (%0, %%"REG_S"), %%mm0   \n\t"
 +      "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-+      "movq  1024(%0, %%"REG_S"), %%mm2\n\t" 
++      "movq  1024(%0, %%"REG_S"), %%mm2\n\t"
 +      "movq  1032(%0, %%"REG_S"), %%mm3\n\t"
-+      "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t" 
++      "pfadd 2048(%0, %%"REG_S"), %%mm0\n\t"
 +      "pfadd 2056(%0, %%"REG_S"), %%mm1\n\t"
-+      "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t" 
++      "pfadd 3072(%0, %%"REG_S"), %%mm2\n\t"
 +      "pfadd 3080(%0, %%"REG_S"), %%mm3\n\t"
 +      "pfadd %%mm7, %%mm0             \n\t"
 +      "pfadd %%mm7, %%mm1             \n\t"
-+      "pfadd 4096(%0, %%"REG_S"), %%mm2\n\t" 
++      "pfadd 4096(%0, %%"REG_S"), %%mm2\n\t"
 +      "pfadd 4104(%0, %%"REG_S"), %%mm3\n\t"
 +      "pfadd %%mm2, %%mm0             \n\t"
 +      "pfadd %%mm3, %%mm1             \n\t"
 +      "mov $-1024, %%"REG_S"  \n\t"
 +      ASMALIGN(4)
 +      "1:                     \n\t"
-+      "movq   1024(%0, %%"REG_S"), %%mm0\n\t" 
++      "movq   1024(%0, %%"REG_S"), %%mm0\n\t"
 +      "movq   1032(%0, %%"REG_S"), %%mm1\n\t"
 +      "pfadd  %%mm7, %%mm0            \n\t" //common
 +      "pfadd  %%mm7, %%mm1            \n\t" //common
-+      "movq   (%0, %%"REG_S"), %%mm2  \n\t" 
++      "movq   (%0, %%"REG_S"), %%mm2  \n\t"
 +      "movq   8(%0, %%"REG_S"), %%mm3 \n\t"
 +      "movq   2048(%0, %%"REG_S"), %%mm4\n\t"
 +      "movq   2056(%0, %%"REG_S"), %%mm5\n\t"
 +              "mov $-1024, %%"REG_S"  \n\t"
 +              ASMALIGN(4)
 +              "1:                     \n\t"
-+              "movq  1024(%1, %%"REG_S"), %%mm0\n\t" 
++              "movq  1024(%1, %%"REG_S"), %%mm0\n\t"
 +              "movq  1032(%1, %%"REG_S"), %%mm1\n\t"
 +              "pfadd %%mm7, %%mm0             \n\t" //common
 +              "pfadd %%mm7, %%mm1             \n\t" //common
-+              "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
++              "movq  (%0, %%"REG_S"), %%mm2   \n\t"
 +              "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
 +              "movq  (%1, %%"REG_S"), %%mm4   \n\t"
 +              "movq  8(%1, %%"REG_S"), %%mm5  \n\t"
 +              "1:                     \n\t"
 +              "movq  2048(%0, %%"REG_S"), %%mm0\n\t"  // surround
 +              "movq  2056(%0, %%"REG_S"), %%mm1\n\t"  // surround
-+              "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
++              "movq  (%0, %%"REG_S"), %%mm2   \n\t"
 +              "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
 +              "movq  1024(%0, %%"REG_S"), %%mm4\n\t"
 +              "movq  1032(%0, %%"REG_S"), %%mm5\n\t"
 +              "mov $-1024, %%"REG_S"  \n\t"
 +              ASMALIGN(4)
 +              "1:                     \n\t"
-+              "movq  1024(%0, %%"REG_S"), %%mm0\n\t"  
++              "movq  1024(%0, %%"REG_S"), %%mm0\n\t"
 +              "movq  1032(%0, %%"REG_S"), %%mm1\n\t"
-+              "pfadd 3072(%0, %%"REG_S"), %%mm0\n\t"  
++              "pfadd 3072(%0, %%"REG_S"), %%mm0\n\t"
 +              "pfadd 3080(%0, %%"REG_S"), %%mm1\n\t"
 +              "pfadd %%mm7, %%mm0             \n\t" // common
 +              "pfadd %%mm7, %%mm1             \n\t" // common
-+              "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
++              "movq  (%0, %%"REG_S"), %%mm2   \n\t"
 +              "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
 +              "movq  2048(%0, %%"REG_S"), %%mm4\n\t"
 +              "movq  2056(%0, %%"REG_S"), %%mm5\n\t"
 +              "mov $-1024, %%"REG_S"  \n\t"
 +              ASMALIGN(4)
 +              "1:                     \n\t"
-+              "movq   1024(%0, %%"REG_S"), %%mm0\n\t"  
++              "movq   1024(%0, %%"REG_S"), %%mm0\n\t"
 +              "movq   1032(%0, %%"REG_S"), %%mm1\n\t"
 +              "pfadd  %%mm7, %%mm0            \n\t" // common
 +              "pfadd  %%mm7, %%mm1            \n\t" // common
-+              "movq   (%0, %%"REG_S"), %%mm2  \n\t" 
++              "movq   (%0, %%"REG_S"), %%mm2  \n\t"
 +              "movq   8(%0, %%"REG_S"), %%mm3 \n\t"
 +              "movq   2048(%0, %%"REG_S"), %%mm4\n\t"
 +              "movq   2056(%0, %%"REG_S"), %%mm5\n\t"
 +              "mov $-1024, %%"REG_S"  \n\t"
 +              ASMALIGN(4)
 +              "1:                     \n\t"
-+              "movq  2048(%0, %%"REG_S"), %%mm0\n\t"  
++              "movq  2048(%0, %%"REG_S"), %%mm0\n\t"
 +              "movq  2056(%0, %%"REG_S"), %%mm1\n\t"
 +              "pfadd 3072(%0, %%"REG_S"), %%mm0\n\t" // surround
 +              "pfadd 3080(%0, %%"REG_S"), %%mm1\n\t" // surround
-+              "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
++              "movq  (%0, %%"REG_S"), %%mm2   \n\t"
 +              "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
 +              "movq  1024(%0, %%"REG_S"), %%mm4\n\t"
 +              "movq  1032(%0, %%"REG_S"), %%mm5\n\t"
 +      "mov $-1024, %%"REG_S"  \n\t"
 +      ASMALIGN(4)
 +      "1:                     \n\t"
-+      "movq   1024(%0, %%"REG_S"), %%mm0\n\t" 
++      "movq   1024(%0, %%"REG_S"), %%mm0\n\t"
 +      "movq   1032(%0, %%"REG_S"), %%mm1\n\t"
 +      "pfadd  %%mm7, %%mm0            \n\t" // common
 +      "pfadd  %%mm7, %%mm1            \n\t" // common
 +      "movq   %%mm0, %%mm2            \n\t" // common
 +      "movq   %%mm1, %%mm3            \n\t" // common
-+      "pfadd  (%0, %%"REG_S"), %%mm0  \n\t" 
++      "pfadd  (%0, %%"REG_S"), %%mm0  \n\t"
 +      "pfadd  8(%0, %%"REG_S"), %%mm1 \n\t"
-+      "pfadd  2048(%0, %%"REG_S"), %%mm2\n\t" 
++      "pfadd  2048(%0, %%"REG_S"), %%mm2\n\t"
 +      "pfadd  2056(%0, %%"REG_S"), %%mm3\n\t"
-+      "pfadd  3072(%0, %%"REG_S"), %%mm0\n\t" 
++      "pfadd  3072(%0, %%"REG_S"), %%mm0\n\t"
 +      "pfadd  3080(%0, %%"REG_S"), %%mm1\n\t"
-+      "pfadd  4096(%0, %%"REG_S"), %%mm2\n\t" 
++      "pfadd  4096(%0, %%"REG_S"), %%mm2\n\t"
 +      "pfadd  4104(%0, %%"REG_S"), %%mm3\n\t"
 +      "movq   %%mm0, (%0, %%"REG_S")  \n\t"
 +      "movq   %%mm1, 8(%0, %%"REG_S") \n\t"
 +      "1:                     \n\t"
 +      "movd  %1, %%mm7                \n\t"
 +      "punpckldq %1, %%mm7            \n\t"
-+      "movq  1024(%0, %%"REG_S"), %%mm0\n\t" 
++      "movq  1024(%0, %%"REG_S"), %%mm0\n\t"
 +      "movq  1032(%0, %%"REG_S"), %%mm1\n\t"
-+      "movq  3072(%0, %%"REG_S"), %%mm4\n\t" 
++      "movq  3072(%0, %%"REG_S"), %%mm4\n\t"
 +      "movq  3080(%0, %%"REG_S"), %%mm5\n\t"
 +      "pfadd %%mm7, %%mm0             \n\t" // common
 +      "pfadd %%mm7, %%mm1             \n\t" // common
-+      "pfadd 4096(%0, %%"REG_S"), %%mm4\n\t" // surround      
++      "pfadd 4096(%0, %%"REG_S"), %%mm4\n\t" // surround
 +      "pfadd 4104(%0, %%"REG_S"), %%mm5\n\t" // surround
-+      "movq  (%0, %%"REG_S"), %%mm2   \n\t" 
++      "movq  (%0, %%"REG_S"), %%mm2   \n\t"
 +      "movq  8(%0, %%"REG_S"), %%mm3  \n\t"
-+      "movq  2048(%0, %%"REG_S"), %%mm6\n\t" 
++      "movq  2048(%0, %%"REG_S"), %%mm6\n\t"
 +      "movq  2056(%0, %%"REG_S"), %%mm7\n\t"
-+      "pfsub %%mm4, %%mm2             \n\t"   
++      "pfsub %%mm4, %%mm2             \n\t"
 +      "pfsub %%mm5, %%mm3             \n\t"
-+      "pfadd %%mm4, %%mm6             \n\t"   
++      "pfadd %%mm4, %%mm6             \n\t"
 +      "pfadd %%mm5, %%mm7             \n\t"
-+      "pfadd %%mm0, %%mm2             \n\t"   
++      "pfadd %%mm0, %%mm2             \n\t"
 +      "pfadd %%mm1, %%mm3             \n\t"
-+      "pfadd %%mm0, %%mm6             \n\t"   
++      "pfadd %%mm0, %%mm6             \n\t"
 +      "pfadd %%mm1, %%mm7             \n\t"
 +      "movq  %%mm2, (%0, %%"REG_S")   \n\t"
 +      "movq  %%mm3, 8(%0, %%"REG_S")  \n\t"
 +              "mov $-1024, %%"REG_S"  \n\t"
 +              ASMALIGN(4)
 +              "1:                     \n\t"
-+              "movq  (%0, %%"REG_S"), %%mm0   \n\t"  
++              "movq  (%0, %%"REG_S"), %%mm0   \n\t"
 +              "movq  8(%0, %%"REG_S"), %%mm1  \n\t"
-+              "movq  16(%0, %%"REG_S"), %%mm2 \n\t"  
++              "movq  16(%0, %%"REG_S"), %%mm2 \n\t"
 +              "movq  24(%0, %%"REG_S"), %%mm3 \n\t"
 +              "pfadd 1024(%0, %%"REG_S"), %%mm0\n\t"
 +              "pfadd 1032(%0, %%"REG_S"), %%mm1\n\t"
 + *   michael did port them from libac3 (untested, perhaps totally broken)
 + * AltiVec optimizations from Romain Dolbeau (romain@dolbeau.org)
   */
+
  #include "config.h"
 @@ -39,12 +48,50 @@
  #include "a52.h"
 +#undef HAVE_AMD3DNOWEXT
 +#define HAVE_AMD3DNOWEXT 0
 +#endif
+
  typedef struct complex_s {
      sample_t real;
      sample_t imag;
  } complex_t;
+
 +static const int pm128[128] attribute_used __attribute__((aligned(16))) =
 +{
 +      0, 16, 32, 48, 64, 80,  96, 112,  8, 40, 72, 104, 24, 56,  88, 120,
 +      5, 21, 37, 53, 69, 85, 101, 117, 13, 29, 45,  61, 77, 93, 109, 125,
 +      3, 19, 35, 51, 67, 83,  99, 115, 11, 43, 75, 107, 27, 59,  91, 123,
 +      7, 23, 39, 55, 71, 87, 103, 119, 15, 31, 47,  63, 79, 95, 111, 127
-+}; 
++};
 +
 +static uint8_t attribute_used bit_reverse_512[] = {
-+      0x00, 0x40, 0x20, 0x60, 0x10, 0x50, 0x30, 0x70, 
-+      0x08, 0x48, 0x28, 0x68, 0x18, 0x58, 0x38, 0x78, 
-+      0x04, 0x44, 0x24, 0x64, 0x14, 0x54, 0x34, 0x74, 
-+      0x0c, 0x4c, 0x2c, 0x6c, 0x1c, 0x5c, 0x3c, 0x7c, 
-+      0x02, 0x42, 0x22, 0x62, 0x12, 0x52, 0x32, 0x72, 
-+      0x0a, 0x4a, 0x2a, 0x6a, 0x1a, 0x5a, 0x3a, 0x7a, 
-+      0x06, 0x46, 0x26, 0x66, 0x16, 0x56, 0x36, 0x76, 
-+      0x0e, 0x4e, 0x2e, 0x6e, 0x1e, 0x5e, 0x3e, 0x7e, 
-+      0x01, 0x41, 0x21, 0x61, 0x11, 0x51, 0x31, 0x71, 
-+      0x09, 0x49, 0x29, 0x69, 0x19, 0x59, 0x39, 0x79, 
-+      0x05, 0x45, 0x25, 0x65, 0x15, 0x55, 0x35, 0x75, 
-+      0x0d, 0x4d, 0x2d, 0x6d, 0x1d, 0x5d, 0x3d, 0x7d, 
-+      0x03, 0x43, 0x23, 0x63, 0x13, 0x53, 0x33, 0x73, 
-+      0x0b, 0x4b, 0x2b, 0x6b, 0x1b, 0x5b, 0x3b, 0x7b, 
-+      0x07, 0x47, 0x27, 0x67, 0x17, 0x57, 0x37, 0x77, 
++      0x00, 0x40, 0x20, 0x60, 0x10, 0x50, 0x30, 0x70,
++      0x08, 0x48, 0x28, 0x68, 0x18, 0x58, 0x38, 0x78,
++      0x04, 0x44, 0x24, 0x64, 0x14, 0x54, 0x34, 0x74,
++      0x0c, 0x4c, 0x2c, 0x6c, 0x1c, 0x5c, 0x3c, 0x7c,
++      0x02, 0x42, 0x22, 0x62, 0x12, 0x52, 0x32, 0x72,
++      0x0a, 0x4a, 0x2a, 0x6a, 0x1a, 0x5a, 0x3a, 0x7a,
++      0x06, 0x46, 0x26, 0x66, 0x16, 0x56, 0x36, 0x76,
++      0x0e, 0x4e, 0x2e, 0x6e, 0x1e, 0x5e, 0x3e, 0x7e,
++      0x01, 0x41, 0x21, 0x61, 0x11, 0x51, 0x31, 0x71,
++      0x09, 0x49, 0x29, 0x69, 0x19, 0x59, 0x39, 0x79,
++      0x05, 0x45, 0x25, 0x65, 0x15, 0x55, 0x35, 0x75,
++      0x0d, 0x4d, 0x2d, 0x6d, 0x1d, 0x5d, 0x3d, 0x7d,
++      0x03, 0x43, 0x23, 0x63, 0x13, 0x53, 0x33, 0x73,
++      0x0b, 0x4b, 0x2b, 0x6b, 0x1b, 0x5b, 0x3b, 0x7b,
++      0x07, 0x47, 0x27, 0x67, 0x17, 0x57, 0x37, 0x77,
 +      0x0f, 0x4f, 0x2f, 0x6f, 0x1f, 0x5f, 0x3f, 0x7f};
 +
  static uint8_t fftorder[] = {
 @@ -56,6 +103,40 @@
        6,134, 70,198, 38,166,230,102,246,118, 54,182, 22,150,214, 86
  };
+
 +static complex_t __attribute__((aligned(16))) buf[128];
 +
 +/* Twiddle factor LUT */
 +static sample_t __attribute__((aligned(16))) xsin1[128];
 +
 +#if ARCH_X86 || ARCH_X86_64
-+// NOTE: SSE needs 16byte alignment or it will segfault 
-+// 
++// NOTE: SSE needs 16byte alignment or it will segfault
++//
 +static float __attribute__((aligned(16))) sseSinCos1c[256];
 +static float __attribute__((aligned(16))) sseSinCos1d[256];
 +static float attribute_used __attribute__((aligned(16))) ps111_1[4]={1,1,1,-1};
 @@ -241,7 +322,7 @@
      ifft_pass (buf, roots128 - 32, 32);
  }
+
 -void a52_imdct_512 (sample_t * data, sample_t * delay, sample_t bias)
 +void imdct_do_512 (sample_t * data, sample_t * delay, sample_t bias)
  {
 @@ -285,6 +366,702 @@
      }
  }
+
 +#if HAVE_ALTIVEC
 +
 +#ifdef HAVE_ALTIVEC_H
 +  sample_t *data_ptr;
 +  sample_t *delay_ptr;
 +  sample_t *window_ptr;
-+      
++
 +  /* 512 IMDCT with source and dest data in 'data' */
-+      
++
 +  /* Pre IFFT complex multiply plus IFFT cmplx conjugate & reordering*/
 +  for( i=0; i < 128; i++) {
-+    /* z[i] = (X[256-2*i-1] + j * X[2*i]) * (xcos1[i] + j * xsin1[i]) ; */ 
++    /* z[i] = (X[256-2*i-1] + j * X[2*i]) * (xcos1[i] + j * xsin1[i]) ; */
 +    int j= bit_reverse_512[i];
 +    buf[i].real =         (data[256-2*j-1] * xcos1[j])  -  (data[2*j]       * xsin1[j]);
 +    buf[i].imag = -1.0 * ((data[2*j]       * xcos1[j])  +  (data[256-2*j-1] * xsin1[j]));
 +  }
-+  
++
 +  /* 1. iteration */
 +  for(i = 0; i < 128; i += 2) {
 +#if 0
 +    buf[i+1].real = tmp_a_r - tmp_b_r;
 +    buf[i+1].imag =  tmp_a_i - tmp_b_i;
 +#else
-+    vector float temp, bufv; 
++    vector float temp, bufv;
 +
 +    bufv = vec_ld(i << 3, (float*)buf);
 +    temp = vec_perm(bufv, bufv, vcprm(2,3,0,1));
 +    vec_st(bufv, i << 3, (float*)buf);
 +#endif
 +  }
-+        
++
 +  /* 2. iteration */
 +  // Note w[1]={{1,0}, {0,-1}}
 +  for(i = 0; i < 128; i += 4) {
 +    buf[i+3].imag =  tmp_a_i + tmp_b_i;
 +#else
 +    vector float buf01, buf23, temp1, temp2;
-+      
++
 +    buf01 = vec_ld((i + 0) << 3, (float*)buf);
 +    buf23 = vec_ld((i + 2) << 3, (float*)buf);
 +    buf23 = vec_perm(buf23,buf23,vcprm(0,1,3,2));
 +    buf45 = vec_ld((i + 4) << 3, (float*)buf);
 +    buf67 = vec_ld((i + 6) << 3, (float*)buf);
 +    buf67 = vec_perm(buf67, buf67, vcprm(1,0,2,3));
-+      
++
 +    vec_st(vec_add(buf01, buf45), (i + 0) << 3, (float*)buf);
 +    vec_st(vec_madd(buf67, vcii(p,n,p,p), buf23), (i + 2) << 3, (float*)buf);
 +    vec_st(vec_sub(buf01, buf45), (i + 4) << 3, (float*)buf);
 +    vec_st(vec_nmsub(buf67, vcii(p,n,p,p), buf23), (i + 6) << 3, (float*)buf);
 +#endif
 +  }
-+    
++
 +  /* 4-7. iterations */
 +  for (m=3; m < 7; m++) {
 +    two_m = (1 << m);
 +        vecq = vec_madd(temp4, vcii(n,p,n,p), temp3);
 +        // then butterfly with buf[p] and buf[p+1]
 +        vecp = vec_ld(p << 3, (float*)buf);
-+        
++
 +        temp1 = vec_add(vecp, vecq);
 +        temp2 = vec_sub(vecp, vecq);
-+                
++
 +        vec_st(temp1, p << 3, (float*)buf);
 +        vec_st(temp2, q << 3, (float*)buf);
 +#endif
 +    tempCS01 = vec_perm(cosv, sinv, vcprm(s0,0,s1,1));
 +    temp2 = vec_madd(temp1133, tempCS01, vczero);
 +    bufv_0 = vec_madd(temp2, vcii(p,n,p,n), temp1);
-+    
++
 +    vec_st(bufv_0, (i + 0) << 3, (float*)buf);
 +
 +    /* idem with bufv_2 and high-order cosv/sinv */
 +    bufv_2 = vec_madd(temp2, vcii(p,n,p,n), temp1);
 +
 +    vec_st(bufv_2, (i + 2) << 3, (float*)buf);
-+    
++
 +#endif
 +  }
-+  
++
 +  data_ptr = data;
 +  delay_ptr = delay;
 +  window_ptr = a52_imdct_window;
 +
 +  /* Window and convert to real valued signal */
-+  for(i=0; i< 64; i++) { 
-+    *data_ptr++   = -buf[64+i].imag   * *window_ptr++ + *delay_ptr++ + bias; 
-+    *data_ptr++   =  buf[64-i-1].real * *window_ptr++ + *delay_ptr++ + bias; 
++  for(i=0; i< 64; i++) {
++    *data_ptr++   = -buf[64+i].imag   * *window_ptr++ + *delay_ptr++ + bias;
++    *data_ptr++   =  buf[64-i-1].real * *window_ptr++ + *delay_ptr++ + bias;
 +  }
-+    
-+  for(i=0; i< 64; i++) { 
-+    *data_ptr++  = -buf[i].real       * *window_ptr++ + *delay_ptr++ + bias; 
-+    *data_ptr++  =  buf[128-i-1].imag * *window_ptr++ + *delay_ptr++ + bias; 
++
++  for(i=0; i< 64; i++) {
++    *data_ptr++  = -buf[i].real       * *window_ptr++ + *delay_ptr++ + bias;
++    *data_ptr++  =  buf[128-i-1].imag * *window_ptr++ + *delay_ptr++ + bias;
 +  }
-+    
++
 +  /* The trailing edge of the window goes into the delay line */
 +  delay_ptr = delay;
 +
-+  for(i=0; i< 64; i++) { 
-+    *delay_ptr++  = -buf[64+i].real   * *--window_ptr; 
-+    *delay_ptr++  =  buf[64-i-1].imag * *--window_ptr; 
++  for(i=0; i< 64; i++) {
++    *delay_ptr++  = -buf[64+i].real   * *--window_ptr;
++    *delay_ptr++  =  buf[64-i-1].imag * *--window_ptr;
 +  }
-+    
++
 +  for(i=0; i<64; i++) {
-+    *delay_ptr++  =  buf[i].imag       * *--window_ptr; 
-+    *delay_ptr++  = -buf[128-i-1].real * *--window_ptr; 
++    *delay_ptr++  =  buf[i].imag       * *--window_ptr;
++    *delay_ptr++  = -buf[128-i-1].real * *--window_ptr;
 +  }
 +}
 +#endif
 +#define HAVE_AMD3DNOW 1
 +#include "srfftp_3dnow.h"
 +
-+const i_cmplx_t x_plus_minus_3dnow __attribute__ ((aligned (8))) = {{ 0x00000000UL, 0x80000000UL }}; 
-+const i_cmplx_t x_minus_plus_3dnow __attribute__ ((aligned (8))) = {{ 0x80000000UL, 0x00000000UL }}; 
++const i_cmplx_t x_plus_minus_3dnow __attribute__ ((aligned (8))) = {{ 0x00000000UL, 0x80000000UL }};
++const i_cmplx_t x_minus_plus_3dnow __attribute__ ((aligned (8))) = {{ 0x80000000UL, 0x00000000UL }};
 +const complex_t HSQRT2_3DNOW __attribute__ ((aligned (8))) = { 0.707106781188, 0.707106781188 };
 +
 +#undef HAVE_AMD3DNOWEXT
 +    sample_t *data_ptr;
 +    sample_t *delay_ptr;
 +    sample_t *window_ptr;
-+      
++
 +    /* 512 IMDCT with source and dest data in 'data' */
-+    /* see the c version (dct_do_512()), its allmost identical, just in C */ 
++    /* see the c version (dct_do_512()), its allmost identical, just in C */
 +
 +    /* Pre IFFT complex multiply plus IFFT cmplx conjugate */
 +    /* Bit reversed shuffling */
 +      }
 +    }
 +*/
-+    
++
 +    /* 1. iteration */
 +      // Note w[0][0]={1,0}
 +      __asm__ volatile(
 +              :: "g" (buf), "r" (buf + 128)
 +              : "%"REG_S
 +      );
-+        
++
 +    /* 2. iteration */
 +      // Note w[1]={{1,0}, {0,-1}}
 +      __asm__ volatile(
 + Note sseW2+48={1,-1,sqrt(2),-sqrt(2))
 +*/
 +      __asm__ volatile(
-+              "movaps 48+"MANGLE(sseW2)", %%xmm6\n\t" 
-+              "movaps 16+"MANGLE(sseW2)", %%xmm7\n\t" 
++              "movaps 48+"MANGLE(sseW2)", %%xmm6\n\t"
++              "movaps 16+"MANGLE(sseW2)", %%xmm7\n\t"
 +              "xorps %%xmm5, %%xmm5           \n\t"
 +              "xorps %%xmm2, %%xmm2           \n\t"
 +              "mov %0, %%"REG_S"              \n\t"
 +              "addps %%xmm1, %%xmm3           \n\t"
 +              "subps %%xmm4, %%xmm0           \n\t"
 +              "subps %%xmm5, %%xmm1           \n\t"
-+              "movaps %%xmm2, (%%"REG_S")     \n\t" 
-+              "movaps %%xmm3, 16(%%"REG_S")   \n\t" 
-+              "movaps %%xmm0, 32(%%"REG_S")   \n\t" 
-+              "movaps %%xmm1, 48(%%"REG_S")   \n\t" 
++              "movaps %%xmm2, (%%"REG_S")     \n\t"
++              "movaps %%xmm3, 16(%%"REG_S")   \n\t"
++              "movaps %%xmm0, 32(%%"REG_S")   \n\t"
++              "movaps %%xmm1, 48(%%"REG_S")   \n\t"
 +              "add $64, %%"REG_S"     \n\t"
 +              "cmp %1, %%"REG_S"      \n\t"
 +              " jb 1b                 \n\t"
 +              "movaps %%xmm1, (%%"REG_S", %%"REG_D")  \n\t"
 +              "movaps %%xmm0, (%%"REG_d", %%"REG_D")  \n\t"
 +              "add $16, %%"REG_D"                     \n\t"
-+              "cmp %3, %%"REG_D"                      \n\t" //FIXME (opt) count against 0 
++              "cmp %3, %%"REG_D"                      \n\t" //FIXME (opt) count against 0
 +              "jb 2b                                  \n\t"
 +              "add %2, %%"REG_S"                      \n\t"
 +              "cmp %1, %%"REG_S"                      \n\t"
 +              " jnz 1b                                \n\t"
 +              :: "r" (buf+128)
 +              : "%"REG_S
-+      );   
++      );
++
 +
-+      
 +    data_ptr = data;
 +    delay_ptr = delay;
 +    window_ptr = a52_imdct_window;
 +              "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
 +              "add  $16, %%"REG_S"                    \n\t"
 +              "sub  $16, %%"REG_D"                    \n\t"
-+              "cmp  $512, %%"REG_S"                   \n\t" 
++              "cmp  $512, %%"REG_S"                   \n\t"
 +              " jb 1b                                 \n\t"
 +              :: "r" (buf+64), "r" (data_ptr), "r" (delay_ptr), "m" (bias)
 +              : "%"REG_S, "%"REG_D
 +      data_ptr+=128;
 +      delay_ptr+=128;
 +//    window_ptr+=128;
-+      
++
 +      __asm__ volatile(
 +              "mov $1024, %%"REG_D"                   \n\t"  // 512
 +              "xor %%"REG_S", %%"REG_S"               \n\t"  // 0
 +              "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
 +              "add $16, %%"REG_S"                     \n\t"
 +              "sub $16, %%"REG_D"                     \n\t"
-+              "cmp $512, %%"REG_S"                    \n\t" 
++              "cmp $512, %%"REG_S"                    \n\t"
 +              " jb 1b                                 \n\t"
 +              :: "r" (buf), "r" (data_ptr), "r" (delay_ptr), "m" (bias)
 +              : "%"REG_S, "%"REG_D
 +              "1:                                     \n\t"
 +              "movlps (%0, %%"REG_S"), %%xmm0         \n\t" // ? ? ? A
 +              "movlps 8(%0, %%"REG_S"), %%xmm1        \n\t" // ? ? ? C
-+              "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // D ? ? C 
-+              "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // B ? ? A 
++              "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // D ? ? C
++              "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // B ? ? A
 +              "shufps $0xCC, %%xmm1, %%xmm0           \n\t" // D C B A
 +              "mulps 1024+"MANGLE(sseWindow)"(%%"REG_S"), %%xmm0\n\t"
 +              "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
 +              "add $16, %%"REG_S"                     \n\t"
 +              "sub $16, %%"REG_D"                     \n\t"
-+              "cmp $512, %%"REG_S"                    \n\t" 
++              "cmp $512, %%"REG_S"                    \n\t"
 +              " jb 1b                                 \n\t"
 +              :: "r" (buf+64), "r" (delay_ptr)
 +              : "%"REG_S, "%"REG_D
 +      );
 +      delay_ptr+=128;
 +//    window_ptr-=128;
-+      
++
 +      __asm__ volatile(
 +              "mov $1024, %%"REG_D"                   \n\t"  // 1024
 +              "xor %%"REG_S", %%"REG_S"               \n\t"  // 0
 +              "1:                                     \n\t"
 +              "movlps (%0, %%"REG_S"), %%xmm0 \n\t" // ? ? A ?
 +              "movlps 8(%0, %%"REG_S"), %%xmm1        \n\t" // ? ? C ?
-+              "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // ? D C ? 
-+              "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // ? B A ? 
++              "movhps -16(%0, %%"REG_D"), %%xmm1      \n\t" // ? D C ?
++              "movhps -8(%0, %%"REG_D"), %%xmm0       \n\t" // ? B A ?
 +              "shufps $0x99, %%xmm1, %%xmm0           \n\t" // D C B A
 +              "mulps 1536+"MANGLE(sseWindow)"(%%"REG_S"), %%xmm0\n\t"
 +              "movaps %%xmm0, (%1, %%"REG_S")         \n\t"
 +              "add $16, %%"REG_S"                     \n\t"
 +              "sub $16, %%"REG_D"                     \n\t"
-+              "cmp $512, %%"REG_S"                    \n\t" 
++              "cmp $512, %%"REG_S"                    \n\t"
 +              " jb 1b                                 \n\t"
 +              :: "r" (buf), "r" (delay_ptr)
 +              : "%"REG_S, "%"REG_D
  {
      int i, k;
 @@ -364,7 +1141,7 @@
+
  void a52_imdct_init (uint32_t mm_accel)
  {
 -    int i, k;
 +    int i, j, k;
      double sum;
+
      /* compute imdct window - kaiser-bessel derived window, alpha = 5.0 */
 @@ -416,6 +1193,99 @@
        post2[i].real = cos ((M_PI / 128) * (i + 0.5));
 +          sseSinCos1c[2*i+0]= xcos1[i];
 +          sseSinCos1c[2*i+1]= -xcos1[i];
 +          sseSinCos1d[2*i+0]= xsin1[i];
-+          sseSinCos1d[2*i+1]= xsin1[i];       
++          sseSinCos1d[2*i+1]= xsin1[i];
 +      }
 +      for (i = 1; i < 7; i++) {
 +          j = 1 << i;
 +          for (k = 0; k < j; k+=2) {
-+          
++
 +              sseW[i][4*k + 0] = w[i][k+0].real;
 +              sseW[i][4*k + 1] = w[i][k+0].real;
 +              sseW[i][4*k + 2] = w[i][k+1].real;
 +              sseW[i][4*k + 4] = -w[i][k+0].imag;
 +              sseW[i][4*k + 5] = w[i][k+0].imag;
 +              sseW[i][4*k + 6] = -w[i][k+1].imag;
-+              sseW[i][4*k + 7] = w[i][k+1].imag;          
-+              
++              sseW[i][4*k + 7] = w[i][k+1].imag;
++
 +      //we multiply more or less uninitalized numbers so we need to use exactly 0.0
 +              if(k==0)
 +              {
 +//                    sseW[i][4*k + 0]= sseW[i][4*k + 1]= 1.0;
 +                      sseW[i][4*k + 4]= sseW[i][4*k + 5]= 0.0;
 +              }
-+              
++
 +              if(2*k == j)
 +              {
 +                      sseW[i][4*k + 0]= sseW[i][4*k + 1]= 0.0;
 +      for(i=0; i<128; i++)
 +      {
 +              sseWindow[2*i+0]= -a52_imdct_window[2*i+0];
-+              sseWindow[2*i+1]=  a52_imdct_window[2*i+1];     
++              sseWindow[2*i+1]=  a52_imdct_window[2*i+1];
 +      }
-+      
++
 +      for(i=0; i<64; i++)
 +      {
 +              sseWindow[256 + 2*i+0]= -a52_imdct_window[254 - 2*i+1];
 +      }
 +      else
 +#endif
+
  #ifdef LIBA52_DJBFFT
      if (mm_accel & MM_ACCEL_DJBFFT) {
 @@ -426,7 +1296,5 @@
 +
 +/* PPC accelerations */
 +#define MM_ACCEL_PPC_ALTIVEC  0x00010000
+
  uint32_t mm_accel (void);
+
 --- liba52/parse.c     2006-12-05 08:08:01.000000000 +0100
 +++ liba52/parse.c     2006-12-05 08:08:44.000000000 +0100
 @@ -24,6 +28,7 @@
  #include "config.h"
+
  #include <stdlib.h>
 +#include <stdio.h>
  #include <string.h>
  #include <inttypes.h>
+
 @@ -31,13 +36,12 @@
  #include "a52_internal.h"
  #include "bitstream.h"
  #include "tables.h"
 +#include "mm_accel.h"
 +#include "libavutil/avutil.h"
+
 -#ifdef HAVE_MEMALIGN
 +#if HAVE_MEMALIGN
  /* some systems have memalign() but no declaration for it */
 -/* assume malloc alignment is sufficient */
 -#define memalign(align,size) malloc (size)
  #endif
+
  typedef struct {
 @@ -60,7 +64,16 @@
      if (state == NULL)
        return NULL;
-+#if defined(__MINGW32__) && defined(HAVE_SSE) 
+
++#if defined(__MINGW32__) && defined(HAVE_SSE)
 +    state->samples = av_malloc(256 * 12 * sizeof (sample_t));
 +#else
      state->samples = memalign (16, 256 * 12 * sizeof (sample_t));
 +    if(((int)state->samples%16) && (mm_accel&MM_ACCEL_X86_SSE)){
 +      mm_accel &=~MM_ACCEL_X86_SSE;
 +      fprintf(stderr, "liba52: unable to get 16 byte aligned memory disabling usage of SSE instructions\n");
-+    }   
-+ 
++    }
++
      if (state->samples == NULL) {
        free (state);
        return NULL;
 @@ -74,6 +87,7 @@
      state->lfsr_state = 1;
+
      a52_imdct_init (mm_accel);
 +    downmix_accel_init(mm_accel);
+
      return state;
  }
 @@ -141,7 +155,7 @@
      state->acmod = acmod = buf[6] >> 5;
+
      a52_bitstream_set_ptr (state, buf + 6);
 -    bitstream_get (state, 3); /* skip acmod we already parsed */
 +    bitstream_skip (state, 3);        /* skip acmod we already parsed */
+
      if ((acmod == 2) && (bitstream_get (state, 2) == 2))      /* dsurmod */
        acmod = A52_DOLBY;
 @@ -172,28 +186,28 @@
+
      chaninfo = !acmod;
      do {
 -      bitstream_get (state, 5);       /* dialnorm */
 -          bitstream_get (state, 7);   /* mixlevel + roomtyp */
 +          bitstream_skip (state, 7);  /* mixlevel + roomtyp */
      } while (chaninfo--);
+
 -    bitstream_get (state, 2);         /* copyrightb + origbs */
 +    bitstream_skip (state, 2);                /* copyrightb + origbs */
+
      if (bitstream_get (state, 1))     /* timecod1e */
 -      bitstream_get (state, 14);      /* timecod1 */
 +      bitstream_skip (state, 14);     /* timecod1 */
      if (bitstream_get (state, 1))     /* timecod2e */
 -      bitstream_get (state, 14);      /* timecod2 */
 +      bitstream_skip (state, 14);     /* timecod2 */
+
      if (bitstream_get (state, 1)) {   /* addbsie */
        int addbsil;
+
        addbsil = bitstream_get (state, 6);
        do {
 -          bitstream_get (state, 8);   /* addbsi */
 +          bitstream_skip (state, 8);  /* addbsi */
        } while (addbsil--);
      }
+
 @@ -680,7 +694,7 @@
                                 state->fbw_expbap[i].exp[0],
                                 state->fbw_expbap[i].exp + 1))
 -          bitstream_get (state, 8);
 +          bitstream_skip (state, 8);
      }
+
      samples = state->samples;
 @@ -896,6 +910,10 @@
+
  void a52_free (a52_state_t * state)
  {
 -    free (state->samples);
index fff01ae..cba5b80 100644 (file)
@@ -64,7 +64,7 @@ a52_state_t * a52_init (uint32_t mm_accel)
     if (state == NULL)
        return NULL;
 
-#if defined(__MINGW32__) && defined(HAVE_SSE) 
+#if defined(__MINGW32__) && defined(HAVE_SSE)
     state->samples = av_malloc(256 * 12 * sizeof (sample_t));
 #else
     state->samples = memalign (16, 256 * 12 * sizeof (sample_t));
@@ -72,8 +72,8 @@ a52_state_t * a52_init (uint32_t mm_accel)
     if(((int)state->samples%16) && (mm_accel&MM_ACCEL_X86_SSE)){
       mm_accel &=~MM_ACCEL_X86_SSE;
       fprintf(stderr, "liba52: unable to get 16 byte aligned memory disabling usage of SSE instructions\n");
-    }   
+    }
+
     if (state->samples == NULL) {
        free (state);
        return NULL;
@@ -274,7 +274,7 @@ static int parse_exponents (a52_state_t * state, int expstr, int ngrps,
        case EXP_D15:
            *(dest++) = exponent;
        }
-    }  
+    }
 
     return 0;
 }
@@ -322,7 +322,7 @@ static inline int16_t dither_gen (a52_state_t * state)
     int16_t nstate;
 
     nstate = dither_lut[state->lfsr_state >> 8] ^ (state->lfsr_state << 8);
-       
+
     state->lfsr_state = (uint16_t) nstate;
 
     return nstate;
@@ -652,7 +652,7 @@ int a52_block (a52_state_t * state)
        cplexpstr = bitstream_get (state, 2);
     for (i = 0; i < nfchans; i++)
        chexpstr[i] = bitstream_get (state, 2);
-    if (state->lfeon) 
+    if (state->lfeon)
        lfeexpstr = bitstream_get (state, 1);
 
     for (i = 0; i < nfchans; i++)
@@ -870,7 +870,7 @@ int a52_block (a52_state_t * state)
                if (blksw[i])
                    a52_imdct_256 (samples + 256 * i, samples + 1536 + 256 * i,
                                   bias);
-               else 
+               else
                    a52_imdct_512 (samples + 256 * i, samples + 1536 + 256 * i,
                                   bias);
            } else {
@@ -899,7 +899,7 @@ int a52_block (a52_state_t * state)
            for (i = 0; i < nfchans; i++)
                a52_imdct_256 (samples + 256 * i, samples + 1536 + 256 * i,
                               state->bias);
-       else 
+       else
            for (i = 0; i < nfchans; i++)
                a52_imdct_512 (samples + 256 * i, samples + 1536 + 256 * i,
                               state->bias);
index 869bd51..b6bb5ab 100644 (file)
@@ -1,5 +1,5 @@
 
-/* 
+/*
  *  srfftp.h
  *
  *  Copyright (C) Yuqing Deng <Yuqing_Deng@brown.edu> - April 2000
@@ -10,7 +10,7 @@
  *  "Computational Frameworks of the Fast Fourier Transform".
  *
  *  The ideas and the the organization of code borrowed from djbfft written by
- *  D. J. Bernstein <djb@cr.py.to>.  djbff can be found at 
+ *  D. J. Bernstein <djb@cr.py.to>.  djbff can be found at
  *  http://cr.yp.to/djbfft.html.
  *
  *  srfftp.h is free software; you can redistribute it and/or modify
 #ifndef SRFFTP_H__
 #define SRFFTP_H__
 
-static complex_t delta16[4] __attribute__((aligned(16))) = 
+static complex_t delta16[4] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.92387953251129, -0.38268343236509},
    {0.70710678118655, -0.70710678118655},
    {0.38268343236509, -0.92387953251129}};
 
-static complex_t delta16_3[4] __attribute__((aligned(16))) = 
+static complex_t delta16_3[4] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.38268343236509, -0.92387953251129},
    {-0.70710678118655, -0.70710678118655},
    {-0.92387953251129, 0.38268343236509}};
 
-static complex_t delta32[8] __attribute__((aligned(16))) = 
+static complex_t delta32[8] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.98078528040323, -0.19509032201613},
    {0.92387953251129, -0.38268343236509},
@@ -54,7 +54,7 @@ static complex_t delta32[8] __attribute__((aligned(16))) =
    {0.38268343236509, -0.92387953251129},
    {0.19509032201613, -0.98078528040323}};
 
-static complex_t delta32_3[8] __attribute__((aligned(16))) = 
+static complex_t delta32_3[8] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.83146961230255, -0.55557023301960},
    {0.38268343236509, -0.92387953251129},
@@ -64,7 +64,7 @@ static complex_t delta32_3[8] __attribute__((aligned(16))) =
    {-0.92387953251129, 0.38268343236509},
    {-0.55557023301960, 0.83146961230255}};
 
-static complex_t delta64[16] __attribute__((aligned(16))) = 
+static complex_t delta64[16] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.99518472667220, -0.09801714032956},
    {0.98078528040323, -0.19509032201613},
@@ -82,7 +82,7 @@ static complex_t delta64[16] __attribute__((aligned(16))) =
    {0.19509032201613, -0.98078528040323},
    {0.09801714032956, -0.99518472667220}};
 
-static complex_t delta64_3[16] __attribute__((aligned(16))) = 
+static complex_t delta64_3[16] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.95694033573221, -0.29028467725446},
    {0.83146961230255, -0.55557023301960},
@@ -100,7 +100,7 @@ static complex_t delta64_3[16] __attribute__((aligned(16))) =
    {-0.55557023301960, 0.83146961230255},
    {-0.29028467725446, 0.95694033573221}};
 
-static complex_t delta128[32] __attribute__((aligned(16))) = 
+static complex_t delta128[32] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.99879545620517, -0.04906767432742},
    {0.99518472667220, -0.09801714032956},
@@ -134,7 +134,7 @@ static complex_t delta128[32] __attribute__((aligned(16))) =
    {0.09801714032956, -0.99518472667220},
    {0.04906767432742, -0.99879545620517}};
 
-static complex_t delta128_3[32] __attribute__((aligned(16))) = 
+static complex_t delta128_3[32] __attribute__((aligned(16))) =
  { {1.00000000000000,  0.00000000000000},
    {0.98917650996478, -0.14673047445536},
    {0.95694033573221, -0.29028467725446},
index fb4badc..9ce224c 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
  *  srfftp.h
  *
  *  Copyright (C) Yuqing Deng <Yuqing_Deng@brown.edu> - April 2000
@@ -9,7 +9,7 @@
  *  "Computational Frameworks of the Fast Fourier Transform".
  *
  *  The ideas and the the organization of code borrowed from djbfft written by
- *  D. J. Bernstein <djb@cr.py.to>.  djbff can be found at 
+ *  D. J. Bernstein <djb@cr.py.to>.  djbff can be found at
  *  http://cr.yp.to/djbfft.html.
  *
  *  srfftp.h is free software; you can redistribute it and/or modify
@@ -26,7 +26,7 @@
  *  along with GNU Make; see the file COPYING.  If not, write to
  *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- *  Modified for using AMD's 3DNow! - 3DNowEx(DSP)! SIMD operations 
+ *  Modified for using AMD's 3DNow! - 3DNowEx(DSP)! SIMD operations
  *  by Nick Kurshev <nickols_k@mail.ru>
  */
 
index 2fb6610..2f44522 100644 (file)
@@ -21,7 +21,7 @@
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
 
-//#define TIMING //needs Pentium or newer 
+//#define TIMING //needs Pentium or newer
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -80,7 +80,7 @@ long long t, sum=0, min=256*256*256*64;
     if(gCpuCaps.hasSSE)        accel |= MM_ACCEL_X86_SSE;
     if(gCpuCaps.has3DNow)      accel |= MM_ACCEL_X86_3DNOW;
 //    if(gCpuCaps.has3DNowExt)         accel |= MM_ACCEL_X86_3DNOWEXT;
-    
+
     state = a52_init (accel);
     if (state == NULL) {
        fprintf (stderr, "A52 init failed\n");
@@ -112,13 +112,13 @@ ENDTIMING
     while(buf_size<length){
        buf[buf_size++]=getchar();
     }
-    
+
     buf_size=0;
 
     // decode:
     flags=A52_STEREO; //A52_STEREO; //A52_DOLBY; //A52_STEREO; // A52_DOLBY // A52_2F2R // A52_3F2R | A52_LFE
     channels=2;
-    
+
     flags |= A52_ADJUST_LEVEL;
 STARTTIMING
     if (a52_frame (state, buf, &flags, &level, bias))
index 25dd9d9..6f6a261 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 0801e0e..34efbd4 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index c39a9a5..0b4f333 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 19f5ec8..093dfb2 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 3d7be72..cee50fc 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 1fffec8..7fc2fd5 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index ac4e6cf..f005242 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 816b543..ba56a0c 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index cf21100..27cf9e9 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 4f29519..11e36fe 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 5ba861e..277dc63 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 85753ab..0d51703 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index ac9af46..a390968 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index d8111af..c87c7d6 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 6c83134..1e2645e 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index a847901..3b97e91 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index c9842f7..3b33e11 100644 (file)
@@ -465,8 +465,8 @@ int8_t NEAACDECAPI NeAACDecInitDRM(NeAACDecHandle *hDecoder, uint32_t samplerate
     if ((channels == DRMCH_MONO) || (channels == DRMCH_STEREO))
         (*hDecoder)->sbr_present_flag = 0;
     else
-        (*hDecoder)->sbr_present_flag = 1;    
-#endif        
+        (*hDecoder)->sbr_present_flag = 1;
+#endif
 
     (*hDecoder)->fb = filter_bank_init((*hDecoder)->frameLength);
 
index 1b0c683..c06b396 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 0b199c3..12b0c0a 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 030939f..9d2ea9b 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 8bf9051..d6f76d8 100644 (file)
@@ -46,7 +46,7 @@ typedef const int8_t (*drm_ps_huff_tab)[2];
 
 
 /* binary search huffman tables */
-static const int8_t f_huffman_sa[][2] = 
+static const int8_t f_huffman_sa[][2] =
 {
     { /*0*/ -15, 1 },             /* index 0: 1 bits:  x */
     { 2, 3 },                     /* index 1: 2 bits:  1x */
@@ -64,7 +64,7 @@ static const int8_t f_huffman_sa[][2] =
     { /*-7*/ -22, /*-6*/ -21 }    /* index 13: 7 bits: 111111x */
 };
 
-static const int8_t t_huffman_sa[][2] = 
+static const int8_t t_huffman_sa[][2] =
 {
     { /*0*/ -15, 1 },             /* index 0: 1 bits: x */
     { 2, 3 },                     /* index 1: 2 bits: 1x */
@@ -82,7 +82,7 @@ static const int8_t t_huffman_sa[][2] =
     { /*6*/ -9, /*7*/ -8 }        /* index 13: 9 bits: 11111111x */
 };
 
-static const int8_t f_huffman_pan[][2] = 
+static const int8_t f_huffman_pan[][2] =
 {
     { /*0*/ -15, 1 },             /* index 0: 1 bits: x */
     { /*-1*/ -16, 2 },            /* index 1: 2 bits: 1x */
@@ -114,7 +114,7 @@ static const int8_t f_huffman_pan[][2] =
     { /*12*/ -3, /*14*/ -1 }      /* index 27: 16 bits: 111111111111111x */
 };
 
-static const int8_t t_huffman_pan[][2] = 
+static const int8_t t_huffman_pan[][2] =
 {
     { /*0*/ -15, 1 },             /* index 0: 1 bits: x */
     { /*-1*/ -16, 2 },            /* index 1: 2 bits: 1x */
@@ -147,7 +147,7 @@ static const int8_t t_huffman_pan[][2] =
 };
 
 /* There are 3 classes in the standard but the last 2 are identical */
-static const real_t sa_quant[8][2] = 
+static const real_t sa_quant[8][2] =
 {
     { FRAC_CONST(0.0000), FRAC_CONST(0.0000) },
     { FRAC_CONST(0.0501), FRAC_CONST(0.1778) },
@@ -161,7 +161,7 @@ static const real_t sa_quant[8][2] =
 
 /* We don't need the actual quantizer values */
 #if 0
-static const real_t pan_quant[8][5] = 
+static const real_t pan_quant[8][5] =
 {
     { COEF_CONST(0.0000), COEF_CONST(0.0000), COEF_CONST(0.0000), COEF_CONST(0.0000), COEF_CONST(0.0000) },
     { COEF_CONST(0.1661), COEF_CONST(0.1661), COEF_CONST(0.3322), COEF_CONST(0.3322), COEF_CONST(0.3322) },
@@ -200,35 +200,35 @@ static const real_t pan_pow_2_neg[8][5] = {
 
 /* 2^(pan_quant[x][y]/30) */
 static const real_t pan_pow_2_30_pos[8][5] = {
-    { COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1)           }, 
-    { COEF_CONST(1.003845098), COEF_CONST(1.003845098), COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.007704982) }, 
-    { COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.01546933),  COEF_CONST(1.019373909), COEF_CONST(1.019373909) }, 
-    { COEF_CONST(1.011579706), COEF_CONST(1.01546933),  COEF_CONST(1.023293502), COEF_CONST(1.035142941), COEF_CONST(1.039123167) }, 
+    { COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1)           },
+    { COEF_CONST(1.003845098), COEF_CONST(1.003845098), COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.007704982) },
+    { COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.01546933),  COEF_CONST(1.019373909), COEF_CONST(1.019373909) },
+    { COEF_CONST(1.011579706), COEF_CONST(1.01546933),  COEF_CONST(1.023293502), COEF_CONST(1.035142941), COEF_CONST(1.039123167) },
     { COEF_CONST(1.01546933),  COEF_CONST(1.023293502), COEF_CONST(1.035142941), COEF_CONST(1.051155908), COEF_CONST(1.059252598) },
-    { COEF_CONST(1.019373909), COEF_CONST(1.03117796),  COEF_CONST(1.051155908), COEF_CONST(1.071518432), COEF_CONST(1.0839263)   }, 
-    { COEF_CONST(1.023293502), COEF_CONST(1.043118698), COEF_CONST(1.067414119), COEF_CONST(1.092277933), COEF_CONST(1.113439626) }, 
+    { COEF_CONST(1.019373909), COEF_CONST(1.03117796),  COEF_CONST(1.051155908), COEF_CONST(1.071518432), COEF_CONST(1.0839263)   },
+    { COEF_CONST(1.023293502), COEF_CONST(1.043118698), COEF_CONST(1.067414119), COEF_CONST(1.092277933), COEF_CONST(1.113439626) },
     { COEF_CONST(1.03117796),  COEF_CONST(1.055195268), COEF_CONST(1.0839263),   COEF_CONST(1.113439626), COEF_CONST(1.143756546) }
 };
 
 /* 2^(-pan_quant[x][y]/30) */
 static const real_t pan_pow_2_30_neg[8][5] = {
     { COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1),           COEF_CONST(1)           },
-    { COEF_CONST(0.99616963),  COEF_CONST(0.99616963),  COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.99235393)  }, 
-    { COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.984766325), COEF_CONST(0.980994305), COEF_CONST(0.980994305) }, 
-    { COEF_CONST(0.988552848), COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.962349827) }, 
-    { COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.951333663), COEF_CONST(0.944061881) }, 
-    { COEF_CONST(0.980994305), COEF_CONST(0.969764715), COEF_CONST(0.951333663), COEF_CONST(0.933255062), COEF_CONST(0.922571949) }, 
-    { COEF_CONST(0.977236734), COEF_CONST(0.958663671), COEF_CONST(0.936843519), COEF_CONST(0.915517901), COEF_CONST(0.898117847) }, 
+    { COEF_CONST(0.99616963),  COEF_CONST(0.99616963),  COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.99235393)  },
+    { COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.984766325), COEF_CONST(0.980994305), COEF_CONST(0.980994305) },
+    { COEF_CONST(0.988552848), COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.962349827) },
+    { COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.951333663), COEF_CONST(0.944061881) },
+    { COEF_CONST(0.980994305), COEF_CONST(0.969764715), COEF_CONST(0.951333663), COEF_CONST(0.933255062), COEF_CONST(0.922571949) },
+    { COEF_CONST(0.977236734), COEF_CONST(0.958663671), COEF_CONST(0.936843519), COEF_CONST(0.915517901), COEF_CONST(0.898117847) },
     { COEF_CONST(0.969764715), COEF_CONST(0.947691892), COEF_CONST(0.922571949), COEF_CONST(0.898117847), COEF_CONST(0.874311936) }
 };
 
 static const real_t g_decayslope[MAX_SA_BAND] = {
-    FRAC_CONST(1),   FRAC_CONST(1),   FRAC_CONST(1),   FRAC_CONST(0.95),FRAC_CONST(0.9), FRAC_CONST(0.85), FRAC_CONST(0.8), 
-    FRAC_CONST(0.75),FRAC_CONST(0.7), FRAC_CONST(0.65),FRAC_CONST(0.6), FRAC_CONST(0.55),FRAC_CONST(0.5),  FRAC_CONST(0.45), 
+    FRAC_CONST(1),   FRAC_CONST(1),   FRAC_CONST(1),   FRAC_CONST(0.95),FRAC_CONST(0.9), FRAC_CONST(0.85), FRAC_CONST(0.8),
+    FRAC_CONST(0.75),FRAC_CONST(0.7), FRAC_CONST(0.65),FRAC_CONST(0.6), FRAC_CONST(0.55),FRAC_CONST(0.5),  FRAC_CONST(0.45),
     FRAC_CONST(0.4), FRAC_CONST(0.35),FRAC_CONST(0.3), FRAC_CONST(0.25),FRAC_CONST(0.2), FRAC_CONST(0.15), FRAC_CONST(0.1),
-    FRAC_CONST(0.05),FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),    FRAC_CONST(0), 
-    FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),    FRAC_CONST(0),  
-    FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),    FRAC_CONST(0),   
+    FRAC_CONST(0.05),FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),    FRAC_CONST(0),
+    FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),    FRAC_CONST(0),
+    FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0),    FRAC_CONST(0),
     FRAC_CONST(0),   FRAC_CONST(0),   FRAC_CONST(0)
 };
 
@@ -243,26 +243,26 @@ static const real_t sa_sqrt_1_minus[8][2] = {
     { FRAC_CONST(0.929071574),  FRAC_CONST(0)           }
 };
 
-static const uint8_t sa_freq_scale[9][2] = 
+static const uint8_t sa_freq_scale[9][2] =
 {
-    { 0, 0},  
-    { 1, 1},  
-    { 2, 2},  
-    { 3, 3},  
-    { 5, 5},  
-    { 7, 7},  
-    {10,10},  
-    {13,13},  
+    { 0, 0},
+    { 1, 1},
+    { 2, 2},
+    { 3, 3},
+    { 5, 5},
+    { 7, 7},
+    {10,10},
+    {13,13},
     {46,23}
 };
 
-static const uint8_t pan_freq_scale[21] = 
+static const uint8_t pan_freq_scale[21] =
 {
     0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
     11, 12, 13, 14, 15, 18, 22, 26, 32, 64
 };
 
-static const uint8_t pan_quant_class[20] = 
+static const uint8_t pan_quant_class[20] =
 {
     0, 1, 1, 1, 1, 1, 1, 1, 1, 1,
     2, 2, 2, 2, 3, 3, 3, 4, 4, 4
@@ -270,42 +270,42 @@ static const uint8_t pan_quant_class[20] =
 
 /* Inverse mapping lookup */
 static const uint8_t pan_inv_freq[64] = {
-     0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 
-    15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 
+     0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15,
+    15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18,
     19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
     19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19
 };
 
 static const uint8_t sa_inv_freq[MAX_SA_BAND] = {
     0, 1, 2, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6,
-    7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 
-    7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 
+    7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+    7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
     7, 7, 7, 7, 7, 7, 7
 };
 
-static const real_t filter_coeff[] = 
+static const real_t filter_coeff[] =
 {
     FRAC_CONST(0.65143905754106),
     FRAC_CONST(0.56471812200776),
     FRAC_CONST(0.48954165955695)
 };
 
-static const uint8_t delay_length[][2] = 
+static const uint8_t delay_length[][2] =
 {
     { 1, 3 }, { 2, 4 }, { 3, 5 }
 };
 
-static const real_t delay_fraction[] = 
+static const real_t delay_fraction[] =
 {
     FRAC_CONST(0.43), FRAC_CONST(0.75), FRAC_CONST(0.347)
 };
 
-static const real_t peak_decay[2] = 
+static const real_t peak_decay[2] =
 {
     FRAC_CONST(0.58664621951003), FRAC_CONST(0.76592833836465)
 };
 
-static const real_t smooth_coeff[2] = 
+static const real_t smooth_coeff[2] =
 {
     FRAC_CONST(0.6), FRAC_CONST(0.25)
 };
@@ -545,7 +545,7 @@ static int8_t sa_delta_clip(drm_ps_info *ps, int8_t i)
 }
 
 static int8_t pan_delta_clip(drm_ps_info *ps, int8_t i)
-{   
+{
     if (i < -7) {
         /* printf(" PANminclip %d", i); */
         ps->pan_decode_error = 1;
@@ -558,34 +558,34 @@ static int8_t pan_delta_clip(drm_ps_info *ps, int8_t i)
         return i;
 }
 
-static void drm_ps_delta_decode(drm_ps_info *ps) 
+static void drm_ps_delta_decode(drm_ps_info *ps)
 {
-    uint8_t band;    
+    uint8_t band;
 
-    if (ps->bs_enable_sa) 
-    {    
-        if (ps->bs_sa_dt_flag && !ps->g_last_had_sa) 
-        {        
+    if (ps->bs_enable_sa)
+    {
+        if (ps->bs_sa_dt_flag && !ps->g_last_had_sa)
+        {
             for (band = 0; band < DRM_NUM_SA_BANDS; band++)
-            {   
+            {
                 ps->g_prev_sa_index[band] = 0;
-            }           
-        }       
+            }
+        }
         if (ps->bs_sa_dt_flag)
         {
-            ps->g_sa_index[0] = sa_delta_clip(ps, ps->g_prev_sa_index[0]+ps->bs_sa_data[0]);            
+            ps->g_sa_index[0] = sa_delta_clip(ps, ps->g_prev_sa_index[0]+ps->bs_sa_data[0]);
 
         } else {
-            ps->g_sa_index[0] = sa_delta_clip(ps,ps->bs_sa_data[0]);          
+            ps->g_sa_index[0] = sa_delta_clip(ps,ps->bs_sa_data[0]);
         }
-        
+
         for (band = 1; band < DRM_NUM_SA_BANDS; band++)
-        {   
+        {
             if (ps->bs_sa_dt_flag)
             {
                 ps->g_sa_index[band] = sa_delta_clip(ps, ps->g_prev_sa_index[band] + ps->bs_sa_data[band]);
             } else {
-                ps->g_sa_index[band] = sa_delta_clip(ps, ps->g_sa_index[band-1] + ps->bs_sa_data[band]);                
+                ps->g_sa_index[band] = sa_delta_clip(ps, ps->g_sa_index[band-1] + ps->bs_sa_data[band]);
             }
         }
     }
@@ -597,45 +597,45 @@ static void drm_ps_delta_decode(drm_ps_info *ps)
         ps->bs_enable_pan = ps->g_last_had_pan;
         ps->bs_enable_sa = ps->g_last_had_sa;
     }
-    
-       
-    if (ps->bs_enable_sa) 
-    {    
+
+
+    if (ps->bs_enable_sa)
+    {
         if (ps->sa_decode_error) {
             for (band = 0; band < DRM_NUM_SA_BANDS; band++)
-            {   
+            {
                 ps->g_sa_index[band] = ps->g_last_good_sa_index[band];
             }
         } else {
             for (band = 0; band < DRM_NUM_SA_BANDS; band++)
-            {   
+            {
                 ps->g_last_good_sa_index[band] = ps->g_sa_index[band];
             }
         }
     }
-    
-    if (ps->bs_enable_pan) 
+
+    if (ps->bs_enable_pan)
     {
-        if (ps->bs_pan_dt_flag && !ps->g_last_had_pan) 
+        if (ps->bs_pan_dt_flag && !ps->g_last_had_pan)
         {
 /* The DRM PS spec doesn't say anything about this case. (deltacoded in time without a previous frame)
-   AAC PS spec you must tread previous frame as 0, so that's what we try. 
+   AAC PS spec you must tread previous frame as 0, so that's what we try.
 */
             for (band = 0; band < DRM_NUM_PAN_BANDS; band++)
-            {   
+            {
                 ps->g_prev_pan_index[band] = 0;
             }
-        } 
+        }
 
         if (ps->bs_pan_dt_flag)
-        {   
+        {
              ps->g_pan_index[0] = pan_delta_clip(ps,  ps->g_prev_pan_index[0]+ps->bs_pan_data[0]);
         } else {
              ps->g_pan_index[0] = pan_delta_clip(ps, ps->bs_pan_data[0]);
         }
-    
+
         for (band = 1; band < DRM_NUM_PAN_BANDS; band++)
-        {   
+        {
             if (ps->bs_pan_dt_flag)
             {
                 ps->g_pan_index[band] = pan_delta_clip(ps, ps->g_prev_pan_index[band] + ps->bs_pan_data[band]);
@@ -643,23 +643,23 @@ static void drm_ps_delta_decode(drm_ps_info *ps)
                 ps->g_pan_index[band] = pan_delta_clip(ps, ps->g_pan_index[band-1] + ps->bs_pan_data[band]);
             }
         }
+
         if (ps->pan_decode_error) {
             for (band = 0; band < DRM_NUM_PAN_BANDS; band++)
-            {   
+            {
                 ps->g_pan_index[band] = ps->g_last_good_pan_index[band];
             }
         } else {
             for (band = 0; band < DRM_NUM_PAN_BANDS; band++)
-            {   
+            {
                 ps->g_last_good_pan_index[band] = ps->g_pan_index[band];
             }
         }
     }
 }
 
-static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64], uint8_t rateselect) 
-{      
+static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64], uint8_t rateselect)
+{
     uint8_t s, b, k;
     complex_t qfrac, tmp0, tmp, in, R0;
     real_t peakdiff;
@@ -675,7 +675,7 @@ static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64], uint8_t ra
 
     for (b = 0; b < sa_freq_scale[DRM_NUM_SA_BANDS][rateselect]; b++)
     {
-        /* set delay indices */    
+        /* set delay indices */
         for (k = 0; k < NUM_OF_LINKS; k++)
             temp_delay_ser[k] = ps->delay_buf_index_ser[k];
 
@@ -683,7 +683,7 @@ static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64], uint8_t ra
         IM(Phi_Fract) = IM(Phi_Fract_Qmf[b]);
 
         for (s = 0; s < NUM_OF_SUBSAMPLES; s++)
-        {            
+        {
             const real_t gamma = REAL_CONST(1.5);
             const real_t sigma = REAL_CONST(1.5625);
 
@@ -718,8 +718,8 @@ static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64], uint8_t ra
             } else {
                 transratio = MUL_R(DIV_R(nrg, MUL_R(peakdiff, gamma)), sigma);
             }
-            
-            for (k = 0; k < NUM_OF_LINKS; k++) 
+
+            for (k = 0; k < NUM_OF_LINKS; k++)
             {
                 new_delay_slopes[k] = MUL_F(g_decayslope[b], filter_coeff[k]);
             }
@@ -731,14 +731,14 @@ static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64], uint8_t ra
             IM(ps->d_buff[0][b]) = IM(ps->d_buff[1][b]);
 
             RE(ps->d_buff[1][b]) = RE(in);
-            IM(ps->d_buff[1][b]) = IM(in);               
+            IM(ps->d_buff[1][b]) = IM(in);
 
             ComplexMult(&RE(tmp), &IM(tmp), RE(tmp0), IM(tmp0), RE(Phi_Fract), IM(Phi_Fract));
 
             RE(R0) = RE(tmp);
             IM(R0) = IM(tmp);
 
-            for (k = 0; k < NUM_OF_LINKS; k++) 
+            for (k = 0; k < NUM_OF_LINKS; k++)
             {
                 RE(qfrac) = RE(Q_Fract_allpass_Qmf[b][k]);
                 IM(qfrac) = IM(Q_Fract_allpass_Qmf[b][k]);
@@ -766,19 +766,19 @@ static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64], uint8_t ra
                 if (++temp_delay_ser[k] >= delay_length[k][rateselect])
                     temp_delay_ser[k] = 0;
             }
-        }       
+        }
     }
 
     for (k = 0; k < NUM_OF_LINKS; k++)
         ps->delay_buf_index_ser[k] = temp_delay_ser[k];
 }
 
-static void drm_add_ambiance(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64], qmf_t X_right[38][64]) 
+static void drm_add_ambiance(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64], qmf_t X_right[38][64])
 {
-    uint8_t s, b, ifreq, qclass;    
+    uint8_t s, b, ifreq, qclass;
     real_t sa_map[MAX_SA_BAND], sa_dir_map[MAX_SA_BAND], k_sa_map[MAX_SA_BAND], k_sa_dir_map[MAX_SA_BAND];
     real_t new_dir_map, new_sa_map;
-    
+
     if (ps->bs_enable_sa)
     {
         /* Instead of dequantization and mapping, we use an inverse mapping
@@ -793,11 +793,11 @@ static void drm_add_ambiance(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[3
             sa_map[b]  = sa_quant[ps->g_prev_sa_index[ifreq]][qclass];
             new_sa_map = sa_quant[ps->g_sa_index[ifreq]][qclass];
 
-            k_sa_map[b] = MUL_F(inv_f_num_of_subsamples, (new_sa_map - sa_map[b]));    
-            
-            sa_dir_map[b] = sa_sqrt_1_minus[ps->g_prev_sa_index[ifreq]][qclass];                        
+            k_sa_map[b] = MUL_F(inv_f_num_of_subsamples, (new_sa_map - sa_map[b]));
+
+            sa_dir_map[b] = sa_sqrt_1_minus[ps->g_prev_sa_index[ifreq]][qclass];
             new_dir_map   = sa_sqrt_1_minus[ps->g_sa_index[ifreq]][qclass];
-                                                   
+
             k_sa_dir_map[b] = MUL_F(inv_f_num_of_subsamples, (new_dir_map - sa_dir_map[b]));
 
         }
@@ -805,35 +805,35 @@ static void drm_add_ambiance(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[3
         for (s = 0; s < NUM_OF_SUBSAMPLES; s++)
         {
             for (b = 0; b < sa_freq_scale[DRM_NUM_SA_BANDS][rateselect]; b++)
-            {                
+            {
                 QMF_RE(X_right[s][b]) = MUL_F(QMF_RE(X_left[s][b]), sa_dir_map[b]) - MUL_F(QMF_RE(ps->SA[s][b]), sa_map[b]);
                 QMF_IM(X_right[s][b]) = MUL_F(QMF_IM(X_left[s][b]), sa_dir_map[b]) - MUL_F(QMF_IM(ps->SA[s][b]), sa_map[b]);
                 QMF_RE(X_left[s][b]) = MUL_F(QMF_RE(X_left[s][b]), sa_dir_map[b]) + MUL_F(QMF_RE(ps->SA[s][b]), sa_map[b]);
                 QMF_IM(X_left[s][b]) = MUL_F(QMF_IM(X_left[s][b]), sa_dir_map[b]) + MUL_F(QMF_IM(ps->SA[s][b]), sa_map[b]);
-      
+
                 sa_map[b]     += k_sa_map[b];
                 sa_dir_map[b] += k_sa_dir_map[b];
             }
             for (b = sa_freq_scale[DRM_NUM_SA_BANDS][rateselect]; b < NUM_OF_QMF_CHANNELS; b++)
-            {                
+            {
                 QMF_RE(X_right[s][b]) = QMF_RE(X_left[s][b]);
                 QMF_IM(X_right[s][b]) = QMF_IM(X_left[s][b]);
             }
         }
-    } 
+    }
     else {
         for (s = 0; s < NUM_OF_SUBSAMPLES; s++)
         {
             for (b = 0; b < NUM_OF_QMF_CHANNELS; b++)
             {
                 QMF_RE(X_right[s][b]) = QMF_RE(X_left[s][b]);
-                QMF_IM(X_right[s][b]) = QMF_IM(X_left[s][b]);                
+                QMF_IM(X_right[s][b]) = QMF_IM(X_left[s][b]);
             }
         }
     }
 }
 
-static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64], qmf_t X_right[38][64]) 
+static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64], qmf_t X_right[38][64])
 {
     uint8_t s, b, qclass, ifreq;
     real_t tmp, coeff1, coeff2;
@@ -843,7 +843,7 @@ static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64
 
     if (ps->bs_enable_pan)
     {
-        for (b = 0; b < NUM_OF_QMF_CHANNELS; b++) 
+        for (b = 0; b < NUM_OF_QMF_CHANNELS; b++)
         {
             /* Instead of dequantization, 20->64 mapping and 2^G(x,y) we do an
                inverse mapping 64->20 and look up the 2^G(x,y) values directly */
@@ -852,7 +852,7 @@ static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64
 
             if (ps->g_prev_pan_index[ifreq] >= 0)
             {
-                pan_base[b] = pan_pow_2_pos[ps->g_prev_pan_index[ifreq]][qclass]; 
+                pan_base[b] = pan_pow_2_pos[ps->g_prev_pan_index[ifreq]][qclass];
             } else {
                 pan_base[b] = pan_pow_2_neg[-ps->g_prev_pan_index[ifreq]][qclass];
             }
@@ -861,7 +861,7 @@ static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64
             /* a en b can be negative so we may need to inverse parts */
             if (ps->g_pan_index[ifreq] >= 0)
             {
-                if (ps->g_prev_pan_index[ifreq] >= 0) 
+                if (ps->g_prev_pan_index[ifreq] >= 0)
                 {
                     pan_delta[b] = MUL_C(pan_pow_2_30_pos[ps->g_pan_index[ifreq]][qclass],
                                          pan_pow_2_30_neg[ps->g_prev_pan_index[ifreq]][qclass]);
@@ -870,7 +870,7 @@ static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64
                                          pan_pow_2_30_pos[-ps->g_prev_pan_index[ifreq]][qclass]);
                 }
             } else {
-                if (ps->g_prev_pan_index[ifreq] >= 0) 
+                if (ps->g_prev_pan_index[ifreq] >= 0)
                 {
                     pan_delta[b] = MUL_C(pan_pow_2_30_neg[-ps->g_pan_index[ifreq]][qclass],
                                          pan_pow_2_30_neg[ps->g_prev_pan_index[ifreq]][qclass]);
@@ -889,7 +889,7 @@ static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64
                 tmp = pan_base[b];
 
                 coeff2 = DIV_R(REAL_CONST(2.0), (REAL_CONST(1.0) + tmp));
-                coeff1 = MUL_R(coeff2, tmp);                
+                coeff1 = MUL_R(coeff2, tmp);
 
                 QMF_RE(temp_l) = QMF_RE(X_left[s][b]);
                 QMF_IM(temp_l) = QMF_IM(X_left[s][b]);
@@ -900,20 +900,20 @@ static void drm_add_pan(drm_ps_info *ps, uint8_t rateselect, qmf_t X_left[38][64
                 QMF_IM(X_left[s][b]) = MUL_R(QMF_IM(temp_l), coeff1);
                 QMF_RE(X_right[s][b]) = MUL_R(QMF_RE(temp_r), coeff2);
                 QMF_IM(X_right[s][b]) = MUL_R(QMF_IM(temp_r), coeff2);
-                
+
                 /* 2^(a+k*b) = 2^a * 2^b * ... * 2^b */
                 /*                   ^^^^^^^^^^^^^^^ k times */
                 pan_base[b] = MUL_C(pan_base[b], pan_delta[b]);
-            }           
-        }       
-    }     
+            }
+        }
+    }
 }
 
 drm_ps_info *drm_ps_init(void)
 {
     drm_ps_info *ps = (drm_ps_info*)faad_malloc(sizeof(drm_ps_info));
 
-    memset(ps, 0, sizeof(drm_ps_info));     
+    memset(ps, 0, sizeof(drm_ps_info));
 
     return ps;
 }
@@ -927,14 +927,14 @@ void drm_ps_free(drm_ps_info *ps)
 uint8_t drm_ps_decode(drm_ps_info *ps, uint8_t guess, uint32_t samplerate, qmf_t X_left[38][64], qmf_t X_right[38][64])
 {
     uint8_t rateselect = (samplerate >= 24000);
-    
-    if (ps == NULL) 
+
+    if (ps == NULL)
     {
         memcpy(X_right, X_left, sizeof(qmf_t)*30*64);
-        return 0;    
-    }     
+        return 0;
+    }
 
-    if (!ps->drm_ps_data_available && !guess) 
+    if (!ps->drm_ps_data_available && !guess)
     {
         memcpy(X_right, X_left, sizeof(qmf_t)*30*64);
         memset(ps->g_prev_sa_index, 0, sizeof(ps->g_prev_sa_index));
@@ -949,13 +949,13 @@ uint8_t drm_ps_decode(drm_ps_info *ps, uint8_t guess, uint32_t samplerate, qmf_t
         ps->sa_decode_error = 0;
         ps->pan_decode_error = 0;
         drm_ps_delta_decode(ps);
-    } else 
+    } else
     {
         ps->sa_decode_error = 1;
         ps->pan_decode_error = 1;
         /* don't even bother decoding */
     }
-  
+
     ps->drm_ps_data_available = 0;
 
     drm_calc_sa_side_signal(ps, X_left, rateselect);
@@ -963,19 +963,19 @@ uint8_t drm_ps_decode(drm_ps_info *ps, uint8_t guess, uint32_t samplerate, qmf_t
 
     if (ps->bs_enable_sa)
     {
-        ps->g_last_had_sa = 1;        
+        ps->g_last_had_sa = 1;
 
-        memcpy(ps->g_prev_sa_index, ps->g_sa_index, sizeof(int8_t) * DRM_NUM_SA_BANDS);       
+        memcpy(ps->g_prev_sa_index, ps->g_sa_index, sizeof(int8_t) * DRM_NUM_SA_BANDS);
 
     } else {
         ps->g_last_had_sa = 0;
     }
-    
+
     if (ps->bs_enable_pan)
     {
         drm_add_pan(ps, rateselect, X_left, X_right);
-    
-        ps->g_last_had_pan = 1;        
+
+        ps->g_last_had_pan = 1;
 
         memcpy(ps->g_prev_pan_index, ps->g_pan_index, sizeof(int8_t) * DRM_NUM_PAN_BANDS);
 
index e90b234..90f2534 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -45,7 +45,7 @@ extern "C" {
 #define MAX_DELAY                5
 
 typedef struct
-{   
+{
     uint8_t drm_ps_data_available;
     uint8_t bs_enable_sa;
     uint8_t bs_enable_pan;
@@ -58,28 +58,28 @@ typedef struct
 
     int8_t bs_sa_data[DRM_NUM_SA_BANDS];
     int8_t bs_pan_data[DRM_NUM_PAN_BANDS];
-        
+
     int8_t g_sa_index[DRM_NUM_SA_BANDS];
-    int8_t g_pan_index[DRM_NUM_PAN_BANDS];                        
+    int8_t g_pan_index[DRM_NUM_PAN_BANDS];
     int8_t g_prev_sa_index[DRM_NUM_SA_BANDS];
-    int8_t g_prev_pan_index[DRM_NUM_PAN_BANDS];    
+    int8_t g_prev_pan_index[DRM_NUM_PAN_BANDS];
 
     int8_t sa_decode_error;
     int8_t pan_decode_error;
 
     int8_t g_last_good_sa_index[DRM_NUM_SA_BANDS];
     int8_t g_last_good_pan_index[DRM_NUM_PAN_BANDS];
-    
-    qmf_t SA[NUM_OF_SUBSAMPLES][MAX_SA_BAND];               
+
+    qmf_t SA[NUM_OF_SUBSAMPLES][MAX_SA_BAND];
 
     complex_t d_buff[2][MAX_SA_BAND];
     complex_t d2_buff[NUM_OF_LINKS][MAX_DELAY][MAX_SA_BAND];
 
-    uint8_t delay_buf_index_ser[NUM_OF_LINKS];    
-            
+    uint8_t delay_buf_index_ser[NUM_OF_LINKS];
+
     real_t prev_nrg[MAX_SA_BAND];
     real_t prev_peakdiff[MAX_SA_BAND];
-    real_t peakdecay_fast[MAX_SA_BAND]; 
+    real_t peakdecay_fast[MAX_SA_BAND];
 } drm_ps_info;
 
 
index 0d3c7a6..7839878 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 6c5b819..ff88c9b 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 4dc48dc..4f022d1 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 529435b..c254ad5 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index bfedd08..afaf6df 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index d57ce9f..00cb655 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2004 G.C. Pascutto, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
 #include "specrec.h"
 #include "huffman.h"
 
-/* ISO/IEC 14496-3/Amd.1 
- * 8.5.3.3: Huffman Codeword Reordering for AAC spectral data (HCR) 
+/* ISO/IEC 14496-3/Amd.1
+ * 8.5.3.3: Huffman Codeword Reordering for AAC spectral data (HCR)
  *
- * HCR devides the spectral data in known fixed size segments, and 
- * sorts it by the importance of the data. The importance is firstly 
- * the (lower) position in the spectrum, and secondly the largest 
- * value in the used codebook. 
+ * HCR devides the spectral data in known fixed size segments, and
+ * sorts it by the importance of the data. The importance is firstly
+ * the (lower) position in the spectrum, and secondly the largest
+ * value in the used codebook.
  * The most important data is written at the start of each segment
- * (at known positions), the remaining data is interleaved inbetween, 
+ * (at known positions), the remaining data is interleaved inbetween,
  * with the writing direction alternating.
  * Data length is not increased.
 */
 #define VCB11_FIRST 16
 #define VCB11_LAST  31
 
-static const uint8_t PreSortCB_STD[NUM_CB] = 
+static const uint8_t PreSortCB_STD[NUM_CB] =
     { 11, 9, 7, 5, 3, 1};
 
-static const uint8_t PreSortCB_ER[NUM_CB_ER] = 
+static const uint8_t PreSortCB_ER[NUM_CB_ER] =
     { 11, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 9, 7, 5, 3, 1};
 
 /* 8.5.3.3.2 Derivation of segment width */
@@ -71,7 +71,7 @@ static const uint8_t maxCwLen[MAX_CB] = {0, 11, 9, 20, 16, 13, 11, 14, 12, 17, 1
 #define segmentWidth(cb)    min(maxCwLen[cb], ics->length_of_longest_codeword)
 
 /* bit-twiddling helpers */
-static const uint8_t  S[] = {1, 2, 4, 8, 16};    
+static const uint8_t  S[] = {1, 2, 4, 8, 16};
 static const uint32_t B[] = {0x55555555, 0x33333333, 0x0F0F0F0F, 0x00FF00FF, 0x0000FFFF};
 
 typedef struct
@@ -85,11 +85,11 @@ typedef struct
 /* rewind and reverse */
 /* 32 bit version */
 static uint32_t rewrev_word(uint32_t v, const uint8_t len)
-{  
+{
     /* 32 bit reverse */
-    v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]); 
-    v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]); 
-    v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]); 
+    v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]);
+    v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]);
+    v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]);
     v = ((v >> S[3]) & B[3]) | ((v << S[3]) & ~B[3]);
     v = ((v >> S[4]) & B[4]) | ((v << S[4]) & ~B[4]);
 
@@ -101,7 +101,7 @@ static uint32_t rewrev_word(uint32_t v, const uint8_t len)
 
 /* 64 bit version */
 static void rewrev_lword(uint32_t *hi, uint32_t *lo, const uint8_t len)
-{   
+{
     if (len <= 32) {
         *hi = 0;
         *lo = rewrev_word(*lo, len);
@@ -110,22 +110,22 @@ static void rewrev_lword(uint32_t *hi, uint32_t *lo, const uint8_t len)
         uint32_t t = *hi, v = *lo;
 
         /* double 32 bit reverse */
-        v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]); 
-        t = ((t >> S[0]) & B[0]) | ((t << S[0]) & ~B[0]); 
-        v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]); 
-        t = ((t >> S[1]) & B[1]) | ((t << S[1]) & ~B[1]); 
-        v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]); 
-        t = ((t >> S[2]) & B[2]) | ((t << S[2]) & ~B[2]); 
+        v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]);
+        t = ((t >> S[0]) & B[0]) | ((t << S[0]) & ~B[0]);
+        v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]);
+        t = ((t >> S[1]) & B[1]) | ((t << S[1]) & ~B[1]);
+        v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]);
+        t = ((t >> S[2]) & B[2]) | ((t << S[2]) & ~B[2]);
         v = ((v >> S[3]) & B[3]) | ((v << S[3]) & ~B[3]);
         t = ((t >> S[3]) & B[3]) | ((t << S[3]) & ~B[3]);
-        v = ((v >> S[4]) & B[4]) | ((v << S[4]) & ~B[4]);                
+        v = ((v >> S[4]) & B[4]) | ((v << S[4]) & ~B[4]);
         t = ((t >> S[4]) & B[4]) | ((t << S[4]) & ~B[4]);
 
         /* last 32<>32 bit swap is implicit below */
-        
+
         /* shift off low bits (this is really only one 64 bit shift) */
         *lo = (t >> (64 - len)) | (v << (len - 32));
-        *hi = v >> (64 - len);          
+        *hi = v >> (64 - len);
     }
 }
 
@@ -147,7 +147,7 @@ static void concat_bits(bits_t *b, bits_t *a)
 
     al = a->bufa;
     ah = a->bufb;
-    
+
     if (b->len > 32)
     {
         /* maskoff superfluous high b bits */
@@ -158,7 +158,7 @@ static void concat_bits(bits_t *b, bits_t *a)
         al = 0;
     } else {
         bl = b->bufa & ((1 << (b->len)) - 1);
-        bh = 0;   
+        bh = 0;
         ah = (ah << (b->len)) | (al >> (32 - b->len));
         al = al << b->len;
     }
@@ -169,7 +169,7 @@ static void concat_bits(bits_t *b, bits_t *a)
 
     b->len += a->len;
 }
-     
+
 uint8_t is_good_cb(uint8_t this_CB, uint8_t this_sec_CB)
 {
     /* only want spectral data CB's */
@@ -187,20 +187,20 @@ uint8_t is_good_cb(uint8_t this_CB, uint8_t this_sec_CB)
     }
     return 0;
 }
-                    
+
 void read_segment(bits_t *segment, uint8_t segwidth, bitfile *ld)
 {
     segment->len = segwidth;
 
      if (segwidth > 32)
      {
-        segment->bufb = faad_getbits(ld, segwidth - 32);        
-        segment->bufa = faad_getbits(ld, 32);        
+        segment->bufb = faad_getbits(ld, segwidth - 32);
+        segment->bufa = faad_getbits(ld, 32);
 
     } else {
         segment->bufa = faad_getbits(ld, segwidth);
-        segment->bufb = 0;        
-    }    
+        segment->bufb = 0;
+    }
 }
 
 void fill_in_codeword(codeword_t *codeword, uint16_t index, uint16_t sp, uint8_t cb)
@@ -211,22 +211,22 @@ void fill_in_codeword(codeword_t *codeword, uint16_t index, uint16_t sp, uint8_t
     codeword[index].bits.len = 0;
 }
 
-uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics, 
+uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics,
                                 bitfile *ld, int16_t *spectral_data)
-{   
+{
     uint16_t PCWs_done;
-    uint16_t numberOfSegments, numberOfSets, numberOfCodewords;  
+    uint16_t numberOfSegments, numberOfSets, numberOfCodewords;
 
     codeword_t codeword[512];
     bits_t segment[512];
 
     uint16_t sp_offset[8];
     uint16_t g, i, sortloop, set, bitsread;
-    uint8_t w_idx, sfb, this_CB, last_CB, this_sec_CB; 
-    
+    uint8_t w_idx, sfb, this_CB, last_CB, this_sec_CB;
+
     const uint16_t nshort = hDecoder->frameLength/8;
     const uint16_t sp_data_len = ics->length_of_reordered_spectral_data;
-    
+
     const uint8_t *PreSortCb;
 
     /* no data (e.g. silence) */
@@ -236,9 +236,9 @@ uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics,
     /* since there is spectral data, at least one codeword has nonzero length */
     if (ics->length_of_longest_codeword == 0)
         return 10;
-    
+
     if (sp_data_len < ics->length_of_longest_codeword)
-        return 10; 
+        return 10;
 
     sp_offset[0] = 0;
     for (g = 1; g < ics->num_window_groups; g++)
@@ -261,13 +261,13 @@ uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics,
         PreSortCb = PreSortCB_STD;
         last_CB = NUM_CB;
     }
+
     /* step 1: decode PCW's (set 0), and stuff data in easier-to-use format */
     for (sortloop = 0; sortloop < last_CB; sortloop++)
     {
         /* select codebook to process this pass */
         this_CB = PreSortCb[sortloop];
-        
+
         /* loop over sfbs */
         for (sfb = 0; sfb < ics->max_sfb; sfb++)
         {
@@ -280,34 +280,34 @@ uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics,
                     {
                         /* check whether sfb used here is the one we want to process */
                         if ((ics->sect_start[g][i] <= sfb) && (ics->sect_end[g][i] > sfb))
-                        {                            
+                        {
                             /* check whether codebook used here is the one we want to process */
                             this_sec_CB = ics->sect_cb[g][i];
-                 
-                            if (is_good_cb(this_CB, this_sec_CB))                              
+
+                            if (is_good_cb(this_CB, this_sec_CB))
                             {
                                 /* precalculate some stuff */
                                 uint16_t sect_sfb_size = ics->sect_sfb_offset[g][sfb+1] - ics->sect_sfb_offset[g][sfb];
                                 uint8_t inc = (this_sec_CB < FIRST_PAIR_HCB) ? QUAD_LEN : PAIR_LEN;
                                 uint16_t group_cws_count = (4*ics->window_group_length[g])/inc;
                                 uint8_t segwidth = segmentWidth(this_sec_CB);
-                                uint16_t cws;                                
+                                uint16_t cws;
 
-                                /* read codewords until end of sfb or end of window group (shouldn't only 1 trigger?) */                                 
+                                /* read codewords until end of sfb or end of window group (shouldn't only 1 trigger?) */
                                 for (cws = 0; (cws < group_cws_count) && ((cws + w_idx*group_cws_count) < sect_sfb_size); cws++)
                                 {
-                                    uint16_t sp = sp_offset[g] + ics->sect_sfb_offset[g][sfb] + inc * (cws + w_idx*group_cws_count);                                   
+                                    uint16_t sp = sp_offset[g] + ics->sect_sfb_offset[g][sfb] + inc * (cws + w_idx*group_cws_count);
 
                                     /* read and decode PCW */
                                     if (!PCWs_done)
-                                    {         
+                                    {
                                         /* read in normal segments */
                                         if (bitsread + segwidth <= sp_data_len)
-                                        {                                            
-                                            read_segment(&segment[numberOfSegments], segwidth, ld);                          
+                                        {
+                                            read_segment(&segment[numberOfSegments], segwidth, ld);
                                             bitsread += segwidth;
-                                            
-                                            huffman_spectral_data_2(this_sec_CB, &segment[numberOfSegments], &spectral_data[sp]);                                            
+
+                                            huffman_spectral_data_2(this_sec_CB, &segment[numberOfSegments], &spectral_data[sp]);
 
                                             /* keep leftover bits */
                                             rewrev_bits(&segment[numberOfSegments]);
@@ -318,48 +318,48 @@ uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics,
                                                this in earlier because it might not fit in 64 bits. since we already
                                                decoded (and removed) the PCW it is now guaranteed to fit */
                                             if (bitsread < sp_data_len)
-                                            {                                                
-                                                const uint8_t additional_bits = sp_data_len - bitsread;                                               
+                                            {
+                                                const uint8_t additional_bits = sp_data_len - bitsread;
 
-                                                read_segment(&segment[numberOfSegments], additional_bits, ld);                                                
+                                                read_segment(&segment[numberOfSegments], additional_bits, ld);
                                                 segment[numberOfSegments].len += segment[numberOfSegments-1].len;
-                                                rewrev_bits(&segment[numberOfSegments]);                                               
+                                                rewrev_bits(&segment[numberOfSegments]);
 
                                                 if (segment[numberOfSegments-1].len > 32)
                                                 {
-                                                    segment[numberOfSegments-1].bufb = segment[numberOfSegments].bufb + 
+                                                    segment[numberOfSegments-1].bufb = segment[numberOfSegments].bufb +
                                                         showbits_hcr(&segment[numberOfSegments-1], segment[numberOfSegments-1].len - 32);
-                                                    segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa + 
+                                                    segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa +
                                                         showbits_hcr(&segment[numberOfSegments-1], 32);
                                                 } else {
-                                                    segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa + 
+                                                    segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa +
                                                         showbits_hcr(&segment[numberOfSegments-1], segment[numberOfSegments-1].len);
                                                     segment[numberOfSegments-1].bufb = segment[numberOfSegments].bufb;
-                                                }                                                
+                                                }
                                                 segment[numberOfSegments-1].len += additional_bits;
                                             }
                                             bitsread = sp_data_len;
                                             PCWs_done = 1;
 
-                                            fill_in_codeword(codeword, 0, sp, this_sec_CB);                                            
+                                            fill_in_codeword(codeword, 0, sp, this_sec_CB);
                                         }
-                                    } else {    
-                                        fill_in_codeword(codeword, numberOfCodewords - numberOfSegments, sp, this_sec_CB);                                         
+                                    } else {
+                                        fill_in_codeword(codeword, numberOfCodewords - numberOfSegments, sp, this_sec_CB);
                                     }
                                     numberOfCodewords++;
-                                }                             
+                                }
                             }
                         }
-                    } 
-                 } 
+                    }
+                 }
              }
          }
     }
 
     if (numberOfSegments == 0)
-        return 10; 
+        return 10;
 
-    numberOfSets = numberOfCodewords / numberOfSegments;     
+    numberOfSets = numberOfCodewords / numberOfSegments;
 
     /* step 2: decode nonPCWs */
     for (set = 1; set <= numberOfSets; set++)
@@ -382,21 +382,21 @@ uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics,
                 {
                     uint8_t tmplen;
 
-                    if (codeword[codeword_idx].bits.len != 0)                   
-                        concat_bits(&segment[segment_idx], &codeword[codeword_idx].bits);                            
-                    
+                    if (codeword[codeword_idx].bits.len != 0)
+                        concat_bits(&segment[segment_idx], &codeword[codeword_idx].bits);
+
                     tmplen = segment[segment_idx].len;
 
                     if (huffman_spectral_data_2(codeword[codeword_idx].cb, &segment[segment_idx],
                                                &spectral_data[codeword[codeword_idx].sp_offset]) >= 0)
                     {
                         codeword[codeword_idx].decoded = 1;
-                    } else 
-                    {   
+                    } else
+                    {
                         codeword[codeword_idx].bits = segment[segment_idx];
-                        codeword[codeword_idx].bits.len = tmplen;                        
+                        codeword[codeword_idx].bits.len = tmplen;
                     }
-                                            
+
                 }
             }
         }
index af2b8ca..435e3e6 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -354,7 +354,7 @@ uint8_t huffman_spectral_data(uint8_t cb, bitfile *ld, int16_t *sp)
         return huffman_2step_pair_sign(cb, ld, sp);
     case 12: {
         uint8_t err = huffman_2step_pair(11, ld, sp);
-        sp[0] = huffman_codebook(0); sp[1] = huffman_codebook(1); 
+        sp[0] = huffman_codebook(0); sp[1] = huffman_codebook(1);
         return err; }
     case 11:
     {
@@ -443,7 +443,7 @@ int8_t huffman_spectral_data_2(uint8_t cb, bits_t *ld, int16_t *sp)
             vcb11 = cb;
             cb = 11;
         }
-            
+
         cw = showbits_hcr(ld, hcbN[cb]);
         offset = hcb_table[cb][cw].offset;
         extra_bits = hcb_table[cb][cw].extra_bits;
@@ -466,7 +466,7 @@ int8_t huffman_spectral_data_2(uint8_t cb, bits_t *ld, int16_t *sp)
         while (!hcb3[offset].is_leaf)
         {
             uint8_t b;
-            
+
             if ( get1bit_hcr(ld, &b) ) return -1;
             offset += hcb3[offset].data[b];
         }
@@ -485,7 +485,7 @@ int8_t huffman_spectral_data_2(uint8_t cb, bits_t *ld, int16_t *sp)
         while (!hcb_bin_table[cb][offset].is_leaf)
         {
             uint8_t b;
-            
+
             if (get1bit_hcr(ld, &b) ) return -1;
             offset += hcb_bin_table[cb][offset].data[b];
         }
@@ -524,7 +524,7 @@ int8_t huffman_spectral_data_2(uint8_t cb, bits_t *ld, int16_t *sp)
                 int32_t j;
                 uint32_t off;
 
-                neg = (sp[k] < 0) ? 1 : 0; 
+                neg = (sp[k] < 0) ? 1 : 0;
 
                 for (i = 4; ; i++)
                 {
@@ -548,7 +548,7 @@ int8_t huffman_spectral_data_2(uint8_t cb, bits_t *ld, int16_t *sp)
             /* this finds errors in the ESCAPE signal */
             vcb11_check_LAV(vcb11, sp);
         }
-    }    
+    }
     return ld->len;
 }
 
index e7bc32c..e7181a5 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index fc9cc03..8b9372e 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -51,7 +51,7 @@ static void flt_round(float32_t *pf)
         tmp |= (uint32_t)0x00010000;       /* insert 1 lsb */
         tmp2 = tmp;                             /* add 1 lsb and elided one */
         tmp &= (uint32_t)0xff800000;       /* extract exponent and sign */
-        
+
         *pf = *(float32_t*)&tmp1 + *(float32_t*)&tmp2 - *(float32_t*)&tmp;
     } else {
         *pf = *(float32_t*)&tmp;
index 634b180..1a6a11f 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 5f3f8b4..abf0017 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 822383b..47a8298 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 301878f..910a708 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 00f919c..92da282 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index db2b60c..56d5840 100644 (file)
@@ -9,10 +9,10 @@
 +** detailed changelog at http://svn.mplayerhq.hu/mplayer/trunk/
 +** local_changes.diff contains the exact changes to this file.
  **/
+
  #ifndef __BITS_H__
 @@ -58,7 +61,7 @@
+
  #if defined (_WIN32) && !defined(_WIN32_WCE) && !defined(__MINGW32__)
  #define BSWAP(a) __asm mov eax,a __asm bswap eax __asm mov a, eax
 -#elif defined(LINUX) || defined(DJGPP) || defined(__MINGW32__)
 +** detailed changelog at http://svn.mplayerhq.hu/mplayer/trunk/
 +** local_changes.diff contains the exact changes to this file.
  **/
+
  #ifndef __COMMON_H__
 @@ -32,8 +35,13 @@
+
  #ifdef HAVE_CONFIG_H
  #  include "../config.h"
  #endif
 +#if defined(__CYGWIN__)
 +#define __STRICT_ANSI__
 +#endif
+
  #define INLINE __inline
  #if 0 //defined(_WIN32) && !defined(_WIN32_WCE)
  #define ALIGN __declspec(align(16))
 @@ -61,7 +67,7 @@
  /* Use if target platform has address generators with autoincrement */
  //#define PREFER_POINTERS
+
 -#ifdef _WIN32_WCE
 +#if defined(_WIN32_WCE) || defined(__arm__) || defined(__avr32__)
  #define FIXED_POINT
  #endif
+
 @@ -117,6 +123,9 @@
  # ifdef MAIN_DEC
  #  undef MAIN_DEC
 +#  undef SBR_DEC
 +# endif
  #endif // FIXED_POINT
+
  #ifdef DRM
 @@ -151,6 +160,7 @@
+
  #include <stdlib.h>
+
 +#if 0
  typedef unsigned __int64 uint64_t;
  typedef unsigned __int32 uint32_t;
 +#endif
 +
  typedef float float32_t;
+
 @@ -289,7 +319,7 @@
    }
+
+
 -  #if defined(_WIN32) && !defined(__MINGW32__)
 +  #if defined(_WIN32) && !defined(__MINGW32__) && !HAVE_LRINTF
      #define HAS_LRINTF
      // from http://www.stereopsis.com/FPU.html
      static INLINE int lrintf(float f)
 @@ -330,7 +360,7 @@
+
    #else
+
 +#include <math.h>
 +
 -#ifdef HAVE_LRINTF
 @@ -338,8 +370,6 @@
  #  define __USE_ISOC99   1
  #endif
+
 -    #include <math.h>
 -
  #ifdef HAVE_SINF
 +** $Id: output.c,v 1.11 2005/04/05 05:43:41 rfelker Exp $
 +** detailed changelog at http://svn.mplayerhq.hu/mplayer/trunk/
  **/
+
  #include "common.h"
 @@ -463,7 +462,7 @@
      }
  }
+
 -void* output_to_PCM(NeAACDecHandle hDecoder,
 +void* output_to_PCM_sux(NeAACDecHandle hDecoder,
                      real_t **input, void *sample_buffer, uint8_t channels,
 @@ -554,4 +553,51 @@
      return sample_buffer;
  }
+
 +void* output_to_PCM(NeAACDecHandle hDecoder,
 +                    real_t **input, void *sample_buffer, uint8_t channels,
 +                    uint16_t frame_len, uint8_t format)
 +** detailed changelog at http://svn.mplayerhq.hu/mplayer/trunk/
 +** local_changes.diff contains the exact changes to this file.
  **/
+
  #include "common.h"
 @@ -159,7 +162,7 @@
+
  /* static function declarations */
  static void ps_data_decode(ps_info *ps);
 -static hyb_info *hybrid_init();
  static void INLINE DCT3_4_unscaled(real_t *y, real_t *x);
 @@ -189,7 +192,7 @@
  /*  */
+
+
 -static hyb_info *hybrid_init()
 +static hyb_info *hybrid_init(void)
  {
      uint8_t i;
+
 @@ -1935,8 +1938,8 @@
  /* main Parametric Stereo decoding function */
  uint8_t ps_decode(ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64])
 -    qmf_t X_hybrid_right[32][32] = {{0}};
 +    qmf_t X_hybrid_left[32][32] = {{{0}}};
 +    qmf_t X_hybrid_right[32][32] = {{{0}}};
+
      /* delta decoding of the bitstream data */
      ps_data_decode(ps);
 --- libfaad2.orig/sbr_dec.c    2006-03-16 20:15:04.000000000 +0100
 +** detailed changelog at http://svn.mplayerhq.hu/mplayer/trunk/
 +** local_changes.diff contains the exact changes to this file.
  **/
+
+
 @@ -526,8 +529,8 @@
      uint8_t l, k;
      uint8_t dont_process = 0;
 -    ALIGN qmf_t X_right[38][64] = {{0}}; /* must set this to 0 */
 +    ALIGN qmf_t X_left[38][64] = {{{0}}};
 +    ALIGN qmf_t X_right[38][64] = {{{0}}}; /* must set this to 0 */
+
      if (sbr == NULL)
          return 20;
 --- libfaad2.orig/specrec.c    2006-03-16 20:15:04.000000000 +0100
 +** detailed changelog at http://svn.mplayerhq.hu/mplayer/trunk/
 +** local_changes.diff contains the exact changes to this file.
  **/
+
  /*
 @@ -673,29 +673,19 @@
      /* MAIN object type prediction */
 -        }
      }
  #endif
+
  #ifdef LTP_DEC
      if (is_ltp_ot(hDecoder->object_type))
      {
 -        }
      }
  #endif
+
 -    if (hDecoder->time_out[channel] == NULL)
 -    {
          mul = 1;
 -        }
      }
  #endif
+
 -    if (hDecoder->fb_intermed[channel] == NULL)
 -    {
 -        hDecoder->fb_intermed[channel] = (real_t*)faad_malloc(hDecoder->frameLength*sizeof(real_t));
 +        hDecoder->fb_intermed[channel] = (real_t*)realloc(hDecoder->fb_intermed[channel], hDecoder->frameLength*sizeof(real_t));
          memset(hDecoder->fb_intermed[channel], 0, hDecoder->frameLength*sizeof(real_t));
 -    }
+
  #ifdef SSR_DEC
      if (hDecoder->object_type == SSR)
      {
 -        }
      }
  #endif
+
 @@ -865,22 +842,14 @@
+
      /* always allocate 2 channels, PS can always "suddenly" turn up */
  #if (defined(PS_DEC) || defined(DRM_PS))
 -    output_channels = 2;
  #else
      output_channels = 1;
  #endif
+
 -    if (hDecoder->element_output_channels[hDecoder->fr_ch_ele] == 0)
 -    {
 -        /* element_output_channels not set yet */
          return 23;
      }
 -#endif
+
      /* copy L to R when no PS is used */
  #if (defined(PS_DEC) || defined(DRM_PS))
 -    if ((hDecoder->ps_used[hDecoder->fr_ch_ele] == 0))
      }
  #endif
 +#endif
+
      return 0;
  }
index 835c5de..b641c60 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 2615ad4..edf6a2b 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 1d055e6..4c9144d 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -29,7 +29,7 @@
  * Fast (I)MDCT Implementation using (I)FFT ((Inverse) Fast Fourier Transform)
  * and consists of three steps: pre-(I)FFT complex multiplication, complex
  * (I)FFT, post-(I)FFT complex multiplication,
- * 
+ *
  * As described in:
  *  P. Duhamel, Y. Mahieux, and J.P. Petit, "A Fast Algorithm for the
  *  Implementation of Filter Banks Based on 'Time Domain Aliasing
index e74b676..6c97b80 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 8e4eabe..272fb29 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 0f11aad..ef41f8c 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 4154644..d4eeb74 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index dfad827..efcaf33 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -45,7 +45,7 @@ void ms_decode(ic_stream *ics, ic_stream *icsr, real_t *l_spec, real_t *r_spec,
 
     if (ics->ms_mask_present >= 1)
     {
-        for (g = 0; g < ics->num_window_groups; g++) 
+        for (g = 0; g < ics->num_window_groups; g++)
         {
             for (b = 0; b < ics->window_group_length[g]; b++)
             {
index 5ffb254..15887f3 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index b76899d..e677528 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index cfd55e1..9ea50cf 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index c7c6ab2..18bd8ba 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index ee6be7f..464aed1 100644 (file)
@@ -1625,7 +1625,7 @@ static void ps_mix_phase(ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64
 
                 /* ringbuffer index */
                 if (i == 0)
-                { 
+                {
                     i = 2;
                 }
                 i--;
index ef2e0db..21cf549 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index ce3c8e9..1d45ae8 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index cadd7ef..9861b1b 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index a525a1d..fb5e556 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -451,7 +451,7 @@ static int8_t rvlc_huffman_sf(bitfile *ld_sf, bitfile *ld_esc,
     int8_t index;
     uint32_t cw;
     rvlc_huff_table *h = book_rvlc;
-    
+
     i = h->len;
     if (direction > 0)
         cw = faad_getbits(ld_sf, i DEBUGVAR(1,0,""));
index 4b2d3c5..2235984 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index eff9b86..7b089c3 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 2ad36ff..3921026 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -166,7 +166,7 @@ void sbrDecodeEnd(sbr_info *sbr)
         }
 
 #ifdef PS_DEC
-        if (sbr->ps != NULL) 
+        if (sbr->ps != NULL)
             ps_free(sbr->ps);
 #endif
 
index 7a171d0..0ff7546 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 123e1f8..25ad471 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 751afea..029e86a 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -77,7 +77,7 @@ uint8_t qmf_start_channel(uint8_t bs_start_freq, uint8_t bs_samplerate_mode,
     {
         return startMin + offset[offsetIndex][bs_start_freq];
 
-#if 0 /* replaced by offsetIndexTable */ 
+#if 0 /* replaced by offsetIndexTable */
         switch (sample_rate)
         {
         case 16000:
index f777ef4..7a6af56 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 5d7a67b..c6236f2 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -380,16 +380,16 @@ static const real_t log_Qplus1_pan[31][13] = {
 };
 
 static const real_t log_Qplus1[31] = {
-    REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339), 
-    REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156), 
-    REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362), 
-    REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453), 
-    REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878), 
-    REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247), 
-    REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122), 
-    REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667), 
-    REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551), 
-    REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641), 
+    REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339),
+    REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156),
+    REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362),
+    REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453),
+    REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878),
+    REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247),
+    REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122),
+    REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667),
+    REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551),
+    REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641),
     REAL_CONST(0.000000000000000)
 };
 
@@ -846,16 +846,16 @@ static const real_t log_Qplus1_pan[31][13] = {
 };
 
 static const real_t log_Qplus1[31] = {
-    REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339), 
-    REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156), 
-    REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362), 
-    REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453), 
-    REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878), 
-    REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247), 
-    REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122), 
-    REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667), 
-    REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551), 
-    REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641), 
+    REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339),
+    REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156),
+    REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362),
+    REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453),
+    REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878),
+    REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247),
+    REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122),
+    REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667),
+    REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551),
+    REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641),
     REAL_CONST(0.000000000000000)
 };
 
@@ -1371,7 +1371,7 @@ static void calc_gain_groups(sbr_info *sbr, sbr_hfadj_info *adj, real_t *deg, ui
                     i++;
                 }
             }
-        }        
+        }
 
         if (grouping)
         {
@@ -1393,7 +1393,7 @@ static void aliasing_reduction(sbr_info *sbr, sbr_hfadj_info *adj, real_t *deg,
         for (k = 0; k < sbr->N_G[l]; k++)
         {
             E_total_est = E_total = 0;
-            
+
             for (m = sbr->f_group[l][k<<1]; m < sbr->f_group[l][(k<<1) + 1]; m++)
             {
                 /* E_curr: integer */
index 48e1f7c..88e1878 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index bea3280..4442fb8 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -296,7 +296,7 @@ static void auto_correlation(sbr_info *sbr, acorr_coef *ac, qmf_t buffer[MAX_NTS
     /* improves accuracy */
     if (exp > 0)
         exp -= 1;
-   
+
     pow2_to_exp = 1<<(exp-1);
 
     temp2_r = (QMF_RE(buffer[offset-2][bd]) + pow2_to_exp) >> exp;
index e4a0521..e133970 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index ebf0014..a8605a5 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 25294b7..04eb24c 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index eec0ce2..4c00b14 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 9e57e30..22014d9 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 1cd7e41..04a5f51 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index e139843..531b6eb 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 740ab3a..3e74c33 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index 6d2982c..8b42f19 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index affa098..b29058f 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index d4d6009..da28b70 100644 (file)
@@ -606,10 +606,10 @@ static uint8_t quant_to_spec(NeAACDecHandle hDecoder,
                     wb = wa + bin;
 
                     spec_data[wb+0] = iquant(quant_data[k+0], tab, &error) * scf;
-                    spec_data[wb+1] = iquant(quant_data[k+1], tab, &error) * scf;                        
-                    spec_data[wb+2] = iquant(quant_data[k+2], tab, &error) * scf;                        
+                    spec_data[wb+1] = iquant(quant_data[k+1], tab, &error) * scf;
+                    spec_data[wb+2] = iquant(quant_data[k+2], tab, &error) * scf;
                     spec_data[wb+3] = iquant(quant_data[k+3], tab, &error) * scf;
-                        
+
 #else
                     real_t iq0 = iquant(quant_data[k+0], tab, &error);
                     real_t iq1 = iquant(quant_data[k+1], tab, &error);
index ca23669..cbebf61 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index a707dbb..37e09c3 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index a17a03a..b4f6ab6 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index dc224c1..62f0e2f 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
index fcc3567..acb87b0 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD - Freeware Advanced Audio Decoder
 ** Copyright (C) 2002 M. Bakker
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** $Id: ssr_fb.h,v 1.13 2004/09/04 14:56:29 menno Exp $
index a7998ea..4791f53 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later version.
-** 
+**
 ** This program is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software 
+** along with this program; if not, write to the Free Software
 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 **
 ** Any non-GPL usage of this software or parts of this software is strictly
@@ -56,7 +56,7 @@ void gc_set_protopqf(real_t *p_proto)
         -2.1939551286300665E-02, -2.4533179947088161E-02, -2.2591663337768787E-02,
         -1.5122066420044672E-02, -1.7971713448186293E-03,  1.6903413428575379E-02,
         3.9672315874127042E-02,  6.4487527248102796E-02,  8.8850025474701726E-02,
-        0.1101132906105560    ,  0.1258540205143761    ,  0.1342239368467012    
+        0.1101132906105560    ,  0.1258540205143761    ,  0.1342239368467012
     };
 
     for (j = 0; j < 48; ++j)
index 435796e..ffa8a92 100644 (file)
@@ -1,19 +1,19 @@
 /*
 ** FAAD - Freeware Advanced Audio Decoder
 ** Copyright (C) 2002 M. Bakker
-**  
+**
 ** This program is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2 of the License, or
 ** (at your option) any later&n