ffmpeg拼接视频

1、两段视频先后播放拼接

我没有直接安装ffmpeg,因为好多软件里都已经自带了

想拼接视频的话,找两个视频文件,随便放在一个目录

videolist.txt中写入待拼接的视频文件相对路径

file 'lzbffmpeg/03.mp4'
file 'lzbffmpeg/21.mp4'

然后就可以拼接了

ffmpeg.exe -f concat -i lzbffmpeg\videos.txt joinoutput.mp4

joinooutput.mp4是输出名

ok了

当然,还有其他不少的拼接方法,这只是其中的一种。

2、两段视频同时播放,左右或上下同时显示

有的小可爱要的可能不是时间线上的拼接,而是类似分屏显示的那种,安排

ffmpeg -i lzbffmpeg\03.mp4 -i lzbffmpeg\21.mp4 -filter_complex "pad=4000:1080:color=red[x0];[0:v]scale=w=1920:h=1080[inn0];[x0][inn0]overlay=0:0[x1];[1:v]scale=w=1920:h=1080[inn1];[x1][inn1]overlay=2000:0" out14.mp4

指令详解

ffmpeg 
-i lzbffmpeg\03.mp4 			//视频1
-i lzbffmpeg\21.mp4 			//视频2
-filter_complex 
"pad=3840:1080[x0];				//合并后的总尺寸
[0:v]scale=w=1920:h=1080[inn0];	//第一个视频的尺寸
[x0][inn0]overlay=0:0[x1];		//第一个视频左上角的起始坐标
[1:v]scale=w=1920:h=1080[inn1];	//第二个视频的尺寸
[x1][inn1]overlay=1920:0" 		//第二个视频左上角的起始坐标
out12.mp4						//输出文件名

假如我想让左右两个视频中间有个分界,留点空隙,就100个像素吧,颜色为绿色

命令修改为

ffmpeg -i lzbffmpeg\03.mp4 -i lzbffmpeg\21.mp4 -filter_complex "pad=3940:1080:color=green[x0];[0:v]scale=w=1920:h=1080[inn0];[x0][inn0]overlay=0:0[x1];[1:v]scale=w=1920:h=1080[inn1];[x1][inn1]overlay=2020:0" out15.mp4

ffmpeg 
-i lzbffmpeg\03.mp4 			//视频1
-i lzbffmpeg\21.mp4 			//视频2
-filter_complex 
"pad=3940:1080[x0];				//合并后的总尺寸【宽度要加100】
[0:v]scale=w=1920:h=1080[inn0];	//第一个视频的尺寸
[x0][inn0]overlay=0:0[x1];		//第一个视频左上角的起始坐标
[1:v]scale=w=1920:h=1080[inn1];	//第二个视频的尺寸
[x1][inn1]overlay=1920:0" 		//第二个视频左上角的起始坐标【第二个视频起始位置的坐标要加100】
out12.mp4						//输出文件名

假如想让两个视频上下显示,比如这样

ffmpeg -i lzbffmpeg\03.mp4 -i lzbffmpeg\21.mp4 -filter_complex "pad=1920:2160:color=green[x0];[0:v]scale=w=1920:h=1080[inn0];[x0][inn0]overlay=0:0[x1];[1:v]scale=w=1920:h=1080[inn1];[x1][inn1]overlay=0:1080" out16.mp4

ffmpeg 
-i lzbffmpeg\03.mp4 			//视频1
-i lzbffmpeg\21.mp4 			//视频2
-filter_complex 
"pad=1920:2160[x0];				//合并后的总尺寸【总尺寸变化了】
[0:v]scale=w=1920:h=1080[inn0];	//第一个视频的尺寸
[x0][inn0]overlay=0:0[x1];		//第一个视频左上角的起始坐标【这个没有变】
[1:v]scale=w=1920:h=1080[inn1];	//第二个视频的尺寸
[x1][inn1]overlay=0:1080" 		//第二个视频左上角的起始坐标【这个需要修改】
out12.mp4						//输出文件名

ffmpeg这单个指令功能看着挺简单,但是一组合就可以变化万千,实现各种各样的功能。

原文 ffmpeg拼接视频_六月的翅膀的博客-CSDN博客

★文末名片可以免费领取音视频开发学习资料,内容包括(FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,srs)以及音视频学习路线图等等。

见下方!↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值