7

我正在尝试实现我之前认为应该是一项简单任务的事情。是否有可以执行以下操作的 ffmpeg 命令:

将 audio.wav 文件转换为视频,将大约 100 张图片 (img%d.png) 添加到视频中,以便它们“自动”拉伸以填充视频的整个长度。

我不想手动设置帧速率,因为它要么让音频继续前进,要么落后。

我也不希望发生以下情况,当我使用“loop_input”时会发生这种情况:

创建了一个简短的图像视频,播放速度很快,然后在整个音频期间重复播放。

请让我知道命令。

我目前尝试了以下方法,但这些都没有给我想要的结果:

这个制作,但视频速度很快,音频不完整:

ffmpeg -i img%d.png -i audio.wav -acodec copy output.mpg

这个制作短视频,在整个音频持续时间内重复:

ffmpeg -loop_input -shortest -i img%d.png -i audio.wav -acodec copy output.mpg

这几乎可以工作,但是“-r 4”使视频变慢而音频继续。如果我使用“-r 5”,那么音频会变慢,而视频会继续播放:

ffmpeg -r 4 -i img%d.png -i audio.wav -acodec copy -r 30 output.mpg
4

1 回答 1

0

测量音轨的时间,然后使用 -t $audio_duration。

此 arg 与“-loop 1”一起将在与音频匹配的时间停止 mp4。

您也可以尝试 2 pass 技术,包括 -vcodec libx264,因为它可以很好地生成 mp4。

并考虑根据您的输入和记录率调整的以下内容:

    -b:v 200k -bt 50k
于 2013-02-04T14:16:48.460 回答