summaryrefslogtreecommitdiffstats
path: root/mp3lib
diff options
context:
space:
mode:
Diffstat (limited to 'mp3lib')
-rw-r--r--mp3lib/layer2.c29
1 files changed, 22 insertions, 7 deletions
diff --git a/mp3lib/layer2.c b/mp3lib/layer2.c
index 21722e5533..84383424a6 100644
--- a/mp3lib/layer2.c
+++ b/mp3lib/layer2.c
@@ -235,13 +235,28 @@ static void II_step_two(unsigned int *bit_alloc,real fraction[2][4][SBLIMIT],int
static void II_select_table(struct frame *fr)
{
- static int translate[3][2][16] =
- { { { 0,2,2,2,2,2,2,0,0,0,1,1,1,1,1,0 } ,
- { 0,2,2,0,0,0,1,1,1,1,1,1,1,1,1,0 } } ,
- { { 0,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0 } ,
- { 0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0 } } ,
- { { 0,3,3,3,3,3,3,0,0,0,1,1,1,1,1,0 } ,
- { 0,3,3,0,0,0,1,1,1,1,1,1,1,1,1,0 } } };
+ static int translate[8][2][16] =
+ { { { 0,2,2,2,2,2,2,0,0,0,1,1,1,1,1,0 } , /*44.1 stereo*/
+ { 0,2,2,0,0,0,1,1,1,1,1,1,1,1,1,0 } } , /*44.1 mono*/
+ { { 0,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0 } , /*48 stereo*/
+ { 0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0 } } , /*48 mono*/
+ { { 0,3,3,3,3,3,3,0,0,0,1,1,1,1,1,0 } , /*32 stereo*/
+ { 0,3,3,0,0,0,1,1,1,1,1,1,1,1,1,0 } } , /*32 mono*/
+ { { 2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,0 } , /*22.05 stereo*/
+ { 2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,0 } } , /*22.05 mono*/
+ { { 2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,0 } , /*24 stereo*/
+ { 2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,0 } } , /*24 mono*/
+ { { 2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,0 } , /*16 stereo*/
+ { 2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,0 } } , /*16 mono*/
+ { { 2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,0 } , /*11.025 stereo*/
+ { 2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,0 } } , /*11.025 mono*/
+ { { 2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,0 } , /*12 stereo*/
+ { 2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,0 } } , /*12 mono*/
+ { { 2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,0 } , /*8 stereo*/
+ { 2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,0 } } /*8 mono*/
+/* 0 48 64 96 128 192 256 384 */
+/* 32 56 80 112 160 224 320 XX*/
+ };
int table,sblim;
static struct al_table *tables[5] =