ffmpeg 合并视频到一个画布

shell 复制代码
#!/bin/bash

#video1='/Users/wangguisen/Documents/work_space/python/LSCQ/wav2motion/wav2motion/data2_demo/xiangsheng_nsm.mp4'
#video2='/Users/wangguisen/Documents/work_space/python/LSCQ/wav2motion/wav2motion/data2_demo/xiangsheng_sm.mp4'

video1='/Users/wangguisen/Documents/work_space/python/LSCQ/wav2motion/wav2motion/data2_demo/3_nsm.mp4'
video2='/Users/wangguisen/Documents/work_space/python/LSCQ/wav2motion/wav2motion/data2_demo/3_sm.mp4'
video3='/Users/wangguisen/Documents/work_space/python/LSCQ/wav2motion/wav2motion/data2_demo/rec_3.mp4'
video4='/Users/wangguisen/Documents/work_space/python/LSCQ/wav2motion/wav2motion/data2_demo/3_vis.mp4'
out='/Users/wangguisen/Documents/work_space/python/LSCQ/wav2motion/wav2motion/data2_demo/mer_3_out.mp4'

# 两个
#ffmpeg -i $video1 -i $video2 -filter_complex "[0:v]pad=iw*2:ih*1[a];[a][1:v]overlay=w" $out -y
# pad是将合成的视频宽高,这里iw代表第一个视频的宽,iw*2代表合成后的视频宽度加倍,ih为第一个视频的高,合成的两个视频最好分辨率一致。overlay是覆盖,[a][1:v]overlay=w,后面代表是覆盖位置w:0

# 三个
#ffmpeg -i $video1 -i $video2 -i $video3 -filter_complex "[0:v]pad=iw*3:ih*1[a];[a][1:v]overlay=w[b];[b][2:v]overlay=2.0*w" $out -y

# 四个
ffmpeg -i $video1 -i $video2 -i $video3 -i $video4 -filter_complex "[0:v]pad=iw*2:ih*2[a];[a][1:v]overlay=w[b];[b][2:v]overlay=0:h[c];[c][3:v]overlay=w:h" $out -y

ref: https://blog.csdn.net/Gary__123456/article/details/88742705

相关推荐
Java搬砖组长2 小时前
抖音视频下载去水印工具推荐
音视频
叶余5 小时前
FFmpeg命令行选项
ffmpeg
来吧~5 小时前
vue3使用video-player实现视频播放(可拖动视频窗口、调整大小)
前端·vue.js·音视频
Bubluu5 小时前
浏览器点击视频裁剪当前帧,然后粘贴到页面
开发语言·javascript·音视频
深圳启明云端科技5 小时前
ESP-IDF HTTP POST请求发送音频-ESP32物联网方案
物联网·http·音视频
从后端到QT5 小时前
音视频采集推流时间戳记录方案
ffmpeg·音视频
ai产品老杨7 小时前
报警推送消息升级的名厨亮灶开源了。
vue.js·人工智能·安全·开源·音视频
莫固执,朋友7 小时前
Linux下编译 libwebsockets简介和使用示例
linux·websocket·音视频
Say-hai11 小时前
音视频入门知识(五):流媒体篇
音视频
EasyNVR18 小时前
互联网视频云平台EasyDSS无人机推流直播技术如何助力野生动植物保护工作?
音视频·无人机·视频监控