串流媒體和 IPTV
網路上的直播電視借用了三個不同地方的詞彙——廣播、網路和一個意外成為標準的特定面板軟體。這些是出現的字。
-
HLS
HTTP Live Streaming -
Apple 的串流協議,幾乎所有東西都使用該協議。影片被切成文字播放清單中列出的短片段,播放器透過普通 HTTP 按順序取得它們。
HLS 獲勝是因為它不需要特殊的伺服器:片段是檔案,播放清單是檔案,任何 Web 伺服器都可以傳送這兩者。 Apple 平台上的所有地方以及幾乎所有其他地方都原生支援它。
它的設計有一個人們經常遇到的結果——沒有單一的視訊檔案可以保存。你所看到的只是一千個片段和一組取得它們的指令。
-
清單
playlist, .m3u8 -
列出流組成的文字檔。主清單列出了可用的品質等級;每個點都位於列出實際片段的媒體清單上。
開啟其中有幾十行:一個標題、一些參數和位址。你所看到的一切都在別處。對於直播,播放器每隔幾秒鐘重新獲取該檔案,因為它會隨著廣播的繼續而增長。
清單地址通常是經過簽署且有時間限制的,這就是為什麼今天早上有效的連結到下午經常會指向任何內容的原因。
-
片段
chunk -
流的一小段,通常為兩到十秒,作為自己的檔案交付。一小時的影片有數百到數千個。
分段使得在播放過程中切換品質成為可能:玩家只需從不同的品質等級請求下一個片段,並且變化發生在邊界而不是中斷。
這也是下載流成為重建而不是副本的原因。必須提取每個段落,然後將其寫入具有適當索引的單一容器中 - 此步驟為結果提供了一個有效的滑動條。
-
自適應碼率
ABR -
以多個品質等級提供相同的內容,並讓玩家隨著連線的變化在它們之間移動。這就是為什麼流的清晰度會降低而不是停止。
播放器測量分段到達的速度,並選擇它認為可以維持的最高品質。當連線拉緊時,通常在緩衝器耗盡之前,它會下降。
這是觀看串流媒體和下載檔案之間最大的區別。下載想要最好的版本,就會等待;流寧願看起來更柔和而不是暫停。
-
緩衝
-
播放器會在您正在觀看的內容之前播放幾秒鐘的影片,因此短暫的網路中斷不會成為暫停。當您看到這個詞時,緩衝區已用完。
更大的緩衝區可以克服更多的干擾,但代價是啟動時間更長並且對頻道變化的反應更慢。直播串流故意保持較小的規模,這就是為什麼它們比點播影片更脆弱的原因。
當 IPTV 頻道出現卡頓時,原因幾乎總是在提供者和您之間 — 他們的伺服器、路由、您的連線。同一裝置上的同一個App播放相同位元率的本機檔案不會出現閃爍,這是區分兩者的最快方法。
-
IPTV
-
電視透過網路而非透過無線、有線或衛星傳送。作為一個詞,它描述了一種交付方法,但沒有說明誰有權交付什麼。
訂閱實際上由一個列表組成——一個M3U播放列表,或者面板上的一個帳號——它命名頻道並給出每個頻道的地址。播放器將其變成頻道指南;它既不承載也不提供任何東西。
這在法律上和技術上都是重要的部分。播放 IPTV 的App不提供任何頻道,而特定提供者是否有權攜帶其所攜帶的內容則是該提供者的問題。
另請參閱: M3U播放列表Xtream 程式碼EPG
-
M3U播放列表
-
頻道名稱和串流位址的純文字列表,以及 IPTV 訂閱最常見的交付方式。它根本不包含任何影片。
每個條目都是一行命名頻道(帶有徽標、群組和按約定附加的識別碼)以及一行給出其位址。這些約定都沒有標準化,因此每個提供者的編寫方式都略有不同。
提供者清單的成長遠遠超出了預期的格式:數十萬個頻道和數百兆位元組的文字現在很常見,在解析之前將其讀入記憶體的App將在完成之前被 iOS 殺死。
另請參閱: IPTVXtream 程式碼
-
Xtream 程式碼
-
API成為事實上的標準的面板軟體。您獲得的不是播放清單檔案,而是伺服器位址、使用者名稱和密碼,App會向面板詢問頻道、電影、劇集和指南。
其背後的公司已於2019年關閉; API 比它更長壽,因為成千上萬的提供者已經在它的基礎上進行了構建,並且他們的客戶也期望它。描述為「Xtream 相容」的軟體正在實現該接口,而不是使用該公司的產品。
它在兩個有用的方面與普通播放清單不同:目錄作為結構化資料而不是平面清單到達,並且面板強制執行連線限制 - 這就是為什麼同時下載和直播頻道可能會互相干擾。
-
EPG
electronic programme guide -
時間表:每個頻道現在播放什麼,接下來播放什麼,以及之前播放什麼。與頻道本身分開傳送,通常作為 XMLTV 檔案。
指南透過提供者在每個頻道上新增的識別碼與頻道進行比對。當這些識別碼遺失或不一致時(這種情況很常見),即使指南資料存在且正確,頻道也不會顯示節目資訊。
大型供應商的完整指南本身就是一個大量的下載,涵蓋了數千個頻道的數天時間表。
另請參閱: IPTV追趕Xtream 程式碼
-
追趕
timeshift, archive -
透過向提供者的伺服器詢問頻道上過去的時間來觀看已經廣播的內容。它只存在於提供者記錄的地方;您的裝置上沒有儲存任何內容。
在提供它的地方,App可以將指南中過去的節目轉換為對該頻道的該視窗的請求。典型的檔案會運作幾天。
這完全是提供者的能力。App無法為沒有任何頻道的頻道添加補播內容,上週的指南條目也不能證明該錄音存在。