影片體驗質量和重新緩衝
在影片流的早期 ,觀衆願意忍受令人沮喪的播放體驗,以獲得獨家內容。 隨着內容提供商在多個分銷商之間共享其內容的數量不斷增加,體驗質量(QoE)對觀衆保留至關重要。
體驗質量是指用戶觀看影片流的整體體驗。 與服務質量(QoS)不同,QoE是一個更主觀的問題,因此很難衡量或保證某個級別。 QoE包含許多關鍵性能指標(KPI),影片服務可跟蹤這些指標,以清楚地瞭解其平臺的性能。 這些質量指標可細分爲特定關注領域,例如重新緩衝或廣泛的比特率波動。
在各種指標中,重新緩衝是觀衆最明顯和最討厭的錯誤。 那個小旋轉輪是一種糟糕的觀衆體驗的象徵。 影片行業研究一致表明,觀衆在遇到重緩衝時會放棄流媒體。 重新緩衝和QoE降級的原因可能難以確定。 它可能來自觀衆的網際網路服務提供商(ISP),內容交付網路(CDN),客戶端的瀏覽器/播放器應用程式或原始發行商的影片基礎架構。
儘管ISP或發佈者的問題基本上不在我們的控制範圍內,但我們現在可以捕獲可操作的數據,使我們能夠識別和解決來自CDN的QoE問題。 爲此,我們開發了一種稱爲”估計重新緩衝”的算法,用於使用Web伺服器日誌識別影片QoE問題。 此實時監控系統使用粒度數據來識別QoE問題,並向下鑽取以瞭解根本原因和相應的解決措施。 在這篇文章中,我們將瞭解此算法如何確定QoE問題,以及如何使用它來改進QoE。
估計重新緩衝算法概述
跟蹤QoE的一種方法是讓播放器將QoE數據發送到CDN。 這要求玩家和客戶端採用軟體開發套件(SDK)。 由於播放設備的多樣性廣泛,客戶端QoE指標幾乎不可能持續捕獲。 估計的重新緩衝算法可減少對播放器/客戶端更改或採用SDK的需求。 這是一個估計,因爲它不需要通過信標從客戶端發送資訊。 但是,鑑於QoE在數據中心和交付網路中的廣度,與客戶端相比,它提供了更清晰的QoE問題根源。
估計重新緩衝工具使用我們平臺上的影片服務中的伺服器端客戶端訪問日誌來識別QoE問題。 要評估QoE,它使用三條資訊:
- 客戶端請求資產/影片流塊時的時間戳
- asset/video-stream-chunk的文件名
- 會話或客戶端標識符
根據此資訊,估計的重新緩衝算法無需第三方工具,可以確定影響QoE的關鍵元素,包括以下內容:
- 重新緩衝—該算法詳細說明了客戶端已看到的重新緩衝次數,重新緩衝事件的持續時間以及重新緩衝與觀看影片流所花費時間的比率。
- 平均比特率—影片質量是影片比特率的函數。 較高的平均比特率意味着更好的影片質量,更清晰,更清晰的圖像,更豐富的顏色和更好的體驗。
- 波動率—觀衆傾向於對比特率的波動作出負面反應,傾向於使用恆定的比特率。 此度量決定視訊串流變更品質的次數。
- 質量分佈—這使我們能夠確定影片的哪個部分以給定客戶的質量提供。 例如,80%的服務是高質量的,10%是中等,10%是低。
工作原理
估計的重新緩衝算法如何只用兩條資訊來提供QoE如此有用的評估? 讓我們來看看。
自適應比特率(ABR)影片流包含許多單個影片塊或資產。 每個塊的大小固定,通常爲4秒。 例如,40秒ABR影片流有10塊(40/4=10塊)。
每個塊按順序命名,例如A1.ts,A2.ts,A3.ts…A10.ts, 等等。 第一個字母是質量類型。 在我們的情況下:A是最低的,B是高於A,C是高於B…,依此類推。 藉助這些知識,我們將瞭解每位客戶的請求並按順序進行檢查。 如果其質量發生變化,例如A1.ts,B2.ts,A3.ts, 我們將其添加到波動指標中。
由於我們知道客戶何時向我們請求塊以及每塊塊的時間(4秒),因此我們可以爲所有請求塊添加所有時間/持續時間。 如果我們看到之間的間隙,請求的間隙超過播放器在過去請求的塊數(即緩衝區中的影片),我們將其視爲重新緩衝區。 我們還考慮到當他們從CDN發出新的塊請求時,有多少緩衝影片客戶端會觀看。
此算法不只適用於 Verizon Media,現在是Edgio。 只要使用類似的文件命名約定,它就可以擴展到Edgio交付網路上的其他影片服務。
應用程式
有了QoE數據,我們可以通過多種方式改進QoE ,包括調試特定問題和識別性能不佳的網路。 一旦我們發現QoE問題,我們就可以輕鬆深入瞭解問題發生的原因。
當我們發現QoE質量較差時,我們可以查看每個數據中心的QoE指標,以確定哪些數據中心發現QoE質量較差。 一旦我們確定了數據中心,我們就可以深入瞭解是哪個網路導致了數據中心,找出原因並建議修復。 例如,一個解決方法可能是在下一個實況影片流期間不使用特定網路,如果該網路顯示容易出現故障。 通常,當我們遇到重新緩衝問題時,我們在活動開始前手動移動交通,爲新的交通騰出空間。 根據估計的重新緩衝算法數據,我們的流量管理團隊可以創建遊戲前緩衝區,以便在遊戲開始搶佔容量問題之前移動流量。
由於系統可以實時工作,我們可以在直播影片期間主動採取糾正措施 。 例如,這可能需要將流量從QoE質量較差的數據中心轉移到更健康的數據中心。 實時錯誤檢測和解決是一種非常有效的工具,可減少遇到重緩衝或其他問題的客戶端數量。
儘管消除可怕的旋轉輪可能永遠不可能,但伺服器端分析工具(如估計重緩衝算法)在使其外觀更少方面大有幫助。