我使用ffmpeg生成m3u8文件.
命令如下:
ffmpeg -i sourcefile.mp4 -vcodec libx264 -acodec libvo_aacenc -b:v 128k -flags -global_header -map 0:0 -map 0:1 -f segment -segment_time 4 -segment_list_size 0 -segment_list testlist.m3u8 -segment_format mpegts stream%05d.ts
Run Code Online (Sandbox Code Playgroud)
这是成功创建m3u8文件,但它不添加扩展的m3u8指令.
那么,如何添加这些指令呢?
提前感谢,
Sagar Joshi
根据HTTP Live Streaming规范,除非您使用的是旧版本的 ffmpeg(我使用的是 1.0),否则它创建的 m3u8 文件就很好。
我的看起来像这样(当 ffmpeg 仍在编码时):
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-ALLOWCACHE:1
#EXTINF:8.308300,
stream00000.ts
#EXTINF:8.341667,
stream00001.ts
Run Code Online (Sandbox Code Playgroud)
通过省略 #EXT-X-ENDLIST 标签,客户端应该知道重新加载此 m3u8 文件以获取更多媒体。此处概述了这一点。一旦 ffmpeg 退出(或者我按 ctrl-c 退出),#EXT-X-ENDLIST 就会添加到文件末尾。
归档时间: |
|
查看次数: |
12069 次 |
最近记录: |