21 #ifndef AVRESAMPLE_INTERNAL_H 22 #define AVRESAMPLE_INTERNAL_H int in_channels
number of input channels
AudioConvert * ac_in
input sample format conversion context
int input_map[AVRESAMPLE_MAX_CHANNELS]
dest index of each input channel
AudioData * out_buffer
buffer for converted output
Audio buffer used for intermediate storage between conversion phases.
enum attribute_deprecated AVResampleFilterType
int do_zero
zeroing needed
double * mix_matrix
mix matrix only used if avresample_set_matrix() is called before avresample_open() ...
uint64_t out_channel_layout
output channel layout
enum attribute_deprecated AVMixCoeffType
double cutoff
resampling cutoff frequency.
int channel_zero[AVRESAMPLE_MAX_CHANNELS]
dest index to zero
double surround_mix_level
surround mix level
AudioData * in_buffer
buffer for converted input
void ff_audio_resample_init_aarch64(ResampleContext *c, enum AVSampleFormat sample_fmt)
int out_channels
number of output channels
Undefined Behavior In the C some operations are like signed integer dereferencing freed accessing outside allocated Undefined Behavior must not occur in a C it is not safe even if the output of undefined operations is unused The unsafety may seem nit picking but Optimizing compilers have in fact optimized code on the assumption that no undefined Behavior occurs Optimizing code based on wrong assumptions can and has in some cases lead to effects beyond the output of computations The signed integer overflow problem in speed critical code Code which is highly optimized and works with signed integers sometimes has the problem that often the output of the computation does not c
int normalize_mix_level
enable mix level normalization
AudioMix * am
channel mixing context
void ff_audio_resample_init_arm(ResampleContext *c, enum AVSampleFormat sample_fmt)
double center_mix_level
center mix level
int out_convert_needed
output sample format conversion is needed
AudioConvert * ac_out
output sample format conversion context
Context for an Audio FIFO Buffer.
int channel_copy[AVRESAMPLE_MAX_CHANNELS]
dest index to copy from
int upmix_needed
upmixing is needed
ResampleContext * resample
resampling context
int phase_shift
log2 of the number of entries in the resampling polyphase filterbank
int linear_interp
if 1 then the resampling FIR filter will be linearly interpolated
int kaiser_beta
beta value for Kaiser window (only applicable if filter_type == AV_FILTER_TYPE_KAISER) ...
ChannelMapInfo ch_map_info
uint64_t in_channel_layout
input channel layout
int in_sample_rate
input sample rate
const AVClass * av_class
AVClass for logging and AVOptions.
AVSampleFormat
Audio sample formats.
AVAudioFifo * out_fifo
FIFO for output samples.
#define AVRESAMPLE_MAX_CHANNELS
enum attribute_deprecated AVResampleDitherMethod
int force_resampling
force resampling
int in_copy_needed
input data copy is needed
Describe the class of an AVClass context structure.
int filter_size
length of each FIR filter in the resampling filterbank relative to the cutoff frequency ...
int in_convert_needed
input sample format conversion is needed
int channel_map[AVRESAMPLE_MAX_CHANNELS]
source index of each output channel, -1 if not remapped
int resample_channels
number of channels used for resampling
AudioData * resample_out_buffer
buffer for output from resampler
int resample_needed
resampling is needed
int out_sample_rate
output sample rate
int downmix_needed
downmixing is needed
double lfe_mix_level
lfe mix level
int mixing_needed
either upmixing or downmixing is needed