【发布时间】:2019-10-07 21:36:51
【问题描述】:
我正在尝试制作一个 5 分钟的视频文件并使用此命令生成 单个文件 HLS 播放列表
ffmpeg -i video.mp4 -codec copy -bsf:v h264_mp4toannexb -hls_time 4 -hls_flags single_file -hls_list_size 0 video.m3u8
像这样生成一个播放列表:
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.338667,
#EXT-X-BYTERANGE:535424@0
video.ts
#EXTINF:5.338667,
#EXT-X-BYTERANGE:316592@535424
video.ts
#EXTINF:5.338667,
#EXT-X-BYTERANGE:285384@852016
video.ts
#EXT-X-ENDLIST
我想要的:
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.338667,
#EXT-X-BYTERANGE:535424@0
video-0-535424.txt
#EXTINF:5.338667,
#EXT-X-BYTERANGE:316592@535424
video-535424-316592.txt
#EXTINF:5.338667,
#EXT-X-BYTERANGE:285384@852016
video-852016-285384.txt
#EXT-X-ENDLIST
或者:
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.338667,
#EXT-X-BYTERANGE:535424@0
video.txt#0-535424
#EXTINF:5.338667,
#EXT-X-BYTERANGE:316592@535424
video.txt#535424-316592
#EXTINF:5.338667,
#EXT-X-BYTERANGE:285384@852016
video.txt#852016-285384
#EXT-X-ENDLIST
我仍然想转换为单个 .ts/或其他任何东西,只是想编辑它在 video.m3u8 中的书写方式。只有ffmpeg可以吗?如果是这样,怎么办?或者是否有任何 js/nodejs 模块可以将 video.m3u8 重写为 video.txt#range-here
【问题讨论】:
-
txt 文件在你的例子中做了什么?
-
我想使用 cloudflare 缓存进行快速加载,但它只缓存某种类型的文件,例如
js/css etctxt 可以是 html 或其他任何内容 -
您是在问是否可以更改文件扩展名?如仍然写一个 TS 格式的文件,但使用 .txt 名称?
-
所以您只是希望拥有一个带有
txt扩展名的TS 文件? -
抱歉回复晚了,请问能否把video.m3u8中的video.ts改成video.txt 。无需更改ffmpeg输出文件的文件扩展名
标签: javascript node.js ffmpeg http-live-streaming