亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于PID控制器的動(dòng)態(tài)調(diào)整視頻碼率的方法與流程

文檔序號(hào):12493391閱讀:564來(lái)源:國(guó)知局
一種基于PID控制器的動(dòng)態(tài)調(diào)整視頻碼率的方法與流程

本發(fā)明流媒體技術(shù)領(lǐng)域,更具體地,涉及一種基于PID控制器的動(dòng)態(tài)調(diào)整視頻碼率的方法。



背景技術(shù):

近年來(lái),隨著高速數(shù)據(jù)網(wǎng)絡(luò)的發(fā)展以及智能終端設(shè)備的迅速普及,人們對(duì)流媒體的需求也不斷增長(zhǎng),這也導(dǎo)致流媒體在互聯(lián)網(wǎng)流量中的比重呈爆炸式增長(zhǎng),與之相對(duì)應(yīng)的流媒體技術(shù)引起了國(guó)內(nèi)外的高度重視和積極研究。傳統(tǒng)的流媒體技術(shù)(如RTP和RTSP)有各種各樣的弊端,如不支持現(xiàn)有的網(wǎng)絡(luò)基礎(chǔ)設(shè)施和無(wú)法通過(guò)防火墻等問(wèn)題,而HTTP漸進(jìn)式下載又會(huì)因?yàn)榫W(wǎng)絡(luò)帶寬波動(dòng)對(duì)用戶(hù)產(chǎn)生不好的用戶(hù)體驗(yàn)并且不支持直播?;贖TTP的動(dòng)態(tài)自適應(yīng)流媒體技術(shù)(DASH,Dynamic Adaptive Streaming over HTTP)克服了以上的缺點(diǎn),已經(jīng)逐漸成為主流的流媒體技術(shù)。

基于HTTP的實(shí)時(shí)流媒體協(xié)議現(xiàn)已成為移動(dòng)互聯(lián)網(wǎng)上多媒體業(yè)務(wù)的主流協(xié)議,目前在各移動(dòng)終端和服務(wù)廠(chǎng)商推出的自身產(chǎn)品和平臺(tái)相關(guān)的流媒體解決方案中,大部分都是基于HTTP協(xié)議實(shí)現(xiàn)的。其中較成熟的有蘋(píng)果公司的HLS(Apple HTTP Live Streaming),微軟公司的MSS(Microsoft Smooth Streaming)和Adobe公司的HDS(Adobe HTTP Dynamic Streaming)。上述三大商業(yè)流媒體解決方案都是將視頻編碼成多種碼率,將打包好的視頻文件進(jìn)行切片處理,然后用一個(gè)索引文件來(lái)描述視頻內(nèi)容。但它們之間互不兼容,只能播放遵循自己標(biāo)準(zhǔn)的媒體文件。

3GPP和MPEG總結(jié)三大商業(yè)系統(tǒng)的特點(diǎn),聯(lián)合提出的一種解決方案:MEPG-DASH。該協(xié)議綜合了現(xiàn)有主流移動(dòng)流媒體協(xié)議的基本構(gòu)架,對(duì)所有平臺(tái)提供了良好的兼容性。

圖1展示了DASH系統(tǒng)的架構(gòu)。整個(gè)系統(tǒng)由三個(gè)部分組成,包括媒體服務(wù)器(MediaServer)、緩存服務(wù)器(Cache Server)和客戶(hù)端(Client)。在媒體服務(wù)器里,視頻內(nèi)容被編碼成多種碼率,碼率高對(duì)應(yīng)的視頻清晰度也高,同時(shí)視頻被切成固定長(zhǎng)度的視頻片段??蛻?hù)端播放視頻時(shí),根據(jù)網(wǎng)絡(luò)狀況,通過(guò)HTTP協(xié)議向服務(wù)器請(qǐng)求相應(yīng)碼率的視頻切片,從而最大程度地利用網(wǎng)絡(luò)帶寬,并保證視頻播放流暢。用戶(hù)觀(guān)看過(guò)的視頻會(huì)在相應(yīng)的緩存服務(wù)器上備份,以備用戶(hù)再次觀(guān)看和與用戶(hù)相近的其他用戶(hù)觀(guān)看。在客戶(hù)端的流控制器是用來(lái)控制媒體內(nèi)容的請(qǐng)求過(guò)程。一個(gè)典型的控制器會(huì)先從原始媒體內(nèi)容服務(wù)器取得媒體內(nèi)容的基本信息,如媒體描述文件(MPD,Media Presentation Description),再根據(jù)網(wǎng)絡(luò)狀況、流媒體策略和設(shè)備的配置信息請(qǐng)求相應(yīng)碼率的視頻內(nèi)容。在此之后,視頻塊就會(huì)通過(guò)HTTP協(xié)議從服務(wù)器傳到并保存在客戶(hù)端的緩存中。

目前碼率的選取策略主要有以下兩種方式:基于帶寬預(yù)測(cè)的方法和基于緩存的方法?;趲掝A(yù)測(cè)的方法得到廣泛的研究和應(yīng)用,該方法是根據(jù)實(shí)時(shí)檢測(cè)用戶(hù)帶寬狀況,動(dòng)態(tài)調(diào)整視頻流的質(zhì)量。然而使用這種方法在有網(wǎng)絡(luò)資源競(jìng)爭(zhēng)的情況下服務(wù)器的性能會(huì)嚴(yán)重下降,降低了用戶(hù)體驗(yàn)。導(dǎo)致這種現(xiàn)象主要有兩個(gè)原因:一是帶寬預(yù)測(cè)是很難的并且是不準(zhǔn)確的;二是決定在瓶頸情況下有多少帶寬可利用是傳輸層TCP的職責(zé),而HTTP是屬于應(yīng)用層的協(xié)議?;谶@樣的原因,很多研究者就建議不要嘗試去預(yù)測(cè)用戶(hù)的帶寬使用情況,而是通過(guò)考慮客戶(hù)端的緩存狀態(tài)來(lái)動(dòng)態(tài)選取視頻的碼率。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明為解決以上基于帶寬預(yù)測(cè)碼率的方法預(yù)測(cè)準(zhǔn)確度低的缺陷,提供了一種基于PID控制器的動(dòng)態(tài)調(diào)整視頻碼率的方法,該方法利用PID控制器根據(jù)緩存狀態(tài)信息動(dòng)態(tài)地對(duì)視頻碼率進(jìn)行調(diào)整,使得播放系統(tǒng)能夠?qū)?fù)雜的網(wǎng)絡(luò)環(huán)境做出響應(yīng)并保持穩(wěn)定性,保證用戶(hù)具有良好的體驗(yàn)。

為實(shí)現(xiàn)以上發(fā)明目的,采用的技術(shù)方案是:

一種基于PID控制器的動(dòng)態(tài)調(diào)整視頻碼率的方法,包括以下步驟:

S1.對(duì)PID控制器比例單元、積分單元、微分單元的參數(shù)Kp、Ki和Kd進(jìn)行初始化,PID控制器的狀態(tài)轉(zhuǎn)移方程為:

S2.對(duì)于下載的第K塊視頻塊,其對(duì)應(yīng)的碼率通過(guò)下式計(jì)算獲得:

rk=Kp1(bk-bf)+C

其中k的初始值為1,bf表示緩存穩(wěn)定時(shí)緩存隊(duì)列的長(zhǎng)度,bk表示更新的下載第k塊視頻塊時(shí)緩存隊(duì)列的長(zhǎng)度,Kp1、C表示設(shè)定的常數(shù),常數(shù)Kp1和C滿(mǎn)足:

ck表示下載第k個(gè)視頻塊時(shí)網(wǎng)絡(luò)的平均帶寬,τ表示每個(gè)視頻塊的長(zhǎng)度;

S3.使用流近似來(lái)對(duì)緩存狀態(tài)的變化率進(jìn)行計(jì)算:

其中bk-1表示下載第k-1塊視頻塊時(shí)緩存隊(duì)列的長(zhǎng)度,tk、tk-1分別表示下載下載第k塊視頻塊、第k-1塊視頻塊的具體時(shí)刻;

S4.由上可知,rk、bt′滿(mǎn)足以下線(xiàn)性狀態(tài)方程組:

δ(rk)=rk-rf,其中rf表示當(dāng)緩存處于穩(wěn)定狀態(tài)時(shí)的視頻碼率;δ(·)表示差分運(yùn)算;

因此狀態(tài)轉(zhuǎn)移方程為:

S5.將步驟S4的狀態(tài)轉(zhuǎn)移方程應(yīng)用到PID控制器的狀態(tài)轉(zhuǎn)移方程中,得:

S6.根據(jù)PID控制器的特性,視頻碼率的調(diào)整表示為:

因此,rk=Q(δ(rk)+rf);其中Q(·)表示量化算子;

S7.令k=k+1,然后重復(fù)執(zhí)行步驟S2~S6。

優(yōu)選地,所述步驟S2中,更新bk的過(guò)程表示如下:

其中Δtk-1表示緩存存滿(mǎn)的時(shí)候,暫停下載視頻塊的時(shí)間,Bmax表示緩存的最大容量。

與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:

(1)本發(fā)明提供的方法利用PID控制器根據(jù)緩存狀態(tài)信息動(dòng)態(tài)地對(duì)視頻碼率進(jìn)行調(diào)整,使得播放系統(tǒng)能夠?qū)?fù)雜的網(wǎng)絡(luò)環(huán)境做出響應(yīng)并保持穩(wěn)定性,保證用戶(hù)具有良好的體驗(yàn)。

(2)本發(fā)明提供的方法在更新緩存隊(duì)列時(shí),若緩存存滿(mǎn),則暫停下載視頻塊,防止緩存隊(duì)列溢出。

附圖說(shuō)明

圖1為DASH系統(tǒng)架構(gòu)示意圖。

圖2為本發(fā)明提供的方法的流程圖。

圖3為PID控制器的結(jié)構(gòu)示意圖。

圖4為線(xiàn)性系統(tǒng)的框圖。

具體實(shí)施方式

附圖僅用于示例性說(shuō)明,不能理解為對(duì)本專(zhuān)利的限制;

以下結(jié)合附圖和實(shí)施例對(duì)本發(fā)明做進(jìn)一步的闡述。

實(shí)施例1

如圖2所示,本發(fā)明提供的基于PID控制器的動(dòng)態(tài)調(diào)整視頻碼率的方法,包括以下步驟:

第一步、對(duì)PID控制器比例單元、積分單元、微分單元的參數(shù)Kp、Ki和Kd進(jìn)行初始化,如圖3所示,PID控制器的狀態(tài)轉(zhuǎn)移方程為:

第二步、對(duì)于下載的第k塊視頻塊,其對(duì)應(yīng)的碼率通過(guò)下式計(jì)算獲得:

rk=Kp1(bk-bf)+C

其中k的初始值為1,bf表示緩存穩(wěn)定時(shí)緩存隊(duì)列的長(zhǎng)度,bk表示更新的下載第k塊視頻塊時(shí)緩存隊(duì)列的長(zhǎng)度,Kp1、C表示設(shè)定的常數(shù),常數(shù)Kp1和C滿(mǎn)足:

第三步、使用流近似來(lái)對(duì)緩存狀態(tài)的變化率進(jìn)行計(jì)算:

其中bk-1表示下載第k-1塊視頻塊時(shí)緩存隊(duì)列的長(zhǎng)度,tk、tk-1分別表示下載下載第k塊視頻塊、第k-1塊視頻塊的具體時(shí)刻;

第四步、由上可知,如圖4所示,rk、bk滿(mǎn)足以下線(xiàn)性狀態(tài)方程組:

因此狀態(tài)轉(zhuǎn)移方程為:

第五步、將第四步的狀態(tài)轉(zhuǎn)移方程應(yīng)用到PID控制器的狀態(tài)轉(zhuǎn)移方程中,得:

第六步、根據(jù)PID控制器的特性,視頻碼率的調(diào)整表示為:

因此,rk=Q(δ(rk)+rf);其中Q(·)表示量化算子;

第七步、令k=k+1,然后重復(fù)執(zhí)行步驟第二步~第六步。

優(yōu)選地,所述第二步中,更新bk的過(guò)程表示如下:

其中Δtk-1表示緩存存滿(mǎn)的時(shí)候,暫停下載視頻塊的時(shí)間,Bmax表示緩存的最大容量。

上述方法的偽代碼如下:

輸入:

PID控制模型參數(shù):Kp,Ki,Kd

緩存的平穩(wěn)狀態(tài):bf

初始視頻碼率和緩存狀態(tài):v0,b0

碼率選擇系數(shù):Kp1

輸出:

所要獲取的視頻塊的碼率。

1、初始化步驟:t←0,b(0)←0,r←r0;

2、for i←1 to N:

3、下載碼率為ri-1第i-1個(gè)視頻塊,等待其下載完成;

4、更新緩存狀態(tài)

5、計(jì)算

6、計(jì)算rk=Q(δ(rk)+rf);

end for

顯然,本發(fā)明的上述實(shí)施例僅僅是為清楚地說(shuō)明本發(fā)明所作的舉例,而并非是對(duì)本發(fā)明的實(shí)施方式的限定。對(duì)于所屬領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在上述說(shuō)明的基礎(chǔ)上還可以做出其它不同形式的變化或變動(dòng)。這里無(wú)需也無(wú)法對(duì)所有的實(shí)施方式予以窮舉。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明權(quán)利要求的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1