《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > HTTPABR視頻傳輸質(zhì)量測量說明
HTTPABR視頻傳輸質(zhì)量測量說明
互聯(lián)網(wǎng)
摘要: HTTPABR(AdaptiveBitRate)是目前最熱門的OTT(Over-The-Top)傳輸技術(shù),典型的有AppleHLS(HTTPLiveStreaming)、MicrosoftSmoothStreaming、AdobeZeriStreaming和DASH(DynamicAdaptiveStreamingoverHTTP)。
Abstract:
Key words :

一、前言
 
HTTP ABR (Adaptive Bit Rate)是目前最熱門的OTT (Over-The-Top)傳輸技術(shù),典型的有Apple HLS (HTTP Live Streaming)、Microsoft Smooth Streaming、Adobe Zeri Streaming和DASH (Dynamic Adaptive Streaming over HTTP)。
 
HTTP ABR是以HTTP/TCP協(xié)議進(jìn)行無損傳輸,且會根據(jù)網(wǎng)絡(luò)帶寬自動調(diào)整視頻碼率的視頻技術(shù),與傳統(tǒng)的UDP承載或廣電廣播網(wǎng)絡(luò)承載的有損傳輸視頻業(yè)務(wù)有很大區(qū)別。在網(wǎng)絡(luò)性能變化,如路由器擁塞丟包時,傳統(tǒng)的MOS-V等圖像質(zhì)量指標(biāo)對于HTTP ABR卻保持不變,失去了指標(biāo)的意義。因此HTTP ABR業(yè)務(wù)需要全新的一套測量體系來進(jìn)行視頻傳輸質(zhì)量測量。Spirent針對該業(yè)務(wù)所設(shè)計的以AS Score為代表的一套指標(biāo)體系已成為該業(yè)務(wù)測量的新標(biāo)桿,并即將成為IETF標(biāo)準(zhǔn)。
 
二、為什么傳統(tǒng)的IPTV視頻質(zhì)量分析方法不適用于HTTP ABR業(yè)務(wù)?
 
有損傳輸?shù)囊曨l與HTTP ABR視頻對比
 
傳統(tǒng)的網(wǎng)絡(luò)視頻IPTV業(yè)務(wù)主要是基于UDP承載視頻流的,UDP承載的特點(diǎn)是實(shí)時性好,但出現(xiàn)丟包則不會重傳,抖動和時延過大的包會被丟棄,對視頻流而言是一種有損傳輸。所以當(dāng)網(wǎng)絡(luò)損傷出現(xiàn)時,解碼后視頻質(zhì)量會出現(xiàn)劣化,導(dǎo)致馬賽克、圖像模糊等問題,見下圖1。



  圖1、UDP承載視頻流出現(xiàn)馬賽克和圖像模糊
 
HTTP ABR視頻業(yè)務(wù)是基于TCP承載視頻流的,TCP承載的特點(diǎn)是可靠連接,無損傳輸。丟包后會進(jìn)行重傳,抖動和延時會被客戶端的下載緩沖所消化,一般情況下客戶不會感知。只有緩沖區(qū)的視頻播放完又沒有及時下載到新的視頻片段時,才會出現(xiàn)畫面等待并緩沖,見下圖2。


  
  圖2、TCP承載視頻流
 
傳統(tǒng)的網(wǎng)絡(luò)視頻質(zhì)量分析指標(biāo)是針對視頻畫面損傷時對視頻質(zhì)量評估的,而當(dāng)網(wǎng)絡(luò)性能劣化,例如有路由器出現(xiàn)擁塞導(dǎo)致丟包時,HTTP承載的視頻業(yè)務(wù)是不會丟失媒體包的,畫面質(zhì)量跟發(fā)送端是完全一致的,那原有的一些分析指標(biāo)是否還適用呢?
 
有損傳輸?shù)囊曨l質(zhì)量常用測量指標(biāo)是否適用HTTP ABR業(yè)務(wù)?
 
基于UDP的IPTV視頻業(yè)務(wù),或廣電廣播網(wǎng)絡(luò)的視頻業(yè)務(wù)常用于衡量視頻質(zhì)量的指標(biāo)常用有如下幾種,Spirent VQA視頻質(zhì)量測量方案均已支持:
 
MOS-V
 
MOS-V原本是指通過觀測者人眼觀察視頻質(zhì)量,進(jìn)行主觀1-5分的打分,參見ITU-T P.910(04/2008)。目前廣泛在視頻質(zhì)量測試中所使用的MOS-V指標(biāo),即通過算法分析客戶端所收到的視頻編碼、幀率、丟包分布、以及圖像組結(jié)構(gòu)等,通過算法換算得出等效于人眼主觀評價測量的MOS-V得分。
 
MOS-V適用于HTTP ABR業(yè)務(wù)嗎?
 
只適用于進(jìn)行實(shí)時視頻編碼階段,對于網(wǎng)絡(luò)傳輸則失去意義。
 
如前所分析的,ABR業(yè)務(wù)采用TCP無損傳輸,已編好碼的視頻流(如H.264碼流)進(jìn)入網(wǎng)絡(luò)(如CDN)后,發(fā)送端發(fā)出的媒體片段和接收端收到的片段是完全一致的。傳輸過程中TCP丟包會重傳,對于視頻流而言即不存在丟包,所以MOS算法所計算的丟包分布是無意義的。即在出現(xiàn)網(wǎng)絡(luò)層面的丟包時,對于TCP承載的視頻業(yè)務(wù)而言,MOS值是不會改變的。
 
所以MOS在ABR業(yè)務(wù)中,充其量只能適用于視頻發(fā)送前進(jìn)行視頻編碼的階段,即做初步的編碼器編碼質(zhì)量對比。
 
在某些特殊場合,在傳輸網(wǎng)絡(luò)中有實(shí)時視頻轉(zhuǎn)碼的網(wǎng)元情況下,MOS也可用于單獨(dú)衡量轉(zhuǎn)碼設(shè)備的編碼質(zhì)量。但對于HTTP ABR業(yè)務(wù)而言,本身就具備提供多種不同的碼率碼流,適應(yīng)不同的用戶情況,客戶端自動選擇下載碼率,在網(wǎng)絡(luò)上再做實(shí)時轉(zhuǎn)碼并不經(jīng)濟(jì),所以該場景在HTTP ABR業(yè)務(wù)中并不常見。
 
要特別指出的是,視頻傳輸質(zhì)量測量目的是以儀表模擬大量用戶訪問,衡量網(wǎng)絡(luò)在大流量情況下的服務(wù)質(zhì)量。而編碼質(zhì)量則取決于編碼算法,與用戶量或網(wǎng)絡(luò)狀態(tài)是無關(guān)的。例如VOD業(yè)務(wù),它是編碼軟件離線編碼后,把文件以非實(shí)時的方式送入網(wǎng)絡(luò)存儲(如CDN),再由網(wǎng)絡(luò)向用戶提供服務(wù)的。
 
關(guān)鍵是,對于運(yùn)營者最關(guān)心的傳輸網(wǎng)絡(luò)上各個網(wǎng)元的服務(wù)質(zhì)量,例如出現(xiàn)丟包、抖動、延時等,由于不存在視頻損傷,MOS指標(biāo)保持不變。即網(wǎng)絡(luò)質(zhì)量變化,用戶感知發(fā)生變化時,MOS指標(biāo)無法反應(yīng),失去了指標(biāo)的意義。
 
MDI
 
MDI:DF延遲因素指標(biāo),指示被測試視頻流的延遲和抖動狀況。DF單位是ms。DF將視頻流抖動的變化換算為對視頻傳輸和解碼設(shè)備緩沖的需求。
 
MDI:MLR媒體丟包率指標(biāo),網(wǎng)絡(luò)傳輸過程中每秒媒體包丟失數(shù),指示媒體包丟失情況。
 
MDI適用于HTTP ABR業(yè)務(wù)嗎?
 
完全不適用。
 
MDI:DF本意是為了指示對解碼設(shè)備緩沖的需求,特別是電視機(jī)頂盒的緩沖有限,緩沖時間通常是毫秒級的。而對于HTTP ABR業(yè)務(wù)而言解碼設(shè)備主要是PC和手機(jī)等智能終端,它是下載媒體片段的,終端本身就要求有容納大量文件的緩沖空間,緩沖時間起碼是分鐘級。MDI:DF指標(biāo)失去意義了。
而TCP的重傳機(jī)制本身保證了不會有媒體層面的丟包, MDI:MLR必然為0,失去意義。
 
VSTQ
 
視頻服務(wù)傳輸質(zhì)量指標(biāo)。伴隨MOS而出現(xiàn)的,重點(diǎn)關(guān)注網(wǎng)絡(luò)傳輸中的視頻質(zhì)量,對于TCP無損傳輸而言是不適用的。
 
另外還有PSNR峰值信噪比,也是同樣,不再累述。
 
I/B/P幀統(tǒng)計
 
本意是統(tǒng)計在網(wǎng)絡(luò)損傷下,視頻編碼的I/B/P幀分別的接收和丟失情況。同樣由于TCP的重傳機(jī)制,視頻編碼的I/B/P幀都是100%傳送,不會丟失,統(tǒng)計失去意義。
 
小結(jié)
 
傳統(tǒng)的視頻質(zhì)量分析是基于有損傳輸?shù)?,MOS等指標(biāo)本意是進(jìn)行初步的綜合的視頻質(zhì)量指示,以便做服務(wù)質(zhì)量對比,再進(jìn)一步做深入的指標(biāo)分析,例如分析媒體流損傷情況、網(wǎng)絡(luò)層丟包、抖動、延時等問題,最終找到影響用戶體驗的原因,并予以解決。
 
但由于HTTP ABR的特殊性,不存在圖像損傷,網(wǎng)絡(luò)丟包、抖動、延時等網(wǎng)絡(luò)問題都無法影響到MOS指標(biāo),而HTTP ABR業(yè)務(wù)中,由于網(wǎng)絡(luò)損傷而真正影響用戶體驗的主要問題,緩沖等待時間、等待次數(shù)、視頻碼率降低等都無法反應(yīng)出來。
 
那么HTTP ABR業(yè)務(wù)需要怎樣的視頻質(zhì)量測量體系呢?
 
三、需要怎樣的指標(biāo)體系來測量HTTP ABR業(yè)務(wù)?
 
HTTP ABR視頻傳輸質(zhì)量測量體系分為三個層面,Spirent測試方案對應(yīng)給出了測試的方法和指標(biāo):
 
用戶感知層面
 
Adaptive Streaming Score
 
Spirent提供了一個綜合評估用戶體驗的,專門針對HTTP ABR設(shè)計的指標(biāo)Adaptive Streaming (AS) score。AS score指示了有多少比例的用戶收到最高速率的碼流,并持續(xù)播放。AS score的范圍是0-100,極端情況下“0” 表示所有用戶都在最低碼率下, “100”表示所有用戶都在服務(wù)器能提供的最高碼率下。
 
該指標(biāo)綜合指示了用戶實(shí)際感知:碼率包含了分辨率、幀率、色階、清晰度等圖像細(xì)節(jié)信息,而持續(xù)播放與否也反應(yīng)了網(wǎng)絡(luò)和服務(wù)器原因?qū)е碌难舆t、丟包、抖動等傳輸情況。AS反應(yīng)了用戶在HTTP ABR業(yè)務(wù)中的 QoE。該指標(biāo)便于測試者作為測試分析的入口。也便于將不同的測試結(jié)果進(jìn)行對比。
 
在下圖的例子中,視頻被編碼成多個碼率,最低碼率是64K,最高碼率的1.5M。一開始用戶都集中在64K最低碼率,隨時間推移有更多用戶從低碼率跳到了高碼率的視頻,在播放一分鐘后,所有用戶都在使用1.5Mbps的碼率視頻,對應(yīng)的Adaptive Streaming Score也從0一直上升到了100。


 
圖3、Adaptive Streaming Score
 
媒體服務(wù)層面
 
Adaptive Streaming Buffering Wait Times
 
在線的HTTP ABR媒體流Buffer等待時間,Buffer等待時間是指在這個時間內(nèi)視頻處于圖像靜止的Loading狀態(tài)。
 
Adaptive Streaming Avg. Fragment Response & Download Time
 
媒體文件片段平均響應(yīng)時間(從發(fā)出GET到收到第一個數(shù)據(jù)字節(jié))和下載時間(收到第一個字節(jié)數(shù)據(jù)到最后一個字節(jié)數(shù)據(jù)),統(tǒng)計顯示兩個時間之和,并檢查該文件片段是屬于哪個視頻碼率段的,對該碼率段的所有響應(yīng)和下載時間取均值。該指標(biāo)是指示在某個碼率段中文件片段的響應(yīng)和下載時間。
 
Adaptive Streaming Active Video Channels
 
實(shí)時顯示在線的HTTP ABR媒體流在各個碼率段分布情況


 
圖4、HTTP ABR媒體流的碼率分布
 
Fragment Run Statistic
 
Abort Fragment Request下載文件片段中斷次數(shù)
 
Buffer Underrun Fragment用戶等待視頻下載才能播放的次數(shù),除了用戶剛發(fā)起新的視頻請求播放的之外,在播放過程中該指標(biāo)在網(wǎng)絡(luò)理想情況下應(yīng)為0,出現(xiàn)額外的Underrun則表示有卡頓。
 
Pre-Cached Fragment 預(yù)下載的文件片段數(shù)量
 
Bitrate Shift
 
碼率向上升速的次數(shù)Total Upshifts、碼率向下降速的次數(shù)Total Downshifts、碼率維持不變的次數(shù)Total Rate Maintaining
 
其他統(tǒng)計計數(shù)
  Sessions、Channels、Http Requests、Manifest Requests、Fragment Requests的計數(shù)統(tǒng)計
 
網(wǎng)絡(luò)層面
 
網(wǎng)絡(luò)流量、TCP連接統(tǒng)計、TCP SYN/ACK時間統(tǒng)計、Round Trip時間統(tǒng)計、TCP重傳超時統(tǒng)計、TCP收到第一個數(shù)據(jù)包的時間統(tǒng)計、估算服務(wù)器響應(yīng)時間統(tǒng)計、TCP Checksum fail、Bad header length、Bad data length、Duplicate、Out of sequence、Timeout統(tǒng)計等等網(wǎng)絡(luò)參數(shù),以分析網(wǎng)絡(luò)層面的抖動、時延、丟包、錯包等各種問題。
 
ABR Scores測量體系正在成為IETF標(biāo)準(zhǔn)
 
Spirent針對HTTP ABR業(yè)務(wù)所設(shè)計的整套ABR測量指標(biāo)體系是業(yè)界領(lǐng)先的測量體系,已成為該業(yè)務(wù)測量的新標(biāo)桿,并已提交IETF即將成為IETF標(biāo)準(zhǔn)。
 
注1:Spirent是The Internet Engineering Task Force (IETF 互聯(lián)網(wǎng)工程組)的重要成員,先后制定過很多如RFC 2544等測量領(lǐng)域重要的標(biāo)準(zhǔn)文檔。
 
ITU等標(biāo)準(zhǔn)組織現(xiàn)有的測量標(biāo)準(zhǔn)主要針對的是有損傳輸?shù)膽?yīng)用場景,目前還沒有針對HTTP ABR這種OTT Internet業(yè)務(wù)的已發(fā)布標(biāo)準(zhǔn)。
 
附錄A:HTTP ABR傳輸機(jī)制說明

 
圖8、HTTP ABR視頻分發(fā)機(jī)制
視頻源內(nèi)容經(jīng)編碼器編碼形成不同碼率的視頻文件,一個視頻文件包含了一串文件片段和對應(yīng)的列表。由客戶端根據(jù)下載的速率情況選擇下載什么碼率的視頻文件。以下以一個文件名為sample的視頻文件在Apple HTTP Live Streaming服務(wù)器上播放為例說明其碼率選擇機(jī)制。見圖9。

 
圖9、碼率選擇機(jī)制
 
客戶端向服務(wù)器發(fā)起GET請求獲取sample.m3u8文件列表,服務(wù)器回復(fù)200 OK并將文件列表發(fā)給客戶端。文件列表包含了sample視頻所能提供的幾種播放碼率。
 
客戶端根據(jù)自身設(shè)置的策略決定是先從最小碼率開始,還是從最大,或者從中間碼率開始獲取視頻。本例是設(shè)置了從最小碼率開始,于是客戶端向服務(wù)器請求64K碼率的文件列表。服務(wù)器回復(fù)64K碼率視頻的文件串列表。
 
客戶端根據(jù)收到的文件串列表請求獲取第1個文件片段TS文件。
 
到達(dá)一定的時間間隔后,客戶端自動計算第一個文件片段的下載速率,得知當(dāng)前下載速率較高,例如下載速率達(dá)到500Kbps,則根據(jù)第一次所獲取的碼率列表,改為向服務(wù)器請求256K的文件列表,服務(wù)器返回256K碼率視頻的文件串列表。
 
客戶端請求256K文件串列表中的第2個文件片段TS文件
 
再經(jīng)過一定時間間隔后,客戶端再次計算該文件片段的下載速率,并決定是否改變碼率。
 
注:客戶端參考的標(biāo)準(zhǔn)版本
• Microsoft IIS Smooth Streaming Client 1.1
• Apple HTTP Live Streaming draft-pantos-http-live-streaming-06, IETF
• Adobe Flash Video Specification 10.1

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。