當前位置:維知科普網 >

生活

> m3u8是什麼文件

m3u8是什麼文件

UTF-8編碼格式的M3U文件。

M3U8文件是指UTF-8編碼格式的M3U文件(M3U使用Latin-1字符集編碼)。M3U文件是一個記錄索引的純文本文件,打開它時播放軟件並不是播放它,而是根據它的索引找到對應的音視頻文件的網絡地址進行在線播放。

M3U8是一種常見的流媒體格式,主要以文件列表的形式存在,既支持直播又支持點播,尤其在Android、iOS等平台最為常用。

m3u8文件實質是一個播放列表(playlist),其可能是一個媒體播放列表(Media Playlist),或者是一個主列表(Master Playlist)。但無論是哪種播放列表,其內部文字使用的都是utf-8編碼。

(1)當m3u8文件作為媒體播放列表(Media Playlist)時,其內部信息記錄的是一系列媒體片段資源,順序播放該片段資源,即可完整展示多媒體資源。其格式如下所示:

對於點播來説,客户端只需要順序下載上述片段資源,依次進行播放即可。而對於直播來説,客户端需要定時重新請求該m3u8文件,看下是否有新的片段數據需要進行下載並播放。

(2)當m3u8作為主播放列表(Master Playlist)時,其內部提供的是同一份媒體資源的多份流列表資源(Variant Stream)。其格式如下所示:

備用流資源制定了多種不同的碼率,不同格式的媒體播放列表,並且,該備用流資源也可同時提供不同版本的資源內容,比如不同語言的音頻文件,不同角度拍攝的視頻文件等等。客户可以根據不同的網絡狀態選取合適碼率的資源,並且最好根據用户喜好選擇合適的資源碼率。

m3u8是什麼文件

1、可以做多碼率的適配。根據網絡帶寬,客户端會自動選擇一個適合自己碼率的文件進行播放,保證視頻流的流暢,代表是蘋果的HLS(HTTP Live Streaming)。HLS有一個特點:自適應碼率流播(adaptive streaming),客户端可以根據網絡狀況自動選擇不同碼率的視頻流,條件允許的情況下使用高碼率,網絡繁忙的時候使用低碼率,並且自動在二者間隨意切換。這對移動設備網絡狀況不穩定的情況下保障流暢播放非常有幫助。

2、降低源服務器的負載壓力。M3U的特點是將流媒體切分為若干 TS 片段,然後通過一個擴展的 m3u 列表文件將這些 TS 片段集中起來供客户端播放器接收。這樣做相比使用 RTSP 協議的好處在於,一旦切分完成,之後的分發過程完全不需要額外使用任何專門軟件,普通的網絡服務器即可,大大降低了 CDN 邊緣服務器的配置要求,可以使用任何現成的CDN。分發使用的協議是最常見 HTTP,代理服務器對這個協議的緩存優化相當成熟,而很少有代理服務器對 RTSP 的進行緩存優化。

3、對於非實時視頻,好處同樣存在:播放使用HTTP協議的單個 MP4 格式的視頻文件時,需要代理服務器支持 HTTP range request 以獲取大文件中的一部分,但不是所有的代理服務器都對此有良好的支持。而 M3U 則只需要根據列表文件中的時間軸找出對應的 TS 片段下載即可,不需要 range request,對代理服務器的要求小很多。所有代理服務器都支持小文件的高效緩存。

4、為什麼要用 TS 而不是 MP4,這是因為兩個 TS 片段可以無縫拼接,播放器能連續播放,而 MP4 文件由於編碼方式的原因,兩段 MP4 不能無縫拼接,播放器連續播放兩個 MP4 文件會出現破音和畫面間斷,影響用户體驗。

標籤: m3u8 文件
  • 文章版權屬於文章作者所有,轉載請註明 https://wzkpw.com/sh/z18544.html