Audio 有没有一种方法可以使用ffmpeg音频过滤器自动同步具有相似内容的2个流

Audio 有没有一种方法可以使用ffmpeg音频过滤器自动同步具有相似内容的2个流,audio,ffmpeg,Audio,Ffmpeg,我的情况是,我通过HDMI视频捕获高清内容,音频来自音板,音板通过阻抗降进入摄像机的麦克风输入。同一信号在线路级被分割到同一台捕获HDMI的计算机上的“线路输入”插孔。或者,我可以通过USB从音板上捕获音频,这可能是最好的方案,但也有同样的问题 关键是,线路输入或usb捕获的质量要比HDMI上的高出很多,因为线路输出->阻抗改变->麦克风输入路径产生的质量较差,在试图改变变焦(近距离)时,只需在相机上刷一下麦克风插孔,就可以在录制过程中产生噪音 所以我今天可以做到: 将好的声音和相机捕捉到的声

我的情况是,我通过HDMI视频捕获高清内容,音频来自音板,音板通过阻抗降进入摄像机的麦克风输入。同一信号在线路级被分割到同一台捕获HDMI的计算机上的“线路输入”插孔。或者,我可以通过USB从音板上捕获音频,这可能是最好的方案,但也有同样的问题

关键是,线路输入或usb捕获的质量要比HDMI上的高出很多,因为线路输出->阻抗改变->麦克风输入路径产生的质量较差,在试图改变变焦(近距离)时,只需在相机上刷一下麦克风插孔,就可以在录制过程中产生噪音

所以我今天可以做到:

  • 将好的声音和相机捕捉到的声音加载到 大胆和相当快地使用时间换档嘟嘟声,以完美配合 从HDMI捕获的好音频到有问题的音频 将好的音频剪切到视频的精确大小。那我可以用 ffmpeg或其他视频编辑软件,以取代 音频与更好的音频
但是,虽然有点快速和简单,但它总是伴随着一些人为错误和时间。如果可能的话,我想自动化这个过程,因为这个过程在一年中至少每周重复一次

如果这些想法中的任何一个有价值或者可以建议另一种方法,有人有什么建议吗

  • 我怀疑,但尚未确认开始时间的系统时间戳可能会记录在Audacity等设备捕获的音频或来自音板的USB捕获工具以及HDMI mpeg-2视频中。我尝试了几个audacity captured.wav文件上的ffprobe,但在结果中没有看到关于这种时间码的任何信息,但其他音频格式或其他探测工具可能会包含此信息。有人能告诉我这在任何特定的捕获工具或文件格式中是否常见吗

    • 如果是这样,我想通过提取这些信息,然后在ffmpeg中使用简单的adelay和atrim过滤器,在一次ffmpeg调用中直接从两个源可靠地同步,可以获得最佳结果。这对我来说都是理论上的——我还从来没有尝试过这两种过滤器中的任何一种——只是试图通过事先征求意见来克服盲区
  • 如果没有嵌入这样的时间戳,可能我可以使用文件系统时间戳来实现1a中表达的相同想法,但我怀疑两个捕获工具打开的文件可能具有不同的固有延迟。可能会发现这些延迟几乎是恒定的,并且该方法可以与内置的恒定预期延迟一起工作,但听起来比想法1更混乱、更不可靠。尽管如此,如果结果证明它相当可靠,我还是会接受它

  • 是否有ffmpeg或通用数字音频专家知道可以在实际数据上使用的特定滤波器,以寻找相似性,如将峰值振幅标准化或将两个值的放大标准化为某个RMS值,然后单步通过一个10秒的短音频片段,将一个时间流.01s反复向左移动,然后减去两个时间流,然后寻找最小值?听起来可能需要一段时间,但如果它能在不到一分钟内做到这一点,并且可靠,我怀疑它能工作。但我对音频流只有基本的了解,也许我的建议并不可信——但由于每个音频流都是从同一个源开始的,我认为应该有机会。我对如何走这条路一无所知,所以如果有人知道这样的魔法,或者可以给我一些过滤器和示例调用的名称,我可以探索我是否能让它工作

  • 有没有硬件级别的建议,可以将线路级别的输出降低到麦克风级别的输入,而不存在我在使用简单的串联阻抗下降模块时看到的问题,这样我就可以简单地依赖HDMI的音频了


  • 提前感谢您的指点和建议

    嗯,我想这个问题没那么有趣。但我确实通过硬件解决了我的解决方案。我得到的HDMI捕获卡实际上可以配置为从HDMI以外的来源接收音频,所以我不必尝试任何花哨的东西。