Go to the documentation of this file.
29 #define SHR(a,b) ((a)*(1.0f/(1<<(b))))
30 #define FIXR_OLD(a) ((int)((a) * FRAC_ONE + 0.5))
31 #define FIXR(x) ((float)(x))
32 #define FIXHR(x) ((float)(x))
33 #define MULH3(x, y, s) ((s)*(y)*(x))
34 #define MULLx(x, y, s) ((y)*(x))
35 #define RENAME(a) a ## _float
36 #define OUT_FMT AV_SAMPLE_FMT_FLT
37 #define OUT_FMT_P AV_SAMPLE_FMT_FLTP
41 #if CONFIG_MP1FLOAT_DECODER
58 #if CONFIG_MP2FLOAT_DECODER
75 #if CONFIG_MP3FLOAT_DECODER
92 #if CONFIG_MP3ADUFLOAT_DECODER
94 .
name =
"mp3adufloat",
101 .
decode = decode_frame_adu,
109 #if CONFIG_MP3ON4FLOAT_DECODER
111 .
name =
"mp3on4float",
115 .priv_data_size =
sizeof(MP3On4DecodeContext),
116 .
init = decode_init_mp3on4,
117 .close = decode_close_mp3on4,
118 .
decode = decode_frame_mp3on4,
120 .
flush = flush_mp3on4,
@ AV_SAMPLE_FMT_FLTP
float, planar
static av_cold int init(AVCodecContext *avctx)
static enum AVSampleFormat sample_fmts[]
AVCodec ff_mp1float_decoder
@ AV_CODEC_ID_MP3
preferred ID for decoding MPEG audio layer 1, 2 or 3
AVCodec ff_mp3on4float_decoder
static void decode(AVCodecContext *dec_ctx, AVPacket *pkt, AVFrame *frame, FILE *outfile)
static av_cold int decode_close(AVCodecContext *avctx)
static void flush(AVCodecContext *avctx)
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
AVSampleFormat
Audio sample formats.
static av_cold int decode_init(AVCodecContext *avctx)
const char * name
Name of the codec implementation.
static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt)
AVCodec ff_mp2float_decoder
AVCodec ff_mp3adufloat_decoder
AVCodec ff_mp3float_decoder