ffmpeg视频滤镜:组合两个视频为立体视频- framepack
视频描述
framepack
官方网址 => FFmpeg Filters Documentation
这个滤镜会将两个视频进行组合,有个前提是这两个视频的帧率、分别率必须一样。比如输入的是两个852x480 视频,输出可能是1704*480(左右拼接)、852*960(上下拼接)、852x480(交错拼接)。
滤镜使用
参数
format <int> ..FV....... Frame pack output format (from 0 to INT_MAX) (default sbs)
sbs 1 ..FV....... Views are packed next to each other
tab 2 ..FV....... Views are packed on top of each other
frameseq 3 ..FV....... Views are one after the other
lines 6 ..FV....... Views are interleaved by lines
columns 7 ..FV....... Views are interleaved by columns
这个滤镜就一个参数,就是组合方式。sbs是左右拼接、tab是上下拼接。lines和columns分别是上下拼接和左右拼接,只不过会添加白色的横线或者竖线,frameseq是交错拼接。 具体可以看下面的效果。
音频会使用第一个输入的音频。
案例
我得两个视频输入都是25fps的,大小已经是一样的了。
ffmpeg -y -i ffm_media/short_dancer.mp4 -i ffm_media/gee_short.mp4 -filter_complex "framepack" result/framepack/framepack_test_default.mp4
默认就是左右拼接
ffmpeg -y -i ffm_media/short_dancer.mp4 -i ffm_media/gee_short.mp4 -filter_complex "framepack=format=tab" result/framepack/framepack_test_001.mp4
上下拼接
ffmpeg -y -i ffm_media/short_dancer.mp4 -i ffm_media/tara_short.mp4 -filter_complex "framepack=format=lines" result/framepack/framepack_test_002.mp4
lines方式的拼接
ffmpeg -y -i ffm_media/short_dancer.mp4 -i ffm_media/tara_short.mp4 -filter_complex "framepack=format=columns" result/framepack/framepack_test_003.mp4
columns方式的拼接
ffmpeg -y -i ffm_media/short_dancer.mp4 -i ffm_media/tara_short.mp4 -filter_complex "framepack=format=frameseq" result/framepack/framepack_test_004.mp4
frameseq交错拼接
我这里上传的是gif,原视频会比这个变化的快很多,比较闪眼睛。
## 祝你好运
hope("大神多多指点")
topic("有问题可以交流呀")
concat("球球QUN", "61480", "9646")
include("电", "-","子", "=", "书")