FFmpeg
|
The libswresample context. More...
#include <swresample_internal.h>
Data Fields | |
const AVClass * | av_class |
AVClass used for AVOption and av_log() More... | |
int | log_level_offset |
logging level offset More... | |
void * | log_ctx |
parent logging context More... | |
enum AVSampleFormat | in_sample_fmt |
input sample format More... | |
enum AVSampleFormat | int_sample_fmt |
internal sample format (AV_SAMPLE_FMT_FLTP or AV_SAMPLE_FMT_S16P) More... | |
enum AVSampleFormat | out_sample_fmt |
output sample format More... | |
int64_t | in_ch_layout |
input channel layout More... | |
int64_t | out_ch_layout |
output channel layout More... | |
int | in_sample_rate |
input sample rate More... | |
int | out_sample_rate |
output sample rate More... | |
int | flags |
miscellaneous flags such as SWR_FLAG_RESAMPLE More... | |
float | slev |
surround mixing level More... | |
float | clev |
center mixing level More... | |
float | lfe_mix_level |
LFE mixing level. More... | |
float | rematrix_volume |
rematrixing volume coefficient More... | |
float | rematrix_maxval |
maximum value for rematrixing output More... | |
int | matrix_encoding |
matrixed stereo encoding More... | |
const int * | channel_map |
channel index (or -1 if muted channel) map More... | |
int | used_ch_count |
number of used input channels (mapped channel count if channel_map, otherwise in.ch_count) More... | |
int | engine |
int | user_in_ch_count |
User set input channel count. More... | |
int | user_out_ch_count |
User set output channel count. More... | |
int | user_used_ch_count |
User set used channel count. More... | |
int64_t | user_in_ch_layout |
User set input channel layout. More... | |
int64_t | user_out_ch_layout |
User set output channel layout. More... | |
enum AVSampleFormat | user_int_sample_fmt |
User set internal sample format. More... | |
int | user_dither_method |
User set dither method. More... | |
struct DitherContext | dither |
int | filter_size |
length of each FIR filter in the resampling filterbank relative to the cutoff frequency More... | |
int | phase_shift |
log2 of the number of entries in the resampling polyphase filterbank More... | |
int | linear_interp |
if 1 then the resampling FIR filter will be linearly interpolated More... | |
int | exact_rational |
if 1 then enable non power of 2 phase_count More... | |
double | cutoff |
resampling cutoff frequency (swr: 6dB point; soxr: 0dB point). More... | |
int | filter_type |
swr resampling filter type More... | |
double | kaiser_beta |
swr beta value for Kaiser window (only applicable if filter_type == AV_FILTER_TYPE_KAISER) More... | |
double | precision |
soxr resampling precision (in bits) More... | |
int | cheby |
soxr: if 1 then passband rolloff will be none (Chebyshev) & irrational ratio approximation precision will be higher More... | |
float | min_compensation |
swr minimum below which no compensation will happen More... | |
float | min_hard_compensation |
swr minimum below which no silence inject / sample drop will happen More... | |
float | soft_compensation_duration |
swr duration over which soft compensation is applied More... | |
float | max_soft_compensation |
swr maximum soft compensation in seconds over soft_compensation_duration More... | |
float | async |
swr simple 1 parameter async, similar to ffmpegs -async More... | |
int64_t | firstpts_in_samples |
swr first pts in samples More... | |
int | resample_first |
1 if resampling must come first, 0 if rematrixing More... | |
int | rematrix |
flag to indicate if rematrixing is needed (basically if input and output layouts mismatch) More... | |
int | rematrix_custom |
flag to indicate that a custom matrix has been defined More... | |
AudioData | in |
input audio data More... | |
AudioData | postin |
post-input audio data: used for rematrix/resample More... | |
AudioData | midbuf |
intermediate audio data (postin/preout) More... | |
AudioData | preout |
pre-output audio data: used for rematrix/resample More... | |
AudioData | out |
converted output audio data More... | |
AudioData | in_buffer |
cached audio data (convert and resample purpose) More... | |
AudioData | silence |
temporary with silence More... | |
AudioData | drop_temp |
temporary used to discard output More... | |
int | in_buffer_index |
cached buffer position More... | |
int | in_buffer_count |
cached buffer length More... | |
int | resample_in_constraint |
1 if the input end was reach before the output end, 0 otherwise More... | |
int | flushed |
1 if data is to be flushed and no further input is expected More... | |
int64_t | outpts |
output PTS More... | |
int64_t | firstpts |
first PTS More... | |
int | drop_output |
number of output samples to drop More... | |
double | delayed_samples_fixup |
soxr 0.1.1: needed to fixup delayed_samples after flush has been called. More... | |
struct AudioConvert * | in_convert |
input conversion context More... | |
struct AudioConvert * | out_convert |
output conversion context More... | |
struct AudioConvert * | full_convert |
full conversion context (single conversion for input and output) More... | |
struct ResampleContext * | resample |
resampling context More... | |
struct Resampler const * | resampler |
resampler virtual function table More... | |
double | matrix [SWR_CH_MAX][SWR_CH_MAX] |
floating point rematrixing coefficients More... | |
float | matrix_flt [SWR_CH_MAX][SWR_CH_MAX] |
single precision floating point rematrixing coefficients More... | |
uint8_t * | native_matrix |
uint8_t * | native_one |
uint8_t * | native_simd_one |
uint8_t * | native_simd_matrix |
int32_t | matrix32 [SWR_CH_MAX][SWR_CH_MAX] |
17.15 fixed point rematrixing coefficients More... | |
uint8_t | matrix_ch [SWR_CH_MAX][SWR_CH_MAX+1] |
Lists of input channels per output channel that have non zero rematrixing coefficients. More... | |
mix_1_1_func_type * | mix_1_1_f |
mix_1_1_func_type * | mix_1_1_simd |
mix_2_1_func_type * | mix_2_1_f |
mix_2_1_func_type * | mix_2_1_simd |
mix_any_func_type * | mix_any_f |
The libswresample context.
Unlike libavcodec and libavformat, this structure is opaque. This means that if you would like to set options, you must use the AVOptions API and cannot directly set values to members of the structure.
Definition at line 95 of file swresample_internal.h.
const AVClass* SwrContext::av_class |
AVClass used for AVOption and av_log()
Definition at line 96 of file swresample_internal.h.
int SwrContext::log_level_offset |
logging level offset
Definition at line 97 of file swresample_internal.h.
void* SwrContext::log_ctx |
parent logging context
Definition at line 98 of file swresample_internal.h.
Referenced by swr_alloc_set_opts().
enum AVSampleFormat SwrContext::in_sample_fmt |
input sample format
Definition at line 99 of file swresample_internal.h.
Referenced by main(), swr_alloc_set_opts(), swr_convert_internal(), and swr_init().
enum AVSampleFormat SwrContext::int_sample_fmt |
internal sample format (AV_SAMPLE_FMT_FLTP or AV_SAMPLE_FMT_S16P)
Definition at line 100 of file swresample_internal.h.
enum AVSampleFormat SwrContext::out_sample_fmt |
output sample format
Definition at line 101 of file swresample_internal.h.
Referenced by main(), and swr_alloc_set_opts().
int64_t SwrContext::in_ch_layout |
input channel layout
Definition at line 102 of file swresample_internal.h.
Referenced by main(), swr_alloc_set_opts(), and swr_init().
int64_t SwrContext::out_ch_layout |
output channel layout
Definition at line 103 of file swresample_internal.h.
Referenced by main(), and swr_alloc_set_opts().
int SwrContext::in_sample_rate |
input sample rate
Definition at line 104 of file swresample_internal.h.
Referenced by main(), swr_alloc_set_opts(), swr_init(), and swr_next_pts().
int SwrContext::out_sample_rate |
output sample rate
Definition at line 105 of file swresample_internal.h.
Referenced by main(), and swr_alloc_set_opts().
int SwrContext::flags |
miscellaneous flags such as SWR_FLAG_RESAMPLE
Definition at line 106 of file swresample_internal.h.
float SwrContext::slev |
surround mixing level
Definition at line 107 of file swresample_internal.h.
float SwrContext::clev |
center mixing level
Definition at line 108 of file swresample_internal.h.
float SwrContext::lfe_mix_level |
LFE mixing level.
Definition at line 109 of file swresample_internal.h.
float SwrContext::rematrix_volume |
rematrixing volume coefficient
Definition at line 110 of file swresample_internal.h.
float SwrContext::rematrix_maxval |
maximum value for rematrixing output
Definition at line 111 of file swresample_internal.h.
int SwrContext::matrix_encoding |
matrixed stereo encoding
Definition at line 112 of file swresample_internal.h.
const int* SwrContext::channel_map |
channel index (or -1 if muted channel) map
Definition at line 113 of file swresample_internal.h.
Referenced by ff_opus_parse_extradata().
int SwrContext::used_ch_count |
number of used input channels (mapped channel count if channel_map, otherwise in.ch_count)
Definition at line 114 of file swresample_internal.h.
int SwrContext::engine |
Definition at line 115 of file swresample_internal.h.
int SwrContext::user_in_ch_count |
User set input channel count.
Definition at line 117 of file swresample_internal.h.
Referenced by swr_init().
int SwrContext::user_out_ch_count |
User set output channel count.
Definition at line 118 of file swresample_internal.h.
Referenced by swr_init().
int SwrContext::user_used_ch_count |
User set used channel count.
Definition at line 119 of file swresample_internal.h.
int64_t SwrContext::user_in_ch_layout |
User set input channel layout.
Definition at line 120 of file swresample_internal.h.
Referenced by swr_alloc_set_opts(), and swr_init().
int64_t SwrContext::user_out_ch_layout |
User set output channel layout.
Definition at line 121 of file swresample_internal.h.
enum AVSampleFormat SwrContext::user_int_sample_fmt |
User set internal sample format.
Definition at line 122 of file swresample_internal.h.
int SwrContext::user_dither_method |
User set dither method.
Definition at line 123 of file swresample_internal.h.
struct DitherContext SwrContext::dither |
Definition at line 125 of file swresample_internal.h.
int SwrContext::filter_size |
length of each FIR filter in the resampling filterbank relative to the cutoff frequency
Definition at line 127 of file swresample_internal.h.
int SwrContext::phase_shift |
log2 of the number of entries in the resampling polyphase filterbank
Definition at line 128 of file swresample_internal.h.
int SwrContext::linear_interp |
if 1 then the resampling FIR filter will be linearly interpolated
Definition at line 129 of file swresample_internal.h.
int SwrContext::exact_rational |
if 1 then enable non power of 2 phase_count
Definition at line 130 of file swresample_internal.h.
double SwrContext::cutoff |
resampling cutoff frequency (swr: 6dB point; soxr: 0dB point).
1.0 corresponds to half the output sample rate
Definition at line 131 of file swresample_internal.h.
int SwrContext::filter_type |
swr resampling filter type
Definition at line 132 of file swresample_internal.h.
double SwrContext::kaiser_beta |
swr beta value for Kaiser window (only applicable if filter_type == AV_FILTER_TYPE_KAISER)
Definition at line 133 of file swresample_internal.h.
double SwrContext::precision |
soxr resampling precision (in bits)
Definition at line 134 of file swresample_internal.h.
int SwrContext::cheby |
soxr: if 1 then passband rolloff will be none (Chebyshev) & irrational ratio approximation precision will be higher
Definition at line 135 of file swresample_internal.h.
float SwrContext::min_compensation |
swr minimum below which no compensation will happen
Definition at line 137 of file swresample_internal.h.
float SwrContext::min_hard_compensation |
swr minimum below which no silence inject / sample drop will happen
Definition at line 138 of file swresample_internal.h.
float SwrContext::soft_compensation_duration |
swr duration over which soft compensation is applied
Definition at line 139 of file swresample_internal.h.
float SwrContext::max_soft_compensation |
swr maximum soft compensation in seconds over soft_compensation_duration
Definition at line 140 of file swresample_internal.h.
Referenced by swr_next_pts().
float SwrContext::async |
swr simple 1 parameter async, similar to ffmpegs -async
Definition at line 141 of file swresample_internal.h.
int64_t SwrContext::firstpts_in_samples |
swr first pts in samples
Definition at line 142 of file swresample_internal.h.
int SwrContext::resample_first |
1 if resampling must come first, 0 if rematrixing
Definition at line 144 of file swresample_internal.h.
int SwrContext::rematrix |
flag to indicate if rematrixing is needed (basically if input and output layouts mismatch)
Definition at line 145 of file swresample_internal.h.
int SwrContext::rematrix_custom |
flag to indicate that a custom matrix has been defined
Definition at line 146 of file swresample_internal.h.
AudioData SwrContext::in |
input audio data
Definition at line 148 of file swresample_internal.h.
AudioData SwrContext::postin |
post-input audio data: used for rematrix/resample
Definition at line 149 of file swresample_internal.h.
Referenced by swr_convert_internal().
AudioData SwrContext::midbuf |
intermediate audio data (postin/preout)
Definition at line 150 of file swresample_internal.h.
Referenced by swr_convert_internal().
AudioData SwrContext::preout |
pre-output audio data: used for rematrix/resample
Definition at line 151 of file swresample_internal.h.
Referenced by swr_convert_internal().
AudioData SwrContext::out |
converted output audio data
Definition at line 152 of file swresample_internal.h.
AudioData SwrContext::in_buffer |
cached audio data (convert and resample purpose)
Definition at line 153 of file swresample_internal.h.
AudioData SwrContext::silence |
temporary with silence
Definition at line 154 of file swresample_internal.h.
AudioData SwrContext::drop_temp |
temporary used to discard output
Definition at line 155 of file swresample_internal.h.
int SwrContext::in_buffer_index |
cached buffer position
Definition at line 156 of file swresample_internal.h.
Referenced by resample(), and swr_convert().
int SwrContext::in_buffer_count |
cached buffer length
Definition at line 157 of file swresample_internal.h.
int SwrContext::resample_in_constraint |
1 if the input end was reach before the output end, 0 otherwise
Definition at line 158 of file swresample_internal.h.
int SwrContext::flushed |
1 if data is to be flushed and no further input is expected
Definition at line 159 of file swresample_internal.h.
int64_t SwrContext::outpts |
int64_t SwrContext::firstpts |
first PTS
Definition at line 161 of file swresample_internal.h.
int SwrContext::drop_output |
number of output samples to drop
Definition at line 162 of file swresample_internal.h.
double SwrContext::delayed_samples_fixup |
soxr 0.1.1: needed to fixup delayed_samples after flush has been called.
Definition at line 163 of file swresample_internal.h.
struct AudioConvert* SwrContext::in_convert |
input conversion context
Definition at line 165 of file swresample_internal.h.
Referenced by clear_context().
struct AudioConvert* SwrContext::out_convert |
output conversion context
Definition at line 166 of file swresample_internal.h.
struct AudioConvert* SwrContext::full_convert |
full conversion context (single conversion for input and output)
Definition at line 167 of file swresample_internal.h.
struct ResampleContext* SwrContext::resample |
resampling context
Definition at line 168 of file swresample_internal.h.
struct Resampler const* SwrContext::resampler |
resampler virtual function table
Definition at line 169 of file swresample_internal.h.
double SwrContext::matrix[SWR_CH_MAX][SWR_CH_MAX] |
floating point rematrixing coefficients
Definition at line 171 of file swresample_internal.h.
float SwrContext::matrix_flt[SWR_CH_MAX][SWR_CH_MAX] |
single precision floating point rematrixing coefficients
Definition at line 172 of file swresample_internal.h.
uint8_t* SwrContext::native_matrix |
Definition at line 173 of file swresample_internal.h.
uint8_t* SwrContext::native_one |
Definition at line 174 of file swresample_internal.h.
uint8_t* SwrContext::native_simd_one |
Definition at line 175 of file swresample_internal.h.
uint8_t* SwrContext::native_simd_matrix |
Definition at line 176 of file swresample_internal.h.
int32_t SwrContext::matrix32[SWR_CH_MAX][SWR_CH_MAX] |
17.15 fixed point rematrixing coefficients
Definition at line 177 of file swresample_internal.h.
uint8_t SwrContext::matrix_ch[SWR_CH_MAX][SWR_CH_MAX+1] |
Lists of input channels per output channel that have non zero rematrixing coefficients.
Definition at line 178 of file swresample_internal.h.
mix_1_1_func_type* SwrContext::mix_1_1_f |
Definition at line 179 of file swresample_internal.h.
mix_1_1_func_type* SwrContext::mix_1_1_simd |
Definition at line 180 of file swresample_internal.h.
mix_2_1_func_type* SwrContext::mix_2_1_f |
Definition at line 182 of file swresample_internal.h.
mix_2_1_func_type* SwrContext::mix_2_1_simd |
Definition at line 183 of file swresample_internal.h.
mix_any_func_type* SwrContext::mix_any_f |
Definition at line 185 of file swresample_internal.h.