使用nginx-rtmp模块的HLS片段长度和播放列表长度

时间:2016-07-06 03:48:29

标签: nginx streaming hls

我在Amazon Linux上安装了nginx和nginx-rtmp模块。 RTMP流工作正常,但有些关于HLS的配置不起作用。

在配置文件中,

rtmp {    
    server {    
        listen 1935;    
        max_streams 32;    
        chunk_size 4096;    

        access_log /var/log/nginx/rtmp_access.log;    
         application live {    
            live on;    
            hls on;    
            hls_path /usr/local/nginx/html/hls;    
            hls_playlist_length 4s;    
            hls_fragment 1s;    
            hls_continuous on;    
        }    
    }    

但是当我开始流式传输时,.m3u8文件就像这样创建了

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:8
#EXT-X-DISCONTINUITY
#EXTINF:8.333,
test-0.ts
#EXTINF:8.333,
test-1.ts
#EXTINF:8.334,
test-2.ts

不期望这些.ts文件长度和播放列表长度。为什么?

1 个答案:

答案 0 :(得分:1)

您的视频源似乎有一个特殊的关键帧,最小值为8秒,您无法将其切割成1段。并且hls_playlist_length必须长于每个段的长度。例如,您应该将hls_playlist_length更改为20秒。