FFmpeg噪声处理

FFmpeg 现在有3个原生filter来处理噪声背景:

  • afftdn:使用FFT对音频样本进行降噪

  • anlmdn:使用非局部均值算法减少音频样本中的宽带噪声

  • arnndn:使用递归神经网络减少语音中的噪音。可以在此处找到要加载的模型文件示例。

highpass & lowpass

将低通滤波器与高通滤波器结合使用。对于可用音频,我注意到过滤掉200hz及以下频率和过滤掉3000hz及以上频率,可以很好地保持可用的语音音频。

ffmpeg -i <input_file> -af "highpass=f=200, lowpass=f=3000" <output_file># 一个不错的组合过滤器:ffmpeg -i <input_file> -af lowpass=3000,highpass=200,afftdn=nf=-25 <output_file>

anlmdn

$ ffmpeg -h filter=anlmdnFilter anlmdnReduce broadband noise from stream using Non-Local Means.slice threading supportedInputs:#0: default (audio)Outputs:#0: default (audio)
anlmdn AVOptions:strength          <float>      ..F.A....T. set denoising strength (from 1e-05 to 10) (default 1e-05)s                 <float>      ..F.A....T. set denoising strength (from 1e-05 to 10) (default 1e-05)patch             <duration>   ..F.A....T. set patch duration (default 0.002)p                 <duration>   ..F.A....T. set patch duration (default 0.002)research          <duration>   ..F.A....T. set research duration (default 0.006)r                 <duration>   ..F.A....T. set research duration (default 0.006)output            <int>        ..F.A....T. set output mode (from 0 to 2) (default o)i               0            ..F.A....T. inputo               1            ..F.A....T. outputn               2            ..F.A....T. noiseo                 <int>        ..F.A....T. set output mode (from 0 to 2) (default o)i               0            ..F.A....T. inputo               1            ..F.A....T. outputn               2            ..F.A....T. noisesmooth            <float>      ..F.A....T. set smooth factor (from 1 to 15) (default 11)m                 <float>      ..F.A....T. set smooth factor (from 1 to 15) (default 11)

例子:

# 低通和高通滤波器与 afftdn 的组合令人印象深刻,我已经使用此配置成功地从白噪声中清除了旧的 vhs 视频:-af "highpass=200,lowpass=3000,afftdn"

anlmdn

$ ffmpeg -h filter=anlmdnFilter afftdnDenoise audio samples using FFT.slice threading supportedInputs:#0: default (audio)Outputs:#0: default (audio)
afftdn AVOptions:nr                <float>      ..F.A....T. set the noise reduction (from 0.01 to 97) (default 12)nf                <float>      ..F.A....T. set the noise floor (from -80 to -20) (default -50)nt                <int>        ..F.A...... set the noise type (from 0 to 3) (default w)w               0            ..F.A...... white noisev               1            ..F.A...... vinyl noises               2            ..F.A...... shellac noisec               3            ..F.A...... custom noisebn                <string>     ..F.A...... set the custom bands noiserf                <float>      ..F.A....T. set the residual floor (from -80 to -20) (default -38)tn                <boolean>    ..F.A....T. track noise (default false)tr                <boolean>    ..F.A....T. track residual (default false)om                <int>        ..F.A....T. set output mode (from 0 to 2) (default o)i               0            ..F.A....T. inputo               1            ..F.A....T. outputn               2            ..F.A....T. noise

arnndn

ffmpeg -h filter=arnndnFilter arnndnReduce noise from speech using Recurrent Neural Networks.slice threading supportedInputs:#0: default (audio)Outputs:#0: default (audio)
arnndn AVOptions:model             <string>     ..F.A....T. set model namem                 <string>     ..F.A....T. set model namemix               <float>      ..F.A....T. set output vs input mix (from -1 to 1) (default 1)

例子:

# -af arnndn=m=cb.rnnnffmpeg -i <input_file> -af arnndn=m=cb.rnnn <output_file>

不需要频带滤波器。此处提供经过训练的模型 ( files.rnnn) (您需要下载并使用其中一个文件)。发现cb( conjoined-burgers) 模型最令人印象深刻和最通用的模型,并且非常有效。

audacity去噪

Audacity 是一款用于混音、剪接及音频文件编辑的应用。可以支持各种格式—包括 MP3 和 OGG。我们可以从软件中心安装 Audacity。

当然了,你也可通过命令行来安装:

sudo dnf install audacity

安装启动 Audacity 后,在菜单栏选择 文件(File)> 导入(Import) 导入你的音频文件。

接着,从背景噪音中取一段样本以备过滤。在导入的音轨上,选择一段只包含了背景噪音的区域。然后从菜单栏选 效果(Effect)> 降噪(Noise Reduction),然后点击 取得噪音特征(Get Noise Profile)。

接着选择音轨中你想要进行降噪的区域,可以用鼠标选择部分区域或者 Ctrl + A 全选。从菜单中再次选择 效果(Effect)> 降噪(Noise Reduction),在对话框中点击确定就可以完成噪音过滤。


参考

http://ffmpeg.org/ffmpeg-filters.html#afftdn

http://ffmpeg.org/ffmpeg-filters.html#anlmdn

http://ffmpeg.org/ffmpeg-filters.html#arnndn

https://www.vacing.com/ffmpeg_audio_filters/index.html

https://zh.fedoracommunity.org/2018/05/22/Audacity-quick-tip-quickly-remove-background-noise.html

FFmpeg和Audacity噪声处理相关推荐

  1. 氢气露点和湿度换算_如何创建氢气鼓组以获取乐趣和收益

    氢气露点和湿度换算 鼓机很有趣. 他们可以做出令人赞叹的节奏,而且它们往往具有简单的界面. 我使用的第一台鼓机是Alesis HR-16 . 它具有49个16位补丁程序和一个内置音序器. 那不是可机架 ...

  2. 我整理的ubuntu开源软件列表,适合于极客

    2017年第一次安装Ubuntu系统,我喜欢用上了开源软件,很少切换到windows系统下.后来发誓,如无必要,绝不使用闭源软件. 每次重装系统都要花费很多时间去找和安装软件,我想自动安装 记得在系统 ...

  3. FFmpeg入门详解之9:Audacity音频工具

    Audacity简介 Audacity是一款支持Linux.MacOS以及Windows等多种平台的快速多轨音频编辑.录制工具,支持WAV, AIFF, Ogg和MP3格式音乐文件,提供编辑.混音功能 ...

  4. ffmpeg 静默_java 处理声音框架-02-ffmpeg 使用入门教程

    ffmpeg windows 安装 下载 就是一个静态的包,直接解压即可. windows 路径: C:\Users\binbin.hou\Downloads\ffmpeg-20200403-5252 ...

  5. 【FFmpeg】FFmpeg编解码H264产生马赛克、伪影的解决方法

    1.问题描述 使用FFmpeg编码H264,再解码显示时,产生马赛克:有时是在画面静止时,静止时间越长,马赛克.伪影越多:有时是在画面切入切出时:有时是在网络带宽不够时 2.原因分析 2.1 丢帧 网 ...

  6. android生成预处理文件,FFmpeg:Android利用Filter进行音频数据预处理

    前言 这篇文件简单介绍下移动端Android系统下利用FFmpeg的Filter进行音频数据预处理的方法. 按照惯例先上一份源码 AndroidFFmpegFilter. 项目实现了: FFmepg编 ...

  7. 基于 FFmpeg 的播放器 demo

    这里的播放器演示程序用于播放一个本地文件,因而不需要关心播放网络上的媒体数据时的网络传输问题. 对于播放本地媒体文件的播放器来说,所要完成的工作主要包括:解封装 -> 音频解码/视频解码 -&g ...

  8. FFMPEG进阶系列01-ffplay命令详解

    概述 ffplay是一个基于FFMPEG库和SDL库开发的多媒体播放器.它的主要目的是是用来测试FFMPEG的各种API,比如codec/format/filter等等库. 掌握ffplay的设计逻辑 ...

  9. 【技术解决方案】优化FFmpeg编码器参数设置

    FFmpeg x264编码参数对照表 x264 ffmpeg 说明 命令行 字段 命令行 字段 qp qp_constant cqp cqp 固定量化因子.取值范围0到51. 经常取值在20-40之间 ...

最新文章

  1. ASP.NET Web Forms - 网站导航(Sitemap 文件)
  2. IE9(测试版)浏览器实用快捷键使用方法
  3. 浮点数正则表达式_正则表达式的邮箱,手机号,身份证号,密码
  4. java 分层概念 要点
  5. 在output 子句和 scope_identity() 混合使用的时候的注意事项
  6. Android中列表动态删除item,如何删除Android ExpandableListView中某个group item的child item?...
  7. CV学习笔记-图像滤波器
  8. Machine Learning - XI. Machine Learning System Design机器学习系统设计(Week 6)系统评估标准
  9. win10显示从服务器返回了一个文件,win10在运行软件时提示“从服务器返回一个参照”怎么办...
  10. ppt里面如何插入表格
  11. 年度回顾:短视频大逃杀
  12. 利用OpenCV实现图像矫正
  13. 快速web开发框架——learun framework
  14. c语言字节类型(bytes),Python bytes类型及用法
  15. 【MDX】一文带你搞懂SQL Server Analysis Services 的安装和使用
  16. bio linux 创建_Linux IO请求处理流程-bio和request
  17. Gretna网络分析之先验知识
  18. ROS2 学习古月居ros21讲学习笔记
  19. C++老鸟日记027 重载、覆盖、隐藏
  20. Vue3+TypeScript实现网易云音乐WebApp(解析歌词,并实现自行匹配滚动)

热门文章

  1. 高通骁龙870有哪些哪些值得购买 高通骁龙870有什么手机
  2. input标签属性简述
  3. CentOS7 下源码安装MPlayer播放器
  4. 【Android】线性布局(LinearLayout)最全解析
  5. ASP.NET----模块和处理程序
  6. 脸都绿了,憋到内伤啊!
  7. 微积分——巧解不定积分和定积分问题
  8. Activiti整合Spring和Spring Boot
  9. 量化交易参考书目-董可人
  10. BS模式开发之Web编程