Video 如何在m3u8播放列表中循环TS文件
我想创建m3u8播放列表,如下所示:Video 如何在m3u8播放列表中循环TS文件,video,ffmpeg,stream,video-streaming,m3u8,Video,Ffmpeg,Stream,Video Streaming,M3u8,我想创建m3u8播放列表,如下所示: #EXTINF:-1,LIVE STREAM http://example.com/live01.ts file="/path/to/file.m3u8" duration="1.337" make_playlist() { echo "#EXTM3U" echo "#EXT-X-MEDIA-SEQUENCE:${1}" echo "#EXT-X-DISCONTINUITY-SEQUENCE:${1}" echo "#EXT-X-DISC
#EXTINF:-1,LIVE STREAM
http://example.com/live01.ts
file="/path/to/file.m3u8"
duration="1.337"
make_playlist() {
echo "#EXTM3U"
echo "#EXT-X-MEDIA-SEQUENCE:${1}"
echo "#EXT-X-DISCONTINUITY-SEQUENCE:${1}"
echo "#EXT-X-DISCONTINUITY"
echo "#EXTINF:${duration},"
echo "http://example.com/live01.ts"
echo
}
for ((x=0;;x++)); do
make_playlist "${x}" > "${file}"
sleep "${duration}"
done
当这个文件结束时,我想在循环中重复。
live01.ts结束后,需要重新开始并在循环中无限次地执行此操作
这可能吗?这不是m3u8的官方功能。循环本身必须作为播放器设置来完成。这样的静态播放列表是不可能的 首先,在
#exef
标记之前必须有一个#EXT-X-intercontinuction
标记,以便播放机知道视频/音频帧上的时间戳不会按顺序继续
第二,也是更重要的一点,您需要在文件的头部添加一个#EXT-X-MEDIA-SEQUENCE:
和/或#EXT-X-intercontinuction-SEQUENCE:
,其增量与该视频块的持续时间相同。播放器将重新请求播放列表(直到它看到#EXT-X-ENDLIST
),在不增加这些值的情况下,它将继续假定http://example.com/live01.ts
是序列中的第一个块
如果您直接为M3U8文件提供服务,并且您的系统上有一个支持毫秒的sleep命令,我建议这样做:
#EXTINF:-1,LIVE STREAM
http://example.com/live01.ts
file="/path/to/file.m3u8"
duration="1.337"
make_playlist() {
echo "#EXTM3U"
echo "#EXT-X-MEDIA-SEQUENCE:${1}"
echo "#EXT-X-DISCONTINUITY-SEQUENCE:${1}"
echo "#EXT-X-DISCONTINUITY"
echo "#EXTINF:${duration},"
echo "http://example.com/live01.ts"
echo
}
for ((x=0;;x++)); do
make_playlist "${x}" > "${file}"
sleep "${duration}"
done
尝试将.m3u8嵌套在其内部。仅适用于VLC播放器,但不适用于KODI。我需要在科迪玩。还有其他解决方案吗?看到了吗?谢谢你的回答。我在KODI播放列表中找到了选项-全部重复,这解决了我的问题!