MPEG Audio decoder. More...
#include "libavutil/channel_layout.h"#include "libavutil/float_dsp.h"#include "avcodec.h"#include "get_bits.h"#include "internal.h"#include "mathops.h"#include "mpegaudiodsp.h"#include "dsputil.h"#include "mpegaudio.h"#include "mpegaudiodecheader.h"#include "mpegaudiodata.h"#include "mpegaudiodectab.h"#include "mpegaudio_tablegen.h"Go to the source code of this file.
Data Structures | |
| struct | GranuleDef |
| struct | MPADecodeContext |
Macros | |
| #define | BACKSTEP_SIZE 512 |
| #define | EXTRABYTES 24 |
| #define | LAST_BUF_SIZE 2 * BACKSTEP_SIZE + EXTRABYTES |
| #define | SHR(a, b) ((a)>>(b)) |
| #define | FIXR_OLD(a) ((int)((a) * FRAC_ONE + 0.5)) |
| #define | FIXR(a) ((int)((a) * FRAC_ONE + 0.5)) |
| #define | FIXHR(a) ((int)((a) * (1LL<<32) + 0.5)) |
| #define | MULH3(x, y, s) MULH((s)*(x), y) |
| #define | MULLx(x, y, s) MULL(x,y,s) |
| #define | RENAME(a) a ## _fixed |
| #define | OUT_FMT AV_SAMPLE_FMT_S16 |
| #define | OUT_FMT_P AV_SAMPLE_FMT_S16P |
| #define | HEADER_SIZE 4 |
| #define | SCALE_GEN(v) { FIXR_OLD(1.0 * (v)), FIXR_OLD(0.7937005259 * (v)), FIXR_OLD(0.6299605249 * (v)) } |
| #define | C3 FIXHR(0.86602540378443864676/2) |
| #define | C4 FIXHR(0.70710678118654752439/2) |
| #define | C5 FIXHR(0.51763809020504152469/2) |
| #define | C6 FIXHR(1.93185165257813657349/4) |
| #define | SPLIT(dst, sf, n) |
| #define | READ_FLIP_SIGN(dst, src) |
| #define | ISQRT2 FIXR(0.70710678118654752440) |
| #define | AA(j) |
Typedefs | |
| typedef struct GranuleDef | GranuleDef |
| typedef struct MPADecodeContext | MPADecodeContext |
Variables | |
| static VLC | huff_vlc [16] |
| static VLC_TYPE | huff_vlc_tables [0+128+128+128+130+128+154+166+142+204+190+170+542+460+662+414][2] |
| static const int | huff_vlc_tables_sizes [16] |
| static VLC | huff_quad_vlc [2] |
| static VLC_TYPE | huff_quad_vlc_tables [128+16][2] |
| static const int | huff_quad_vlc_tables_sizes [2] = { 128, 16 } |
| static uint16_t | band_index_long [9][23] |
| static INTFLOAT | is_table [2][16] |
| static INTFLOAT | is_table_lsf [2][2][16] |
| static INTFLOAT | csa_table [8][4] |
| static int16_t | division_tab3 [1<< 6] |
| static int16_t | division_tab5 [1<< 8] |
| static int16_t | division_tab9 [1<< 11] |
| static int16_t *const | division_tabs [4] |
| static uint16_t | scale_factor_modshift [64] |
| static int32_t | scale_factor_mult [15][3] |
| static const int32_t | scale_factor_mult2 [3][3] |
MPEG Audio decoder.
Definition in file mpegaudiodec.c.
| #define AA | ( | j | ) |
Definition at line 1183 of file mpegaudiodec.c.
Referenced by compute_antialias().
| #define BACKSTEP_SIZE 512 |
Definition at line 44 of file mpegaudiodec.c.
Referenced by mp_decode_frame().
| #define C3 FIXHR(0.86602540378443864676/2) |
Definition at line 457 of file mpegaudiodec.c.
Referenced by imdct12().
| #define C4 FIXHR(0.70710678118654752439/2) |
Definition at line 458 of file mpegaudiodec.c.
Referenced by imdct12().
| #define C5 FIXHR(0.51763809020504152469/2) |
Definition at line 459 of file mpegaudiodec.c.
Referenced by imdct12().
| #define C6 FIXHR(1.93185165257813657349/4) |
Definition at line 460 of file mpegaudiodec.c.
Referenced by imdct12().
| #define EXTRABYTES 24 |
Definition at line 45 of file mpegaudiodec.c.
| #define FIXHR | ( | a | ) | ((int)((a) * (1LL<<32) + 0.5)) |
Definition at line 105 of file mpegaudiodec.c.
Referenced by decode_init_static().
| #define FIXR | ( | a | ) | ((int)((a) * FRAC_ONE + 0.5)) |
Definition at line 104 of file mpegaudiodec.c.
Referenced by decode_init_static().
| #define FIXR_OLD | ( | a | ) | ((int)((a) * FRAC_ONE + 0.5)) |
Definition at line 103 of file mpegaudiodec.c.
| #define HEADER_SIZE 4 |
Definition at line 115 of file mpegaudiodec.c.
Referenced by decode_frame(), and mp_decode_frame().
| #define ISQRT2 FIXR(0.70710678118654752440) |
Definition at line 1045 of file mpegaudiodec.c.
Referenced by compute_stereo().
| #define LAST_BUF_SIZE 2 * BACKSTEP_SIZE + EXTRABYTES |
Definition at line 46 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
| #define MULH3 | ( | x, | |
| y, | |||
| s | |||
| ) | MULH((s)*(x), y) |
Definition at line 106 of file mpegaudiodec.c.
Referenced by compute_imdct(), and imdct12().
| #define MULLx | ( | x, | |
| y, | |||
| s | |||
| ) | MULL(x,y,s) |
Definition at line 107 of file mpegaudiodec.c.
Referenced by compute_stereo(), and decode_init_static().
| #define OUT_FMT AV_SAMPLE_FMT_S16 |
Definition at line 109 of file mpegaudiodec.c.
Referenced by decode_init().
| #define OUT_FMT_P AV_SAMPLE_FMT_S16P |
Definition at line 110 of file mpegaudiodec.c.
Referenced by decode_init(), and mp_decode_frame().
| #define READ_FLIP_SIGN | ( | dst, | |
| src | |||
| ) |
Definition at line 856 of file mpegaudiodec.c.
Referenced by huffman_decode().
| #define RENAME | ( | a | ) | a ## _fixed |
Definition at line 108 of file mpegaudiodec.c.
Referenced by compute_imdct(), decode_init_static(), huffman_decode(), mp_decode_frame(), rgb2rgb_init(), sws_init_swScale(), uyvytoyuv420(), uyvytoyuv422(), yuv422ptouyvy(), yuv422ptoyuy2(), yuyvtoyuv420(), yuyvtoyuv422(), yv12touyvy(), and yv12toyuy2().
| #define SCALE_GEN | ( | v | ) | { FIXR_OLD(1.0 * (v)), FIXR_OLD(0.7937005259 * (v)), FIXR_OLD(0.6299605249 * (v)) } |
Definition at line 155 of file mpegaudiodec.c.
Definition at line 101 of file mpegaudiodec.c.
Referenced by imdct12().
| #define SPLIT | ( | dst, | |
| sf, | |||
| n | |||
| ) |
Definition at line 758 of file mpegaudiodec.c.
Referenced by avfilter_register_all(), and lsf_sf_expand().
| typedef struct GranuleDef GranuleDef |
| typedef struct MPADecodeContext MPADecodeContext |
|
static |
Definition at line 1192 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 1222 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 1047 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 1646 of file mpegaudiodec.c.
|
static |
Definition at line 426 of file mpegaudiodec.c.
Definition at line 277 of file mpegaudiodec.c.
Referenced by decode_init().
|
static |
Definition at line 787 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 206 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 197 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 179 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Convert region offsets to region sizes and truncate size to big_values.
Definition at line 168 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 1709 of file mpegaudiodec.c.
|
inlinestatic |
Definition at line 825 of file mpegaudiodec.c.
Referenced by huffman_decode().
|
static |
Definition at line 861 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
Definition at line 464 of file mpegaudiodec.c.
Referenced by compute_imdct().
|
inlinestatic |
Definition at line 231 of file mpegaudiodec.c.
Referenced by mp_decode_layer1(), and mp_decode_layer2().
|
inlinestatic |
Definition at line 245 of file mpegaudiodec.c.
Referenced by mp_decode_layer2().
|
inlinestatic |
Definition at line 261 of file mpegaudiodec.c.
Referenced by huffman_decode().
|
static |
Definition at line 778 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 1557 of file mpegaudiodec.c.
Referenced by decode_frame().
|
static |
Definition at line 506 of file mpegaudiodec.c.
Referenced by mp_decode_frame().
|
static |
Definition at line 571 of file mpegaudiodec.c.
Referenced by mp_decode_frame().
|
static |
Definition at line 1302 of file mpegaudiodec.c.
Referenced by mp_decode_frame().
|
static |
Definition at line 1703 of file mpegaudiodec.c.
Referenced by flush().
|
static |
Definition at line 1012 of file mpegaudiodec.c.
Referenced by mp_decode_layer3().
|
static |
Definition at line 831 of file mpegaudiodec.c.
Referenced by huffman_decode().
|
static |
Definition at line 134 of file mpegaudiodec.c.
Referenced by decode_init_static(), and ff_init_long_region().
|
static |
Definition at line 139 of file mpegaudiodec.c.
Referenced by decode_init_static().
|
static |
Definition at line 141 of file mpegaudiodec.c.
|
static |
Definition at line 142 of file mpegaudiodec.c.
|
static |
Definition at line 143 of file mpegaudiodec.c.
|
static |
Definition at line 145 of file mpegaudiodec.c.
Referenced by decode_init_static(), and mp_decode_layer2().
|
static |
Definition at line 130 of file mpegaudiodec.c.
|
static |
Definition at line 131 of file mpegaudiodec.c.
Referenced by decode_init_static().
|
static |
Definition at line 132 of file mpegaudiodec.c.
Referenced by decode_init_static().
|
static |
Definition at line 121 of file mpegaudiodec.c.
|
static |
Definition at line 125 of file mpegaudiodec.c.
Referenced by decode_init_static().
|
static |
Definition at line 126 of file mpegaudiodec.c.
Referenced by decode_init_static().
|
static |
Definition at line 137 of file mpegaudiodec.c.
Referenced by compute_stereo(), and decode_init_static().
|
static |
Definition at line 138 of file mpegaudiodec.c.
Referenced by compute_stereo(), and decode_init_static().
|
static |
Definition at line 150 of file mpegaudiodec.c.
Referenced by decode_init_static(), l1_unscale(), and l2_unscale_group().
|
static |
Definition at line 152 of file mpegaudiodec.c.
Referenced by decode_init_static(), encode_frame(), l1_unscale(), and MPA_encode_init().
|
static |
Definition at line 158 of file mpegaudiodec.c.
Referenced by l2_unscale_group().