我正在使用 ffmpeg 将视频从 avi 转换为 mp4。
输出 mp4 中的音频/视频不同步。我研究并发现了以下链接,这表明这是 ffmpeg 较新版本的问题:
http://forum.videohelp.com/threads/320342-Audio-out-of-sync-problem-with-FFMPEG-encoding-MP4-%28h-264-AAC%29?p=1983858&viewfull=1#post1983858
我按照建议尝试了构建 18715,并且确实 a/v 是同步的。我以为我会使用这个构建,但后来我意识到输出文件的大小要大得多(大约三分之一)。知道为什么吗?带宽目前是我的应用程序中的一个主要问题。
我正在尝试解决最新版本的同步问题,或者弄清楚如何使用旧版本减少文件的大小。有什么建议么?
编辑:
我用于转换的命令:
ffmpeg -i test.avi -vb 100k -ab 48k -r 20 test.mp4
这是一个非常低的分辨率和非常静态的视频,并且低比特率是足够的(并且在不使用 mp4 时不会导致任何问题)。
最佳答案
尝试添加 -async 1
听从你的命令...
来自手册:-async samples_per_second
:
音频同步方法。 “拉伸(stretch)/挤压”音频流以匹配时间戳,该参数是每秒更改音频的最大样本数。 -async 1 是一种特殊情况,仅更正音频流的开头而没有任何后续更正。
关于ffmpeg - avi转mp4 : audio is out of sync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7766129/