專利名稱:適用于深空通信的高容錯低延時的視頻傳輸方法及裝置的制作方法
技術(shù)領域:
本發(fā)明涉及數(shù)字視頻信號編碼與傳輸領域,特別涉及一種適用于深空通信 的具有高容錯低延時特性的視頻傳輸方法及裝置。
背景技術(shù):
深空探測是指對月球及月球以外的外層空間進行探測的活動,即脫離地球 引力場,進入太陽系空間和宇宙空間的探測。所謂深空, 一般是指距離地球數(shù) 十萬甚至數(shù)百萬萬公里以外的空間,而人類以往的人造地球衛(wèi)星的通信距離通常為數(shù)百至數(shù)萬公里。因此,即使與距離地球38萬公里的月球,實現(xiàn)視頻通信 所遇到的問題就已經(jīng)和通常的衛(wèi)星通信存在著很大的差別。那么,若要與太陽 系其它行星進行通信,則需要面對數(shù)千萬公里以上的通信距離。在深空通信中,其網(wǎng)絡具有大延時、鏈路易終端、上下行非對稱以及信噪 比極低的特點,屬于一種延時容許網(wǎng)絡(DTN, Delay Tolerant Networks), 而傳統(tǒng)的可靠傳輸協(xié)議TCP (Transfer Control Protocol)及其改進協(xié)議是基于 互聯(lián)網(wǎng)(Internet)而設計的,并不適合于延時很大而信噪比非常低的場合。因 此,深空通信不能直接采用Intemet中所廣泛采用的傳輸方式。
于是,為了滿足深空通信的需求,空間數(shù)據(jù)傳輸系統(tǒng)的國際標準組織 (CCSDS, Consultative Committee for Space Data System )提出了能夠支持空 間和地面網(wǎng)絡的協(xié)議(CFDP, CCSDS File Delivery Protocol) 。 CFDP對TCP 協(xié)議的主要改進之一在于,在傳輸過程中對自動重傳請求(ARQ, Auto Repeat R叫uest)的規(guī)定。由于TCP協(xié)議的接收端會將所有正確接收的數(shù)據(jù)包信息作為 肯定回答(ACK)傳送到發(fā)送端,那么這在深空通信這樣的大延時網(wǎng)絡中,會 浪費很長時間用于大量反饋信息的傳輸;而CFDP改進了這種方法,采用接收 端僅批量發(fā)送代表接收失敗的否定確認信息(NAK)的方式,大大減少了反 饋數(shù)據(jù)量,從而節(jié)省了反饋傳輸?shù)牡却龝r間。然而,在深空探測中,探測價值 最高的視頻信息往往數(shù)據(jù)量較大,而航天器的存儲容量和處理能力有限,這種
情況會導致深空通信的延時大、確認重傳的效率低等。由于深空^:測可以進一步^:索太陽系和宇宙(包括生命)的起源和演化, 同時深空探測有利于人類積極開發(fā)和利用空間資源,擴展生存空間,有利于人 類社會的可持續(xù)發(fā)展服務,因此,深空探測已經(jīng)成為新航天時代的重要發(fā)展方 向,人類探測深空的腳步在不斷邁進,而且步伐也越來越快??梢?,如何針對 大數(shù)據(jù)量的視頻通信來發(fā)展相應的深空通信技術(shù),已成為深空探測中必須重點 解決的問題??傊枰绢I域技術(shù)人員迫切解決的一個技術(shù)問題就是如何降低深空 通信的延時以及提高確認重傳的效率,以克服傳統(tǒng)深空通信中視頻傳輸協(xié)議存 在的帶寬利用率低以及數(shù)據(jù)保護方式不靈活的缺陷。發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題是提供一種高容錯、低延時的視頻傳輸方法, 以提高傳統(tǒng)深空通信信道的頻帶帶寬的利用率,且能夠靈活地保護數(shù)據(jù)。為了解決上述問題,本發(fā)明公開了 一種適用于深空通信的高容錯低延時的視頻傳輸方法,包括視頻編碼步驟,在發(fā)送端,將所采集的視頻數(shù)據(jù)進行可 伸縮^L頻編碼,獲得分層的可伸縮^L頻編碼碼流,該可伸縮^L頻編碼碼流包括 基本層碼流和至少一個增強層碼流;所述增強層碼流的重要性低于所述基本層 碼流;基本層數(shù)據(jù)傳輸步驟,提取可伸縮視頻編碼碼流中的基本層碼流,并利 用自動重傳請求方法傳輸所述基本層碼流;以及,在基本層碼流傳輸結(jié)束時計 算網(wǎng)絡丟包率;增強層數(shù)據(jù)傳輸步驟,提取可伸縮視頻編碼碼流中的增強層碼 流,結(jié)合速龍碼的信道編碼技術(shù),依據(jù)所述丟包率計算得到的參數(shù)進行信道編 碼和傳輸,并在接收端將所接收的增強層碼流進行信道解碼;視頻解碼步驟, 在接收端,將所接收的基本層碼流進行視頻解碼,并結(jié)合所接收的基本層碼流, 對信道解碼后的增強層碼流進4亍一見頻解碼。優(yōu)選的,當所述增強層為多層時,層級間具有重要性差別。 優(yōu)選的,當一個增強層碼流包括不同幀的視頻數(shù)據(jù)時,將不同幀的同屬一 個增強層的碼流一起進行信道編碼。優(yōu)選的,所述基本層數(shù)據(jù)的傳輸由以下子步驟實現(xiàn)查找當前可伸縮視頻編碼碼流的各幀視頻數(shù)據(jù)中有無未發(fā)送的基本層數(shù)據(jù),若有,則建立有連接傳輸,將該未發(fā)送的基本層數(shù)據(jù)按順序發(fā)送;傳輸完 畢后,依據(jù)接收端反饋的包含批量重傳請求信息的數(shù)據(jù)包,查看有無重傳請求, 若有,則重傳所請求的數(shù)據(jù)包,否則返回查找有無未發(fā)送的基本層數(shù)據(jù);若沒有未發(fā)送的基本層數(shù)據(jù),則等待一定的重傳請求時間,并判斷一定時 間間隔內(nèi)有無重傳請求,若有,重傳請求的數(shù)據(jù)包,之后重新等待一定的重傳 請求時間;若無重傳請求,則依據(jù)本次傳輸中的基本層數(shù)據(jù)的包數(shù)和重傳次數(shù) 計算一定時間段內(nèi)的網(wǎng)絡丟包率,結(jié)束本次的基本層數(shù)據(jù)的傳輸。優(yōu)選的,所述增強層數(shù)據(jù)的傳輸由以下子步驟實現(xiàn)查找當前可伸縮視頻編碼碼流中有無未發(fā)送的增強層數(shù)據(jù),若有,則依據(jù) 本次傳輸中的網(wǎng)絡丟包率及當前層的重要性,采用速龍碼編碼方法確定當前增 強層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù),并在計算出所有增強層的編碼數(shù)據(jù)包的包數(shù) 后,發(fā)送全部編碼數(shù)據(jù)包;若沒有未發(fā)送的增強層數(shù)據(jù),則增強層數(shù)據(jù)發(fā)送結(jié)束。相應的,本發(fā)明還公開一種適用于深空通信的高容錯低延時的視頻傳輸裝 置,包括視頻編碼模塊,用于將所采集的視頻數(shù)據(jù)進行可伸縮視頻編碼,獲 得分層的可伸縮視頻編碼碼流,該可伸縮視頻編碼碼流包括基本層碼流和至少 一個增強層碼流;所述增強層碼流的重要性低于所述基本層碼流;基本層數(shù)據(jù) 傳輸模塊,用于提取可伸縮視頻編碼碼流中的基本層碼流,并利用自動重傳請 求方法傳輸所述基本層碼流;以及,在基本層碼流傳輸結(jié)束時計算網(wǎng)絡丟包率;增強層數(shù)據(jù)傳輸模塊,用于提取可伸縮視頻編碼碼流中的增強層碼流,結(jié) 合速龍碼的信道編碼技術(shù),依據(jù)所述丟包率計算得到的參數(shù)進行信道編碼和傳 輸,并在接收端將所接收的增強層碼流進行信道解碼;視頻解碼模塊,用于將 所接收的基本層碼流進行視頻解碼,并結(jié)合所述基本層碼流,對信道解碼后的 增強層碼流進行^L頻解碼。優(yōu)選的,當所述增強層為多層時,層級間具有重要性差別。
優(yōu)選的,當一個增強層碼流包括不同幀的視頻數(shù)據(jù)時,將不同幀的同屬一 個增強層的碼流一起進行信道編碼。優(yōu)選的,所述基本層數(shù)據(jù)傳輸模塊進一步包括第一傳輸子模塊,用于當前可伸縮視頻編碼碼流的各幀中有未發(fā)送的基本 層數(shù)據(jù)時,建立有連接傳輸,將所述未發(fā)送的基本層數(shù)據(jù)按順序發(fā)送;當?shù)谝?傳輸子模塊傳輸完畢后,依據(jù)接收端反饋的包含批量重傳請求信息的數(shù)據(jù)包, 查看有無重傳請求,若有,則重傳所請求的數(shù)據(jù)包,否則返回查找有無未發(fā)送 的基本層數(shù)據(jù);第二傳輸子模塊,用于當沒有未發(fā)送的基本層數(shù)據(jù)時,則等待一定的重傳 請求時間,并判斷一定時間間隔內(nèi)有無重傳請求,若有,重傳請求的數(shù)據(jù)包, 之后重新等待一定的重傳請求時間;若無重傳請求,則依據(jù)本次傳輸中的基本 層數(shù)據(jù)的包數(shù)和重傳次數(shù)計算一定時間段內(nèi)的網(wǎng)絡丟包率,結(jié)束本次基本層數(shù) 據(jù)的傳輸。優(yōu)選的,所述增強層碼流傳輸模塊進一步包括判斷子模塊,用于查找當前可伸縮視頻編碼碼流中有無未發(fā)送的增強層數(shù) 據(jù),若有,則通知傳輸子模塊;若無,則本次增強層數(shù)據(jù)發(fā)送結(jié)束;傳輸子模塊,用于依據(jù)本次傳輸中的網(wǎng)絡丟包率及當前層的重要性,采用 速龍碼編碼方法確定當前增強層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù),并在計算出所有增 強層的編碼數(shù)據(jù)包的包數(shù)后,發(fā)送全部編碼數(shù)據(jù)包。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點本發(fā)明基于可伸縮視頻編碼(SVC, Scalable Video Coding)技術(shù)的分層 特性,綜合考慮各視頻數(shù)據(jù)層重要性的不同,通過SVC視頻編碼技術(shù)得到不同 重要度的視頻編碼碼流,實現(xiàn)了對于不同重要性數(shù)據(jù)的非平等差錯保護。首先,對于重要度最高的、數(shù)據(jù)量很小的基本層數(shù)據(jù)采用基于傳統(tǒng)的ARQ 的傳輸協(xié)議,保證最重要數(shù)據(jù)的正確傳輸和優(yōu)先傳輸,并使接收端能在最短時 間內(nèi)得到視頻的低質(zhì)量可播放版本;再者,對于重要度較低的增強層數(shù)據(jù),根 據(jù)各增強層的重要度不同以及基本層傳輸中得到的丟包率,采取不同參數(shù)的速
龍碼(Raptor Codes )信道編碼方法,實現(xiàn)對于不同重要性數(shù)據(jù)的非平等差錯 保護,而且免去了使用ARQ方法帶來的巨大傳輸延時。由此可見,本發(fā)明通過 結(jié)合Raptor Codes信道編碼的特點和SVC本身的自適應容錯能力,實現(xiàn)了對所 傳輸?shù)囊曨l數(shù)據(jù)的差錯保護,從而降低了延時。本發(fā)明所采取的視頻編碼和傳輸策略是針對深空傳輸中距離遠延時大的 特性,通過具有容錯能力的信源和信道編碼方法替代大量非重要數(shù)據(jù)傳輸中引 起巨大延時的ARQ方法,平衡了傳輸準確性和傳輸速度的矛盾,最大化了深空 視頻傳輸?shù)男Ч?br>
圖1為本發(fā)明的一幀視頻數(shù)據(jù)的基本層碼流和各增強層碼流的示意圖;圖2為本發(fā)明所述視頻傳輸方法的優(yōu)選實施例一的總體流程步驟圖;圖3A為本發(fā)明所述視頻傳輸方法的優(yōu)選實施例二的用于基本層數(shù)據(jù)傳輸?shù)姆椒ú襟E流程圖;圖3B為本發(fā)明所述視頻傳輸方法的優(yōu)選實施例二的用于增強層數(shù)據(jù)傳輸?shù)姆椒ú襟E流程圖;圖4為本發(fā)明所述視頻傳輸裝置的優(yōu)選實施例一的結(jié)構(gòu)示意圖; 圖5為本發(fā)明所述視頻傳輸裝置的優(yōu)選實施例二的結(jié)構(gòu)示意圖。
具體實施方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進一步詳細的i^明。目前,為了滿足深空通信的需求,許多傳輸方法不斷被改進,但是現(xiàn)有的 傳輸方法無法區(qū)分碼流中不同位置的數(shù)據(jù)的重要度,對于視頻信息來說,碼流 中不同位置的數(shù)據(jù)的重要度是不同的,對于重要度高的碼流應該確保準確傳 輸,而對于重要度低的碼流則可以不必要求精確傳輸。有鑒于此,本發(fā)明提供一種視頻編碼和傳輸策略,主要是基于可伸縮視頻 編碼的分層特性,將不同重要度的視頻數(shù)據(jù)進行可伸縮視頻編碼,得到基本層 碼流和至少一個增強層碼流。對于重要度最高的、數(shù)據(jù)量很小的基本層碼流,
采用基于傳統(tǒng)的ARQ的傳輸協(xié)議,保證最重要數(shù)據(jù)的正確傳輸和優(yōu)先傳輸,并 使接收端能在最短時間內(nèi)得到視頻的低質(zhì)量可播放版本;對于重要度低于基本層碼流的增強層碼流,根據(jù)各個增強層的重要度不同以及基本層傳輸中得到的丟包率,采取不同參數(shù)的Raptor Codes編碼方法對增強層碼流進行信道編碼和 傳輸,在視頻解碼時結(jié)合所接收的基本層數(shù)據(jù)以及SVC本身的自適應容錯能 力,對增強層碼流進行視頻解碼,在降低傳輸延時的同時,得到了高質(zhì)量的視 頻播放版本。所述SVC技術(shù)是把視頻信號編碼成分層的形式,當帶寬不足時只對基本層 的碼流進行傳輸和解碼,但這時解碼的視頻質(zhì)量不高;當帶寬逐漸變大時,可 以傳輸和解碼增強層的碼流來提高視頻的解碼質(zhì)量。而所述Raptor Codes信道編碼方法則屬于噴泉碼(Fountain Codes )的一種, 包括一個高速率預編碼和LT碼(LT Codes, Luby設計的無速率碼),預編碼 技術(shù)是Raptor Codes采用的核心技術(shù),該預編碼技術(shù)能夠克服LT Codes解碼代 價不固定的缺點。所述Raptor Codes信道編碼方法的特點是編碼端將N個原始 數(shù)據(jù)包編碼得到任意多個編碼數(shù)據(jù)包并發(fā)送,而接收端在接收其中任意N'個 數(shù)據(jù)包后就能恢復出原始數(shù)據(jù),并且N'僅需要略大于N,通過它們即可實現(xiàn) 成功譯碼,這樣就大大擴展了前向糾錯的靈活度和能力。所述Raptor Codes信 道編碼方法具有解碼率高等優(yōu)點,適合解決網(wǎng)絡傳輸?shù)陌踩珕栴}。參照圖1,示出了本發(fā)明所述方法的一幀視頻數(shù)據(jù)的基本層碼流和各增強 層碼流的示意圖。本發(fā)明的優(yōu)選實施例,將所采集的視頻數(shù)據(jù)進行可伸縮視頻編碼,編碼方 法釆用最新的基于H,264/AVC的可伸縮視頻編碼標準?;赟VC視頻編碼的分 層特性,可以從一個編碼的碼流中抽取出不同參數(shù)的子層碼流,將不同重要度 的視頻數(shù)據(jù)被編碼為分層的可伸縮視頻編碼碼流,其中最重要的一層碼流稱為 基本層碼流,其余層次的碼流稱為增強層碼流,該增強層碼流可以實現(xiàn)帶差錯 解碼,本發(fā)明的優(yōu)選實施例所涉及的增強層碼流至少為一個。如圖l所示,將一幀視頻數(shù)據(jù)進行SVC視頻編碼后得到基本層碼流B,以
及兩個增強層碼流Ei和E2,其中E,的重要性大于E2。同樣,在多幀數(shù)據(jù)的情況 下,如當航天器一次采集了兩幀視頻數(shù)據(jù)時,經(jīng)SVC視頻編碼分別得到第一 幀的基本層碼流B,、增強層碼流En和增強層碼流E,2,以及第二幀的基本層碼流B2、增強層碼流E^和增強層碼流E22。參照圖2,示出了本發(fā)明所述視頻傳輸方法的優(yōu)選實施例一的總體流程步 驟圖。本發(fā)明通過將SVC技術(shù)和Raptor Codes信道編碼方法相結(jié)合,對于不同 的視頻增強層碼流采用不同參數(shù)的Raptor Codes信道編碼,從而實現(xiàn)非平等差 錯保護,同時徹底免去了對所述增強層使用ARQ協(xié)議進行傳輸,極大地節(jié)約了 反饋信息的傳輸時間。本優(yōu)選實施例一的流程步驟,如圖2所示步驟S201,視頻編碼在發(fā)送端,將所采集的視頻數(shù)據(jù)進行SVC視頻編碼, 獲得分層的可伸縮視頻編碼碼流,該可伸縮視頻編碼碼流包括基本層碼流和 至少一個增強層碼流;所述增強層碼流的重要性低于所述基本層碼流;步驟S202,傳輸基本層數(shù)據(jù)在發(fā)送端,提取編碼得到的可伸縮視頻編碼 碼流中的基本層碼流,并利用ARQ協(xié)議傳輸所述基本層碼流;以及,在基本層 碼流傳輸結(jié)束時計算網(wǎng)絡丟包率;步驟S202的輸入為步驟S201中的可伸縮視頻編碼碼流的每一幀基本層碼 流B,輸出為接收端所接收的并解碼后的每一幀的基本層碼流B'和反饋給發(fā) 送端的當前傳輸丟包率。本優(yōu)選實施例一,僅對^J貞數(shù)據(jù)的基本層碼流利用傳 統(tǒng)的ARQ方法進行傳輸,并且統(tǒng)計得到當前傳輸丟包率。步驟S203,傳輸增強層數(shù)據(jù)在發(fā)送端,提取可伸縮視頻編碼碼流中的增 強層碼流,結(jié)合速龍碼的信道編碼技術(shù),依據(jù)所述丟包率計算得到的參數(shù)進行 信道編碼和傳輸,并在接收端將所接收的增強層碼流進行信道解碼;步驟S203的輸入為步驟S201中由SVC視頻編碼得到的增強層碼流Ei (i=l、 2、 3......為層數(shù))以及當前網(wǎng)絡丟包率,輸出為接收端的接收和信道解碼后的每一幀的增強層層碼流E/ (i=l、 2、 3......為層數(shù)),且增強層的層數(shù)越低,該增強層的重要性越大。步驟S203僅對于視頻碼流的增強層碼流進行傳輸,并 且不同幀的同一增強層碼流一起編碼,而傳輸中采用了自適應不同傳輸丟包率下的RaptorCodes信道編碼方法,并且綜合利用了Raptor Codes和SVC增強層的容錯能力進行傳輸數(shù)據(jù)譯護和糾錯。其中,步驟S203執(zhí)行完畢,即增強層數(shù)據(jù)傳輸結(jié)束后,返回步驟S202。 步驟S204,視頻解碼在接收端,將所接收的基本層碼流進行視頻解碼,并結(jié)合所接收的基本層碼流對信道解碼后的增強層碼流進行視頻解碼。一般地,ARQ協(xié)議通過接收端請求發(fā)送端重傳出錯的數(shù)據(jù)報文來恢復出錯 的報文,是通信中用于處理信道所帶來差錯的方法之一。為了進一步提高信道 的利用率,當發(fā)送端接收到接收端的狀態(tài)報告指示報文出錯時,ARQ協(xié)議可以 規(guī)定發(fā)送端只發(fā)送傳輸發(fā)生錯誤的報文。本發(fā)明的優(yōu)選實施例在此基礎上做了 一些改進,即在一定時間段中將重傳請求用 一個數(shù)據(jù)包批量地反饋給發(fā)送端。下面結(jié)合圖3A和圖3B,介紹本發(fā)明所述^L頻傳輸方法的優(yōu)選實施例二。本優(yōu)選實施例二,較上述優(yōu)選實施例一更進一步地給出了深空通信中視頻 數(shù)據(jù)傳輸?shù)木唧w步驟,主要分為基本層數(shù)據(jù)傳輸和增強層數(shù)據(jù)傳輸兩部分來介 紹。參照圖3A和圖3B,分別示出了本發(fā)明所述視頻傳輸方法的優(yōu)選實施例二 的用于基本層數(shù)據(jù)傳輸和增強層數(shù)據(jù)傳輸?shù)姆椒ú襟E流程圖。在發(fā)送端,提取編碼得到的可伸縮視頻編碼碼流中每一幀視頻數(shù)據(jù)的基本 層碼流,并利用ARQ協(xié)議傳輸基本層碼流。如圖3A所示,所述基本層數(shù)據(jù)的 傳輸包括以下步驟步驟S3A01,基本層數(shù)據(jù)發(fā)送開始;步驟S3A02,查找當前可伸縮視頻編碼碼流的各幀視頻數(shù)據(jù)中有無未發(fā)送 的基本層數(shù)據(jù),若有,則執(zhí)行步驟S3A03,同時執(zhí)行步驟S3A04;步驟S3A03,建立有連接傳輸,將查找到的未發(fā)送的基本層數(shù)據(jù)按順序發(fā)送;步驟S3A04,執(zhí)行在接收端,接收基本層數(shù)據(jù),并反饋重傳請求,具體包 括以下步驟步驟S3A04a,接收基本層數(shù)據(jù);步驟S3A04b,記錄最后收到的一個數(shù)據(jù)包的序號n'和在此之前尚未接收
到的所有數(shù)據(jù)包的序號ni,并將解碼后的基本層碼流輸出;步驟S3A04c,接收端在每隔一定時間段T。時對ni進行判斷,依據(jù)n'與n; 的大小關系,判斷一定時間段To內(nèi)有無丟失的數(shù)據(jù)包,若有,執(zhí)行步驟S3A04d; 否則返回步驟S3A04a;步驟S3A04d,發(fā)出重傳請求,將所有n',大于0的數(shù)據(jù)包序號化由一個數(shù) 據(jù)包批量地反饋給發(fā)送端;本優(yōu)選實施例二所采用的重傳策略的特點在于,將一定時間段內(nèi)的所有需 要重傳的數(shù)據(jù)包序號ni用 一個數(shù)據(jù)包批量地反饋給發(fā)送端。這樣批量地將包含 有重傳請求信息的數(shù)據(jù)包反饋給發(fā)送端,能夠有效提高網(wǎng)絡的利用率。步驟S3A05,發(fā)送端判斷是否有重傳請求,若有則執(zhí)行步驟S3A06,否則 返回步驟S3A02;步驟S3A06,發(fā)送端依據(jù)接收端反饋的請求重傳的數(shù)據(jù)包序號ni,重傳該 數(shù)據(jù)包序號rij所指示的數(shù)據(jù)包;若沒有查找到未發(fā)送的基本層數(shù)據(jù),則執(zhí)行步驟S3A07;步驟S3A07,等待一定的重傳請求時間Tp若Ti時間間隔內(nèi)有重傳請求, 則重傳請求的數(shù)據(jù)包,之后重新等待一定的重傳請求時間T"若無重傳請求, 則執(zhí)行步驟S3A08;其中,判斷有無丟失的數(shù)據(jù)包的一定時間段T()小于重傳請求時間T,。步驟S3A08,依據(jù)本次傳輸中的基本層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù)和重傳次 數(shù),計算網(wǎng)絡丟包率f并將該網(wǎng)絡丟包率f反饋給發(fā)送端,之后執(zhí)行步驟S3A09;所述網(wǎng)絡丟包率f^T以由下式計算得到f=R/(N+R)其中,N為本次傳輸中基本層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù),R為重傳次數(shù)。步驟S3A09,本次基本層數(shù)據(jù)的傳輸結(jié)束,轉(zhuǎn)到本次增強層數(shù)據(jù)的傳輸。 當在基本層數(shù)據(jù)傳輸完成后,接收端通過SVC解碼器對所接收的基本層碼流進行視頻解碼,得到本次傳輸?shù)倪@兩幀視頻的基本質(zhì)量的可播放版本。參照圖3B,示出了本發(fā)明所述^L頻傳輸方法的優(yōu)選實施例二的用于增強
層數(shù)據(jù)傳輸?shù)姆椒鞒虉D。概括地講,增強層數(shù)據(jù)的傳輸過程如下提取可伸 縮視頻編碼碼流中的每一幀增強層碼流,結(jié)合速龍碼的信道編碼技術(shù),依據(jù)所 述丟包率計算得到的參數(shù)進行信道編碼和傳輸,并在接收端將所接收的增強層碼流進行信道解碼;
本優(yōu)選實施例二的增強層數(shù)據(jù)的具體傳輸步驟,如圖3B所示,包括 步驟S3B01,增強層數(shù)據(jù)傳輸開始;
步驟S3B02,查找當前可伸縮視頻編碼碼流中有無未發(fā)送的增強層數(shù)據(jù), 若有,則執(zhí)行步驟S3B03;
步驟S3B03,依據(jù)網(wǎng)絡丟包率及當前層的重要性,計算當前增強層數(shù)據(jù)的 編碼數(shù)據(jù)包的包數(shù),并依據(jù)Raptor Codes信道編碼方法對當前增強層數(shù)據(jù)進行 編碼;
其中,所述兩幀的同一個增強層的數(shù)據(jù)一起進行編碼。假設當前視頻碼流 有n個增強層碼流E,......En,則對于每一個增強層碼流Ei的所有Ni個幀的數(shù)據(jù)包一起進行Raptor Codes編碼,預編碼層節(jié)點數(shù)為Ni x 1.05,用進一法取整后由 Niz表示所得結(jié)果,而最終輸出編碼包的數(shù)量Ni'滿足下式<formula>formula see original document page 14</formula>。
式中,i為當前增強層的層數(shù),n為增強層的碼流數(shù)目,而且i、 n均為正整 數(shù),f為網(wǎng)絡丟包率。所得結(jié)果一一最終輸出編碼包的數(shù)量Ni'同樣用進一法取整。
步驟S3B04,在計算出每一個增強層的編碼數(shù)據(jù)包后,發(fā)送全部所述編碼 數(shù)據(jù)包,并在接收端將所接收的增強層碼流進行信道解碼; 若沒有未發(fā)送的增強層數(shù)據(jù),則執(zhí)行步驟S3B05;
步驟S3B05,增強層數(shù)據(jù)發(fā)送結(jié)束,轉(zhuǎn)到步驟S3A01,開始下一次的視頻 數(shù)據(jù)的傳輸。
更為優(yōu)選的,本發(fā)明的優(yōu)選實施例三描述的是當進行深空探測的航天器采 集到兩幀視頻數(shù)據(jù)時的視頻信號的傳輸過程。 與優(yōu)選實施例二的過程類似,首先經(jīng)SVC對所采集的這兩幀數(shù)據(jù)進行視頻編碼,分別得到第一幀的基本層碼流B,、增強層碼流En和增強層碼流E,2,以及第二幀的基本層碼流B2、增強層碼流E^和增強層碼流E22。然后,發(fā)送端查找當前編碼碼流的各幀中是否有未發(fā)送的基本層數(shù)據(jù)時,結(jié)果發(fā)現(xiàn)基本層碼流B,和B2在等待傳輸,則建立有連接傳輸,將基本層數(shù)據(jù) B,發(fā)送出去,此時若沒有重傳請求,則繼續(xù)將B2發(fā)送出去。若接收端接收到了B2但是Bi丟失,則記錄當前收到的最后一個數(shù)據(jù)包的序 號11'=2,之前尚未收到的所有數(shù)據(jù)包的序號n產(chǎn)l;接收端在T(pl00s時,對n, 進行判斷得知n'-n「2-l大于0,于是將丟失包的序號n產(chǎn)l發(fā)送到發(fā)送端。若沒有重傳請求,并且沒有未發(fā)送的基本層數(shù)據(jù),則等待T「1000s的重傳 請求時間。結(jié)果,發(fā)送端在T尸1000s的時間段內(nèi)收到接收端的重傳數(shù)據(jù)包l的 請求,則將B,重新傳送,并重新等待T產(chǎn)1000s的時間。發(fā)送端將B,重新傳送,且接收端成功接收B,后,不再發(fā)送重傳請求,則接 收端輸出B^Bp B2'=B2。發(fā)送端在T產(chǎn)1000s后仍然沒有收到接收端的重傳要 求,則通過本次傳輸中基本層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù)N二2和重傳次數(shù)R4, 得到當前網(wǎng)絡丟包率f二R/(N+R卜l/(l+3"0.25,本次基本層數(shù)據(jù)的傳輸結(jié)束, 轉(zhuǎn)到本次增強層數(shù)據(jù)的傳輸。當在基本層數(shù)據(jù)傳輸完成后,接收端得到了基本層視頻編碼碼流B 和B2', 此時通過SVC解碼器對Bi'和B2'進行解碼,可以得到本次傳輸?shù)倪@兩幀視頻的 基本質(zhì)量的可播放版本。對于所述增強層碼流的傳輸,采用了自適應不同傳輸丟包率fT的Raptor Codes信道編碼方法,對可伸縮視頻編碼碼流中的每一幀視頻數(shù)據(jù)的增強層碼 流進行信道編碼和傳輸。其中,第一幀視頻數(shù)據(jù)被編碼為數(shù)據(jù)包Eu和E,2,第二幀的視頻數(shù)據(jù)被編碼為數(shù)據(jù)包E^和E22。所述增強層碼流的具體傳輸過程如下當查找當前SVC視頻編碼碼流的各幀中是否有未發(fā)送的增強層數(shù)據(jù)時,發(fā) 現(xiàn)存在數(shù)據(jù)包En、 Ei2以及E^、 E22在等待傳輸。此時,當前SVC視頻編碼碼流 有r^2個增強層碼流E,和E2,此時,增強層碼流E,包括兩個數(shù)據(jù)包Eu和E", 增強層碼流E2也包括兩個數(shù)據(jù)包E,2和Em。首先對于增強層碼流E" i=l )的所有N尸2個數(shù)據(jù)包En和E2,—起進行RaptorCodes編碼,預編碼層節(jié)點數(shù)為N,x 1.05=2 x 1.05=2.1,用進一法取整后由N,z表示所得結(jié)果,即N!f3,而最終輸出編碼包的數(shù)量N,為AV = 1.15xWlzx(l + /x"1 —2")1 一 《=1.15 x3 x (1 + 0.25 x1 + 1 — 2x2) = 5.1751_2將上式所得的結(jié)果用進一法取整后,得Ni'為6,則用Raptor Codes將增強 層碼流E,的2個原始數(shù)據(jù)包Eu和E^編碼成6個編碼數(shù)據(jù)包。對于增強層碼流E2 (i=2)的所有N^2個數(shù)據(jù)包E,2和E22—起進行Raptor Codes編碼,預編碼層節(jié)點數(shù)為N2 X 1.05=2 x 1.05=2.1,用進一法取整后由N2z 表示所得結(jié)果,即N2f3,而最終輸出編碼包的數(shù)量N2'為AV = l-15xW2zx(l + /x' + 1 —2")二1.15x3x(l + 0.25x——=~^) = 4.3125l-2將上式所得的結(jié)果用進一法取整后,得N2'為5,則用Raptor Codes將增強 層碼流E2的2個原始&據(jù)包E^和E22編碼成5個編碼lt據(jù)包。對所有2個增強層碼流編碼結(jié)束后,發(fā)送端將所有6+5=11個編碼數(shù)據(jù)包全 部發(fā)送,在接收端接收這ll個包中的全部或部分包后,利用Raptor Codes解碼 器對所接收的編碼數(shù)據(jù)包進行信道解碼,得到En'、 E12'、 E^和E22'并將其輸出。 需要強調(diào)的是,所輸出數(shù)據(jù)包En'、 E12'、 E^和E22'不一定與發(fā)送端發(fā)送的En、E12、 E^和E22相同。在接收端通過SVC解碼器結(jié)合之前的基本層數(shù)據(jù)B^和B2',對增強層碼流 E '、 E12'、 E2!'和E22'進行解碼,雖然Eu'、 E12'、 E2r和E22'中可能存在傳輸誤差, 但是由于SVC的自適應容錯能力,所以在基本層數(shù)據(jù)的基礎上仍然能夠解碼, 得到這兩幀;現(xiàn)頻的高質(zhì)量版本的可播放解碼畫面。需要說明的是,本發(fā)明所述視頻傳輸方法的各優(yōu)選實施例存在下面的情
況,在一次視頻數(shù)據(jù)傳輸未結(jié)束時,可以在其他傳輸通道開始另一次的傳輸, 它們互不影響。例如,當一次傳輸?shù)脑鰪妼訑?shù)據(jù)未發(fā)送完畢時,可以在另一個 傳輸通道開始發(fā)送基本層數(shù)據(jù)。但是,在同一次傳輸中,當基本層數(shù)據(jù)傳輸結(jié) 束后才能開始本次增強層數(shù)據(jù)的發(fā)送。需要強調(diào)的是,對于前述的各方法實施例,為了筒單描述,故將其都表述 為一系列的動作組合,但是本領域技術(shù)人員應該知悉,本發(fā)明并不受所描述的 動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。 其次,本領域技術(shù)人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施 例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。相應于本發(fā)明所述的視頻傳輸方法,下面結(jié)合圖4,介紹本發(fā)明的一個適 用于深空通信的高容錯低延時的視頻傳輸裝置的優(yōu)選實施例一。參照圖4,示出了本發(fā)明所述^L頻傳輸裝置的優(yōu)選實施例一的結(jié)構(gòu)示意圖。所述視頻傳輸裝置主要包括視頻編碼模塊401,用于將所采集的視頻數(shù)據(jù)進行可伸縮視頻編碼,獲得 分層的可伸縮視頻編碼碼流,該可伸縮視頻編碼碼流包括基本層碼流和至少 一個增強層碼流;所述增強層碼流的重要性低于所述基本層碼流;其中,當所述增強層為多層時,層級間具有重要性差別?;緦訑?shù)據(jù)傳輸模塊402,用于提取可伸縮視頻編碼碼流中的基本層碼流, 并利用自動重傳請求方法傳輸所述基本層碼流;以及,在基本層碼流傳輸結(jié)束 時,利用接收端反饋的重傳數(shù)據(jù)計算一定時間段內(nèi)的網(wǎng)絡丟包率;增強層數(shù)據(jù)傳輸模塊403,用于提取可伸縮視頻編碼碼流中的增強層碼流, 結(jié)合速龍碼的信道編碼技術(shù),依據(jù)所述丟包率計算得到的參數(shù)進行信道編碼和 傳輸,并在接收端將所接收的增強層碼流進行信道解碼;其中,當一個增強層碼流包括不同幀的視頻數(shù)據(jù)時,將不同幀的同屬一個 增強層的碼流一起進行信道編碼。視頻解碼模塊404,用于將所接收的基本層碼流進行視頻解碼,并結(jié)合所碼后的增強層碼流進行^L頻解碼。更為優(yōu)選的,下面結(jié)合圖5,介紹本發(fā)明的適用于深空通信的高容錯低延時的視頻傳輸裝置的優(yōu)選實施例二。在本發(fā)明所述的裝置優(yōu)選實施例一所包括 的視頻編碼模塊、基本層數(shù)據(jù)傳輸模塊、增強層數(shù)據(jù)傳輸模塊及視頻解碼模塊的基礎上,本優(yōu)選實施例二更進一步的描述了各功能模塊。如圖5所示,示出了本發(fā)明所述視頻傳輸裝置的優(yōu)選實施例二的結(jié)構(gòu)示意圖。所述視頻傳輸裝置主要包括視頻編碼模塊501 、基本層數(shù)據(jù)傳輸模塊502、 增強層數(shù)據(jù)傳輸模塊503及視頻解碼模塊504;其中,所述基本層數(shù)據(jù)傳輸模塊502進一步包括第一傳輸子模塊5021,用于當前可伸縮視頻編碼碼流的各幀中有未發(fā)送的 基本層數(shù)據(jù)時,建立有連接傳輸,將所述未發(fā)送的基本層數(shù)據(jù)按順序發(fā)送;當 第一傳輸子模塊傳輸完畢后,依據(jù)接收端反饋的數(shù)據(jù)查看有無重傳請求,若有, 則重傳所請求的數(shù)據(jù)包,否則返回查找有無未發(fā)送的基本層數(shù)據(jù);第二傳輸子模塊5022,用于當沒有未發(fā)送的基本層數(shù)據(jù)時,則等待一定的 重傳請求時間,并判斷一定時間間隔內(nèi)有無重傳請求,若有,重傳請求的數(shù)據(jù) 包,之后繼續(xù)等待一定的重傳請求時間;若無重傳請求,則依據(jù)本次傳輸中的 基本層數(shù)據(jù)的包數(shù)和重傳次數(shù)計算網(wǎng)絡丟包率,結(jié)束本次基本層數(shù)據(jù)的傳輸;所述增強層碼流傳輸^^莫塊503進一步包括判斷子模塊5031,用于查找當前可伸縮視頻編碼碼流中有無未發(fā)送的增強 層數(shù)據(jù),若有,則通知傳輸子模塊;若無,則本次增強層數(shù)據(jù)發(fā)送結(jié)束;傳輸子模塊5032,用于依據(jù)本次傳輸中的網(wǎng)絡丟包率及當前層的重要性, 采用速龍碼編碼方法確定當前增強層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù),并在計算出所 有增強層的編碼數(shù)據(jù)包的包數(shù)后,發(fā)送全部編碼數(shù)據(jù)包;其中,當一個增強層碼流包括不同幀的視頻數(shù)據(jù)時,將不同幀的同屬一個 增強層的碼流一起進行信道編碼。對于裝置實施例而言,因其基本相應于方法實施例,所以描述的比較簡單,
相關之處參見方法實施例的部分說明即可。在上述實施例中,對各個實施例的 描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關 描述即可。本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的 都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡 單,相關之處參見方法實施例的部分說明即可。以上對本發(fā)明所提供的 一種高容錯低延時的視頻傳輸方法及裝置進行了上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本 領域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應用范圍上均會 有改變之處,只要根據(jù)本發(fā)明的權(quán)利要求書所作的等效變化與修飾,均仍屬于 本發(fā)明所涵蓋的范圍內(nèi)。綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。
權(quán)利要求
1、一種適用于深空通信的高容錯低延時的視頻傳輸方法,其特征在于,包括視頻編碼步驟,在發(fā)送端,將所采集的視頻數(shù)據(jù)進行可伸縮視頻編碼,獲得分層的可伸縮視頻編碼碼流,該可伸縮視頻編碼碼流包括基本層碼流和至少一個增強層碼流;所述增強層碼流的重要性低于所述基本層碼流;基本層數(shù)據(jù)傳輸步驟,提取可伸縮視頻編碼碼流中的基本層碼流,并利用自動重傳請求方法傳輸所述基本層碼流;以及,在基本層碼流傳輸結(jié)束時計算網(wǎng)絡丟包率;增強層數(shù)據(jù)傳輸步驟,提取可伸縮視頻編碼碼流中的增強層碼流,結(jié)合速龍碼的信道編碼技術(shù),依據(jù)所述丟包率計算得到的參數(shù)進行信道編碼和傳輸,并在接收端將所接收的增強層碼流進行信道解碼;視頻解碼步驟,在接收端,將所接收的基本層碼流進行視頻解碼,并結(jié)合所接收的基本層碼流,對信道解碼后的增強層碼流進行視頻解碼。
2、 如權(quán)利要求l所述的方法,其特征在于,當所述增強層為多層時,層級 間具有重要性差別。
3、 如權(quán)利要求l所述的方法,其特征在于,當一個增強層碼流包括不同幀 的視頻數(shù)據(jù)時,將不同幀的同屬一個增強層的碼流一起進行信道編碼。
4、 如權(quán)利要求l、或2、或3所述的方法,其特征在于,所述基本層數(shù)據(jù)的 傳輸由以下子步驟實現(xiàn)查找當前可伸縮視頻編碼碼流的各幀視頻數(shù)據(jù)中有無未發(fā)送的基本層數(shù) 據(jù),若有,則建立有連接傳輸,將該未發(fā)送的基本層數(shù)據(jù)按順序發(fā)送;傳輸完 畢后,依據(jù)接收端反饋的包含批量重傳請求信息的數(shù)據(jù)包,查看有無重傳請求, 若有,則重傳所請求的數(shù)據(jù)包,否則返回查找有無未發(fā)送的基本層數(shù)據(jù);若沒有未發(fā)送的基本層數(shù)據(jù),則等待一定的重傳請求時間,并判斷一定時 間間隔內(nèi)有無重傳請求,若有,重傳請求的數(shù)據(jù)包,之后重新等待一定的重傳 請求時間;若無重傳請求,則依據(jù)本次傳輸中的基本層數(shù)據(jù)的包數(shù)和重傳次數(shù) 計算一定時間段內(nèi)的網(wǎng)絡丟包率,結(jié)束本次的基本層數(shù)據(jù)的傳輸。
5、 如權(quán)利要求l、或2、或3所述的方法,其特征在于,所述增強層數(shù)據(jù)的 傳輸由以下子步驟實現(xiàn)查找當前可伸縮視頻編碼碼流中有無未發(fā)送的增強層數(shù)據(jù),若有,則依據(jù) 本次傳輸中的網(wǎng)絡丟包率及當前層的重要性,采用速龍碼編碼方法確定當前增 強層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù),并在計算出所有增強層的編碼數(shù)據(jù)包的包數(shù)后,發(fā)送全部編碼數(shù)據(jù)包;若沒有未發(fā)送的增強層數(shù)據(jù),則增強層數(shù)據(jù)發(fā)送結(jié)束。
6、 一種適用于深空通信的高容錯低延時的視頻傳輸裝置,其特征在于, 包括視頻編碼模塊,用于將所采集的視頻數(shù)據(jù)進行可伸縮視頻編碼,獲得分層 的可伸縮一見頻編碼碼流,該可伸縮纟見頻編碼碼流包括基本層碼流和至少一個增 強層碼流;所述增強層碼流的重要性低于所述基本層碼流;基本層數(shù)據(jù)傳輸模塊,用于提取可伸縮視頻編碼碼流中的基本層碼流,并 利用自動重傳請求方法傳輸所述基本層碼流;以及,在基本層碼流傳輸結(jié)束時 計算網(wǎng)絡丟包率;增強層數(shù)據(jù)傳輸模塊,用于提取可伸縮視頻編碼碼流中的增強層碼流,結(jié) 合速龍碼的信道編碼技術(shù),依據(jù)所述丟包率計算得到的參數(shù)進行信道編碼和傳 輸,并在接收端將所接收的增強層碼流進行信道解碼;視頻解碼模塊,用于將所接收的基本層碼流進行視頻解碼,并結(jié)合所述基 本層碼流,對信道解碼后的增強層碼流進行視頻解碼。
7、 如權(quán)利要求6所述的裝置,其特征在于,當所述增強層為多層時,層級 間具有重要性差別。
8、 如權(quán)利要求6所述的裝置,其特征在于,當一個增強層碼流包括不同幀 的視頻數(shù)據(jù)時,將不同幀的同屬一個增強層的碼流一起進行信道編碼。
9、 如權(quán)利要求6、或7、或8所述的裝置,其特征在于,所述基本層數(shù)據(jù)傳 輸模塊進一步包括第一傳輸子模塊,用于當前可伸縮視頻編碼碼流的各幀中有未發(fā)送的基本 層數(shù)據(jù)時,建立有連接傳輸,將所述未發(fā)送的基本層數(shù)據(jù)按順序發(fā)送;當?shù)谝?傳輸子模塊傳輸完畢后,依據(jù)接收端反饋的包含批量重傳請求信息的數(shù)據(jù)包, 查看有無重傳請求,若有,則重傳所請求的數(shù)據(jù)包,否則返回查找有無未發(fā)送的基本層數(shù)據(jù);第二傳輸子模塊,用于當沒有未發(fā)送的基本層數(shù)據(jù)時,則等待一定的重傳 請求時間,并判斷一定時間間隔內(nèi)有無重傳請求,若有,重傳請求的數(shù)據(jù)包, 之后重新等待一定的重傳請求時間;若無重傳請求,則依據(jù)本次傳輸中的基本 層數(shù)據(jù)的包數(shù)和重傳次數(shù)計算一定時間段內(nèi)的網(wǎng)絡丟包率,結(jié)束本次基本層數(shù) 據(jù)的傳輸。
10、如權(quán)利要求6、或7、或8所述的裝置,其特征在于,所述增強層碼流 傳輸模塊進一步包括判斷子模塊,用于查找當前可伸縮視頻編碼碼流中有無未發(fā)送的增強層數(shù) 據(jù),若有,則通知傳輸子模塊;若無,則本次增強層數(shù)據(jù)發(fā)送結(jié)束;傳輸子模塊,用于依據(jù)本次傳輸中的網(wǎng)絡丟包率及當前層的重要性,采用 速龍碼編碼方法確定當前增強層數(shù)據(jù)的編碼數(shù)據(jù)包的包數(shù),并在計算出所有增 強層的編碼數(shù)據(jù)包的包數(shù)后,發(fā)送全部編碼數(shù)據(jù)包。
全文摘要
本發(fā)明提供了一種適用于深空通信的高容錯低延時的視頻傳輸方法及裝置,其中所述方法包括視頻編碼步驟,將所采集的視頻數(shù)據(jù)進行可伸縮視頻編碼,包括基本層碼流和至少一個增強層碼流的可伸縮視頻編碼碼流;基本層數(shù)據(jù)傳輸步驟,提取可伸縮視頻編碼碼流中的基本層碼流,并利用自動重傳請求方法傳輸基本層碼流;以及,在基本層碼流傳輸結(jié)束時計算網(wǎng)絡丟包率;增強層數(shù)據(jù)傳輸步驟,提取所述增強層碼流,結(jié)合速龍碼的信道編碼技術(shù),依據(jù)所述丟包率計算得到的參數(shù)進行信道編碼和傳輸,并將所接收的增強層碼流進行信道解碼;視頻解碼步驟,將所接收的基本層碼流進行視頻解碼,并結(jié)合所接收的基本層碼流,對信道解碼后的增強層碼流進行視頻解碼。
文檔編號H04L1/18GK101394555SQ200810225049
公開日2009年3月25日 申請日期2008年10月24日 優(yōu)先權(quán)日2008年10月24日
發(fā)明者爾桂花, 戴瓊海, 肖紅江, 峰 陸 申請人:清華大學