FFmpeg进阶: 音频滤镜大全

这篇具有很好参考价值的文章主要介绍了FFmpeg进阶: 音频滤镜大全。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在做音频处理模块的时候,为了对声音进行优化处理,我很多时候会使用各种算法对音频进行变换,效果包括变音变调、声音降噪等等。其实FFmpeg库里的滤镜模块包含了很多有用的音频滤镜算法,这对于提升开发效率避免重复造轮子是很有帮助的。这里翻译了一下FFmpeg官方文档的所有音频滤镜的介绍,希望对大家有帮助。由于欠缺音频专业知识,好多概念不理解,翻译过程中会有一些不完善的地方,欢迎大家提修改意见。文章来源地址https://www.toymoban.com/news/detail-433231.html

音频滤镜大全

滤镜名称 滤镜介绍
acompressor 压缩器,主要用于减小信号的动态范围。
尤其是现代音乐,大多数通过高压缩比,提高整体响度。
acontrast 简单的动态拉伸和压缩滤镜
acopy 将输入音频拷贝到输出中
acrossfade 音频流之间的淡入淡出衔接滤镜
acrossover 将音频流拆分为多个频段
acrusher 降低音频位分辨率
acue 延迟音频滤镜直到给定的时间戳
adeclick 从输入音频中去除脉冲噪声
adeclip 从输入音频中删除剪辑的样本
adecorrelate 对输入音频流中移除相关设置
adenorm 通过添加极低级别的噪声来解决音频异常
aderivative
aintegral
计算音频流的导数/积分
adynamicequalizer 动态均衡滤镜
adynamicsmooth 动态平滑滤镜
adelay 延迟一个或者多个音频通道
aecho 回声效果滤镜
aeval 根据指定的表达式修改一个音频信号
aexciter 激励器,用于产生原始信号中不存在的高音
afade 音频的淡入淡出效果
afftdn 使用fft进行降噪处理
afftfilt 将任意表达式应用于频域中的样本
afir 任意有限脉冲响应过滤器
aformat 让输入音频约束成为指定格式。该框架会采用最合适的格式转换
afreqshift 将频移应用于输入音频样本
afwtdn 使用小波减少来自输入样本的宽带噪声
agate 主要用于减少信号的较低部分。这种信号处理减少了有用信号之间的干扰噪声
aiir 任意无限脉冲响应过滤器
alimiter 限制器防止输入信号上升超过所需阈值。
该限制器使用前瞻技术来防止信号失真。
aloop 循环音频样本
amerge 合并两个或两个以上的音频流到一个多通道流
amix 混合多个音频输入到单路音频输出(叠加混合音频,不同于前面的amerge)
amultiply 将第一个音频流与第二个音频流相乘并将结果存储在输出音频流中
anequalizer 每个通道的高阶参数多频带均衡器
anlmdn 使用非局部均值算法减少音频样本中的宽带噪声
anlmf, anlms 使用第二个音频流对第一个音频流使用归一化最小均值算法
anull 输入音频源完整不变的到输出
apad 在一个音频流的末尾添加无声
aphaser 添加一个移相到输入音频.移相器滤镜创建一系列的波峰和波谷的频谱。
波峰和波谷的位置调制,这样他们会随着时间变化,建立一个全面的效果。
aphaseshift 对输入音频样本进行相移变化
apsyclip 剪辑器滤镜效果
apulsator 可以产生有趣的立体声效果
aresample 对输入音频按指定的参数重采样
如果没有特殊设定,将自动在输入和输出设置间转换。
asetnsamples 设置每个输出音频帧中样本点个数
arnndn 使用循环神经网络减少语音中的噪音
asdr 测量音频信号失真比
asetnsamples 设置每个输出音频帧的样本数
asetrate 重新设置采样率而不改变PCM数据。这将导致速度和音调的变化
ashowinfo 对每个输入流音频帧显示其所含各种信息
asoftclip 显示包含每个输入音频帧的各种信息的行,输入音频未修改
aspectralstats 显示有关音频通道的频域统计信息。
统计数据被计算并存储为每个音频通道和每个音频帧的元数据
asr 自动语音识别
astats 显示音频通道的时域统计信息
asubboost 提升低音炮频率
asubcut 削减低音炮频率
asupercut 削减超频
asuperpass 应用高阶巴特沃斯带通滤波器
asuperstop 应用高阶巴特沃斯带阻滤波器
atempo 调整音频速度
atilt 将频谱倾斜滤波器应用于音频流
axcorrelate 计算两个输入音频流之间的归一化窗口互相关
astreamsync 将两个音频流控发送到缓冲区
asyncts 通过压缩/拉伸和/改变采样点/填补静音来让音频数据和时间戳同步。
atempo 调整音频节奏(变奏)
atrim 将连续输入中的一部分作为输出
bass
lowshelf
使用双刀搁置滤波器增加或减少低音(低)音频的频率响应,
类似于一个标准的高保真的音控。这也被称为搁置平衡(EQ)。
bs2b Bauer(鲍尔)立体声双声道的转换,耳机聆听的时候产生立体声效果
channelmap 重新映射输入通道
channelsplit 把输入音频流的每个通道分开作为多个输出流
chorus 给声音添加合唱效果
compand 音频动态压缩和扩展
compensationdelay 补偿延迟线是一种基于度量的延迟
用于补偿麦克风或扬声器的不同位置
crossfeed 应用耳机交叉馈电过滤器
crystalizer 音频噪声锐化的简单算法
deesser 对音频样本应用去齿音
dialoguenhance 增强立体声音频中的对话信息
dcshift 直流转换过滤器
drmeter 测量音频动态范围
dynaudnorm 动态音频归一化器
earwax 让声音更容易在耳机听
equalizer 应用一个两极平衡(EQ)峰值滤镜。
通过这个滤镜,信号电平值在选定的频率可以增强或者衰减
(不像bandpass和bandreject滤镜),而其它频率不变。
extrastereo 线性增加左右声道之间的差异,从而为播放添加某种“现场”效果
firequalizer 使用任意频率响应应用 FIR 均衡
flanger 为音频增加翻边效果
haas 将 Haas 效果应用于音频
hdcd 解码高清兼容数字 (HDCD) 数据。
嵌入HDCD代码的16位PCM流扩展为20位PCM流
headphone 应用与头部相关的传递函数 (HRTF)
在用户周围创建虚拟扬声器,以便通过耳机进行双耳聆听
highpass 指定频率3dB的高通滤波器。这个滤波器可以是单极或者双极(默认),
滤波器每极有6dB倍频(每极10倍频是20dB)
join 把多个输入流连接成一个多通道流
ladspa 加载一个LADSPA插件
loudnorm EBU R128 响度归一化。包括动态和线性归一化模式。
支持单通道(直播、文件)和双通道(文件)模式。
该算法可以针对 IL、LRA 和最大真实峰值
lowpass 应用3dB频点倍带宽的低通滤波器。它可以是单极或者双极的(默认)。
滤镜每个8度有6dB的衰减(20dB 则是10倍)
lv2 加载lv2插件
mcompand 压缩或扩展音频的动态范围
pan 按指定的增益关系混合。
滤镜接受通道布局和一组通道定义
这个滤镜也可以有效的重新映射通道音频流
replaygain ReplayGain扫描仪滤镜。
这个滤镜以一个音频流作为输入和输出也不改变。
在过结束后显示 track_gain 和 track_peak
resample 转换音频采样格式,采样率和通道布局,它一般不直接使用。
rubberband 使用librubberband 应用时间拉伸和音高变换
silencedetect 检测一个音频流中的静音
silenceremove 从音频的开始、中间或者结束删除静默
speechnorm 语音规范器
stereotools 用于将 M/S 立体声录音转换为L/R信号
同时控制参数或传播主轨道的立体声图像
stereowiden 通过抑制两个通道共有的信号并通过延迟左到右的信号
来增强立体声效果,从而扩大立体声效果
superequalizer 应用 18 段均衡器
surround 音频环绕滤镜
tiltshelf 使用具有类似于标准高保真音响控制响应的两极搁架滤波器
来提高或降低音频的较低频率并降低或提高音频的较高频率
treble,highshelf 对频点的3倍(上下)利用双刀搁置(two-pole shelving)滤镜
增加或者减少频率响应,类似于高保真的音控,也被称为搁置平衡(EQ)
tremolo 正弦调幅
vibrato 正弦相位调制
virtualbass 应用音频虚拟低音过滤器
volume 调整输入音量
volumedetect 检测输入音频音量

到了这里,关于FFmpeg进阶: 音频滤镜大全的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FFmpeg常见命令行(五):FFmpeg滤镜使用

    在Android音视频开发中,网上知识点过于零碎,自学起来难度非常大,不过音视频大牛Jhuster提出了《Android 音视频从入门到提高 - 任务列表》,结合我自己的工作学习经历,我准备写一个音视频系列blog。本文是音视频系列blog的其中一个, 对应的要学习的内容是:如何使用FF

    2024年02月13日
    浏览(25)
  • 6 FFmpeg从入门到精通-FFmpeg滤镜使用

    1 FFmpeg从入门到精通-FFmpeg简介 2 FFmpeg从入门到精通-FFmpeg工具使用基础 3 FFmpeg从入门到精通-FFmpeg转封装 4 FFmpeg从入门到精通-FFmpeg转码 5 FFmpeg从入门到精通-FFmpeg流媒体 6 FFmpeg从入门到精通-FFmpeg滤镜使用 7 FFmpeg从入门到精通-FFmpeg中Linux设备操作 8 FFmpeg从入门到精通-FFmpeg接口lib

    2024年02月09日
    浏览(25)
  • ffmpeg的滤镜

    FFmpeg 是一款开源的跨平台音视频处理工具,它提供了众多功能强大的滤镜用于视频/音频的加工处理。其中,滤镜(Filter)是 FFmpeg 中一个十分重要且常用的组件,它们可以实现对视频和音频的各种操作和变化,如转码、编解码、剪裁、裁剪、缩放、旋转、倒置、加水印、去除噪

    2023年04月18日
    浏览(27)
  • FFmpeg- 常用的滤镜命令

    下面来熟悉一下常用的对视频操作的几个命令。这次需要完成的命令也包括在其中。 视频的画面大小的剪切(crop filter) 将输入的视频的帧,以左上角为坐标的原点,剪切成x,y坐标开始的指定大小。 语法: 简单的解释: x,y :是偏移量。 ow,oh :是输出的宽和高。 iw ih :还可以使用

    2023年04月16日
    浏览(35)
  • ffmpeg入门篇-滤镜的基本使用

    转发自白狼栈: 查看原文 滤镜 什么是滤镜?百度百科介绍说“滤镜主要是用来实现图像的各种特殊效果......”。 我们最早在ffmpeg是如何转码的一文中了解过滤镜,来回顾下当时的转码流程图。 从图中可以看到滤镜前后画的是虚线,表示可有可无,在术语中,滤镜指的是在

    2024年01月19日
    浏览(25)
  • 关于FFMPEG中的filter滤镜的简单介绍

    滤镜的作用主要是对原始的音视频数据进行处理以实现各种各样的效果。比如叠加水印,翻转缩放视频等。 下图表示的正常转码流程,滤镜在解码和编码中间,虚线表示可有可无。 使用命令查看ffmpeg支持的滤镜 ffmpeg -filters  查看某个滤镜的详细参数 ffmpeg -h filter=pad  上图显

    2024年02月14日
    浏览(28)
  • FFmpeg滤镜: 调整视频的亮度-对比度-饱和度

    亮度是指图片的明暗程度,对比度是指图片明暗的差异,饱和度则是指图片颜色的饱满程度。在计算机中每个图片上的像素点都由三个字节来进行表示,分别代表着像素的RGB数据。 图片上每个像素的每种颜色都可以有从0到255的变化,数值越高,颜色的亮度越大,因此当改变

    2024年02月13日
    浏览(43)
  • FFMPEG使用DrawText滤镜添加字幕,包含ndk编译freetype

            ffmpeg使用drawtext滤镜需要在编译的时候使能drawtext,要想成功使能必须要先集成编译freetype库,并通知到ffmpeg(交叉编译没有安装到系统库路径)。         也有看到有的文章说需要集成fribidi,笔者也交叉编译了,但是最终没有用到,可能是ffmpeg版本的原因。 freety

    2024年01月17日
    浏览(55)
  • 音视频开发:ffplay使用ffmpeg滤镜实现倍速播放

    曾经为实现倍速播放使用过ffmpeg,对音频使用atempo滤镜即可实现变速不变调。但是当时效果并不是特别好,和soundtouch相比处理后的音质有明显的区别。最近用新版本的ffmpeg滤镜重新实现了倍速播放,发现效果变好,已经达到可接受的程度,所以在此分享具体实现。 ffmpeg倍速

    2024年02月03日
    浏览(68)
  • Android-高级-UI-进阶之路(四)-Paint-渲染-滤镜-xfermode-使用

    class MyGradientView : View { private var mPaint: Paint? = null private var mBitMap: Bitmap? = null private var mWidth: Int = 0 private var mHeight: Int = 0 private val mColors = intArrayOf(Color.RED, Color.GREEN, Color.BLUE, Color.YELLOW) constructor(context: Context?) : super(context) { init() } constructor(context: Context?, attrs: AttributeSet?) : super(

    2024年04月16日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包