一種視頻緩沖的控制方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種視頻緩沖的控制方法,包括以下步驟:收到緩沖視頻流的請求時,判斷是否有流緩沖池處于空閑狀態(tài),如果有,則申請一個空閑的流緩沖池用于緩沖視頻流,如果沒有,則拒絕緩沖;根據(jù)緩沖視頻流大小或緩沖時間長短控制緩沖視頻流的播放。本發(fā)明還提供了相應(yīng)的控制系統(tǒng)。本發(fā)明主要通過按緩沖大小播放和按緩沖時間長短播放兩種策略管理視頻緩沖,使緩沖不需要占用額外流量,緩解和放大有限的帶寬,提高了用戶的訪問速度。
【專利說明】一種視頻緩沖的控制方法和系統(tǒng)
[0001]本發(fā)明請求本 申請人:于2013年5月2日向中國國家知識產(chǎn)權(quán)局提交的申請?zhí)枮镃N201310158185.4,發(fā)明名稱為“一種視頻緩沖的控制方法和系統(tǒng)”的中國發(fā)明專利申請的優(yōu)先權(quán),上述申請的全部內(nèi)容以引用方式并入本文。
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及數(shù)字電視【技術(shù)領(lǐng)域】,更具體地,涉及一種視頻緩沖的控制方法和系統(tǒng)?!颈尘凹夹g(shù)】
[0003]當(dāng)TV用戶觀看點播視頻時,通常實現(xiàn)的是一邊下載一邊播放,即加載緩沖技術(shù)。在該現(xiàn)有技術(shù)中,將服務(wù)器上的視頻文件拆分成多個視頻分段;根據(jù)客戶端的請求,加載相應(yīng)的視頻分段到客戶端;周期性檢測客戶端剩余可插放文件時長;根據(jù)剩余可播放文件時長和預(yù)設(shè)值的比較結(jié)果,執(zhí)行對應(yīng)的加載緩沖策略,這些策略包括:在剩余可播放文件時長過少時的全速加載緩沖;在剩余可播放文件時長過多時的停止加載;以及在剩余可播放文件時長介于以上兩者之間時的按照播放速率加載。
[0004]但是,如今TV視頻已從原來的標(biāo)清格式向高清甚至超清方向邁進,其占用的帶寬流量越來越大,往后所吞食帶寬的能力也越來越強?,F(xiàn)有的單流加載緩沖及管理策略仍然不能滿足用戶對緩沖視頻的需求。因此,需要對緩沖視頻流進行科學(xué)有效的管理,從而節(jié)約下載帶寬,提高訪問速度。
【發(fā)明內(nèi)容】
[0005]為了對視頻流緩沖進行科學(xué)有效的控制和管理,本發(fā)明提供了一種視頻緩沖的控制方法和系統(tǒng),主要采用了一種多流緩沖的方式,同時對至少兩個視頻流實行加載緩沖,從而用戶從一個視頻流切換到另一個視頻流觀看時不需要等待,加快了訪問速度。并且,對每個緩沖加載中的視頻流可以通過按緩沖大小播放和按緩沖時間播放兩種策略管理視頻緩沖,使緩沖不需要占用額外流量,緩解和放大有限的帶寬,提高了用戶的訪問速度。
[0006]本發(fā)明所提供的視頻緩沖的控制方法,包括以下步驟:
步驟1,收到緩沖視頻流的請求時,判斷是否有流緩沖池處于空閑狀態(tài),如果有,則申請一個空閑的流緩沖池用于緩沖視頻流,如果沒有,則拒絕緩沖;
步驟2,根據(jù)緩沖視頻流大小或緩沖時間長短控制播放緩沖的視頻流。
[0007]優(yōu)選地,在所述步驟I之前還包括預(yù)先設(shè)置至少2個空閑的流緩沖池的步驟;以及 在步驟I中,每隔特定時間響應(yīng)所述緩沖視頻流的請求,將所述請求插入相應(yīng)視頻流
的等待隊列中,當(dāng)調(diào)度時間到達時,根據(jù)等待隊列中的請求申請空閑的流緩沖池。
[0008]更為優(yōu)選地,在步驟2中,所述根據(jù)緩沖視頻流大小控制緩沖視頻流的播放包括:判斷緩沖視頻流的大小是否達到預(yù)定的第一百分比閾值,如果達到則開始播放視頻流。
[0009]可選地,步驟2中,所述根據(jù)緩沖視頻流大小控制緩沖視頻流的播放還包括:在開始播放視頻流之后,判斷播放速度是否大于緩沖速度,如果不大于緩沖速度則繼續(xù)播放;如果大于緩沖速度,則判斷緩沖視頻流的大小是否小于第二百分比閾值;如果不小于第二百分比閾值則繼續(xù)播放,否則暫停播放。
[0010]進一步,步驟2中,所述根據(jù)緩沖時間長短控制緩沖視頻流的播放包括:判斷緩沖視頻流時長是否達到預(yù)定的第一時長閾值,如果達到則開始播放視頻流。
[0011]本發(fā)明還提供了一種視頻緩沖的控制系統(tǒng),包括:
緩沖管理器,用于在收到緩沖視頻流的請求時,判斷是否具有空閑的流緩沖池,如果有則申請一個空閑的流緩沖池用于緩沖視頻流;如果沒有則拒絕緩沖;
播放控制模塊,用于根據(jù)緩沖視頻流大小或緩沖時間長短控制緩沖視頻流的播放。
[0012]優(yōu)選地,所述流緩沖池用于緩沖視頻流,控制系統(tǒng)中預(yù)先設(shè)置的空閑的流緩沖池的數(shù)量大于等于2 ;
進一步,所述控制系統(tǒng)還包括:視頻請求模塊,用于每隔特定時間響應(yīng)所述緩沖視頻流的請求,將所述請求插入相應(yīng)視頻流的等待隊列中,當(dāng)調(diào)度時間到達時,根據(jù)等待隊列中的請求向所述緩沖管理器申請空閑的流緩沖池。
[0013]非限制性地,所述播放控制模塊用于判斷緩沖視頻流的大小是否達到預(yù)定的第一百分比閾值,如果達到則開始播放視頻流。
[0014]更進一步,所述播放控制模塊用于判斷播放速度是否大于緩沖速度,如果不大于緩沖速度則繼續(xù)播放;如果大于緩沖速度,則判斷緩沖視頻流的大小是否小于第二百分比閾值;如果不小于第二百分比閾值則繼續(xù)播放,否則暫停播放。
[0015]在另一個實施方式中,所述播放控制模塊用于判斷緩沖視頻流時長是否達到預(yù)定的第一時長閾值,如果達到則開始播放視頻流。
[0016]可見,本發(fā)明建立了并行的多視頻流緩沖和管理方式,通過多個流緩沖池的緩沖,將視頻內(nèi)容緩存到本地,并且不需要占用額外的流量,后續(xù)TV用戶訪問該資源時,直接從本地讀取,這樣既提高了用戶的訪問速度,又緩解和放大了有限的帶寬。本發(fā)明還實現(xiàn)了兩種視頻緩沖控制策略,提高了用戶體驗。
【專利附圖】
【附圖說明】
[0017]下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進一步詳細的說明:
圖1是按照本發(fā)明的第一優(yōu)選實施例的流程示意圖;
圖2是按照本發(fā)明的第一優(yōu)選實施例的緩沖視頻流播放控制流程圖;
圖3是按照本發(fā)明的第一優(yōu)選實施例的緩沖控制流程圖;
圖4是按照本發(fā)明的第二優(yōu)選實施例的緩沖控制流程圖;
圖5是按照本發(fā)明的第三優(yōu)選實施例的一種視頻緩沖的控制系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實施方式】
[0018]為了使本【技術(shù)領(lǐng)域】的人員更好地理解本發(fā)明的技術(shù)方案,并使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合實施例及實施例附圖對本發(fā)明作進一步詳細的說明。
[0019]第一優(yōu)選實施例
在本發(fā)明的第一優(yōu)選實施例中,示意了本發(fā)明的控制方法及控制系統(tǒng),本發(fā)明可在數(shù)字電視機頂盒等終端設(shè)備上實現(xiàn)。
[0020]本發(fā)明在終端設(shè)備中預(yù)先設(shè)置至少兩個流緩沖池,每個流緩沖池用于緩沖所下載的視頻流。設(shè)置流緩沖池包括在終端設(shè)備上設(shè)立與每個流緩沖池相應(yīng)的緩沖存儲區(qū),并且為每個流緩沖池分配相應(yīng)的流媒體下載資源。分配流媒體下載資源包括為每個流緩沖池建立流媒體傳輸端口,并為每個端口分配一定的網(wǎng)絡(luò)傳輸帶寬。為每個端口所分配的傳輸帶寬可根據(jù)實際需要進行動態(tài)調(diào)整。
[0021]如圖1的流程圖所示,當(dāng)用戶通過TV端的點播服務(wù)申請下載緩沖一個視頻流時,緩沖管理器在步驟101收到緩沖視頻流的請求時,在步驟102判斷空閑流緩沖池的數(shù)量是否為零,如果不為零則在步驟103申請一個空閑的流緩沖池用于緩沖該視頻流。在申請到流緩沖池后,會在相應(yīng)的緩沖存儲區(qū)內(nèi)創(chuàng)建臨時媒體文件,并通過所述流媒體傳輸端口接收服務(wù)器發(fā)來的媒體數(shù)據(jù)并寫入臨時媒體文件。相反,如果步驟102中判斷空閑流緩沖池的數(shù)量為零,則提示系統(tǒng)資源不足,并在步驟105中,拒絕緩沖視頻流的請求。
[0022]對于步驟105中被拒絕的緩沖視頻流的請求,由視頻請求模塊將其插入一個等待隊列當(dāng)中。每隔特定時間視頻請求模塊響應(yīng)插入等待隊列的所述緩沖視頻流的請求,而執(zhí)行調(diào)度操作,判斷是否達到該請求相應(yīng)的調(diào)度時間;如果調(diào)度時間未到,則將所述請求繼續(xù)插入相應(yīng)視頻流的等待隊列中,當(dāng)調(diào)度時間到達時,視頻請求模塊查詢所述等待隊列,根據(jù)等待隊列中的請求申請空閑的流緩沖池來提供緩沖服務(wù)。對調(diào)度時間是否到達的判斷可根據(jù)各種應(yīng)用場景而靈活設(shè)置。例如,由于視頻流緩沖完畢或者是用戶終止某一視頻流的緩沖而使某一個流緩沖池被釋放出來,則判斷到達調(diào)度時間,而將等待隊列中的下一個請求提取出來并分配至該流緩沖池,開始對該請求相應(yīng)的視頻流進行緩沖。或者,可以采用分時輪流緩沖的機制,設(shè)置每個請求的緩沖池占用時長,當(dāng)該占用時長耗盡后,則釋放相應(yīng)流緩沖池用于其它請求的緩沖,如果此時占用時長耗盡的請求所需緩沖的視頻流仍未緩沖完成,則將該請求重新加入隊列,開始下一輪的排隊。
[0023]流媒體緩沖技術(shù)的主要優(yōu)勢在于其可以實現(xiàn)一邊緩沖一邊播放,同樣,在本發(fā)明的步驟104中可控制緩沖視頻流的播放。
[0024]在利用流緩沖池緩沖和播放視頻流的過程中,控制系統(tǒng)的播放控制模塊可根據(jù)緩沖視頻流大小或緩沖時間大小控制緩沖視頻流的播放。圖2是緩沖視頻流播放控制流程圖,在步驟201中開始執(zhí)行TV視頻的緩沖,并且通過步驟202和步驟207分別示出了按緩沖視頻流大小和緩沖時間長短播放的兩種策略。
[0025]如圖2所示,如果如步驟202所示采用緩沖大小策略,在接下來的步驟203中判斷機頂盒端緩沖視頻流的大小是否達到預(yù)定的第一百分比閾值a%,如果達到,則開始播放視頻流。為了保證流媒體緩沖區(qū)具有足夠的容量,一般會在流媒體緩沖區(qū)預(yù)留出與完整的視頻流預(yù)定大小相同的存儲空間,因此緩沖視頻流的大小可以通過臨時媒體文件的實際大小與其預(yù)定大小的比例進行估算。而在另外的方式中,可以不考慮完整視頻流的預(yù)定大小,而只判斷臨時媒體文件的實際大小是否超過了預(yù)定的量值,例如是否超過了一定的比特數(shù)量。進而,播放控制模塊在步驟204判斷播放速度X與緩沖速度y的關(guān)系,如果x〈y,則在步驟205繼續(xù)播放;如果x>y,則在步驟206判斷機頂盒端未播放的緩沖視頻流大小是否小于第二百分比閾值b%;該判斷可以用根據(jù)已緩沖且未播放的緩沖視頻流數(shù)據(jù)量與上述預(yù)定大小的比例進行計算;在其它的方式中,也可以單純根據(jù)已緩沖且未播放的緩沖視頻流數(shù)據(jù)量進行判斷。如果不小于第二百分比閾值&%則繼續(xù)播放,否則暫停播放,返回步驟203 ;直至機頂盒端緩沖的視頻流再次滿足開始播放的條件,即達到預(yù)定的第一百分比閾值a%。
[0026]如果采用步驟207所示的緩沖時間長短策略,則在步驟208判斷機頂盒端緩沖視頻流時長是否達到預(yù)定的第一時長閾值tls,如果達到則開始播放視頻流;并且進而在步驟209判斷播放速度X與緩沖速度I之關(guān)系,如果x〈y則在步驟210繼續(xù)播放;如果x>y,則在步驟211判斷機頂盒端緩沖視頻流時長是否小于第二時長閾值t2s ;如果不小于第二時長閾值t2s則繼續(xù)播放,否則暫停播放;返回步驟208,直至機頂盒端緩沖的視頻流再次滿足開始播放的條件,即達到預(yù)定的第一時長閾值tls。
[0027]由于本發(fā)明采用了多流緩沖技術(shù),因此,當(dāng)用戶當(dāng)前正在播放的緩沖視頻流的緩沖視頻流大小或緩沖時長達到上述暫停播放的條件而被暫停播放時,為了改善用戶在等待緩沖期間的體驗,播放控制模塊可以自動或經(jīng)用戶確認后切換切換為播放另一個緩沖視頻流,直到所述被暫停播放的視頻流的緩沖數(shù)據(jù)量重新達到播放條件。
[0028]對于至少兩個并行緩沖加載的視頻流,可根據(jù)當(dāng)前播放的緩沖視頻流的播放速度與緩沖速度的關(guān)系,調(diào)節(jié)其它緩沖視頻流的緩沖狀態(tài),從而在多個并行的緩沖視頻流中優(yōu)先保障當(dāng)前播放視頻流的加載。因為當(dāng)前播放的視頻流一般是用戶最希望觀看的節(jié)目,在數(shù)據(jù)緩沖中應(yīng)該享有最高的優(yōu)先級。具體的調(diào)節(jié)方式在下面詳細介紹。
[0029]本優(yōu)選實施例的緩沖控制流程如圖3所示。步驟301中,播放控制模塊判斷當(dāng)前正在播放的緩沖視頻流的播放速度X與緩沖速度I的關(guān)系:當(dāng)x〈y時,如步驟302所示,其它的緩沖視頻流均正常加載緩沖數(shù)據(jù);當(dāng)x>y的情況下,如步驟303所示,緩沖控制器控制當(dāng)前播放的緩沖視頻流以外的其它緩沖視頻流暫停緩沖,從而停止其它端口的緩沖數(shù)據(jù)下載,而將全部的傳輸帶寬用于緩沖當(dāng)前正在播放的視頻流,這樣將節(jié)約帶寬等系統(tǒng)資源,使正在播放的緩沖視頻流的緩沖速度加快。
[0030]本第二優(yōu)選實施例采用與第一優(yōu)選實施例相同的多流并行緩沖技術(shù),其流程如圖1所示,通過設(shè)置至少兩個流緩沖池并行地緩沖所下載的視頻流。本優(yōu)選實施例的播放控制策略與第一優(yōu)選實施例相同,參見圖2所示流程圖,同樣可采用基于緩沖視頻流大小或緩沖時間長短的播放控制方式。
[0031]本第二優(yōu)選實施例的改進之處在于,對于至少兩個并行緩沖加載的視頻流,可根據(jù)當(dāng)前播放的緩沖視頻流的允許播放情況,調(diào)節(jié)其它緩沖視頻流的緩沖狀態(tài),從而在多個并行的緩沖視頻流中優(yōu)先保障當(dāng)前播放視頻流的加載。第二優(yōu)選實施例的緩沖控制流程如圖4所示。在步驟401中,播放控制模塊判斷當(dāng)前正在播放的緩沖視頻流是否達到暫停播放的條件,在當(dāng)前正在播放的視頻流未暫停播放的情況下,如步驟402所示,其它緩沖視頻流也正常加載;而在正在播放的視頻流已經(jīng)暫停播放的情況下,所述緩沖管理器在步驟403中控制其它緩沖視頻流暫停緩沖,從而停止其它端口的緩沖數(shù)據(jù)下載,而將全部的傳輸帶寬用于緩沖當(dāng)前正在播放的視頻流。同樣,由于節(jié)約了帶寬等系統(tǒng)資源,使被暫停播放的緩沖視頻流的緩沖速度加快,有利于其及早達到恢復(fù)播放的要求。
[0032]可見,本發(fā)明建立了并行的視頻流緩沖和管理方式,通過多個流緩沖池的緩沖,將視頻內(nèi)容緩存到本地,并且不需要占用額外的流量,后續(xù)TV用戶訪問該資源時,直接從本地讀取,這樣既提高了用戶的訪問速度,又緩解和放大了有限的帶寬。本發(fā)明還實現(xiàn)了兩種視頻緩沖控制策略,提高了用戶體驗。[0033]第三優(yōu)選實施例
為了實現(xiàn)本申請的方法,本申請還公開了一種視頻緩沖的控制系統(tǒng),如圖5所示,所述系統(tǒng)具體包括:
緩沖管理器,用于在收到緩沖視頻流的請求時,判斷是否具有空閑的流緩沖池,如果有則申請一個空閑的流緩沖池用于緩沖視頻流;如果沒有則拒絕緩沖;
播放控制模塊,用于根據(jù)緩沖視頻流大小或緩沖時間長短控制緩沖視頻流的播放。
[0034]優(yōu)選地,所述播放控制模塊用于判斷緩沖視頻流時長是否達到預(yù)定的第一時長閾值,如果達到則開始播放視頻流。
[0035]優(yōu)選地,所述流緩沖池用于緩沖視頻流,控制系統(tǒng)中預(yù)先設(shè)置的空閑的流緩沖池的數(shù)量大于等于2 ;
進一步,所述控制系統(tǒng)還包括:視頻請求模塊,用于每隔特定時間響應(yīng)所述緩沖視頻流的請求,將所述請求插入相應(yīng)視頻流的等待隊列中,當(dāng)調(diào)度時間到達時,根據(jù)等待隊列中的請求向所述緩沖管理器申請空閑的流緩沖池。
[0036]非限制性地,所述播放控制模塊用于判斷緩沖視頻流的大小是否達到預(yù)定的第一百分比閾值,如果達到則開始播放視頻流。
[0037]非限制性地,所述播放控制模塊用于判斷播放速度是否大于緩沖速度,如果不大于緩沖速度則繼續(xù)播放;如果大于緩沖速度,則判斷緩沖視頻流的大小是否小于第二百分比閾值;如果不小于第二百分比閾值則繼續(xù)播放,否則暫停播放。
[0038]以上所述,僅為本發(fā)明的【具體實施方式】,本發(fā)明還可以應(yīng)用在其它設(shè)備中;以上描述中的尺寸和數(shù)量均僅為參考性的,本領(lǐng)域技術(shù)人員可根據(jù)實際需要選擇適當(dāng)?shù)膽?yīng)用尺寸,而不脫離本發(fā)明的范圍。本發(fā)明的保護范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求所界定的保護范圍為準(zhǔn)。
【權(quán)利要求】
1.一種視頻緩沖的控制方法,包括以下步驟: 步驟1,收到緩沖視頻流的請求時,判斷是否有流緩沖池處于空閑狀態(tài),如果有,則申請一個空閑的流緩沖池用于緩沖視頻流,如果沒有,則拒絕緩沖; 步驟2,根據(jù)緩沖視頻流大小或緩沖時間長短控制播放緩沖的視頻流。
2.根據(jù)權(quán)利要求1所述的控制方法,其特征在于,在所述步驟I之前還包括預(yù)先設(shè)置至少2個空閑的流緩沖池的步驟;以及 在步驟I中,每隔特定時間響應(yīng)所述緩沖視頻流的請求,將所述請求插入相應(yīng)視頻流的等待隊列中,當(dāng)調(diào)度時間到達時,根據(jù)等待隊列中的請求申請空閑的流緩沖池。
3.根據(jù)權(quán)利要求1所述的控制方法,其特征在于,在步驟2中,所述根據(jù)緩沖視頻流大小控制緩沖視頻流的播放包括:判斷緩沖視頻流的大小是否達到預(yù)定的第一百分比閾值,如果達到則開始播放視頻流。
4.根據(jù)權(quán)利要求3所述的控制方法,其特征在于,步驟2中,所述根據(jù)緩沖視頻流大小控制緩沖視頻流的播放還包括:在開始播放視頻流之后,判斷播放速度是否大于緩沖速度,如果不大于緩沖速度則繼續(xù)播放;如果大于緩沖速度,則判斷緩沖視頻流的大小是否小于第二百分比閾值;如果不小于第二百分比閾值則繼續(xù)播放,否則暫停播放。
5.根據(jù)權(quán)利要求1所述的控制方法,其特征在于,步驟2中,所述根據(jù)緩沖時間長短控制緩沖視頻流的播放包括:判斷緩沖視頻流時長是否達到預(yù)定的第一時長閾值,如果達到則開始播放視頻流。
6.一種視頻緩沖的控制系統(tǒng),其特征在于,包括: 緩沖管理器,用于在收到緩沖視頻流的請求時,判斷是否具有空閑的流緩沖池,如果有則申請一個空閑的流緩沖池用于緩沖視頻流;如果沒有則拒絕緩沖; 播放控制模塊,用于根據(jù)緩沖視頻流大小或緩沖時間長短控制緩沖視頻流的播放。
7.根據(jù)權(quán)利要求6所述的控制系統(tǒng),其特征在于,所述流緩沖池用于緩沖視頻流,控制系統(tǒng)中預(yù)先設(shè)置的空閑的流緩沖池的數(shù)量大于等于2 ; 所述控制系統(tǒng)還包括:視頻請求模塊,用于每隔特定時間響應(yīng)所述緩沖視頻流的請求,將所述請求插入相應(yīng)視頻流的等待隊列中,當(dāng)調(diào)度時間到達時,根據(jù)等待隊列中的請求向所述緩沖管理器申請空閑的流緩沖池。
8.根據(jù)權(quán)利要求6所述的控制系統(tǒng),其特征在于,所述播放控制模塊用于判斷緩沖視頻流的大小是否達到預(yù)定的第一百分比閾值,如果達到則開始播放視頻流。
9.根據(jù)權(quán)利要求8所述的控制系統(tǒng),其特征在于,所述播放控制模塊用于判斷播放速度是否大于緩沖速度,如果不大于緩沖速度則繼續(xù)播放;如果大于緩沖速度,則判斷緩沖視頻流的大小是否小于第二百分比閾值;如果不小于第二百分比閾值則繼續(xù)播放,否則暫停播放。
10.根據(jù)權(quán)利要求6所述的控制系統(tǒng),其特征在于,所述播放控制模塊用于判斷緩沖視頻流時長是否達到預(yù)定的第一時長閾值,如果達到則開始播放視頻流。
【文檔編號】H04N21/658GK103763635SQ201410016765
【公開日】2014年4月30日 申請日期:2014年1月15日 優(yōu)先權(quán)日:2013年5月2日
【發(fā)明者】李欣, 趙旭陽, 李磊, 苗壯, 李亮, 關(guān)佐龍, 張鳳愉, 張弘力, 賈躍亭, 袁斌, 高健明 申請人:樂視網(wǎng)信息技術(shù)(北京)股份有限公司