使用FFMPEG导出具有空白的音频

时间:2018-10-16 23:10:14

标签: audio ffmpeg

我有一个MKV文件,音频中有间隙。也就是说,MKV音频轨道时间戳中存在间隙。根据“ ffmpeg”,AC3音频长度为802秒,但是将音频导出到WAV时,结果文件长度为801'53秒。也就是说,“导出”的音频更短。

通过

对问题进行分类
ffmpeg -i INPUT.mkv -af ashowinfo -map 0:2 -y -frames:a XXXX -f alaw /dev/null

我可以确认长度差异与原始音频帧的时间戳间隙一致。有一些丢失的音频帧。我猜这些已经被玩家的沉默所取代。

我用来导出音频的命令是:

ffmpeg -i INPUT.mkv -map 0:1 -ac 2 OUTPUT.wav

我的问题是:如何指示FFMPEG保留原始音频中的间隙(零(静音)填充)? WAV文件的持续时间应与原始AC3音频相同。

鉴于我当前的工作流程,我宁愿不要将原始时间戳记保留在输出文件中,而是生成带有(微小)静默的WAV。如果没有其他选择,我可以考虑保留时间戳,但这在我的工作流程中可能会很痛苦。

建议?帮助吗?

非常感谢!

1 个答案:

答案 0 :(得分:1)

使用

ffmpeg -i INPUT.mkv -map 0:1 -af aresample=async=1 -ac 2 OUTPUT.wav

aresample过滤器将在间隔内插入无声样本。