ffmpeg 把一个视频复制3次

1. 起因, 目的:

2. 先看效果

  • 效果就是能行,而且速度也快。

3. 过程:

代码 1, 把视频复制3次
  • 输入的视频名称是: a22.mp4, 输出 a33.mp4
  • 下面这个命令叫做:生成一个宽三倍的视频。

ffmpeg -i a22.mp4 -filter_complex "[0:v]split=3[v1][v2][v3];[v1][v2][v3]hstack=inputs=3" -c:v libx264 -preset ultrafast -crf 23 a33.mp4

代码 2, 换个花样, 对视频进行如下处理
txt 复制代码
现在我想换一种方法来拼接视频。
依然是按照水平方向, 即,生成一个宽三倍的视频。

但是视频顺序改变需要一下。

假设视频的名称是 a.mp4, 

1. 原来的做法是, 在时间轴上,一直是
a.mp4 + a.mp4 + a.mp4
这部分已经完成了。速度也很快。

2. 我有一个新的想法:
- 先把 a.mp4,按照时间顺序切分为 3部分,即,a1, a2, a3
- 切分方法,使用平均值计算时间长度,如果时间长度无法完全被3整除,那就让 a3 成为最长的。

3. 下面是合并方法。

- 先把按照时间方向上,重新组合, 即,输出视频的长宽都不变(还是a.mp4 的长度),
  总的时间长度也不变。 
  此时需要生成下面3个视频。

  b1 = a2 + a3 + a1
  b2 = a3 + a1 + a2    
  b3 = a1 + a2 + a3    # 这一步是多余的。 因为 b3 就是 a.mp4 本身!

- 最后需要再按照水平方向合并,即 生成一个宽三倍的视频。
  c = b1 + b2 + b3 

上面的思路能否实现? 
请给出建议和代码。 

这部分还是有问题,代码不对劲。先记录过程,后面再修改。

4. 结论 + todo

可以优化的地方:

  • 比如音频如何处理。
  • 使用gpu, 但是尺寸超出 4096 会报错。怎么解决。

希望对大家有帮助。

相关推荐
源码_V_saaskw7 小时前
JAVA图文短视频交友+自营商城系统源码支持小程序+Android+IOS+H5
java·微信小程序·小程序·uni-app·音视频·交友
肥or胖16 小时前
【音视频协议篇】WebRTC 快速入门
ffmpeg·音视频·webrtc
aqi0016 小时前
FFmpeg开发笔记(七十八)采用Kotlin+Compose的NextPlayer播放器
android·ffmpeg·音视频·直播·流媒体
QMCY_jason20 小时前
Ubuntu 1804 编译ffmpeg qsv MediaSDK libva 遇到的问题记录
linux·ubuntu·ffmpeg
tang_jian_dong21 小时前
springboot + vue3 拉取海康视频点位及播放
spring boot·后端·音视频
青牛科技-Allen1 天前
GC8871刷式直流电机驱动器深度解析:3.6A驱动与内置电流检测技术
单片机·嵌入式硬件·音视频·音响·电动工具·散热风扇·电脑散热风扇
Tracy9731 天前
HF83311_VB1/HF83311Q_VB1:高性能USB HiFi音频解码器固件技术解析
音视频·xmos 模组·xmos 模组固件
_可乐无糖1 天前
AWS WebRTC:我们的业务模式
云计算·音视频·webrtc·aws
Kandiy180253981871 天前
DP4871音频放大芯片3W功率单通道AB类立体声/音频放大器
音视频·音频·视频编解码