簡體   English   中英

nginx HLS 流式傳輸; 如何擁有媒體內容目錄?

[英]nginx HLS streaming; how to have directories of media content?

我有一個簡單的nginx服務器啟動並運行,我可以在其中提供 HLS 准備好的媒體內容(H264/AAC 編碼的 mp4 視頻),下面是我的nginx.conf文件。

worker_processes  1;

events {
    worker_connections  1024;
}

rtmp {                
    server {
        listen 1935;  
        chunk_size 4096;
            
        application vod {
            play /opt/video/vod; # videos are placed here.
        }
    }
}

通過訪問rtmp://localhost/vod/video.mp4我可以播放存儲在/opt/video/vod中的video.mp4 但是,我想在/opt/video/vod中的moviesseries等目錄中組織我的媒體。 但是當我這樣做時,我不能再播放視頻了。 例如,我無法播放rtmp://localhost/vod/series/video.mp4

有什么方法可以與nginx一起使用嗎?

解決了,我誤解了HLS的工作原理。 通過將nginx配置為通過某個路徑提供HLS內容,任何實際的HLS內容,因此可以從該路徑播放切入*.ts片段的H264 / AAC編碼內容以及隨附的*.m3u8播放列表。 下面是nginx.conf

rtmp {
    server {
        listen 1935;

        application app {
            live on;

            # Don't allow RTMP playback
            deny play all;

            # Package streams as HLS
            hls on;
            hls_path /var/www/vod; # place your content here
            hls_nested on;
            hls_fragment_naming system;
        }
    }
}

要准備HLS內容,請使用ffmpeg

ffmpeg -i <input_video> -map 0 -codec:v libx264 -codec:a aac -f ssegment -segment_list playlist.m3u8 -segment_list_flags +live -segment_time 10 out%03d.ts

然后將媒體播放器(例如VLChttp://<ip>/vod/playlist.m3u8 ,它將播放您的視頻! 這樣,您可以按照您喜歡的任何方式划分您的vod目錄,例如vod/series/himym/1/1/playlist.m3u8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM