繁体   English   中英

FFmpeg 并排视频(宽屏)并逐个播放每个视频

[英]FFmpeg side by side video (widescreen) and play each video one by one

ffmpeg 的新手,我已经这样做了将我拥有的 3 个或更多视频合并为 1 个视频:

ffmpeg -i left.mp4 -i center.mp4 -i right.mp4 -filter_complex "[0:v:0][1:v:0][2:v:0]hstack=inputs=3" -c:v libx264 -tune film -crf 16 -b:a 256k output.mp4

现在我遇到的问题是视频有不同的播放时间(以秒为单位)我想要实现的是让它们并排(使用上面的代码)然后让 left.mp4 先播放(使用它自己的音频)完成后,center.mp4 播放(有自己的音频),完成后,right.mp4 也播放(有自己的音频),视频结束。

有人可以启发我如何实现这一目标吗? 谢谢!

添加tpadconcat过滤器。 每个输入长度为 10 秒的示例:

ffmpeg -i left.mp4 -i center.mp4 -i right.mp4 -filter_complex "[1:v]tpad=start_duration=10:start_mode=clone[v1];[2:v]tpad=start_duration=20:start_mode=clone[v2];[0:v:0][v1][v2]hstack=inputs=3,format=yuv420p[v];[0:a][1:a][2:a]concat=n=3:v=0:a=1[a]" -map "[v]" -map "[a]" -c:v libx264 -tune film -crf 16 -b:a 256k -movflags +faststart output.mp4

这将冻结每个视频的第一帧,直到它开始。 如果您想要纯色, start_mode=clone更改为start_mode=add

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM