目录

FFMPEG合并多个视频文件

需求

  • 合并多个mts文件
  • 保存成H.264格式编码,视频格式为MP4格式。
  • 视频码流率:2M/s-3M/s。
  • 视频分辨率:高清16:9拍摄,请设定为1920×1080。
  • 视频文件大小不超过2G

方法

使用神器 ffmpeg 来进行这个工作。

创建文件列表

需要合并的文件列表放在一个文本文件中,内容如下:

file 'file1.mts'
file 'file2.mts'
file 'file3.mts'
...

运行命令

  ffmpeg -f concat -safe 0 -i filelist.txt -c:v libx264 -b:v 2.5M -maxrate 3M -bufsize 6M -s 1920x1080 -pix_fmt yuv420p -movflags +faststart output.mp4

命令参数的一些解释:

  • -f concat : 指定输入格式为concat(合并)
  • -safe 0 : 允许使用相对路径
  • -i filelist.txt : 指定输入文件列表
  • -c:v libx264 : 指定视频编码器为H.264
  • -i filelist.txt : 指定输入文件列表
  • -c:v libx264 : 指定视频编码器为H.264
  • -b:v 2.5M : 设置视频码率为2.5M(可以根据需要调整到2M或3M之间)
  • -maxrate 3M : 设置最大视频码率为3M
  • -bufsize 6M : 设置缓冲区大小为6M
  • -s 1920x1080 :设置分辨率为1920x1080。
  • -pix_fmt yuv420p :设置像素格式为YUV 4:2:0
  • -movflags +faststart :优化文件用于网络流播放

结语

ffmpeg真的是非常强大,现在借助大模型提供的帮助可以更方便的使用ffmpeg快速完成以前比较麻烦的工作。