|
FFmpeg
|
The libswresample context. More...
#include <swresample_internal.h>
Data Fields | ||
| const AVClass * | av_class | |
| AVClass used for AVOption and av_log() | ||
| int | log_level_offset | |
| logging level offset | ||
| void * | log_ctx | |
| parent logging context | ||
| enum AVSampleFormat | in_sample_fmt | |
| input sample format | ||
| enum AVSampleFormat | int_sample_fmt | |
| internal sample format (AV_SAMPLE_FMT_FLTP or AV_SAMPLE_FMT_S16P) | ||
| enum AVSampleFormat | out_sample_fmt | |
| output sample format | ||
| AVChannelLayout | used_ch_layout | |
| number of used input channels (mapped channel count if channel_map, otherwise in.ch_count) | ||
| AVChannelLayout | in_ch_layout | |
| input channel layout | ||
| AVChannelLayout | out_ch_layout | |
| output channel layout | ||
| int | in_sample_rate | |
| input sample rate | ||
| int | out_sample_rate | |
| output sample rate | ||
| int | flags | |
| miscellaneous flags such as SWR_FLAG_RESAMPLE | ||
| float | slev | |
| surround mixing level | ||
| float | clev | |
| center mixing level | ||
| float | lfe_mix_level | |
| LFE mixing level. | ||
| float | rematrix_volume | |
| rematrixing volume coefficient | ||
| float | rematrix_maxval | |
| maximum value for rematrixing output | ||
| int | matrix_encoding | |
| matrixed stereo encoding | ||
| const int * | channel_map | |
| channel index (or -1 if muted channel) map | ||
| int | engine | |
| AVChannelLayout | user_used_chlayout | |
| User set used channel layout. | ||
| AVChannelLayout | user_in_chlayout | |
| User set input channel layout. | ||
| AVChannelLayout | user_out_chlayout | |
| User set output channel layout. | ||
| enum AVSampleFormat | user_int_sample_fmt | |
| User set internal sample format. | ||
| int | user_dither_method | |
| User set dither method. | ||
| struct DitherContext | dither | |
| int | filter_size | |
| length of each FIR filter in the resampling filterbank relative to the cutoff frequency | ||
| 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 | exact_rational | |
| if 1 then enable non power of 2 phase_count | ||
| double | cutoff | |
| resampling cutoff frequency (swr: 6dB point; soxr: 0dB point). | ||
| int | filter_type | |
| swr resampling filter type | ||
| double | kaiser_beta | |
| swr beta value for Kaiser window (only applicable if filter_type == AV_FILTER_TYPE_KAISER) | ||
| double | precision | |
| soxr resampling precision (in bits) | ||
| int | cheby | |
| soxr: if 1 then passband rolloff will be none (Chebyshev) & irrational ratio approximation precision will be higher | ||
| float | min_compensation | |
| swr minimum below which no compensation will happen | ||
| float | min_hard_compensation | |
| swr minimum below which no silence inject / sample drop will happen | ||
| float | soft_compensation_duration | |
| swr duration over which soft compensation is applied | ||
| float | max_soft_compensation | |
| swr maximum soft compensation in seconds over soft_compensation_duration | ||
| float | async | |
| swr simple 1 parameter async, similar to ffmpegs -async | ||
| int64_t | firstpts_in_samples | |
| swr first pts in samples | ||
| int | resample_first | |
| 1 if resampling must come first, 0 if rematrixing | ||
| int | rematrix | |
| flag to indicate if rematrixing is needed (basically if input and output layouts mismatch) | ||
| int | rematrix_custom | |
| flag to indicate that a custom matrix has been defined | ||
| AudioData | in | |
| input audio data | ||
| AudioData | postin | |
| post-input audio data: used for rematrix/resample | ||
| AudioData | midbuf | |
| intermediate audio data (postin/preout) | ||
| AudioData | preout | |
| pre-output audio data: used for rematrix/resample | ||
| AudioData | out | |
| converted output audio data | ||
| AudioData | in_buffer | |
| cached audio data (convert and resample purpose) | ||
| AudioData | silence | |
| temporary with silence | ||
| AudioData | drop_temp | |
| temporary used to discard output | ||
| int | in_buffer_index | |
| cached buffer position | ||
| int | in_buffer_count | |
| cached buffer length | ||
| int | resample_in_constraint | |
| 1 if the input end was reach before the output end, 0 otherwise | ||
| int | flushed | |
| 1 if data is to be flushed and no further input is expected | ||
| int64_t | outpts | |
| output PTS | ||
| int64_t | firstpts | |
| first PTS | ||
| int | drop_output | |
| number of output samples to drop | ||
| double | delayed_samples_fixup | |
| soxr 0.1.1: needed to fixup delayed_samples after flush has been called. | ||
| struct AudioConvert * | in_convert | |
| input conversion context | ||
| struct AudioConvert * | out_convert | |
| output conversion context | ||
| struct AudioConvert * | full_convert | |
| full conversion context (single conversion for input and output) | ||
| struct ResampleContext * | resample | |
| resampling context | ||
| struct Resampler const * | resampler | |
| resampler virtual function table | ||
| double | matrix [SWR_CH_MAX][SWR_CH_MAX] | |
| floating point rematrixing coefficients | ||
| union { | ||
| float matrix_flt [SWR_CH_MAX][SWR_CH_MAX] | ||
| single precision floating point rematrixing coefficients valid iff int_sample_fmt is AV_SAMPLE_FMT_FLTP More... | ||
| int32_t matrix32 [SWR_CH_MAX][SWR_CH_MAX] | ||
| 17.15 fixed point rematrixing coefficients valid iff int_sample_fmt is != AV_SAMPLE_FMT_FLTP, AV_SAMPLE_FMT_DBLP More... | ||
| }; | ||
| union { | ||
| int i | ||
| float f | ||
| double d | ||
| } | native_one | |
| uint8_t * | native_matrix | |
| union { | ||
| int16_t i16 [2] | ||
| float f | ||
| } | native_simd_one | |
| uint8_t * | native_simd_matrix | |
| uint8_t | matrix_ch [SWR_CH_MAX][SWR_CH_MAX+1] | |
| Lists of input channels per output channel that have non zero rematrixing coefficients. | ||
| 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 97 of file swresample_internal.h.
| const AVClass* SwrContext::av_class |
AVClass used for AVOption and av_log()
Definition at line 98 of file swresample_internal.h.
| int SwrContext::log_level_offset |
logging level offset
Definition at line 99 of file swresample_internal.h.
| void* SwrContext::log_ctx |
parent logging context
Definition at line 100 of file swresample_internal.h.
Referenced by swr_alloc_set_opts2().
| enum AVSampleFormat SwrContext::in_sample_fmt |
input sample format
Definition at line 101 of file swresample_internal.h.
Referenced by LLVMFuzzerTestOneInput(), main(), swr_alloc_set_opts2(), 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 102 of file swresample_internal.h.
| enum AVSampleFormat SwrContext::out_sample_fmt |
output sample format
Definition at line 103 of file swresample_internal.h.
Referenced by LLVMFuzzerTestOneInput(), main(), and swr_alloc_set_opts2().
| AVChannelLayout SwrContext::used_ch_layout |
number of used input channels (mapped channel count if channel_map, otherwise in.ch_count)
Definition at line 104 of file swresample_internal.h.
| AVChannelLayout SwrContext::in_ch_layout |
input channel layout
Definition at line 105 of file swresample_internal.h.
Referenced by LLVMFuzzerTestOneInput(), main(), swr_alloc_set_opts2(), and swr_init().
| AVChannelLayout SwrContext::out_ch_layout |
output channel layout
Definition at line 106 of file swresample_internal.h.
Referenced by LLVMFuzzerTestOneInput(), main(), and swr_alloc_set_opts2().
| int SwrContext::in_sample_rate |
input sample rate
Definition at line 107 of file swresample_internal.h.
Referenced by LLVMFuzzerTestOneInput(), main(), swr_alloc_set_opts2(), swr_init(), and swr_next_pts().
| int SwrContext::out_sample_rate |
output sample rate
Definition at line 108 of file swresample_internal.h.
Referenced by LLVMFuzzerTestOneInput(), main(), and swr_alloc_set_opts2().
| int SwrContext::flags |
miscellaneous flags such as SWR_FLAG_RESAMPLE
Definition at line 109 of file swresample_internal.h.
| float SwrContext::slev |
surround mixing level
Definition at line 110 of file swresample_internal.h.
| float SwrContext::clev |
center mixing level
Definition at line 111 of file swresample_internal.h.
| float SwrContext::lfe_mix_level |
LFE mixing level.
Definition at line 112 of file swresample_internal.h.
| float SwrContext::rematrix_volume |
rematrixing volume coefficient
Definition at line 113 of file swresample_internal.h.
| float SwrContext::rematrix_maxval |
maximum value for rematrixing output
Definition at line 114 of file swresample_internal.h.
| int SwrContext::matrix_encoding |
matrixed stereo encoding
Definition at line 115 of file swresample_internal.h.
Referenced by config_output().
| const int* SwrContext::channel_map |
channel index (or -1 if muted channel) map
Definition at line 116 of file swresample_internal.h.
| int SwrContext::engine |
Definition at line 117 of file swresample_internal.h.
| AVChannelLayout SwrContext::user_used_chlayout |
User set used channel layout.
Definition at line 119 of file swresample_internal.h.
| AVChannelLayout SwrContext::user_in_chlayout |
User set input channel layout.
Definition at line 120 of file swresample_internal.h.
Referenced by swr_init().
| AVChannelLayout SwrContext::user_out_chlayout |
User set output channel layout.
Definition at line 121 of file swresample_internal.h.
Referenced by swr_init().
| 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.
Referenced by buf_set(), copy(), resample(), swr_convert(), swr_convert_internal(), and swr_init().
| 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 valid iff int_sample_fmt is AV_SAMPLE_FMT_FLTP
Definition at line 173 of file swresample_internal.h.
| int32_t SwrContext::matrix32[SWR_CH_MAX][SWR_CH_MAX] |
17.15 fixed point rematrixing coefficients valid iff int_sample_fmt is != AV_SAMPLE_FMT_FLTP, AV_SAMPLE_FMT_DBLP
Definition at line 175 of file swresample_internal.h.
| union { ... } SwrContext |
| int SwrContext::i |
Definition at line 179 of file swresample_internal.h.
| float SwrContext::f |
Definition at line 180 of file swresample_internal.h.
| double SwrContext::d |
Definition at line 181 of file swresample_internal.h.
| union { ... } SwrContext::native_one |
| uint8_t* SwrContext::native_matrix |
Definition at line 183 of file swresample_internal.h.
| int16_t SwrContext::i16[2] |
Definition at line 185 of file swresample_internal.h.
| union { ... } SwrContext::native_simd_one |
| uint8_t* SwrContext::native_simd_matrix |
Definition at line 188 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 189 of file swresample_internal.h.
| mix_1_1_func_type* SwrContext::mix_1_1_f |
Definition at line 190 of file swresample_internal.h.
| mix_1_1_func_type* SwrContext::mix_1_1_simd |
Definition at line 191 of file swresample_internal.h.
| mix_2_1_func_type* SwrContext::mix_2_1_f |
Definition at line 193 of file swresample_internal.h.
| mix_2_1_func_type* SwrContext::mix_2_1_simd |
Definition at line 194 of file swresample_internal.h.
| mix_any_func_type* SwrContext::mix_any_f |
Definition at line 196 of file swresample_internal.h.