【问题标题】:Frequency response of ffmpeg filtersffmpeg 滤波器的频率响应
【发布时间】:2020-06-28 13:07:12
【问题描述】:

我正在使用 ffmpeg 对信号进行解码和编码。它工作得很好,我添加了过滤器。例如,我正在使用这样的命令:

ffmpeg -re -i /home/dr_click/live.wav -af "anequalizer=c0 f=200 w=100 g=-5 t=0|c1 f=200 w=100 g=-5 t=0, anequalizer=c0 f=1000 w=100 g=3 t=0|c1 f=1000 w=100 g=3 t=0" -acodec pcm_s16be -ar 44100 -ac 2 -f rtp rtp://127.0.0.1:1234

我正在流式传输我的文件,添加 2 个以 200 Hz 和 1000 Hz 作为中心频率和 100 Hz 宽度的滤波器,它可以工作。

有了这样的滤波器,我知道我的增益在 200Hz 时将是 -5db。但是 250 Hz 频率的增益是多少?还是-5db? -4.5分贝? -3分贝?以及 350Hz 或任何其他频率的相同问题。

我正在寻找但没有找到的是获得这种滤波器的频率响应的方法,带宽从 20Hz 到 20kHz。换句话说,我想知道的任何频率是:增益 = f(频率)与给定的 ffmpeg 滤波器

感谢您的帮助,

Dr_Click

【问题讨论】:

    标签: audio ffmpeg filtering frequency-analysis


    【解决方案1】:

    我正在研究一个非常相似的问题。我的是用 ffmpeg 滤波器替换系统范围的 15 波段图形 LADSPA 均衡器(mbeq_1197,由 JACK Rack 控制)。由于 AFAIK 无法在运行时调整 ffmpeg 滤波器参数,因此我必须依赖我已经生成的 JACK EQ 设置,并且需要将它们传输到 ffmpeg EQ。唉,我找不到任何两个“可比”的均衡器:ffmpeg 只提供一个 18 波段的“超级均衡器”。我之前的 EQ 有 15 个频段,所以我决定做一些插值并比较新旧 EQ 的频率响应。

    现在回答您的问题:我不是音频工程师,我相信还有更专业的方法。但我现在发现的是我目前的工作流程:

    1. 产生一些白噪声。在 Linux 中,您可以例如使用 sox oder Audacity。在 Audacity 中,Generate -> Built-in -> Noise... => White noise(1 分钟就足够了)
    2. 将文件另存为 WAV。
    3. 将此过滤器应用于此 WAV:ffmpeg -i whitenoise.wav -af "<your filter>" whitenoise_filtered.wav
    4. 将过滤后的文件加载到 Audacity 并执行 Analyze -> Plot Spectrum...

      由于白噪声并不完美,输出会有些分散,但这应该可以忽略不计。

    祝你好运!

    小老鼠

    【讨论】:

      猜你喜欢
      • 2016-02-08
      • 2011-03-11
      • 1970-01-01
      • 2017-03-21
      • 2021-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-19
      相关资源
      最近更新 更多