專利名稱:一種媒體流傳輸帶寬自適應(yīng)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種方法,即在遠(yuǎn)程傳輸媒體流過程中,通過在一個(gè)總 服務(wù)器上設(shè)置一個(gè)媒體流數(shù)據(jù)包的緩沖池,再根據(jù)緩沖池中當(dāng)前存放的 數(shù)據(jù)量判定網(wǎng)絡(luò)的帶寬狀況然后進(jìn)行自適應(yīng)的傳輸。技術(shù)背景目前在互聯(lián)網(wǎng)上傳輸媒體流會(huì)因?yàn)閿?shù)據(jù)量太大和網(wǎng)絡(luò)帶寬不穩(wěn)定等 問題導(dǎo)致傳送速率很慢,甚至導(dǎo)致傳送失敗等問題,致使用戶很難得到 他想要的信息。目前出現(xiàn)的解決這個(gè)問題的技術(shù)主要是使用緩沖技術(shù), 等到數(shù)據(jù)全部到達(dá)以后再傳給用戶,這樣用戶有時(shí)需要等待很久的時(shí)間 也看不到想要的東西,等數(shù)據(jù)到達(dá)用戶手上又失去了實(shí)時(shí)性,還有些使 用算法丟幀的方法就比較復(fù)雜,也難以實(shí)現(xiàn)。這個(gè)方法的特點(diǎn)在于,在 網(wǎng)絡(luò)擁塞時(shí),保證用戶能比較及時(shí)的得到能表示足夠信息量的數(shù)據(jù)包, 而實(shí)現(xiàn)起來(lái)又是比較容易的。發(fā)明內(nèi)容針對(duì)以上的不足,本發(fā)明提出了一種媒體流傳輸帶寬自適應(yīng)的方法, 本發(fā)明的目的是當(dāng)用戶終端向服務(wù)器發(fā)出請(qǐng)求視屏信息的時(shí)候,如果此 時(shí)網(wǎng)絡(luò)擁塞,該發(fā)明能保證用戶能比較及時(shí)的得到能表示足夠信息量的
數(shù)據(jù)包。本方法實(shí)現(xiàn)采用的技術(shù)方案如下一種媒體流傳輸帶寬自適應(yīng)的方法,它在遠(yuǎn)程傳輸媒體流過程中, 通過在一個(gè)總服務(wù)器上設(shè)置一個(gè)媒體流數(shù)據(jù)包的緩沖池,再根據(jù)緩沖池 中當(dāng)前存放的數(shù)據(jù)量判定網(wǎng)絡(luò)的帶寬狀況然后進(jìn)行自適應(yīng)的傳輸,它的 主要步驟包括1) 用戶終端通過通信網(wǎng)絡(luò)向總服務(wù)器發(fā)送一條請(qǐng)求視頻的請(qǐng)求指 令,總服務(wù)器解析這個(gè)指令。2) 總服務(wù)器解析完成請(qǐng)求命令,再通過以太網(wǎng)向視頻終端發(fā)送讀取 視頻信息的指令。3) 視頻終端接收到這個(gè)指令,就將當(dāng)前所捕獲的視屏數(shù)據(jù)以一定的 速度把數(shù)據(jù)包通過以太網(wǎng)傳到服務(wù)器的緩沖池中。4) 服務(wù)器響應(yīng)用戶終端的請(qǐng)求,實(shí)現(xiàn)數(shù)據(jù)傳輸。4.1) 服務(wù)器一旦接收到第一個(gè)返回回來(lái)的視頻數(shù)據(jù),便開始判斷服 務(wù)器兩邊的網(wǎng)絡(luò)狀況;4.2) 往用戶終端傳送數(shù)據(jù),這個(gè)數(shù)據(jù)包到達(dá)手機(jī)端再解包提取視頻數(shù)據(jù)。所述步驟4.1)還包括如下步驟-4丄1)服務(wù)器接收視頻終端的數(shù)據(jù)包,并記錄下時(shí)間,在接收下一 個(gè)數(shù)據(jù)包的時(shí)候,判斷2個(gè)數(shù)據(jù)包之間的時(shí)間差是否超過設(shè)定的閾值;4丄2)若超過閾值,服務(wù)器則判定視頻終端到服務(wù)器端的網(wǎng)絡(luò)不好, 服務(wù)器則向視頻終端發(fā)出 一條要求減慢發(fā)送速度的指令;4丄3)減慢后重復(fù)4丄1、 4丄2這兩個(gè)步驟,如果接收前后兩幀之間 的時(shí)間差不超過閾值,則視頻終端到服務(wù)器的網(wǎng)絡(luò)正常,那么就一直正常發(fā)送;4丄4)服務(wù)器不斷檢測(cè)緩沖池中幀的數(shù)量,同樣設(shè)定一個(gè)閾值,如 果緩沖池中存的幀數(shù)超過閾值的話,就說明服務(wù)器到用戶終端的網(wǎng)絡(luò)狀 況不好,數(shù)據(jù)發(fā)送不出去,就丟掉前面的一部分幀,保留最新的5幀發(fā) 送到用戶終端,不至于用戶接到的視頻數(shù)據(jù)延時(shí)太久,同時(shí)發(fā)送指令回 視頻終端要求它減慢發(fā)送速度,不斷重復(fù)(4丄4)。所述用戶終端是任何能夠連接到服務(wù)器上的終端設(shè)備。所述用戶終端與服務(wù)器間的通信網(wǎng)絡(luò)可以是通過GPRS/CDMA/GSP 實(shí)現(xiàn)的,也可以是ADSL等。本發(fā)明的有益效果為在網(wǎng)絡(luò)擁塞時(shí),保證用戶能比較及時(shí)的得到 能表示足夠信息量的數(shù)據(jù)包,而實(shí)現(xiàn)起來(lái)又是比較容易的。
圖l為本發(fā)明的結(jié)構(gòu)示意圖; 圖2為自適應(yīng)傳輸流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)行進(jìn)一步闡述。如圖1所示,視頻終端通過以太網(wǎng)鏈接到運(yùn)營(yíng)商的總服務(wù)器上,在 總服務(wù)器上用軟件實(shí)現(xiàn)一個(gè)存放視頻數(shù)據(jù)的緩沖池,用戶終端是任何能 夠連接到服務(wù)器上的終端設(shè)備,用戶終端與服務(wù)器的鏈接可以是通過 GPRS/CDMA/GSP實(shí)現(xiàn)的,也可以是ADSL等。假設(shè)一個(gè)用戶終端需要一個(gè)視頻信息,它就通過GPRS/CDMA/GSP或者ADSL等等向運(yùn)營(yíng)商服 務(wù)器發(fā)送一個(gè)請(qǐng)求,服務(wù)器接到這個(gè)命令,把請(qǐng)求轉(zhuǎn)發(fā)到視頻截取終端, 視頻終端接到這個(gè)命令就開始把截取的視頻流打包成數(shù)據(jù)包傳會(huì)到服務(wù) 器,服務(wù)器端為每個(gè)視頻終端設(shè)置一個(gè)緩沖池,用來(lái)保存這些數(shù)據(jù),同 時(shí),服務(wù)器把這些緩存的數(shù)據(jù)傳回給用戶終端。同時(shí)服務(wù)器不停的檢測(cè) 緩沖池內(nèi)的數(shù)據(jù)大小,當(dāng)檢測(cè)出緩沖池的數(shù)據(jù)量超過一定的范圍以后, 一般出現(xiàn)這種情況是因?yàn)榉?wù)器到用戶終端的網(wǎng)絡(luò)狀況不好,數(shù)據(jù)傳輸 緩慢。因此,服務(wù)器發(fā)出指令要求視頻終端減慢發(fā)送速度,同時(shí)采取一 定的丟棄策略將緩沖池中的數(shù)據(jù)包丟掉一些。等緩沖池中的容量減少到 一定程度,再提高視頻終端的發(fā)送速度。以此來(lái)完成帶寬自適應(yīng)的傳輸。 具體傳輸過程中的流程如圖2所示(1) 如圖2所示的第一步。當(dāng)用戶終端向總服務(wù)器發(fā)送一條請(qǐng)求視 頻的請(qǐng)求指令,總服務(wù)器解析這個(gè)指令。(2) 如圖2所示的第二步??偡?wù)器解析出來(lái)以后,向視頻終端發(fā) 送讀取視頻信息的指令。(3) 如圖2所示的第三步。視頻終端接收到這個(gè)指令,就將當(dāng)前所 捕獲的視屏數(shù)據(jù)以一定的速度(比如20幀/秒)把數(shù)據(jù)包通過以太網(wǎng)傳到 服務(wù)器的緩沖池中。(4) 服務(wù)器一旦接收到第一個(gè)返回回來(lái)的視頻數(shù)據(jù),這個(gè)時(shí)候服務(wù) 器主要做兩件事情。(4.1)判斷服務(wù)器兩邊的網(wǎng)絡(luò)狀況。(4.1.1)如圖二的左邊分支判斷,記錄時(shí)間,在接收下一個(gè)數(shù)據(jù)包 的時(shí)候,看兩個(gè)包之間的時(shí)間差是否超過某個(gè)設(shè)定的閾值(比如設(shè)定延
時(shí)不超過發(fā)送速度的6倍就算正常,即根據(jù)前面的發(fā)送速度,這個(gè)閾值 為0.3s)(4丄2)如果連續(xù)幾個(gè)數(shù)據(jù)包兩幀之間的時(shí)間差超過0.3s,那么服 務(wù)器就判定視頻終端到服務(wù)器這端的網(wǎng)絡(luò)狀況不好,這時(shí)候服務(wù)器發(fā)送 一條指令回視頻終端要求它減慢發(fā)送速度,因?yàn)榫W(wǎng)絡(luò)擁塞,發(fā)的越多擁 塞越嚴(yán)重。比如規(guī)定每次減慢速度指令都使速度減半。(4丄3)減慢后再重復(fù)(4丄1)和(4丄2)這兩步。如果接收前后 兩幀之間的時(shí)間不超過設(shè)定的閾值,視頻終端到服務(wù)器的網(wǎng)絡(luò)就是正常 的,那么就一直正常發(fā)送。(4丄4)如圖二的右邊分支判斷,服務(wù)器不斷檢測(cè)緩沖池中幀的數(shù) 量,同樣設(shè)定一個(gè)閾值,比如50幀,如果緩沖池中存的幀數(shù)超過50幀 的話,就說明服務(wù)器到用戶終端的網(wǎng)絡(luò)狀況不好,數(shù)據(jù)發(fā)送不出去,就 丟掉前面的45幀,保留最新的5幀發(fā)送到用戶終端,不至于用戶接到的 視頻數(shù)據(jù)延時(shí)太久。同時(shí)發(fā)送指令回視頻終端要求它減慢發(fā)送速度。不 斷重復(fù)(4.1.4)。(4.2)如圖二的分支匯總步驟,往用戶終端傳送數(shù)據(jù)。這個(gè)數(shù)據(jù)包 到達(dá)手機(jī)端再解包提取視頻數(shù)據(jù)。
權(quán)利要求
1、 一種媒體流傳輸帶寬自適應(yīng)的方法,其特征在于,在遠(yuǎn)程傳輸媒 體流過程中,通過在一個(gè)總服務(wù)器上設(shè)置一個(gè)媒體流數(shù)據(jù)包的緩沖池, 再根據(jù)緩沖池中當(dāng)前存放的數(shù)據(jù)量判定網(wǎng)絡(luò)的帶寬狀況然后進(jìn)行自適應(yīng) 的傳輸,它的主要步驟包括1) 用戶終端通過通信網(wǎng)絡(luò)向總服務(wù)器發(fā)送一條請(qǐng)求視頻的請(qǐng)求指 令,總服務(wù)器解析這個(gè)指令;2) 總服務(wù)器解析完成請(qǐng)求命令,再通過以太網(wǎng)向視頻終端發(fā)送讀取 視頻信息的指令;3) 視頻終端接收到這個(gè)指令,就將當(dāng)前所捕獲的視屏數(shù)據(jù)以一定的 速度把數(shù)據(jù)包通過以太網(wǎng)傳到服務(wù)器的緩沖池中;4) 服務(wù)器響應(yīng)用戶終端的請(qǐng)求,實(shí)現(xiàn)數(shù)據(jù)傳輸。
2、 根據(jù)權(quán)利要求l所述的一種媒體流傳輸帶寬自適應(yīng)的方法,其特 征在于,所述步驟4)還包括如下步驟4.1) 服務(wù)器一旦接收到第一個(gè)返回回來(lái)的視頻數(shù)據(jù),便開始判斷服 務(wù)器兩邊的網(wǎng)絡(luò)狀況;4.2) 往用戶終端傳送數(shù)據(jù),這個(gè)數(shù)據(jù)包到達(dá)手機(jī)端再解包提取視頻數(shù)據(jù)。
3、 根據(jù)權(quán)利要求2所述的一種媒體流傳輸帶寬自適應(yīng)的方法,其特 征在于,所述步驟4.1)還包括如下步驟4丄1)服務(wù)器接收視頻終端的數(shù)據(jù)包,并記錄下時(shí)間,在接收下一 個(gè)數(shù)據(jù)包的時(shí)候,判斷2個(gè)數(shù)據(jù)包之間的時(shí)間差是否超過設(shè)定的閾值;4丄2)若超過閾值,服務(wù)器則判定視頻終端到服務(wù)器端的網(wǎng)絡(luò)不好,服務(wù)器則向視頻終端發(fā)出 一條要求減慢發(fā)送速度的指令;4丄3)減慢后重復(fù)4丄1、 4丄2這兩個(gè)步驟,如果接收前后兩幀之間 的時(shí)間差不超過閾值,則視頻終端到服務(wù)器的網(wǎng)絡(luò)正常,那么就一直正 常發(fā)送;4丄4)服務(wù)器不斷檢測(cè)緩沖池中幀的數(shù)量,同樣設(shè)定一個(gè)闊值,如 果緩沖池中存的幀數(shù)超過閾值的話,就說明服務(wù)器到用戶終端的網(wǎng)絡(luò)狀 況不好,數(shù)據(jù)發(fā)送不出去,就丟掉前面的一部分幀,保留最新的5幀發(fā) 送到用戶終端,不至于用戶接到的視頻數(shù)據(jù)延時(shí)太久,同時(shí)發(fā)送指令回 視頻終端要求它減慢發(fā)送速度,不斷重復(fù)(4丄4)。
4、 根據(jù)權(quán)利要求l所述的一種媒體流傳輸帶寬自適應(yīng)的方法,其特 征在于,所述用戶終端是任何能夠連接到服務(wù)器上的終端設(shè)備,包括手 機(jī)、PC、 PDA或電視等等。
5、 根據(jù)權(quán)利要求l所述的一種媒體流傳輸帶寬自適應(yīng)的方法,其特 征在于,所述用戶終端與服務(wù)器間的通信網(wǎng)絡(luò)可以是通過 GPRS/CDMA/GSP實(shí)現(xiàn)的,也可以是ADSL等。
6、 根據(jù)權(quán)利要求l所述的一種媒體流傳輸帶寬自適應(yīng)的方法,其特 征在于,所述服務(wù)器為每一個(gè)用戶(這個(gè)用戶可以只有一個(gè)視頻終端, 也可以有很多個(gè))設(shè)置一個(gè)相對(duì)應(yīng)的緩沖池。
全文摘要
本發(fā)明公開了一種媒體流傳輸帶寬自適應(yīng)的方法,它屬于數(shù)據(jù)通訊領(lǐng)域。該方法在遠(yuǎn)程傳輸媒體流過程中,通過在總服務(wù)器上設(shè)置一個(gè)媒體流數(shù)據(jù)包的緩沖池,再根據(jù)數(shù)據(jù)包到達(dá)緩沖池的時(shí)間間隔和緩沖池中當(dāng)前存放的數(shù)據(jù)量判定總服務(wù)器兩端網(wǎng)絡(luò)的帶寬狀況然后進(jìn)行自適應(yīng)的傳輸,主要步驟為1)用戶終端向總服務(wù)器發(fā)送請(qǐng)求指令,服務(wù)器解析指令;2)總服務(wù)器解析完請(qǐng)求命令,通過以太網(wǎng)向視頻終端發(fā)送讀取視頻信息的指令;3)視頻終端接收到指令,將當(dāng)前所捕獲的視屏數(shù)據(jù)以一定的速度把數(shù)據(jù)包傳到服務(wù)器緩沖池中;4)服務(wù)器響應(yīng)用戶終端的請(qǐng)求,實(shí)現(xiàn)數(shù)據(jù)傳輸。利用本方法實(shí)現(xiàn)的媒體流傳輸,在網(wǎng)絡(luò)擁塞時(shí),保證用戶能比較及時(shí)的得到能表示足夠信息量的數(shù)據(jù)包,而且實(shí)現(xiàn)起來(lái)又是比較容易的。
文檔編號(hào)H04L12/56GK101146032SQ20071003034
公開日2008年3月19日 申請(qǐng)日期2007年9月21日 優(yōu)先權(quán)日2007年9月21日
發(fā)明者李志偉, 炅 王, 王建民, 羅笑南 申請(qǐng)人:廣州市聚暉電子科技有限公司;中山大學(xué);廣東中大訊通信息有限公司