25 #if defined(REAL_IS_FIXED) && defined(PRECALC_TABLES) 30 0.0 , -2.0/3.0 , 2.0/3.0 ,
31 2.0/7.0 , 2.0/15.0 , 2.0/31.0, 2.0/63.0 , 2.0/127.0 , 2.0/255.0 ,
32 2.0/511.0 , 2.0/1023.0 , 2.0/2047.0 , 2.0/4095.0 , 2.0/8191.0 ,
33 2.0/16383.0 , 2.0/32767.0 , 2.0/65535.0 ,
34 -4.0/5.0 , -2.0/5.0 , 2.0/5.0, 4.0/5.0 ,
35 -8.0/9.0 , -4.0/9.0 , -2.0/9.0 , 2.0/9.0 , 4.0/9.0 , 8.0/9.0
41 const int base[3][9] =
44 { 17, 18, 0 , 19, 20 , } ,
45 { 21, 1, 22, 23, 0, 24, 25, 2, 26 }
48 const int tablen[3] = { 3 , 5 , 9 };
80 #if defined(REAL_IS_FIXED) && defined(PRECALC_TABLES) 86 for(
j=3,
i=0;
i<63;
i++,
j--)
97 if(!fr->
p.down_sample)
99 for(
j=3,
i=0;
i<63;
i++,
j--)
104 for(
j=3,
i=0;
i<63;
i++,
j--)
119 int stereo = fr->
stereo-1;
125 unsigned int scfsi_buf[64];
126 unsigned int *scfsi,*bita;
129 unsigned int needbits = 0;
130 unsigned int scale_bits[4] = { 18, 12, 6, 12 };
135 for(
i=jsbound;
i;
i--,alloc1+=(1<<step))
140 needbits += ((bita[0]?1:0)+(bita[1]?1:0))*2;
143 for(
i=sblimit-jsbound;
i;
i--,alloc1+=(1<<step))
148 needbits += (bita[0]?1:0)*2*2;
160 for(
i=sblimit2;
i;
i--)
165 for(
i=sblimit;
i;
i--,alloc1+=(1<<step))
188 for(
i=sblimit2;
i;--
i)
190 needbits += scale_bits[*scfsi++];
200 for(
i=sblimit2;
i;--
i)
237 unsigned int *bita=bit_alloc;
240 for(
i=0;
i<jsbound;
i++,alloc1+=(1<<step))
243 for(
j=0;
j<stereo;
j++)
247 k=(alloc2 = alloc1+ba)->
bits;
248 if( (d1=alloc2->
d) < 0)
274 for(
i=jsbound;
i<sblimit;
i++,alloc1+=(1<<step))
280 k=(alloc2 = alloc1+ba)->
bits;
281 if( (d1=alloc2->
d) < 0)
299 unsigned int idx,*tab,m1,m2;
313 fraction[0][0][
i] = fraction[0][1][
i] = fraction[0][2][
i] =
331 for (
j=0;
j<stereo;
j++)
341 { 0,2,2,2,2,2,2,0,0,0,1,1,1,1,1,0 },
342 { 0,2,2,0,0,0,1,1,1,1,1,1,1,1,1,0 }
345 { 0,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0 },
346 { 0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0 }
349 { 0,3,3,3,3,3,3,0,0,0,1,1,1,1,1,0 },
350 { 0,3,3,0,0,0,1,1,1,1,1,1,1,1,1,0 }
356 const int sblims[5] = { 27 , 30 , 8, 12 , 30 };
363 sblim = sblims[
table];
377 unsigned int bit_alloc[64];
386 fprintf(
stderr,
"Truncating stereo boundary to sideband limit.\n");
397 error(
"first step of layer I decoding failed");
407 error(
"missing bits in layer II step two");
void init_layer12_stuff(mpg123_handle *fr, real *(*init_table)(mpg123_handle *fr, real *table, int m))
struct mpg123_pars_struct p
#define DOUBLE_TO_REAL(x)
#define init_layer12_table_mmx
static const struct al_table alloc_1[]
GLenum GLenum GLenum GLenum GLenum scale
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
_Tp _STLP_CALL real(const complex< _Tp > &__z)
GLenum GLsizei GLenum GLenum const GLvoid * table
static int grp_3tab[32 *3]
real * init_layer12_table(mpg123_handle *fr, real *table, int m)
const struct al_table * alloc
#define REAL_SCALE_LAYER12(x)
GLenum GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * bits
static void II_step_two(unsigned int *bit_alloc, real fraction[2][4][SBLIMIT], int *scale, mpg123_handle *fr, int x1)
float pow(float __x, int __y)
_Check_return_opt_ _CRTIMP int __cdecl fprintf(_Inout_ FILE *_File, _In_z_ _Printf_format_string_ const char *_Format,...)
static const struct al_table alloc_4[]
int do_layer2(mpg123_handle *fr)
static int grp_5tab[128 *3]
func_synth_mono synth_mono
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
#define MPG_MD_JOINT_STEREO
static int grp_9tab[1024 *3]
static void II_select_table(mpg123_handle *fr)
struct mpg123_handle_struct::@3417 layer2
static unsigned int getbits(mpg123_handle *fr, int number_of_bits)
static int II_step_one(unsigned int *bit_alloc, int *scale, mpg123_handle *fr)
static const struct al_table alloc_0[]
func_synth_stereo synth_stereo
static const struct al_table alloc_3[]
#define REAL_MUL_SCALE_LAYER12(x, y)
#define DOUBLE_TO_REAL_15(x)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define getbits_fast(fr, nob)
static const double mulmul[27]
static const struct al_table alloc_2[]
struct nls_table * tables
#define DOUBLE_TO_REAL_SCALE_LAYER12(x)
static const real layer12_table[27][64]
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *