国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于緩存補償?shù)囊曨l碼率自適應算法

2022-09-25 08:42吉愛國欒云哲
計算機應用 2022年9期
關鍵詞:閾值客戶端預估

吉愛國,欒云哲

(青島理工大學信息與控制工程學院,山東青島 266520)

0 引言

隨著互聯(lián)網(wǎng)技術的不斷發(fā)展,以音視頻為主的多媒體內(nèi)容在網(wǎng)絡傳輸流量中占據(jù)的比重越來越大。根據(jù)第44 次中國互聯(lián)網(wǎng)統(tǒng)計報告[1]顯示,目前音視頻類的流量占互聯(lián)網(wǎng)流量的比重已達到80%,思科公司的報告[2]指出,到2021 年全世界網(wǎng)絡流量將有80%為視頻流量。

采用超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)的流媒體傳輸技術,基于傳輸控制協(xié)議(Transmission Control Protocol,TCP),以其高可靠性、強防火墻穿透能力和系統(tǒng)配置簡單等特點,成為近年來流媒體傳輸?shù)闹髁骷夹g,面對用戶對高體驗質(zhì)量(Quality of Experience,QoE)的需求[3],基于HTTP 的動態(tài)自適應流(Dynamic Adaptive Streaming over HTTP,DASH)媒體技術作為一種有前途的解決方案,已經(jīng)受到視頻服務提供商和學術研究的重視[4]。

DASH 技術的核心在于部署在視頻客戶端的碼率自適應(Adaptive Bit-Rate)切換算法,通過定義良好的碼率自適應邏輯來提高視頻播放質(zhì)量,進而提高用戶QoE,因此,如何設計高效的碼率自適應算法成為DASH 技術的研究熱點。

目前碼率自適應算法的研究方向主要分為三大類:基于帶寬的碼率自適應算法、基于緩存的碼率自適應算法和基于帶寬和緩存混合控制的碼率自適應算法。

1)基于帶寬的碼率自適應算法[5-6]。如:文獻[5]中利用股市預測中的常用指標,異同移動平均(Moving Average Convergence and Divergence,MACD)線來預估下一時刻的可用帶寬并適配碼率;文獻[6]中通過“探測和適應”的機制預測客戶端TCP 吞吐量,根據(jù)預測結(jié)果選擇合適的碼率分片。

2)基于緩存的碼率自適應算法[7-8]。如:文獻[7]中通過對緩存區(qū)分級設置不同的倍增系數(shù),根據(jù)緩存占用率與歷史分片下載速率共同決定下一分片的下載碼率;文獻[8]中提出了一種基于模糊邏輯的碼率自適應算法,該算法將當前緩存時長與緩存變化差值進行模糊化處理后,利用模糊判決規(guī)則對處理后的數(shù)據(jù)進行分析,最后去模糊化決策出下一分片的碼率。以上兩類算法在進行碼率決策時考慮單一因素具有高效表現(xiàn),在網(wǎng)絡劇烈波動時,基于帶寬的碼率自適應算法對帶寬預估的準確度會下降,碼率可能會頻繁切換,影響視頻播放的流暢性,基于緩存的碼率自適應算法在網(wǎng)絡驟降時會大幅度消耗緩存資源,存在視頻播放中斷的風險。

3)基于帶寬和緩存混合控制的碼率自適應算法[9-14],在預估可用帶寬的基礎上,結(jié)合當前緩存區(qū)狀態(tài)聯(lián)合決策下一時刻的碼率等級。如:文獻[9]中取最近一段時間內(nèi)的分片下載速率均值和方差感知網(wǎng)絡變化,再觀察當前緩存時長決策下一分片的碼率等級;文獻[11]中采用狀態(tài)機的設計思想,通過檢測QoE 影響因素的數(shù)值變化,充分利用影響因素與各個碼率狀態(tài)間的聯(lián)系控制碼率切換;文獻[12]中優(yōu)先考慮客戶端緩存狀態(tài),再根據(jù)預估帶寬決策碼率是否切換;文獻[13]中提出一種基于DASH 標準的碼率平滑切換(Rate Smooth Switching,RSS)算法,根據(jù)最近幾個分片的下載速率定義帶寬偏移系數(shù)感知網(wǎng)絡變化方向,結(jié)合緩存區(qū)切換閾值來判定是否切換碼率;文獻[14]中提出一種動態(tài)自適應的HTTP 流碼率漸進切換(Dynamic Adaptive Step-wise Bitrate Switching,DASBS)算法,該算法先對最近幾個分片的下載速率采用指數(shù)加權方法預估帶寬,再依據(jù)帶寬波動程度和緩存時長對帶寬進行矯正,最大可矯正到預估帶寬的1.5 倍,在緩存時長充足的情況下可以請求到比當前帶寬高的碼率等級,有效提高了視頻的平均碼率。上述算法結(jié)合了帶寬和緩存聯(lián)合決策碼率切換,有效避免了視頻播放中斷現(xiàn)象,保證了視頻播放的流暢性;但碼率切換幅度較大,碼率切換平滑性較差,在部分網(wǎng)絡情況下,緩存時長會持續(xù)累積至最大值迫使碼率決策模塊采取“休眠”策略,降低了視頻的平均碼率和帶寬利用率,影響用戶QoE。

針對上述問題,本文提出了一種DASH 標準的基于緩存補償?shù)拇a率切換(Bitrate Adaptive Switching based on Buffer Compensation,BASBC)算法,通過在緩存區(qū)設置碼率上切閾值和碼率下切閾值,構造緩存累積-消耗的狀態(tài)循環(huán),避免發(fā)生緩存持續(xù)累積的情況,在保證視頻播放流暢性和平滑性的基礎上,利用冗余緩存延長視頻切片下載時間,調(diào)整碼率切換至更高等級,在緩存消耗至碼率下切閾值時,確保視頻能夠逐級切換至合適的碼率等級,充分利用緩存,提高帶寬利用率和視頻平均碼率,有效改善用戶觀看視頻的QoE。

1 碼率自適應切換算法

1.1 系統(tǒng)模型

DASH 技術的系統(tǒng)由視頻服務器與客戶端播放器組成,視頻原文件在視頻服務器經(jīng)編碼后得到多個碼率等級的視頻壓縮文件,這些壓縮文件又被分割為多個視頻分片,每段分片包含幾秒的視頻,可以保證多種碼率的視頻分片在時間線上相互對齊,使客戶端在切換碼率時可以平穩(wěn)進行。在視頻分片完成時,服務器還會生成一個用于描述這些視頻分片信息的媒體描述文件(Media Presentation Description,MPD),這個文件包含視頻分片的播放時長、碼率等級和視頻分片的統(tǒng)一資源定位符(Uniform Resource Locator,URL)等信息[15]。在客戶端接收到并解析MPD 文件后,會調(diào)用碼率自適應算法決策出合適的碼率分片并下載到本地進行播放,整個DASH 技術的系統(tǒng)架構如圖1 所示。

圖1 DASH技術的系統(tǒng)架構Fig.1 System architecture of DASH technology

1.2 算法目標

碼率自適應的目的是為了使客戶端在有限的網(wǎng)絡帶寬下、網(wǎng)絡波動頻繁的環(huán)境中選擇最佳碼率的視頻分片,通常較高的碼率意味著視頻經(jīng)編碼壓縮后的文件所占空間較大,意味著在客戶端可以解碼更多的比特來還原視頻的諸多細節(jié)。一般情況下,相同分辨率的視頻,其碼率越高,視頻清晰度也就越高,因此碼率可作為衡量視頻質(zhì)量高低的一個標準,客戶端播放的視頻分片,其碼率越高,用戶QoE 也就越好。除了視頻碼率外,還有其他一些影響用戶QoE 的因素,如視頻播放的卡頓次數(shù)和碼率切換的次數(shù)等,因此,提高視頻的播放質(zhì)量,最大化用戶QoE,可以從以下幾個方面入手:

1)盡可能提高視頻播放的平均碼率。

2)視頻播放過程中不能出現(xiàn)卡頓現(xiàn)象。

3)碼率切換次數(shù)要少,保證視頻播放的穩(wěn)定性。

4)碼率切換要實現(xiàn)逐級切換,避免出現(xiàn)碼率突然大幅下降的現(xiàn)象。

5)視頻啟動要迅速,最小化視頻啟動時延。

為了更好地實現(xiàn)這幾個目標,本文提出一種基于緩存補償碼率的自適應算法。

1.3 本文算法思想

首先,對DASH 技術的視頻傳輸過程進行分析。簡單來說,客戶端先向服務器請求MPD 文件并將之下載到本地解析和獲取服務器視頻分片的具體信息,再調(diào)用客戶端的碼率自適應算法決策出應請求的碼率等級。為保證用戶觀看視頻的流暢性,所請求視頻分片的碼率應始終低于客戶端的當前帶寬值,客戶端持續(xù)向服務器請求視頻分片直到緩存上溢,請求分片的碼率若持續(xù)低于客戶端帶寬值,緩存區(qū)將快速累積,為防止緩存上溢,部分算法采取“休眠”策略,等待緩存消耗再恢復請求。

視頻緩存累積是因為視頻分片的下載時間低于分片播放時長,隨著視頻播放,視頻緩存區(qū)有了足夠的緩存時長保證當前播放不會發(fā)生中斷,此時認為可以將請求分片的碼率調(diào)整到高于當前帶寬值的等級,也就是使視頻分片的下載時長大于視頻分片的播放時長,達到消耗緩存時長的目的,既能避免緩存區(qū)發(fā)生上溢,又可以提高視頻播放的平均碼率。只有客戶端網(wǎng)絡狀況良好、客戶端能穩(wěn)定請求碼率最高級別的視頻分片,且在緩存區(qū)即將上溢時,客戶端才被允許采取“休眠”策略來避免緩存區(qū)上溢。

本文算法在客戶端緩存區(qū)設置碼率上切閾值和碼率下切閾值,客戶端在初始階段采取快啟動策略,即從低向高逐級切換至當前帶寬值下的最高碼率等級,此過程緩存處于累積狀態(tài)。隨時間推移,視頻緩存時長將逐漸累積至碼率上切閾值,此時緩存進入消耗狀態(tài),碼率決策模塊將請求高于當前帶寬值的碼率等級,并維持到視頻緩存時長低于碼率下切閾值時,再逐級切換到低于當前帶寬值的最高碼率等級,使緩存再次進入累積狀態(tài)并向上切閾值運動,形成一個從下切閾值向上切閾值累積,再從上切閾值向下切閾值消耗的循環(huán),客戶端可充分利用緩存資源來提高視頻的播放質(zhì)量。傳輸速率恒定為6 Mb/s 時,本文算法的視頻碼率變化和客戶端緩存變化如圖2 所示。

圖2 恒定速率下的客戶端碼率緩存變化比較Fig.2 Comparison of client bitrate and cache changes at constant rate

在圖2 中,客戶端處于穩(wěn)定的網(wǎng)絡環(huán)境中:在初始階段,客戶端始終請求低于當前帶寬值的碼率等級;在一段時間后,視頻緩存時長累積至上切閾值,碼率決策模塊請求高于當前帶寬值的碼率級別;隨時間推移,緩存時長消耗至下切閾值以下,碼率決策模塊逐級切換碼率等級并重新累積緩存時長。

基于上述策略,進一步劃分客戶端緩存閾值,如圖3 所示,其中:qmin是保障視頻播放流暢性的最低閾值,低于這個閾值,客戶端請求最低碼率的視頻分片以快速累積緩存時長,避免視頻發(fā)生中斷,但由于請求的視頻碼率是最低等級,對用戶體驗質(zhì)量影響極差,因此,在視頻播放過程中應極力避免緩存時長低于這個值;qup是動態(tài)上切閾值,緩存時長累積至這個值后,客戶端將請求高于當前帶寬值的碼率等級,緩存進入消耗狀態(tài)并向動態(tài)下切閾值qdown運動,當緩存時長低于qdown時,碼率決策模塊將逐級切換至當前帶寬下的最高碼率,緩存再次進入累積狀態(tài)。緩存處于消耗狀態(tài)時,客戶端請求高碼率視頻分片的行為可看作是對前一個累積狀態(tài)時視頻碼率偏低的補償,能夠有效提高視頻播放的平均碼率,提高用戶QoE。

圖3 視頻緩存區(qū)閾值設置Fig.3 Video buffer threshold setting

客戶端網(wǎng)絡狀況不可能一直保持穩(wěn)定狀態(tài),在網(wǎng)絡帶寬頻繁波動的環(huán)境下,采用這種策略可能會因帶寬的突然下降而增加分片下載時間,導致緩存時長低于qmin,通過設計合理的碼率緩存閾值可以有效避免這種情況的發(fā)生。

1.4 本文算法設計

本文所提出的碼率自適應算法分為帶寬預估模塊和碼率決策模塊兩個主要模塊:帶寬預估模塊根據(jù)最近幾個已下載的視頻分片的下載速率預估下一時刻可用帶寬;碼率決策模塊依據(jù)帶寬預估值定義碼率動態(tài)切換閾值,根據(jù)視頻緩存時長和碼率動態(tài)切換閾值來決策是否進行碼率切換。

1)帶寬預估模塊。

在進行帶寬預估之前,先對帶寬可能發(fā)生的變化進行分析,在復雜網(wǎng)絡環(huán)境中,下一時刻帶寬變化不是上升就是下降,只是變化程度有高有低。

對于上升的網(wǎng)絡狀況,可以取最近M個分片的下載速率均值作為下一時刻的預估帶寬值,如式(1)所示:

其中:k為下一分片的下載序號,bk-i表示最近第i個分片的下載速率。為保證用戶觀看視頻不會發(fā)生中斷現(xiàn)象,自適應策略應對帶寬變化呈突然下降的情況敏感,因此設置一個波動系數(shù)θ感知帶寬衰減的程度,若衰減程度高則以當前分片的下載速率作為下一時刻的預估帶寬值,如式(2)所示:

其中:bk-1是當前分片的下載速率表示除去當前切片的最近M-1 個視頻分片的下載速率均值。若當前分片下載速率小于均值,并且當前分片下載速率小于bdown時,則說明帶寬衰減程度較大,以當前分片下載速率作為下一時刻的預估帶寬值;若當前分片下載速率處于與bdown之間,表明帶寬衰減程度不高,采用指數(shù)加權平均的方式來計算帶寬預估值。

首先計算最近M個視頻分片的權值,如式(3)所示:

其中:wk-i表示第k-i個下載分片的權重值,w是權重系數(shù)。從式(3)中可以看出,i取值越小,與當前分片序號越近的歷史分片所占權重值越大,下一時刻帶寬預估值為:

綜上所述,將下一時刻的帶寬預估值定義為:

2)碼率決策模塊。

碼率切換模塊是本文算法的設計重點。如1.3 節(jié)所述,本文算法嘗試在視頻播放過程中形成一種緩存狀態(tài)循環(huán),并在緩存區(qū)定義了兩個動態(tài)閾值(碼率上切閾值和碼率下切閾值)作為碼率切換的條件。除此之外,緩存區(qū)的狀態(tài)也被分為累積狀態(tài)和消耗狀態(tài),當緩存區(qū)處于累積狀態(tài)中,客戶端請求當前帶寬下的最高碼率,在此過程中,若客戶端帶寬下降,自適應策略不會立刻根據(jù)帶寬預估值調(diào)整碼率,而是觀察當前緩存時長是否低于下切閾值,只有當緩存時長低于下切閾值時,客戶端才會逐級切換至相應的碼率,這避免了客戶端因短暫的網(wǎng)絡波動而頻繁切換碼率,在一定程度上保障了視頻播放的穩(wěn)定性。

在定義碼率下切閾值之前,先對其進行分析,碼率下切閾值處在緩存區(qū)的最小閾值與上切閾值之間,其主要作用為保障客戶端可以逐級切換至帶寬預估值下的最高碼率,切換幅度可能是單級切換和多級切換,因此該值應隨切換幅度的增大而增大,假設tar是要切換到的碼率等級,cur是當前切片的碼率等級,以帶寬預估值逐級切換所用時間如式(6)所示:

在進行碼率下切的過程中,若為多級切換,則必須考慮帶寬呈逐漸下降的情況,若在切換途中帶寬下降程度加劇,所耗費的時間必將大于計算出的時長,為避免發(fā)生上述情況,定義一個參數(shù)α來動態(tài)調(diào)整碼率下切閾值的大小,碼率切換的幅度越大,耗費的時間越多,碼率上切閾值越高,α也就越大。α和碼率下切閾值的定義如式(7)所示:

其中:Rcur是當前請求的碼率,Rmax是最高碼率。碼率上切閾值應與當前請求分片的碼率等級有關:若當前請求的碼率等級較低,那么緩存上切閾值不宜太高;否則緩存累積時間變長。視頻請求至最后一個切片時,緩存區(qū)處于累積狀態(tài),緩存的視頻分片的碼率較低,降低視頻播放質(zhì)量,影響用戶QoE。碼率上切閾值的定義如式(8)所示:

其中:Bmax是緩存最大值,cur是當前請求的碼率等級,L是最高的碼率等級,β是用于調(diào)整上切閾值的參數(shù)。如此設計的碼率上切閾值可有效避免在視頻請求完成后,緩存區(qū)累積大量低碼率視頻的情況,可有效提高帶寬利用率,改善用戶體驗質(zhì)量,經(jīng)實驗發(fā)現(xiàn),β取0.85 時效果最好。

使用Bcurrent表示當前時刻客戶端的緩存時長,Rmin表示最低碼率,整個碼率自適應過程的算法描述如下:

2 仿真與結(jié)果分析

2.1 仿真環(huán)境和參數(shù)

本文基于Windows Server 2008 R2 Enterprise 搭建了一個IIS(Internet Information Services)服務器作為視頻服務器,使用python 語言編寫不同的碼率自適應算法并模擬客戶端請求視頻分片以及視頻播放的過程,分別對本文算法、RSS 算法[13]和DASBS 算法[14]進行比較。

實驗使用Big Buck Bunny(https://peach.blender.org/)作為視頻數(shù)據(jù)集,視頻時長共634 s,共159 個視頻分片,每個視頻分片時長為4 s,共有10 個碼率等級,分別為{200,400,600,800,1 000,1 500,2 500,4 000,8 000,12 000}(單位為kb/s),其中4 000、8 000、12 000 的等級分別對應為720P、1080P 和2160P,通過對國內(nèi)外視頻網(wǎng)站的觀察,發(fā)現(xiàn)它們的視頻碼率等級前后相差較大,主要原因在于分辨率的大小影響像素的數(shù)量,導致壓縮后的視頻文件大小相差也較大,因此基于這種特征來設置碼率集合??蛻舳司彺鏁r長設置為60 s,緩存區(qū)最小值qmin設置為8 s,波動系數(shù)θ設置為0.9,切片個數(shù)M設置為5,權重系數(shù)w設置為0.5,上切閾值調(diào)整系數(shù)β設置為0.85。

2.2 仿真結(jié)果分析

為測試本文算法、RSS 算法和DBSAS 算法的性能,本文設置了3 種網(wǎng)絡狀況:場景1 和場景2 分別設置帶寬為恒定的5 Mb/s 和7 Mb/s;場景3 設置帶寬呈階梯上升或下降的變化規(guī)律,帶寬變化從3 Mb/s 每隔100 s 增加2 Mb/s,帶寬變化至9 Mb/s 后,每隔100 s 下降2 Mb/s 直至5 Mb/s;場景4 設置帶寬被設定為從6 Mb/s 驟降至2 Mb/s,維持30 s 后再變化至6 Mb/s。

當模擬帶寬處于場景1 時,三種算法的運行情況如圖4所示,圖4(a)為選擇的分片碼率隨時間變化的曲線,圖4(b)為緩存時長隨時間變化的曲線。

圖4 場景1下三種算法的比較Fig.4 Comparison of three algorithms in scenario 1

如圖4(a)碼率變化曲線所示,在帶寬恒定為5 Mb/s 的情況下,本文BASBC 算法能夠間歇性地請求高于當前帶寬值的碼率等級,結(jié)合圖4(b)緩存時長變化曲線來看,當緩存時長累積至碼率上切閾值后,BASBC 算法調(diào)高要請求的碼率等級,消耗冗余的緩存時長,當緩存時長消耗至碼率下切閾值后,逐級降低碼率等級至當前帶寬值下的最高碼率,充分利用緩存資源,提高視頻平均碼率和帶寬利用率;RSS 算法和DASBS 算法在進行碼率決策時受到預估帶寬值的限制,在這種情況下無法請求更高一級碼率,緩存時長一直保持在最大值,未能充分利用緩存資源,具有較低的帶寬利用率。

當模擬帶寬處于場景2 時,三種算法的運行情況如圖5所示,在此場景中,帶寬被設定為7 Mb/s。如圖5(a)碼率變化曲線所示,三種算法都能夠請求比當前帶寬值高的碼率等級,RSS 算法雖然在切換次數(shù)上要優(yōu)于DASBS 算法,但會出現(xiàn)分片碼率大幅度下降至最低碼率的情況。結(jié)合圖5(b)緩存變化曲線來看,RSS 算法在初始階段逐步升高碼率,進入穩(wěn)定狀態(tài)后,緩存時長一直在被消耗,當消耗至緩存區(qū)最小閾值時,碼率等級驟降至最低碼率,再次逐步升高碼率并請求比當前帶寬值高的碼率等級,一段時間后再次驟降,周而復始;DASBS 算法依據(jù)當前帶寬預估值和緩存百分比設置動態(tài)上切閾值和動態(tài)下切閾值,但兩個閾值相差較小,碼率切換次數(shù)較多;BASBC 算法利用當前碼率等級設置碼率上切閾值,結(jié)合預估帶寬計算逐級切換至當前帶寬下最佳碼率所需的時間來設置碼率下切閾值,兩個閾值間相差較大,在提高帶寬利用率的同時減少碼率切換的次數(shù),提高視頻播放的穩(wěn)定性。

圖5 場景2下三種算法的比較Fig.5 Comparison of three algorithms in scenario 2

當模擬帶寬處于場景3 時,帶寬呈階梯上升或下降,3 種算法的運行情況如圖6 所示。碼率變化曲線如圖6(a)所示,BASBC 算法可以較快請求到高于當前帶寬值的碼率等級,但碼率切換次數(shù)多于DASBS 算法和RSS 算法;RSS 算法請求高于當前帶寬值的碼率等級的時刻最晚,但碼率切換次數(shù)最少,視頻播放穩(wěn)定性最好。結(jié)合圖6(b)緩存時長變化曲線來看,BASBC 算法的緩存時長始終在碼率上切閾值和碼率下切閾值之間循環(huán),而DASBS 算法和RSS 算法都有一段時間緩存達到上界,緩存利用得不夠充分,在這種情況下,BASBC算法的帶寬利用率以及平均碼率要高于DASBS 算法和RSS算法。

圖6 場景3下三種算法的比較Fig.6 Comparison of three algorithms in scenario 3

當帶寬處于場景4 時,如圖7 所示,客戶端在第150 s 和第360 s 時帶寬由6 Mb/s 驟降至2 Mb/s,此時,碼率自適應算法首先應保證視頻播放的連續(xù)性,即不應發(fā)生視頻中斷現(xiàn)象。其次,客戶端應能夠根據(jù)變化后的帶寬平滑地切換至最佳碼率,如圖7(a)和圖7(b)所示,BASBC 算法和DASBS 算法在進行碼率決策時都留有足夠的緩存時長來保證視頻播放的連續(xù)性,在此基礎上兩種算法都能實現(xiàn)逐級切換,且BASBC 算法請求低碼率分片的個數(shù)要少于DASBS 算法。如圖7(c)所示,RSS 算法在碼率驟降時碼率切換的跨度比較大,不能實現(xiàn)逐級切換,碼率切換的平滑性較差。

圖7 場景4下三種算法的比較Fig.7 Comparison of three algorithms in scenario 4

表1 顯示了三種自適應算法在四種場景中的平均碼率與碼率切換的次數(shù)。從表1 可以看出,BASBC 算法在4 種場景下的視頻平均碼率高于DASBS 算法,在場景1 和場景3中,BASBC 算法的碼率切換次數(shù)要多于DASBS 算法,是因為消耗冗余的緩存時長來提高視頻播放的平均碼率;在場景2和場景4 中,BASBC 算法與DASBS 算法都采用消耗冗余緩存時長以提高視頻播放的平均碼率的策略,但BASBC 算法的切換次數(shù)更少,視頻播放穩(wěn)定性較好。在場景2 和場景4 中,RSS 算法的平均碼率要高于BASBC 算法,但碼率切換的次數(shù)更多,切換的幅度更大,視頻播放的平滑性較差。

表1 不同帶寬情況下的仿真結(jié)果統(tǒng)計Tab.1 Statistics of simulation results under different bandwidths

3 結(jié)語

本文算法設計了一種利用緩存補償碼率的算法,在保障視頻播放不發(fā)生中斷的前提下,充分利用緩存資源。通過消耗客戶端請求低碼率分片時所累積的緩存資源來延長視頻分片的下載時間,使客戶端周期性地在一段時間內(nèi)播放高于當前帶寬值的碼率分片;同時以緩存閾值作為碼率切換的條件,在一定程度上避免了因短暫網(wǎng)絡波動而造成碼率頻繁切換,提高了視頻播放的穩(wěn)定性。實驗結(jié)果表明,本文算法可有效提高視頻播放的平均碼率,充分利用緩存,提高帶寬利用率,在帶寬突然下降時,也能夠逐級切換碼率等級,提升碼率切換的平滑性和穩(wěn)定性,更好地滿足用戶的QoE。然而本文算法假設所有視頻分片內(nèi)容對于用戶都有相同的觀看體驗,但實際上一個視頻中有部分視頻分片的內(nèi)容更豐富,提高這些視頻分片的碼率會有更好地用戶體驗質(zhì)量,未來在設計碼率自適應切換算法時需要將此因素考慮在內(nèi),從而進一步提高用戶QoE。

猜你喜歡
閾值客戶端預估
“人民網(wǎng)+客戶端”推出數(shù)據(jù)新聞
——穩(wěn)就業(yè)、惠民生,“數(shù)”讀十年成績單
非平穩(wěn)聲信號下的小波變換去噪方法研究
土石壩壩體失穩(wěn)破壞降水閾值的確定方法
非均勻光照下文本圖像分割算法研究
利用迭代軟閾值方法抑制恒時演化類核磁共振實驗中的采樣截斷偽峰
虛擬專用網(wǎng)絡訪問保護機制研究
新華社推出新版客戶端 打造移動互聯(lián)新聞旗艦
淺析IEEE 802.1x及其客戶端軟件