TWI834163B - 三維音頻訊號編碼方法、裝置和編碼器 - Google Patents
三維音頻訊號編碼方法、裝置和編碼器 Download PDFInfo
- Publication number
- TWI834163B TWI834163B TW111117469A TW111117469A TWI834163B TW I834163 B TWI834163 B TW I834163B TW 111117469 A TW111117469 A TW 111117469A TW 111117469 A TW111117469 A TW 111117469A TW I834163 B TWI834163 B TW I834163B
- Authority
- TW
- Taiwan
- Prior art keywords
- coefficients
- representative
- virtual
- virtual speakers
- sub
- Prior art date
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 227
- 238000000034 method Methods 0.000 title claims abstract description 116
- 238000001228 spectrum Methods 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 description 31
- 230000006870 function Effects 0.000 description 24
- 230000008569 process Effects 0.000 description 20
- 230000000875 corresponding effect Effects 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 15
- 238000005070 sampling Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000013144 data compression Methods 0.000 description 3
- 230000001788 irregular Effects 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 210000003454 tympanic membrane Anatomy 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 239000003570 air Substances 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/002—Dynamic bit allocation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0204—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/11—Application of ambisonics in stereophonic audio systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Stereophonic System (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申請揭露了一種三維音頻訊號編碼方法、裝置和編碼器,涉及多媒體領域。該方法包括:編碼器獲取到三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值後,根據第四數量個係數的頻域特徵值,從第四數量個係數中選取第三數量個代表係數,並根據第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器,進而,根據第二數量個當前訊框的代表虛擬揚聲器對當前訊框進行編碼,得到碼流。由於編碼器利用較少數量的代表係數代替全部係數從候選虛擬揚聲器集合中選取代表虛擬揚聲器,因此有效地降低了編碼器搜索虛擬揚聲器的計算複雜度,以及對三維音頻訊號進行壓縮編碼的計算複雜度,減輕了編碼器的計算負擔。
Description
本申請涉及多媒體領域,尤其涉及一種三維音頻訊號編碼方法、裝置和編碼器。
隨著高性能電腦和訊號處理技術的飛速發展,收聽者對語音、音頻體驗提出了越來越高的要求,浸入式音頻能夠滿足人們在這方面的需求。例如,三維音頻技術在無線通訊(例如4G/5G等等)語音、虛擬實境/增強實境和媒體音頻等方面得到了廣泛應用。三維音頻技術是對真實世界中的聲音和三維聲場訊息進行獲取、處理、傳輸和渲染回放的音頻技術,使聲音具有強烈的空間感、包圍感及沉浸感,給收聽者以“身臨其境”的非凡聽覺體驗。
通常,採集設備(如:麥克風)採集大量的資料記錄三維聲場訊息,向回放設備(例如揚聲器,耳機等)傳輸三維音頻訊號,以便於回放設備播放三維音頻。由於三維聲場訊息的資料量較大,導致需要大量的儲存空間儲存資料,以及傳輸三維音頻訊號的帶寬需求較高。為了解決上述問題,可以對三維音頻訊號進行壓縮,儲存或傳輸壓縮資料。目前,編碼器可以採用預先配置的多個虛擬揚聲器對三維音頻訊號進行壓縮。但是,編碼器對三維音頻訊號進行壓縮編碼的計算複雜度較高。因此,如何降低對三維音頻訊號進行壓縮編碼的計算複雜度是一個極待解決的問題。
本申請提供了三維音頻訊號編碼方法、裝置和編碼器,由此可以降低對三維音頻訊號進行壓縮編碼的計算複雜度。
第一方面,本申請提供了一種三維音頻訊號編碼方法,該方法可以由編碼器執行,具體包括如下步驟:編碼器獲取到三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值後,根據第四數量個係數的頻域特徵值,從第四數量個係數中選取第三數量個代表係數,進而,根據第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器,以及,根據第二數量個當前訊框的代表虛擬揚聲器對當前訊框進行編碼,得到碼流。其中,該第四數量個係數包括第三數量個代表係數,第三數量小於第四數量,表示第三數量個代表係數是第四數量個係數中的部分係數。
其中,三維音頻訊號的當前訊框為高階立體混響(higher order ambisonics,HOA)訊號;係數的頻域特徵值是依據HOA訊號的係數確定的。
如此,由於編碼器從當前訊框的全部係數中選取部分係數作為代表係數,利用較少數量的代表係數代替當前訊框的全部係數從候選虛擬揚聲器集合中選取代表虛擬揚聲器,因此有效地降低了編碼器搜索虛擬揚聲器的計算複雜度,從而降低了對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕了編碼器的計算負擔。
另外,編碼器根據第二數量個當前訊框的代表虛擬揚聲器對當前訊框進行編碼,得到碼流包括:編碼器根據第二數量個當前訊框的代表虛擬揚聲器和當前訊框生成虛擬揚聲器訊號;對虛擬揚聲器訊號進行編碼得到碼流。
由於當前訊框的係數的頻域特徵值特徵化了三維音頻訊號的聲場特性,編碼器依據當前訊框的係數的頻域特徵值選取當前訊框的具有代表性聲場成分的代表係數,利用代表係數從候選虛擬揚聲器集合中選取的當前訊框的代表虛擬揚聲器能夠充分地特徵化三維音頻訊號的聲場特性,從而進一步地提高了編碼器利用當前訊框的代表虛擬揚聲器對待編碼的三維音頻訊號進行壓縮編碼時生成虛擬揚聲器訊號的準確性,以便於提升對三維音頻訊號進行壓縮編碼的壓縮率,降低編碼器傳輸碼流所佔用的帶寬。
在一種可能的實現方式中,根據第四數量個係數的頻域特徵值,從第四數量個係數中選取第三數量個代表係數,包括:編碼器根據第四數量個係數的頻域特徵值,從第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到第三數量個代表係數。
例如,根據第四數量個係數的頻域特徵值,從第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到第三數量個代表係數包括:編碼器根據至少一個次頻帶中每個次頻帶中係數的頻域特徵值,從每個次頻帶中分別選取Z個代表係數,以得到第三數量個代表係數,Z為正整數。由於編碼器在當前訊框的全部係數指示的頻譜範圍內,根據係數的頻域特徵值選取代表係數,從而確保每個次頻帶均有代表係數被選中,提高了編碼器在當前訊框的全部係數指示的頻譜範圍內選取代表係數的均衡性。
又如,當至少一個次頻帶包括至少兩個次頻帶時,根據第四數量個係數的頻域特徵值,從第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到第三數量個代表係數包括:編碼器根據至少兩個次頻帶中每個次頻帶內的第一候選係數的頻域特徵值確定每個次頻帶的權重;根據每個次頻帶各自的權重分別調整每個次頻帶內的第二候選係數的頻域特徵值,得到每個次頻帶內的第二候選係數的調整後頻域特徵值,第一候選係數和第二候選係數為次頻帶內的部分係數;根據至少兩個次頻帶內的第二候選係數的調整後頻域特徵值,以及至少兩個次頻帶內除第二候選係數之外的係數的頻域特徵值,確定第三數量個代表係數。如此,編碼器根據次頻帶的權重調整該次頻帶內的係數被選中的機率,進一步地提高了編碼器選取的代表係數從聲場分佈和音頻特性上代表了全次頻帶係數的準確性。
其中,編碼器可以不等分劃分頻譜範圍得到至少兩個次頻帶,則至少兩個次頻帶包含的係數的數量不同;或者,編碼器也可以等分劃分頻譜範圍得到至少兩個次頻帶,則至少兩個次頻帶中每個次頻帶包含的係數的數量相同。
在另一種可能的實現方式中,根據第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器包括:編碼器根據當前訊框的第三數量個代表係數、候選虛擬揚聲器集合和投票輪數確定第一數量個虛擬揚聲器和第一數量個投票值,根據第一數量個投票值,從第一數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器,第二數量小於第一數量,表示第二數量個當前訊框的代表虛擬揚聲器是候選虛擬揚聲器集合中的部分虛擬揚聲器。可理解的,虛擬揚聲器與投票值一一對應。例如,第一數量個虛擬揚聲器包括第一虛擬揚聲器,第一數量個投票值包括第一虛擬揚聲器的投票值,第一虛擬揚聲器與第一虛擬揚聲器的投票值對應。第一虛擬揚聲器的投票值用於特徵化第一虛擬揚聲器的優先級。候選虛擬揚聲器集合包括第五數量個虛擬揚聲器,第五數量個虛擬揚聲器包括第一數量個虛擬揚聲器,第一數量小於或等於第五數量,投票輪數為大於或等於1的整數,且投票輪數小於或等於第五數量。第二數量是預設的,或者,第二數量是根據當前訊框確定的。
目前,在虛擬揚聲器搜索過程中,編碼器依據待編碼的三維音頻訊號和虛擬揚聲器之間的相關計算的結果作為虛擬揚聲器的選擇衡量指標。而且,若編碼器對每一個係數傳輸一個虛擬揚聲器,則無法達到高效資料壓縮的目的,會對編碼器造成沉重的計算負擔。本申請實施例提供的選擇虛擬揚聲器的方法,編碼器利用較少數量的代表係數代替當前訊框的全部係數對候選虛擬揚聲器集合中每個虛擬揚聲器進行投票,依據投票值選取當前訊框的代表虛擬揚聲器。進而,編碼器利用當前訊框的代表虛擬揚聲器對待編碼的三維音頻訊號進行壓縮編碼,不僅有效地提升了對三維音頻訊號進行壓縮編碼的壓縮率,而且降低了編碼器搜索虛擬揚聲器的計算複雜度,從而降低了對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕了編碼器的計算負擔。
第二數量用於特徵化編碼器選取的當前訊框的代表虛擬揚聲器的數量。第二數量越大表示當前訊框的代表虛擬揚聲器的數量越大,三維音頻訊號的聲場訊息越多;第二數量越小表示當前訊框的代表虛擬揚聲器的數量越小,三維音頻訊號的聲場訊息越少。因此,可通過設置第二數量控制編碼器選取的當前訊框的代表虛擬揚聲器的數量。例如,第二數量可以是預設的,又如,第二數量可以是根據當前訊框確定的。示例地,第二數量的取值可以是1、2、4或8。
在另一種可能的實現方式中,根據第一數量個投票值,從第一數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器包括:編碼器根據第一數量個投票值,以及第六數量個在前訊框最終投票值,獲取第七數量個虛擬揚聲器與當前訊框對應的第七數量個當前訊框最終投票值,根據第七數量個當前訊框最終投票值,從第七數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器,第二數量小於第七數量,表示第二數量個當前訊框的代表虛擬揚聲器是第七數量個虛擬揚聲器中的部分虛擬揚聲器。其中,第七數量個虛擬揚聲器包括第一數量個虛擬揚聲器,且第七數量個虛擬揚聲器包括第六數量個虛擬揚聲器,第六數量個虛擬揚聲器包含的虛擬揚聲器為對三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器。在前訊框的代表虛擬揚聲器集合包含的第六數量個虛擬揚聲器與該第六數量個在前訊框最終投票值一一對應。
在虛擬揚聲器搜索過程中,由於真實聲源的位置與虛擬揚聲器的位置不一定重合,會導致虛擬揚聲器不一定能夠與真實聲源形成一一對應關係,且由於在實際的複雜場景下,可能出現有限數量的虛擬揚聲器集合無法特徵化聲場中所有聲源的情況,此時,訊框與訊框之間搜索到的虛擬揚聲器可能會發生頻繁跳變,這種跳變會明顯地影響聽音者的聽覺感受,導致解碼重建後三維音頻訊號中出現明顯的不連續和噪聲現象。本申請的實施例提供的選擇虛擬揚聲器的方法通過繼承在前訊框的代表虛擬揚聲器,即對於相同編號的虛擬揚聲器,用在前訊框最終投票值調整當前訊框初始投票值,使得編碼器更傾向於選擇在前訊框的代表虛擬揚聲器,從而降低訊框與訊框之間的虛擬揚聲器的頻繁跳變,增強了訊框之間的訊號方位的連續性,提高了重建後三維音頻訊號的聲像的穩定性,確保重建後三維音頻訊號的音質。
在另一種可能的實現方式中,該方法還包括:編碼器獲取當前訊框與在前訊框的代表虛擬揚聲器集合的第一相關度,若第一相關度不滿足多工條件,獲取三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值。在前訊框的代表虛擬揚聲器集合包括第六數量個虛擬揚聲器,第六數量個虛擬揚聲器包含的虛擬揚聲器為對三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器,第一相關度用於確定對當前訊框進行編碼時是否多工在前訊框的代表虛擬揚聲器集合。
如此,編碼器可以先判斷是否可以多工在前訊框的代表虛擬揚聲器集合對當前訊框進行編碼,如果編碼器多工在前訊框的代表虛擬揚聲器集合對當前訊框進行編碼,從而,避免編碼器再執行搜索虛擬揚聲器的過程,有效地降低了編碼器搜索虛擬揚聲器的計算複雜度,因此降低了對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕了編碼器的計算負擔。另外,還可以降低訊框與訊框之間的虛擬揚聲器的頻繁跳變,增強了訊框之間的方位的連續性,提高了重建後三維音頻訊號的聲像的穩定性,確保重建後三維音頻訊號的音質。如果編碼器不能多工在前訊框的代表虛擬揚聲器集合對當前訊框進行編碼,編碼器再選取代表係數,利用當前訊框的代表係數對候選虛擬揚聲器集合中每個虛擬揚聲器進行投票,依據投票值選取當前訊框的代表虛擬揚聲器,來達到降低對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕編碼器的計算負擔的目的。
可選地,方法還包括:編碼器還可以採集三維音頻訊號的當前訊框,以便於對三維音頻訊號的當前訊框進行壓縮編碼得到碼流,將碼流傳輸至解碼端。
第二方面,本申請提供了一種三維音頻訊號編碼裝置,該裝置包括用於執行第一方面或第一方面任一種可能設計中的三維音頻訊號編碼方法的各個模組。例如,三維音頻訊號編碼裝置包括係數選擇模組、虛擬揚聲器選擇模組和編碼模組。該係數選擇模組,用於獲取三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值;該係數選擇模組,還用於根據第四數量個係數的頻域特徵值,從第四數量個係數中選取第三數量個代表係數,第三數量小於第四數量;該虛擬揚聲器選擇模組,用於根據第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器;該編碼模組,用於根據第二數量個當前訊框的代表虛擬揚聲器對當前訊框進行編碼,得到碼流。這些模組可以執行上述第一方面方法示例中的相應功能,具體參見方法示例中的詳細描述,此處不做贅述。
第三方面,本申請提供一種編碼器,該編碼器包括至少一個處理器和儲存器,其中,該儲存器用於儲存一組電腦指令;當處理器執行該一組電腦指令時,執行第一方面或第一方面任一種可能實現方式中的三維音頻訊號編碼方法的操作步驟。
第四方面,本申請提供一種系統,系統包括如第三方面所述的編碼器,以及解碼器,該編碼器用於執行第一方面或第一方面任一種可能實現方式中的三維音頻訊號編碼方法的操作步驟,該解碼器用於解碼該編碼器生成的碼流。
第五方面,本申請提供一種電腦可讀儲存介質,包括:電腦軟體指令;當電腦軟體指令在編碼器中運行時,使得編碼器執行如第一方面或第一方面任意一種可能的實現方式中所述方法的操作步驟。
第六方面,本申請提供一種電腦程式產品,當電腦程式產品在編碼器上運行時,使得編碼器執行如第一方面或第一方面任意一種可能的實現方式中所述方法的操作步驟。
本申請在上述各方面提供的實現方式的基礎上,還可以進行進一步組合以提供更多實現方式。
為了下述各實施例的描述清楚簡潔,首先給出相關技術的簡要介紹。
聲音(sound)是由物體振動產生的一種連續的波。產生振動而發出聲波的物體稱為聲源。聲波通過介質(如:空氣、固體或液體)傳播的過程中,人或動物的聽覺器官能感知到聲音。
聲波的特徵包括音調、音強和音色。音調表示聲音的高低。音強表示聲音的大小。音強也可以稱為響度或音量。音強的單位是分貝(decibel,dB)。音色又稱為音品。
聲波的頻率決定了音調的高低。頻率越高音調越高。物體在一秒鐘之內振動的次數稱為頻率,頻率單位是赫茲(hertz,Hz)。人耳能識別的聲音的頻率在20 Hz~20000 Hz之間。
聲波的幅度決定了音強的強弱。幅度越大音強越大。距離聲源越近,音強越大。
聲波的波形決定了音色。聲波的波形包括方波、鋸齒波、正弦波和脈衝波等。
根據聲波的特徵,聲音可以分為規則聲音和無規則聲音。無規則聲音是指聲源無規則地振動發出的聲音。無規則聲音例如是影響人們工作、學習和休息等的噪聲。規則聲音是指聲源規則地振動發出的聲音。規則聲音包括語音和樂音。聲音用電表示時,規則聲音是一種在時頻域上連續變化的模擬訊號。該模擬訊號可以稱為音頻訊號。音頻訊號是一種攜帶語音、音樂和音效的訊息載體。
由於人的聽覺系統具有辨別空間中聲源的位置分佈的能力,則聽音者聽到空間中的聲音時,除了能感受到聲音的音調、音強和音色外,還能感受到聲音的方位。
隨著人們對聽覺體驗的關注和品質要求與日俱增,為了增強聲音的縱深感、臨場感和空間感,則三維音頻技術應運而生。從而聽音者不僅感受到來自前、後、左和右的聲源發出的聲音,而且感受到自己所處空間被這些聲源產生的空間聲場(簡稱“聲場”(sound field))所包圍的感覺,以及聲音向四周擴散的感覺,營造出一種使聽音者置身於影院或音樂廳等場所的“身臨其境”的音響效果。
三維音頻技術是指將人耳以外的空間假設為一個系統,耳膜處接收到的訊號為聲源發出的聲音經過耳朵以外系統濾波輸出的三維音頻訊號。例如,人耳以外的系統可以定義為系統衝擊響應h(n),任意一個聲源可以定義為x(n),耳膜處接收到的訊號為x(n)和h(n)的卷積結果。本申請實施例所述的三維音頻訊號可以是指高階立體混響(higher order ambisonics,HOA)訊號。三維音頻也可以稱為三維音效、空間音頻、三維聲場重建、虛擬3D音頻或雙耳音頻等。現將詳細參考本發明的較佳實施例,其實例示出於隨附圖式中。只要可能,在圖式及描述中使用相同附圖標號來指代相同或類似部分。
眾所周知,聲波在理想介質中傳播,波數為
,角頻率為
,其中,
f為聲波頻率,
c為聲速。聲壓
p滿足公式(1),
為拉普拉斯運算子。
公式(1)
假設人耳以外的空間系統是一個球形,聽音者處於球的中心,從球外傳來的聲音在球面上有一個投影,過濾掉球面以外的聲音,假設聲源分佈在這個球面上,用球面上的聲源產生的聲場來擬合原始聲源產生的聲場,即三維音頻技術就是一個擬合聲場的方法。具體地,在球坐標系下求解公式(1)等式方程式,在無源球形區域內,該公式(1)方程式解為如下公式(2)。
公式(2)
其中,
r表示球半徑,
表示水平角,
表示俯仰角,
k表示波數,
s表示理想平面波的幅度,
m表示三維音頻訊號的階數序號(或稱為HOA訊號的階數序號)。
表示球貝塞爾函數,球貝塞爾函數又稱為徑向基函數,其中,第一個j表示虛數單位,
不隨角度變化。
表示
方向的球諧函數,
表示聲源方向的球諧函數。三維音頻訊號係數滿足公式(3)。
公式(3)
將公式(3)代入公式(2),公式(2)可以變形為公式(4)。
公式(4)
其中,
表示N階的三維音頻訊號係數,用於近似描述聲場。聲場是指介質中有聲波存在的區域。N為大於或等於1的整數。比如,N的取值範圍為2至6的整數。本申請的實施例所述的三維音頻訊號的係數可以是指HOA係數或環境立體聲(ambisonic)係數。
三維音頻訊號是一種攜帶聲場中聲源的空間位置訊息的訊息載體,描述了空間中聽音者的聲場。公式(4)表明聲場可以在球面上按球諧函數展開,即聲場可以分解為多個平面波的疊加。因此,可以將三維音頻訊號描述的聲場使用多個平面波的疊加來表達,並通過三維音頻訊號係數重建聲場。
相對5.1聲道的音頻訊號或7.1聲道的音頻訊號,由於N階的HOA訊號有
個聲道,則HOA訊號包括用於描述聲場的空間訊息的資料量較多。若採集設備(比如:麥克風)將該三維音頻訊號傳輸到回放設備(比如:揚聲器),需要消耗較大的帶寬。目前,編碼器可以利用空間壓縮環繞音頻編碼(spatial squeezed surround audio coding,S3AC)或定向音頻編碼(directional audio coding,DirAC)對三維音頻訊號進行壓縮編碼得到碼流,向回放設備傳輸碼流。回放設備對碼流進行解碼,並重建三維音頻訊號,播放重建後三維音頻訊號。從而降低向回放設備傳輸三維音頻訊號的資料量,以及帶寬的佔用。但是,編碼器對三維音頻訊號進行壓縮編碼的計算複雜度較高,佔用編碼器過多的計算資源。因此,如何降低對三維音頻訊號進行壓縮編碼的計算複雜度是一個極待解決的問題。
本申請實施例提供一種音頻編解碼技術,尤其是提供一種面向三維音頻訊號的三維音頻編解碼技術,具體提供一種採用較少的聲道表示三維音頻訊號的編解碼技術,以改進傳統的音頻編解碼系統。音頻編碼(或通常稱為編碼)包括音頻編碼和音頻解碼兩部分。音頻編碼在源側執行,通常包括處理(例如,壓縮)原始音頻以減少表示該原始音頻所需的資料量,從而更高效地儲存和/或傳輸。音頻解碼在目的側執行,通常包括相對於編碼器作逆處理,以重建原始音頻。編碼部分和解碼部分也合稱為編解碼。下面將結合附圖對本申請實施例的實施方式進行詳細描述。
圖1為本申請實施例提供的一種音頻編解碼系統的結構示意圖。音頻編解碼系統100包括源設備110和目標設備120。源設備110用於對三維音頻訊號進行壓縮編碼得到碼流,向目標設備120傳輸碼流。目標設備120對碼流進行解碼,並重建三維音頻訊號,播放重建後三維音頻訊號。
具體地,源設備110包括音頻獲取器111、預處理器112、編碼器113和通訊介面114。
音頻獲取器111用於獲取原始音頻。音頻獲取器111可以是任意類型的用於捕獲現實世界聲音的音頻採集設備,和/或任意類型的音頻生成設備。音頻獲取器111例如是用於生成電腦音頻的電腦音頻處理器。音頻獲取器111也可以為儲存音頻的任意類型的內存或儲存器。音頻包括現實世界聲音、虛擬場景(如:VR或增強實境(augmented reality,AR))聲音和/或其任意組合。
預處理器112用於接收音頻獲取器111採集的原始音頻,並對原始音頻進行預處理,得到三維音頻訊號。例如,預處理器112執行的預處理包括聲道轉換、音頻格式轉換或去噪聲等。
編碼器113用於接收預處理器112生成的三維音頻訊號,對三維音頻訊號進行壓縮編碼得到碼流。示例地,編碼器113可以包括空間編碼器1131和核心編碼器1132。空間編碼器1131用於根據三維音頻訊號從候選虛擬揚聲器集合選取(或稱為搜索)虛擬揚聲器,根據三維音頻訊號和虛擬揚聲器生成虛擬揚聲器訊號。虛擬揚聲器訊號也可以稱為回放訊號。核心編碼器1132用於對虛擬揚聲器訊號進行編碼,得到碼流。
通訊介面114用於接收編碼器113生成的碼流,通過通訊頻道130向目標設備120發送碼流,以便於目標設備120根據碼流重建三維音頻訊號。
目標設備120包括播放器121、後處理器122、解碼器123和通訊介面124。
通訊介面124用於接收通訊介面114發送的碼流,並將碼流傳輸給解碼器123。以便於解碼器123根據碼流重建三維音頻訊號。
通訊介面114和通訊介面124可用於通過源設備110與目標設備120之間的直連通訊鏈路,例如直接有線或無線連接等,或者通過任意類型的網路,例如有線網路、無線網路或其任意組合、任意類型的私網和公網或其任意類型的組合,發送或接收原始音頻的相關資料。
通訊介面114和通訊介面124均可配置為如圖1中從源設備110指向目標設備120的對應通訊頻道130的箭頭所指示的單向通訊介面,或雙向通訊介面,並且可用於發送和接收消息等,以建立連接,確認並交換與通訊鏈路和/或例如編碼後的碼流傳輸等資料傳輸相關的任何其它訊息,等等。
解碼器123用於對碼流進行解碼,並重建三維音頻訊號。示例地,解碼器123包括核心解碼器1231和空間解碼器1232。核心解碼器1231用於對碼流進行解碼,得到虛擬揚聲器訊號。空間解碼器1232用於根據候選虛擬揚聲器集合和虛擬揚聲器訊號重建三維音頻訊號,得到重建後三維音頻訊號。
後處理器122用於接收解碼器123生成的重建後三維音頻訊號,對重建後三維音頻訊號進行後處理。例如,後處理器122執行的後處理包括音頻渲染、響度歸一化、用戶互動、音頻格式轉換或去噪聲等。
播放器121用於根據重建後三維音頻訊號播放重建的聲音。
需要說明的是,音頻獲取器111和編碼器113可以集成在一個實體設備上,也可以設置在不同的實體設備上,不予限定。示例地,如圖1所示的源設備110包括音頻獲取器111和編碼器113,表示音頻獲取器111和編碼器113集成在一個實體設備上,則源設備110也可稱為採集設備。源設備110例如是無線接入網的媒體閘道器、核心網的媒體閘道器、轉碼設備、媒體資源服務器、AR設備、VR設備、麥克風或者其他採集音頻設備。若源設備110不包括音頻獲取器111,表示音頻獲取器111和編碼器113是兩個不同的實體設備,源設備110可以從其他設備(如:採集音頻設備或儲存音頻設備)獲取原始音頻。
另外,播放器121和解碼器123可以集成在一個實體設備上,也可以設置在不同的實體設備上,不予限定。示例地,如圖1所示的目標設備120包括播放器121和解碼器123,表示播放器121和解碼器123集成在一個實體設備上,則目標設備120也可稱為回放設備,目標設備120具有解碼和播放重建音頻的功能。目標設備120例如是揚聲器、耳機或其他播放音頻的設備。若目標設備120不包括播放器121,表示播放器121和解碼器123是兩個不同的實體設備,目標設備120對碼流解碼重建三維音頻訊號後,將重建後三維音頻訊號傳輸給其他播放設備(如:揚聲器或耳機),由其他播放設備回放重建後三維音頻訊號。
此外,圖1示出了源設備110和目標設備120可以集成在一個實體設備上,也可以設置在不同的實體設備上,不予限定。
示例地,如圖2A所示,源設備110可以是錄音棚中的麥克風,目標設備120可以是揚聲器。源設備110可以採集各種樂器的原始音頻,將原始音頻傳輸至編解碼設備,編解碼設備對原始音頻進行編解碼處理,得到重建後三維音頻訊號,由目標設備120回放重建後三維音頻訊號。又示例地,源設備110可以是終端設備中的麥克風,目標設備120可以是耳機。源設備110可以採集外界的聲音或終端設備合成的音頻。
又示例地,如圖2B所示,源設備110和目標設備120集成在虛擬實境(virtual reality,VR)設備、增強實境(Augmented Reality,AR)設備、混合實境(Mixed Reality,MR)設備或擴展實境(Extended Reality,XR)設備中,則VR/AR/MR/XR設備具備採集原始音頻、回放音頻和編解碼的功能。源設備110可以採集用戶發出的聲音和用戶所處的虛擬環境中虛擬物體發出的聲音。
在這些實施例中,源設備110或其對應功能和目標設備120或其對應功能可以使用相同硬體和/或軟體或通過單獨的硬體和/或軟體或其任意組合來實現。根據描述,圖1所示的源設備110和/或目標設備120中的不同單元或功能的存在和劃分可能根據實際設備和應用而有所不同,這對技術人員來說是顯而易見的。
上述音頻編解碼系統的結構只是示意性說明,在一些可能的實現方式中,音頻編解碼系統還可以包括其他設備,例如,音頻編解碼系統還可以包括端側設備或雲側設備。源設備110採集到原始音頻後,對原始音頻進行預處理,得到三維音頻訊號;並將三維音頻傳輸至端側設備或雲側設備,由端側設備或雲側設備實現對三維音頻訊號進行編解碼的功能。
本申請實施例提供的音頻訊號編解碼方法主要應用於編碼端。結合圖3對編碼器的結構進行詳細說明。如圖3所示,編碼器300包括虛擬揚聲器配置單元310、虛擬揚聲器集合生成單元320、編碼分析單元330、虛擬揚聲器選擇單元340、虛擬揚聲器訊號生成單元350和編碼單元360。
虛擬揚聲器配置單元310用於根據編碼器配置訊息生成虛擬揚聲器配置參數,以便得到多個虛擬揚聲器。編碼器配置訊息包括但不限於:三維音頻訊號的階數(或通常稱為HOA階數),編碼比特率,用戶自定義訊息,等。虛擬揚聲器配置參數包括但不限於:虛擬揚聲器的數量,虛擬揚聲器的階數,虛擬揚聲器的位置坐標,等。虛擬揚聲器的數量例如是2048、1669、1343、1024、530、512、256、128或64等。虛擬揚聲器的階數可以是2階至6階中任一個。虛擬揚聲器的位置坐標包括水平角和俯仰角。
虛擬揚聲器配置單元310輸出的虛擬揚聲器配置參數作為虛擬揚聲器集合生成單元320的輸入。
虛擬揚聲器集合生成單元320用於根據虛擬揚聲器配置參數生成候選虛擬揚聲器集合,候選虛擬揚聲器集合包括多個虛擬揚聲器。具體地,虛擬揚聲器集合生成單元320根據虛擬揚聲器的數量確定了候選虛擬揚聲器集合包括的多個虛擬揚聲器,以及根據虛擬揚聲器的位置訊息(如:坐標)和虛擬揚聲器的階數確定虛擬揚聲器的係數。示例地,虛擬揚聲器的坐標確定方法包括但不限於:按等距規則產生多個虛擬揚聲器,或者根據聽覺感知原理生成非均勻分佈的多個虛擬揚聲器;然後,根據虛擬揚聲器的數量生成虛擬揚聲器的坐標。
根據上述三維音頻訊號的生成原理也可以生成虛擬揚聲器的係數。將公式(3)中的
和
分別設置為虛擬揚聲器的位置坐標,
表示N階的虛擬揚聲器的係數。虛擬揚聲器的係數也可以稱作ambisonics係數。
編碼分析單元330用於對三維音頻訊號進行編碼分析,例如分析三維音頻訊號的聲場分佈特徵,即三維音頻訊號的聲源數量、聲源的方向性和聲源的彌散度等特徵。
虛擬揚聲器集合生成單元320輸出的候選虛擬揚聲器集合包括的多個虛擬揚聲器的係數作為虛擬揚聲器選擇單元340的輸入。
編碼分析單元330輸出的三維音頻訊號的聲場分佈特徵作為虛擬揚聲器選擇單元340的輸入。
虛擬揚聲器選擇單元340用於根據待編碼的三維音頻訊號、三維音頻訊號的聲場分佈特徵和多個虛擬揚聲器的係數確定與三維音頻訊號匹配的代表虛擬揚聲器。
不限定的是,本申請實施例的編碼器300還可以不包括編碼分析單元330,即編碼器300可以不對輸入訊號進行分析,虛擬揚聲器選擇單元340採用一種默認配置確定代表虛擬揚聲器。例如,虛擬揚聲器選擇單元340僅根據三維音頻訊號和多個虛擬揚聲器的係數確定與三維音頻訊號匹配的代表虛擬揚聲器。
其中,編碼器300可以將從採集設備獲取的三維音頻訊號或採用人工音頻對象合成的三維音頻訊號作為編碼器300的輸入。另外,編碼器300輸入的三維音頻訊號可以是時域三維音頻訊號也可以是頻域三維音頻訊號,不予限定。
虛擬揚聲器選擇單元340輸出的代表虛擬揚聲器的位置訊息和代表虛擬揚聲器的係數作為虛擬揚聲器訊號生成單元350和編碼單元360的輸入。
虛擬揚聲器訊號生成單元350用於根據三維音頻訊號和代表虛擬揚聲器的屬性訊息生成虛擬揚聲器訊號。代表虛擬揚聲器的屬性訊息包括代表虛擬揚聲器的位置訊息、代表虛擬揚聲器的係數和三維音頻訊號的係數中至少一個。若屬性訊息為代表虛擬揚聲器的位置訊息,根據代表虛擬揚聲器的位置訊息確定代表虛擬揚聲器的係數;若屬性訊息包括三維音頻訊號的係數,根據三維音頻訊號的係數獲取代表虛擬揚聲器的係數。具體地,虛擬揚聲器訊號生成單元350根據三維音頻訊號的係數和代表虛擬揚聲器的係數計算虛擬揚聲器訊號。
示例地,假設矩陣A表示虛擬揚聲器的係數,矩陣X表示HOA訊號的HOA係數。矩陣X為矩陣A的逆矩陣。採用最小二乘方法求得理論的最優解
w,
w表示虛擬揚聲器訊號。虛擬揚聲器訊號滿足公式(5)。
公式(5)
其中,
表示矩陣A的逆矩陣。矩陣A的大小為
,C表示代表虛擬揚聲器的數量,M表示N階的HOA訊號的聲道的數量,a表示代表虛擬揚聲器的係數,矩陣X的大小為
,L表示HOA訊號的係數的數量,x表示HOA訊號的係數。代表虛擬揚聲器的係數可以是指代表虛擬揚聲器的HOA係數或代表虛擬揚聲器的ambisonics係數。例如,
,
。
虛擬揚聲器訊號生成單元350輸出的虛擬揚聲器訊號作為編碼單元360的輸入。
編碼單元360用於對虛擬揚聲器訊號進行核心編碼處理,得到碼流。核心編碼處理包括但不限於:變換、量化、心理聲學模型、噪聲整形、帶寬擴展、下混、算數編碼、碼流產生等。
值得注意的是,空間編碼器1131可以包括虛擬揚聲器配置單元310、虛擬揚聲器集合生成單元320、編碼分析單元330、虛擬揚聲器選擇單元340和虛擬揚聲器訊號生成單元350,即虛擬揚聲器配置單元310、虛擬揚聲器集合生成單元320、編碼分析單元330、虛擬揚聲器選擇單元340和虛擬揚聲器訊號生成單元350實現了空間編碼器1131的功能。核心編碼器1132可以包括編碼單元360,即編碼單元360實現了核心編碼器1132的功能。
圖3所示的編碼器可以生成一個虛擬揚聲器訊號,也可以生成多個虛擬揚聲器訊號。多個虛擬揚聲器訊號可以由圖3所示的編碼器多次執行得到,也可以由圖3所示的編碼器一次執行得到。
接下來,結合附圖對三維音頻訊號的編解碼過程進行說明。圖4為本申請實施例提供的一種三維音頻訊號編解碼方法的流程示意圖。在這裡由圖1中源設備110和目標設備120執行三維音頻訊號編解碼過程為例進行說明。如圖4所示,該方法包括以下步驟。
S410、源設備110獲取三維音頻訊號的當前訊框。
如上述實施例所述,若源設備110攜帶音頻獲取器111,源設備110可以通過音頻獲取器111採集原始音頻。可選地,源設備110也可以接收其他設備採集的原始音頻;或者從源設備110中的儲存器或其他儲存器獲取原始音頻。原始音頻可以包括即時採集的現實世界聲音、設備儲存的音頻和由多個音頻合成的音頻中至少一種。本實施例對原始音頻的獲取方式以及原始音頻的類型不予限定。
源設備110獲取到原始音頻後,根據三維音頻技術和原始音頻生成三維音頻訊號,以便於回放原始音頻時,為聽音者提供“身臨其境”的音響效果。生成三維音頻訊號的具體方法可以參考上述實施例中預處理器112的闡述和現有技術的闡述。
另外,音頻訊號是一個連續的模擬訊號。在音頻訊號處理過程中,可以先對音頻訊號進行採樣,生成訊框序列的數位訊號。訊框可以包括多個採樣點。訊框也可以指採樣得到的採樣點。訊框也可以包括對訊框劃分得到的子訊框。訊框也可以指對訊框劃分得到的子訊框。例如一訊框長度為L個採樣點,劃分為N個子訊框,那麼每個子訊框對應L/N個採樣點。音頻編解碼通常是指處理包含多個採樣點的音頻訊框序列。
音頻訊框可以包括當前訊框或在前訊框。本申請的各個實施例所述的當前訊框或在前訊框可以是指訊框或是子訊框。當前訊框是指在當前時刻進行編解碼處理的訊框。在前訊框是指在當前時刻之前時刻已進行編解碼處理的訊框。在前訊框可以是當前時刻的前一時刻或者前多個時刻的訊框。本申請的實施例中,三維音頻訊號的當前訊框是指在當前時刻進行編解碼處理的一訊框三維音頻訊號。在前訊框是指在當前時刻之前時刻已進行編解碼處理的一訊框三維音頻訊號。三維音頻訊號的當前訊框可以是指三維音頻訊號的待編碼當前訊框。三維音頻訊號的當前訊框可以簡稱為當前訊框。三維音頻訊號的在前訊框可以簡稱為在前訊框。
S420、源設備110確定候選虛擬揚聲器集合。
在一種情形下,源設備110的儲存器中預先配置有候選虛擬揚聲器集合。源設備110可以從儲存器中讀取候選虛擬揚聲器集合。候選虛擬揚聲器集合包括多個虛擬揚聲器。虛擬揚聲器表示空間聲場中虛擬存在的揚聲器。虛擬揚聲器用於根據三維音頻訊號計算虛擬揚聲器訊號,以便於目標設備120回放重建後三維音頻訊號。
在另一種情形下,源設備110的儲存器中預先配置有虛擬揚聲器配置參數。源設備110根據虛擬揚聲器配置參數生成候選虛擬揚聲器集合。可選地,源設備110根據自身的計算資源(如:處理器)能力和當前訊框的特徵(如:頻道和資料量)即時生成候選虛擬揚聲器集合。
生成候選虛擬揚聲器集合的具體方法可以參考現有技術,以及上述實施例中虛擬揚聲器配置單元310和虛擬揚聲器集合生成單元320的闡述。
S430、源設備110根據三維音頻訊號的當前訊框,從候選虛擬揚聲器集合中選取當前訊框的代表虛擬揚聲器。
源設備110根據當前訊框的係數與虛擬揚聲器的係數對虛擬揚聲器進行投票,根據虛擬揚聲器的投票值從候選虛擬揚聲器集合中選擇當前訊框的代表虛擬揚聲器。從候選虛擬揚聲器集合中搜索有限數量的當前訊框的代表虛擬揚聲器,作為待編碼的當前訊框的最佳匹配虛擬揚聲器,從而實現對待編碼的三維音頻訊號進行資料壓縮的目的。
圖5為本申請實施例提供的一種選擇虛擬揚聲器方法的流程示意圖。圖5所述的方法流程是對圖4中S430所包括的具體操作過程的闡述。在這裡由圖1所示的源設備110中編碼器113執行選擇虛擬揚聲器過程為例進行說明。具體地實現虛擬揚聲器選擇單元340的功能。如圖5所示,該方法包括以下步驟。
S510、編碼器113獲取當前訊框的代表係數。
代表係數可以是指頻域代表係數或時域代表係數。頻域代表係數也可以稱為頻域代表頻點或頻譜代表係數。時域代表係數也可以稱為時域代表採樣點。獲取當前訊框的代表係數的具體方法可以參考下述圖6和圖7所述的S610和S620的闡述。
S520、編碼器113根據當前訊框的代表係數對候選虛擬揚聲器集合中虛擬揚聲器的投票值,從候選虛擬揚聲器集合中選取當前訊框的代表虛擬揚聲器。執行S440至S460。
編碼器113根據當前訊框的代表係數與虛擬揚聲器的係數對候選虛擬揚聲器集合中的虛擬揚聲器進行投票,根據虛擬揚聲器的當前訊框最終投票值從候選虛擬揚聲器集合中選擇(搜索)當前訊框的代表虛擬揚聲器。選取當前訊框的代表虛擬揚聲器的具體方法可以參考下述圖8和圖9所述的S630的闡述。
需要說明的是,編碼器先遍歷候選虛擬揚聲器集合包含的虛擬揚聲器,利用從候選虛擬揚聲器集合中選取的當前訊框的代表虛擬揚聲器對當前訊框進行壓縮。但是,若連續訊框選取的虛擬揚聲器的結果差異較大,會導致重建後三維音頻訊號的聲像不穩定,降低重建後三維音頻訊號的音質。在本申請的實施例中,編碼器113可以依據在前訊框的代表虛擬揚聲器的在前訊框最終投票值對候選虛擬揚聲器集合包含的虛擬揚聲器的當前訊框初始投票值進行更新處理,得到虛擬揚聲器的當前訊框最終投票值,則根據虛擬揚聲器的當前訊框最終投票值從候選虛擬揚聲器集合中選取當前訊框的代表虛擬揚聲器。從而,通過參考在前訊框的代表虛擬揚聲器來選取當前訊框的代表虛擬揚聲器,使編碼器對當前訊框選擇當前訊框的代表虛擬揚聲器時傾向於選擇與在前訊框的代表虛擬揚聲器相同的虛擬揚聲器,增加連續訊框之間的方位的連續性,克服了連續訊框選取的虛擬揚聲器的結果差異較大的問題。因此,本申請的實施例還可以包括S530。
S530、編碼器113根據在前訊框的代表虛擬揚聲器的在前訊框最終投票值調整候選虛擬揚聲器集合中虛擬揚聲器的當前訊框初始投票值,獲得虛擬揚聲器的當前訊框最終投票值。
編碼器113根據當前訊框的代表係數與虛擬揚聲器的係數對候選虛擬揚聲器集合中的虛擬揚聲器進行投票,得到虛擬揚聲器的當前訊框初始投票值後,根據在前訊框的代表虛擬揚聲器的在前訊框最終投票值調整候選虛擬揚聲器集合中虛擬揚聲器的當前訊框初始投票值,獲得虛擬揚聲器的當前訊框最終投票值。在前訊框的代表虛擬揚聲器為編碼器113對在前訊框進行編碼時使用的虛擬揚聲器。調整候選虛擬揚聲器集合中虛擬揚聲器的當前訊框初始投票值的具體方法可以參考下述圖9所述的S6302a至S6302b的闡述。
在一些實施例中,若當前訊框是原始音頻中第一訊框,編碼器113執行S510至S520。若當前訊框是原始音頻中第二訊框以上的任意一訊框,編碼器113可以先判斷是否多工在前訊框的代表虛擬揚聲器對當前訊框進行編碼或判斷是否進行搜索虛擬揚聲器,確保連續訊框之間的方位的連續性,並降低編碼複雜度。本申請的實施例還可以包括S540。
S540、編碼器113根據在前訊框的代表虛擬揚聲器和當前訊框判斷是否進行虛擬揚聲器搜索。
若編碼器113確定進行虛擬揚聲器搜索,執行S510至S530。可選地,編碼器113可以先執行S510,即編碼器113獲取當前訊框的代表係數,編碼器113根據當前訊框的代表係數和在前訊框的代表虛擬揚聲器的係數判斷是否進行虛擬揚聲器搜索,若編碼器113確定進行虛擬揚聲器搜索,再執行S520至S530。
若編碼器113確定不進行虛擬揚聲器搜索,執行S550。
S550、編碼器113確定多工在前訊框的代表虛擬揚聲器對當前訊框進行編碼。
編碼器113多工在前訊框的代表虛擬揚聲器和當前訊框生成虛擬揚聲器訊號,對虛擬揚聲器訊號進行編碼得到碼流,向目標設備120發送碼流,即執行S450和S460。
判斷是否進行虛擬揚聲器搜索的具體方法可以參考下述圖10所述的S650至S660的闡述。
S440、源設備110根據三維音頻訊號的當前訊框和當前訊框的代表虛擬揚聲器生成虛擬揚聲器訊號。
源設備110根據當前訊框的係數和當前訊框的代表虛擬揚聲器的係數生成虛擬揚聲器訊號。生成虛擬揚聲器訊號的具體方法可以參考現有技術,以及上述實施例中虛擬揚聲器訊號生成單元350的闡述。
S450、源設備110對虛擬揚聲器訊號進行編碼得到碼流。
源設備110可以對虛擬揚聲器訊號進行變換或量化等編碼操作,生成碼流,從而實現對待編碼的三維音頻訊號進行資料壓縮的目的。生成碼流的具體方法可以參考現有技術,以及上述實施例中編碼單元360的闡述。
S460、源設備110向目標設備120發送碼流。
源設備110可以對原始音頻全部編碼完成後,向目標設備120發送原始音頻的碼流。或者,源設備110也可以以訊框為單位,即時對三維音頻訊號進行編碼處理,對一訊框編碼完成後發送一訊框的碼流。發送碼流的具體方法可以參考現有技術,以及上述實施例中通訊介面114和通訊介面124的闡述。
S470、目標設備120對源設備110發送的碼流進行解碼,重建三維音頻訊號,得到重建後三維音頻訊號。
目標設備120接收到碼流後,對碼流進行解碼得到虛擬揚聲器訊號,再根據候選虛擬揚聲器集合和虛擬揚聲器訊號重建三維音頻訊號,得到重建後三維音頻訊號。目標設備120回放重建後三維音頻訊號。或者,目標設備120將重建後三維音頻訊號傳輸給其他播放設備,由其他播放設備播放重建後三維音頻訊號,使得聽音者置身於影院、音樂廳或虛擬場景等場所的“身臨其境”的音響效果更加逼真。
目前,在虛擬揚聲器搜索過程中,為了衡量候選虛擬揚聲器集合中每個虛擬揚聲器與三維音頻訊號之間的關係,三維音頻訊號的每個係數要與每個虛擬揚聲器的係數進行相關運算,對編碼器造成了沉重的計算負擔。本申請實施例提供一種三維音頻訊號的係數選擇方法,編碼器利用三維音頻訊號的代表係數與每個虛擬揚聲器的係數進行相關運算選取代表虛擬揚聲器,從而降低編碼器搜索虛擬揚聲器的計算複雜度。
接下來,結合附圖對三維音頻訊號的係數選擇方法進行詳細說明。圖6為本申請實施例提供的一種三維音頻訊號編碼方法的流程示意圖。在這裡由圖1中源設備110中編碼器113執行三維音頻訊號的係數選擇過程為例進行說明。具體地實現虛擬揚聲器選擇單元340的功能。其中,圖6所述的方法流程是對圖5中S510所包括的具體操作過程的闡述。如圖6所示,該方法包括以下步驟。
S610、編碼器113獲取三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值。
假設三維音頻訊號是HOA訊號,編碼器113可以對HOA訊號的當前訊框進行採樣,得到L·
個採樣點,即得到第四數量個係數。N表示HOA訊號的階數。示例地,假設HOA訊號的當前訊框的時長為20毫秒,編碼器113根據48KHz頻率對當前訊框進行採樣,得到時域上的960·
個採樣點。採樣點也可以稱為時域係數。
三維音頻訊號的當前訊框的頻域係數可以是根據三維音頻訊號的當前訊框的時域係數進行時頻轉換得到。時域轉變為頻域的方法不予限定。時域轉變為頻域的方法例如是修正的離散餘弦變換(Modified Discrete Cosine Transform,MDCT),則可以得到頻域上960·
個頻域係數。頻域係數也可以稱為頻譜系數或頻點。
採樣點的頻域特徵值滿足p(j)=norm(x(j)),其中,j=1,2…L,L表示採樣時刻的數量,x表示三維音頻訊號的當前訊框的頻域係數,例如MDCT係數,norm為求取二範數運算;x(j)表示第j個採樣時刻的
個採樣點的頻域係數。
採樣點的頻域特徵值還可以是HOA訊號中任意聲道係數。通常情況下,選擇第0階對應的聲道係數。因此HOA訊號的頻域特徵值滿足p(j)=x0(j),其中x0(j)表示第0階第j個頻點的頻域係數。
採樣點的頻域特徵值還可以是HOA訊號中多個聲道係數的均值。因此HOA訊號的頻域特徵值滿足p(j)=mean(x(j)),其中,mean表示求取平均運算。
S620、編碼器113根據第四數量個係數的頻域特徵值,從第四數量個係數中選取第三數量個代表係數。
編碼器113將第四數量個係數指示的頻譜範圍劃分為至少一個次頻帶。其中,編碼器113將第四數量個係數指示的頻譜範圍劃分為一個次頻帶,可以理解的,該一個次頻帶的頻譜範圍等於第四數量個係數指示的頻譜範圍,相當於編碼器113未對第四數量個係數指示的頻譜範圍進行劃分。
如果編碼器113將第四數量個係數指示的頻譜範圍劃分為至少兩個次頻帶,在一種情形下,編碼器113將第四數量個係數指示的頻譜範圍等分為至少兩個次頻帶,至少兩個次頻帶中每個次頻帶包含相同數量的係數。
在另一情形下,編碼器113對第四數量個係數指示的頻譜範圍進行不等分,劃分得到的至少兩個次頻帶包含的係數的數量不同,或者劃分得到的至少兩個次頻帶中每個次頻帶包含的係數的數量均不同。例如,編碼器113可以根據第四數量個係數指示的頻譜範圍中的低頻範圍、中頻範圍和高頻範圍,對第四數量個係數指示的頻譜範圍進行不等分,使得低頻範圍、中頻範圍和高頻範圍中每個頻譜範圍包括至少一個次頻帶。低頻範圍內的至少一個次頻帶中每個次頻帶包含相同數量的係數。中頻範圍內的至少一個次頻帶中每個次頻帶包含相同數量的係數。高頻範圍內的至少一個次頻帶中每個次頻帶包含相同數量的係數。低頻範圍、中頻範圍和高頻範圍中三個頻譜範圍內的次頻帶可以包含不同數量的係數。
示例地,編碼器113根據心理聲學模型將第四數量個係數指示的頻譜範圍劃分為T個次頻帶,例如T=44。第i個次頻帶的起始係數序號記為sfb[i],i=1,2…T,表示i的取值範圍為1至T。第i個次頻帶包含的係數個數記為b(i)。假設低頻範圍包括10個次頻帶,b(1)=4,表示第1個次頻帶包含4個係數,b(10)=4,表示第10個次頻帶包含4個係數。中頻範圍包括20個次頻帶,b(11)=8,表示第11個次頻帶包括8個係數;b(30)=8,表示第30個次頻帶包括8個係數。高頻範圍包括14個次頻帶,b(31)=16,表示第31個次頻帶包括16個係數;b(44)=16,表示第44個次頻帶包括16個係數。
進一步地,編碼器113根據第四數量個係數的頻域特徵值,從第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,得到第三數量個代表係數。第三數量小於第四數量,第四數量個係數包含第三數量個代表係數。
在一種可能的實現方式中,圖7所述的方法流程是對圖7中S620所包括的具體操作過程的闡述。如圖7所示,該方法包括以下步驟。
S6201、編碼器113根據至少一個次頻帶的每個次頻帶中係數的頻域特徵值,從每個次頻帶中選取Z個代表係數,以得到第三數量個代表係數。Z為正整數。
例如,編碼器113根據至少一個次頻帶的每個次頻帶中係數的頻域特徵值的從大到小的順序,分別從每個次頻帶中選取Z個代表係數,從每個次頻帶中選取的Z個代表係數組成得到第三數量個代表係數。
示例地,編碼器113對第i個次頻帶中b(i)個係數的頻域特徵值進行從大到小的排序,根據第i個次頻帶中b(i)個係數的頻域特徵值的從大到小的順序,從第i個次頻帶中最大頻域特徵值的係數開始,選取K(i)個代表係數。第i個次頻帶內K(i)個代表係數對應的係數序號記為a
i[j],j=0,…K(i)-1,表示j的取值範圍為0至K(i)-1。其中,K(i)的取值可以是預先設定的,也可以是按照預定的規則產生的,例如從第i個次頻帶中最大頻域特徵值的係數開始,編碼器113選取係數的頻域特徵值最大的50%個係數作為代表係數。
在另一種可能的實現方式中,至少一個次頻帶包括至少兩個次頻帶時,對於至少兩個次頻帶中的每個次頻帶,編碼器113可以先確定至少兩個次頻帶中每個次頻帶的權重,利用每個次頻帶各自的權重分別對每個次頻帶內係數的頻域特徵值進行調整,再從至少兩個次頻帶中選取第三數量個代表係數。如圖7所示,S620還可以包含以下步驟。
S6202、編碼器113根據至少兩個次頻帶中每個次頻帶內的第一候選係數的頻域特徵值確定每個次頻帶各自的權重。
第一候選係數可以是指次頻帶內的部分係數。本申請實施例對第一候選係數的數量不予限定,第一候選係數的數量可以是一個或至少兩個。在一些實施例中,編碼器113可以根據S6201所述的方法選取第一候選係數。可理解的,編碼器113根據至少兩個次頻帶的每個次頻帶中係數的頻域特徵值的從大到小的順序,從每個次頻帶中選取Z個代表係數,分別將Z個代表係數作為每個次頻帶的第一候選係數。例如,至少兩個次頻帶包括第一次頻帶,將從第一次頻帶中選取Z個代表係數作為第一次頻帶的第一候選係數。
編碼器113根據次頻帶內的第一候選係數的頻域特徵值和該次頻帶內所有係數的頻域特徵值確定該次頻帶的權重。
示例地,編碼器113根據第i個次頻帶的候選係數的頻域特徵值和第i個次頻帶的所有係數的頻域特徵值,計算第i個次頻帶的權重w(i)。第i個次頻帶的權重w(i)滿足公式(6)。
公式(6)
其中,p表示當前訊框的係數的頻域特徵值,K(i)表示第i個次頻帶的係數的數量,a
i[
j]表示第i個次頻帶的第j個係數的係數序號,sfb[i]表示第i個次頻帶的起始係數序號,b(i)表示第i個次頻帶包含的係數數量,j=0,…K(i)-1,i=1,2…T。
S6203、編碼器113根據每個次頻帶各自的權重分別調整每個次頻帶內的第二候選係數的頻域特徵值,得到每個次頻帶內的第二候選係數的調整後頻域特徵值。
第二候選係數可以是指次頻帶內的部分係數。本申請實施例對第二候選係數的數量不予限定,第二候選係數的數量可以是一個或至少兩個。在一些實施例中,編碼器113可以根據S6201所述的方法選取第二候選係數。可理解的,編碼器113根據至少兩個次頻帶的每個次頻帶中係數的頻域特徵值的從大到小的順序,從每個次頻帶中選取Z個代表係數,將Z個代表係數分別作為每個次頻帶的第二候選係數。在該情況下,第一候選係數和第二候選係數的數量可以相同也可以不同。對於一個次頻帶內的第一候選係數和第二候選係數,第一候選係數和第二候選係數可以是相同的係數也可以不同的係數。編碼器113可以對每個次頻帶的部分係數的頻域特徵值進行了調整。
第二候選係數也可以是指次頻帶內的全部係數。在該情況下,第一候選係數和第二候選係數的數量不同。可理解的,編碼器113對每個次頻帶的全部係數的頻域特徵值進行了調整。
示例地,編碼器113根據第i個次頻帶的權重w(i),調整第i個次頻帶的K(i)個係數的頻域特徵值,第i個次頻帶的K(i)個係數的調整後頻域特徵值滿足公式(7)。
公式(7)
其中,j=1,2…K(i)。
表示第i個次頻帶的第j個係數對應的頻域特徵值,
表示第i個次頻帶的第j個係數對應的調整後頻域特徵值,K(i)表示第i個次頻帶的係數的數量,ai[j]表示第i個次頻帶的第j個係數的係數序號,w(i)表示第i個次頻帶的權重,j=0,…K(i)-1,i=1,2…T。
S6204、編碼器113根據至少兩個次頻帶內的第二候選係數的調整後頻域特徵值,以及至少兩個次頻帶內除第二候選係數之外的係數的頻域特徵值,確定第三數量個代表係數。
編碼器113對至少兩個次頻帶內的所有係數的頻域特徵值進行從大到小的排序,根據至少兩個次頻帶內的所有係數的頻域特徵值的從大到小的順序,從至少兩個次頻帶中最大頻域特徵值的係數開始,選取第三數量個代表係數。
可理解的,如果第二候選係數是次頻帶內的部分係數,至少兩個次頻帶內的所有係數的頻域特徵值包括第二候選係數的調整後頻域特徵值,以及至少兩個次頻帶內除第二候選係數之外的係數的頻域特徵值。編碼器113根據至少兩個次頻帶內的第二候選係數的調整後頻域特徵值,以及至少兩個次頻帶內除第二候選係數之外的係數的頻域特徵值,確定第三數量個代表係數。
如果第二候選係數是次頻帶內的全部係數,至少兩個次頻帶內的所有係數的頻域特徵值為第二候選係數的調整後頻域特徵值。編碼器113根據至少兩個次頻帶內的第二候選係數的調整後頻域特徵值,確定第三數量個代表係數。
第三數量可以是預先設定的,也可以是按照預定的規則生成的,例如編碼器113選取至少兩個次頻帶內的所有係數的頻域特徵值最大的20%個係數作為代表頻點。
S630、編碼器113根據第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器。
編碼器113利用三維音頻訊號的當前訊框的第三數量個代表係數與候選虛擬揚聲器集合中每個虛擬揚聲器的係數進行相關運算,選取第二數量個當前訊框的代表虛擬揚聲器。
由於編碼器從當前訊框的全部係數中選取部分係數作為代表係數,利用較少數量的代表係數代替當前訊框的全部係數從候選虛擬揚聲器集合中選取代表虛擬揚聲器,因此有效地降低了編碼器搜索虛擬揚聲器的計算複雜度,從而降低了對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕了編碼器的計算負擔。例如一訊框N階的HOA訊號有960·
個係數,本實施例可以選取前10%的係數參與虛擬揚聲器搜索,此時編碼複雜度相較於全係數參與虛擬揚聲器搜索的編碼複雜度降低了90%。
S640、編碼器113根據第二數量個當前訊框的代表虛擬揚聲器對當前訊框進行編碼,得到碼流。
編碼器113根據第二數量個當前訊框的代表虛擬揚聲器和當前訊框生成虛擬揚聲器訊號,以及對虛擬揚聲器訊號進行編碼得到碼流。生成碼流的具體方法可以參考現有技術,以及上述實施例中編碼單元360和S450的闡述。
編碼器113在生成碼流後,向目標設備120發送碼流,以便於目標設備120對源設備110發送的碼流進行解碼,重建三維音頻訊號,得到重建後三維音頻訊號。
由於當前訊框的係數的頻域特徵值特徵化了三維音頻訊號的聲場特性,編碼器依據當前訊框的係數的頻域特徵值選取當前訊框的具有代表性聲場成分的代表係數,利用代表係數從候選虛擬揚聲器集合中選取的當前訊框的代表虛擬揚聲器能夠充分地特徵化三維音頻訊號的聲場特性,從而進一步地提高了編碼器利用當前訊框的代表虛擬揚聲器對待編碼的三維音頻訊號進行壓縮編碼時生成虛擬揚聲器訊號的準確性,以便於提升對三維音頻訊號進行壓縮編碼的壓縮率,降低編碼器傳輸碼流所佔用的帶寬。
本申請的實施例中,編碼器113可以根據當前訊框的第三數量個代表係數對候選虛擬揚聲器集合中虛擬揚聲器的投票值,選擇第二數量個當前訊框的代表虛擬揚聲器。圖8所述的方法流程是對圖7中S630所包括的具體操作過程的闡述。如圖8所示,該方法包括以下步驟。
S6301、編碼器113根據當前訊框的第三數量個代表係數、候選虛擬揚聲器集合和投票輪數確定第一數量個虛擬揚聲器和第一數量個投票值。
投票輪數用於限定對虛擬揚聲器進行投票的次數。投票輪數為大於或等於1的整數,且投票輪數小於或等於候選虛擬揚聲器集合包含的虛擬揚聲器的數量,以及投票輪數小於或等於編碼器傳輸的虛擬揚聲器訊號的數量。例如,候選虛擬揚聲器集合包括第五數量個虛擬揚聲器,第五數量個虛擬揚聲器包括第一數量個虛擬揚聲器,第一數量小於或等於第五數量,投票輪數為大於或等於1的整數,且投票輪數小於或等於所述第五數量。虛擬揚聲器訊號也是指當前訊框對應的當前訊框的代表虛擬揚聲器的傳輸通道。通常情況下虛擬揚聲器訊號的數量小於或等於虛擬揚聲器的數量。
在一種可能的實現方式中,投票輪數可以是預先配置的,也可以是根據編碼器的計算能力確定的,比如,投票輪數是根據編碼器的編碼速率和/或編碼應用場景確定的。
在另一種可能的實現方式中,投票輪數是根據當前訊框中指向性聲源的數量確定的。例如,當聲場中指向性聲源數量為2時,設置投票輪數為2。
本申請實施例提供了確定第一數量個虛擬揚聲器和第一數量個投票值的三種可能實現方式,下面對三種方式分別進行詳述。
在第一種可能的實現方式中,投票輪數等於1,編碼器113採樣到多個代表係數後,獲取當前訊框的每個代表係數對候選虛擬揚聲器集合中所有虛擬揚聲器的投票值,累加相同編號的虛擬揚聲器的投票值,得到第一數量個虛擬揚聲器和第一數量個投票值。可理解的,候選虛擬揚聲器集合包括第一數量個虛擬揚聲器。第一數量等於候選虛擬揚聲器集合包括的虛擬揚聲器的數量。假設候選虛擬揚聲器集合包括第五數量個虛擬揚聲器,則第一數量等於第五數量。第一數量個投票值包括候選虛擬揚聲器集合中所有虛擬揚聲器的投票值。編碼器113可以將第一數量個投票值作為第一數量個虛擬揚聲器的當前訊框最終投票值,執行S6302,即編碼器113根據第一數量個投票值,從第一數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器。
其中,虛擬揚聲器與投票值一一對應,即一個虛擬揚聲器對應一個投票值。例如,第一數量個虛擬揚聲器包括第一虛擬揚聲器,第一數量個投票值包括第一虛擬揚聲器的投票值,第一虛擬揚聲器與第一虛擬揚聲器的投票值對應。第一虛擬揚聲器的投票值用於特徵化第一虛擬揚聲器的優先級。優先級也可以替換描述為傾向性,即第一虛擬揚聲器的投票值用於特徵化對當前訊框進行編碼時使用第一虛擬揚聲器的傾向性。可理解的,第一虛擬揚聲器的投票值越大,表示第一虛擬揚聲器的優先級越高或傾向性越高,相對於候選虛擬揚聲器集合中比第一虛擬揚聲器的投票值小的虛擬揚聲器,編碼器113更傾向選擇第一虛擬揚聲器對當前訊框進行編碼。
在第二種可能的實現方式中,與上述第一種可能的實現方式的區別在於,編碼器113獲取當前訊框的每個代表係數對候選虛擬揚聲器集合中所有虛擬揚聲器的投票值後,從每個代表係數對候選虛擬揚聲器集合中所有虛擬揚聲器的投票值中選取部分投票值,累加部分投票值對應的虛擬揚聲器中相同編號的虛擬揚聲器的投票值,得到第一數量個虛擬揚聲器和第一數量個投票值。可理解的,候選虛擬揚聲器集合包括第一數量個虛擬揚聲器。第一數量小於或等於候選虛擬揚聲器集合包括的虛擬揚聲器的數量。第一數量個投票值包括候選虛擬揚聲器集合包括的部分虛擬揚聲器的投票值,或者,第一數量個投票值包括候選虛擬揚聲器集合包括的全部虛擬揚聲器的投票值。
在第三種可能的實現方式中,與上述第二種可能的實現方式的區別在於,投票輪數為大於或等於2的整數,對於當前訊框的每個代表係數,編碼器113對候選虛擬揚聲器集合中所有虛擬揚聲器進行至少2輪次投票,每輪選擇最大投票值的虛擬揚聲器。對當前訊框的每個代表係數對所有虛擬揚聲器進行至少2輪次投票後,累加相同編號的虛擬揚聲器的投票值,得到第一數量個虛擬揚聲器和第一數量個投票值。
S6302、編碼器113根據第一數量個投票值,從第一數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器。
編碼器113根據第一數量個投票值,從第一數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器,而且,第二數量個當前訊框的代表虛擬揚聲器的投票值大於預設閾值。
編碼器113也可以根據第一數量個投票值,從第一數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器。例如,按照第一數量個投票值的從大到小的順序,從第一數量個投票值中確定第二數量個投票值,並將第一數量個虛擬揚聲器中與第二數量個投票值對應的虛擬揚聲器作為第二數量個當前訊框的代表虛擬揚聲器。
可選地,若第一數量個虛擬揚聲器中不同編號的虛擬揚聲器的投票值相同,且該不同編號的虛擬揚聲器的投票值大於預設閾值,則編碼器113可以將不同編號的虛擬揚聲器均作為當前訊框的代表虛擬揚聲器。
需要說明的是,第二數量小於第一數量。第一數量個虛擬揚聲器包括第二數量個當前訊框的代表虛擬揚聲器。第二數量可以是預設的,或者,第二數量可以是根據當前訊框的聲場中聲源的數量確定的,例如,第二數量可以直接等於當前訊框的聲場中聲源的數量,或者是按照預設算法對當前訊框的聲場中聲源的數量進行處理,將處理得到的數量作為第二數量;其中,預設算法可以根據需要進行設計,例如,預設算法可以是:第二數量=當前訊框的聲場中聲源的數量+1,或第二數量=當前訊框的聲場中聲源的數量-1等等。
由於編碼器利用較少數量的代表係數代替當前訊框的全部係數對候選虛擬揚聲器集合中每個虛擬揚聲器進行投票,依據投票值選取當前訊框的代表虛擬揚聲器。進而,編碼器利用當前訊框的代表虛擬揚聲器對待編碼的三維音頻訊號進行壓縮編碼,不僅有效地提升了對三維音頻訊號進行壓縮編碼的壓縮率,而且降低了編碼器搜索虛擬揚聲器的計算複雜度,從而降低了對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕了編碼器的計算負擔。
為了增加連續訊框之間的方位的連續性,克服了連續訊框選取的虛擬揚聲器的結果差異較大的問題,編碼器113根據在前訊框的代表虛擬揚聲器的在前訊框最終投票值調整候選虛擬揚聲器集合中虛擬揚聲器的當前訊框初始投票值,獲得虛擬揚聲器的當前訊框最終投票值。如圖9所示,為本申請實施例提供的另一種選擇虛擬揚聲器方法的流程示意圖。其中,圖9所述的方法流程是對圖8中S6302所包括的具體操作過程的闡述。
S6302a、編碼器113根據第一數量個當前訊框初始投票值,以及第六數量個在前訊框最終投票值,獲取第七數量個虛擬揚聲器與當前訊框對應的第七數量個當前訊框最終投票值。
編碼器113可以依據上述S6301所述的方法,根據三維音頻訊號的當前訊框、候選虛擬揚聲器集合和投票輪數確定第一數量個虛擬揚聲器和第一數量個投票值,進而,將第一數量個投票值作為第一數量個虛擬揚聲器的當前訊框初始投票值。
虛擬揚聲器與當前訊框初始投票值一一對應,即一個虛擬揚聲器對應一個當前訊框初始投票值。例如,第一數量個虛擬揚聲器包括第一虛擬揚聲器,第一數量個當前訊框初始投票值包括第一虛擬揚聲器的當前訊框初始投票值,第一虛擬揚聲器與第一虛擬揚聲器的當前訊框初始投票值對應。第一虛擬揚聲器的當前訊框初始投票值用於特徵化對當前訊框進行編碼時使用第一虛擬揚聲器的優先級。
在前訊框的代表虛擬揚聲器集合包含的第六數量個虛擬揚聲器與第六數量個在前訊框最終投票值一一對應。第六數量個虛擬揚聲器可以是編碼器113對三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器。
具體地,編碼器113根據第六數量個在前訊框最終投票值,更新第一數量個當前訊框初始投票值,即編碼器113計算第一數量個虛擬揚聲器與第六數量個虛擬揚聲器中相同編號的虛擬揚聲器的當前訊框初始投票值和在前訊框最終投票值之和,獲取第七數量個虛擬揚聲器與當前訊框對應的第七數量個當前訊框最終投票值。第七數量個虛擬揚聲器包括第一數量個虛擬揚聲器,且第七數量個虛擬揚聲器包括第六數量個虛擬揚聲器。
S6302b、編碼器113根據第七數量個當前訊框最終投票值,從第七數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器。
編碼器113根據第七數量個當前訊框最終投票值,從第七數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器,而且,第二數量個當前訊框的代表虛擬揚聲器的當前訊框最終投票值大於預設閾值。
編碼器113也可以根據第七數量個當前訊框最終投票值,從第七數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器。例如,按照第七數量個當前訊框最終投票值的從大到小的順序,從第七數量個當前訊框最終投票值中確定第二數量個當前訊框最終投票值,並將第七數量個虛擬揚聲器中與第二數量個當前訊框最終投票值關聯的虛擬揚聲器作為第二數量個當前訊框的代表虛擬揚聲器。
可選地,若第七數量個虛擬揚聲器中不同編號的虛擬揚聲器的投票值相同,且該不同編號的虛擬揚聲器的投票值大於預設閾值,則編碼器113可以將該不同編號的虛擬揚聲器均作為當前訊框的代表虛擬揚聲器。
需要說明的是,第二數量小於第七數量。第七數量個虛擬揚聲器包括第二數量個當前訊框的代表虛擬揚聲器。第二數量可以是預設的,或者,第二數量可以是根據當前訊框的聲場中聲源的數量確定的。
另外,編碼器113對當前訊框的下一訊框進行編碼前,如果編碼器113確定多工在前訊框的代表虛擬揚聲器對下一訊框進行編碼,編碼器113可以將第二數量個當前訊框的代表虛擬揚聲器作為第二數量個在前訊框的代表虛擬揚聲器,利用第二數量個在前訊框的代表虛擬揚聲器對當前訊框的下一訊框進行編碼。
在虛擬揚聲器搜索過程中,由於真實聲源的位置與虛擬揚聲器的位置不一定重合,會導致虛擬揚聲器不一定能夠與真實聲源形成一一對應關係,且由於在實際的複雜場景下,可能出現虛擬揚聲器無法特徵化聲場中獨立聲源情況,此時,訊框與訊框之間搜索到的虛擬揚聲器可能會發生頻繁跳變,這種頻繁跳變會明顯地影響聽音者的聽覺感受,導致解碼重建後三維音頻訊號中出現明顯的不連續和噪聲。本申請的實施例提供的選擇虛擬揚聲器的方法通過繼承在前訊框的代表虛擬揚聲器,即對於相同編號的虛擬揚聲器,用在前訊框最終投票值調整當前訊框初始投票值,使得編碼器更傾向於選擇在前訊框的代表虛擬揚聲器,從而降低訊框與訊框之間的虛擬揚聲器的頻繁跳變,增強了訊框之間的方位的連續性,提高了重建後三維音頻訊號的聲像的穩定性,確保重建後三維音頻訊號的音質。另外調整參數確保在前訊框最終投票值不會繼承太過久遠,避免算法無法適應聲源移動等聲場變化的場景。
此外,本申請實施例提供還一種選擇虛擬揚聲器的方法,編碼器可以先判斷是否可以多工在前訊框的代表虛擬揚聲器集合對當前訊框進行編碼,如果編碼器多工在前訊框的代表虛擬揚聲器集合對當前訊框進行編碼,從而,避免編碼器再執行虛擬揚聲器搜索過程,有效地降低了編碼器搜索虛擬揚聲器的計算複雜度,因此降低了對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕了編碼器的計算負擔。如果編碼器不能多工在前訊框的代表虛擬揚聲器集合對當前訊框進行編碼,編碼器再選取代表係數,利用當前訊框的代表係數對候選虛擬揚聲器集合中每個虛擬揚聲器進行投票,依據投票值選取當前訊框的代表虛擬揚聲器,來達到降低對三維音頻訊號進行壓縮編碼的計算複雜度以及減輕了編碼器的計算負擔的目的。圖10為本申請實施例提供的一種選擇虛擬揚聲器方法的流程示意圖。在編碼器113獲取三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值,即S610之前,如圖10所示,該方法包括以下步驟。
S650、編碼器113獲取三維音頻訊號的當前訊框與在前訊框的代表虛擬揚聲器集合的第一相關度。
在前訊框的代表虛擬揚聲器集合包含的第六數量個虛擬揚聲器,第六數量個虛擬揚聲器包含的虛擬揚聲器為對三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器。第一相關度用於特徵化對當前訊框進行編碼時多工在前訊框的代表虛擬揚聲器集合的優先級。優先級也可以替換描述為傾向性,即第一相關度用於確定對當前訊框進行編碼時是否多工在前訊框的代表虛擬揚聲器集合。可理解的,在前訊框的代表虛擬揚聲器集合的第一相關度越大,表示在前訊框的代表虛擬揚聲器集合的傾向性越高,編碼器113更傾向選擇在前訊框的代表虛擬揚聲器對當前訊框進行編碼。
S660、編碼器113判斷第一相關度是否滿足多工條件。
若第一相關度不滿足多工條件,表示編碼器113更傾向進行虛擬揚聲器搜索,根據當前訊框的代表虛擬揚聲器對當前進行編碼,執行S610,編碼器113獲取三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值。
可選地,編碼器113也可以在根據第四數量個係數的頻域特徵值,從第四數量個係數中選取第三數量個代表係數之後,將第三數量個代表係數中最大的代表係數作為獲取第一相關度的當前訊框的係數,則編碼器113獲取當前訊框的第三數量個代表係數中最大的代表係數與在前訊框的代表虛擬揚聲器集合的第一相關度,若第一相關度不滿足多工條件,執行S630,即編碼器113根據第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器。
若第一相關度滿足多工條件,表示編碼器113更傾向選擇在前訊框的代表虛擬揚聲器對當前訊框進行編碼,編碼器113執行S670和S680。
S670、編碼器113根據在前訊框的代表虛擬揚聲器集合和當前訊框生成虛擬揚聲器訊號。
S680、編碼器113對虛擬揚聲器訊號進行編碼,得到碼流。
本申請實施例提供的選擇虛擬揚聲器的方法,利用當前訊框的代表係數與在前訊框的代表虛擬揚聲器的相關度判斷是否進行虛擬揚聲器搜索,在確保當前訊框的代表虛擬揚聲器的相關度的選擇準確度情況下,有效地降低了編碼端的複雜度。
可以理解的是,為了實現上述實施例中的功能,編碼器包括了執行各個功能相應的硬體結構和/或軟體模組。本領域技術人員應該很容易意識到,結合本申請中所揭露的實施例描述的各示例的單元及方法步驟,本申請能夠以硬體或硬體和電腦軟體相結合的形式來實現。某個功能究竟以硬體還是電腦軟體驅動硬體的方式來執行,取決於技術方案的特定應用場景和設計約束條件。
上文中結合圖1至圖10,詳細描述了根據本實施例所提供的三維音頻訊號編碼方法,下面將結合圖11和圖12,描述根據本實施例所提供的三維音頻訊號編碼裝置和編碼器。
圖11為本實施例提供的可能的三維音頻訊號編碼裝置的結構示意圖。這些三維音頻訊號編碼裝置可以用於實現上述方法實施例中編碼三維音頻訊號的功能,因此也能實現上述方法實施例所具備的有益效果。在本實施例中,該三維音頻訊號編碼裝置可以是如圖1所示的編碼器113,或者如圖3所示的編碼器300,還可以是應用於終端設備或服務器的模組(如晶片)。
如圖11所示,三維音頻訊號編碼裝置1100包括通訊模組1110、係數選擇模組1120、虛擬揚聲器選擇模組1130、編碼模組1140和儲存模組1150。三維音頻訊號編碼裝置1100用於實現上述圖6至圖10中所示的方法實施例中編碼器113的功能。
通訊模組1110用於獲取三維音頻訊號的當前訊框。可選地,通訊模組1110也可以接收其他設備獲取的三維音頻訊號的當前訊框;或者從儲存模組1150獲取三維音頻訊號的當前訊框。三維音頻訊號的當前訊框為HOA訊號;係數的頻域特徵值是依據二維向量確定的,二維向量包括HOA訊號的HOA係數。
係數選擇模組1120用於獲取三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值。
係數選擇模組1120還用於根據第四數量個係數的頻域特徵值,從第四數量個係數中選取第三數量個代表係數,第三數量小於第四數量。
當三維音頻訊號編碼裝置1100用於實現圖6至圖10所示的方法實施例中編碼器113的功能時,係數選擇模組1120用於實現S610和S620的相關功能。
具體地,係數選擇模組1120具體用於根據第四數量個係數的頻域特徵值,從第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,得到第三數量個代表係數。其中,至少兩個次頻帶包含的係數的數量不同;或者,至少兩個次頻帶中每個次頻帶包含的係數的數量相同。
例如,係數選擇模組1120具體用於根據每個次頻帶中係數的頻域特徵值,從每個次頻帶中選取Z個代表係數,得到第三數量個代表係數,Z為正整數。
又如,當至少一個次頻帶包括至少兩個次頻帶時,係數選擇模組1120具體用於根據至少兩個次頻帶中每個次頻帶內的第一候選係數的頻域特徵值確定每個次頻帶的權重;根據每個次頻帶各自的權重分別調整每個次頻帶內的第二候選係數的頻域特徵值,得到每個次頻帶內的第二候選係數的調整後頻域特徵值,第一候選係數和第二候選係數為次頻帶內的部分係數;根據至少兩個次頻帶內的第二候選係數的調整後頻域特徵值,以及至少兩個次頻帶內除第二候選係數之外的係數的頻域特徵值,確定第三數量個代表係數。
虛擬揚聲器選擇模組1130用於根據第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器。
當三維音頻訊號編碼裝置1100用於實現圖6至圖10所示的方法實施例中編碼器113的功能時,虛擬揚聲器選擇模組1130用於實現S630的相關功能。
示例地,虛擬揚聲器選擇模組1130具體用於根據當前訊框的第三數量個代表係數、候選虛擬揚聲器集合和投票輪數確定第一數量個虛擬揚聲器和第一數量個投票值,虛擬揚聲器與投票值一一對應,第一數量個虛擬揚聲器包括第一虛擬揚聲器,第一數量個投票值包括第一虛擬揚聲器的投票值,第一虛擬揚聲器與第一虛擬揚聲器的投票值對應,第一虛擬揚聲器的投票值用於特徵化對當前訊框進行編碼時使用第一虛擬揚聲器的優先級,候選虛擬揚聲器集合包括第五數量個虛擬揚聲器,第五數量個虛擬揚聲器包括第一數量個虛擬揚聲器,投票輪數為大於或等於1的整數,且投票輪數小於或等於第五數量;根據第一數量個投票值,從第一數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器,第二數量小於第一數量。
可選地,虛擬揚聲器選擇模組1130還用於根據第一數量個投票值,以及第六數量個在前訊框最終投票值,獲取第七數量個虛擬揚聲器與當前訊框對應的第七數量個當前訊框最終投票值,第七數量個虛擬揚聲器包括第一數量個虛擬揚聲器,且第七數量個虛擬揚聲器包括第六數量個虛擬揚聲器,第六數量個虛擬揚聲器包含的虛擬揚聲器為對三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器;根據第七數量個當前訊框最終投票值,從第七數量個虛擬揚聲器中選取第二數量個當前訊框的代表虛擬揚聲器,第二數量小於第七數量。
可選地,虛擬揚聲器選擇模組1130還用於獲取當前訊框與在前訊框的代表虛擬揚聲器集合的第一相關度,在前訊框的代表虛擬揚聲器集合包括第六數量個虛擬揚聲器,第六數量個虛擬揚聲器包含的虛擬揚聲器為對三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器,第一相關度用於確定對當前訊框進行編碼時是否多工在前訊框的代表虛擬揚聲器集合;若第一相關度不滿足多工條件,獲取三維音頻訊號的當前訊框的第四數量個係數,以及第四數量個係數的頻域特徵值。
編碼模組1140用於根據第二數量個當前訊框的代表虛擬揚聲器對當前訊框進行編碼,得到碼流。
當三維音頻訊號編碼裝置1100用於實現圖6至圖10所示的方法實施例中編碼器113的功能時,編碼模組1140用於實現S640的相關功能。
示例地,編碼模組1140具體用於根據第二數量個當前訊框的代表虛擬揚聲器和當前訊框生成虛擬揚聲器訊號;對虛擬揚聲器訊號進行編碼得到碼流。
儲存模組1150用於儲存與三維音頻訊號相關的係數,候選虛擬揚聲器集合,在前訊框的代表虛擬揚聲器集合,以及選取的係數和虛擬揚聲器等,以便於編碼模組1140對當前訊框進行編碼得到碼流,並將碼流傳輸至解碼器。
應理解的是,本申請實施例的三維音頻訊號編碼裝置1100可以通過專用集成電路(application-specific integrated circuit,ASIC)實現,或可程式化邏輯裝置可程式化裝置(programmable logic device,PLD)實現,上述PLD可以是複雜程式邏輯裝置裝置(complex programmable logical device,CPLD),可程式化邏輯陣列可程式化(field-programmable gate array,FPGA),通用陣列邏輯(generic array logic,GAL)或其任意組合。也可以通過軟體實現圖6至圖10所示的三維音頻訊號編碼方法時,三維音頻訊號編碼裝置1100及其各個模組也可以為軟體模組。
有關上述通訊模組1110、係數選擇模組1120、虛擬揚聲器選擇模組1130、編碼模組1140和儲存模組1150更詳細的描述可以參考圖6至圖10所示的方法實施例中相關描述直接得到,這裡不加贅述。
圖12為本實施例提供的一種編碼器1200的結構示意圖。如圖12所示,編碼器1200包括處理器1210、匯流排1220、儲存器1230和通訊介面1240。
應理解,在本實施例中,處理器1210可以是中央處理器(central processing unit,CPU),該處理器1210還可以是其他通用處理器、數位訊號處理器(digital signal processing,DSP)、ASIC、FPGA或者其他可程式化邏輯裝置可程式化裝置、分立門或者晶體管邏輯裝置裝置、分立硬體組件等。通用處理器可以是微處理器或者是任何常規的處理器等。
處理器還可以是圖形處理器(graphics processing unit,GPU)、神經網路處理器(neural network processing unit,NPU)、微處理器或一個或多個用於控制本申請方案程式執行的集成電路。
通訊介面1240用於實現編碼器1200與外部設備或裝置的通訊。在本實施例中,通訊介面1240用於接收三維音頻訊號。
匯流排1220可以包括一通路,用於在上述組件(如處理器1210和儲存器1230)之間傳送訊息。匯流排1220除包括資料匯流排之外,還可以包括電源匯流排、控制匯流排和狀態訊號匯流排等。但是為了清楚說明起見,在圖中將各種匯流排都標為匯流排1220。
作為一個示例,編碼器1200可以包括多個處理器。處理器可以是一個多核心(multi-CPU)處理器。這裡的處理器可以指一個或多個設備、電路、和/或用於處理資料(例如電腦程式指令)的計算單元。處理器1210可以調用儲存器1230儲存的與三維音頻訊號相關的係數,候選虛擬揚聲器集合,在前訊框的代表虛擬揚聲器集合,以及選取的係數和虛擬揚聲器等。
值得說明的是,圖12中僅以編碼器1200包括1個處理器1210和1個儲存器1230為例,此處,處理器1210和儲存器1230分別用於指示一類裝置或設備,具體實施例中,可以根據業務需求確定每種類型的裝置或設備的數量。
儲存器1230可以對應上述方法實施例中用於儲存與三維音頻訊號相關的係數,候選虛擬揚聲器集合,在前訊框的代表虛擬揚聲器集合,以及選取的係數和虛擬揚聲器等訊息的儲存介質,例如,磁碟,如機械硬碟或固態硬碟。
上述編碼器1200可以是一個通用設備或者是一個專用設備。例如,編碼器1200可以是基於X86、ARM的服務器,也可以為其他的專用服務器,如策略控制和計費(policy control and charging,PCC)服務器等。本申請實施例不限定編碼器1200的類型。
應理解,根據本實施例的編碼器1200可對應於本實施例中的三維音頻訊號編碼裝置1100,並可以對應於執行根據圖6至圖10中任一方法中的相應主體,並且三維音頻訊號編碼裝置1100中的各個模組的上述和其它操作和/或功能分別為了實現圖6至圖10中的各個方法的相應流程,為了簡潔,在此不再贅述。
本實施例中的方法步驟可以通過硬體的方式來實現,也可以由處理器執行軟體指令的方式來實現。軟體指令可以由相應的軟體模組組成,軟體模組可以被存放於隨機存取儲存器(random access memory,RAM)、閃存、只讀儲存器(read-only memory,ROM)、可程式化只讀儲存器(programmable ROM,PROM)、可擦除可程式化只讀儲存器(erasable PROM,EPROM)、電可擦除可程式化只讀儲存器(electrically EPROM,EEPROM)、寄存器、硬碟、移動硬碟、CD-ROM或者本領域熟知的任何其它形式的儲存介質中。一種示例性的儲存介質耦合至處理器,從而使處理器能夠從該儲存介質讀取訊息,且可向該儲存介質寫入訊息。當然,儲存介質也可以是處理器的組成部分。處理器和儲存介質可以位於ASIC中。另外,該ASIC可以位於網路設備或終端設備中。當然,處理器和儲存介質也可以作為分立組件存在於網路設備或終端設備中。
在上述實施例中,可以全部或部分地通過軟體、硬體、韌體或者其任意組合來實現。當使用軟體實現時,可以全部或部分地以電腦程式產品的形式實現。該電腦程式產品包括一個或多個電腦程式或指令。在電腦上加載和執行該電腦程式或指令時,全部或部分地執行本申請實施例所述的流程或功能。該電腦可以是通用電腦、專用電腦、電腦網路、網路設備、用戶設備或者其它可程式化裝置。該電腦程式或指令可以儲存在電腦可讀儲存介質中,或者從一個電腦可讀儲存介質向另一個電腦可讀儲存介質傳輸,例如,該電腦程式或指令可以從一個網站站點、電腦、服務器或資料中心通過有線或無線方式向另一個網站站點、電腦、服務器或資料中心進行傳輸。該電腦可讀儲存介質可以是電腦能夠存取的任何可用介質或者是集成一個或多個可用介質的服務器、資料中心等資料儲存設備。該可用介質可以是磁性介質,例如,軟碟、硬碟、磁帶;也可以是光介質,例如,數位視頻光碟(digital video disc,DVD);還可以是半導體介質,例如,固態硬碟(solid state drive,SSD)。
以上所述,僅為本申請的具體實施方式,但本申請的保護範圍並不局限於此,任何熟悉本技術領域的技術人員在本申請揭露的技術範圍內,可輕易想到各種等效的修改或替換,這些修改或替換都應涵蓋在本申請的保護範圍之內。因此,本申請的保護範圍應以發明申請專利範圍的保護範圍為準。
100:音頻編解碼系統
110:源設備
111:音頻獲取器
112:預處理器
113:編碼器
1131:空間編碼器
1132:核心編碼器
114:通訊介面
120:目標設備
121:播放器
122:後處理器
123:解碼器
1231:核心解碼器
1232:空間解碼器
124:通訊介面
130:通訊頻道
300:編碼器
310:虛擬揚聲器配置單元
320:虛擬揚聲器集合生成單元
330:編碼分析單元
340:虛擬揚聲器選擇單元
350:虛擬揚聲器訊號生成單元
360:編碼單元
S410~S470:步驟
S510~S550:步驟
S610~S640:步驟
S6201~S6204:步驟
S6301、S6302、S6302a、S6302b:步驟
S650~S680:步驟
1100:三維音頻訊號編碼裝置
1110:通訊模組
1120:係數選擇模組
1130:虛擬揚聲器選擇模組
1140:編碼模組
1150:儲存模組
1200:編碼器
1210:處理器
1220:匯流排
1230:儲存器
1240:通訊介面
圖1為本申請實施例提供的一種音頻編解碼系統的結構示意圖;
圖2A為本申請實施例提供的一種音頻編解碼系統的場景示意圖;
圖2B為本申請實施例提供的一種音頻編解碼系統的場景示意圖;
圖3為本申請實施例提供的一種編碼器的結構示意圖;
圖4為本申請實施例提供的一種三維音頻訊號編解碼方法的流程示意圖;
圖5為本申請實施例提供的一種選擇虛擬揚聲器方法的流程示意圖;
圖6為本申請實施例提供的一種三維音頻訊號編碼方法的流程示意圖;
圖7為本申請實施例提供的一種選擇三維音頻訊號的代表係數方法的流程示意圖;
圖8為本申請實施例提供的一種選擇虛擬揚聲器方法的流程示意圖;
圖9為本申請實施例提供的另一種選擇虛擬揚聲器方法的流程示意圖;
圖10為本申請實施例提供的另一種選擇虛擬揚聲器方法的流程示意圖;
圖11為本申請提供的一種三維音頻訊號編碼裝置的結構示意圖;
圖12為本申請提供的一種編碼器的結構示意圖。
110:源裝置
120:目標裝置
S410,S420,S430,S440,S450,S460,S470:步驟
Claims (21)
- 一種三維音頻訊號編碼方法,其中,包括:獲取三維音頻訊號的當前訊框的第四數量個係數,以及該第四數量個係數的頻域特徵值;根據該第四數量個係數的頻域特徵值,從該第四數量個係數中選取第三數量個代表係數,該第三數量小於該第四數量;根據該第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器;根據該第二數量個當前訊框的代表虛擬揚聲器對該當前訊框進行編碼,得到碼流。
- 根據請求項1所述的方法,其中,該根據該第四數量個係數的頻域特徵值,從該第四數量個係數中選取第三數量個代表係數包括:根據該第四數量個係數的頻域特徵值,從該第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到該第三數量個代表係數。
- 根據請求項2所述的方法,其中,該根據該第四數量個係數的頻域特徵值,從該第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到該第三數量個代表係數包括:根據該至少一個次頻帶中每個次頻帶中係數的頻域特徵值,從該每個次頻帶中分別選取Z個代表係數,以得到該第三數量個代表係數,Z為正整數。
- 根據請求項2所述的方法,其中,當該至少一個次 頻帶包括至少兩個次頻帶時,該根據該第四數量個係數的頻域特徵值,從該第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到該第三數量個代表係數包括:根據該至少兩個次頻帶中每個次頻帶內的第一候選係數的頻域特徵值確定該每個次頻帶各自的權重;根據該每個次頻帶各自的權重分別調整該每個次頻帶內的第二候選係數的頻域特徵值,得到該每個次頻帶內的第二候選係數的調整後頻域特徵值,該第一候選係數和該第二候選係數為該次頻帶內的部分係數;根據該至少兩個次頻帶內的第二候選係數的調整後頻域特徵值,以及該至少兩個次頻帶內除第二候選係數之外的係數的頻域特徵值,確定該第三數量個代表係數。
- 根據請求項1-4中任一項所述的方法,其中,該根據該第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器包括:根據該當前訊框的第三數量個代表係數、該候選虛擬揚聲器集合和投票輪數確定第一數量個虛擬揚聲器和第一數量個投票值,該虛擬揚聲器與該投票值一一對應,該第一數量個虛擬揚聲器包括第一虛擬揚聲器,該第一虛擬揚聲器的投票值用於特徵化該第一虛擬揚聲器的優先級,該候選虛擬揚聲器集合包括第五數量個虛擬揚聲器,該第五數量個虛擬揚聲器包括該第一數量個虛擬揚聲器,該第一數量小於或等於該第五數量,該投票輪數為大於或等於1的整數,且該投票輪數小於或等於該第五數量;根據該第一數量個投票值,從該第一數量個虛擬揚聲器中選取 該第二數量個當前訊框的代表虛擬揚聲器,該第二數量小於該第一數量。
- 根據請求項5所述的方法,其中,該根據該第一數量個投票值,從該第一數量個虛擬揚聲器中選取該第二數量個當前訊框的代表虛擬揚聲器包括:根據該第一數量個投票值,以及第六數量個在前訊框最終投票值,獲取第七數量個虛擬揚聲器與該當前訊框對應的第七數量個當前訊框最終投票值,該第七數量個虛擬揚聲器包括該第一數量個虛擬揚聲器,且該第七數量個虛擬揚聲器包括該第六數量個虛擬揚聲器,在前訊框的代表虛擬揚聲器集合包含的第六數量個虛擬揚聲器與該第六數量個在前訊框最終投票值一一對應,該第六數量個虛擬揚聲器是用於對該三維音頻訊號的在前訊框進行編碼時使用的虛擬揚聲器;根據該第七數量個當前訊框最終投票值,從該第七數量個虛擬揚聲器中選取該第二數量個當前訊框的代表虛擬揚聲器,該第二數量小於該第七數量。
- 根據請求項1-4中任一項所述的方法,其中,該方法還包括:獲取該當前訊框與在前訊框的代表虛擬揚聲器集合的第一相關度,該在前訊框的代表虛擬揚聲器集合包括第六數量個虛擬揚聲器,該第六數量個虛擬揚聲器包含的虛擬揚聲器為對該三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器,該第一相關度用於確定對該當前訊框進行編碼時是否多工該在前訊框的代表虛擬揚聲器集合; 若該第一相關度不滿足多工條件,獲取該三維音頻訊號的當前訊框的第四數量個係數,以及該第四數量個係數的頻域特徵值。
- 根據請求項1-4中任一項所述的方法,其中,該三維音頻訊號的當前訊框為高階立體混響(higher order ambisonics,HOA)訊號;該係數的頻域特徵值是依據HOA訊號的係數確定的。
- 一種三維音頻訊號編碼裝置,包括:係數選擇模組,用於獲取三維音頻訊號的當前訊框的第四數量個係數,以及該第四數量個係數的頻域特徵值;該係數選擇模組,還用於根據該第四數量個係數的頻域特徵值,從該第四數量個係數中選取第三數量個代表係數,該第三數量小於該第四數量;虛擬揚聲器選擇模組,用於根據該第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器;編碼模組,用於根據該第二數量個當前訊框的代表虛擬揚聲器對該當前訊框進行編碼,得到碼流。
- 根據請求項9所述的裝置,其中,該係數選擇模組根據該第四數量個係數的頻域特徵值,從該第四數量個係數中選取第三數量個代表係數時,具體用於:根據該第四數量個係數的頻域特徵值,從該第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到該第三數量個代表係數。
- 根據請求項10所述的裝置,其中,該係數選擇模組根據該第四數量個係數的頻域特徵值,從該第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到該第三 數量個代表係數時,具體用於:根據該至少一個次頻帶中每個次頻帶中係數的頻域特徵值,從該每個次頻帶中分別選取Z個代表係數,以得到該第三數量個代表係數,Z為正整數。
- 根據請求項10所述的裝置,其中,當該至少一個次頻帶包括至少兩個次頻帶時,該係數選擇模組根據該第四數量個係數的頻域特徵值,從該第四數量個係數指示的頻譜範圍包含的至少一個次頻帶選取代表係數,以得到該第三數量個代表係數時,具體用於:根據該至少兩個次頻帶中每個次頻帶內的第一候選係數的頻域特徵值確定該每個次頻帶各自的權重;根據該每個次頻帶各自的權重分別調整該每個次頻帶內的第二候選係數的頻域特徵值,得到該每個次頻帶內的第二候選係數的調整後頻域特徵值,該第一候選係數和該第二候選係數為該次頻帶內的部分係數;根據該至少兩個次頻帶內的第二候選係數的調整後頻域特徵值,以及該至少兩個次頻帶內除第二候選係數之外的係數的頻域特徵值,確定該第三數量個代表係數。
- 根據請求項9-12中任一項所述的裝置,其中,該虛擬揚聲器選擇模組根據該第三數量個代表係數從候選虛擬揚聲器集合中選取第二數量個當前訊框的代表虛擬揚聲器時,具體用於:根據該當前訊框的第三數量個代表係數、該候選虛擬揚聲器集合和投票輪數確定第一數量個虛擬揚聲器和第一數量個投票值,該虛擬揚聲器與該投票值一一對應,該第一數量個虛擬揚聲器包 括第一虛擬揚聲器,該第一虛擬揚聲器的投票值用於特徵化該第一虛擬揚聲器的優先級,該候選虛擬揚聲器集合包括第五數量個虛擬揚聲器,該第五數量個虛擬揚聲器包括該第一數量個虛擬揚聲器,該第一數量小於或等於該第五數量,該投票輪數為大於或等於1的整數,且該投票輪數小於或等於該第五數量;根據該第一數量個投票值,從該第一數量個虛擬揚聲器中選取該第二數量個當前訊框的代表虛擬揚聲器,該第二數量小於該第一數量。
- 根據請求項13所述的裝置,其中,該虛擬揚聲器選擇模組根據該第一數量個投票值,從該第一數量個虛擬揚聲器中選取該第二數量個當前訊框的代表虛擬揚聲器時,具體用於:根據該第一數量個投票值,以及第六數量個在前訊框最終投票值,獲取第七數量個虛擬揚聲器與該當前訊框對應的第七數量個當前訊框最終投票值,該第七數量個虛擬揚聲器包括該第一數量個虛擬揚聲器,且該第七數量個虛擬揚聲器包括該第六數量個虛擬揚聲器,在前訊框的代表虛擬揚聲器集合包含的第六數量個虛擬揚聲器與該第六數量個在前訊框最終投票值一一對應,該第六數量個虛擬揚聲器是用於對該三維音頻訊號的在前訊框進行編碼時使用的虛擬揚聲器;根據該第七數量個當前訊框最終投票值,從該第七數量個虛擬揚聲器中選取該第二數量個當前訊框的代表虛擬揚聲器,該第二數量小於該第七數量。
- 根據請求項9-12中任一項所述的裝置,其中,該虛擬揚聲器選擇模組,還用於: 獲取該當前訊框與在前訊框的代表虛擬揚聲器集合的第一相關度,該在前訊框的代表虛擬揚聲器集合包括第六數量個虛擬揚聲器,該第六數量個虛擬揚聲器包含的虛擬揚聲器為對該三維音頻訊號的在前訊框進行編碼所使用的在前訊框的代表虛擬揚聲器,該第一相關度用於確定對該當前訊框進行編碼時是否多工該在前訊框的代表虛擬揚聲器集合;若該第一相關度不滿足多工條件,獲取該三維音頻訊號的當前訊框的第四數量個係數,以及該第四數量個係數的頻域特徵值。
- 根據請求項9-12中任一項所述的裝置,其中,該三維音頻訊號的當前訊框為高階立體混響(higher order ambisonics,HOA)訊號;該係數的頻域特徵值是依據HOA訊號的係數確定的。
- 一種編碼器,其中,該編碼器包括至少一個處理器和儲存器,其中,該儲存器用於儲存電腦程式,使得該電腦程式被該至少一個處理器執行時實現如請求項1-8中任一項所述的三維音頻訊號編碼方法。
- 一種用於處理三維音頻訊號的系統,其中,該系統包括如請求項17所述的編碼器,以及解碼器,該編碼器用於執行上述請求項1-8中任一項所述的方法的操作步驟,該解碼器用於解碼該編碼器生成的碼流。
- 一種電腦程式,其中,該電腦程式被執行時實現如請求項1-8中任一項所述的三維音頻訊號編碼方法。
- 一種電腦可讀儲存介質,包括電腦軟體指令;當電腦軟體指令在編碼器中運行時,使得該編碼器執行如請求項1-8中任一項所述的三維音頻訊號編碼方法。
- 一種電腦可讀儲存介質,其中,包括如請求項1-8中任一項所述的三維音頻訊號編碼方法所獲得的碼流。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110535832.3 | 2021-05-17 | ||
CN202110535832.3A CN115376527A (zh) | 2021-05-17 | 2021-05-17 | 三维音频信号编码方法、装置和编码器 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202247148A TW202247148A (zh) | 2022-12-01 |
TWI834163B true TWI834163B (zh) | 2024-03-01 |
Family
ID=84059746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111117469A TWI834163B (zh) | 2021-05-17 | 2022-05-10 | 三維音頻訊號編碼方法、裝置和編碼器 |
Country Status (9)
Country | Link |
---|---|
US (1) | US20240087580A1 (zh) |
EP (1) | EP4322158A1 (zh) |
JP (1) | JP2024520944A (zh) |
KR (1) | KR20240001226A (zh) |
CN (1) | CN115376527A (zh) |
BR (1) | BR112023023662A2 (zh) |
CA (1) | CA3220588A1 (zh) |
TW (1) | TWI834163B (zh) |
WO (1) | WO2022242480A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118136027A (zh) * | 2022-12-02 | 2024-06-04 | 华为技术有限公司 | 场景音频编码方法及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106463130A (zh) * | 2014-07-02 | 2017-02-22 | 杜比国际公司 | 用于对hoa信号表示的子带内的主导方向信号的方向进行编码/解码的方法和装置 |
CN106663432A (zh) * | 2014-07-02 | 2017-05-10 | 杜比国际公司 | 对压缩的hoa表示解码的方法和装置以及对压缩的hoa表示编码的方法和装置 |
TWI612517B (zh) * | 2014-09-26 | 2018-01-21 | 高通公司 | 較高階立體混響聲(hoa)架構中於預測及非預測量化技術間切換 |
US20190348051A1 (en) * | 2014-03-21 | 2019-11-14 | Dolby Laboratories Licensing Corporation | Methods and apparatus for decoding a compressed hoa signal |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2469741A1 (en) * | 2010-12-21 | 2012-06-27 | Thomson Licensing | Method and apparatus for encoding and decoding successive frames of an ambisonics representation of a 2- or 3-dimensional sound field |
US9883312B2 (en) * | 2013-05-29 | 2018-01-30 | Qualcomm Incorporated | Transformed higher order ambisonics audio data |
EP2934025A1 (en) * | 2014-04-15 | 2015-10-21 | Thomson Licensing | Method and device for applying dynamic range compression to a higher order ambisonics signal |
EP3312833A1 (en) * | 2016-10-19 | 2018-04-25 | Holosbase GmbH | Decoding and encoding apparatus and corresponding methods |
IN201627036613A (zh) * | 2016-10-26 | 2016-11-18 | Qualcomm Inc | |
US11395083B2 (en) * | 2018-02-01 | 2022-07-19 | Qualcomm Incorporated | Scalable unified audio renderer |
CN114582356A (zh) * | 2020-11-30 | 2022-06-03 | 华为技术有限公司 | 一种音频编解码方法和装置 |
-
2021
- 2021-05-17 CN CN202110535832.3A patent/CN115376527A/zh active Pending
-
2022
- 2022-05-07 KR KR1020237040819A patent/KR20240001226A/ko unknown
- 2022-05-07 BR BR112023023662A patent/BR112023023662A2/pt unknown
- 2022-05-07 EP EP22803804.8A patent/EP4322158A1/en active Pending
- 2022-05-07 JP JP2023571383A patent/JP2024520944A/ja active Pending
- 2022-05-07 CA CA3220588A patent/CA3220588A1/en active Pending
- 2022-05-07 WO PCT/CN2022/091558 patent/WO2022242480A1/zh active Application Filing
- 2022-05-10 TW TW111117469A patent/TWI834163B/zh active
-
2023
- 2023-11-16 US US18/511,191 patent/US20240087580A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190348051A1 (en) * | 2014-03-21 | 2019-11-14 | Dolby Laboratories Licensing Corporation | Methods and apparatus for decoding a compressed hoa signal |
CN106463130A (zh) * | 2014-07-02 | 2017-02-22 | 杜比国际公司 | 用于对hoa信号表示的子带内的主导方向信号的方向进行编码/解码的方法和装置 |
CN106663432A (zh) * | 2014-07-02 | 2017-05-10 | 杜比国际公司 | 对压缩的hoa表示解码的方法和装置以及对压缩的hoa表示编码的方法和装置 |
TWI612517B (zh) * | 2014-09-26 | 2018-01-21 | 高通公司 | 較高階立體混響聲(hoa)架構中於預測及非預測量化技術間切換 |
Also Published As
Publication number | Publication date |
---|---|
CA3220588A1 (en) | 2022-11-24 |
CN115376527A (zh) | 2022-11-22 |
TW202247148A (zh) | 2022-12-01 |
US20240087580A1 (en) | 2024-03-14 |
KR20240001226A (ko) | 2024-01-03 |
BR112023023662A2 (pt) | 2024-01-30 |
WO2022242480A1 (zh) | 2022-11-24 |
EP4322158A1 (en) | 2024-02-14 |
JP2024520944A (ja) | 2024-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5081838B2 (ja) | オーディオ符号化及び復号 | |
US20230298600A1 (en) | Audio encoding and decoding method and apparatus | |
US20240087580A1 (en) | Three-dimensional audio signal coding method and apparatus, and encoder | |
US20240119950A1 (en) | Method and apparatus for encoding three-dimensional audio signal, encoder, and system | |
WO2022242479A1 (zh) | 三维音频信号编码方法、装置和编码器 | |
WO2022242481A1 (zh) | 三维音频信号编码方法、装置和编码器 | |
WO2022242483A1 (zh) | 三维音频信号编码方法、装置和编码器 | |
TWI844036B (zh) | 三維音訊訊號編碼方法、裝置、編碼器、系統、電腦程式和電腦可讀儲存介質 | |
WO2024146408A1 (zh) | 场景音频解码方法及电子设备 | |
WO2022253187A1 (zh) | 一种三维音频信号的处理方法和装置 | |
WO2022257824A1 (zh) | 一种三维音频信号的处理方法和装置 | |
WO2022237851A1 (zh) | 一种音频编码、解码方法及装置 | |
WO2023173941A1 (zh) | 一种多声道信号的编解码方法和编解码设备以及终端设备 |