音频重采样器支持以下命名选项。
可以通过在FFmpeg
工具中指定-option
值,为aresample
过滤器指定option = value
,通过在SwrContext
选项中显式设置值或使用libavutil / opt.h``API
进行编程来设置选项。
ich,in_channel_count
设置输入通道的数量。默认值为0
。如果设置了相应的通道布局in_channel_layout
,则不必设置此值。
och,out_channel_count
设置输出通道的数量。默认值为0
。如果设置了相应的通道布局out_channel_layout
,则不必设置此值。
uch,used_channel_count
设置已使用输入通道的数量。默认值为0
。此选项仅用于特殊重映射。
isr,in_sample_rate
设置输入采样率。默认值为0
。
osr,out_sample_rate
设置输出采样率。默认值为0
。
isf,in_sample_fmt
指定输入样本格式。它默认设置为none
。
osf,out_sample_fmt
指定输出样本格式。它默认设置为none
。
tsf,internal_sample_fmt
设置内部样本格式。默认值为none
。未明确设置时,将自动选择此选项。
- icl,in_channel_layout
- ocl,out_channel_layout
设置输入/输出通道布局。
学习地址:音视频新手快速入门必备系列-FFmpeg+SDL播放器开发实现-学习视频教程-腾讯课堂
【文章福利】免费领取更多音视频学习资料包、大厂面试题、技术视频和学习路线图,资料包括(C/C++,Linux,FFmpeg webRTC rtmp hls rtsp ffplay srs 等等)有需要的可以点击1079654574加群领取哦~
有关所需语法,请参阅(ffmpeg-utils
)channel
布局语法。
clev,center_mix_level
设置中心混音水平。它是以deciBel
表示的值,并且必须在区间[-32,32]
中。
slev,surround_mix_level
设置环绕声混音水平。它是以deciBel
表示的值,并且必须在区间[-32,32]
中。
lfe_mix_level
将LFE
混音设置为非LFE级别。当有LFE
输入但没有LFE
输出时使用。它是以deciBel
表示的值,并且必须在区间[-32,32]
中。
rmvol,rematrix_volume
设置rematrix
卷。默认值为1.0
。
rematrix_maxval
设置重新矩阵的最大输出值。这可用于防止削波与防止音量减小。值1.0
可防止剪裁。
flags, swr_flags
设置转换器使用的标志。 默认值为0
。
它支持以下各个标志:
值 | 解释 |
---|---|
res | 强制重新采样,即使输入和输出采样率匹配,此标志也会强制使用重采样 |
dither_scale
设置抖动比例。 默认值为1
。
dither_method
设置抖动方法。 默认值为0
。
支持如下的值:
值 | 解释 |
---|---|
rectangular | 选择矩形抖动 |
triangular | 选择三角形抖动 |
triangular_hp | 选择高通三角形抖动 |
lipshitz | 选择Lipshitz 噪音塑造抖动 |
shibata | 选择Shibata 噪音整形抖动 |
low_shibata | 选择低Shibata 噪声整形抖动 |
high_shibata | 选择高Shibata 噪声整形抖动 |
f_weighted | 选择f 加权噪声整形抖动 |
modified_e_weighted | 选择修改的e 加权噪声整形抖动 |
improved_e_weighted | 选择改进的e 加权噪声整形抖动 |