********************************************************************
         This is the Layer III test bitstream package v2.2
               M.Dietz  FhG/IIS/Inel     24.04.1994
********************************************************************

History:
 v1.0   Old Standard version: main_data_end, region_address
 v2.0   New (=actual) Standard version: main_data_begin, region_count
 v2.1   bug fix: use of table 4 in si_huff.bit removed
        bug fix: he_32khz.bit, he_44khz.bit and he_48khz.bit had wrong
          limited main_data_begin values at higher bitrates. The value is 
          limited due to buffer restrictions and should now be correct.
        he_free contains only free format frames now.
 v2.2   l3dec now correctly handles the alias_reduction for block_type == 2
          and mixed_block_flag == 1 (an alias_reduction has to be performed
          between the lowest two mdct_bands in this case)
        the global gain is reduced for higher huffcode values in si_huff.bit
        compliance accuracy test bitstream added



The bitstreams in this package shall help developers testing their 
Layer III - Decoder. They follow the ISO/MPEG Standard.


The package consists of:

1. bitstreams which are generated synthetically (i.e. we used
only a bitstream encoder) to test as much bitstream parameters as possible.
Therefore you will get some strange audio output by decoding this bitstreams.

   hecommon.bit    tests less necessary header bits
   he_32khz.bit    all bitrates at 32 kHz
   he_44khz.bit    all bitrates at 44,1 kHz (padding included)
   he_48khz.bit    all bitrates at 48 kHz
   he_free.bit     120 kbit 44,1 kHz free format bitstream
   he_mode.bit     tests mono/stereo/MS-stereo/intensity-stereo     
   
   si.bit          tests main_data_begin, part2_3_length, bigvalues,
                   scalefactors
   si_block.bit    tests the block-modes (long,start,short/mixed,stop)
   si_huff.bit     tests the huffman side information and the whole
                   huffman code


2. a bitstream which should produce an audible output:

   sin1k0db.bit    A 1kHz 0dB sinus. The Decoder should generate full
                   scaled output with this bitstream
                   
3. The newest version of the 'l3dec' simulation decoder. You should
   be able to decode all bitstreams, including 'he_free.bit', with this 
   decoder. Using the command line switches of 'l3dec' you can watch 
   the decoding process at several points. This package includes the
   SUN-executable 'l3dec' and the PC-executable 'l3dec.exe'.

4. The compliance accuracy test bitstream (see part 4 of the IS):

   compl.bit       the test bitstream (10Hz-10kHz/-20dB sine sweep)
                   mono, 48 kHz
   compl.hex       reference output in 24bit ascii hex format (mono)


Please report bugs or ask questions to:
      
    Fraunhofer-Institute for Integrated Circuits
    Dipl.-Ing. M.Dietz
    Am Weichselgarten 3
    D-91058 Erlangen
    Tel: +49-9131-776-360
    Fax: +49-9131-776-399
    Email: diz@iis.fhg.de
    



***********************************************************************
***********************************************************************
                 Detailed Bitstream Descriptions
***********************************************************************
***********************************************************************




LAYER III TESTBITSTREAM

  hecommon.bit
  
Test of common header bits.

Common Data:
  128 kbit  44,1 khz  normal stereo   
  all scalefactors = 0  (scalefac_compress = 0)
  normal blocks ( blocksplit_flag = 0 )
  three bigvalue regions, count1 bits

Frame   Action
---------------------------------------------------------------------------
 1-5    crc_check = 1 (= no crc_check)
 
 6      crc_check = 0 (= switched on (for all following blocks))
 
 7      private_bit = 1
 
 8      private_bit = 0
        copyright = 1
        
 9      copyright = 0
        original_home = 1
  
 10     original_home = 0
        emphasis = 1
  
 11     emphasis = 2
  
 12     emphasis = 3
  
 13     emphasis = 0
  
    - end
                 


    
************************************************************************
************************************************************************




LAYER III TESTBITSTREAM

  he_32khz.bit
  
Test of all bitrates at 32 kHz.

Common Data:
  32 khz  mono   
  all scalefactors = 0  (scalefac_compress = 0)
  normal blocks ( blocksplit_flag = 0 )
  three bigvalue regions, count1 bits

Frame   Action
---------------------------------------------------------------------------
 
  1-10  bitrate = 32 kbit
  
 11-20  bitrate = 40 kbit   
                            
 21-30  bitrate = 48 kbit   
                            
 31-40  bitrate = 56 kbit   
                            
 41-50  bitrate = 64 kbit   
                            
 51-60  bitrate = 80 kbit   
                            
 61-70  bitrate = 96 kbit   
                            
 71-80  bitrate = 112 kbit  
                            
 81-90  bitrate = 128 kbit  
                            
 91-100 bitrate = 160 kbit  
                            
101-110 bitrate = 192 kbit  
                            
111-120 bitrate = 224 kbit  
                            
121-130 bitrate = 256 kbit  
                            
131     bitrate = 320 kbit  
  

    - end



*****************************************************************************
*****************************************************************************




LAYER III TESTBITSTREAM

  he_44khz.bit
  
Test of all bitrates at 44,1 kHz

Common Data:
  44,1 khz  mono   
  all scalefactors = 0  (scalefac_compress = 0)
  normal blocks ( blocksplit_flag = 0 )
  three bigvalue regions, count1 bits

  Each bitrate is hold 30 frames to test the function of padding

Frame   Action
---------------------------------------------------------------------------
 
  1-30  bitrate = 32 kbit
  
 31-60  bitrate = 40 kbit
  
 61-90  bitrate = 48 kbit
  
 91-120 bitrate = 56 kbit
  
121-150 bitrate = 64 kbit
                  
151-180 bitrate = 80 kbit
  
181-210 bitrate = 96 kbit
  
211-240 bitrate = 112 kbit
  
241-270 bitrate = 128 kbit
  
271-300 bitrate = 160 kbit
  
301-330 bitrate = 192 kbit
  
331-360 bitrate = 224 kbit
  
361-390 bitrate = 256 kbit
  
391     bitrate = 320 kbit
  

    - end



*************************************************************************
*************************************************************************




LAYER III TESTBITSTREAM

  he_48khz.bit
  
Test of all bitrates at 48 kHz.

Common Data:
  48 khz  mono   
  all scalefactors = 0  (scalefac_compress = 0)
  normal blocks ( blocksplit_flag = 0 )
  three bigvalue regions, count1 bits

Frame   Action
---------------------------------------------------------------------------
 
  1-10  bitrate = 32 kbit
  
 11-20  bitrate = 40 kbit   
                            
 21-30  bitrate = 48 kbit   
                            
 31-40  bitrate = 56 kbit   
                            
 41-50  bitrate = 64 kbit   
                            
 51-60  bitrate = 80 kbit   
                            
 61-70  bitrate = 96 kbit   
                            
 71-80  bitrate = 112 kbit  
                            
 81-90  bitrate = 128 kbit  
                            
 91-100 bitrate = 160 kbit  
                            
101-110 bitrate = 192 kbit  
                            
111-120 bitrate = 224 kbit  
                            
121-130 bitrate = 256 kbit  
                            
131     bitrate = 320 kbit  
  

    - end


          
******************************************************************************
******************************************************************************



LAYER III TESTBITSTREAM

  he_free.bit
  
to test free format.

Common Data:
  120 kbit  free format 44,1 khz  normal stereo   
  all scalefactors = 0  (scalefac_compress = 0)
  normal blocks ( blocksplit_flag = 0 )
  three bigvalue regions, count1 bits

Frame       Action
---------------------------------------------------------------------------
  1 - end   free format bitstream 120 kbit
  



*****************************************************************************
*****************************************************************************




LAYER III TESTBITSTREAM

  he_mode.bit
  
Test of the stereo modes.

Common Data:
  128 kbit  44,1 khz     
  all scalefactors = 0  (scalefac_compress = 0)
  
At the beginning:
  normal blocks ( blocksplit_flag = 0 )
  three bigvalue regions, count1 bits

Frame      Action
---------------------------------------------------------------------------
  1 -  10  single channel mode
 
 11 -  20  dual channel mode
 
 21 -  30  stereo mode
 
 31 -  40  joint stereo mode - mode extension: normal stereo
 
 41 -  50  joint stereo mode - mode extension: MS stereo only
 
 51 -  60  joint stereo mode - mode extension: intensity only
 
 61 -  70  joint stereo mode - mode extension: intensity & MS stereo 
 
 71        Gr 0:  intensity only
           Gr 1:  start block
           
 72 -  80  short blocks & intensity only
 
 81 -  89  short blocks &  intensity & MS stereo 
 
 90        Gr 1: stop_block
 
 91        Gr 0: long_block  intensity only
           Gr 1: start_block (mixed blocks) intensity only
           
 92 - 100  mixed blocks  intensity only
 
101 - 109  mixed blocks  intensity & MS stereo      

110        Gr 1: stop_block (mixed blocks)

111 - 131  single channel mode

    - end



***************************************************************************
***************************************************************************



LAYER III TESTBITSTREAM

  si.bit
  
Test of side information values.

Common Data:
  64 kbit  44,1 khz    single channel mode 
  normal blocks ( blocksplit_flag = 0 )
  
At the beginning:
  all scalefactors = 0  (scalefac_compress = 0)
  three bigvalue regions, count1 bits

Frame      Action
---------------------------------------------------------------------------
  1 -   6  main_data_begin = 0

  6 -  21  main_data_begin increases up to the limit 511

 22        main_data_begin = 0 suddenly
 
 23 -  27  main_data_begin increases slowly
 
 27 -  31  main_data_begin increases fast up to the limit 511
 
 32        part2_3_length of GR 0 is maximal
 
 33 -  36  part2_3_length changes
 
 37        big_values is maximal
 
 38 -  42  global_gain = 255 with only one spectral line set to '1',
           the corresponding scalefactor maximal (=15) and scalefac_scale=1
 
 43 -  47  global_gain = 200, scalefactor = 0
 
 48 -  52  global_gain = 100, only one spectral value set to '1000'
 
 53 -  57  global_gain = 50, only one spectral value set to '8191'
 
 58 -  62  global_gain = 0,   dto.
 
 64        GR 0: scalefactors: slen1 = 0  slen2 = 1
           GR 1: scalefactors: slen1 = 0  slen2 = 2
           
 65        GR 0:     dto               0          3
           GR 1:     dto               3          0
           
 66        GR 0:     dto               1          1
           GR 1:     dto               1          2

 67        GR 0:     dto               1          3
           GR 1:     dto               2          1
           
 68        GR 0:     dto               2          2
           GR 1:     dto               2          3
           
 69        GR 0:     dto               3          1
           GR 1:     dto               3          2
           
 70        GR 0:     dto               3          3
           GR 1:     dto               4          2
           
 71        GR 0:     dto               4          3
           GR 1:     dto               4          3
           
 72        GR 0: scalefactors: slen1 = 0  slen2 = 1   scfsi = 0001
           GR 1: scalefactors: slen1 = 0  slen2 = 2
           
 73        GR 0:     dto               0          3   scfsi = 0010
           GR 1:     dto               3          0
           
 74        GR 0:     dto               1          1   scfsi = 0100
           GR 1:     dto               1          2

 75        GR 0:     dto               1          3   scfsi = 1000
           GR 1:     dto               2          1
           
 76        GR 0:     dto               2          2   scfsi = 1001
           GR 1:     dto               2          3
           
 77        GR 0:     dto               3          1   scfsi = 1011
           GR 1:     dto               3          2
           
 78        GR 0:     dto               3          3   scfsi = 1111
           GR 1:     dto               4          2
           
 79        GR 0:     dto               4          3   scfsi = 0000
           GR 1:     dto               4          3
           
 80        scalefator_scale = 1
 
 81        scalefator_scale = 0        preflag = 1
 
 82        preflag = 0

    - end


**************************************************************************
**************************************************************************



LAYER III TESTBITSTREAM

  si_block.bit
  
Test of the block modes.

Common Data:
  64 kbit  44,1 khz    single channel mode 
  
At the beginning:
  normal blocks ( blocksplit_flag = 0 )
  all scalefactors = 0  (scalefac_compress = 0)
  three bigvalue regions, count1 bits

Frame      Action
---------------------------------------------------------------------------
  1 -  4   long blocks
  
  5        GR 0: long block
           GR 1: start block
           
  6        GR 0: short blocks
           GR 1: stop block
           
  7        GR 0: long block
           GR 1: start block
           
  8        GR 0: short blocks
           GR 1: stop block
           
  9        GR 0: long block
           GR 1: start block
           
 10        short blocks GR 0: subblock_gain = 0,1,2
                        GR 1: subblock_gain = 3,4,5
           
 11        short blocks GR 0: subblock_gain = 6,7,0
                        GR 1: subblock_gain = 7,7,7
                        
 12 - 13   short blocks: several scalefactor & scalefac_scale combinations
 
 14        short blocks: scalefactors = 0
 
 15        GR 0: short blocks
           GR 1: stop block
           
 16        long blocks
 
 17        GR 0: long block
           GR 1: start block (mixed type)
           
 18        GR 0: mixed blocks
           GR 1: stop block (mixed type)
           
 19        GR 0: long block
           GR 1: start block (mixed type)
           
 20        GR 0: mixed blocks
           GR 1: stop block (mixed type)
           
 21        GR 0: long block
           GR 1: start block (mixed type)
           
 22        mixed blocks GR 0: subblock_gain = 0,1,2
                        GR 1: subblock_gain = 3,4,5
           
 23        mixed blocks GR 0: subblock_gain = 6,7,0
                        GR 1: subblock_gain = 7,7,7
                        
 24 - 25   mixed blocks: several scalefactor & scalefac_scale combinations
 
 26        mixed blocks: scalefactors = 0
 
 27        GR 0: mixed blocks
           GR 1: stop block (mixed type)

 28        long block          

    - end




*****************************************************************************
*****************************************************************************



LAYER III TESTBITSTREAM

  si_huff.bit
  
Test of huffman side info and the huffman code.

Common Data:
  64 kbit  44,1 khz    single channel mode 
  normal blocks ( blocksplit_flag = 0 )
  all scalefactors = 0  (scalefac_compress = 0)
  
Frame      Action
---------------------------------------------------------------------------
  2        test of every huffcode pair table (two values for each table)
           GR 0: table no 0,1,2
           GR 1: 3,5
           
  3        GR 0: 6,7,8
           GR 1: 9,10,11
           
  4        GR 0: 12,13,15
           GR 1: 16,17,18
           
  5        GR 0: 19,20,21
           GR 1: 22,23,24
           
  6        GR 0: 25,26,27
           GR 1: 28,29,30
           
  7        GR 0: 31, 0, 1
           GR 1:  2, 3, 5

  8        test of every huffcode count1 table
           GR 0: table no 0
           GR 1: table no 1
           
  9        Test of region_adresses and pairs in regions:
  
           big_values = 0 ( = 0 pairs, 0 regions )
           region pairs0,1,2        region0,1_count
           
           GR 0:  0,  0,  0          0,  0
           

           big_values = 1 ( = 1 pair, 1 region )
           region pairs0,1,2        region0,1_count
           
           GR 1:  1,  0,  0          0,  0

 10        big_values = 3 ( = 3 pairs, 2 regions )
           region pairs0,1,2        region0,1_count

           GR 0:  2,  1,  0          0,  0
           GR 1:  3,  0,  0          1,  0
           
 11        big_values = 5 ( = 5 pairs, 3 regions )
           region pairs0,1,2        region0,1_count
           
           GR 0:  2,  2,  1          0,  0
           GR 1:  4,  1,  0          1,  0
           
 12        GR 0:  5,  0,  0          2,  0
           GR 1:  2,  3,  0          0,  1
 
 13        big_values = 7 ( = 7 pairs, 4 regions )
           region pairs0,1,2        region0,1_count
           
           GR 0:  2,  2,  3          0,  0
           GR 1:  2,  2,  3          0,  0
           
 14        GR 0:  2,  4,  1          0,  1
           GR 1:  2,  5,  0          0,  2
 
 15        GR 0:  4,  3,  0          1,  1
           GR 1:  6,  1,  0          2,  0
 
 16        GR 0:  7,  0,  0          3,  0
           GR 1:  4,  2,  1          1,  0
 
 17        big_values = 13 ( = 13 pairs, 7 regions )
 
           region pairs0,1,2        region0,1_count

           GR 0: 13,  0,  0          6,  0
           GR 1:  2, 11,  0          0,  5
           
 18        GR 0:  2,  2,  9          0,  0
           GR 1:  8,  5,  0          3,  2
           
 19        GR 0:  8,  2,  3          3,  0
           GR 1:  2,  6,  5          0,  2
           
 20        GR 0:  4,  4,  5          1,  1
           GR 1:  4,  4,  5          1,  1
           
 21        big_values = 288 ( = 288 pairs = whole spec., 22 regions )
 
           region pairs0,1,2        region0,1_count

           GR 0: 81,207,  0         15,  5
           GR 1: 81, 17,190         15,  0
           
 22        GR 0: 55,233,  0         13,  7
           GR 1: 18, 49,221          7,  6
           
 23        GR 0: table 0 (no huffcode values)
           GR 1: table 1 all huffcode values
           
 24        GR 0: table 2 all huffcode values
           GR 1: table 3 all huffcode values
           
 25        GR 0: table 5 all huffcode values
           GR 1: table 6 all huffcode values
           
 26        GR 0: table 7 all huffcode values
           GR 1: table 8 all huffcode values
           
 27        GR 0: table 9 all huffcode values
           GR 1: table 10 all huffcode values
           
 28        GR 0: table 11 all huffcode values
           GR 1: table 12 all huffcode values
           
 29 -  30  table 13 all huffcode values
 
 31 -  32  table 15 all huffcode values
 
 33 -  34  table 16 all huffcode values
 
 35        GR 0: table 20 (== table 16 + more linbits) several linbit values
           GR 1: table 23 (== table 16 + more linbits) several linbit values
 
 36 -  37  table 24 all huffcode values
 
 38        GR 0: table 28 (== table 24 + more linbits) several linbit values
           GR 1: table 31 (== table 24 + more linbits) several linbit values
 
 39        GR 0: count1 table 0 all values
           GR 1: count1 table 1 all values

    - end





******************************************************************************
******************************************************************************
                                  E N D  
******************************************************************************
******************************************************************************
                                  

           
