我正在使用以下基本 ffmpeg
推荐将 WAV 文件转换为 MP4。ffmpeg -i response.wav -s 1980x1080 -c:a aac -b:a 128k aNewVideo.mp4
这很棒,但是我想在 mp4 文件中包含黑色背景,并且就目前而言,这不会添加任何背景(见下文)。
我试图包含以下过滤器来添加这个背景,它可以工作,但是它会永远循环,当我手动停止它时,我会得到一个长达数小时的文件,前 20 秒左右是我的原始音频。ffmpeg -f lavfi -i color=c=black:s=1280x720:r=5 -i response.wav -s 1980x1080 -c:a aac -b:a 128k aNewVideo.mp4
如何在不遇到这个无限循环问题的情况下添加这个黑色背景?
最佳答案
您必须使用 -t
手动限制编码的持续时间选项。假设你的波形文件是 20 秒长,命令应该是这样的:
ffmpeg -f lavfi -i color=c=black:s=1280x720:r=5 -i response.wav -s 1980x1080 -c:a aac -b:a 128k -t 20.0 aNewVideo.mp4
要获得 wav 文件的确切长度,只需运行不带任何参数的 ffmpeg:ffmpeg -i response.wav
它将打印如下内容:Input #0, wav, from 'response.wav':
Metadata:
encoder : Lavf58.3.100
Duration: 00:00:20.00, bitrate: 704 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44000 Hz, mono, s16, 704 kb/s
At least one output file must be specified
关于audio - FFMPEG:永远使用过滤循环将 WAV 转换为 MP4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68189448/