利用ffmpeg命令将多个视频拼接起来并有转场效果

我们平时在玩`抖音`的时候

可能需要将多个`视频拼接`在一起

早在10几年前就知道有软件来做视频处理

直到`抖音`的时代还知道这叫`转场`

当然`剪映`,`pr`,`imovie`有这种功能

做为一个程序猿,又想做用`ffmpeg`来实现这种功能

ffmpeg有一个filter叫xfade,网址为`https://trac.ffmpeg.org/wiki/Xfade`

有几十种转场效果,但是只能将两个图片和两个视频拼接一起加转场

有没有可能实现将多个视频拼接一起并加转场效果呢

效果

命令行如下

```
ffmpeg -i v0.mp4 -i v1.mp4 -i v2.mp4 -i v3.mp4 -i v4.mp4 -filter_complex \
"[0][1]xfade=transition=hlslice:duration=1:offset=2[V01]; \
[V01][2]xfade=transition=radial:duration=1:offset=4[V02]; \
[V02][3]xfade=transition=dissolve:duration=1:offset=6[V03]; \
[V03][4]xfade=transition=vuslice:duration=1:offset=8,format=yuv420p; \
[0:a][1:a]acrossfade=d=0.5:c1=tri:c2=tri[A01]; \
[A01][2:a]acrossfade=d=0.5:c1=tri:c2=tri[A02]; \
[A02][3:a]acrossfade=d=0.5:c1=tri:c2=tri[A03]; \
[A03][4:a]acrossfade=d=0.5:c1=tri:c2=tri" \
-map "" -map "" -movflags +faststart xfade.mp4
```

    A+
发布日期:2021年03月21日  所属分类:未分类

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: