我正在尝试使用 ffmpeg 将视频文件中的视频轨道替换为静止图像。我尝试了一些从其他问题中得到的命令,例如 hereffmpeg -i x.png -i orig.mp4 final.mp4
ffmpeg -r 1/5 -i x.png -r 30 -i orig.mp4 final.mp4
但这些都不起作用。我不确定这些参数中的哪一个是必需的。 YouTube 应该接受输出作为有效视频 - 我能够简单地删除视频轨道,但显然他们不允许您上传没有视频轨道的视频。
最佳答案
您可以尝试像这样循环静止图像:
ffmpeg -loop 1 -i x.png -i orig.mp4 final.mp4
然后,您可以通过引入以下质量参数来调整编码过程:ffmpeg -loop 1 -i x.png -i orig.mp4 -crf 22 -preset slow final.mp4
他们被描述here .如果您的色彩空间被 YouTube 拒绝,您可以尝试添加:
-pix_fmt yuv420p
.解决方案:最终的解决方案是这样的:
-t 30
是 30 秒的示例持续时间。 -c:a copy
将直接复制原始音频而无需重新编码(更快)。 ffmpeg -loop 1 -i x.png -i orig.mp4 -map 0 -map 1:a -c:v libx264 -pix_fmt yuv420p -crf 22 -preset slow -c:a copy -shortest final.mp4
关于image - 如何用静止图像替换视频文件中的视频轨道?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66320468/