v1版本總共有7個標籤,下面一一說明
ext-x-key標籤中uri引數說明了**分片解密key的位址,加密使用16位8進製數,即總共128個bit,伺服器只需要將這個16個8進製數打包成二進位制陣列返回即可。
aes-128解密的時候還需要16位8進製的iv,從而提高加密強度。
在v1中,**分片加密和解密的時候使用**分片的序列號作為iv,大端序,左側不足補0即可。aes-cbc加密演算法下,因為後乙個要加密的分組依賴於前乙個加密的分組,因此協議規定這種分組依賴不能跨**分片。
服務端如果想使用非加密的流,那麼需要使用ext-x-key標籤將method設定為none。
服務端:
服務端的列表檔案中至少需要保持3個**分片(包含ext-x-endlist標籤的列表檔案除外)。以10s的分片時長為例,直播剛開始的30s時間內,列表檔案是不可用。(其實也一定程度說明了hls的直播至少會有30s的延時)。
多位元速率流:
同乙份內容提供不同的流時,需要使用相同的program-id。同乙份內容在生成不同路的流時候需要滿足以下幾個約束:
客戶端:
#extm3u
HLS協議實現
一 hls介紹 是由公司定義的用於實時流傳輸的協議,hls基於 協議實現,傳輸內容包括兩部分,一是 m3u8 描述檔案,二是 ts 檔案。1 m3u8檔案 用文字方式對 檔案進行描述,由一系列標籤組成。extm3u ext x targetduration 5 extinf 5,0.ts extin...
HLS協議實現
一 hls介紹 是由公司定義的用於實時流傳輸的協議,hls基於 協議實現,傳輸內容包括兩部分,一是 m3u8 描述檔案,二是 ts 檔案。1 m3u8檔案 用文字方式對 檔案進行描述,由一系列標籤組成。extm3u ext x targetduration 5 extinf 5,0.ts extin...
HLS協議實現
一 hls介紹 是由公司定義的用於實時流傳輸的協議,hls基於 協議實現,傳輸內容包含兩部分,一是 m3u8 描寫敘述檔案,二是 ts 檔案。1 m3u8檔案 用文字方式對 檔案進行描寫敘述,由一系列標籤組成。extm3u ext x targetduration 5 extinf 5,0.ts e...