zl程序教程

您现在的位置是:首页 >  其他

当前栏目

FFmpeg合并多个ts视频文件

2023-02-19 12:21:12 时间

背景

现在很多流媒体支持了hls保存录像,那么下载录像需要怎么支持呢?有人使用了ffmpeg 拉取hls流进行转码保存,这样太耗时,现提供一种节省时间、消耗更低方法。

方法

方法一:

1.新建file.txt文档

file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-16.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-17.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-18.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-19.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-20.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-21.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-22.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-23.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-24.ts'
file 'F:\Release\StreamMediaServer\html\hd\34020000001310000701\34020000001310000701_live-25.ts'

2.执行ffmpeg命令

# -safe 0: 防止Operation not permitted
ffmpeg.exe -f concat -safe 0 -i file.txt -c copy out.mp4

方法二:

直接写ffmpeg命令,通过“|”来分隔文件名

ffmpeg -i "concat:34020000001310000701_live-16.ts|34020000001310000701_live-17.ts|" -c copy output.mp4