【问题标题】:Finding one sound file inside of another在另一个声音文件中查找一个声音文件
【发布时间】:2011-10-27 19:37:57
【问题描述】:

我有两个声音文件,一个只是大文件的摘录,应该几乎相同

我如何比较这两个声音文件,以找出较小的声音文件开始播放到较大的声音文件多远?

这最好是一个 linux 终端命令,用于 bash

【问题讨论】:

  • 文件被压缩了吗?音频是否以任何其他方式改变?较小的文件是如何制作的?
  • 不确定它是如何制作的,但它没有改变

标签: linux bash audio compare


【解决方案1】:

如果它们是 .WAV 文件并且一个是直接从另一个文件创建的,那么应该有一个字节对字节相同的部分,并且一个好的 diff 工具可以为您找到它。如果它们是使用来自相同来源的相同压缩器创建的 mp3,您可以解压缩它们并且同样的事情成立。

其他任何事情都会变得非常棘手。您可以尝试将两者都转换为相同的原始 WAV 格式,然后进行一些模糊匹配(例如将一个部分与另一个滑动部分并找到差异 RSS 最小的位置)。

或者您可以尝试在频域中执行此操作,方法是将文件分成小块,对它们进行 FFT,并寻找一系列匹配的主频率。

我不太相信两者都能很好地工作。我会先尝试时域方法。

【讨论】:

    猜你喜欢
    • 2014-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多