專利名稱:基于反饋的可縮放視頻編碼的制作方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及可縮放視頻編碼領(lǐng)域。特別是,本發(fā)明涉及通過使用完整性校驗(yàn)
碼來提供反饋。
背景技術(shù):
該部分用于為權(quán)利要求所引用的發(fā)明提供背景或環(huán)境。此處的描述可以包括能夠?qū)崿F(xiàn)的概念,但這些概念并不一定是之前已經(jīng)構(gòu)思或?qū)崿F(xiàn)的。因此,除非此處特別指出,否則該部分所描述的內(nèi)容并不是本申請(qǐng)說明書和權(quán)利要求的現(xiàn)有技術(shù),并且并不能由于包括在該部分中而被認(rèn)為是現(xiàn)有技術(shù)。 視頻編碼標(biāo)準(zhǔn)包括ITU-T H. 261、 IS0/IEC MPEG-lVisual、 ITU-TH. 262或ISO/IEC MPEG-2Visual、 ITU-T H. 263、IS0/IEC MPEG-4Visual和ITU-T H. 264 (也稱作IS0/IECMPEG-4AVC)。另外,現(xiàn)在還正在對(duì)新視頻編碼標(biāo)準(zhǔn)的開發(fā)進(jìn)行努力。這些正在開發(fā)的一種標(biāo)準(zhǔn)是SVC標(biāo)準(zhǔn),該標(biāo)準(zhǔn)將作為對(duì)H. 264/AVC的可縮放擴(kuò)展。另一種正在開發(fā)的標(biāo)準(zhǔn)是多視點(diǎn)編碼標(biāo)準(zhǔn)(MVC),該標(biāo)準(zhǔn)也作為H. 264/AVC的擴(kuò)展。正在努力的另一種標(biāo)準(zhǔn)涉及中國視頻編碼標(biāo)準(zhǔn)的開發(fā)。 在JVT-U202中描述了 SVC標(biāo)準(zhǔn)的草案,"具有改動(dòng)建議的聯(lián)合草案8",中國杭州,第21次JVT會(huì)議,2006年10月,其可在http: 〃ftp3. itu. ch/av-arch/jvt-site/2006_10_Hangzhou/JVT-U202. zip獲得。在JVT-U209中描述了 MVC標(biāo)準(zhǔn)的草案,"多視點(diǎn)視頻編碼的聯(lián)合草案1. 0",中國杭州,第21次JVT會(huì)議,2006年10月,可在ftp3. itu. ch/av-arch/jvt-site/2006_10_Hangzhou/JVT-U209. zip獲得。 可縮放媒體通常被排序?yàn)榭煽s放的數(shù)據(jù)層,其中視頻信號(hào)可以編碼為基本層和一個(gè)或多個(gè)增強(qiáng)層?;緦幽軌虬ň幋a媒體流例如視頻序列的單獨(dú)表示。增強(qiáng)層能夠包括相對(duì)于層分級(jí)中之前層的精煉數(shù)據(jù)。隨著向基本層增加增強(qiáng)層,被解碼的媒體流的質(zhì)量也逐漸提高。增強(qiáng)層增強(qiáng)由另一層或其一部分所表示的視頻內(nèi)容的時(shí)間解析度(即,幀率)、空間解析度和/或單純的質(zhì)量。每一層與其所依賴的所有的層一起,是對(duì)視頻信號(hào)以特定的空間解析度、時(shí)間解析度和/或質(zhì)量等級(jí)的一種表示。因此,此處使用"可縮放層表示"的術(shù)語來描述可縮放層以及其所依賴的所有層。可以提取并對(duì)對(duì)應(yīng)于可縮放層表示的那部分可縮放比特流進(jìn)行編碼,從而以特定逼真度表示原始信號(hào)。 視頻編碼層(VCL)和網(wǎng)絡(luò)抽象層(NAL)的概念是從高級(jí)視頻編碼(AVC)繼承而得的。VCL包括編解碼器的信號(hào)處理功能,例如轉(zhuǎn)換、量化、運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)、環(huán)路濾波和層間預(yù)測(cè)的機(jī)制?;緦踊蛟鰪?qiáng)層的編碼畫面包括一個(gè)或多個(gè)片段。NAL將VCL所產(chǎn)生的每個(gè)片段封裝為一個(gè)或多個(gè)NAL單元。 每個(gè)SVC層都是由表示該層編碼視頻比特的NAL單元所形成。僅攜帶一個(gè)層的實(shí)時(shí)傳輸協(xié)議(RTP)流將僅攜帶屬于該層的NAL單元。攜帶完整可縮放視頻比特流的RTP流則將攜帶基本層和一個(gè)或多個(gè)增強(qiáng)層的NAL單元。SVC規(guī)定了這些NAL單元的解碼順序。
在一些情況中,可以在特定位置之后或者在任意位置處截?cái)嘣鰪?qiáng)層中的數(shù)據(jù),其中每個(gè)截?cái)辔恢每梢园ū硎静粩嘣鰪?qiáng)的可視質(zhì)量的附加數(shù)據(jù)。當(dāng)這些截?cái)帱c(diǎn)間隔很近的 時(shí)候,該縮放性就稱為"細(xì)顆粒",即術(shù)語"細(xì)顆粒(粒度)縮放性"(FGS)。與FGS相反,由那 些只能在特定粗糙位置截?cái)嗟脑鰪?qiáng)層所提供的縮放性稱作"粗顆粒(粒度)縮放性"(CGS)。 另外,上述SVC編碼標(biāo)準(zhǔn)草案也可以支持通常所謂的"中顆粒(粒度)縮放性"(MGS)。根 據(jù)MGS,質(zhì)量增強(qiáng)畫面的編碼與CGS可縮放層畫面的編碼類似,但是可以被高層語法元素指 示為與FGS層畫面的類似。應(yīng)當(dāng)注意,增強(qiáng)層可以統(tǒng)一地包括CGS、 MGS和FGS質(zhì)量(SNR) 縮放性和空間縮放性。 根據(jù)H. 264/AVC,訪問單元包括一個(gè)初級(jí)編碼畫面。在一些系統(tǒng)中,可以通過向比 特流中插入訪問單元分隔符NAL單元來簡化對(duì)訪問單元邊界的檢測(cè)。在SVC中,訪問單元 可以包括多個(gè)初級(jí)編碼畫面,但是d印endencyjd、 temporal_id禾P quality_id的每個(gè)唯 一組合最多只針對(duì)一個(gè)畫面。此處所述的編碼畫面可以指具有特定的d印endencyjd和 qualityjd值的訪問單元內(nèi)的所有NAL單元。注意,在SVC中所使用的術(shù)語可以變化。因 此,在這里可以被稱為編碼畫面的東西此后可以被另一術(shù)語來提及,例如層表示。
SVC使用與H. 264/AVC中所用的相類似的機(jī)制來提供分等級(jí)的時(shí)間縮放性。在 SVC中,可以從編碼比特流中丟棄一組特定的參考和非參考畫面,而不會(huì)影響對(duì)剩余比特流 的解碼。分等級(jí)時(shí)間縮放性需要多個(gè)參考畫面用于運(yùn)動(dòng)補(bǔ)償,即,存在包括了多個(gè)解碼畫面 的參考畫面緩存,編碼器可以從該解碼畫面中選擇參考畫面用于幀間預(yù)測(cè)。在H. 264/AVC 中,稱作子序列的特征實(shí)現(xiàn)了分等級(jí)時(shí)間縮放性,其中每個(gè)增強(qiáng)層都包括子序列,且每個(gè)子 序列都包括許多參考和/或非參考畫面。該子序列還包括多個(gè)幀間獨(dú)立畫面,該幀間獨(dú)立 畫面的設(shè)置不會(huì)對(duì)任何較低子序列層中的任何其他子序列產(chǎn)生干擾。這些子序列層根據(jù)它 們相互之間的依賴性而分等級(jí)設(shè)置,并且等同于SVC中的時(shí)間水平。因此,當(dāng)布置了最高子 序列層中的子序列時(shí),剩余比特流保持有效。在H. 264/AVC中,時(shí)間縮放性信息的信令是通 過使用子序列相關(guān)補(bǔ)充增強(qiáng)信息(SEI)消息來實(shí)現(xiàn)的。在SVC中,在NAL單元的報(bào)頭中指 明時(shí)間水平等級(jí)。 另外,SVC還使用層間預(yù)測(cè)機(jī)制,從而可以從當(dāng)前所重建的層或下一較低層以外的 層中預(yù)測(cè)出特定信息??梢员贿M(jìn)行層間預(yù)測(cè)的信息包括內(nèi)部紋理、運(yùn)動(dòng)和殘差數(shù)據(jù)。層間 運(yùn)動(dòng)預(yù)測(cè)還包括塊編碼模式、報(bào)頭信息等的預(yù)測(cè),其中來自較低層的運(yùn)動(dòng)信息可以用于預(yù) 測(cè)更高層。還可以在SVC中使用層內(nèi)編碼,S卩,從周圍宏塊(MB)或從較低層共同定位的MB 來預(yù)測(cè)。這種預(yù)測(cè)方法不需要使用運(yùn)動(dòng)信息,因此,稱作層內(nèi)預(yù)測(cè)技術(shù)。此外,還可以使用 較低層的殘差數(shù)據(jù)來預(yù)測(cè)當(dāng)前層。 與之前的視頻壓縮標(biāo)準(zhǔn)相比,SVC的空間縮放性已經(jīng)被一般化為使得基本層可以 是增強(qiáng)層的修剪版本和縮放版本。并且,還將量化和熵編碼模塊調(diào)整為提供FGS性能。該 編碼模式稱為逐步求精,其中,通過重復(fù)地降低量化步長并且應(yīng)用與子比特平面編碼同族 的"循環(huán)"熵編碼,來對(duì)變換系數(shù)的連續(xù)求精進(jìn)行編碼。 SVC還規(guī)定了單循環(huán)(single-loop)解碼的概念。單循環(huán)解碼可以通過使用受限 內(nèi)部紋理預(yù)測(cè)模式來實(shí)現(xiàn),其中可以向MB應(yīng)用層間內(nèi)部紋理預(yù)測(cè),對(duì)該MB來說,基本層的 相應(yīng)塊位于內(nèi)部MB內(nèi)。同時(shí),基本層中的那些內(nèi)部MB使用受限層內(nèi)預(yù)測(cè)。這樣,在單循環(huán) 解碼中,解碼器僅需要對(duì)回放所需的可縮放層(即所需層)進(jìn)行運(yùn)動(dòng)補(bǔ)償和全畫面重構(gòu),從
而降低了解碼的復(fù)雜度。由于對(duì)于所需層的重構(gòu)而言不需要MB中未用于層間預(yù)測(cè)(其可以是層間內(nèi)部紋理預(yù)測(cè),層間運(yùn)動(dòng)預(yù)測(cè)或?qū)娱g殘差預(yù)測(cè))的所有或部分?jǐn)?shù)據(jù),所有不需要 對(duì)所需層之外的所有其他層進(jìn)行完全解碼。 解碼大多數(shù)畫面一般都需要單解碼循環(huán),而將第二解碼循環(huán)應(yīng)用于重構(gòu)基本表 示。應(yīng)當(dāng)注意,在重構(gòu)訪問單元的基本表示時(shí),不使用訪問單元的FGS或MGS增強(qiáng)。該基本 表示對(duì)于預(yù)測(cè)參考是需要的,而不用于輸出或顯示,并且僅針對(duì)"關(guān)鍵畫面"進(jìn)行重構(gòu)。基本 表示通常用于下一關(guān)鍵畫面的基本表示的幀間預(yù)測(cè)。在幀間預(yù)測(cè)中周期性地使用基本表示 阻止?jié)撛诘钠疲约坝捎谠诰幋a器至解碼器的傳輸路徑中截?cái)嗷騺G失的那些FGS或MGS 增強(qiáng)層NAL單元而引起的時(shí)間傳播。 上述SVC草案的縮放性結(jié)構(gòu)的特征在于三個(gè)語法元素temporal」d ; d印endencyjd和qualityjd。語法元素temporaljd用于指示時(shí)間縮放性分級(jí)等級(jí)或間 接地指示幀率。與包括具有較大的最大temporal」d的畫面的可縮放層表示相比,包括具 有較小的最大temporal」d值的畫面的可縮放層表示具有較小的幀率。給定時(shí)間層通常依 賴于較低的時(shí)間層(例如,具有較小temporal」d值的時(shí)間層),而通常并不依賴于任何較 高的時(shí)間層。 語法元素d印endencyjd可以用于指示CGS層間編碼的依賴性分級(jí)(其同時(shí)包括 SNR和空間縮放性)。在任何一個(gè)時(shí)間等級(jí)位置,具有較小d印endencyjd值的畫面可以用 于層間預(yù)測(cè)以對(duì)具有較大d印endencyjd值的畫面進(jìn)行編碼。 語法元素qualityjd可用于指示FGS或MGS層的質(zhì)量水平分級(jí)。在任何時(shí)間位 置,并且具有相同的d印endencyjd值,qualityjd等于QL的畫面使用qualityjd等于 QL-1的畫面來進(jìn)行層間預(yù)測(cè)。qualityjd大于零的編碼片段可以編碼為可截?cái)郌GS片段 或不可截?cái)郙GS片段。 為了簡單起見,在具有相同或匹配的d印endencyjd值的一個(gè)訪問單元中的所有 數(shù)據(jù)單元(例如,NAL單元或SVC上下文中的NAL單元)都稱作依賴性單元,其中可以在NAL 單元的報(bào)頭中指示時(shí)間水平分級(jí)。 SVC的一個(gè)特征是FGS NAL單元可以自由丟掉或截?cái)啵⑶襇GS NAL單元可以自由 丟掉,而不會(huì)影響比特流的順從性。但是,當(dāng)該FGS或MGS數(shù)據(jù)已經(jīng)在編碼期間被用作幀間 預(yù)測(cè)參考時(shí),丟掉或截?cái)嘣摂?shù)據(jù)會(huì)在解碼器一端重構(gòu)信號(hào)和在編碼器一端重構(gòu)信號(hào)時(shí)產(chǎn)生 失配。這種失配可以稱作漂移,如上所述。 為了控制由于丟掉或截?cái)郌GS或MGS數(shù)據(jù)而產(chǎn)生的漂移,在特定依賴性單元中, SVC可以在解碼的畫面緩存器中存儲(chǔ)基本表示(通過僅對(duì)qualityjd等于零的CGS畫面 和所有所依賴的較低層數(shù)據(jù)進(jìn)行解碼)。當(dāng)對(duì)之后具有相同d印endency」d值的依賴性單 元進(jìn)行編碼時(shí),所有NAL單元(包括FGS或MGS NAL單元),都將該基本表示用于幀間預(yù)測(cè) 參考。因此,由于在較早訪問單元中丟棄或截?cái)郌GS或MGS NAL單元所引起的漂移對(duì)于該 訪問單元也同樣成立。對(duì)于具有相同d印endencyjd值的其他依賴性單元,所有的NAL單 元使用增強(qiáng)的表示(從具有最大qualityjd值的NAL單元和依賴的較低層數(shù)據(jù)中解碼而 來)作為幀間預(yù)測(cè)參考。此技術(shù)可以產(chǎn)生高編碼效率。 根據(jù)上述JVT-U202參考中所描述的SVC草案,每個(gè)NAL單元都在NAL單元報(bào)頭中 包括禾爾為use_base_prediction_flag的語法兀素。當(dāng)該use_base_prediction_flag的 值等于一時(shí),表明對(duì)NAL單元的解碼在幀間預(yù)測(cè)期間使用參考畫面的基本表示。語法元素storej3asej印—flag指示除了增強(qiáng)表示之外,是(當(dāng)?shù)扔趌時(shí))否(當(dāng)?shù)扔?時(shí))存儲(chǔ)當(dāng) 前圖畫的基本表示以供未來畫面用于進(jìn)行幀間預(yù)測(cè)。 在會(huì)話視頻通信系統(tǒng)中,例如視頻電話中,在接收機(jī)至發(fā)送機(jī)之間通常存在反饋 信道。該反饋信道可以用于例如從傳輸錯(cuò)誤中恢復(fù)等。從接收機(jī)到發(fā)送機(jī)的交互錯(cuò)誤控制 消息可以分類為內(nèi)部更新請(qǐng)求、丟損指示和對(duì)正確接收和解碼數(shù)據(jù)的肯定確認(rèn)。編碼器可 以通過進(jìn)行內(nèi)部編碼或通過僅使用在內(nèi)容中正確的那些參考畫面來進(jìn)行編碼而對(duì)此消息 做出響應(yīng)。如果編碼器在解碼器一端追蹤到所指示錯(cuò)誤的空間傳播,則該編碼器還可以進(jìn) 一步提高壓縮效率和糾錯(cuò)的完整性。并且,編碼器可以恢復(fù)這些由于空間錯(cuò)誤傳播而受損 的區(qū)域,并將任何未受損的區(qū)域用作幀間預(yù)測(cè)的參考。 已經(jīng)提供了關(guān)于低延遲視頻通信的交互錯(cuò)誤控制的各種文獻(xiàn)和標(biāo)準(zhǔn),其中基于 ITU-T H. 323/H. 324的視頻會(huì)議系統(tǒng)和基于RTP的會(huì)議系統(tǒng)都在考慮之列。
ITU-T建議H. 245是用于ITU-T H. 323/H. 324視頻會(huì)議系統(tǒng)的控制協(xié)議。除其他 以外,該協(xié)議還規(guī)定了在接收機(jī)到發(fā)送機(jī)的反饋信道中所使用的命令和指示符。根據(jù)H. 245 的命令可以是需要?jiǎng)幼鞯恍枰@性響應(yīng)的消息??商鎿Q地,根據(jù)H. 245的指示符可以包 括不需要?jiǎng)幼骰蝽憫?yīng)的信息。H. 245規(guī)定了用于H. 261、H. 263、MPEG-1視頻和MPEG-2視頻 的消息。另外,在ITU-T建議H. 241中規(guī)定了在H. 323/324視頻會(huì)議系統(tǒng)中H. 264/AVC的 使用。 RTP可用于在基于互聯(lián)網(wǎng)協(xié)議(IP)的網(wǎng)絡(luò)中發(fā)送連續(xù)的媒體數(shù)據(jù),例如編碼音頻 和視頻流。實(shí)時(shí)傳輸控制協(xié)議(RTCP)與RTP—起存在,即當(dāng)網(wǎng)絡(luò)和應(yīng)用架構(gòu)允許時(shí),RTCP 總是可用于補(bǔ)充RTP。 RTP和RTCP通常通過用戶數(shù)據(jù)報(bào)協(xié)議(UDP)傳送,該UDP進(jìn)而通過 IP來傳送。存在兩種版本的IP,即IPv4和IPv6,其中這兩個(gè)版本之間的一個(gè)區(qū)別涉及可尋 址端點(diǎn)的數(shù)量。 RTCP可用于監(jiān)視網(wǎng)絡(luò)所提供的服務(wù)的質(zhì)量,還可以傳送關(guān)于正在進(jìn)行的會(huì)話的參 與者的信息。RTP和RTCP被設(shè)計(jì)用于范圍從一對(duì)一通信到數(shù)千個(gè)端點(diǎn)的大型多播群組的會(huì) 話。為了控制多方會(huì)話中RTCP分組所引起的總比特率,單個(gè)端點(diǎn)所傳輸?shù)腞TCP分組的傳 輸間隔可相對(duì)于會(huì)話中參與者的數(shù)量。每種媒體編碼格式具有特定的RTP有效載荷格式, 這規(guī)定了在RTP分組的有效載荷中如何構(gòu)建媒體數(shù)據(jù)。 為RTP規(guī)定了大量建檔,每個(gè)建檔都規(guī)定了對(duì)于特殊應(yīng)用族特定的RTP擴(kuò)展或修 改。流行的建檔稱為具有最少控制的音頻和視頻會(huì)議RTP建檔(RTP/AVP)。該規(guī)范提供了 用于音頻和視頻會(huì)議的RTP報(bào)頭中的通用字段的語義。該規(guī)范還規(guī)定了用于特定音頻和視 頻編解碼器的RTP有效載荷格式。 另一種已知的RTP簡檔是具有反饋的音頻_視頻簡檔(RTP/AVPF)。該RTP/AVPF 使終端能夠以比RTCP原先所能允許的速率更快的速率發(fā)送反饋,并且從而能夠用于為交 互錯(cuò)誤修復(fù)傳送消息。如果會(huì)話參與者的數(shù)量小于一定閾值,則可以使用RTP/AVPF的及時(shí) 反饋模式。該及時(shí)反饋模式可以使每個(gè)參與者幾乎是即時(shí)地報(bào)告反饋事件。當(dāng)參與者的數(shù) 目使得不能使用即時(shí)反饋模式時(shí),應(yīng)用早期的RTP/AVPF的RTCP模式。因此,使得能夠進(jìn)行 比普通RTCP更快的反饋,但缺乏RTP/AVPF的近似即時(shí)反饋。 —種從傳輸錯(cuò)誤中恢復(fù)的簡單方法是請(qǐng)求遠(yuǎn)端編碼器在層內(nèi)編碼模式中對(duì)錯(cuò)誤 區(qū)域編碼。除了從傳輸錯(cuò)誤中恢復(fù)之外,當(dāng)在集中式多點(diǎn)會(huì)議期間需要從一個(gè)視頻發(fā)起者轉(zhuǎn)換至另一個(gè)時(shí),可以通過多點(diǎn)會(huì)議控制單元(MCU)發(fā)出快速更新畫面命令。H. 245提供三 種視頻快速更新命令用于畫面的快速更新命令;用于H. 261和H. 263的塊組(GOB)的快速 更新命令;和用于光柵掃描順序中多個(gè)MB的快速更新命令。這些快速更新命令通常分別稱 為videoFastUpdatePicture、 videoFastUpdateGOB禾口 videoFastUpdateMB。
這些快速更新命令要求編碼器更新指定的畫面區(qū)域,這在實(shí)際中被解釋為層內(nèi)編 碼,盡管對(duì)快速更新命令的編碼器響應(yīng)并未在H. 245中進(jìn)行明確規(guī)定。與H. 245相反,H. 241 只允許用于H. 264/AVC的快速更新畫面命令,并規(guī)定了兩種替換過程來響應(yīng)所接收的快速 更新畫面命令。在第一過程中,可以發(fā)送即刻解碼刷新(IDR)畫面和任何所涉及的參數(shù)組。 在第二過程中,畫面區(qū)域是逐漸更新的,例如在大量連續(xù)畫面中。使用層內(nèi)編碼,發(fā)送恢復(fù) 點(diǎn)SEI消息來指示整個(gè)畫面區(qū)域何時(shí)在內(nèi)容上是正確的,并且還可以發(fā)送任何所涉及的參 數(shù)組。這種逐漸恢復(fù)的過程可以用在易于出錯(cuò)的傳輸環(huán)境中,在這種環(huán)境中,IDR很可能經(jīng) 歷傳輸錯(cuò)誤,因?yàn)槠湎鄬?duì)于典型的畫面間具有大尺寸。用于RTP/AVPF的編解碼器控制消息 包括全內(nèi)請(qǐng)求命令,該命令等同于H. 245中的視頻快速更新畫面命令。
由快速更新命令所產(chǎn)生的層內(nèi)編碼與幀間編碼相比降低了壓縮效率。為了提高 壓縮效率,編碼器可以根據(jù)來自遠(yuǎn)端解碼器的反饋選擇已知正確并且可用的參考畫面用于 幀間預(yù)測(cè)。該方法通常稱作NEWP線如Kimata等人在"Study on Adaptive Reference PictureSelection Coding Scheme For the NEWPRED—Receiver—Oriented MobileVisual Communication System"中所述。該技術(shù)要求視頻編碼方案允許使用多個(gè)參考畫面。因此 可以使用例如H. 263附錄N、附錄U或H. 264/AVC。根據(jù)NEWPRED,可以使用兩種類型的反饋 消息否定確認(rèn)(NACK),用于指示沒有正確接收到特定分組、特定畫面或特定畫面的特定 區(qū)域;和肯定確認(rèn)(ACK),用于指示哪些圖片或者圖片的哪些部分被正確接收或者在內(nèi)容 上是正確的。如果正確接收了編碼數(shù)據(jù)或所有用于預(yù)測(cè)的數(shù)據(jù)都是正確的,則畫面或其一 部分的內(nèi)容就正確。 當(dāng)使用NACK時(shí),除了那些根據(jù)所接收的NACK消息已知是錯(cuò)誤的畫面以外,編碼器 通常使用任何可用的參考畫面來用于幀間預(yù)測(cè)。由于端對(duì)端延遲可能大于兩個(gè)編碼畫面之 間的間隔,因此編碼器在對(duì)新畫面進(jìn)行編碼時(shí),可能不知道最近編碼的一些參考畫面沒有 被正確接收。因此,NEWPRED的NACK模式在大約一個(gè)往返時(shí)間周期內(nèi)停止錯(cuò)誤傳播,這與 快速更新請(qǐng)求類似。當(dāng)使用ACK時(shí),編碼器通常僅使用那些根據(jù)所接收的ACK消息已知是 正確的參考畫面來用于幀間預(yù)測(cè)。 存在各種不同機(jī)制來用于傳送參考畫面選擇消息??梢栽谒褂玫目刂茀f(xié)議中規(guī) 定用于該消息的語法??商鎿Q地,控制協(xié)議可以提供通用成幀機(jī)制來傳送參考畫面選擇消 息,該消息在控制協(xié)議外部進(jìn)行了規(guī)定。根據(jù)控制協(xié)議所規(guī)定的消息,H. 245包括專用于整 個(gè)畫面的丟損命令(即,lostPicture命令)。H. 245還包括專用于光柵掃描順序中的大量 MB的丟損命令(即,用于H. 263附錄N的videoBadMBs命令)。最近,H. 245包括能夠明確 指示發(fā)生丟損的畫面的丟損命令(即,用于H. 263附錄U的lostPartialPicture命令)。
遠(yuǎn)端視頻編碼器響應(yīng)于所接收的丟損命令,必須進(jìn)行校正動(dòng)作,例如層內(nèi)編碼或 選擇正確的參考畫面。H.245的恢復(fù)參考畫面命令要求遠(yuǎn)端編碼器僅使用所指示的畫面用 于預(yù)測(cè)。也就是說,與上述ACK消息類似。應(yīng)當(dāng)注意,RTP/AVPF包括通用的NACK消息,該 消息能夠指示一個(gè)或多個(gè)RTP分組的丟損、畫面丟損指示和片段丟損指示。畫面丟損指示
12相當(dāng)于H. 245的lostPicture命令,而片段丟損指示相當(dāng)于H. 245的lostPartialpicture 命令。 如上所述,用于反向信道消息的有效載荷語法可以專用于某種編解碼器,或該語 法可以通用于任何編解碼,并且分別針對(duì)各個(gè)編解碼器規(guī)定該通用語法的語義。編解碼器 專用的反向信道語法的例子可以包括在上述H. 263附錄N和附錄U中所規(guī)定的消息以及 MPEG-4視頻的NEWPRED的上行流消息??商鎿Q地,ITU-T建議H. 271規(guī)定了可為任何視頻 編解碼所使用的通用反向信道消息語法。在H. 271中規(guī)定了六種消息,包括一個(gè)或多個(gè)畫 面被解碼而沒有檢測(cè)到錯(cuò)誤的知識(shí);一個(gè)或多個(gè)湖面被整體或部分損失的指示;以及一個(gè) 畫面的一組編碼塊的所有或特定數(shù)據(jù)部分被損失的指示。另外,在H.271中還規(guī)定了以下 消息用于一個(gè)參數(shù)組的循環(huán)冗余校驗(yàn)(CRC)值;用于特定類型的所有參數(shù)組的CRC值和 重置請(qǐng)求;以及用于指示遠(yuǎn)端編碼器應(yīng)當(dāng)完全刷新所傳輸?shù)谋忍亓骶腿缤唇邮盏较惹耙?頻數(shù)據(jù)一樣的重置請(qǐng)求。 用于標(biāo)識(shí)畫面、編碼塊就采樣而言的大小和參數(shù)組定義的語義是特定于編碼格式 的。因此,H. 271規(guī)定了用于H. 261、H. 263和H. 264/AVC的通用消息語法的語義。在H. 263 附錄N和附錄U以及在H. 271中所規(guī)定的反向信道消息可以在H. 245頂部的單個(gè)邏輯信道 中傳送。類似地,RTP/AVPF包括參考畫面選擇指示,該指示攜帶了根據(jù)視頻編碼標(biāo)準(zhǔn)的反 向信道消息,其中RTP/AVPF的編解碼器控制消息擴(kuò)展包括攜帶根據(jù)H. 271的消息的視頻反 向信道消息。 錯(cuò)誤追蹤是指確定畫面或畫面的一部分在內(nèi)容上是否正確??商鎿Q地,錯(cuò)誤追蹤 是指畫面或畫面的一部分在某種程度上是否不依據(jù)有關(guān)數(shù)據(jù)、傳輸故障和/或編碼預(yù)測(cè)關(guān) 系的相關(guān)信息。該編碼預(yù)測(cè)關(guān)系包括通常的幀間預(yù)測(cè)(即,運(yùn)動(dòng)補(bǔ)償預(yù)測(cè))、通常的畫面內(nèi) 預(yù)測(cè)(即,畫面內(nèi)采樣或系數(shù)預(yù)測(cè)、運(yùn)動(dòng)矢量預(yù)測(cè)和循環(huán)濾波)和SVC上下文中的層間預(yù) 測(cè)。錯(cuò)誤追蹤可以由編碼器或解碼器執(zhí)行。 例如,當(dāng)?shù)搅藢?duì)幀n+d進(jìn)行編碼時(shí),如果幀n受到破壞并且相應(yīng)的反向信道反饋消 息到達(dá)該編碼器,則編碼器在解碼器中對(duì)幀n到n+d-l中的受破壞區(qū)域的位置進(jìn)行重構(gòu)。該 重構(gòu)可以基于幀n+l到n+d-l中的運(yùn)動(dòng)向量。因此,編碼器可以避免使用幀n到n+chl中 的任何受破壞區(qū)域來進(jìn)行層間預(yù)測(cè)。H.263中提供了錯(cuò)誤追蹤算法的一個(gè)例子。
如果反饋消息包括涉及解碼器使用了哪種錯(cuò)誤隱藏方法或在系統(tǒng)中預(yù)定了哪種 錯(cuò)誤隱藏方法的信息,則錯(cuò)誤追蹤可以進(jìn)一步改進(jìn)。響應(yīng)于接收到涉及幀n的反饋消息,編 碼器必須確切地針對(duì)幀n至n+d-l重構(gòu)解碼過程,這樣解碼器處的參考畫面才能準(zhǔn)確地與 解碼器中的參考畫面匹配。在化245中包括了支持聯(lián)合錯(cuò)誤隱藏和錯(cuò)誤追蹤。為了更準(zhǔn)確 起見,H. 245的"不解碼MB指示"信號(hào)可以指示哪些MB被錯(cuò)誤地接收并且沒有按照編碼那 樣進(jìn)行處理。換句話說,該消息指示的是之前幀中共同定位的MB的副本用于錯(cuò)誤隱藏。但 是,由于與已知錯(cuò)誤隱藏有關(guān)的計(jì)算要求和錯(cuò)誤追蹤的復(fù)雜度,還不存在除H. 245可用的 不解碼MB指示以外的相關(guān)機(jī)制。并且,該不解碼MB指示也沒有廣泛使用。
在美國專利申請(qǐng)No. 09/935, 119和美國專利申請(qǐng)No. 11/369, 321中已經(jīng)描述了與 被存儲(chǔ)作為參考(但沒有類似地被輸出作為用于FGS和MGS的基本表示)的畫面相關(guān)聯(lián)的 反饋消息的使用。 但是,上述傳統(tǒng)系統(tǒng)和方法存在問題。使用以下例子來表示該問題,其中假設(shè)了一種視頻通信系統(tǒng),該系統(tǒng)具有現(xiàn)場(chǎng)編碼和從遠(yuǎn)端解碼器到編碼器的反饋信道??梢钥紤]比 特流中的以下兩個(gè)訪問單元
Ql, n. . . Ql, n+m
Q0, n. . . Q0, n+m
其中,符號(hào)如下 Q0, n-編碼畫面,訪問單元n的quality_id等于零
Ql, n-編碼畫面,訪問單元n的quality_id等于一
Q0, n+m-編碼畫面,訪問單元n+m的quality—id等于零
Ql, n+m-編碼畫面,訪問單元n+m的quality_id等于一 訪問單元n是關(guān)鍵畫面,即編碼器將store_base_i^p_flag的值設(shè)為等于1??梢?假設(shè)訪問單元n的所有質(zhì)量層都能成功解碼,且遠(yuǎn)端解碼器向編碼器發(fā)送反饋消息,指示 成功解碼。該反饋消息在對(duì)下一個(gè)"基本"訪問單元(n+m)編碼之前被接收。當(dāng)對(duì)訪問單元 n+m進(jìn)行編碼時(shí),編碼器可以設(shè)置usej3ase—prediction—flag??梢詾?QO, n+m)和(Ql, n+m)將usej3ase—prediction—flag設(shè)為零,這樣這兩個(gè)編碼畫面都可以從(Ql,n)而不是 (Q0, n)來預(yù)測(cè),從而提高了編碼效率。同時(shí),可以為(Ql, n+m)和(QO, n+m)而將store_ base—r印—flag設(shè)為一,這樣存儲(chǔ)基本表示,以用于以后的層間預(yù)測(cè)。 因此,所存在的問題在于在傳輸期間可能會(huì)丟損(Ql, n)??商鎿Q地,媒體感知網(wǎng) 元(MANE)或發(fā)送方可以通過丟棄一些或所有(Q1, n)數(shù)據(jù)來適應(yīng)。也就是說,需要檢測(cè)訪 問單元n是否全部正確解碼,以建立從遠(yuǎn)端解碼器到編碼器的有效反饋消息。但是,根據(jù) JVT-U202中的SVC草案,遠(yuǎn)端解碼器沒有辦法確定比特流中最初是否存在(Ql,n),或(Ql, n)最初是否包括更多的數(shù)據(jù)。這是由于比特流不管FGS或MGS畫面(Ql,n)是否存在都是 有效的。并且,當(dāng)(Ql,n)包括FGS片段時(shí),沒有辦法確定NAL單元是否已經(jīng)被截?cái)唷?br>
發(fā)明內(nèi)容
各個(gè)實(shí)施例提供了一種系統(tǒng)和方法,其中可以在編碼器處在一組NAL單元上計(jì)算 /生成第一完整性校驗(yàn)碼。之后,該第一完整性校驗(yàn)碼可以作為SEI消息發(fā)送至解碼器。之 后解碼器可以對(duì)實(shí)際所接收的NAL單元計(jì)算第二完整性校驗(yàn)碼??梢詫⒃摰诙暾孕?驗(yàn)碼與編碼器所產(chǎn)生的并通過SEI消息所發(fā)送的第一完整性校驗(yàn)碼相比較,以指示實(shí)際上 從中生成完整性校驗(yàn)碼的、所發(fā)送的所有NAL單元是否已經(jīng)被接收到而它們的內(nèi)容沒有變 化。另外,各個(gè)實(shí)施例還提供錯(cuò)誤追蹤算法,該算法能夠在編碼器或解碼器上運(yùn)行,以確定 NAL單元的內(nèi)容在解碼器端是否正確。因此,僅作為幀內(nèi)編碼幀發(fā)送的畫面和僅作為幀間編 碼幀發(fā)送的畫面都可以進(jìn)行錯(cuò)誤檢驗(yàn)。根據(jù)各個(gè)實(shí)施例,可以在解碼器不能向編碼器提供 足夠的、關(guān)于什么內(nèi)容已經(jīng)確切地被解碼的信息的情況下,提供錯(cuò)誤檢驗(yàn)。
將從以下結(jié)合附圖的詳細(xì)描述中,清楚理解本發(fā)明的上述和其他優(yōu)點(diǎn)和特征,以 及本發(fā)明操作的構(gòu)成和方式,其中,在下述的所有幾個(gè)附圖中,相同元素具有相同數(shù)字標(biāo) 記。
圖1表示用于本發(fā)明的通用多媒體通信系統(tǒng);
圖2是能用于本發(fā)明的實(shí)現(xiàn)的移動(dòng)設(shè)備的透視圖; 圖3是圖2移動(dòng)設(shè)備的設(shè)備電路的示意圖; 圖4是表示根據(jù)一個(gè)實(shí)施例所執(zhí)行的過程的流程圖;以及 圖5是表示根據(jù)另一個(gè)實(shí)施例所執(zhí)行的過程的流程圖。
具體實(shí)施例方式
圖1表示用于與本發(fā)明結(jié)合使用的通用多媒體通信系統(tǒng)。如圖1所示,數(shù)據(jù)源100 以模擬、未壓縮的數(shù)字或壓縮的數(shù)字格式,或上述格式的任意組合來提供源信號(hào)。編碼器
110將源信號(hào)編碼為編碼媒體比特流。編碼器iio可以能夠?qū)Χ喾N媒體類型編碼,例如音頻 和視頻,或可以使用多個(gè)編碼器110來對(duì)不同媒體類型的源信號(hào)進(jìn)行編碼。編碼器110還 可以得到合成產(chǎn)生的輸入,例如圖形和文本,或者可以能夠生成合成媒體的編碼比特流。在 下文中,為了簡化描述,僅考慮對(duì)一種媒體類型的一個(gè)編碼媒體比特流進(jìn)行處理。但是應(yīng)當(dāng) 注意,通常的實(shí)時(shí)廣播業(yè)務(wù)包括多種流(通常至少為音頻、視頻和文本字幕流)。還應(yīng)當(dāng)注 意,系統(tǒng)可以包括多個(gè)編碼器,但在下文中,僅考慮一個(gè)編碼器110,以簡化描述且不失一般 性。 應(yīng)當(dāng)理解,盡管此處的文中及其中例子可能只特別描述了編碼過程,但是本領(lǐng)域 技術(shù)人員應(yīng)當(dāng)很容易理解,相同的概念和原理也可以用于相應(yīng)的解碼過程,反之亦然。
編碼媒體比特流被傳輸至存儲(chǔ)器120。該存儲(chǔ)器120可以包括任何類型的海量存 儲(chǔ)器來存儲(chǔ)編碼媒體比特流。存儲(chǔ)器120中的編碼媒體比特流的格式可以是基本的自包括 比特流格式,或者可以將一個(gè)或多個(gè)編碼媒體比特流封裝至容器文件中。 一些系統(tǒng)是"現(xiàn) 場(chǎng)"操作的,即,省略了存儲(chǔ),直接將編碼媒體比特流從編碼器110傳送至發(fā)送機(jī)130。之后 根據(jù)需要將編碼媒體比特流傳送至發(fā)送機(jī)130,該發(fā)送機(jī)也稱為服務(wù)器。傳輸中所使用的格 式可以是基本的自包括比特流格式、分組流格式,或者可以將一個(gè)或多個(gè)編碼媒體比特流 封裝至容器文件中。編碼器110、存儲(chǔ)器120和發(fā)送機(jī)130可以駐留于相同的物理設(shè)備中, 也可以包括在單獨(dú)的設(shè)備中。編碼器110和發(fā)送機(jī)130可以對(duì)現(xiàn)場(chǎng)實(shí)時(shí)內(nèi)容進(jìn)行操作,在 這種情況下,通常不永久儲(chǔ)存編碼媒體比特流,而是短時(shí)間地在內(nèi)容編碼器110和/或發(fā)送 機(jī)130中緩存,用以平滑在處理延遲、傳輸延遲和編碼媒體碼率中的變化。
發(fā)送機(jī)130使用通信協(xié)議棧來發(fā)送編碼媒體比特流。該棧可以包括但不限于實(shí)時(shí) 傳輸協(xié)議(RTP)、用戶數(shù)據(jù)報(bào)協(xié)議(UDP)和互聯(lián)網(wǎng)協(xié)議(IP)。當(dāng)通信協(xié)議棧是面向分組時(shí), 發(fā)送機(jī)130將編碼媒體比特流封裝至分組中。例如,當(dāng)使用RTP時(shí),發(fā)送機(jī)130根據(jù)RTP有 效載荷格式將編碼媒體比特流封裝至RTP分組中。通常,每種媒體類型都具有專用的RTP 有效載荷格式。應(yīng)當(dāng)再次注意,系統(tǒng)可以包括多個(gè)發(fā)送機(jī)130,但是為了簡化起見,以下描述 僅考慮一個(gè)發(fā)送機(jī)130。 發(fā)送機(jī)130可以或可以不通過通信網(wǎng)絡(luò)連接至網(wǎng)關(guān)140。網(wǎng)關(guān)140可以執(zhí)行不同 類型的功能,例如將根據(jù)一種通信協(xié)議棧的分組流翻譯為另一種通信協(xié)議棧、合并和分離 數(shù)據(jù)流和根據(jù)下行鏈路和/或接收機(jī)性能控制數(shù)據(jù)流,例如根據(jù)主要下行鏈路網(wǎng)絡(luò)狀況來 控制轉(zhuǎn)發(fā)流的碼率。網(wǎng)關(guān)140的例子包括多點(diǎn)會(huì)議控制單元(MCU)、電路交換和分組交換視 頻電話之間的網(wǎng)關(guān)、蜂窩一鍵通(PoC)服務(wù)器、數(shù)字視頻廣播手持(DVB-H)系統(tǒng)中的IP封 裝器或用于將廣播傳輸本地轉(zhuǎn)發(fā)至家庭無線網(wǎng)絡(luò)的機(jī)頂盒。當(dāng)使用RTP時(shí),網(wǎng)關(guān)140稱為RTP混合器,并用作RTP連接的端點(diǎn)。 該系統(tǒng)包括一個(gè)或多個(gè)接收機(jī)150,通常能夠?qū)λl(fā)送的信號(hào)進(jìn)行接收、解調(diào)和解 封裝為編碼媒體比特流。該編解碼媒體比特流通常進(jìn)一步由解碼器160進(jìn)行處理,該解碼 器的輸出是一個(gè)或多個(gè)未壓縮的媒體流。最后,呈現(xiàn)器170可以使用例如揚(yáng)聲器或顯示器 來再現(xiàn)該未壓縮的媒體流。該接收機(jī)150、解碼器160和呈現(xiàn)器170可以駐留于相同的物理 設(shè)備,或位于不同設(shè)備中。 應(yīng)當(dāng)注意,所要解碼的比特流可以是從幾乎位于任何類型網(wǎng)絡(luò)中的遠(yuǎn)程設(shè)備處接 收的。另外,該比特流還可以從本地硬件或軟件處接收。 在碼率、解碼復(fù)雜度和畫面尺寸方面的縮放性是在異構(gòu)和易出錯(cuò)環(huán)境中非常需要 的特性。需要這種特性來應(yīng)對(duì)限制,例如接收設(shè)備中對(duì)碼率、顯示分辨率、網(wǎng)絡(luò)吞吐量和計(jì) 算功率的限制。 本發(fā)明的通信設(shè)備能夠使用各種傳輸技術(shù)來進(jìn)行通信,該傳輸技術(shù)包括但不 限于,碼分多址(CDMA)、全球移動(dòng)通信系統(tǒng)(GSM)、通用移動(dòng)電信系統(tǒng)(UMTS)、時(shí)分多址 (TDMA)、頻分多址(FDMA)、傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)、短消息業(yè)務(wù)(SMS)、多媒體 消息業(yè)務(wù)(匪S)、電子郵件、即時(shí)消息業(yè)務(wù)(MS)、藍(lán)牙、IEEE 802. 11等。通信設(shè)備可以使 用各種媒體進(jìn)行通信,該媒體包括但不限于,無線、紅外、激光、線纜連接等。
圖2和圖3表示可實(shí)施本發(fā)明的一個(gè)代表性移動(dòng)設(shè)備12。但是應(yīng)當(dāng)理解,本發(fā)明 并不限于一種特定類型的移動(dòng)設(shè)備12或其他電子設(shè)備。在圖2和圖3中所描述的一些或 所有特征都可以被結(jié)合至圖1的任何一個(gè)或所有設(shè)備中。 圖2和圖3的移動(dòng)設(shè)備12包括外殼30、液晶顯示形式的顯示器32、小鍵盤34、麥 克風(fēng)36、耳機(jī)38、電池40、紅外端口 42、天線44、根據(jù)本發(fā)明一個(gè)實(shí)施例的UICC形式的智能 卡46、讀卡器48、無線接口電路52、編解碼器電路54、控制器56和存儲(chǔ)器58。各個(gè)電路和 部件都是現(xiàn)有技術(shù)中已知的類型,例如是Nokia范圍內(nèi)的移動(dòng)電話。 如上所述,應(yīng)用于現(xiàn)有H. 264標(biāo)準(zhǔn)的擴(kuò)展的可縮放視頻編解碼(H. 264/SVC)存在 的潛在問題在于,即在某些情況下,對(duì)編碼器的反饋可能不能向編碼器提供足夠的關(guān)于實(shí) 際解碼了哪些內(nèi)容的信息。這可以是由于比特流的分層簡檔造成的,其中接收機(jī)不會(huì)接收 到所有的數(shù)據(jù)層(由于在傳輸路徑上對(duì)比特流的截?cái)?。這樣,解碼器就會(huì)忽略其并沒有接 收到所有層的事實(shí),而只對(duì)其所實(shí)際接收到的內(nèi)容進(jìn)行解碼。這樣,輸出的視頻質(zhì)量只與所 接收的分層比特流的水平相對(duì)應(yīng)。如上所述的JVT最新的SVC標(biāo)準(zhǔn)草案也沒有規(guī)定在這種 情況下提供反饋。 各個(gè)實(shí)施例提供了一種方法,通過使用完整性校驗(yàn)碼克服了 SVC標(biāo)準(zhǔn)中的這些限 制??梢栽诰幋a器中在一組NAL單元上計(jì)算/生成第一完整性校驗(yàn)碼。應(yīng)當(dāng)注意,該NAL 單元組可以包括至少一個(gè)qualityjd大于零的NAL單元。之后可以將該第一完整性校驗(yàn) 碼作為SEI消息發(fā)送至解碼器。之后解碼器可以對(duì)實(shí)際所接收的NAL單元計(jì)算第二完整性 校驗(yàn)碼。可以將該第二完整性校驗(yàn)碼與由編碼器所生成并通過SEI消息所發(fā)送的第一完整 性校驗(yàn)碼進(jìn)行比較,以判斷實(shí)際上從中生成完整性校驗(yàn)碼的、所發(fā)送的所有NAL單元是否 已經(jīng)被接收到而它們的內(nèi)容沒有變化。另外,各個(gè)實(shí)施例提供了可以在編碼器或解碼器運(yùn) 行的錯(cuò)誤追蹤算法,用于確定NAL單元在解碼器端處的內(nèi)容是否正確。這樣,僅作為幀內(nèi)編 碼幀發(fā)送的畫面和僅作為幀間編碼幀發(fā)送的畫面都可以進(jìn)行錯(cuò)誤校驗(yàn)。
圖4表示由編碼器和解碼器執(zhí)行的過程,編碼器例如是圖1的編碼器110,解碼器 例如是圖1的解碼器160。根據(jù)一個(gè)實(shí)施例,在400,編碼器IIO將輸入畫面編碼為包括NAL 單元的訪問單元。并且,在410,編碼器IIO產(chǎn)生第一完整性校驗(yàn)碼,其中在所選擇的一組 NAL單元上計(jì)算第一完整性校驗(yàn)碼,該NAL單元包括至少一個(gè)qualityjd大于零的NAL單 元。將該第一完整性校驗(yàn)碼及其范圍(即,該校驗(yàn)碼的計(jì)算所針對(duì)的訪問單元和可縮放層) 例如作為內(nèi)嵌在視頻比特流中的SEI消息發(fā)送至解碼器。在420,解碼器160從來自編碼器 110的比特流中解碼出訪問單元。另外,在430,該解碼器160接收第一完整性校驗(yàn)碼及其 范圍,并從所接收的具有該指示范圍的NAL單元組中計(jì)算出第二完整性校驗(yàn)碼。在440,解 碼器可以將第一和第二完整性校驗(yàn)碼進(jìn)行比較,并且確定在指示范圍內(nèi)的所有NAL單元是 否被正確接收。 并且,在450,解碼器160使用該確定來向編碼器110生成具有一個(gè)范圍(再次,該 范圍指示的是該消息針對(duì)的是哪個(gè)(些)訪問單元和可縮放層)的ACK或NACK反饋消息。 該反饋消息進(jìn)而可以指示在指示范圍內(nèi)的NAL單元是否被正確接收(例如,類型I的反饋 消息)或其內(nèi)容是否被正確解碼(例如,類型II的反饋消息)。為了生成類型II的反饋消 息,解碼器160運(yùn)行錯(cuò)誤追蹤算法來確定NAL單元的內(nèi)容是否正確(未示出)。在460,編 碼器110接收反饋消息。在470,當(dāng)接收到類型I的反饋消息時(shí),編碼器110運(yùn)行錯(cuò)誤追蹤 算法來確定增強(qiáng)表示的內(nèi)容是否正確。之后,編碼器110可以將另一個(gè)輸入畫面編碼為另 一個(gè)訪問單元,重復(fù)400的操作。 —種簡單的畫面水平錯(cuò)誤追蹤算法可以按如下操作。當(dāng)涉及幀內(nèi)畫面時(shí),可以認(rèn) 為如果該幀內(nèi)畫面被正確接收,則認(rèn)為其內(nèi)容正確。對(duì)于幀間畫面,如果該幀間畫面被正確 接收,且有關(guān)的參考畫面內(nèi)容正確,則認(rèn)為該幀間畫面內(nèi)容正確。 可替換地,圖5表示了另一個(gè)實(shí)施例,其中,當(dāng)編碼器110在500將輸入畫面編碼 為包括NAL單元的訪問單元時(shí),包括該訪問單元的比特流被發(fā)送至解碼器160。解碼器160 在510從比特流中解碼訪問單元,在520,解碼器160可以生成反饋消息(例如,類型III的 反饋消息),該反饋消息包括所選的NAL單元的范圍和根據(jù)所接收的包括指定范圍的NAL單 元組生成的第一完整性校驗(yàn)碼,以及其他元素。當(dāng)在530接收到該類型ni的反饋消息(包 括范圍和第一完整性校驗(yàn)碼)時(shí),編碼器110在540在相同范圍的NAL單元上計(jì)算出第二 完整性校驗(yàn)碼,并將該第一和第二完整性校驗(yàn)碼進(jìn)行比較,以確定NAL單元是否已經(jīng)被正 確接收。之后,如果反饋消息涉及幀間畫面,則編碼器110可以在550運(yùn)行錯(cuò)誤追蹤算法, 來確定增強(qiáng)表示的內(nèi)容是否正確。 如果認(rèn)為增強(qiáng)表示的內(nèi)容正確,則編碼器110可以利用該增強(qiáng)表示,為quality— id大于零的NAL單元解碼下一依賴性單元,以提高編碼效率,從而重復(fù)500的過程/循環(huán)。 并且,對(duì)于qualityjd等于零的依賴性單元中的NAL單元,可以使用基本表示或增強(qiáng)表示 來用于幀間預(yù)測(cè)。對(duì)是使用基本表示還是增強(qiáng)表示的判斷可以根據(jù)哪一個(gè)表示能夠提供更 好的編碼效率。同時(shí),可以存儲(chǔ)依賴性單元的基本表示,用于以后用作層間預(yù)測(cè)參考。
在第一實(shí)施例中,為依賴性單元中qualityjd大于零的VCL NAL單元導(dǎo)出完整性 校驗(yàn)碼。認(rèn)為只有對(duì)于qualityjd大于零的NAL單元才需要該完整性校驗(yàn)碼。這是由于 qualityjd等于零和包括參考畫面的主編碼片段的NAL單元的丟失可以被解碼器檢測(cè)出。
在另一實(shí)施例中,為依賴性單元的VCL NAL單元導(dǎo)出完整性校驗(yàn)碼,而不考慮其qualityjd值。該實(shí)施例不需要對(duì)quality_id等于零的NAL單元解碼或解析,就能夠?qū)崿F(xiàn) 完整性檢測(cè)。 而在另一實(shí)施例中,為依賴性單元中每一個(gè)具有特定qualityjd值的VCL NAL單
元組導(dǎo)出完整性校驗(yàn)碼。該實(shí)施例實(shí)現(xiàn)了對(duì)每個(gè)質(zhì)量層單獨(dú)進(jìn)行完整性檢測(cè)。 而在另一實(shí)施例中,為多個(gè)訪問單元導(dǎo)出完整性校驗(yàn)碼,其中該多個(gè)訪問單元中
的每一個(gè)都可以是上述NAL單元的任一子集的一部分。也就是說,對(duì)于針對(duì)其計(jì)算完整性
校驗(yàn)碼的該組訪問單元,可以對(duì)其使用上述合適的完整性校驗(yàn)碼??梢允褂迷搶?shí)施例來更
簡便地實(shí)現(xiàn)錯(cuò)誤追蹤。 如上所述,完整性校驗(yàn)碼可以與范圍相關(guān)聯(lián),該范圍表征了用于導(dǎo)出完整性校驗(yàn) 碼的NAL單元。例如,該范圍可以包括d印endencyjd和用于導(dǎo)出完整性校驗(yàn)碼的那些NAL 單元的quality_id的范圍。 并且,編碼器可以將完整性數(shù)據(jù)(即,完整性校驗(yàn)碼及其范圍)作為SEI消息包括
在編碼比特流中。下面是SEI消息語法和語義的例子。
quality—layer—integrity—check (payloadSize){c描述符
num—info—entries—minusl5ue (v)
for(i = 0 ;i <= num—info—entries—minusl ; i++){
entry—dependency—id[i]5u(3)
quality—layer—crc[i]5u(16)
}
} 在上述SEI消息中傳送的信息涉及訪問單元。當(dāng)存在時(shí),該SEI消息可以出現(xiàn)在 相應(yīng)訪問單元的任何編碼片段NAL單元或任何編碼片段數(shù)據(jù)分割NAL單元之前。所述num_ inf0_entries_minuSl語法元素(按1遞增)可以指示在該語法元素之后的信息條目的數(shù) 量。該值可以是從0到7的范圍,包括0和7。所述entry—d印endencyjd[i]語法元素可 以指示依賴性單元的d印endency」d值,該依賴性單元的質(zhì)量層完整性校驗(yàn)碼由之后的語 法元素指示。應(yīng)當(dāng)注意,entry—d印endency」d[i]的例子可以根據(jù)其各自的值按升序排列 出現(xiàn)。quality_layer_crc[i]語法元素可以表示用于依賴性單元中qualityjd大于零的 所有NAL單元的CRC。 針對(duì)quality_layer_crc [i],其值可以等于變量crcVal的值,該變量crcVal可以
通過執(zhí)行以下偽代碼過程來獲得。
qNalUnits[pLen ]=0
qNalUnits[PLen+l] = 0
crcVal = OxFFFF
18
for(bitldx crcMsb = bitVal = crcVal = }
0 ;bitldx < (pLen+2)氺8 ;bitldx++){ (crcVal >> 15)&1
(qNalUnits[bitIdx >> 3] >> (7_ (bitldx&7)))&1 (((crcVal << l)+bitVal)&OxFFFF)~ (crcMsb*0xl021) 應(yīng)當(dāng)注意,變量qNalUnits是字節(jié)串,其中該字節(jié)串的開始包含為之計(jì)算CRC的 數(shù)據(jù);變量pLen,用于指示為之計(jì)算CRC的數(shù)據(jù)的字節(jié)數(shù);和變量qNalUnits的字節(jié)串,其 中qNalUnits要具有足夠的長度能夠允許在為之計(jì)算CRC的數(shù)據(jù)結(jié)尾增加兩個(gè)附加的零值 字節(jié)。另外,該qNalUnits變量可以包括按網(wǎng)絡(luò)字節(jié)順序的、依賴性單元中所有quality_id 大于零的NAL單元的字節(jié)串,其中這些字節(jié)本身是按解碼順序的。還應(yīng)當(dāng)理解,所述完整性 校驗(yàn)數(shù)據(jù),即,校驗(yàn)和,可以在其他CRC變形中計(jì)算,或根據(jù)其他校驗(yàn)和來計(jì)算,包括但不限 于SHA1禾口 MD5。 最后,該反饋消息可以使用帶內(nèi)或帶外協(xié)議來進(jìn)行傳送。這些協(xié)議的一個(gè)例子可 以是RTCP接收機(jī)報(bào)告,其中該協(xié)議的一部分可以固有地支持與視頻發(fā)送機(jī)的同步(例如, 時(shí)間戳形式的RTCP)。在其他環(huán)境下,反饋消息可以包含在其上生成校驗(yàn)和的畫面或訪問單 元的標(biāo)識(shí)。 本發(fā)明是在方法步驟的一般上下文中進(jìn)行描述的,在一個(gè)實(shí)施例中,該方法步驟
可由程序產(chǎn)品來實(shí)現(xiàn),該程序產(chǎn)品包括在網(wǎng)絡(luò)環(huán)境中由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令,
例如程序代碼。通常,程序模塊可以包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程
序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等。計(jì)算機(jī)可執(zhí)行指令、相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)以及程序模塊表示用于
執(zhí)行這里所公開的方法步驟的程序代碼的示例。這種可執(zhí)行指令或相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)的特
定序列表示用于實(shí)施這些步驟或處理中所描述的功能的相應(yīng)動(dòng)作的示例。 本發(fā)明的軟件和web實(shí)現(xiàn)可以通過具有基于規(guī)則的邏輯以及其他用以完成各種
數(shù)據(jù)庫搜索步驟、相關(guān)步驟、比較步驟以及決策步驟的邏輯的標(biāo)準(zhǔn)編程技術(shù)來完成。應(yīng)當(dāng)指
出的是,此處以及下面的權(quán)利要求書中使用的詞語"組件"和"模塊"意在包括使用一行或
多行軟件代碼的實(shí)施和/或硬件實(shí)施和/或用于接收手動(dòng)輸入的裝備。 本發(fā)明實(shí)施例的上述說明是為了說明和描述的目的。上述描述并不意在窮舉或是
將本發(fā)明的實(shí)施例限于所公開的精確形式,并且修改和變化可以參照上述教導(dǎo)做出,或者
可以從本發(fā)明的各種實(shí)施例的實(shí)踐中獲得。選擇和描述實(shí)施例是為了解釋本發(fā)明的各種實(shí)
施例的原理和屬性及其實(shí)踐應(yīng)用,以便使本領(lǐng)域技術(shù)人員能夠在各種實(shí)施例中利用本發(fā)明
并且可以具有各種修改以適應(yīng)于特定的預(yù)期應(yīng)用。具體而言,本發(fā)明可以用于任何能夠提
供與SVC中的FGS和MGS相類似的特性的媒體編碼格式。應(yīng)當(dāng)注意,F(xiàn)GS和MGS與各個(gè)實(shí)
施例相關(guān)的特征在于,存在數(shù)據(jù)單元(在FGS和MGS中的qualityjd大于0的NAL單元),
這樣即使數(shù)據(jù)單元被丟棄或被截?cái)?,也可以?duì)媒體采樣進(jìn)行解碼。
19
權(quán)利要求
一種將媒體采樣組編碼為第一訪問單元的方法,包括在第一數(shù)據(jù)單元組上生成第一完整性校驗(yàn)碼,所述第一數(shù)據(jù)單元組至少包括所述第一訪問單元的一部分,其中對(duì)所述第一數(shù)據(jù)單元組的至少一個(gè)數(shù)據(jù)單元的丟棄和截?cái)嘀械闹辽僖徽卟粫?huì)妨礙對(duì)所述媒體采樣組的解碼。
2. 根據(jù)權(quán)利要求1的方法,其中所述媒體采樣組包括畫面。
3. 根據(jù)權(quán)利要求2的方法,進(jìn)一步包括,將第二畫面編碼為第二訪問單元,所述第二訪 問單元包括第二數(shù)據(jù)單元組,所述第二數(shù)據(jù)單元組包括依賴于所述第一訪問單元的至少一 個(gè)數(shù)據(jù)單元的至少一個(gè)數(shù)據(jù)單元,其中,根據(jù)包括在所述第二訪問單元中的所述至少一個(gè) 數(shù)據(jù)單元和所述第一訪問單元的所述至少一個(gè)數(shù)據(jù)單元來生成第二完整性校驗(yàn)碼。
4. 根據(jù)權(quán)利要求l的方法,其中所述第一數(shù)據(jù)單元組包括在依賴性單元^中 quality_id值大于零的至少一個(gè)數(shù)據(jù)單元。
5. 根據(jù)權(quán)利要求4的方法,其中所述第一數(shù)據(jù)單元組的每個(gè)數(shù)據(jù)單元具有在依賴性單 元中大于零的quality_id值。
6. 根據(jù)權(quán)利要求l的方法,其中所述第一數(shù)據(jù)單元組包括在依賴性單元中具有可變 quality_id值的數(shù)據(jù)單元。
7. 根據(jù)權(quán)利要求l的方法,其中所述第一數(shù)據(jù)單元組包括在依賴性單元中具有相匹配 的特定quality_id值的數(shù)據(jù)單元。
8. 權(quán)利要求l的方法,進(jìn)一步包括,在附加媒體采樣組的附加訪問單元上生成附加完 整性校驗(yàn)碼,其中第一訪問單元和每個(gè)附加訪問單元都包括下列中的一個(gè)在依賴性單元 中quality_id值大于零的至少一個(gè)數(shù)據(jù)單元、在依賴性單元中具有可變quality_id值的 數(shù)據(jù)單元、以及在依賴性單元中具有相匹配的特定qualityjd值的數(shù)據(jù)單元。
9. 根據(jù)權(quán)利要求l的方法,其中第一數(shù)據(jù)單元組由范圍來表征。
10. 根據(jù)權(quán)利要求9的方法,其中該范圍由d印endencyjd來指示。
11. 根據(jù)權(quán)利要求10的方法,其中在第一訪問單元中包括范圍和第一完整性校驗(yàn)碼。
12. 根據(jù)權(quán)利要求1的方法,進(jìn)一步包括接收范圍以及肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一個(gè),所述肯定確認(rèn)反饋消 息和所述否定確認(rèn)反饋消息中的一個(gè)指示在該范圍內(nèi)的第一數(shù)據(jù)單元組的內(nèi)容是否正確, 其中根據(jù)所述肯定確認(rèn)反饋消息和所述否定確認(rèn)反饋消息中的至少一個(gè)來執(zhí)行編碼。
13. 根據(jù)權(quán)利要求12的方法,其中所述范圍表征在其上生成第一完整性校驗(yàn)碼的所述 數(shù)據(jù)單元組的數(shù)據(jù)單元。
14. 根據(jù)權(quán)利要求1的方法,進(jìn)一步包括接收范圍以及肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一個(gè),所述肯定確認(rèn)反饋消 息和所述否定確認(rèn)反饋消息中的一個(gè)指示所述范圍內(nèi)的第一數(shù)據(jù)單元組的內(nèi)容是否正確; 和執(zhí)行錯(cuò)誤追蹤,以確定所述數(shù)據(jù)單元組的內(nèi)容是否正確,其中根據(jù)所述肯定確認(rèn)反饋 消息和所述否定確認(rèn)反饋消息中的一個(gè)和錯(cuò)誤追蹤中的至少一個(gè)來執(zhí)行編碼。
15. 根據(jù)權(quán)利要求14的方法,其中所述范圍表征在其上生成第一完整性校驗(yàn)碼的所述 數(shù)據(jù)單元組的數(shù)據(jù)單元。
16. —種包含在計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品,包括配置用于執(zhí)行權(quán)利要求1的過程的計(jì)算機(jī)代碼。
17. —種設(shè)備,包括 處理器;和可操作地連接至所述處理器的存儲(chǔ)單元,包括計(jì)算機(jī)代碼,配置用于至少通過在第一數(shù)據(jù)單元組上生成第一完整性校驗(yàn)碼來將媒體 采樣組編碼為第一訪問單元,所述第一數(shù)據(jù)單元組至少包括所述第一訪問單元的一部分, 其中對(duì)所述第一數(shù)據(jù)單元組的至少一個(gè)數(shù)據(jù)單元的丟棄和截?cái)嘀械闹辽僖徽卟粫?huì)妨礙對(duì) 所述媒體采樣組的解碼。
18. 根據(jù)權(quán)利要求17的設(shè)備,其中所述媒體采樣組包括畫面。
19. 根據(jù)權(quán)利要求18的設(shè)備,其中所述存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置用于將 第二畫面編碼為第二訪問單元,該第二訪問單元包括第二數(shù)據(jù)單元組,該第二數(shù)據(jù)單元組 包括依賴于所述第一訪問單元的至少一個(gè)數(shù)據(jù)單元的至少一個(gè)數(shù)據(jù)單元,其中,根據(jù)包括 在所述第二訪問單元中的所述至少一個(gè)數(shù)據(jù)單元和所述第一訪問單元的所述至少一個(gè)數(shù) 據(jù)單元來生成第二完整性校驗(yàn)碼。
20. 根據(jù)權(quán)利要求17的設(shè)備,其中所述第-id值大于零的至少一個(gè)數(shù)據(jù)單元。
21. 根據(jù)權(quán)利要求20的設(shè)備,其中所述第 單元中大于零的quality_id值。
22. 根據(jù)權(quán)利要求17的設(shè)備,其中所述第 quality_id值的數(shù)據(jù)單元。
23. 根據(jù)權(quán)利要求17的設(shè)備,其中所述第 配的特定quality_id值的數(shù)據(jù)單元。
24. 根據(jù)權(quán)利要求17的設(shè)備,其中所述存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置用于在 附加媒體采樣組的附加訪問單元上生成附加完整性校驗(yàn)碼,其中第一訪問單元和每個(gè)附加 訪問單元都包括下列中的一個(gè)在依賴性單元中quality」d值大于零的至少一個(gè)數(shù)據(jù)單 元、在依賴性單元中具有可變qualityjd值的數(shù)據(jù)單元、以及在依賴性單元中具有相匹配 的特定quality_id值的數(shù)據(jù)單元。
25. 根據(jù)權(quán)利要求17的設(shè)備,其中存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置用于 接收范圍以及肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一個(gè),所述肯定確認(rèn)反饋消息和所述否定確認(rèn)反饋消息中的一個(gè)指示在該范圍內(nèi)的第一數(shù)據(jù)單元組的內(nèi)容是否正確, 其中根據(jù)所述肯定確認(rèn)反饋消息和所述否定確認(rèn)反饋消息中的至少一個(gè)來執(zhí)行編碼。
26. 根據(jù)權(quán)利要求17的設(shè)備,其中存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置用于 接收范圍以及肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一個(gè),所述肯定確認(rèn)反饋消息和所述否定確認(rèn)反饋消息中的一個(gè)指示所述范圍內(nèi)的數(shù)據(jù)單元組是否是正確接收的和 內(nèi)容正確的至少其中之一 ;禾口執(zhí)行錯(cuò)誤追蹤,以確定所述數(shù)據(jù)單元組的內(nèi)容是否正確,其中根據(jù)所述肯定確認(rèn)反饋 消息和所述否定確認(rèn)反饋消息中的一個(gè)和錯(cuò)誤追蹤中的至少一個(gè)來執(zhí)行編碼。
27. —種用于將第一訪問單元組解碼為媒體采樣組的方法,包括接收表征第一數(shù)據(jù)單元組的第一范圍,該第一數(shù)據(jù)單元組至少包括第一訪問單元的一一數(shù)據(jù)單元組包括在依賴性單元中quality— 一數(shù)據(jù)單元組的每個(gè)數(shù)據(jù)單元具有在依賴性 一數(shù)據(jù)單元組包括在依賴性單元中具有可變 一數(shù)據(jù)單元組包括在依賴性單元中具有相匹部分和與所述第一訪問單元相關(guān)聯(lián)的第一完整性校驗(yàn)碼,在所述第一數(shù)據(jù)單元組上生成所 述第一完整性校驗(yàn)碼;在所述第一數(shù)據(jù)單元組上生成第二完整性校驗(yàn)碼,其中當(dāng)來自所述第一數(shù)據(jù)單元組的 至少一個(gè)數(shù)據(jù)單元被丟棄和/或截?cái)鄷r(shí),允許對(duì)所述媒體采樣組進(jìn)行解碼。
28. 根據(jù)權(quán)利要求27的方法,進(jìn)一步包括執(zhí)行錯(cuò)誤追蹤,以確定所述第一數(shù)據(jù)單元組 的內(nèi)容是否正確。
29. 根據(jù)權(quán)利要求27的方法,其中所述媒體采樣組包括畫面。
30. 根據(jù)權(quán)利要求29的方法,進(jìn)一步包括將編碼的第二畫面解碼為第二訪問單元,所 述第二訪問單元包括第二數(shù)據(jù)單元組,所述第二數(shù)據(jù)單元組包括依賴于所述第一訪問單元 的至少一個(gè)數(shù)據(jù)單元的至少一個(gè)數(shù)據(jù)單元,其中根據(jù)包括在所述第二訪問單元中的所述至 少一個(gè)數(shù)據(jù)單元和所述第一訪問單元的所述至少一個(gè)數(shù)據(jù)單元來生成第三完整性校驗(yàn)碼。
31. 根據(jù)權(quán)利要求27的方法,其中所述第一數(shù)據(jù)單元組包括在依賴性單元中quality— id值大于零的至少一個(gè)數(shù)據(jù)單元。
32. 根據(jù)權(quán)利要求31的方法,其中所述第一數(shù)據(jù)單元組的每個(gè)數(shù)據(jù)單元具有在依賴性 單元中大于零的qualityjd值。
33. 根據(jù)權(quán)利要求27的方法,其中所述第一數(shù)據(jù)單元組包括在依賴性單元中具有可變 qualityjd值的數(shù)據(jù)單元。
34. 根據(jù)權(quán)利要求27的方法,其中所述第一數(shù)據(jù)單元組包括在依賴性單元中具有相匹 配的特定qualityjd值的數(shù)據(jù)單元。
35. 根據(jù)權(quán)利要求27的方法,進(jìn)一步包括,在附加媒體采樣組的附加采樣單元上解碼 附加完整性校驗(yàn)碼,其中第一訪問單元和每個(gè)附加訪問單元都包括下列中的一個(gè)在依賴 性單元中qualityjd值大于零的至少一個(gè)數(shù)據(jù)單元、在依賴性單元中具有可變quality— id值的數(shù)據(jù)單元、以及在依賴性單元中具有相匹配的特定qualityjd值的數(shù)據(jù)單元。
36. 根據(jù)權(quán)利要求27的方法,進(jìn)一步包括將所述第一和第二完整性校驗(yàn)碼進(jìn)行比較,以確定數(shù)據(jù)單元組中的所有數(shù)據(jù)單元是否 被正確接收;禾口在后續(xù)范圍內(nèi)生成肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一個(gè),所述肯定確認(rèn)反 饋消息和所述否定確認(rèn)反饋消息中的一個(gè)指示所述第一范圍內(nèi)的所述第一數(shù)據(jù)單元組是 否是被正確接收和內(nèi)容正確中的至少一者。
37. —種包含在計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,包括配置用于執(zhí)行權(quán)利要求27 的過程的計(jì)算機(jī)代碼。
38. —種設(shè)備,包括 處理器;和可操作地連接至所述處理器的存儲(chǔ)單元,包括計(jì)算機(jī)代碼,配置用于通過接收表征第一數(shù)據(jù)單元組的第一范圍來將第一訪問單元解 碼為媒體采樣組,該第一數(shù)據(jù)單元組至少包括第一訪問單元的一部分和與所述第一訪問單 元相關(guān)聯(lián)的第一完整性校驗(yàn)碼,在所述第一數(shù)據(jù)單元組上生成所述第一完整性校驗(yàn)碼;以 及,在所述第一數(shù)據(jù)單元組上生成第二完整性校驗(yàn)碼,其中當(dāng)來自所述第一數(shù)據(jù)單元組的 至少一個(gè)數(shù)據(jù)單元被丟棄和/或截?cái)鄷r(shí),允許對(duì)所述媒體采樣組進(jìn)行解碼。
39. 根據(jù)權(quán)利要求38的設(shè)備,其中所述存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置執(zhí)行錯(cuò) 誤追蹤,以確定所述第一數(shù)據(jù)單元組的內(nèi)容是否正確。
40. 根據(jù)權(quán)利要求38的設(shè)備,其中所述媒體采樣組包括畫面。
41. 根據(jù)權(quán)利要求40的設(shè)備,其中所述存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置用于將 編碼的第二畫面解碼為第二訪問單元,所述第二訪問單元包括第二數(shù)據(jù)單元組,所述第二 數(shù)據(jù)單元組包括與所述第一訪問單元的至少一個(gè)數(shù)據(jù)單元相關(guān)聯(lián)的至少一個(gè)數(shù)據(jù)單元,其 中根據(jù)包括在所述第二訪問單元中的所述至少一個(gè)數(shù)據(jù)單元和所述第一訪問單元的所述 至少一個(gè)數(shù)據(jù)單元來生成第三完整性校驗(yàn)碼。
42. 根據(jù)權(quán)利要求38的設(shè)備,其中所述第-id值大于零的至少一個(gè)數(shù)據(jù)單元。
43. 根據(jù)權(quán)利要求42的設(shè)備,其中所述第 單元中大于零的qualityjd值。
44. 根據(jù)權(quán)利要求38的設(shè)備,其中所述第 qualityjd值的數(shù)據(jù)單元。
45. 根據(jù)權(quán)利要求38的設(shè)備,其中所述第 配的特定qualityjd值的數(shù)據(jù)單元。
46. 根據(jù)權(quán)利要求38的設(shè)備,其中所述存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置用于在 附加媒體采樣組的附加采樣單元上解碼附加完整性校驗(yàn)碼,其中第一訪問單元和每個(gè)附加 訪問單元都包括下列中的一個(gè)在依賴性單元中quality」d值大于零的至少一個(gè)數(shù)據(jù)單 元、在依賴性單元中具有可變qualityjd值的數(shù)據(jù)單元、以及在依賴性單元中具有相匹配 的特定qualityjd值的數(shù)據(jù)單元。
47. 根據(jù)權(quán)利要求38的設(shè)備,其中存儲(chǔ)單元進(jìn)一步包括計(jì)算機(jī)代碼,配置用于將所述第一和第二完整性校驗(yàn)碼進(jìn)行比較,以確定數(shù)據(jù)單元組 中的所有數(shù)據(jù)單元是否被正確接收;禾口計(jì)算機(jī)代碼,配置用于在后續(xù)范圍內(nèi)生成肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的 一個(gè),所述肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一個(gè)指示所述第一范圍內(nèi)的所述第 一數(shù)據(jù)單元組是否是被正確接收和內(nèi)容正確中的至少一者。
48. —種將第一訪問單元解碼為媒體采樣組的方法,包括根據(jù)范圍生成肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一個(gè),所述肯定確認(rèn)反饋消 息和所述否定確認(rèn)反饋消息中的一個(gè)指示所述范圍內(nèi)包括第一訪問單元的數(shù)據(jù)單元組的 內(nèi)容是否正確;禾口產(chǎn)生與第一訪問單元關(guān)聯(lián)的第一完整性校驗(yàn)碼,并將所述第一完整性校驗(yàn)碼包括在所 述肯定確認(rèn)反饋消息和所述否定確認(rèn)反饋消息中的一個(gè)內(nèi),其中在數(shù)據(jù)單元組上生成所述 第一完整性校驗(yàn)碼,所述數(shù)據(jù)單元組至少包括所述第一訪問單元的一部分。
49. 根據(jù)權(quán)利要求48的方法,其中當(dāng)接收到所述范圍和所述肯定確認(rèn)反饋消息和所述 否定確認(rèn)反饋消息中的一個(gè)時(shí),在編碼器處在所述范圍上成第二完整性校驗(yàn)碼,將所述第 一和第二完整性校驗(yàn)碼進(jìn)行比較,以確定是否正確接收了所述數(shù)據(jù)單元組,并在所述編碼 器處執(zhí)行錯(cuò)誤追蹤,以確定所述數(shù)據(jù)單元組的內(nèi)容是否正確。
50. —種包含在計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,包括配置用于執(zhí)行權(quán)利要求48一數(shù)據(jù)單元組包括在依賴性單元中quality— 一數(shù)據(jù)單元組的每個(gè)數(shù)據(jù)單元具有在依賴性 一數(shù)據(jù)單元組包括在依賴性單元中具有可變 一數(shù)據(jù)單元組包括在依賴性單元中具有相匹的過程的計(jì)算機(jī)代碼。
51. —種設(shè)備,包括 處理器;和可操作地連接至所述處理器的存儲(chǔ)單元,包括計(jì)算機(jī)代碼,配置用于將第一訪問單元組解碼為媒體采樣組;計(jì)算機(jī)代碼,配置用于根據(jù)范圍生成肯定確認(rèn)反饋消息和否定確認(rèn)反饋消息中的一 個(gè),所述肯定確認(rèn)反饋消息和所述否定確認(rèn)反饋消息中的一個(gè)指示所述范圍內(nèi)包括第一訪 問單元的數(shù)據(jù)單元組的內(nèi)容是否正確;禾口計(jì)算機(jī)代碼,配置用于產(chǎn)生與第一訪問單元關(guān)聯(lián)的第一完整性校驗(yàn)碼,并將所述第一 完整性校驗(yàn)碼包括在所述肯定確認(rèn)反饋消息和所述否定確認(rèn)反饋消息中的一個(gè)內(nèi),其中在 數(shù)據(jù)單元組上生成所述第一完整性校驗(yàn)碼,所述數(shù)據(jù)單元組至少包括所述第一訪問單元的 一部分。
52. 根據(jù)權(quán)利要求51的設(shè)備,其中當(dāng)接收到所述范圍和所述肯定確認(rèn)反饋消息和所 述否定確認(rèn)反饋消息中的一個(gè)時(shí),在編碼器處在所述范圍上成第二完整性校驗(yàn)碼,在所述 編碼器處將所述第一和第二完整性校驗(yàn)碼進(jìn)行比較,以確定是否正確接收了所述數(shù)據(jù)單元 組,并在所述編碼器處執(zhí)行錯(cuò)誤追蹤,以確定所述數(shù)據(jù)單元組的內(nèi)容是否正確。
53. —種系統(tǒng),包括編碼器,配置用于通過在第一數(shù)據(jù)單元組上至少生成第一范圍和第一完整性校驗(yàn)碼 來將媒體采樣組編碼為第一訪問單元,所述第一數(shù)據(jù)單元組至少包括第一訪問單元的一部 分,其中對(duì)所述第一數(shù)據(jù)單元組的至少一個(gè)數(shù)據(jù)單元的丟棄和截?cái)嘀械闹辽僖徽卟粫?huì)妨礙 對(duì)所述媒體采樣組的解碼;解碼器,配置用于通過接收表征第一數(shù)據(jù)單元組的第一范圍來將第一訪問單元解碼為 媒體采樣組,該第一數(shù)據(jù)單元組包括第一訪問單元和第一完整性校驗(yàn)碼;以及,在所述第一 數(shù)據(jù)單元組上生成第二完整性校驗(yàn)碼,其中當(dāng)來自所述第一數(shù)據(jù)單元組的至少一個(gè)數(shù)據(jù)單 元被丟棄和/或截?cái)鄷r(shí),允許對(duì)所述媒體采樣組進(jìn)行解碼。
54. 根據(jù)權(quán)利要求53的系統(tǒng),其中解碼器根據(jù)所述第一完整性校驗(yàn)碼和所述第二完整 性校驗(yàn)碼生成用于發(fā)送至所述編碼器的反饋消息。
55. 根據(jù)權(quán)利要求53的系統(tǒng),其中當(dāng)所述第一完整性校驗(yàn)碼與所述第二完整性校驗(yàn)碼 不相等時(shí),所述反饋消息為否定確認(rèn)。
56. 根據(jù)權(quán)利要求53的系統(tǒng),其中當(dāng)所述第一完整性校驗(yàn)碼與所述第二完整性校驗(yàn)碼 相等時(shí),所述反饋消息為肯定確認(rèn)。
57. —種系統(tǒng),包括解碼器,配置用于將第一訪問單元解碼為媒體采樣組,生成范圍和反饋消息,所述反饋 消息指示至少包括所述第一訪問單元的一部分的數(shù)據(jù)單元組的內(nèi)容是否正確,以及,在所 述范圍內(nèi)的數(shù)據(jù)單元組上生成第一完整性校驗(yàn)碼;禾口編碼器,配置用于接收所述第一完整性校驗(yàn)碼和所述反饋消息,在所述數(shù)據(jù)單元組上 生成第二完整性校驗(yàn)碼,將所述第一與第二完整性校驗(yàn)碼進(jìn)行比較,以確定所述數(shù)據(jù)單元 組中的所有數(shù)據(jù)單元是否被正確接收,以及執(zhí)行錯(cuò)誤追蹤,以確定所述數(shù)據(jù)單元組的內(nèi)容 是否正確。
58. 根據(jù)權(quán)利要求57的系統(tǒng),其中當(dāng)所述第一完整性校驗(yàn)碼與所述第二完整性校驗(yàn)碼 不相等時(shí),所述反饋消息為否定確認(rèn)。
59. 根據(jù)權(quán)利要求57的系統(tǒng),其中當(dāng)所述第一完整性校驗(yàn)碼與所述第二完整性校驗(yàn)碼 相等時(shí),所述反饋消息為肯定確認(rèn)。
60. —種將第一訪問單元解碼為媒體采樣組的方法,其中第一訪問單元包括第一數(shù)據(jù) 單元組,所述方法包括在來自所述第一數(shù)據(jù)單元組的至少一個(gè)數(shù)據(jù)單元上生成第一完整性校驗(yàn)碼;禾口 生成包括所述第一完整性校驗(yàn)碼的反饋消息,其中當(dāng)所述至少一個(gè)數(shù)據(jù)單元被丟棄和 /或截?cái)鄷r(shí),允許對(duì)所述媒體采樣組進(jìn)行解碼。
61. 根據(jù)權(quán)利要求60的方法,其中所述媒體采樣組包括畫面。
全文摘要
一種系統(tǒng)和方法提供第一完整性校驗(yàn)碼,其能夠由編碼器計(jì)算出并作為補(bǔ)充增強(qiáng)信息消息發(fā)送至解碼器。之后解碼器在實(shí)際所接收的網(wǎng)絡(luò)抽象層單元上計(jì)算出第二完整性校驗(yàn)碼??梢詫⒃摰诙暾孕r?yàn)碼與編碼器生成的、并通過補(bǔ)充增強(qiáng)信息消息所發(fā)送的第一完整性校驗(yàn)碼進(jìn)行比較,以指示實(shí)際上從中生成完整性校驗(yàn)碼的、所發(fā)送的所有NAL單元是否已經(jīng)被接收到而它們的內(nèi)容沒有變化。另外,提供錯(cuò)誤追蹤算法,該算法能夠在編碼器或解碼器上運(yùn)行,以確定網(wǎng)絡(luò)抽象層單元的內(nèi)容在解碼器端是否正確。因此,僅作為幀內(nèi)編碼幀發(fā)送的畫面和僅作為幀間編碼幀發(fā)送的畫面都可以進(jìn)行錯(cuò)誤檢驗(yàn)。因此,可以在解碼器不能向編碼器提供足夠的、關(guān)于什么內(nèi)容已經(jīng)確切地被解碼的信息的情況下,提供錯(cuò)誤檢驗(yàn)。
文檔編號(hào)H04L1/16GK101796846SQ200880020587
公開日2010年8月4日 申請(qǐng)日期2008年4月15日 優(yōu)先權(quán)日2007年4月17日
發(fā)明者M·安尼克塞拉, 王業(yè)奎 申請(qǐng)人:諾基亞公司