我正在尝试使用 FFmpeg 从左右一对视频生成立体并排视频(全 3D SBS)。
如果两个源视频完全同步,我可以使用:
ffmpeg -i left.mp4 -i right.mp4 -filter_complex hstack stereo.mp4
不幸的是,摄像机不同步,我确定需要修剪左侧视频的前 30 帧或 1.0 秒,以将其与右侧视频对齐。
参考FFmpeg wiki上寻求,我可以使用快速输入搜索-ss 1 -i left.mp4
,或者使用精确输出搜索-i left.mp4 -ss 1
。我想要准确的搜索,但不幸的是它-i left.mp4 -ss 1 -i right.mp4
并没有按照我希望的方式工作。
如何left.mp4
从 的开头开始准确地跳过 的第一秒right.mp4
?
答案1
我最终使用了tpad
筛选与hstack
一起延迟右侧 30 帧,而不是修剪左侧:
ffmpeg -i left.mp4 -i right.mp4 -filter_complex \
"[0:v]null [left]; \
[1:v]tpad=30:start_mode=add [right]; \
[left][right]hstack" \
stereo.mp4
(但是,如果没有电子同步快门,我发现帧对齐确实会随着时间的推移而漂移很多。)