Mercurial > libavcodec.hg
comparison mpegaudio.h @ 2472:021dc26e760f libavcodec
dithering for the mpeg audio decoder
author | michael |
---|---|
date | Sun, 30 Jan 2005 14:04:56 +0000 |
parents | 0d2b59cf9f45 |
children | cc55bc1f8d92 |
comparison
equal
deleted
inserted
replaced
2471:805431763e84 | 2472:021dc26e760f |
---|---|
16 #define MPA_STEREO 0 | 16 #define MPA_STEREO 0 |
17 #define MPA_JSTEREO 1 | 17 #define MPA_JSTEREO 1 |
18 #define MPA_DUAL 2 | 18 #define MPA_DUAL 2 |
19 #define MPA_MONO 3 | 19 #define MPA_MONO 3 |
20 | 20 |
21 /* header + layer + bitrate + freq + lsf/mpeg25 */ | |
22 #define SAME_HEADER_MASK \ | |
23 (0xffe00000 | (3 << 17) | (0xf << 12) | (3 << 10) | (3 << 19)) | |
24 | |
21 int l2_select_table(int bitrate, int nb_channels, int freq, int lsf); | 25 int l2_select_table(int bitrate, int nb_channels, int freq, int lsf); |
22 int mpa_decode_header(AVCodecContext *avctx, uint32_t head); | 26 int mpa_decode_header(AVCodecContext *avctx, uint32_t head); |
23 | 27 |
24 extern const uint16_t mpa_bitrate_tab[2][3][15]; | 28 extern const uint16_t mpa_bitrate_tab[2][3][15]; |
25 extern const uint16_t mpa_freq_tab[3]; | 29 extern const uint16_t mpa_freq_tab[3]; |
27 extern const double enwindow[512]; | 31 extern const double enwindow[512]; |
28 extern const int sblimit_table[5]; | 32 extern const int sblimit_table[5]; |
29 extern const int quant_steps[17]; | 33 extern const int quant_steps[17]; |
30 extern const int quant_bits[17]; | 34 extern const int quant_bits[17]; |
31 extern const int32_t mpa_enwindow[257]; | 35 extern const int32_t mpa_enwindow[257]; |
36 | |
37 /* fast header check for resync */ | |
38 static inline int ff_mpa_check_header(uint32_t header){ | |
39 /* header */ | |
40 if ((header & 0xffe00000) != 0xffe00000) | |
41 return -1; | |
42 /* layer check */ | |
43 if ((header & (3<<17)) == 0) | |
44 return -1; | |
45 /* bit rate */ | |
46 if ((header & (0xf<<12)) == 0xf<<12) | |
47 return -1; | |
48 /* frequency */ | |
49 if ((header & (3<<10)) == 3<<10) | |
50 return -1; | |
51 return 0; | |
52 } |