專利名稱:對音頻數據編碼及解碼的設備及方法
技術領域:
本發(fā)明涉及音頻數據的處理,更具體的說,涉及到一種編碼音頻數據的設備及方法以及一種解碼編碼的音頻數據的設備及方法,其中編碼的音頻數據的比特率能夠被調整,以及即使當包括在將被解碼的比特流中的音頻數據是編碼的音頻數據的某些層的編碼的音頻數據時,所有這些層的音頻數據都能夠被恢復。
背景技術:
由本發(fā)明的申請人提出的比特分片算術編碼(BSAC),是一種提供FGS(精細度可分級)的編碼技術。此外,BSAC是被移動圖像專家組(MPEG)-4采用作為標準的音頻壓縮技術。在第261253號韓國專利申請中詳細描述了BSAC。和BSAC不同,高級音頻編碼(AAC)技術沒有提供FGS。
當使用AAC的編碼器對音頻數據編碼時,它只能對該音頻數據的某些頻帶中的音頻數據編碼,并將編碼的音頻數據發(fā)送到解碼器。
在這種情況下,可以考慮使用頻帶復制(SBR)技術從只有某些頻帶被使用AAC編碼的音頻數據來恢復所有頻帶中的音頻數據。換句話說,使用AAC的編碼器產生及編碼SBR數據并將該SBR數據與所述某些頻帶中的編碼的音頻數據一起發(fā)送到解碼器,所述SBR數據具有關于所述某些頻帶之外的頻帶中的音頻數據的信息。解碼器通過推斷所述某些編碼的頻帶之外的頻帶中的音頻數據,能夠恢復原始音頻數據。結果,AAC和SBR能夠被組合到一起。
同時,當使用BSAC的編碼器編碼音頻數據時,和使用AAC的編碼器相比,使用BSAC的編碼器通過根據頻帶劃分音頻數據產生一個基層和至少一個增強層,編碼該音頻數據的所有層,以及只將包括基層的某些編碼的層的音頻數據發(fā)送到解碼器。這里,因為所述某些層是可變化的,所以能夠調整使用BSAC編碼的音頻數據的比特率。
與AAC技術容易和SBR技術組合到一起相反,BSAC和SBR不能很好的組合。即,將被發(fā)送到解碼器的某些編碼的的音頻數據層可能根據情況變化,所以應該為所有可能的情況產生不同的SBR數據。
這樣就需要如下一種方案無論將被發(fā)送到解碼器的音頻數據的某些層是那些層,都能夠使用相同的SBR數據恢復具有多個層的編碼的音頻數據。
發(fā)明內容
本發(fā)明提供一種音頻數據編碼設備,用于產生由編碼的頻帶復制(SBR)數據和編碼的音頻數據組成的比特流,其中,因為該音頻數據被劃分為多個層,所以能夠調整所述編碼的音頻數據的比特率。
本發(fā)明還提供一種音頻數據解碼設備,對包括在將被解碼的比特流中的音頻數據解碼以恢復與包括在該比特流中的音頻數據的頻帶相同的頻帶中的音頻數據,并對包括在該比特流中的SBR數據解碼以恢復頻率大于包括在該比特流中的音頻數據的最大頻率的頻帶中的音頻數據,其中的SBR數據無論包括在該比特流中的多個音頻數據層為何,都是相同的。
本發(fā)明提供一種音頻數據編碼方法,用于產生由編碼的頻帶復制(SBR)數據和編碼的音頻數據組成的比特流,其中,因為該音頻數據被劃分成多個層,所以能夠調整所述編碼的音頻數據的比特率。
本發(fā)明還提供一種音頻數據解碼方法,用于對包括在將被解碼的比特流中的音頻數據解碼以恢復與包括在該比特流中的音頻數據的頻帶相同的頻帶中的音頻數據,并對包括在該比特流中的SBR數據解碼以恢復頻率大于包括在該比特流中的音頻數據的最大頻率的頻帶中的音頻數據,其中的SBR數據無論包括在該比特流中的音頻數據的層為何,都是相同的。
本發(fā)明還提供一種計算機可讀的記錄介質,該記錄介質能夠存儲用于產生由編碼的頻帶復制(SBR)數據和編碼的音頻數據組成的比特流的計算機程序,其中,因為該音頻數據被劃分成多個層,所以能夠調整所述編碼的音頻數據的比特率。
本發(fā)明還提供一種計算機可讀的記錄介質,該記錄介質能夠存儲計算機程序,該計算機程序用于解碼包括在將被解碼的比特流中的音頻數據以便恢復和包括在該比特流中的音頻數據的頻帶相同的頻帶中的音頻數據,并解碼包括在該比特流中的SBR數據以便恢復頻率大于包括在該比特流中的音頻數據的最大頻率的頻帶中的音頻數據,其中的SBR數據無論包括在該比特流中的音頻數據的層為何,都是相同的。
根據本發(fā)明的一方面,提供一種音頻數據編碼設備,包括可分級編碼單元,用于將音頻數據劃分成多個層,以每一層預定數量的比特表示該音頻數據,以及早于較高層對較低層編碼并早于每一層的低位對高位比特編碼;SBR編碼單元,用于產生具有關于將被編碼的音頻數據中頻率等于或大于預定頻率的頻帶中的音頻數據的信息的SBR(編碼頻帶復制)數據,以及對該SBR數據編碼;以及比特流產生單元,用于利用編碼的SBR數據和對應于預定比特率的編碼的音頻數據產生比特流。
根據本發(fā)明的另一方面,提供一種音頻數據解碼設備,包括比特流分析單元,用于從給定的比特流中提取對應于至少一個層的編碼的SBR數據及編碼的音頻數據,該層用預定數量的比特表示;可分級解碼單元,通過早于較高層對較低層解碼并早于每一層的低位比特對高位比特解碼來對編碼的音頻數據解碼;SBR解碼單元,用于對編碼的SBR數據解碼,并基于編碼的音頻數據和編碼的SBR數據來推斷第一頻率和第二頻率之間的頻帶中的音頻數據;以及數據合成單元,用于通過使用編碼的音頻數據及推斷的音頻數據產生合成數據,并將該合成數據輸出作為0頻率和第二頻率之間的頻帶中的音頻數據,其中,第二預定頻率等于或大于至少一個層的最大頻率,SBR數據包含關于第一和第二頻率之間的頻帶中的音頻數據的信息。
根據本發(fā)明的一個方面,提供一種音頻數據編碼方法,包括(a)將音頻數據劃分成多個層,以預定數量的比特表示該音頻數據的多個層,以及早于較高層對較低層編碼并早于每一層的低位比特對高位比特編碼;(b)產生并編碼SBR數據,該SBR數據具有關于將被編碼的音頻數據中的等于或大于預定頻率的頻率的頻帶中的音頻數據的信息;以及(c)使用編碼的SBR數據和對應于預定比特率的編碼的音頻數據產生比特流。
根據本發(fā)明的另一方面,提供一種音頻數據解碼方法,包括;(a)從給定的比特流中提取對應于至少一個層的編碼的SBR數據和編碼的音頻數據,其中的層用預定數量的比特來表示;(b)通過早于較高層對較低層解碼并早于每一層的低位比特對高位比特解碼來對編碼的音頻數據解碼;(c)對編碼的SBR數據解碼,并基于解碼的音頻數據和解碼的SBR數據來推斷第一頻率和第二頻率之間的頻帶中的音頻數據;以及(d)通過使用編碼的音頻數據及推斷的音頻數據產生合成數據,并確認該合成數據為0頻率和第二頻率之間的頻帶中的音頻數據,其中,第二預定頻率等于或大于至少一個層的最大頻率,SBR數據包含關于第一和第二頻率之間的頻帶中的音頻數據的信息。
根據本發(fā)明一個方面,提供一種計算機可讀的記錄介質,該記錄介質能夠存儲執(zhí)行如下方法的計算機程序,該方法包括(a)將音頻數據劃分成多個層,以預定的比特數表示該音頻數據的多個層,以及編碼早于較高層的較低層和每一層的早于低位的高位;(b)產生并編碼SBR數據,該SBR數據具有關于將被編碼的音頻數據中的等于或大于預定頻率的頻率的頻帶中的音頻數據的信息;以及(c)使用編碼的SBR數據和對應于預定比特率的編碼的音頻數據產生比特流。
根據本發(fā)明另一方面,提供一種計算機可讀的記錄介質,該記錄介質能夠存儲執(zhí)行如下方法的計算機程序,該方法包括(a)從給定的比特流中提取對應于至少一個層的編碼的SBR數據和編碼的音頻數據,其中的層用預定的比特數來表示;(b)通過解碼早于較高層的較低層以及每一層的早于低位的高位來解碼編碼的音頻數據;(c)解碼編碼的SBR數據,并基于編碼的音頻數據和編碼的SBR數據來推斷第一頻率和第二頻率之間的頻帶中的音頻數據;以及(d)通過使用編碼的音頻數據及所推斷的音頻數據產生合成數據,并將該合成數據確認位0頻率和第二頻率之間的頻帶中的音頻數據,其中的第二預定頻率等于或大于至少一個層的最大頻率,以及SBR數據包含關于第一和第二頻率之間的頻帶中的音頻數據的信息。
通過下面結合附圖對示例性實施例進行的描述,本發(fā)明的以上和其他特征和優(yōu)點將會變得更加清楚,其中圖1是根據本發(fā)明實施例的音頻數據編碼設備的框圖;圖2是用于解釋作為圖1中音頻數據的實施例的音頻數據200的曲線圖,該音頻數據200包括基層和至少一個增強層;圖3是根據本發(fā)明實施例的用以比較頻帶復制數據和發(fā)送到音頻數據解碼設備的某些層的頻帶的參考示圖;圖4示出了由圖1中的音頻數據編碼設備產生的比特流的實施例的結構;圖5是可分級編碼單元110A的框圖,該可分級編碼單元110為圖1中所示出的可分級編碼單元110的實施例;
圖6示出了由圖1中的音頻數據編碼設備所編碼的數據的句法;圖7示出了由圖1中的音頻數據編碼設備所產生的SBR數據的句法;圖8是根據本發(fā)明實施例的音頻數據解碼設備的框圖;圖9A到9D是用于參考以解釋由圖1中的音頻數據解碼設備產生合成數據的原理的曲線圖;圖10是作為圖8中所示可分級解碼單元820的實施例的可分級解碼單元820A的框圖;圖11是作為圖8中所示SBR解碼單元830的實施例的SBR解碼單元830A;圖12作為是圖8中所示數據合成單元840的實施例的數據合成單元840A的框圖;圖13是示出了根據本發(fā)明實施例的音頻數據編碼方法的流程圖;圖14是示出了根據本發(fā)明實施例的音頻數據解碼方法的流程圖;圖15是示出了作為圖14中示出的操作1430的實施例的操作1430A的流程圖。
具體實施例方式
參照用于示出本發(fā)明優(yōu)選實施例的附圖是為了充分的理解本發(fā)明、本發(fā)明的優(yōu)點、以及通過實施本發(fā)明而達到的目的。
以下,將參照附圖對本發(fā)明的優(yōu)選實施例進行描述。在附圖中,相同的標號表示相同的部件。
圖1是根據本發(fā)明實施例的音頻數據編碼設備的框圖,該設備包括可分級編碼單元110,頻帶復制(SBR)編碼單元120,以及比特流產生單元130。下面將參照圖2到圖4描述圖1中的音頻數據編碼設備的操作。
可分級編碼單元110通過將通過輸入端口INI接收到的音頻數據劃分成多個層來對所接收到的音頻數據編碼,以預定數量的比特數來表示這些層,早于較高層對較低層編碼。當一個層被編碼時,早于其高位對低位編碼。
更具體的說,可分級編碼單元110將時域內的音頻數據轉換位頻域內的音頻數據。例如,該可分級編碼單元110可以使用改良離散余弦變換(MDCT)來執(zhí)行所述轉換。
然后,可分級編碼單元110將該頻域音頻數據劃分成多個層。根據頻帶來劃分這些層。圖2是用于參照以解釋作為圖1中的音頻數據的實施例的音頻數據200的曲線圖。該音頻數據200包括基層210-0以及多個增強層210-1,210-2,...,以及210-N-1。如圖2中所示,這些層210-0,210-1,210-2,...,以及210-N-1是N(其中的N表示等于或大于2的整數)層。增強層210-1,210-2,...,以及210-N-1分別被稱作第一,第二,...,以及第(N-1)增強層。該音頻數據200的頻帶為0到fN[kHz]。附圖標記205表示由音頻數據200表示的包絡。因此,最低層是基層210-0,最高層是第(N-1)增強層210-N-1。
該可分級編碼單元110將所劃分的音頻數據量化。在圖2的實施例中,可分級編碼單元110將由多個點所表示的所劃分的音頻數據200量化。
可分級編碼單元110以預定數量的比特表示量化的劃分的音頻數據。根據層的類型,可分配不同數量的比特。
可分級編碼單元110以分級方式對量化的音頻數據編碼。例如,可分級編碼單元110可使用比特分片算術編碼(BSAC)來對量化的音頻數據編碼。
發(fā)送給根據本發(fā)明實施例的音頻數據解碼設備的音頻數據可以是全部音頻數據,即所有層的音頻數據,或者可以是部分音頻數據,即某些層的音頻數據。這里,發(fā)送給音頻數據解碼設備的所述某些層表示包括基層210-0的至少一個層。這樣,當音頻數據的某些層被發(fā)送給音頻數據解碼設備時,希望與所述某些層對應的音頻數據早于與其他剩余層對應的音頻數據被編碼。
為了實現這一點,可分級編碼單元110以這樣的方式對量化的音頻數據編碼,即較低層早于較高層被編碼,并且每一層的高位比特早于其低位比特被編碼。因此,可分級編碼單元110最先對最低層210-0的音頻數據編碼,最后對最高層210-N-1的音頻數據編碼。另外,當可分級編碼單元110對每一層的音頻數據編碼時,其最先對音頻數據之中的至少一個最高有效位(MSB)編碼,并且最后對至少一個最低有效位(LSB)編碼。這種編碼順序是基于這樣的事實,即包括在音頻數據中的重要信息通常更多地分布于較低層而非較高層中,并且更多地分布于每一層的高位比特而非其低位比特中。
以這種方式,可分級編碼單元110對音頻數據的所有層編碼。
SBR編碼單元120產生SBR數據并對其編碼。根據本發(fā)明的SBR數據表示包括關于第一頻率和第二頻率之間的頻帶中的音頻數據的信息的數據。所述第一頻率可以是等于或大于基層210-0的最大頻率f1的頻率。所述第一頻率最好是最大頻率f1。優(yōu)選地,所述第二頻率可以是等于或大于發(fā)送給音頻數據解碼設備的某些層之中的最高層的最大頻率fk的頻率,更優(yōu)選地,所述第二頻率可以是編碼的所有層的音頻數據的最大頻率fN。圖3是將SBR數據的頻帶f1-fN與發(fā)送給根據本發(fā)明實施例的音頻數據解碼設備的某些層的頻帶0-fk進行比較的參考示圖。在圖3中,k表示2和N之間的整數。然而,當僅僅基層210-0被發(fā)送給音頻數據解碼設備時,k是1。
關于音頻數據的信息可表示關于音頻數據的噪聲的信息或者關于音頻數據的包絡205的信息。
更具體地講,SBR編碼單元120可使用關于第一頻率和第二頻率之間的頻帶中的音頻數據的包絡205的信息來產生SBR數據,并對產生的SBR數據執(zhí)行無損編碼。這里,無損編碼是熵編碼或Huffman編碼。
比特流產生單元130使用Huffman編碼的SBR數據和編碼的所有層的音頻數據之中與預定比特率對應的音頻數據來產生比特流,并經輸出端口OUT1輸出該比特流。圖4表示比特流410的結構,所述比特流410是由圖1的音頻數據編碼設備產生的比特流的實施例。如圖4中所示,比特流410包括頭420、關于表示基層210-0的編碼的音頻數據的比特的數量的信息430-0、關于基層210-0的編碼的音頻數據和對基層210-0的量化的步長的信息440-0、信息430-n、信息440-n和SBR數據450。信息430-n指示表示第n增強層210-n(其中,n是滿足1≤n≤N-1的整數)的音頻數據的比特的數量。信息440-n指示第n增強層210-n的編碼的音頻數據和對第n增強層210-n的量化的步長。如圖4中所示,比特流410的編碼的音頻數據430-0、430-1、...和430-N-1被分配給各個層210-0、210-1、...210-N-1。然而,包括在比特流410中的編碼的SBR數據450未被分配給任一層。
所述預定比特率表示包括在所有編碼的層中的音頻數據之中發(fā)送給音頻數據解碼設備的某些層的音頻數據的比特率。換句話說,所述預定比特率等于或大于基層210-0的比特率。
圖5是可分級編碼單元110A的方框圖,所述可分級編碼單元110A是圖1中示出的可分級編碼單元110的實施例??煞旨壘幋a單元110A包括時間/頻率映射單元510、心理聲學單元520、量化單元530和下采樣單元540。
時間/頻率映射單元510將經輸入端口IN2接收的時域中的音頻數據轉換成頻域中的音頻數據。輸入端口IN2可以與輸入端口IN1相同。所述時域中的音頻數據的頻率是預定采樣頻率Fs。另外,所述時域中的音頻數據是離散音頻數據。
心理聲學單元520根據頻帶將由時間/頻率映射單元510輸出的音頻數據分組,以便產生多個層。
量化單元530將每一層的音頻數據量化,并以這樣的方式對量化的所有層的音頻數據編碼,即較低層先于較高層被編碼,并且每一層的高位比特先于其低位比特被編碼。量化單元530經輸出端口OUT2將編碼結果輸出給比特流產生單元130。
下采樣單元540是可選的。下采樣單元540以低于預定采樣頻率Fs的采樣頻率即Fs/2對時域中的音頻數據采樣,并將采樣結果輸出給時間/頻率映射單元510和心理聲學單元520。
圖6表示由圖1的音頻數據編碼設備編碼的音頻數據的句法。標號610表示根據BSAC方法編碼的音頻數據,標號620表示能夠與音頻數據610組合的數據。數據620包括多信道擴展數據EXT_BSAC_CHANNEL 650、頻帶復制數據EXT_BSAC_SBR_DATA 660和‘檢錯數據和SBR數據’EXT_BSAC_SBR_DATA_CRE 670。
多信道擴展數據EXT_BSAC_CHANNEL 650表示第三至第M(其中,M表示等于或大于3的整數)信道的音頻數據。當發(fā)送給圖1的音頻數據編碼設備的音頻數據是經3個或更多信道發(fā)送的音頻數據時,則所述第三至第M信道表示除單聲信道(即第一信道)和立體聲信道(即第一信道和第二信道)之外的信道。這樣,如果經三個或更多信道發(fā)送音頻數據,則可分級編碼單元110可包括單聲/立體聲編碼單元(未顯示)和多信道擴展數據編碼單元(未顯示)。所述單聲/立體聲編碼單元對第一信道或第二信道的音頻數據編碼。所述多信道擴展數據編碼單元對第三至第M信道中的每個信道的音頻數據編碼。所述檢錯數據表示當從頻帶復制數據EXT_BSAC_SBR_DATA 660中檢測錯誤時使用的數據。而且,EXT_BSAC_SBR_DATA_CRE 670表示檢錯數據和SBR數據。
由音頻數據編碼設備編碼的音頻數據除音頻數據610和可組合的數據620之外還可包括開始代碼630和640,用于指示可組合的數據620的開始。開始代碼630和640可以是第一開始代碼、第二開始代碼和第三開始代碼之一。
所述第一開始代碼指示SBR數據EXT_BSAC_SBR_DATA 660的開始。更具體地講,第一開始代碼可包括以32比特的0表示的零代碼zero_code 630和以‘1111 0000’表示的擴展代碼extension_type 640。SBR編碼單元可包括第一開始代碼編碼單元(未顯示),用于對第一開始代碼編碼。
所述第二開始代碼指示檢錯數據和SBR數據EXT_BSAC_SBR_DATA_CRE 670的開始。更具體地講,第二開始代碼可包括以32比特的0表示的零代碼zero_code 630和以‘1111 0001’表示的擴展代碼extension_type 640。SBR編碼單元可包括第二開始代碼編碼單元(未顯示),用于對第二開始代碼編碼。
所述第三開始代碼指示第三至第M信道的音頻數據的開始。更具體地講,第三開始代碼可包括以32比特的0表示的零代碼zero_code 630和以‘11111111’表示的擴展代碼extension_type 640。多信道擴展數據編碼單元可包括第三開始代碼編碼單元(未顯示),用于對第三開始代碼編碼。
圖7表示由圖1的音頻數據編碼設備產生的SBR數據的句法。將要由圖1的音頻數據編碼設備編碼的音頻數據可通過第一信道或第二信道發(fā)送。數據bsac_sbr_data(nch,bs_amp_res)710指示SBR編碼單元120對每個信道的SBR數據編碼。
圖8是根據本發(fā)明實施例的音頻數據解碼設備的方框圖,該設備包括比特流分析單元810、可分級解碼單元820、SBR解碼單元830和數據合成單元840。
比特流分析單元810從經輸入端口IN3接收的比特流提取‘編碼的SBR數據’和‘編碼的具有至少一個層的音頻數據’,所述每一個層以預定數量的比特來表示。所述比特流可以是經輸出端口OUT1輸出的比特流。換句話說,比特流分析單元810從經輸入端口IN3接收的比特流提取‘由SBR編碼單元120產生的SBR數據’和‘由可分級編碼單元110產生的所有層的全部音頻數據之中與至少一個層對應的音頻數據’。
可分級解碼單元820通過早于較高層音頻數據對較低層音頻數據進行解碼并且早于每一個層的低位比特對其高位比特進行解碼來對提取的音頻數據解碼。可分級解碼單元820對提取的音頻數據的解碼可以按照所述預定比特率來執(zhí)行或者按照比所述預定比特率低的比特率來執(zhí)行。例如,當由可分級編碼單元110編碼的音頻數據之中包括在由比特流產生單元130產生的比特流中的音頻數據是基層210-0以及第一增強層210-1和第二增強層210-2的音頻數據時,可分級解碼單元820可對基層210-0以及第一增強層210-1和第二增強層210-2的所有音頻數據解碼,或者僅對基層210-0和第一增強層210-1的音頻數據解碼,或者僅對基層210-0的音頻數據解碼。所述預定比特率可以等于或大于基層210-0的比特率。
在對于第一至第M信道的每一個信道的編碼的數據被包括在接收的比特流中的情況下,可分級解碼單元820可包括單聲/立體聲解碼單元(未顯示)、多信道擴展數據解碼單元(未顯示)和第三開始代碼解碼單元(未顯示)。所述單聲/立體聲解碼單元對編碼的第一信道或第二信道的音頻數據解碼。多信道擴展數據解碼單元對第三到第M信道的每一個信道的編碼的音頻數據解碼。第三開始代碼解碼單元對編碼的第三開始代碼解碼。這樣,當可分級解碼單元820包括多信道擴展數據解碼單元時,比特流分析單元810檢查編碼的第三開始代碼是否被包括在接收的比特流中。當檢查到編碼的第三開始代碼被包括在接收的比特流中時,比特流分析單元810從接收的比特流中提取編碼的第三開始代碼,第三開始代碼解碼單元對提取的第三開始代碼解碼,并指示多信道擴展數據解碼單元運行。
SBR解碼單元830對提取的SBR數據解碼。SBR解碼單元830基于從可分級解碼單元820接收的音頻數據和解碼的SBR數據推斷在第一和第二頻率之間的頻帶中的音頻數據。
音頻數據解碼設備可包括第一開始代碼解碼單元(未示出)和第二開始代碼解碼單元(未示出)。在此情況下,比特流分析單元820檢查編碼的第一和第二開始代碼是否被包括在接收的比特流中。當檢查編碼的第一和第二開始代碼被包括在接收的比特流中時,比特流分析單元810從接收的比特流提取編碼的第一和第二開始代碼,第一和第二開始代碼解碼單元分別對提取的第一和第二開始代碼解碼。其后,第一和第二開始代碼解碼單元指示SBR解碼單元830運行。
數據合成單元840根據從可分級解碼單元820接收的音頻數據和由SBR解碼單元830推斷的音頻數據來產生合成數據。數據合成單元840還將作為頻域中的數據的合成數據轉換為時域中的合成數據,并通過輸出端口OUT3輸出時域中的合成數據作為從0到第二頻率范圍的頻帶中的音頻數據。換句話說,當由音頻數據編碼設備編碼的整個音頻數據的最大頻率是第二頻率時,雖然包括在比特流中的音頻數據僅僅是某些層的音頻數據,但數據合成單元840恢復所有層的音頻數據。
圖9A到9D是參照較詳細地解釋數據合成單元840的運行的示圖。圖9A示出輸入可分級編碼單元110的音頻數據910,圖9B示出由可分級解碼單元820解碼的音頻數據920,圖9C示出由SBR解碼單元830推斷的音頻數據930,圖9D示出由數據合成單元840產生的合成數據940,即在零和第二頻率之間的頻帶中的音頻數據的重構的結果。
為了便于解釋,在圖9A到9D中示出音頻數據910、920、930和940是連續(xù)的數據。然而,實際上,音頻數據910、920、930和940是離散數據。
如圖9A所示,輸入可分級編碼單元110的音頻數據910存在于從0到f10kHz的頻帶中。由可分級解碼單元820解碼的音頻數據920存在于從0到f3kHz的頻帶中。比特流可包括所有層的編碼的音頻數據或某些層的音頻數據。在圖9B中,比特流僅包括某些層的音頻數據,即僅在從0到f3kHz頻帶中的音頻數據。期望某些層總是包括在從0到f1kHz的頻帶中的基層。
由SBR解碼單元830推斷的音頻數據930存在于從f1到f10kHz的頻帶中。由數據合成單元840產生的合成數據940存在于從0到f10kHz的頻帶中。換句話說,合成數據940是音頻數據910的解碼的結果。音頻數據940和910可在某種程度上不同,但期望彼此相同。
數據合成單元840輸出解碼的音頻數據920作為用于解碼的音頻數據920存在的頻帶(即從0到f3kHz)的合成數據。
數據合成單元840輸出推斷的音頻數據930作為用于解碼的音頻數據920不存在的頻帶(即從f3到f10kHz)的合成數據。
結果,數據合成單元840確定解碼的音頻數據920為用于解碼的音頻數據920和推斷的音頻數據930兩者都存在的頻帶(即從f1到f3kHz)的合成數據。
圖10是作為圖8所示的可分級解碼單元820的實施例的可分級解碼單元820A的框圖。可分級解碼單元820A包括逆量化單元1010和頻率/時間映射單元1020。
逆量化單元1010通過輸入端口IN4接收“提取的音頻數據”,對接收的音頻數據解碼,并對解碼的音頻數據逆量化。頻率/時間映射單元1020將在頻域中逆量化的音頻數據轉換為時域中的音頻數據,并通過輸出端口OUT4輸出時域中的音頻數據。
圖11是作為圖8所示的SBR解碼單元830的實施例的SBR解碼單元830A的框圖。SBR解碼單元830A包括無損解碼單元1110、高頻產生單元1120、分析QMF組1130和包絡調整單元1140。
無損解碼單元1110通過輸入端口IN5接收“提取的SBR數據”,并對接收的SBR數據執(zhí)行無損解碼。這里,無損解碼是熵解碼或Huffman解碼。因此,無損解碼單元1110從提取的SBR數據中獲得關于第一和第二頻率之間的頻帶中的音頻數據的信息。例如,無損解碼單元1110獲得關于第一和第二頻率之間的頻帶中的音頻數據的包絡的信息。
高頻產生單元1120使解碼的音頻數據920在等于或大于音頻數據920的最大頻率f3(見圖9B)的頻帶中(在圖9中,f3-f6,f6-f9,以及f9-f10)產生。為了實現在上述頻帶中產生音頻數據920,由于解碼的音頻數據920是時域中的音頻數據,所以高頻產生單元1120可將編碼的音頻數據轉換為頻域中的音頻數據。為了實現這種轉換,SBR解碼單元830可包括分析QMF組1130作為SBR解碼單元830A的分析QMF組1130。
分析QMF組1130將通過輸入端口IN6接收的“解碼的音頻數據”轉換為頻域中的音頻數據,并通過輸出端口OUT6輸出頻域中的音頻數據。
包絡調整單元1140使用由無損解碼單元1110獲得的信息調整由高頻產生單元1120產生的音頻數據的包絡。也就是說,包絡調整單元1140調整由高頻產生單元1120產生的音頻數據,從而音頻數據的包絡與由可分級解碼單元110編碼的音頻數據的包絡相同。通過輸出端口OUT5輸出調整的音頻數據。存在于第一和第二頻率之間的頻帶中的輸入可分級編碼單元110的音頻數據被推斷作為調整的音頻數據。
圖12是作為圖8所示的數據合成單元840的實施例的數據合成單元840A的框圖。數據合成單元840A包括交迭單元1210和合成QMF組1220。
交迭單元1210通過輸入端口IN7接收“由可分級解碼單元820解碼的音頻數據920”,通過輸入端口IN8接收“由SBR解碼單元830推斷的音頻數據930”,并使用解碼的音頻數據920和推斷的音頻數據930產生合成數據。
更具體地說,交迭單元1210輸出解碼的音頻數據920作為用于解碼的音頻數據920存在的頻帶(即圖9B中的從0到f3kHz)的合成數據。交迭單元1210輸出推斷的音頻數據930作為用于僅推斷的音頻數據930存在的頻帶(圖9C中的f3到f10kHz)的合成數據。
通過輸入端口IN7接收的解碼的音頻數據920和通過輸入端口IN8接收的推斷的音頻數據930都是頻域中的音頻數據。因此,如果解碼的音頻數據是時域中的音頻數據,則期望其通過分析QMF組1130被輸入到輸入端口IN7。
合成QMF組1220將頻域中的合成數據轉換為時域中的合成數據,并通過輸出端口OUT7輸出時域中的合成數據。
圖13是示出由圖1的音頻數據編碼設備執(zhí)行的根據本發(fā)明實施例的音頻數據編碼方法的流程圖。音頻數據編碼方法包括操作1310到1330使用BASC技術對音頻數據編碼,對SBR數據編碼以及使用編碼的音頻數據和編碼的SBR數據產生比特流。
在操作1310,可分級編碼單元110將接收的音頻數據劃分為多個層,以預定數量的比特表示所述多個層,并早于較高層對較低層編碼,早于每一層的低位比特對前述每一層的高位比特編碼。
在操作1320,SBR編碼單元120產生具有關于從第一頻率到第二頻率范圍的頻帶中的音頻數據的信息的SBR數據,并對SBR數據執(zhí)行Huffman編碼。
操作1320可如圖13所示在操作1310之后被執(zhí)行。此外,對比圖13,操作1320可先于操作1310或與操作1310同時被執(zhí)行。
在操作1310和1320之后,在操作1330,比特流產生單元130使用在操作1310編碼的音頻數據和在操作1320編碼的SBR數據來產生比特流。
圖14是示出由圖8的音頻數據解碼設備執(zhí)行的根據本發(fā)明實施例的音頻數據解碼方法的流程圖。音頻數據解碼方法包括操作1410到1440對包括在將被解碼的比特流中的音頻數據解碼,從而恢復與包括在比特流中的音頻數據的頻帶相同的頻帶中的音頻數據,并對包括在比特流中的SBR數據解碼,無論包括在比特流中的音頻數據的層如何,SBR數據是相同的,從而恢復等于或大于包括在前述比特流中的音頻數據的最大頻率的頻率的頻帶中的音頻數據。
在操作1410,比特流分析單元810從將被解碼的比特流提取在操作1310編碼的音頻數據和在操作1320編碼的SBR數據。
在操作1420,可分級解碼單元820通過早于較高層對較低層解碼并早于每一層的低位比特對其高位比特解碼來對在操作1310編碼的音頻數據解碼。
在操作1430,SBR解碼單元830對在操作1320編碼的SBR數據解碼,并基于在操作1420解碼的音頻數據和解碼的SBR數據推斷在第一和第二頻率之間的頻帶中的音頻數據。
在操作1440,數據合成單元840從在操作1420解碼的音頻數據和在操作1430推斷的音頻數據產生合成數據,并確定合成數據作為0和第二頻率之間的頻帶中的音頻信號。
圖15是示出作為操作1430的實施例的操作1430A的操作的流程圖。操作1430A包括操作1510到1530基于在操作1420解碼的音頻數據和在操作1320編碼的SBR數據推斷第一和第二頻率之間的頻帶中的音頻數據。
在操作1510,無損解碼單元1110對包括在將被解碼的比特流中的編碼的SBR數據解碼以獲得關于從第一頻率到第二頻率的頻帶中的音頻數據的包絡的信息。
在操作1520,高頻產生單元1120在等于或大于解碼的音頻數據的最大頻率的頻帶中使在操作1420解碼的音頻數據產生。
在操作1530,包絡調整單元1140使用在操作1510獲得的信息調整在操作1520產生的音頻數據的包絡。操作1530后面跟隨操作1440。
如上所述,在根據本發(fā)明的對音頻數據編碼的設備和方法以及對編碼的音頻數據解碼的設備和方法中,包括在將被解碼的比特流中的音頻數據被解碼,從而恢復與包括在比特流中的頻帶相同的頻帶中的音頻數據,包括在比特流中的SBR數據被解碼,從而恢復等于或大于包括在比特流中的音頻數據的最大頻率的頻率的頻帶中的音頻數據。因此,即使當包括在比特流中音頻數據是某些層的編碼的音頻數據,也能恢復所有層的音頻數據。此外,無論包括在比特流中的音頻數據的層如何,包括在比特流中的SBR數據都被固定,從而可將BASC和SBR技術容易地結合在一起。
本發(fā)明的實施例也可實現為計算機可讀記錄介質上的計算機可讀代碼。計算機可讀記錄介質是可存儲其后由計算機系統(tǒng)讀取的數據的任意數據存儲裝置。計算機可讀記錄介質的示例包括只讀存儲器(ROM)、隨機存儲器(RAM)、CD-ROM、磁帶、軟盤、光數據存儲裝置以及載波(諸如通過互聯網的數據傳輸)。計算機可讀記錄介質也可以分布在與計算機系統(tǒng)連接的網絡上,從而以分布式的方式存儲和執(zhí)行計算機可讀代碼。
雖然參照本發(fā)明示例性實施例詳細示出和描述了本發(fā)明,但本領域普通技術人員應理解,在不脫離由權利要求限定的本發(fā)明的精神和范圍的情況下,可對其在形式和細節(jié)上作出各種改變。
權利要求
1.一種音頻數據編碼設備,包括可分級編碼單元,用于將音頻數據劃分成多個層,以每一層預定數量的比特表示該音頻數據,以及早于較高層對較低層編碼和早于每一層的低位比特對高位比特編碼;SBR編碼單元,用于產生SBR數據,所述SBR數據具有關于將被編碼的音頻數據間的等于或大于預定頻率的頻帶中的音頻數據的信息,并對所述SBR數據編碼;比特流產生單元,用于使用編碼的SRB數據及對應于預定比特率的編碼的音頻數據產生比特流。
2.如權利要求1所述的音頻數據編碼設備,其中,所述預定頻率為所述音頻數據的所述多個層的最低層的最大頻率。
3.如權利要求1所述的音頻數據編碼設備,其中,所述SBR編碼單元使用關于具有等于或大于預定頻率的頻率的頻帶的音頻數據的包絡的信息產生SBR數據,并對所產生的SBR數據執(zhí)行無損編碼。
4.如權利要求3所述的音頻數據編碼設備,其中,所述無損編碼是熵編碼或Huffman編碼。
5.如權利要求1所述的音頻數據編碼設備,其中,所述可分級編碼單元對所述音頻數據下采樣并劃分下采樣的音頻數據以產生多個層。
6.如權利要求1所述的音頻數據編碼設備,其中,所述預定比特率等于或大于所述最低層的比特率。
7.如權利要求1所述的音頻數據編碼設備,其中,所述SBR編碼單元還包括第一開始代碼編碼單元,所述第一開始代碼編碼單元對指示所述SBR數據的開始的第一開始代碼編碼。
8.如權利要求7所述的音頻數據編碼設備,其中,所述第一開始代碼包括以32比特零表示的零代碼;以及以4比特1和4比特零表示的擴展代碼。
9.如權利要求1所述的音頻數據編碼設備,其中,所述SBR編碼單元還包括第二開始代碼編碼單元,其對指示用于檢測來自SBR數據的誤碼的檢錯數據及SBR數據開始的第二開始代碼編碼。
10.如權利要求9所述的音頻數據編碼設備,其中,所述第二開始代碼包括以32比特零表示的零代碼;以及以4比特零,3比特零,以及1表示的擴展代碼。
11.如權利要求1所述的音頻數據編碼設備,其中將音頻數據發(fā)送給第一信道到第M信道的每一信道,其中,M表示等于或大于3的整數;以及所述可分級編碼單元包括單聲/立體聲編碼單元,用于對第一和第二信道中的一個信道的音頻數據編碼;多信道擴展數據編碼單元,用于對第三到第M信道中的一個信道的音頻數據編碼。
12.如權利要求11所述的音頻數據編碼設備,其中,所述多信道擴展數據編碼單元還包括第三開始代碼編碼單元,所述第三開始代碼指示第三到第M信道的音頻數據的開始。
13.如權利要求13所述的音頻數據編碼設備,其中,所述第三開始代碼包括以32比特零表示的零代碼;以及以8比特1表示的擴展代碼。
14.一種音頻數據解碼設備,包括比特流分析單元,用于從給定的比特流提取編碼的SBR數據和對應于至少一個層的編碼的音頻數據,所述層以預定數量的比特表示;可分級解碼單元,通過早于較高層對較低層編碼和早于每一層的低位比特對高位比特編碼來對編碼的音頻數據解碼;SBR解碼單元,用于對編碼的SBR數據解碼,并基于解碼的音頻數據及解碼的SBR數據推斷第一頻率和第二頻率之間的頻帶中的音頻數據;以及數據合成單元,用于通過解碼的音頻數據和推斷的音頻數據來產生合成數據并將所述合成數據作為0頻率和第二頻率之間的頻帶中的音頻數據而輸出;其中所述第二預定頻率等于或大于至少一個層的最大頻率,所述SBR數據包括關于第一及第二頻率之間的頻帶中的音頻數據的信息。
15.如權利要求14所述的音頻數據解碼設備,其中,存在于所述解碼的音頻數據的頻帶中的合成數據是所述解碼的音頻數據,不存在于所述解碼的音頻數據的頻帶中的合成數據是所述推斷的音頻數據。
16.如權利要求14所述的音頻數據解碼設備,其中所述關于音頻數據的信息包括關于音頻數據的包絡的信息;所述SBR解碼單元包括無損解碼單元,用于對編碼的SBR數據執(zhí)行無損解碼并獲得關于所述包絡的信息;高頻產生單元,用于在等于或大于解碼的音頻數據的最大頻率的頻率的頻帶中使解碼的音頻數據產生;和包絡調整單元,用于基于獲得的信息來調整產生的音頻數據的包絡;和數據合成單元輸出解碼的音頻數據作為解碼的音頻數據所在的頻帶的合成數據,并輸出包絡調整的音頻數據作為僅存在于包絡調整的音頻數據的頻帶的合成數據。
17.如權利要求16所述的音頻數據解碼設備,其中,所述無損解碼是熵解碼或Huffman解碼。
18.如權利要求14所述的音頻數據解碼設備,其中,對編碼的音頻數據的解碼按照預定比特率被執(zhí)行或者按照比所述預定比特率低的比特率被執(zhí)行,所述預定比特率等于或大于最低層的比特率。
19.如權利要求14所述的音頻數據解碼設備,其中,第一預定頻率是最低層的最大頻率。
20.如權利要求14所述的音頻數據解碼設備,其中比特流分析單元檢查在比特流中是否存在編碼的第一開始代碼;所述音頻數據解碼設備還包括第一開始代碼解碼單元,用于對編碼的第一開始代碼解碼;如果在比特流中存在編碼的第一開始代碼,則比特流分析單元從所述比特流提取編碼的第一開始代碼,并且響應于檢查的結果運行SBR解碼單元;和所述第一開始代碼指示SBR數據的開始。
21.如權利要求20所述的音頻數據解碼設備,其中,所述第一開始代碼包括零代碼,以32比特的0來表示;和擴展代碼,以4比特的1和4比特的0來表示。
22.如權利要求14所述的音頻數據解碼設備,其中比特流分析單元檢查在比特流中是否存在編碼的第二開始代碼;所述音頻數據解碼設備還包括第二開始代碼解碼單元,用于對編碼的第二開始代碼解碼;如果在比特流中存在編碼的第二開始代碼,則比特流分析單元從所述比特流提取編碼的第二開始代碼,并且響應于檢查的結果運行SBR解碼單元;和所述第二開始代碼指示從SBR數據中檢測誤碼時使用的檢錯數據和SBR數據的開始。
23.如權利要求22所述的音頻數據解碼設備,其中,所述第二開始代碼包括零代碼,以32比特的0來表示;和擴展代碼,以4比特的1、3比特的0以及1來表示。
24.如權利要求14所述的音頻數據解碼設備,其中對于第一至第M(其中,M表示等于或大于3的整數)信道發(fā)送編碼的音頻數據;和可分級解碼單元包括單聲/立體聲解碼單元,用于對第一信道和第二信道之一的編碼的音頻數據解碼;和多信道擴展數據解碼單元,用于對第三至第M信道之一的編碼的音頻數據解碼。
25.如權利要求24所述的音頻數據解碼設備,其中比特流分析單元檢查在比特流中是否存在編碼的第三開始代碼;所述可分級解碼單元還包括第三開始代碼解碼單元,用于對編碼的第三開始代碼解碼;如果在比特流中存在編碼的第三開始代碼,則比特流分析單元從該比特流提取編碼的第三開始代碼,并且響應于檢查的結果來運行多信道擴展數據解碼單元;和所述第三開始代碼指示從第三至第M信道的音頻數據的開始。
26.如權利要求25所述的音頻數據解碼設備,其中,所述第三開始代碼包括零代碼,以32比特的0來表示;和擴展代碼,以8比特的1來表示。
27.一種音頻數據編碼方法,包括(a)將音頻數據分成多個層,以預定數量的比特表示音頻數據的層,并且早于較高層對較低層編碼并早于每一層的低位比特對其高位比特編碼;(b)產生具有關于將被編碼的音頻數據之中位于等于或大于預定頻率的頻率的頻帶中的音頻數據的信息的SBR數據,并對SBR數據編碼;和(c)使用編碼的SBR數據和與預定比特率對應的編碼的音頻數據來產生比特流。
28.如權利要求27所述的音頻數據編碼方法,其中,所述預定頻率是音頻數據的層中的最低層的最大頻率。
29.如權利要求27所述的音頻數據編碼方法,其中,(a)包括使用關于具有頻率等于或大于預定頻率的頻帶中的音頻數據的包絡的信息來產生SBR數據,并對產生的SBR數據執(zhí)行無損編碼。
30.如權利要求29所述的音頻數據編碼方法,其中,所述無損編碼是熵編碼或Huffman編碼。
31.如權利要求27所述的音頻數據編碼方法,其中,(a)包括對音頻數據下采樣并劃分下采樣的音頻數據以產生多個層。
32.如權利要求27所述的音頻數據編碼方法,其中,預定的比特率等于或大于最低層的比特率。
33.如權利要求27所述的音頻數據編碼方法,其中音頻數據被給予第一到第M(M表示等于或大于3的整數)信道的每一個;以及(a)包括對第一和第二信道中的一個的音頻數據編碼;和對第三到第M信道中的一個的音頻數據編碼。
34.一種音頻數據解碼方法,包括(a)從給定的比特流提取編碼的SBR數據和與至少一個層相應的編碼的音頻數據,所述層以預定數量的比特表示;(b)通過早于較高層對較低層解碼并早于每一層的低位比特對每一層的高位比特解碼來對編碼的音頻數據解碼;(c)對編碼的SBR數據解碼,并基于解碼的音頻數據和解碼的SBR數據推斷第一頻率和第二頻率之間的頻帶中的音頻數據;和(d)通過使用解碼的音頻數據和推斷的音頻數據產生合成數據,并確定合成數據為0與第二頻率之間的頻帶中的音頻數據,其中,第二預定頻率等于或大于至少一個層的最大頻率,SBR數據包括關于第一和第二頻率之間的頻帶中的音頻數據的信息。
35.如權利要求34所述的音頻數據解碼方法,其中,解碼的音頻數據存在的頻帶中的合成數據是解碼的音頻數據,解碼的音頻數據不存在的頻帶中的合成數據是推斷的音頻數據。
36.如權利要求34所述的音頻數據解碼方法,其中關于音頻數據的信息包括關于音頻數據的包絡的信息;(c)包括無損解碼單元對編碼的SBR數據執(zhí)行無損解碼并獲得關于包絡的信息;高頻產生單元在等于或大于解碼的音頻數據的最大頻率的頻率的頻帶中使解碼的音頻數據產生;和包絡調整單元基于獲得的信息調整產生的音頻數據的包絡;以及(d)包括確定解碼的音頻數據為用于解碼的音頻數據存在的頻帶的合成數據,并確定包絡被調整的音頻數據為用于包絡被調整的音頻數據存在的頻帶的合成數據。
37.如權利要求36所述的音頻數據解碼方法,其中,無損解碼是熵解碼或Huffman解碼。
38.如權利要求34所述的音頻數據解碼方法,其中,以預定的比特率或低于預定的比特率的比特率執(zhí)行對編碼的音頻數據的解碼,所述預定的比特率等于或大于最低層的比特率。
39.如權利要求34所述的音頻數據解碼方法,其中,第一預定頻率是最低層的最大頻率。
40.如權利要求34所述的音頻數據解碼方法,其中,編碼的音頻數據被給予第一到第M(M表示等于或大于3的整數)信道的每一個;以及(b)包括對第一和第二信道中的一個的編碼的音頻數據解碼;和對第三到第M信道中的一個的編碼的音頻數據解碼。
全文摘要
本發(fā)明提供一種對音頻數據編碼和解碼的設備及方法。根據本發(fā)明的一方面,提供一種音頻數據解碼設備,包括比特流分析單元,從給定的比特流中提取編碼的SBR數據和對應于至少一個層的編碼的音頻數據,所述層以預定數量的比特表示;可分級解碼單元,通過早于較高層對較低層解碼和早于每一層的低位比特對高位比特解碼來對音頻數據解碼;SBR解碼單元,對編碼的SBR數據解碼,推斷第一和第二頻率之間的頻帶中的音頻數據;以及數據合成單元,產生并輸出合成數據作為零頻率和第二頻率之間的頻帶中的音頻數據;其中第二預定頻率等于或大于至少一個層的最大頻率,所述SBR數據包括關于第一及第二頻率之間的頻帶中的音頻數據的信息。
文檔編號H04N7/52GK1878001SQ200610072178
公開日2006年12月13日 申請日期2006年4月14日 優(yōu)先權日2005年4月14日
發(fā)明者金美英, 金尚煜, 金度亨, 李時和, 金重會 申請人:三星電子株式會社