hls_playlist_length

为 RTMP 模块中的流媒体应用设置 HLS 播放列表的最大长度。

语法hls_playlist_length milliseconds;
默认值none
上下文
参数1

说明

hls_playlist_length 指令在 NGINX RTMP 模块中用于配置为直播生成的 HLS 播放列表的最大持续时间。该指令在使用 HLS (HTTP Live Streaming) 进行直播的环境中特别重要。它允许微调客户端可以在播放列表中获取的内容量。当直播正在广播时,会生成一个具有定义长度的播放列表,决定了包含给观众的流片段数量。

hls_playlist_length 的参数以毫秒为单位指定长度。通过显式设置此值,服务器确定在提供给客户端的 .m3u8 播放列表文件中包含多少个直播分段。较短的播放列表长度可以使直播的用户体验更灵敏,但也可能导致随着新分段被添加而丢弃早期的流部分。相反,较长的播放列表可以保留更多的流历史,这对在广播后期加入的观众有利。

在同时使用 dash 功能的配置中,必须将此指令与相应的 DASH 设置仔细对齐,以确保兼容性和最佳性能。所设置的值还可能影响客户端播放缓冲区如何管理流数据,可能影响播放的连续性。

配置示例

rtmp {
    server {
        listen 1935;

        application live {
            live on;
            hls on;
            hls_playlist_length 60000;  # 60 seconds
            ...
        }
    }
}

确保播放列表长度适合您的流媒体受众;过短可能导致流历史丢失,过长可能会延迟客户端设备上的缓存刷新。

不要将此指令与其他相关指令混淆,例如 dash_playlist_length,因为它们可能需要各自的配置。

请记住,在流正在直播时更改播放列表长度可能不会生效,直到下一次流或重启。避免频繁更改以免造成混淆。

← 返回所有指令