ffmpeg 如何在一个命令中垂直旋转和 concat/stack 两个视频?
ffmpeg how to vertically rotate and concat/stack two videos in one command?
我有两段录音inside.MOV
和outside.MOV
是用两台摄像机(相同的设置和相同的型号)录制的。
我想做这样的事情:
ffmpeg -i inside.MOV -vf "transpose=2,transpose=2" inside_rotated180degree.MOV # rotate 180 degree
ffmpeg -i outside.MOV -i inside_rotated180degree.MOV \
-filter_complex "[0:v]scale=640:-1[v0];[v0][1:v]vstack=inputs=2" inside_and_outside.MOV # concat them
但在单个命令中。
我已经成功旋转了上方的视频,但我需要旋转下方的视频:
ffmpeg -i outside.MOV -i inside_rotated180degree.MOV \
-filter_complex "[0:v]scale=1920:-1,rotate=PI[v0];[v0][1:v]vstack=inputs=2" inside_and_outside.MOV
我尝试通过各种方式修改命令以添加 rotate=PI
,但 command/screen/input/ 中始终存在错误...有人知道如何将视频旋转到下部而不是上部吗?
您只需对两个视频流(即 2 个过滤器链)进行相同的准备工作,然后再将它们堆叠在一起(最终链):
ffmpeg -i outside.MOV -i inside.MOV \
-filter_complex "[0:v]scale=640:-1,hflip,vflip[v0];\
[1:v]scale=640:-1,hflip,vflip[v1];\
[v0][v1]vstack=inputs=2" inside_and_outside.MOV
transpose
或 rotate
应该是一样的,我正在使用另一个替代 hflip,vflip
来说明。不知道哪个最快
我有两段录音inside.MOV
和outside.MOV
是用两台摄像机(相同的设置和相同的型号)录制的。
我想做这样的事情:
ffmpeg -i inside.MOV -vf "transpose=2,transpose=2" inside_rotated180degree.MOV # rotate 180 degree
ffmpeg -i outside.MOV -i inside_rotated180degree.MOV \
-filter_complex "[0:v]scale=640:-1[v0];[v0][1:v]vstack=inputs=2" inside_and_outside.MOV # concat them
但在单个命令中。
我已经成功旋转了上方的视频,但我需要旋转下方的视频:
ffmpeg -i outside.MOV -i inside_rotated180degree.MOV \
-filter_complex "[0:v]scale=1920:-1,rotate=PI[v0];[v0][1:v]vstack=inputs=2" inside_and_outside.MOV
我尝试通过各种方式修改命令以添加 rotate=PI
,但 command/screen/input/ 中始终存在错误...有人知道如何将视频旋转到下部而不是上部吗?
您只需对两个视频流(即 2 个过滤器链)进行相同的准备工作,然后再将它们堆叠在一起(最终链):
ffmpeg -i outside.MOV -i inside.MOV \
-filter_complex "[0:v]scale=640:-1,hflip,vflip[v0];\
[1:v]scale=640:-1,hflip,vflip[v1];\
[v0][v1]vstack=inputs=2" inside_and_outside.MOV
transpose
或 rotate
应该是一样的,我正在使用另一个替代 hflip,vflip
来说明。不知道哪个最快