前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用ffmpeg横向拓展拼接视频

使用ffmpeg横向拓展拼接视频

原创
作者头像
TDP-苏苏
发布2022-06-13 20:00:31
3.1K3
发布2022-06-13 20:00:31
举报
文章被收录于专栏:上云实践笔记上云实践笔记

背景

下午看到群里有个小伙伴问,如何横向拼接同一个视频2次,类似于复制

原视频截图
原视频截图
处理后效果图
处理后效果图

既然是处理视频,我就想到了ffmpeg。查阅文档后,发现可以利用的组合滤镜功能(filter_complex)实现,特意记录下来

ffmpeg介绍

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,采用LGPL或GPL许可证。

FFmpeg提供了录制、转换以及流化音视频的完整解决方案,拥有非常强大的功能,包括视频采集功能、视频格式转换、视频抓图、给视频加水印等。

本文仅仅是组合滤镜功能(filter_complex)的简单应用

准备工作

到ffmpeg官网(http://www.ffmpeg.org/download.html)下载编译后的可执行文件,解压至ffmpeg目录

命令

代码语言:text
复制
cd ./ffmpeg
./ffmpeg -i input.mp4 -i input.mp4 -i input.mp4 -filter_complex "[0:v]pad=iw*3:ih*1[a];[a][1:v]overlay=w[b];[b][2:v]overlay=w*2" out.mp4

解析

  • -i input.mp4 与要处理的文件(输入流)
  • -filter_complex 滤镜功能 [0:v]pad=iw*3:ih*1[a] 将第一个视频宽度*3,高度保持不变,该过滤器命名为a [a][1:v]overlay=w[b] 给过滤器a叠加滤镜,将视频2覆盖在a上,偏移位置为1倍视频宽度,该过滤器命名为b [b][2:v]overlay=w*2 给过滤器b叠加滤镜,将视频3覆盖在b上,偏移位置为2倍视频宽度
  • out.mp4 输出的文件名

效果

处理前
处理前
处理后
处理后

后记

使用滤镜功能还可以实现添加水印的功能,思路是把第二个视频文件替换成图片文件,然后设置好对应的偏移位置即可。还有更多玩法,可以参阅ffmpeg官方文档。

笔者为腾讯云TDP成员,点击了解腾讯云TDP

博文链接:https://nongxue.top/p/daima/98.html

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • ffmpeg介绍
  • 准备工作
  • 命令
  • 解析
  • 效果
  • 后记
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com