使用有來(lái)自至少兩個(gè)數(shù)據(jù)流的碼元及數(shù)據(jù)流之間的同步化起始碼元標(biāo)識(shí)符的源塊的前向糾錯(cuò)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明一般涉及信息和/或數(shù)據(jù)的傳輸、廣播和/或儲(chǔ)存。更具體地,本發(fā)明涉及對(duì)將傳輸、廣播和/或儲(chǔ)存的數(shù)據(jù)的前向糾錯(cuò)。根據(jù)本發(fā)明的一些實(shí)施方案涉及前向糾錯(cuò)數(shù)據(jù)生成器。本發(fā)明的一些實(shí)施方案涉及前向糾錯(cuò)解碼器。一些實(shí)施方案涉及用于生成前向糾錯(cuò)數(shù)據(jù)的方法。另一些實(shí)施方案涉及用于解碼前向糾錯(cuò)的方法。本發(fā)明的一些方面涉及重構(gòu)具有同步SI (碼元ID)的FEC (前向糾錯(cuò))源塊。
【背景技術(shù)】
[0002]現(xiàn)在仍然對(duì)視頻編碼技術(shù)進(jìn)行研究,以支持例如提高空間分辨率(例如,UHD,超高清晰度)。另一些研究關(guān)注在于減少傳輸?shù)臄?shù)和/或最佳化編碼效率,對(duì)于移動(dòng)應(yīng)用尤其如此。在可用的視頻編碼標(biāo)準(zhǔn)中,H.264/MPEG-4AVC標(biāo)準(zhǔn)可能是使用最廣泛的,被用于超過(guò)10億臺(tái)裝置。
[0003]自從2003年引入了 H.264/MPEG-4AVC標(biāo)準(zhǔn),已經(jīng)成功地對(duì)基礎(chǔ)標(biāo)準(zhǔn)進(jìn)行了數(shù)次擴(kuò)展,例如,H.264/AVC標(biāo)準(zhǔn)的可伸縮視頻編碼修訂(SVC)和多視點(diǎn)視頻編碼修訂(MVC)。
[0004]H.264/AVC標(biāo)準(zhǔn)的可伸縮視頻編碼修訂(SVC)提供了比特流水平的網(wǎng)絡(luò)友好的可伸縮性,在解碼器復(fù)雜性方面相對(duì)于單層H.264/AVC有適度的增加。其支持例如以下功能:在有損傳輸環(huán)境中適度失真的比特率、格式和功率適配,以及將可伸縮品質(zhì)的SVC比特流無(wú)損重寫(xiě)成單層H.264/AVC比特流。這些功能為傳輸和儲(chǔ)存應(yīng)用提供了改進(jìn)。SVC已經(jīng)實(shí)現(xiàn)了在編碼效率方面的顯著改進(jìn),相對(duì)于之前的視頻編碼標(biāo)準(zhǔn)的可伸縮性具有升高的可伸縮性支持度。
[0005]H.264/AVC標(biāo)準(zhǔn)的多視點(diǎn)視頻編碼修訂(MVC)提供了比特流水平的視點(diǎn)可所伸縮性。這允許以高效并且后向兼容的方式來(lái)高效傳輸多視點(diǎn)視頻(例如,具有2個(gè)視點(diǎn)的適于在立體展示上觀看的視頻)。傳統(tǒng)的H.264/AVC解碼器解碼包含于多視點(diǎn)比特流中的兩個(gè)視點(diǎn)中的僅一個(gè)(所謂基礎(chǔ)視點(diǎn))。重構(gòu)的視頻序列可在常規(guī)的2d顯示器上顯示。與之相反,立體解碼器能夠解碼兩個(gè)視點(diǎn),并且所解碼的視頻序列(一個(gè)用于左眼并且一個(gè)用于右眼)適用于3d顯示器。
[0006]SVC和MVC 二者都可被視為所謂的分層媒體編碼技術(shù)的例子,所述分層媒體編碼技術(shù)生成具有多個(gè)媒體層的視頻比特流,每個(gè)媒體層表示另一個(gè)品質(zhì)水平。由于層間預(yù)測(cè),在這些媒體層之間存在層級(jí),其中媒體層依賴于其他媒體層以進(jìn)行成功解碼。層感知前向糾錯(cuò)(LA-FEC)利用對(duì)分層媒體流內(nèi)存在的依賴性結(jié)構(gòu)的認(rèn)識(shí)。LA-FEC生成FEC數(shù)據(jù),使得對(duì)重要性較低的媒體層的保護(hù)可用于保護(hù)重要性更高的媒體層的數(shù)據(jù),從而進(jìn)行聯(lián)合糾錯(cuò)。通過(guò)此方式,LA-FEC實(shí)現(xiàn)新功能,并且在不增加數(shù)據(jù)的總量的情況下提高對(duì)重要性較高的媒體的保護(hù)。
[0007]為了通過(guò)使用層感知前向糾錯(cuò)來(lái)對(duì)傳輸通道的接收器側(cè)接收的數(shù)據(jù)進(jìn)行糾錯(cuò),F(xiàn)EC解碼器需要與指定的有效載荷數(shù)據(jù)部分與可用于在所述的有效載荷數(shù)據(jù)部分中進(jìn)行糾錯(cuò)(例如,傳輸錯(cuò)誤)的FEC奇偶校驗(yàn)數(shù)據(jù)部分之間的相關(guān)性有關(guān)的認(rèn)識(shí)。換言之,F(xiàn)EC解碼器必須能夠在所述有效載荷數(shù)據(jù)部分與相應(yīng)的FEC奇偶校驗(yàn)數(shù)據(jù)部分之間的連接,以成功地對(duì)所述有效載荷數(shù)據(jù)和/或所示FEC奇偶校驗(yàn)數(shù)據(jù)進(jìn)行糾錯(cuò)。當(dāng)使用不同的數(shù)據(jù)或數(shù)據(jù)流來(lái)傳輸基礎(chǔ)表示、強(qiáng)化表示以及FEC奇偶信息時(shí),這方面變得特別重要。其中有效載荷數(shù)據(jù)與FEC奇偶校驗(yàn)數(shù)據(jù)之間的相關(guān)性不明確的另一個(gè)可行性方案是,經(jīng)分組交換網(wǎng)絡(luò)傳輸有效載荷數(shù)據(jù)和FEC奇偶校驗(yàn)數(shù)據(jù),以使每個(gè)組可采取不同路線并且在不同時(shí)間到達(dá)接收器。
【發(fā)明內(nèi)容】
[0008]因此,期望FEC奇偶校驗(yàn)數(shù)據(jù)與有效載荷數(shù)據(jù)之間的相關(guān)性的高效和/或穩(wěn)定的信號(hào)發(fā)送,用于改進(jìn)糾錯(cuò)能力和/或糾錯(cuò)效率等。通過(guò)如權(quán)利要求1所述的前向糾錯(cuò)數(shù)據(jù)生成器、如權(quán)利要求9所述的前向糾錯(cuò)解碼器、如權(quán)利要求12所述的用于生成前向糾錯(cuò)數(shù)據(jù)的方法、如權(quán)利要求20所述的用于前向糾錯(cuò)解碼的方法以及如權(quán)利要求23所述的計(jì)算機(jī)程序,實(shí)現(xiàn)了本發(fā)明的目的。
[0009]提供了前向糾錯(cuò)數(shù)據(jù)生成器。所述前向糾錯(cuò)數(shù)據(jù)生成器包括用于將以關(guān)聯(lián)的方式對(duì)至少兩個(gè)數(shù)據(jù)流生成前向糾錯(cuò)數(shù)據(jù)的輸入端,每個(gè)數(shù)據(jù)流包含多個(gè)碼元,其中前向糾錯(cuò)數(shù)據(jù)碼元基于可能包含所述至少兩個(gè)數(shù)據(jù)流的碼元子集的前向糾錯(cuò)(FEC)源塊。所述前向糾錯(cuò)數(shù)據(jù)生成器還包括信令信息生成器,其配置成通過(guò)確定指向所述至少兩個(gè)數(shù)據(jù)流的第一數(shù)據(jù)流內(nèi)的起始碼元的指針、指向所述至少兩個(gè)數(shù)據(jù)流的第二數(shù)據(jù)流內(nèi)的起始碼元的指針、所述第一數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù)以及所述第二數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù),從而針對(duì)所述至少兩個(gè)數(shù)據(jù)流內(nèi)的哪些碼元屬于相應(yīng)的源塊來(lái)生成用于前向糾錯(cuò)數(shù)據(jù)碼元的信令信息。
[0010]一些實(shí)施方案提供了前向糾錯(cuò)解碼器,其包含配置成接收修復(fù)流的輸入端,該修復(fù)流包含相對(duì)于將前向糾錯(cuò)的至少兩個(gè)接收的數(shù)據(jù)流的修復(fù)碼元。所述前向糾錯(cuò)解碼器還包括配置成對(duì)修復(fù)碼元內(nèi)或與修復(fù)碼元連接的信令信息進(jìn)行分析的信令信息分析器。所述信令信息包含指向所述至少兩個(gè)數(shù)據(jù)流中的至少一個(gè)內(nèi)的起始碼元的指針、所述第一數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù)以及所述第二數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù)。所述前向糾錯(cuò)解碼器還包括配制成使用所述信令信息來(lái)收集所述至少兩個(gè)數(shù)據(jù)流內(nèi)的屬于當(dāng)前源塊的碼元的源塊收集器。
[0011]此外,還提供了用于生成前向糾錯(cuò)數(shù)據(jù)的方法。所述方法包括接收至少兩個(gè)數(shù)據(jù)流,將以關(guān)聯(lián)的方式對(duì)所述至少兩個(gè)數(shù)據(jù)流生成前向糾錯(cuò)數(shù)據(jù)。每個(gè)數(shù)據(jù)流包含多個(gè)碼元。前向糾錯(cuò)數(shù)據(jù)碼元基于可能包含所述至少兩個(gè)數(shù)據(jù)流的碼元子集的前向糾錯(cuò)(FEC)源塊。所述方法還包括針對(duì)所述至少兩個(gè)數(shù)據(jù)流內(nèi)的哪些碼元屬于相應(yīng)的源塊來(lái)生成用于所述前向糾錯(cuò)碼元的信令信息。特別地,通過(guò)確定指向所述至少兩個(gè)數(shù)據(jù)流的第一數(shù)據(jù)流內(nèi)的起始碼元的指針、指向所述至少兩個(gè)數(shù)據(jù)流的第二數(shù)據(jù)流內(nèi)的起始碼元的指針、所述第一數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù)以及所述第二數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù)來(lái)生成所述信令信息。
[0012]關(guān)于解碼方面,還提供了用于前向糾錯(cuò)解碼的方法。所述方法包括接收包含與待前向糾錯(cuò)的至少兩個(gè)接收的數(shù)據(jù)流有關(guān)的修復(fù)碼元的至少一個(gè)修復(fù)流。所述方法還包括分析修復(fù)碼元內(nèi)或與修復(fù)碼元連接的信令信息。所述信令信息包含指向所述至少兩個(gè)數(shù)據(jù)流中的至少一個(gè)內(nèi)的起始碼元的指針、所述第一數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù)以及所述第二數(shù)據(jù)流內(nèi)的屬于所述相應(yīng)源塊的碼元數(shù)。所述方法還包括使用所述信令信息來(lái)收集所述至少兩個(gè)數(shù)據(jù)流內(nèi)的屬于當(dāng)前源塊的碼元。
[0013]此外,本發(fā)明還提供了在計(jì)算機(jī)或信令處理器上運(yùn)行時(shí)用于實(shí)施上述方法中的計(jì)算機(jī)程序。
【附圖說(shuō)明】
[0014]以下,通過(guò)引用附圖更詳細(xì)地描述了本發(fā)明的實(shí)施方案,其中:
[0015]圖1以圖示的方式描述了分層編碼媒體的結(jié)構(gòu)的例子;
[0016]圖2以圖示的方式描述了用LA-FEC生成FEC數(shù)據(jù)的思路;
[0017]圖3以圖示的方式描述了其中兩個(gè)源流具有獨(dú)立的碼元標(biāo)識(shí)符(SI)的第一種方法;
[0018]圖4以圖示的方式描述了第二種方法,據(jù)此FEC源塊的同步點(diǎn)設(shè)置有每個(gè)FEC源塊的同步化的SI ;
[0019]圖5以圖示的方式描述了可如何為了 LA-FEC對(duì)第一數(shù)據(jù)流和第二數(shù)據(jù)流內(nèi)的碼元進(jìn)行分組或收集;
[0020]圖6示出了描述如何在編碼器側(cè)處理數(shù)據(jù)流的示意框圖;并且
[0021]圖7示出FEC數(shù)據(jù)生成器的一部分的示意框圖。
【具體實(shí)施方式】
[0022]前向糾錯(cuò)(FEC)或通道編碼是一種可用在通過(guò)不穩(wěn)定的信道或嘈雜的信道的數(shù)據(jù)傳輸中進(jìn)行糾錯(cuò)的技術(shù)。為此,通過(guò)使用糾錯(cuò)碼(ECC)在通道的傳輸器端向初始信息中添加一定量的冗余。由于添加了冗余,所以只要信息中的任何位置發(fā)生僅有限數(shù)量的錯(cuò)誤,接收器就能夠檢測(cè)出該錯(cuò)誤。一般地,甚至能夠在不進(jìn)行重新傳輸?shù)那闆r下糾正這些錯(cuò)誤。因此,無(wú)需反向通道來(lái)請(qǐng)求數(shù)據(jù)的重新傳輸。但是,糾錯(cuò)能力造成固定的、更高的前向通道帶寬浪費(fèi)。因此,通常在重新傳輸消耗大或者不可能實(shí)現(xiàn)重新傳輸?shù)那闆r下,例如在單向通信連接以及當(dāng)在組播中傳輸至多個(gè)接收器時(shí),應(yīng)用FEC。FEC的另一應(yīng)用與大量存儲(chǔ)裝置有關(guān),以能夠回收損壞的數(shù)據(jù)。
[0023]許多不同的糾錯(cuò)碼可用于實(shí)施前向糾錯(cuò)方案。可行的糾錯(cuò)碼的例子是:BCH碼、Hadamard 碼、Hamming 碼、低密度奇偶校驗(yàn)(LDPC)碼、Raptor 碼、Reed-Solomon 糾錯(cuò)、Reed-Mutter 碼、Turbo 碼和 Walsh-Had