專利名稱:一種無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種視頻流傳輸方法,具體地講,涉及一種無線網(wǎng)絡(luò)視頻流傳輸自適 應(yīng)方法。
背景技術(shù):
近年來,隨著無線網(wǎng)絡(luò)技術(shù)的日益發(fā)展,以及各種新的視頻壓縮算法的不斷推出, 無線網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)得到了長足的發(fā)展。無線網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的核心部分主要在于視頻流在無線網(wǎng)絡(luò)中的傳輸控制,但 這也是最難調(diào)控的部分。由于無線網(wǎng)絡(luò)本身的變信道、帶寬窄及數(shù)據(jù)低優(yōu)先級等特點,使得 視頻流傳輸?shù)馁|(zhì)量問題很難得到保證。雖然近期推出的視頻壓縮算法在易發(fā)生差錯的環(huán)境下采用了某些工具,使得視頻 流的傳輸具有一定的魯棒性。但為保證視頻流傳輸?shù)膶嵱眯?,我們需采用UDP對視頻流數(shù) 據(jù)包進行傳送,而UDP協(xié)議本身只是對數(shù)據(jù)包進行的不可靠的投遞,無法對亂序、丟包和差 錯進行處理,這必然會導(dǎo)致傳輸?shù)囊曨l出現(xiàn)跳躍、抖動等問題,針對這些問題我們必須考慮 一種合理的分包算法對視頻流數(shù)據(jù)包進行處理。
發(fā)明內(nèi)容
本發(fā)明就是為了克服以上所碰到的問題,而提出的一種視頻流在無線網(wǎng)絡(luò)中的自 適應(yīng)方法,實時控制視頻流分包的機制,從而使視頻達到平滑傳輸?shù)哪康模苊獬霈F(xiàn)跳躍、 抖動的問題。本發(fā)明采用如下技術(shù)手段實現(xiàn)發(fā)明目的—種無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法,其特征在于,包括以下步驟(1)確定TCP數(shù)據(jù)包和UDP數(shù)據(jù)包的格式;(2)接收端向發(fā)送端請求視頻發(fā)送;(3)發(fā)送端以UDP數(shù)據(jù)包的形式向接收端發(fā)送視頻數(shù)據(jù)流;(4)發(fā)送端以TCP數(shù)據(jù)包形式定時向接收端發(fā)送當(dāng)前通道UDP數(shù)據(jù)包的發(fā)送情 況;(5)接收端接收TCP數(shù)據(jù)包之后,拆包解析,將發(fā)送端數(shù)據(jù)與本地接收UDP數(shù)據(jù)包 的記錄數(shù)據(jù)進行運算,得出丟包率信息,給發(fā)送端反饋;(6)根據(jù)丟包率信息實時的調(diào)節(jié)當(dāng)前UDP視頻流數(shù)據(jù)包的組織格式、打包大小以 及UDP數(shù)據(jù)包的傳送速率,以適應(yīng)無線網(wǎng)絡(luò)的變化;(7)重復(fù)步驟(3)_(6),直到無線網(wǎng)絡(luò)完成視頻流傳輸。作為對本技術(shù)方案的進一步限定,所述TCP數(shù)據(jù)包的類型包括發(fā)送端端發(fā)送的請 求視頻消息、發(fā)送端發(fā)送的當(dāng)前發(fā)送UDP數(shù)據(jù)包的數(shù)量及數(shù)據(jù)長度消息、接收端發(fā)送的控 制請求消息。對TCP數(shù)據(jù)包進行分類,便于發(fā)送端和接收端辨識TCP數(shù)據(jù)包的類型,利于視 頻發(fā)送流程按序進行。
作為對本技術(shù)方案的進一步限定,所述UDP數(shù)據(jù)包的格式為包頭部分和數(shù)據(jù)部 分,所述包頭不部分包含了當(dāng)前視頻流UDP數(shù)據(jù)包的序列號,所述數(shù)據(jù)部分至多有一個工 幀后面跟多個P幀,剩余的部分補0結(jié)束。采用此種格式進行視頻流的打包操作時,能比較 有效的解決當(dāng)無線網(wǎng)絡(luò)中出現(xiàn)不可避免的丟包時,視頻圖像的抖動、跳躍現(xiàn)象。作為對本技術(shù)方案的進一步限定,所述步驟(5)包括以下步驟(5. 1)接收端記錄接收到的UDP數(shù)據(jù)包情況;(5. 2)接收端判斷TCP數(shù)據(jù)包的消息類型,若為UDP數(shù)據(jù)包的發(fā)送情況,則計算丟 包率;(5. 3)打包成TCP數(shù)據(jù)包,發(fā)送到發(fā)送端.作為對本技術(shù)方案的進一步限定,所述步驟(6)包括以下步驟(6. 1)接收端接受TCP數(shù)據(jù)包;(6. 2)接收端判斷TCP數(shù)據(jù)包消息類型,若為UDP丟包率情況,調(diào)節(jié)當(dāng)前UDP視頻 流數(shù)據(jù)包的組織格式、打包大小以及UDP數(shù)據(jù)包的傳送速率。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點和積極效果是本發(fā)明利用接收端發(fā)送視頻請求, 發(fā)送端接收到視頻發(fā)送請求后,以UDP數(shù)據(jù)包形式發(fā)送視頻流,同時,發(fā)送端定時以TCP數(shù) 據(jù)包形式向接收端發(fā)送當(dāng)前通道UDP數(shù)據(jù)包的發(fā)送情況,接收端接收TCP數(shù)據(jù)包之后,拆 包解析,將發(fā)送端數(shù)據(jù)與本地接收UDP數(shù)據(jù)包的記錄數(shù)據(jù)進行運算,得出丟包率信息,給發(fā) 送端反饋,發(fā)送端根據(jù)丟包率信息實時的調(diào)節(jié)當(dāng)前UDP視頻流數(shù)據(jù)包的組織格式、打包大 小以及UDP數(shù)據(jù)包的傳送速率,以適應(yīng)無線網(wǎng)絡(luò)的變化。本發(fā)明避免了視頻傳輸出現(xiàn)跳躍、 抖動的問題,視頻傳輸清晰連貫、延時小。
圖1為本發(fā)明優(yōu)選實施例UDP數(shù)據(jù)包格式。圖2為本發(fā)明優(yōu)選實施例TCP數(shù)據(jù)包格式。圖3為本發(fā)明優(yōu)選實施例的流程圖。
具體實施例方式下面結(jié)合附圖和優(yōu)選實施例對本發(fā)明作更進一步的詳細描述。參見圖1,本發(fā)明以聯(lián)通CDMA為例,聯(lián)通CDMA理想傳輸速率為144Kbps,但在實際 的測試中很難達到這種狀態(tài),一般在55Kbps上下浮動。我們根據(jù)丟包率可以確定當(dāng)前無線 網(wǎng)絡(luò)的狀況,進而可以調(diào)節(jié)實際使用的傳輸速率。因為要求每秒傳輸?shù)膸瑪?shù)不小于15才能 保證圖像質(zhì)量,故確定幀率為18. 75幀/秒。首先,(1)確定TCP數(shù)據(jù)包和UDP數(shù)據(jù)包的格式,所述TCP數(shù)據(jù)包的類型包括發(fā)送 端端發(fā)送的請求視頻消息、發(fā)送端發(fā)送的當(dāng)前發(fā)送UDP數(shù)據(jù)包的數(shù)量及數(shù)據(jù)長度消息、接 收端發(fā)送的控制請求消息。對TCP數(shù)據(jù)包進行分類,便于發(fā)送端和接收端辨識TCP數(shù)據(jù)包 的類型,利于視頻發(fā)送流程按序進行;所述UDP數(shù)據(jù)包的格式為包頭部分和數(shù)據(jù)部分,所述 包頭部分包含了當(dāng)前視頻流UDP數(shù)據(jù)包的序列號,所述數(shù)據(jù)部分至多有一個I幀后面跟多 個P幀,剩余的部分補0結(jié)束。采用此種格式進行視頻流的打包操作時,能比較有效的解決 當(dāng)無線網(wǎng)絡(luò)中出現(xiàn)不可避免的丟包時,視頻圖像的抖動、跳躍現(xiàn)象。確定TCP數(shù)據(jù)包和UDP數(shù)據(jù)包的格式后,即可進行無線網(wǎng)絡(luò)的視頻傳輸工作,(2)接收端向發(fā)送端請求視頻發(fā)送;(3)發(fā)送端以當(dāng)前無線網(wǎng)絡(luò)的理想狀態(tài)向接收端發(fā)送UDP 數(shù)據(jù)包,即按照事先設(shè)定的UDP數(shù)據(jù)包格式、大小、發(fā)送速率進行視頻流的傳輸;(4)發(fā)送端 以TCP數(shù)據(jù)包形式定時向接收端發(fā)送當(dāng)前通道UDP數(shù)據(jù)包的發(fā)送情況;(5)接收端接收 TCP數(shù)據(jù)包之后,拆包解析,將發(fā)送端數(shù)據(jù)與本地接收UDP數(shù)據(jù)包的記錄數(shù)據(jù)進行運算,得 出丟包率信息,給發(fā)送端反饋;(6)發(fā)送端根據(jù)丟包率信息實時的調(diào)節(jié)當(dāng)前UDP視頻流數(shù)據(jù) 包的組織格式、打包大小以及UDP數(shù)據(jù)包的傳送速率,以適應(yīng)無線網(wǎng)絡(luò)的變化;(7)重復(fù)步 驟(3)_(6),直到無線網(wǎng)絡(luò)完成視頻流傳輸。所述步驟(5)包括以下步驟(5. 1)接收端記錄接收到的UDP數(shù)據(jù)包情況;(5. 2)接收端判斷TCP數(shù)據(jù)包的消息類型,若為UDP數(shù)據(jù)包的發(fā)送情況,則計算丟 包率;(5. 3)打包成TCP數(shù)據(jù)包,發(fā)送到發(fā)送端.所述步驟(6)包括以下步驟(6. 1)接收端接受TCP數(shù)據(jù)包;(6. 2)接收端判斷TCP數(shù)據(jù)包消息類型,若為UDP丟包率情況,調(diào)節(jié)當(dāng)前UDP視頻 流數(shù)據(jù)包的組織格式、打包大小以及UDP數(shù)據(jù)包的傳送速率。本優(yōu)選實施例的具體調(diào)整參數(shù)如下丟包率為0-30%時,調(diào)整傳輸速率為 67. 5kbs,UDP數(shù)據(jù)包大小為4Byte+4. 5KByte,對應(yīng)量化參數(shù)為30 ;丟包率為30-75%時,調(diào) 整傳輸速率為47. 5kbs,UDP數(shù)據(jù)包大小為4Byte+3. 5KByte,對應(yīng)量化參數(shù)為35 ;丟包率為 75-100%時,調(diào)整傳輸速率為37. 5kbps,UDP數(shù)據(jù)包大小為4Byte+2. 5kByte,對應(yīng)量化參 數(shù)為45。本實施例采用h264視頻壓縮算法,對于不同的壓縮算法量化參數(shù)各有不同,量化 參數(shù)的大小可以決定每幀數(shù)據(jù)量的大小,從而填充每個數(shù)據(jù)包,使用者可以根據(jù)自己具體 采用的視頻壓縮算法調(diào)節(jié)。當(dāng)然,上述說明并非對本發(fā)明的限制,本發(fā)明也不僅限于上述舉例,本技術(shù)領(lǐng)域的 普通技術(shù)人員在本發(fā)明的實質(zhì)范圍內(nèi)所做出的變化、改型、添加或替換,也屬于本發(fā)明的保 護范圍。
權(quán)利要求
一種無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法,其特征在于,包括以下步驟(1)確定TCP數(shù)據(jù)包和UDP數(shù)據(jù)包的格式;(2)接收端向發(fā)送端請求視頻發(fā)送;(3)發(fā)送端以UDP數(shù)據(jù)包的形式向接收端發(fā)送視頻數(shù)據(jù)流;(4)發(fā)送端以TCP數(shù)據(jù)包形式定時向接收端發(fā)送當(dāng)前通道UDP數(shù)據(jù)包的發(fā)送情況;(5)接收端接收TCP數(shù)據(jù)包之后,拆包解析,將發(fā)送端數(shù)據(jù)與本地接收UDP數(shù)據(jù)包的記錄數(shù)據(jù)進行運算,得出丟包率信息,給發(fā)送端反饋;(6)根據(jù)丟包率信息實時的調(diào)節(jié)當(dāng)前UDP數(shù)據(jù)包的組織格式、打包大小以及UDP數(shù)據(jù)包的傳送速率,以適應(yīng)無線網(wǎng)絡(luò)的變化;(7)重復(fù)步驟(3) (6),直到無線網(wǎng)絡(luò)完成視頻流傳輸。
2.根據(jù)權(quán)利要求1所述無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法,其特征在于,所述TCP數(shù)據(jù)包 的類型包括發(fā)送端端發(fā)送的請求視頻消息、發(fā)送端發(fā)送的當(dāng)前發(fā)送UDP數(shù)據(jù)包的數(shù)量及數(shù) 據(jù)長度消息、接收端發(fā)送的控制請求消息。
3.根據(jù)權(quán)利要求1所述無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法,其特征在于,所述UDP數(shù)據(jù)包 的格式為包頭部分和數(shù)據(jù)部分,所述包頭部分包含了當(dāng)前視頻流UDP數(shù)據(jù)包的序列號,所 述數(shù)據(jù)部分至多有一個I幀后面跟多個P幀,剩余的部分補0結(jié)束。
4.根據(jù)權(quán)利要求1所述無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法,其特征在于,所述步驟(5)包 括以下步驟(5. 1)接收端記錄接收到的UDP數(shù)據(jù)包情況;(5. 2)接收端判斷TCP數(shù)據(jù)包的消息類型,若為UDP數(shù)據(jù)包的發(fā)送情況,則計算丟包率;(5. 3)打包成TCP數(shù)據(jù)包,發(fā)送到發(fā)送端.
5.根據(jù)權(quán)利要求1所述無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法,其特征在于,所述步驟(6)包 括以下步驟(6. 1)接收端接收TCP數(shù)據(jù)包;(6. 2)接收端判斷TCP數(shù)據(jù)包消息類型,若為UDO丟包率情況,調(diào)節(jié)當(dāng)前UDP視頻流數(shù) 據(jù)包的組織格式、打包大小以及UDP數(shù)據(jù)包的傳送速率。
全文摘要
本發(fā)明公開了一種無線網(wǎng)絡(luò)視頻流傳輸自適應(yīng)方法,包括以下步驟確定TCP數(shù)據(jù)包和UDP數(shù)據(jù)包的格式;接收端向發(fā)送端請求視頻發(fā)送;發(fā)送端以UDP數(shù)據(jù)包的形式向接收端發(fā)送視頻數(shù)據(jù)流;發(fā)送端以TCP數(shù)據(jù)包形式定時向接收端發(fā)送當(dāng)前通道UDP數(shù)據(jù)包的發(fā)送情況;接收端接收TCP數(shù)據(jù)包之后,拆包解析,將發(fā)送端數(shù)據(jù)與本地接收UDP數(shù)據(jù)包的記錄數(shù)據(jù)進行運算,得出丟包率信息,給發(fā)送端反饋;發(fā)送端根據(jù)丟包率信息實時的調(diào)節(jié)當(dāng)前UDP視頻流數(shù)據(jù)包的組織格式、打包大小以及UDP數(shù)據(jù)包的傳送速率,以適應(yīng)無線網(wǎng)絡(luò)的變化;重復(fù)上述步驟直到無線網(wǎng)絡(luò)完成視頻流傳輸。本發(fā)明避免了視頻傳輸出現(xiàn)跳躍、抖動的問題,視頻傳輸清晰連貫、延時小。
文檔編號H04L29/06GK101945266SQ201010258380
公開日2011年1月12日 申請日期2010年8月20日 優(yōu)先權(quán)日2010年8月20日
發(fā)明者姜瑋, 尹承柏, 李同磊, 魏光旭 申請人:山東神戎電子股份有限公司