web nginx hls 流媒體

  1. HTTP Live Streaming;獲取攝像機音視頻獲取到本地,進行HLS打包,H264+AAC的流媒體切片,提供給WEB服務器進行HLS流媒體發佈,nginx

切片後: 一個M3U8文件 和 多個.ts文件,M3U8是一種可擴展的播放列表文件格式。它是一個包含UTF-8編碼文字的m3u播放列表。m3u是包含媒體文件URL的一個事實上的播放列表標準,編碼仍是h264。這種格式被用來做爲HTTP Live 媒體流索引文件的格式。M3u8是一種視頻列表格式,裏面有真正的視頻連接,在其中能夠再嵌套一層m3u8。web

實現hls直播:緩存

  1. 採集視頻源和音頻源的數據服務器

  2. 對原始數據進行H264編碼和AAC編碼負載均衡

  3. 視頻和音頻數據封裝爲MPEG-TS包模塊化

  4. HLS分段生成策略及m3u8索引文件編碼

  5. HTTP傳輸協議spa

 m3u8文件結構:代理

#EXTM3U                     m3u文件頭,必須放在第一行
#EXT-X-MEDIA-SEQUENCE       第一個TS分片的序列號
#EXT-X-TARGETDURATION       每一個分片TS的最大的時長
#EXT-X-ALLOW-CACHE          是否容許cache
#EXT-X-ENDLIST              m3u8文件結束符
#EXTINF                     extra info,分片TS的信息,如時長,帶寬等

 

二、nginx 服務器code

  • 處理靜態文件,索引文件以及自動索引;打開文件描述符緩衝

  • 無緩存的反向代理加速,簡單的負載均衡和容錯.

  • FastCGI,簡單的負載均衡和容錯.

  • 模塊化的結構。包括gzipping, byte ranges, chunked responses,以及 SSI-filter等filter。若是由FastCGI或其它代理服務器處理單頁中存在的多個SSI,則這項處理能夠並行運行,而不須要相互等待。

  • 支持SSL 和 TLSSNI.
相關文章
相關標籤/搜索