#include "config_components.h"
#include "ac3dec.h"
#include "codec_internal.h"
#include "ac3dec.c"
Go to the source code of this file.
◆ USE_FIXED
◆ IMDCT_TYPE
◆ scale_coefs()
static void scale_coefs |
( |
int32_t * |
dst, |
|
|
const int32_t * |
src, |
|
|
int |
dynrng, |
|
|
int |
len |
|
) |
| |
|
static |
◆ ac3_downmix_c_fixed16()
static void ac3_downmix_c_fixed16 |
( |
int16_t ** |
samples, |
|
|
int16_t ** |
matrix, |
|
|
int |
out_ch, |
|
|
int |
in_ch, |
|
|
int |
len |
|
) |
| |
|
static |
Downmix samples from original signal to stereo or mono (this is for 16-bit samples and fixed point decoder - original (for 32-bit samples) is in ac3dsp.c).
Definition at line 131 of file ac3dec_fixed.c.
Referenced by decode_audio_block().
◆ end_freq_inv_tab
const int end_freq_inv_tab[8] |
|
static |
Initial value:=
{
50529027, 44278013, 39403370, 32292987, 27356480, 23729101, 20951060, 18755316
}
Definition at line 58 of file ac3dec_fixed.c.
Referenced by spx_strategy().
◆ options
Initial value:= {
{
"cons_noisegen",
"enable consistent noise generation",
OFFSET(consistent_noise_generation),
AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1,
PAR },
{
"drc_scale",
"percentage of dynamic range compression to apply",
OFFSET(drc_scale),
AV_OPT_TYPE_FLOAT, {.dbl = 1.0}, 0.0, 6.0,
PAR },
{
"heavy_compr",
"enable heavy dynamic range compression",
OFFSET(heavy_compression),
AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1,
PAR },
}
Definition at line 161 of file ac3dec_fixed.c.
◆ ac3_decoder_class
Initial value:= {
.class_name = "Fixed-Point AC-3 Decoder",
}
Definition at line 169 of file ac3dec_fixed.c.
◆ ff_ac3_fixed_decoder
Initial value:= {
.p.name = "ac3_fixed",
.priv_data_size = sizeof (AC3DecodeContext),
}
Definition at line 176 of file ac3dec_fixed.c.
#define FF_CODEC_CAP_INIT_CLEANUP
The codec allows calling the close function for deallocation even if the init function returned a fai...
static const AVClass ac3_decoder_class
static int ac3_decode_frame(AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *avpkt)
Decode a single AC-3 frame.
static av_cold void ac3_decode_flush(AVCodecContext *avctx)
#define FF_CODEC_DECODE_CB(func)
static av_cold int ac3_decode_init(AVCodecContext *avctx)
AVCodec initialization.
#define CODEC_LONG_NAME(str)
#define LIBAVUTIL_VERSION_INT
const char * av_default_item_name(void *ptr)
Return the context name.
void(* flush)(AVBSFContext *ctx)
@ AV_OPT_TYPE_CHLAYOUT
Underlying C type is AVChannelLayout.
#define AV_CODEC_CAP_CHANNEL_CONF
Codec should fill in channel configuration and samplerate instead of container.
int(* init)(AVBSFContext *ctx)
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() or get_encode_buffer() for allocating buffers and supports custom allocators.
#define CODEC_SAMPLEFMTS(...)
@ AV_SAMPLE_FMT_S16P
signed 16 bits, planar
@ AV_OPT_TYPE_FLOAT
Underlying C type is float.
static av_cold int ac3_decode_end(AVCodecContext *avctx)
Uninitialize the AC-3 decoder.
static const AVOption options[]
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf default minimum maximum flags name is the option keep it simple and lowercase description are in without and describe what they for example set the foo of the bar offset is the offset of the field in your see the OFFSET() macro
@ AV_OPT_TYPE_BOOL
Underlying C type is int.