(19)
(11) EP 3 335 216 B1

(12) EUROPEAN PATENT SPECIFICATION

(45) Mention of the grant of the patent:
26.01.2022 Bulletin 2022/04

(21) Application number: 16784452.1

(22) Date of filing: 14.10.2016
(51) International Patent Classification (IPC): 
G10L 19/02(2013.01)
G10L 19/008(2013.01)
(52) Cooperative Patent Classification (CPC):
G10L 19/008; G10L 19/02
(86) International application number:
PCT/EP2016/074742
(87) International publication number:
WO 2017/064264 (20.04.2017 Gazette 2017/16)

(54)

METHOD AND APPARATUS FOR SINUSOIDAL ENCODING AND DECODING

VERFAHREN UND VORRICHTUNG ZUR SINUSCODIERUNG UND -DECODIERUNG

PROCÉDÉ ET APPAREIL DE CODAGE ET DE DÉCODAGE SINUSOÏDAL


(84) Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(30) Priority: 15.10.2015 WO PCT/EP2015/189865

(43) Date of publication of application:
20.06.2018 Bulletin 2018/25

(73) Proprietors:
  • Huawei Technologies Co., Ltd.
    Longgang District Shenzhen, Guangdong 518129 (CN)
  • Zylia SP. Z O.O.
    61-614 Poznan (PL)

(72) Inventors:
  • ZERNICKI, Tomasz
    61-614 Poznan (PL)
  • JANUSZKIEWICZ, Lukasz
    61-614 Poznan (PL)
  • SETIAWAN, Panji
    80992 Munich (DE)

(74) Representative: Gill Jennings & Every LLP 
The Broadgate Tower 20 Primrose Street
London EC2A 2ES
London EC2A 2ES (GB)


(56) References cited: : 
AU-A1- 2011 205 144
US-A1- 2005 078 832
US-A1- 2007 238 415
US-A1- 2003 083 886
US-A1- 2005 174 269
   
  • TOMASZ ZERNICKI ET AL: "Updated MPEG-H 3D Audio Phase 2 Core Experiment Proposal on tonal component coding", 112. MPEG MEETING; 22-6-2015 - 26-6-2015; WARSAW; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11),, no. m36538, 18 June 2015 (2015-06-18), XP030064906,
  • ZERNICKI TOMASZ ET AL: "Application of Sinusoidal Coding for Enhanced Bandwidth Extension in MPEG-H USAC", AES CONVENTION 138; MAY, AES, 60 EAST 42ND STREET, ROOM 2520 NEW YORK 10165-2520, USA, 6 May 2015 (2015-05-06), pages 300-309, XP040670868,
  • Sascha Disch ET AL: "CHEAP BEEPS -EFFICIENT SYNTHESIS OF SINUSOIDS AND SWEEPS IN THE MDCT DOMAIN", Proceedings of ICASSP 2013, 26 May 2013 (2013-05-26), XP055091657, Retrieved from the Internet: URL:http://ieeexplore.ieee.org/ielx7/66195 49/6637585/06637701.pdf?tp=&arnumber=66377 01&isnumber=6637585 [retrieved on 2013-12-04]
  • PURNHAGEN H: "Advances in parametric audio coding", APPLICATIONS OF SIGNAL PROCESSING TO AUDIO AND ACOUSTICS, 1999 IEEE WO RKSHOP ON NEW PALTZ, NY, USA 17-20 OCT. 1999, PISCATAWAY, NJ, USA,IEEE, US, 17 October 1999 (1999-10-17), pages 31-34, XP010365061, DOI: 10.1109/ASPAA.1999.810842 ISBN: 978-0-7803-5612-2
   
Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


Description


[0001] This application relates to the field of audio coding, and in particular to the field of sinusoidal coding of audio signals.

BACKGROUND



[0002] For the MPEG-H 3D Audio Core Coder a High Frequency Sinusoidal Coding (HFSC) enhancement has been proposed. The respective HFSC tool was already presented in 111th MPEG meeting in Geneva [1] and in 112th meeting in Warsaw [2].

[0003] TOMASZ ZERNICKI et al.: "Updated MPEG-H 3D Audio Phase 2 Core Experiment Proposal on tonal component coding", describes high frequency sinusoidal coding. Segments are represented by a limited set of quantized DCT coefficients, including the obligatory DC coefficient and a variable number of AC coefficients, whose indices and values are transmitted using 8th order Golomb codes. Huffman codes are described as resulting in about 10% better coding efficiency, but requiring more memory for Huffman tables storage. AU 2011205144 A1 describes a scalable compressed audio bit stream and codec using a hierarchical filterbank and multichannel joint coding, including a primary channel and a secondary channel for each tonal component.

[0004] US 2005/078832 A1 describes parametric audio coding, where common components in various signal channels can be represented by a single, common frequency and the respective amplitudes and phases of the respective components in the respective channels may differ. PURNHAGEN H: "Advances in parametric audio coding" describes extended sinusoidal models for parametric audio coding, and teaches taking source and perception models utilized in a parametric coder into account as a "joint model".

[0005] US 2007/238415 A1 describes bandwidth extension to allow information to be encoded and decoded using a fractal self similarity model or an accurate spectral replacement model, where these tonal components are analyzed to determine if these fit into a harmonic structure.

SUMMARY



[0006] It is an object of the present invention to provide improvements for, for example, the MPEG-H 3D Audio Codec, and in particular for the respective HFSC tool. However, embodiments of the present invention may also be used in and for other audio codecs using sinusoidal coding. The term "codec" refers to or defines the functionalities of the audio encoder/encoding and audio decoder/decoding to implement the respective audio codec. More specifically, the present invention provides encoders, encoding methods, decoders and decoding methods as set out in the attached claims.

[0007] Embodiments of the invention can be implemented in Hardware or in Software or in any combination thereof.

SHORT DESCRIPTION OF THE FIGURES



[0008] 

Figure 1 shows an embodiment of the invention, in particular the general location of the proposed tool within the MPEG-H 3D Audio Core Encoder.

Figure 2 shows partitioning of sinusoidal trajectories into segments and their relation to GOS according to an embodiment of the invention.

Figure 3 shows a scheme of linking trajectory segments according to an embodiment of the invention.

Figure 4a shows an illustration of independent encoding for each channel according to an example useful for understanding the invention which was originally filed but which does not represent an embodiment of the presently claimed invention.

Figure 4b shows illustration of sending additional information related to trajectory panning according to an embodiment of the invention.

Fig. 5 shows the motivation for embodiments of the present invention.

Fig. 6 shows exemplary MPEG-H 3D Audio artifacts above fSBR.

Fig. 7 shows a comparison for 20kbps (∼2kbps of HESC), fSBR=4kHz, between "Original", "MPEG 3DA" and "MPEG 3DA+ HESC".

Figure 8 shows a flow-chart of an exemplary decoding method.

Figure 9 shows a block-diagram of an exemplary decoder.

Fig. 10 shows an example analysis of sinusoidal trajectories showing sparse DCT spectra according to prior art.

Fig. 11 shows a flow-chart of an exemplary decoding method.

Fig. 12 shows a block diagram of a corresponding exemplary decoder.

Figure 13a) shows another embodiment of the invention, in particular the general location of the proposed tool within the MPEG-H 3D Audio Core Encoder .

Figure 13b) shows a part of Fig. 11.

Figure 13c) shows an embodiment of the present invention, wherein the steps depicted therein replace the respective steps in Fig. 13b).

Figure 14a) shows an example for multichannel coding, useful for understanding the invention, which was originally filed but which does not represent an embodiment of the presently claimed invention.

Figure 14b) shows an alternative embodiment of the invention for multichannel coding. Identical reference signs refer to identical or at least functionally equivalent features.


DETAILED DESCRIPTION



[0009] In the following certain embodiments are described in relation to an MPEG-H 3D Audio Phase 2 Core Experiment Proposal on tonal component coding.

1. Executive Summary



[0010] This document provides a full technical description of the High Frequency Sinusoidal Coding (HFSC) for MPEG-H 3D Audio Core Coder. The HFSC tool was already presented in 111th MPEG meeting in Geneva [1] and in 112th meeting in Warsaw [2]. This document supplements the previous descriptions and clarifies all the issues concerning the target bit rate range of the tool, decoding process, sinusoidal synthesis, bit stream syntax and computational complexity and memory requirements of the decoder.

[0011] The proposed scheme consists of parametric coding of selected high frequency tonal components using an approach based on sinusoidal modeling. The HFSC tool acts as a preprocessor to MPS in Core Encoder (Figure 1). It generates an additional bit stream in the range of 0 kbps to 1 kbps only in cases of signals exhibiting a strong tonal character in the high frequency range. The HFSC technique was tested as an extension to USAC Reference Quality Encoder. Verification tests were conducted to assess the subjective quality of proposed extension [3].

2. Technical Description of proposed tool


2.1. Functions



[0012] The purpose of the HFSC tool is to improve the representation of prominent tonal components in the operating range of the eSBR tool. In general, eSBR reconstructs high frequency components by employing the patching algorithm. Thus, its efficiency strongly depends on the availability of corresponding tonal components in the lower part of the spectrum. In certain situations, described below, the patching algorithm will not be able to reconstruct some important tonal components.
  • If the signal has a prominent components with fundamental frequency near or above the f_SBR_start frequency. This includes highly pitched sounds, like orchestral bells, and other percussive instruments. In this case, no shifting or scaling is able to recreate such components in the SBR range. The eSBR tool may use an additional technique called "sinusoidal coding" to inject a fixed sinusoidal component into a certain subband of the QMF filterbank. This component has a low frequency resolution and causes a significant discrepancy of timbre due to added inharmonicity.
  • If the signal has a significantly varying frequency (e.g. vibrato modulation), its energy in the lower band is spread over a range of transform coefficients which are subsequently distorted by quantization. For very low bit rates the local SNR becomes very low, and a partial that was originally purely tonal may not be considered as tonal any more. In such case, different patching variants lead to different additional artifacts:

    ∘ With harmonic patching mode based on phase vocoder, the quantization noise is further spread in frequency, and affects also the cross-terms

    o With non-harmonic mode (spectral shifting), the frequency modulations are not properly scaled (modulation depth does not increase with partial order).



[0013] In our proposal, the HFSC tool is used occasionally, when sounds rich with prominent high frequency tonal partials are encountered. In such situations, prominent tonal components in the range from 3360Hz to 24000 Hz are detected, their potential distortion by the eSBR tool is analyzed, and the sinusoidal representation of selected components is encoded by the HFSC tool. The additional HFSC data represents a sum of sinusoidal partials with continuously varying frequencies and amplitudes. These partials are encoded in the form of sinusoidal trajectories, i.e. data vectors representing varying amplitude and frequency [4].

[0014] HFSC tool is active only when the strong tonal components are detected by dedicated classification tools. It additionally uses Signal Classifier embedded in Core Coder. There might be also an optional pre-processing done at the input of the MPS (MPEG Surround) block in core encoder, in order to minimize the further processing of selected components by the eSBR tool (Figure 1).

[0015] Figure 1 shows the general location of the proposed tool within the MPEG-H 3D Audio Core Encoder.

2.2. HFSC Decoding Process


2.2.1. Segmentation of sinusoidal trajectories



[0016] Each individually encoded sinusoidal component is uniquely represented by its parameters: frequency and amplitude, one pair of values per component per each output data frame containing H = 256 samples. The parameters describing one tonal component are linked into so called sinusoidal trajectories. The original sinusoidal trajectories build in the encoder may have an arbitrary length. For the purpose of coding, these trajectories are partitioned into segments. Finally, segments of different trajectories starting within particular time are grouped into Groups of Segments (GOS). In our proposal GOS_LENGTH was limited to 8 trajectory data frames, which results in reduced coding delay and higher bit stream granularity.

[0017] Data values within each segment are encoded jointly. All segments of a trajectory can have lengths in the range from HFSC_MIN_SEG_LENGTH=GOS_LENGTH to HFSC_MAX_SEG_LENGTH = 32 and they are always multiple of 8, so the possible segment length values are: 8, 16, 24, and 32. During encoding process the segments length is adjusted by extrapolation process. Thanks to this the partitioning of trajectory into segments is synchronized with the endpoints of GOS structure, i.e. each segment always starts and ends at the endpoints of GOS structure.

[0018] Upon decoding, this segment may continue to the next GOS (or even further), as shown in Figure 2. After decoding, the segmented trajectories are joined together in the trajectory buffer, as described in section 2.2.2. Decoding process of GOS structure is detailed in Annex A.

[0019] Figure 2 shows partitioning of sinusoidal trajectories into segments and their relation to GOS according to an embodiment of the invention.

[0020] Encoding algorithm has also an ability to jointly encode clusters of segments belonging to harmonic structure of the sound source, i.e. clusters represent fundamental frequency of each harmonic structure and its integer multiplications. It can exploit the fact that each segment is characterized with a very similar FM and AM modulations.

2.2.2. Ordering and linking of corresponding trajectory segments



[0021] Each decoded segment contains information about its length and if there will be any further corresponding continuation segment transmitted. The decoder uses this information to determine when (i.e. in which of the following GOS) the continuation segment will be received. Linking of segments relies on the particular order the trajectories are transmitted. The order of decoding and linking segments is presented and explained in Figure 3.

[0022] Figure 3 shows a scheme of linking trajectory segments according to an embodiment of the invention. Segments decoded within one GOS are marked with the same color. Each segment is marked with a number (e.g. SEG #5) which determines the order of decoding (i.e. order of receiving the segment data from bitstream). In above example SEG#1 has length of 32 data points and is marked to be continued (isCont = 1). Therefore, SEG #1 is going to be continued in GOS #5, where there are two new segments received (SEG #5 and SEG #6). The order of decoding this segments determines that the continuation for SEG #1 is SEG #5.

2.2.3. Sinusoidal synthesis and output signal



[0023] The currently decoded trajectories amplitude and frequency data are stored in the trajectory buffers segAmpl and segFreq. The length of each of the buffers is HFSC_BUFF_LENGTH is equal to HFSC_MAX_SEGMENT_LENGTH = 32 trajectory data points. In order to keep high audio quality the decoder employs classic oscillator-based additive synthesis performed in sample domain. For this purpose, the trajectory data are to be interpolated on a sample basis, taking into account the synthesis frame length H = 256. In order to reduce the memory requirements the output signal is synthesized only from trajectory data points corresponding to currently decoded USAC frame and HFSC_BUFFER_LENGTH is equal to 2048. Once the synthesis is finished the buffer is shifted and appended with new HFSC data. There is no delay added during the synthesis process.

[0024] The operation of the HFSC tool is strictly synchronized with the USAC frame structure. The HFSC data frame (GOS) is sent once per 1 USAC frame. It describes up to 8 trajectory data values corresponding to 8 synthesis frames. In other words, there are 8 synthesis frames of sinusoidal trajectory data per each USAC frame and each synthesis frame is 256 samples long at the sampling rate of the USAC codec.

[0025] If Core Decoder output is carried in sample domain, the group of 2048 HFSC samples are passed to the output, where the data is mixed with the contents produced by the USAC decoder with appropriate scaling.

[0026] If output of the Core Decoder needs to be carried in frequency domain an additional QMF analysis is required. The QMF analysis introduces delay of 384 samples, however it holds within the delay introduced by eSBR decoder. Another option might be direct synthesis of sinusoidal partials to QMF domain.

3. Bitstream Syntax and Specification Text



[0027] The necessary changes to the standard text containing bit stream syntax, semantics and a description of the decoding process can be found in Annex A of the document as a diff-text.

4. Coding delay



[0028] The maximum coding delay is related to HFSC_MAX_SEGMENT_LENGTH, GOS_LENGTH, sinusoidal analysis frame length SINAN_LENGTH=2048 and synthesis frame length H = 256. Sinusoidal analysis requires zero-padding with 768 samples and overlapping with 1024 samples. The resulting maximum coding delay of HFSC tool is: (HFSC_MAX_SEGMENT_LENGTH + GOS _LENGTH - 1)H + SINAN_LENGTH - H = (32+8-1)256+2048-256 = 11776 samples. The delay is not added at the front of other Core Coder tools.

5. Stereo and multichannel signals coding



[0029] For stereo and multichannel signals, the trajectories of the channels are grouped and only the presence of the trajectories is signaled in a header. The HFSC tool is active only for part of audio channels. The HFSC payload is transmitted in USAC Extension Element. It is recommended to send additional information related to trajectory panning as illustrated in the Figures 4b below to further save some bits. However, due to low bitrate overhead introduced by HFSC each channel can also be encoded independently as illustrated in Figure 4a. Figure 4a shows an illustration of independent encoding for each channel according to an example useful for understanding the invention which was originally filed but which does not represent an embodiment of the presently claimed invention. Figure 4b shows an illustration of sending additional information related to trajectory panning according to an embodiment of the invention.

6. Complexity and memory requirements


6.1. Computational complexity



[0030] The computational complexity of the proposed tool depends on the number of currently transmitted trajectories which in every HFSC frame is limited to HFSC_MAX_TRJ=8. The dominant component of the computational complexity is related to the sinusoidal synthesis. Time domain synthesis assumptions are as follows:
  • Taylor series expansions employed for calculating of cos() and exp() functions
  • 16-bit output resolution


[0031] The computational complexity of DCT based segment decoding is negligibly small when compared to the synthesis. The HFSC tool generates in average is 0.6 sinusoidal trajectory, thus the total number of operations per sample is 180.6 = 10.8. Assuming the output sampling frequency is 44100 Hz, the total number of MOPS per one channel active is 0.48. When 8 audio channels would be enhanced by HFSC tool, the total number of MOPS is 3.84.
  • Comparison to the total computational complexity of Core decoder with 22 channels (11 CPE's used):Reference Model Core coder: 118 MOPS
  • HFSC: 80.48 = 3.48
  • RM+HFSC = 121.48
  • (RM+HFSC/RM) = 1,02
  • 2% increase of computational complexity, when no additional QMF analysis is needed

6.2. Memory requirements



[0032] For online operation, the trajectory decoding algorithm requires a number of matrices of size:
  • 32 × 8 = 256 elements for amplCoeff
  • 32 × 8 = 256 elements for freqCoeff
  • 33 × 8 = 256 elements for segAmpl
  • 33 × 8 = 256 elements for segFreq
  • 32 elements for DCT decoding


[0033] The synthesis requires vectors of size:
  • 2568 = 2048 elements for amplitude output buffer
  • 2568 = 2048 elements for frequency and phase output buffer


[0034] Since these elements are used to store a 4-byte floating point values, the estimated amount of memory required for computations is around 20kB RAM.

[0035] The Huffman tables require approximately 250B ROM.

7. Evidence of merit



[0036] According to workplan [5], the listening tests were conducted for stereo signals with total bitrate of 20kbps. The listening test report is presented in [3].

8. Summary and conclusions



[0037] In the current document a complete CE proposal of HFSC tool was presented which improves high frequency tonal component coding in MPEG-H Core Coder. Embodiments of the presented CE technology may be integrated into the MPEG-H audio standard as part of Phase 2.

Annex A: Proposed changes to the specification text



[0038] The following bit stream syntax is based on ISO/IEC 23008-3:2015 where we propose the following modifications.

Add table entry ID_EXT_ELE_HFSC to Table 50:



[0039] 
Table 50 - Value of usacExtElementType
usacExtElementType Value usacExtElementType Value
··· ···
ID_EXT_ELE_HFSC 10 10
··· ···

Add table entry ID_EXT_ELE_HFSC to Table 51:



[0040] 
Table 51 - Interpretation of data blocks for extension payload decoding
usacExtElementType The concatenated usacExtElementSegmentData represents:
··· ···
ID_EXT_ELE_HFSC HfscGroupOfSegments()
··· ···

Add case ID_EXT_ELE_HFSC to syntax of mpegh3daExtElementConfig():



[0041] 
Table XX - Syntax of mpegh3daExtElementConfig()
Syntax No. of bits Mnemonic
mpegh3daExtElementConfig()    
{    
 ···    
 case ID_EXT_ELE_HFSC: / high freq. sin. coding/    
  HFSCConfig();    
  break;    
 ···    
}    

Add Table XX - Syntax of HFSCConfig():



[0042] 
Table XX - Syntax of HFSCConfig()
Syntax No. of bits Mnemonic
HFSCConfig()    
{    
  for(elm=0;elm < numElements; elm++) {    
   hfscFlag[elm]; 1 uimsbf
  }    
}    
NOTE: numElements corresponds only to SCE, CPE and QCE channel elements.

Add Table XX - Syntax of HfscGroupOfSegments():



[0043] 
Table XX - Syntax of HfscGroupOfSegments()
Syntax No. of bits Mnemonic
HfscGroupOfSegments()    
{    
 if(hfscDataPresent){ 1 uimsbf
  numTrajectories; 3 uimsbf
  for(k=0;k<numTrajectories;k++){    
   isContinued[k]; 1 uimsbf
   segLength[k]; 2 uimsbf
   amplQuant[k]; 1 uimsbf
   amplTransformCoeffDC[k]; 8 uimsbf
   j = 0; NOTE 1)  
   while(amplTransformIndex[k][j] = huff_dec(huffWord)){ 1..12  
    if(amplTransformIndex[k][j] == 0) {    
     numAmplCoeffs = j;    
     break;    
   }    
   j++;    
  }    
  for(j=0; j < numAmplCoeffs; j++) NOTE 2)  
   amplTransformCoeffAC[k][j]= huff_dec(huffWord); 1..15  
  freqQuant[k]; 1 uimsbf
  freqTransformCoeffDC[k]; 11 uimsbf
  j = 0; NOTE 1)  
  while(freqTransformlndex[k][j] = huff_dec(huffWord)){ 1..12  
   if(freqTransformlndex[k][j] = =0) {    
    numFreqCoeffs = j;    
    break;    
  }    
   j++;    
  }    
  for(j=0; j < numFreqCoeffs; j++) NOTE 2)  
   freqTransformCoeffAC[k][j]= huff_dec(huffWord); 1..15  
  }    
 }    
}    
NOTE 1: Huffman codes table: Table XX
NOTE 2: Huffman codes table: Table XX


[0044] It is proposed to append the following descriptive text to a new section "5.5.X High Frequency Sinusoidal Coding Tool" with the following content:

5.5.X High Frequency Sinusoidal Coding Tool


5.5.X.1 Tool description



[0045] The High Frequency Sinusoidal Coding Tool (HFSC) is a method for coding of selected high frequency tonal components using an approach based on sinusoidal modeling. Tonal components are represented as sinusoidal trajectories - data vectors with varying amplitude and frequency values. The trajectories are divided into segments and encoded with technique based on Discreet Cosine Transform.

5.5.X.2 Terms and Definitions


Help elements:



[0046] 
hfscFlag[elm]  Indicates the use of the tool for a certain group of signals:
Table XX - hfscFlag
hfscFlag Meaning
0 HFSC tool not applied
1 HFSC tool applied

HfscGroupOfSegments ()  Syntactic element that contains HFSC Group Of Segment data
hfscDataPresent  Indicates if HFSC data are there any segments transmitted in current Group Of Segments (GOS)
numTrajectories  Indicates the number of trajectory segments transmitted in current GOS
isContinued  Indicates whether this particular segment will have its continuation in next GOS
Table XX - isContinued
isContinued Meaning
0 Segment will not be continued
1 Segment will be continued

segLength  Indicates the length of the currently decoded segment
Table XX - segLength
segLength Trajectory segment length
00 8
01 16
10 24
11 32

amplQuant  Quantization step for amplitude coefficients
Table XX - amplQuant
amplQuant Amplitude quantization step in dB
0 0.5
1 1

freqQuant  Quantization step for frequency coefficients
freqQuant Frequency quantization step in cents
0 2
1 4

huffWord  Huffman codeword
amplTransformCoeffDC  Amplitude DCT transform DC coefficient
freqTransformCoeffDC  Frequency DCT transform DC coefficient
numAmplCoeffs  Number of decoded amplitude AC coefficients
numFreqCoeffs
Number of decoded frequency AC coefficients
amplTransformCoeffAC
Array with amplitude DCT transform AC coefficients
freqTransformCoeffAC
Array with frequency DCT transform AC coefficients
amplTransformIndex
Array with amplitude DCT transform AC indices
freqTransformIndex
Array with frequency DCT transform AC indices
amplOffsetDC
Constant integer added to each decoded amplitude DC coefficient, equal to 32
freqOffsetDC
Constant integer added to each decoded frequency DC coefficient, equal to 600
offsetAC
Constant integer added to each decoded amplitude and frequency AC coefficient, equal to 1
sgnAC
Bit indicating the sign of decoded AC coefficient, 1 indicates negative value.
MAX_NUM_TRJ
Maximum number of processed trajectories, equal to 8
HFSC_BUFFER_LENGTH
Length of buffer for storing decoded trajectory amplitude and frequency data
HFSC_SYNTH_LENGTH
Length of buffer for storing synthesized HFSC samples, equal to 2048
HFSC_FS
Nominal sampling frequency for HFSC sinusoidal trajectory data, equal to 48000 Hz

5.5.X.3 Decoding process


5.5.X.3.1 General



[0047] Element usacExtElementType ID_EXT_ELE_HFSC according to hfscFlag[] contains HFSC data (HFSC Groups of Segments - GOS) corresponding to the currently processed channel elements i.e. SCE (Single Channel Element), CPE (Channel Pair Element), QCE (Quad Channel Element). The number of transmitted GOS structures for particular type of channel element is defined as follows:
Table XX - Number of transmitted GOS structures
USAC element type Number of GOS structures
SCE 1
CPE 2
QCE 4


[0048] The decoding of each GOS starts with decoding the number of transmitted segments by reading the field numSegments and increasing it by 1. Then decoding of particular k-th segment starts from decoding its length segLength[k] and isContinued[k] flag. The decoding of other segment data is performed in multiple steps as follows:

5.5.X.3.2 Decoding of segment amplitude data



[0049] The following procedures are performed for k-th segment amplitude data decoding:
  1. 1. The amplitude quantization stepA step is calculated according to formula:


    where amplQuant[k] is expressed in dB.
  2. 2. The amplTransformCoeffDC[k] is decoded according to formula:

  3. 3. The amplitude AC indices amplIndex[k][j] are decoded by starting with j=0 and decoding consecutive amplTransformIndex[k][j] Huffman code words and incrementing j, until a codeword representing 0 is encountered. The Huffman code words are listed in huff_idxTab[] table. Number of decoded indices indicates number of further transmitted coefficients - numCoeff[k]. After decoding, each index should be incremented by offsetAC.
  4. 4. The amplitude AC coefficients are also decoded by means of Huffman code words specified in huff_acTab[] table. The AC coefficients are signed values, so additional 1 sign bit sgnAC[k][j] after each Huffman code word is transmitted, where 1 indicates negative value. Finally, the value of AC coefficient is decoded according to formula: amplAC[k][j] = sgnAC[k][j] ( amplTransformCoeffAC[k][j] -0.25) ×stepA[k]
  5. 5. Decoded amplitude transform DC and AC coefficients are placed into vector amplCoeff of length equal to segLength[k]. The amplDC[k] coefficient is placed at index 0 and amplAC[k][j] coefficients are placed according to decoded amplIndex[k][j] indices.
  6. 6. The sequence of trajectory amplitude data in logarithmic scale is reconstructed from the inverse discrete cosine transform and moved into segAmpl[k][i] buffer according to:

    where:

    The amplitude data are placed in segAmpl buffer of length equal to HFSC_BUFFER_LENGTH, beginning with the index i = 1. The value under index i = 0 is set to 0.
  7. 7. The linear values of amplitudes in segAmpl[k][i] are calculated by: segAmpl[k][i] exp (segAmpllog[k][i])

5.5.X.3.3 Decoding of segment frequency data



[0050] The following procedures are performed for k-th segment frequency data decoding:
  1. 1. The frequency quantization stepF[k] is calculated according to formula:

    where freqQuant[k] is expressed in cents.
  2. 2. The freqTransformCoeffDC[k] is decoded according to formula:

  3. 3. Decoding process of frequency AC indices is the same as for amplitude AC indices. The resulting data vector is freqIndex[k][j].
  4. 4. Decoding process of frequency AC coefficients is the same as for amplitude AC coefficients. The resulting data vector is freqAC[k][j].
  5. 5. Decoded frequency transform DC and AC coefficients are placed into vector freqCoeff of length equal to segLength[k]. The freqDC[k] coefficient is placed in position j=0 and freqAC[k][j] coefficients are placed according to decoded freqIndex[k][j] indices.
  6. 6. The reconstruction of sequence of trajectory frequency data in logarithmic scale and further transformation to linear scale is performed in the same manner as for amplitude data. The resulting vector is segFreq[k][i]. The linear values of frequency data are stored in the range from 0.07 - 0.5. In order to obtain frequency in Hz, decoded frequency values should be multiplied by HFSC_FS.

5.5.X.3.4 Ordering and linking of trajectory segments



[0051] The original sinusoidal trajectories build in the encoder are partitioned into an arbitrary number of segments. The length of currently processed segment segLength[k] and continuation flag isContinued[k] is used to determine when (i.e. in which of the following GOS) the continuation segment will be received. Linking of segments relies on the particular order the trajectories are transmitted. The order of decoding and linking segments is presented and explained in Figure 3.

5.5.X.3.5 Synthesis of decoded trajectories



[0052] The received representation of trajectory segments is temporarily stored in data buffers segAmpl[k][i] and segFreq[k][i], where k represents the index of segment not greater than MAX_NUM_TRJ = 8, and i represents the trajectory data index within a segment, 0<= i < HFSC_BUFFER_LENGTH. The index i=0 of buffers segAmpl and segFreq is filled with data depending on the one of two possible scenarios for further processing of particular segments:
  1. 1. The received segment is starting a new trajectory, then the i=0 index amplitude and frequency data are provided by simple extrapolation process:

  2. 2. The received segment is recognized as a continuation for the segment processed in the previously received GOS structure, then the i=0 index amplitude and frequency data are copy of the last data points from the segment being continued.


[0053] The output signal is synthesized from sinusoidal trajectory data stored in the synthesis region of segAmpl[k][l] and segFreq[k][l], where each column corresponds to one synthesis frame and l=0, 1, ...,8. For the purpose of synthesis, these data are to be interpolated on a sample basis, taking into account the synthesis frame length H = 256. The samples of the output signal are calculated according to

where:

n = 0... HFSC SYNTH LENGTH-1,



[0054] K[n] denotes the number of currently active trajectories, i.e. the number of rows synthesis region of segAmpl[k][l] and segFreq[k][l] which have valid data in the frame l = floor(n/H) and l = floor(n/H)+1.

Ak[n] denotes the interpolated instantaneous amplitude of k-th partial,

ϕk[n] denotes the interpolated instantaneous phase of k-th partial.



[0055] The instantaneous phase ϕk[n] is calculated from the instantaneous frequency Fk[n] according to:

where nstart[k] denotes the initial sample, at which the current segment is started. This initial value of phase is not transmitted and should be stored between consecutive buffers, so that the evolution of phase is continuous. For this purpose the final value of ϕk[HFSC_SYNTH_LENGTH-1] is written to a vector segPhase[k]. This value is used as ϕk[nstart[k]] during the synthesis in the next buffer. At the beginning of each trajectory, ϕk[nstart[k]] = 0 is set.

[0056] The instantaneous parameters Ak[n] and Fk[n] are interpolated on a sample basis from trajectory data stored in trajectory buffer. These parameters are calculated by linear interpolation:



where:

n' = n-nstart

h = n' mod H



[0057] Once the group of HFSC_SYNTH_LENGTH samples is synthesized, it is passed to the output, where the data is mixed with the contents produced by the Core Decoder with appropriate scaling to the output data range through multiplication by 215. After the synthesis, the content of segAmpl[k][l] and segFreq[k][l] is shifted by 8 trajectory data points and updated with new data from incoming GOS.

5.5.X.3.6 Additional transform of output signal to QMF domain



[0058] Depending on the Core Decoder output signal domain, an additional QMF analysis of the HFSC output signal should be performed according to ISO/IEC 14496-3:2009, subclause 4.6.18.4.

5.5.X.3.7 Huffman Tables for AC indices



[0059] The following Huffman table huff_idxTab[] shall be used for decoding the DCT AC indices:


5.5.X.3.8 Huffman Tables for AC coefficients



[0060] The following Huffman table huff_acTab[] shall be used for decoding the DCT AC values. Each code word in the bitstream is followed by a 1 bit indicating the sign of decoded AC value.

[0061] The decoded AC values need to be increased by adding the offsetAC value.





[0062] In the following further information about embodiments of the invention is provided.

[0063] Subject of the application:
High Efficiency Sinusoidal Coding
  • low bitrate coding technique for audio signals
    • based on hiqh quality sinusoidal model
    • extended with transient and noise coding
    • bridge between speech and general audio coding techniques
    • deals with high frequency artifacts introduced by Spectral Band Replication
  • MPEG-H 3D Audio and Unified Speech and Audio Coding extension
  • MPEG-H 3D Audio / USAC has known problems with high frequency tonal
    components


[0064] Fig. 5 shows the motivation for embodiments of the present invention.

[0065] Fig. 6 shows exemplary MPEG-H 3D Audio artifacts above fSBR, and in particular that the SBR tool is not capable of proper reconstruction of high frequency tonal components (over fSBR band)

[0066] Fig. 7 shows a comparison for 20kbps (~2kbps of HESC), fSBR=4kHz, between "Original", "MPEG 3DA" and "MPEG 3DA+ HESC".

[0067] Fig. 8 shows a flow-chart of an exemplary encoding method, comprising the following steps and/or content:

114: audio signal samples per frame

312: determining sinusoidal components

313: estimation of frequencies of the components for each frame

314: estimation of amplitudes of the components for each frame

315: splitting particular trajectories into segments

---: merging thus obtained pairs into sinusoidal trajectories

316 & 317: transform the values into the logarithmic scale

320 & 321: quantization

318 & 319: transforming particular trajectories to the frequency

domain by means of a digital transform performed on segments

longer than the frame duration

320 & 321: quantization

322 & 323: selection of transform coefficients in the segments

324 & 326: array of indices of selected coefficients

325 & 327: array of values of selected coefficients

328: entropy encoding

115: outputting the quantized coefficients as output data



[0068] Thus, Fig. 8 illustrates the schematic flow of an exemplary audio signal encoding method comprising the steps of: collecting the audio signal samples (114), determining sinusoidal components (312) in subsequent frames, estimation of amplitudes (314) and frequencies (313) of the components for each frame, merging thus obtained pairs into sinusoidal trajectories, splitting particular trajectories into segments, transforming (318, 319) particular trajectories to the frequency domain by means of a digital transform performed on segments longer than the frame duration, quantization (320, 321) and selection (322, 323) of transform coefficients in the segments, entropy encoding (328), outputting the quantized coefficients as output data (115), wherein the length of the segments into which each trajectory is split is individually adjusted in time for each trajectory.

[0069] Figure 9 shows a block-diagram of an exemplary encoder, comprising the following features:

110: audio signal encoder

111: analog-to-digital converter

112: processing unit

115: compressed data sequence

113: audio signal

114: audio signal samples



[0070] Thus, Fig. 9 illustrates the schematic structure of an exemplary audio signal encoder (110) comprising an analog-to-digital converter (111) and a processing unit (112) provided with: an audio signal samples collecting unit, a determining unit receiving the audio signal samples from the audio signal samples collecting unit and converting them into sinusoidal components in subsequent frames, an estimation unit receiving the sinusoidal components' samples from the determining unit and returning amplitudes and frequencies of the sinusoidal components in each frame, a synthesis unit, generating sinusoidal trajectories on a basis of values of amplitudes and frequencies, a splitting unit, receiving the trajectories from the synthesis unit and splitting them into segments, a transforming unit, transforming trajectories' segments to the frequency domain by means of a digital transform, a quantization and selection unit, converting selected transform coefficients into values resulting from selected quantization levels and discarding remaining coefficients, an entropy encoding unit, encoding quantized coefficients outputted by the quantization and selection unit, and a data outputting unit, wherein the splitting unit is adapted to set the length of the segment individually for each trajectory and to adjust this length over time.

[0071] Fig. 10 shows an example analysis of sinusoidal trajectories showing sparse DCT spectra according to prior art.

[0072] Fig. 11 shows a flow-chart of an exemplary decoding method, comprising the following steps and/or content:

115: transferred compressed data

411: entropy code decoder

324 & 326: reconstructed array of indices of the quantized transform coeff.

325 & 327: reconstructed array of values of the quantized transform coeff.

412 & 413: reconstruction blocks, vectors' elements of transform coeff. are filled with the decoded values corresponding to the decoded indices

414 & 415: dequantization, not-encoded coeff. are reconstructed using "ACEnergy" and/or "ACEnvelope"

416 & 417: inverse transform to obtain the reconstructed logarithmic values of frequency and amplitude

418 & 419: convert to linear scale by means of antilogarithm

420 & 421: merging the reconstructed trajectories' segments with the already decoded segments

422: synthesis based on a sinusoidal representation

214: synthesized signal



[0073] Thus, Fig. 11 illustrates the schematic flow of an exemplary audio signal decoding method comprising the steps of: retrieving encoded data, reconstruction (411, 412, 413, 414, 415) from the encoded data digital transform coefficients of trajectories' segments, subjecting the coefficients to an inverse transform (416, 417) and performing reconstruction of the trajectories' segments, generation (420, 421) of sinusoidal components, each having amplitude and frequency corresponding to the particular trajectory, reconstruction of the audio signal by summation of the sinusoidal components, wherein missing, not encoded transform coefficients of the sinusoidal components' trajectories are replaced with noise samples generated on a basis of at least one parameter introduced to the encoded data instead of the missing coefficients.

[0074] Fig. 12 shows a block diagram of an exemplary decoder comprising the following features: 210: audio signal decoder

213: compressed data

215: analog signal

212: digital-to-analog converter

211: processing unit

214: synthesized digital samples



[0075] Thus, Fig. 12 illustrates the schematic structure of an audio signal decoder 210, comprising a digital-to-analog converter 212 and a processing unit 211 provided with: an encoded data retrieving unit, a reconstruction unit, receiving the encoded data and returning digital transform coefficients of trajectories' segments, an inverse transform unit, receiving the transform coefficients and returning reconstructed trajectories' segments, a sinusoidal components generation unit, receiving the reconstructed trajectories' segments and returning sinusoidal components, each having amplitude and frequency corresponding to the particular trajectory, an audio signal reconstruction unit, receiving the sinusoidal components and returning their sum, the decoder comprising a unit adapted to randomly generate not encoded coefficients on a basis of at least one parameter, the parameter being retrieved from the input data, and transferring the generated coefficients to the inverse transform unit.

[0076] In the following, specific aspects of embodiments of the inventions are described.

Aspect 1: QMF and/or MDCT synthesis



[0077] Figure 13a) shows another embodiment of the invention, in particular the general location of the proposed tool within the MPEG-H 3D Audio Core Encoder.

[0078] Figure 13b) shows a part of Fig. 11. The problem of such implementations: due to complexity issue, the amplitudes and frequencies may not always be synthesized directly into the time domain representation.

[0079] Figure 13c) shows an embodiment of the present invention, wherein the steps depicted therein replace the respective steps in Fig. 13b), i.e. provide a solution: depending on the system configuration, the decoder shall perform the processing accordingly.

Aspect 2: Extension of Trajectory Length



[0080] In some implementations, the length of the segments into which each trajectory is split is individually adjusted in time for each trajectory.

[0081] Such implementations have the problem that the actual trajectory length is arbitrary at the encoder side. This means that a segment may start and end arbitrarily within the group of segments (GOS) structure. Additional signaling is required.

[0082] In an embodiment, the partitioning of trajectory into segments is instead synchronized with the endpoints of the Group of Segments (GOS) structure.

[0083] Thus, there is no need for additional signaling since it will always be guaranteed that the beginning and end of a segment is aligned with the GOS structure.

Aspect 3: Information about trajectory panning



[0084] 

Problem: In the context of multichannel coding, it has been found out that the information regarding sinusoidal trajectories is redundant since it may be shared between several channels.

Solution:
According to an embodiment, instead of coding these trajectories independently for each channel (as shown in Fig. 14a)), they can be grouped and only signal their presence with fewer bits (as shown in Fig. 14b)), e.g. in headers. Therefore, it is recommended to send additional information related to trajectory panning.


Aspect 4: Encoding of trajectory groups



[0085] 

Problem: Some trajectories may have redundancies such as the presence of harmonics.

Solution: The trajectories can be compressed by signaling only the presence of harmonics in the bitstream as described below as an example.



[0086] Encoding algorithm has also an ability to jointly encode clusters of segments belonging to harmonic structure of the sound source, i.e. clusters represent fundamental frequency of each harmonic structure and its integer multiplications. It can exploit the fact that each segment is characterized with a very similar FM and AM modulations.

[0087] Combination of the Aspects
  • The aspectss mentioned above can be applied independently or combined
  • The benefit of the combination is mostly cumulative. For example, Aspects 2, 3 and 4 can be combined resulting in a total reduced bitrate.

9. References



[0088] 

[1] ISO/IEC JTC1/SC29/WG11/M35934, "MPEG-H 3D Audio Phase 2 Core Experiment Proposal on tonal component coding," 111th MPEG Meeting, February 2015, Geneva, Switzerland.

[2] ISO/IEC JTC1/SC29/WG11/M36538, "Updated MPEG-H 3D Audio Phase 2 Core Experiment Proposal on tonal component coding," 112th MPEG Meeting, June 2015, Warsaw, Poland.

[3] ISO/IEC JTC1/SC29/WG11/M37215, "Zylia Listening Test Report on High Frequency Tonal Component Coding CE," 113th MPEG Meeting, October 2015, Geneva, Switzerland.

[4] Zernicki T., Bartkowiak M., Januszkiewicz L., Chryszczanowicz M., "Application of sinusoidal coding for enhanced bandwidth extension in MPEG-D USAC," Convention paper presented at the 138th AES Convention, Warsaw.

[5] ISO/IEC JTC1/SC29/WG11/N15582, "Workplan on 3D Audio," 112th MPEG Meeting, June 2015, Warsaw, Poland.

[Zernicki et al., 2011] Tomasz Zernicki, Maciej Bartkowiak, Marek Domanski, "Enhanced coding of high-frequency tonal components in MPEG-D USAC through joint application of eSBR and sinusoidal modeling," in ICASSP 2011, pp. 501-504, 2011.

[Zernicki et al., 2015] Tomasz Zernicki, Maciej Bartkowiak, Lukasz Januszkiewicz, Marcin Chryszczanowicz, "Application of sinusoidal coding for enhanced bandwidth extension in MPEG-D USAC," in Audio Engineering Society 138th Convention, Warsaw, Poland, May 2015.




Claims

1. An audio signal encoding method, the method comprising the steps of:

- collecting the audio signal samples (114),

- determining sinusoidal components (312) in subsequent frames,

- estimation of amplitudes (314) and frequencies (313) of the components for each frame,

- merging thus obtained pairs into sinusoidal trajectories,

- splitting trajectories into segments,

- transforming (318, 319) the trajectories to the frequency domain by means of a digital transform performed on segments longer than the frame duration,

- quantization (320, 321) and selection (322, 323) of transform coefficients in the segments,

- entropy encoding (328), and

- outputting the quantized coefficients as output data (115),
wherein:

- when the method is an audio signal encoding method for stereo or multichannel encoding, the trajectories of the channels are grouped and only the presence of the trajectories is signaled in a header.


 
2. The audio signal encoding method according to claim 1,
wherein

- segments of different trajectories starting within a particular time are grouped into Groups of Segments, GOS, and

- the partitioning of trajectories into segments is synchronized with the endpoints of a Group of Segments, GOS.


 
3. The audio signal encoding method according to claim 2, wherein the segments length is adjusted by extrapolation to synchronize the partitioning of trajectories with the endpoints of the GOS.
 
4. The audio signal encoding method according to claim 2 or 3, wherein the length of a group of segments is limited to eight frames.
 
5. The audio signal encoding method according to any one of claims 2 to 4, wherein the audio signal encoding method is used for high frequency sinusoidal coding, HFSC, for example for HFSC according to the MPEG-H 3D codec.
 
6. The audio signal encoding method according to any one of claims 1 to 5, wherein clusters of segments belonging to harmonic structures of a sound source are jointly encoded, clusters representing a fundamental frequency of each harmonic structure and its integer multiplications.
 
7. An audio signal encoding apparatus configured to:

- collect the audio signal samples (114),

- determine sinusoidal components (312) in subsequent frames,

- estimate amplitudes (314) and frequencies (313) of the components for each frame,

- merge thus obtained pairs into sinusoidal trajectories,

- split trajectories into segments,

- transform (318, 319) the trajectories to the frequency domain by means of a digital transform performed on segments longer than the frame duration,

- quantize (320, 321) and select (322, 323) transform coefficients in the segments,

- entropy encode (328), and

- output the quantized coefficients as output data (115),
wherein:

- when the apparatus is an audio signal encoding apparatus for stereo or multichannel encoding, the trajectories of the channels are grouped and only the presence of the trajectories is signaled in a header.


 
8. The audio signal encoding apparatus according to claim 7,
wherein

- segments of different trajectories starting within a particular time are grouped into Groups of Segments, GOS, and

- the partitioning of trajectories into segments is synchronized with the endpoints of a Group of Segments, GOS.


 
9. The audio signal encoding apparatus according to claim 7 or claim 8, wherein clusters of segments belonging to harmonic structures of a sound source are jointly encoded, clusters representing a fundamental frequency of each harmonic structure and its integer multiplications.
 
10. An audio signal decoding method comprising the steps of:

- retrieving encoded data,

- reconstruction (411, 412, 413, 414, 415) from the encoded data digital transform coefficients of trajectories' segments,

- subjecting the coefficients to an inverse transform (416, 417) and performing reconstruction of the trajectories' segments,

- for each trajectory, generation (420, 421) of a sinusoidal components having an amplitude and a frequency corresponding to the trajectory,

- reconstruction of the audio signal by summation of the sinusoidal components,
wherein

- when the method is an audio signal decoding method for stereo or multichannel decoding, the trajectories of the channels are grouped and only the presence of the trajectories is signaled in a header in the retrieved encoded data.


 
11. The audio signal decoding method according to claim 10, wherein:

- segments of different trajectories starting within a particular time are grouped into Groups of Segments, GOS, and

- the partitioning of trajectories into segments is synchronized with the endpoints of a Group of Segments, GOS.


 
12. The audio signal decoding method according to claim 10 or claim 11, wherein clusters of segments belonging to harmonic structures of a sound source are jointly encoded in the retrieved encoded data, clusters representing a fundamental frequency of each harmonic structure and its integer multiplications.
 
13. An audio signal decoding apparatus configured to:

- retrieve encoded data,

- reconstruct (411, 412, 413, 414, 415) from the encoded data digital transform coefficients of trajectories' segments,

- subject the coefficients to an inverse transform (416, 417) and perform reconstruction of the trajectories' segments,

- for each trajectory, generate (420, 421) a sinusoidal component having an amplitude and a frequency corresponding to the trajectory,

- reconstruct the audio signal by summation of the sinusoidal components,
wherein

- when the method is an audio signal decoding method for stereo or multichannel decoding, the trajectories of the channels are grouped and only the presence of the trajectories is signaled in a header in the retrieved encoded data.


 
14. The audio signal decoding apparatus according to claim 13, wherein:

- segments of different trajectories starting within a particular time are grouped into Groups of Segments (GOS), and

- the partitioning of trajectories into segments is synchronized with the endpoints of a Group of Segments (GOS).


 
15. The audio signal decoding apparatus according to claim 13 or claim 14, wherein clusters of segments belonging to harmonic structures of a sound source are jointly encoded in the retrieved encoded data, clusters representing a fundamental frequency of each harmonic structure and its integer multiplications.
 


Ansprüche

1. Audiosignalcodierverfahren, wobei das Verfahren die folgenden Schritte umfasst:

- Sammeln der Audiosignalproben (114),

- Bestimmen von sinusförmigen Komponenten (312) in den nachfolgenden "Frames",

- Schätzen der Amplituden (314) und Frequenzen (313) der Komponenten für jedes "Frame",

- Zusammenfügen der so erhaltenen Paare zu sinusförmigen Bewegungsbahnen,

- Teilen der Bewegungsbahnen in Segmente,

- Transformieren (318, 319) der Bewegungsbahnen in den Frequenzbereich mittels einer digitalen Transformation, die an Segmenten durchgeführt wird, die länger als die "Frame"-Dauer sind,

- Quantisierung (320, 321) und Auswahl (322, 323) der Transformationskoeffizienten in den Segmenten,

- Entropiecodierung (328), und

- Ausgeben der quantisierten Koeffizienten als Ausgangsdaten (115),
wobei:

- wenn das Verfahren ein Audiosignalcodierverfahren für Stereo- oder Mehrkanalcodierung ist, die Bewegungsbahnen der Kanäle gruppiert werden und nur das Vorhandensein der Bewegungsbahnen in einem Kopfabschnitt signalisiert wird.


 
2. Audiosignalcodierverfahren gemäß Anspruch 1,
wobei

- Segmente verschiedener Bewegungsbahnen, die innerhalb eines bestimmten Zeitraums beginnen, in Segmentgruppen, GOS, gruppiert werden und

- das Unterteilen der Bewegungsbahnen in Segmente mit den Endpunkten einer Segmentgruppe, GOS, synchronisiert wird.


 
3. Audiosignalcodierverfahren gemäß Anspruch 2, wobei die Segmentlänge durch Extrapolation angepasst wird, um das Unterteilen der Bewegungsbahnen mit den Endpunkten der GOS zu synchronisieren.
 
4. Audiosignalcodierverfahren gemäß Anspruch 2 oder 3, wobei die Länge einer Segmentgruppe auf acht "Frames" begrenzt ist.
 
5. Audiosignalcodierverfahren gemäß einem der Ansprüche 2 bis 4, wobei das Audiosignalcodierverfahren für die Hochfrequenz-Sinus-Codierung, HFSC, verwendet wird, zum Beispiel für die HFSC gemäß dem MPEG-H 3D-Codec.
 
6. Audiosignalcodierverfahren gemäß einem der Ansprüche 1 bis 5, wobei Cluster von Segmenten, die zu harmonischen Strukturen einer Schallquelle gehören, gemeinsam codiert werden, wobei die "Cluster" eine Grundfrequenz jeder harmonischen Struktur und ihre ganzzahligen Multiplikationen darstellen.
 
7. Audiosignalcodiervorrichtung, die dafür konfiguriert ist:

- die Audiosignalproben zu sammeln (114),

- die sinusförmigen Komponenten (312) in den nachfolgenden "Frames" zu bestimmen,

- die Amplituden (314) und Frequenzen (313) der Komponenten für jedes "Frame" zu schätzen,

- die so erhaltenen Paare zu sinusförmigen Bewegungsbahnen zusammenzufügen,

- Bewegungsbahnen in Segmente zu unterteilen,

- die Bewegungsbahnen in den Frequenzbereich mittels einer digitalen Transformation zu transformieren (318, 319), die an Segmenten durchgeführt wird, die länger als die "Frame"-Dauer sind,

- Transformationskoeffizienten in den Segmenten zu quantisieren (320, 321) und auszuwählen (322, 323),

- Entropiecodierung vorzunehmen (328), und

- die quantisierten Koeffizienten als Ausgangsdaten auszugeben (115),
wobei:

- wenn die Vorrichtung eine Audiosignalcodiervorrichtung für Stereo- oder Mehrkanalcodierung ist, die Bewegungsbahnen der Kanäle gruppiert werden und nur das Vorhandensein der Bewegungsbahnen in einem Kopfabschnitt signalisiert wird.


 
8. Audiosignalcodiervorrichtung gemäß Anspruch 7,
wobei

- Segmente verschiedener Bewegungsbahnen, die innerhalb eines bestimmten Zeitraums beginnen, in Segmentgruppen, GOS, gruppiert werden und

- das Unterteilen der Bewegungsbahnen in Segmente mit den Endpunkten einer Segmentgruppe, GOS, synchronisiert wird.


 
9. Audiosignalcodiervorrichtung gemäß Anspruch 7 oder 8, wobei "Cluster" von Segmenten, die zu harmonischen Strukturen einer Schallquelle gehören, gemeinsam codiert werden, wobei die "Cluster" eine Grundfrequenz jeder harmonischen Struktur und ihre ganzzahligen Multiplikationen darstellen.
 
10. Audiosignaldecodierverfahren, umfassend die folgenden Schritte:

- Abrufen codierter Daten,

- Rekonstruktion (411, 412, 413, 414, 415) der digitalen Transformationskoeffizienten der Segmente der Bewegungsbahn aus den codierten Daten,

- Unterziehen der Koeffizienten einer inversen Transformation (416, 417) und Durchführen einer Rekonstruktion der Segmente der Bewegungsbahnen,

- für jede Bewegungsbahn Erzeugung (420, 421) einer sinusförmigen Komponente mit einer Amplitude und einer Frequenz, die der Bewegungsbahn entsprechen,

- Rekonstruktion des Audiosignals durch Summierung der sinusförmigen Komponenten,
wobei

- wenn das Verfahren ein Audiosignaldecodierverfahren für Stereo- oder Mehrkanaldecodierung ist, die Bewegungsbahnen der Kanäle gruppiert werden und nur das Vorhandensein der Bewegungsbahnen in einem Kopfabschnitt der abgerufenen codierten Daten signalisiert wird.


 
11. Audiosignaldecodierverfahren gemäß Anspruch 10, wobei:

- Segmente verschiedener Bewegungsbahnen, die innerhalb eines bestimmten Zeitraums beginnen, in Segmentgruppen, GOS, gruppiert werden und

- das Unterteilen der Bewegungsbahnen in Segmente mit den Endpunkten einer Segmentgruppe, GOS, synchronisiert wird.


 
12. Audiosignaldecodierverfahren gemäß Anspruch 10 oder 11, wobei "Cluster" von Segmenten, die zu harmonischen Strukturen einer Schallquelle gehören, gemeinsam in den abgerufenen codierten Daten codiert werden, wobei die "Cluster" eine Grundfrequenz jeder harmonischen Struktur und ihre ganzzahligen Multiplikationen darstellen.
 
13. Audiosignaldecodiervorrichtung, die dafür konfiguriert ist:

- codierte Daten abzurufen,

- digitale Transformationskoeffizienten der Bewegungsbahnsegmente aus den codierten Daten zu rekonstruieren (411, 412, 413, 414, 415),

- die Koeffizienten einer inversen Transformation (416, 417) zu unterziehen und eine Rekonstruktion der Segmente der Bewegungsbahnen vorzunehmen,

- für jede Bewegungsbahn eine sinusförmige Komponente mit einer Amplitude und einer Frequenz entsprechend der Bewegungsbahn zu erzeugen (420, 421),

- das Audiosignal durch Summierung der sinusförmigen Komponenten zu rekonstruieren,
wobei

- wenn das Verfahren ein Audiosignaldecodierverfahren für Stereo- oder Mehrkanaldecodierung ist, die Bewegungsbahnen der Kanäle gruppiert werden und nur das Vorhandensein der Bewegungsbahnen in einem Kopfabschnitt der abgerufenen codierten Daten signalisiert wird.


 
14. Audiosignaldecodiervorrichtung gemäß Anspruch 13, wobei:

- Segmente verschiedener Bewegungsbahnen, die innerhalb eines bestimmten Zeitraums beginnen, in Segmentgruppen (GOS) gruppiert werden und

- das Unterteilen der Bewegungsbahnen in Segmente mit den Endpunkten einer Segmentgruppe (GOS) synchronisiert wird.


 
15. Audiosignaldecodiervorrichtung gemäß Anspruch 13 oder 14, wobei "Cluster" von Segmenten, die zu harmonischen Strukturen einer Schallquelle gehören, gemeinsam in den abgerufenen codierten Daten codiert werden, wobei die "Cluster" eine Grundfrequenz jeder harmonischen Struktur und ihre ganzzahligen Multiplikationen darstellen.
 


Revendications

1. Procédé d'encodage de signal audio, le procédé comprenant les étapes de :

- la collecte des échantillons de signal audio (114),

- la détermination de composantes sinusoïdales (312) dans des trames subséquentes,

- l'estimation d'amplitudes (314) et de fréquences (313) des composantes pour chaque trame,

- la fusion de paires ainsi obtenues en trajectoires sinusoïdales,

- la division de trajectoires en segments,

- la transformation (318, 319) des trajectoires en le domaine de fréquence au moyen d'une transformée numérique réalisée sur des segments plus longs que la durée de trame,

- la quantification (320, 321) et la sélection (322, 323) de coefficients de transformée dans les segments,

- l'encodage entropique (328), et

- la sortie des coefficients quantifiés sous forme de données de sortie (115),
dans lequel :

- lorsque le procédé est un procédé d'encodage de signal audio pour encodage stéréo ou multicanal, les trajectoires des canaux sont groupées et seulement la présence des trajectoires est signalée dans un en-tête.


 
2. Procédé d'encodage de signal audio selon la revendication 1, dans lequel

- des segments de différentes trajectoires commençant au sein d'un temps particulier sont groupés en Groupes de Segments, GOS, et

- le partitionnement de trajectoires en segments est synchronisé avec les points terminaux d'un Groupe de Segments, GOS.


 
3. Procédé d'encodage de signal audio selon la revendication 2, dans lequel la longueur des segments est ajustée par extrapolation pour synchroniser le partitionnement de trajectoires avec les points terminaux du GOS.
 
4. Procédé d'encodage de signal audio selon la revendication 2 ou 3, dans lequel la longueur d'un groupe de segments est limitées à huit trames.
 
5. Procédé d'encodage de signal audio selon l'une quelconque des revendications 2 à 4, dans lequel le procédé d'encodage de signal audio est utilisé pour un codage sinusoïdal haute fréquence, HFSC, par exemple pour HFSC selon le codec MPEG-H 3D.
 
6. Procédé d'encodage de signal audio selon l'une quelconque des revendications 1 à 5, dans lequel des groupements de segments appartenant à des structures harmoniques d'une source de son sont encodés conjointement, des groupements représentant une fréquence fondamentale de chaque structure harmonique et ses multiplications entières.
 
7. Appareil d'encodage de signal audio, configuré pour :

- collecter les échantillons de signal audio (114),

- déterminer des composantes sinusoïdales (312) dans des trames subséquentes,

- estimer des amplitudes (314) et des fréquences (313) des composantes pour chaque trame,

- fusionner des paires ainsi obtenues en trajectoires sinusoïdales,

- diviser des trajectoires en segments,

- transformer (318, 319) les trajectoires en le domaine de fréquence au moyen d'une transformée numérique réalisée sur des segments plus longs que la durée de trame,

- quantifier (320, 321) et sélectionner (322, 323) des coefficients de transformée dans les segments,

- encoder entropiquement (328), et

- sortir les coefficients quantifiés sous forme de données de sortie (115),
dans lequel :

- lorsque l'appareil est un appareil d'encodage de signal audio pour encodage stéréo ou multicanal, les trajectoires des canaux sont groupées et seulement la présence des trajectoires est signalée dans un en-tête.


 
8. Appareil d'encodage de signal audio selon la revendication 7, dans lequel

- des segments de différentes trajectoires commençant au sein d'un temps particulier sont groupés en Groupes de Segments, GOS, et

- le partitionnement de trajectoires en segments est synchronisé avec les points terminaux d'un Groupe de Segments, GOS.


 
9. Appareil d'encodage de signal audio selon la revendication 7 ou la revendication 8, dans lequel des groupements de segments appartenant à des structures harmoniques d'une source de son sont encodés conjointement, des groupements représentant une fréquence fondamentale de chaque structure harmonique et ses multiplications entières.
 
10. Procédé de décodage de signal audio, comprenant les étapes de :

- la récupération de données encodées,

- la reconstruction (411, 412, 413, 414, 415) à partir des données encodées, des coefficients de transformée numérique de segments de trajectoires,

- la soumission des coefficients à une transformée inverse (416, 417) et la réalisation d'une reconstruction des segments de trajectoires,

- pour chaque trajectoire, la génération (420,421) d'une composante sinusoïdale ayant une amplitude et une fréquence correspondant à la trajectoire,

- la reconstruction du signal audio par sommation des composantes sinusoïdales, dans lequel

- lorsque le procédé est un procédé de décodage de signal audio pour décodage stéréo ou multicanal, les trajectoires des canaux sont groupées et seulement la présence des trajectoires est signalée dans un en-tête dans les données encodées récupérées.


 
11. Procédé de décodage de signal audio selon la revendication 10, dans lequel :

- des segments de différentes trajectoires commençant au sein d'un temps particulier sont groupés en Groupes de Segments, GOS, et

- le partitionnement de trajectoires en segments est synchronisé avec les points terminaux d'un Groupe de Segments, GOS.


 
12. Procédé de décodage de signal audio selon la revendication 10 ou la revendication 11, dans lequel des groupements de segments appartenant à des structures harmoniques d'une source de son sont encodés conjointement dans les données encodées récupérées, des groupements représentant une fréquence fondamentale de chaque structure harmonique et ses multiplications entières.
 
13. Appareil de décodage de signal audio, configuré pour :

- récupérer des données encodées,

- reconstruire (411, 412, 413, 414, 415), à partir des données encodées, des coefficients de transformée numérique de segments de trajectoires,

- soumettre les coefficients à une transformée inverse (416, 417) et réaliser une reconstruction des segments de trajectoires,

- pour chaque trajectoire, générer (420, 421) une composante sinusoïdale ayant une amplitude et une fréquence correspondant à la trajectoire,

- reconstruire le signal audio par sommation des composantes sinusoïdales, dans lequel

- lorsque le procédé est un procédé de décodage de signal audio pour décodage stéréo ou multicanal, les trajectoires des canaux sont groupées et seulement la présence des trajectoires est signalée dans un en-tête dans les données encodées récupérées.


 
14. Appareil de décodage de signal audio selon la revendication 13, dans lequel :

- des segments de différentes trajectoires commençant au sein d'un temps particulier sont groupés en Groupes de Segments (GOS), et

- le partitionnement de trajectoires en segments est synchronisé avec les points terminaux d'un Groupe de Segments (GOS).


 
15. Appareil de décodage de signal audio selon la revendication 13 ou la revendication 14, dans lequel des groupements de segments appartenant à des structures harmoniques d'une source de son sont encodés conjointement dans les données encodées récupérées, des groupements représentant une fréquence fondamentale de chaque structure harmonique et ses multiplications entières.
 




Drawing


















































Cited references

REFERENCES CITED IN THE DESCRIPTION



This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

Patent documents cited in the description




Non-patent literature cited in the description