ffmpeg综合应用示例(五)——多路视频合并

本文的示例将实现:把多个子视频根据配置参数在空间上合并成一个视频,并可以对每一路的视频和音频加入特效。示例包含了

1、如何利用avfilter编程实现视频合并以及加入各类不同滤镜的功能

具有较强的综合性。

最终效果如下:

对四路视频进行了合并实现了分屏效果,并且给第一路视频加了边缘检测效果,给最后一路视频加了反相效果。

ffmpeg超详细综合教程(二)——为直播流添加滤镜 一文中讲述了如何利用avfilter为单路视频添加特效,其中还提到了如何通过事先写好固定的filter指令来把输入视频切分为四路再实现田字格的拼接效果,但以上这些都局限于单路视频的输入情况,本文将在此基础上进行扩展,真正实现多路视频输入的处理,并且可以更自由地添加特效、进行缩放等。

首先定义两个结构体,InputFile用于描述每一路输入视频,包含了文件名、位置索引、要添加的视频特效和音频特效。GlobalContext则描述了输出视频的宽、高、码率,其中的grid_num表示视频合并的几何方式,即采用田字格方式的话则grid_num=4,采用九宫格方式的话则grid_num=9。其中的video_num表示输入视频数,可以小于g

  • 5
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhanghui_cuc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值