www.pudn.com > av3dec_20050318.zip > sam_scf_band.h


/* 
*********************************************************************** 
* COPYRIGHT AND WARRANTY INFORMATION 
* 
* Copyright 2004,  Audio Video Coding Standard, Part III 
* 
* This software module was originally developed by 
* 
* JungHoe Kim (kjh94@samsung.com), Samsung AIT 
* 
* edited by 
* 
* Lei Miao (win.miaolei@samsung.com), Samsung AIT 
* 
* DISCLAIMER OF WARRANTY 
* 
* These software programs are available to the users without any 
* license fee or royalty on an "as is" basis. The AVS disclaims 
* any and all warranties, whether express, implied, or statutory, 
* including any implied warranties of merchantability or of fitness 
* for a particular purpose. In no event shall the contributors or  
* the AVS be liable for any incidental, punitive, or consequential 
* damages of any kind whatsoever arising from the use of this program. 
* 
* This disclaimer of warranty extends to the user of this program 
* and user's customers, employees, agents, transferees, successors, 
* and assigns. 
* 
* The AVS does not represent or warrant that the program furnished 
* hereunder are free of infringement of any third-party patents. 
* Commercial implementations of AVS, including shareware, may be 
* subject to royalty fees to patent holders. Information regarding 
* the AVS patent policy is available from the AVS Web site at 
* http://www.avs.org.cn 
* 
* THIS IS NOT A GRANT OF PATENT RIGHTS - SEE THE AVS PATENT POLICY. 
************************************************************************ 
*/ 
 
#ifndef _scf_band_h_ 
#define _scf_band_h_ 
 
#define	LEN_SAMP_IDX 4 
 
typedef struct { 
    int     samp_rate; 
    int     nsfb1024; 
    short*  SFbands1024; 
    int     nsfb128; 
    short*  SFbands128; 
} SR_Info; 
 
short             
sfb_96_1024[] = 
{ 
  4, 8, 12, 16, 20, 24, 28,  
  32, 36, 40, 44, 48, 52, 56,  
  64, 72, 80, 88, 96, 108, 120,  
  132, 144, 156, 172, 188, 212, 240,  
  276, 320, 384, 448, 512, 576, 640,  
  704, 768, 832, 896, 960, 1024 
};   /* 41 scfbands */ 
 
short 
sfb_96_128[] = 
{ 
  4, 8, 12, 16, 20, 24, 32,  
  40, 48, 64, 92, 128 
};   /* 12 scfbands */ 
 
short 
sfb_64_1024[] = 
{ 
  4, 8, 12, 16, 20, 24, 28,  
  32, 36, 40, 44, 48, 52, 56,  
  64, 72, 80, 88, 100, 112, 124,  
  140, 156, 172, 192, 216, 240, 268,  
  304, 344, 384, 424, 464, 504, 544,  
  584, 624, 664, 704, 744, 784, 824,  
  864, 904, 944, 984, 1024 
};   /* 41 scfbands 47 */  
 
short 
sfb_64_128[] = 
{ 
  4, 8, 12, 16, 20, 24, 32,  
  40, 48, 64, 92, 128 
};   /* 12 scfbands */ 
 
short 
sfb_48_1024[] = 
{ 
        4,	8,	12,	16,	20,	24,	28,	 
        32,	36,	40,	48,	56,	64,	72,	 
        80,	88,	96,	108,	120,	132,	144,	 
        160,	176,	196,	216,	240,	264,	292,	 
        320,	352,	384,	416,	448,	480,	512,	 
        544,	576,	608,	640,	672,	704,	736,	 
        768,	800,	832,	864,	896,	928,	1024 
}; 
 
short 
sfb_48_128[] = 
{ 
          4,	8,	12,	16,	20,	28,	36,	 
          44,	56,	68,	80,	96,	112,	128 
}; 
 
short 
sfb_32_1024[] = 
{ 
        4,	8,	12,	16,	20,	24,	28,	 
        32,	36,	40,	48,	56,	64,	72,	 
        80,	88,	96,	108,	120,	132,	144,	 
        160,	176,	196,	216,	240,	264,	292,	 
        320,	352,	384,	416,	448,	480,	512,	 
        544,	576,	608,	640,	672,	704,	736,	 
        768,	800,	832,	864,	896,	928,	960, 
        992,	1024 
}; 
 
short 
sfb_24_1024[] = 
{ 
  4, 8, 12, 16, 20, 24, 28,  
  32, 36, 40, 44, 52, 60, 68,  
  76, 84, 92, 100, 108, 116, 124,  
  136, 148, 160, 172, 188, 204, 220,  
  240, 260, 284, 308, 336, 364, 396,  
  432, 468, 508, 552, 600, 652, 704,  
  768, 832, 896, 960, 1024 
};   /* 47 scfbands */ 
 
short 
sfb_24_128[] = 
{ 
  4, 8, 12, 16, 20, 24, 28,  
  36, 44, 52, 64, 76, 92, 108,  
  128 
};   /* 15 scfbands */ 
 
short 
sfb_16_1024[] = 
{ 
  8, 16, 24, 32, 40, 48, 56,  
  64, 72, 80, 88, 100, 112, 124,  
  136, 148, 160, 172, 184, 196, 212,  
  228, 244, 260, 280, 300, 320, 344,  
  368, 396, 424, 456, 492, 532, 572,  
  616, 664, 716, 772, 832, 896, 960,  
  1024 
};   /* 43 scfbands */ 
 
short 
sfb_16_128[] = 
{ 
  4, 8, 12, 16, 20, 24, 28,  
  32, 40, 48, 60, 72, 88, 108,  
  128 
};   /* 15 scfbands */ 
 
short 
sfb_8_1024[] = 
{ 
  12, 24, 36, 48, 60, 72, 84,  
  96, 108, 120, 132, 144, 156, 172,  
  188, 204, 220, 236, 252, 268, 288,  
  308, 328, 348, 372, 396, 420, 448,  
  476, 508, 544, 580, 620, 664, 712,  
  764, 820, 880, 944, 1024 
};   /* 40 scfbands */ 
 
short 
sfb_8_128[] = 
{ 
  4, 8, 12, 16, 20, 24, 28,  
  36, 44, 52, 60, 72, 88, 108,  
  128 
};   /* 15 scfbands */ 
 
SR_Info 
samp_rate_info[(1<