【发布时间】:2015-05-24 16:43:19
【问题描述】:
我正在尝试从 .txt 中分割多个 mp4 文件(就像串联工作一样),但它似乎对我不起作用。
这是我的concat.txt:
file video1.mp4
file video2.mp4
file video3.mp4
等等……
我的 ffmpeg 命令是:
ffmpeg -i concat.txt -map 0 -codec:v libx264 -codec:a libfaac -f ssegment \
-segment_list playlist.m3u8 -segment_list_flags +live -segment_time 10 out%03d.ts
不幸的是,每个媒体播放器都会在播放时抛出错误。
我可以使用 concat 文件,还是必须先将所有 mp4 连接成一个 mp4 文件,然后将该 mp4 文件分段以获得最终的 m3u8?
【问题讨论】:
-
试试看,我猜...
-
谢谢! -f concat 做到了:)
-
@aergistal 能否解释一下将输入文件转换为 MPEG-TS,然后如果可能通过命令转换为 .m3u8 ?我现在正在使用 ffmpeg 文档中提到的一个简单命令,即 ffmpeg -re -i in.mkv -codec copy -map 0 -f segment -segment_list playlist.m3u8 \ -segment_list_flags +live -segment_time 10 out%03d.mkv
-
该评论措辞不当且具有误导性,因此我将其删除。我的意思是,如果您有具有不同编解码器的文件,则需要将它们转换为使用相同的编解码器才能使 concat demuxer 工作。我使用示例命令添加了正确答案。
-
你试过 concat 过滤器吗?
ffmpeg -i "concat:file1.mp4|file2.mp4|fileN.mp4" [...]
标签: video ffmpeg mp4 http-live-streaming