【问题标题】:All ts files are not recording in the same m3u8 file所有 ts 文件都没有记录在同一个 m3u8 文件中
【发布时间】:2021-03-19 15:49:56
【问题描述】:

我正在尝试将 nginx-rtmp 用于 HLS,并将 m3u8 文件用于 VOD。但是经过几次后,#EXT-X-MEDIA-SEQUENCE 被设置为其他值,而我想在那个 m3u8 文件中记录所有 ts 文件。 m3u8 文件:-

**

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:34
#EXT-X-TARGETDURATION:8
#EXTINF:5.367,
awsfloor-34.ts
#EXTINF:8.333,
awsfloor-35.ts
#EXTINF:8.333,
awsfloor-36.ts
#EXTINF:8.334,
awsfloor-37.ts
#EXTINF:8.333,
awsfloor-38.ts
#EXTINF:8.333,
awsfloor-39.ts
#EXTINF:8.334,
awsfloor-40.ts
#EXTINF:8.333,
awsfloor-41.ts
#EXTINF:8.333,
awsfloor-42.ts
#EXTINF:8.334,
awsfloor-43.ts
#EXTINF:1.927,
awsfloor-44.ts**

**

我的 rtmp 块:- **

application thirdhlslive {  #rtmp push stream request path
            live on;
            hls on;
            hls_path /usr/share/nginx/html/thirdhlslive;
            hls_cleanup off;
            hls_fragment 3s;
            hls_playlist_length 1m;
        #record all;
        #record_path /tmp/recordings;
        #record_suffix _recorded.mp4;
        #record_unique on;
        #record_max_size 1024K;     
        }

**

请帮帮我。

【问题讨论】:

    标签: nginx http-live-streaming rtmp m3u8


    【解决方案1】:

    所以对您来说,发生的事情是旧片段出现在播放列表的顶部(即它是一个滑动的实时窗口),但您希望它们保留下来。

    使用hls_type 指令(更多信息here),您可以将播放列表类型从滑动窗口更改为增长窗口类型流,在HLS 中称为EVENT 类型。此外,您可能还必须增加 hls_playlist_length 的值,以使其大于您无法进行的录制的持续时间。

    所以你会改为:

      live on;
      hls on;
      hls_path /usr/share/nginx/html/thirdhlslive;
      hls_cleanup off;
      hls_fragment 3s;
      hls_playlist_length 10h;
      hls_type event;
    

    【讨论】:

      猜你喜欢
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      • 2017-02-23
      • 1970-01-01
      • 2021-11-13
      • 2019-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多