KR20170037660A - Determining a budget for lpd/fd transition frame encoding - Google Patents

Determining a budget for lpd/fd transition frame encoding Download PDF

Info

Publication number
KR20170037660A
KR20170037660A KR1020177005825A KR20177005825A KR20170037660A KR 20170037660 A KR20170037660 A KR 20170037660A KR 1020177005825 A KR1020177005825 A KR 1020177005825A KR 20177005825 A KR20177005825 A KR 20177005825A KR 20170037660 A KR20170037660 A KR 20170037660A
Authority
KR
South Korea
Prior art keywords
coding
frame
transition
bits
bit rate
Prior art date
Application number
KR1020177005825A
Other languages
Korean (ko)
Inventor
스테판 라고
줄리엔 포레
Original Assignee
오렌지
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 오렌지 filed Critical 오렌지
Priority to KR1020227015119A priority Critical patent/KR102485835B1/en
Publication of KR20170037660A publication Critical patent/KR20170037660A/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/0212Speech 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 orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 전이 프레임을 코딩하기 위한 비트들의 분포를 결정하는 방법에 관한 것이다. 상기 방법은 디지털 신호를 코딩/디코딩하기 위한 인코더/디코더에서 구현된다. 상기 전이 프레임은 예측 코딩된 선행 프레임에 선행된다. 상기 전이 프레임의 코딩은 상기 전이 프레임의 단일 서브 프레임의 변환 코딩 및 예측 코딩을 포함한다. 상기 방법은 - 상기 전이 서브 프레임의 예측 코딩을 위한 비트 레이트를 할당하되, 상기 비트 레이트는 제 1 미리 결정된 비트 레이트 값과 상기 전이 프레임을 변환 코딩하기 위한 상기 비트 레이트 사이의 최소 값과 동일한 단계(402; 405); - 상기 비트 레이트를 위한 상기 전이 서브 프레임을 예측 코딩하기 위하여 할당된 제 1 비트 수를 결정하는 단계(408, 408); 및 - 상기 전이 프레임 코딩을 위하여 가능한 비트 수와 상기 할당된 제 1 비트로부터, 상기 전이 프레임을 변환 코딩하기 위하여 할당된 제 2 비트 수를 계산하는 단계(410)를 포함한다The present invention relates to a method for determining the distribution of bits for coding a transition frame. The method is implemented in an encoder / decoder for coding / decoding a digital signal. The transition frame is preceded by a predictive coded preceding frame. The coding of the transition frame includes transform coding and predictive coding of a single sub-frame of the transition frame. The method comprising the steps of: - allocating a bit rate for predictive coding of the transition sub-frame, the bit rate being equal to a minimum value between a first predetermined bit rate value and the bit rate for transform coding the transition frame 402; - determining (408, 408) a first number of bits allocated for predicting the transition subframe for the bit rate; And - computing (410) the number of possible bits for the transition frame coding and the second number of bits allocated for transcoding the transition frame, from the assigned first bit

Description

LPD/FD 전이 프레임 인코딩의 예산 결정{DETERMINING A BUDGET FOR LPD/FD TRANSITION FRAME ENCODING}DETERMINING A BUDGET FOR LPD / FD TRANSITION FRAME ENCODING < RTI ID = 0.0 >

본 발명은 디지털 신호를 코딩/디코딩하는 분야에 관한 것이다. The present invention relates to the field of coding / decoding digital signals.

음성 사운드를 낮은 비율(rate)로 효율적으로 코딩하기 위해, CLEP(“코드 여기 선형 예측(Code Excited Linear Prediction)”) 기술이 권장된다. 음악 사운드를 효과적으로 코딩하기 위해, 변환 코딩 기술이 권장된다.In order to efficiently code speech sounds at a low rate, CLEP (" Code Excited Linear Prediction ") technology is recommended. To effectively code music sounds, transcoding techniques are recommended.

CELP 유형 인코더는 예측 코더이다. 이들의 목표는 다양한 요소: 음성 트랙(tract)을 모델링하는 단기 선형 예측, 발성 기간 동안 성대의 진동을 모델링하는 장기 예측, 모델링될 수 없는 “혁신”을 나타내기 위해 고정 코드북(codebook)(백색 잡음(white noise), 대수 여기(algebraic excitation))에서 파생된 여기(excitation)를 사용하여 음성 생성을 모델링하는 것이다.The CELP type encoder is a predictive coder. Their goals include the use of fixed codebooks (white noise) to represent various elements: short-term linear predictions modeling vocal tracts, long-term predictions modeling vocal fold vibration during vocalization, and "innovations" (white noise), algebraic excitation, and so on).

MPEG AAC, AAC-LD, AAC-ELD 또는 ITU-T G.722.1 Annex C와 같은 변환 코더는 변환 도메인에서 신호를 압축하기 위해 임계적으로(critically) 샘플링된 변환을 사용한다. “임계 샘플링된 변환(critically sampled transform)"이라는 용어는 각각의 분석된 프레임에서 변환 도메인 내의 계수들의 수가 내 시간 도메인 샘플들의 수와 동일한 변환을 나타낸다.A transcoder such as MPEG AAC, AAC-LD, AAC-ELD or ITU-T G.722.1 Annex C uses a critically sampled transform to compress the signal in the transform domain. The term " critically sampled transform "refers to a transform in which the number of coefficients in the transform domain in each analyzed frame is the same as the number of inner time domain samples.

결합된 음성/음악을 포함하는 신호의 효과적인 코딩을 위한 한가지 해결책은, 적어도 2 개의 코딩 모드들 사이에서 시간에 따라 최상의 기술을 선택하는 것이다: 하나는 CELP 타입이고, 다른 하나는 변환 타입이다.One solution for effective coding of a signal including combined speech / music is to select the best technique over time between at least two coding modes: one is the CELP type and the other is the conversion type.

예를 들어, 코덱 3GPP AMR-WB+ 및 MPEG USAC("통합된 음성 오디오 코딩(Unified Speech Audio Coding)")의 경우이다. AMR-WB+ 및 USAC의 목표(target) 어플리케이션은 대화(conversation)가 아니라, 알고리즘 지연에 대한 심각한 제약 없는 배포 및 저장 서비스에 해당한다.For example, codecs 3GPP AMR-WB + and MPEG USAC ("Unified Speech Audio Coding"). The target application of AMR-WB + and USAC is not a conversation, but a distribution and storage service without serious constraints on algorithm delay.

RM0(참조 모델 0)이라 호칭되는 초기 버전의 USAC 코덱은 M. Neuendorf 외 2009년 5월 7-10 일 개최된 제 126 차 AES 협약의 저 비트율 통합 음성 및 오디오 코딩을 위한 새로운 방안(A Novel Scheme for Low Bitrate Unified Speech and Audio Coding) - MPEG RM0의 글(article)에서 서술된다. 이러한 RM0 코덱은 여러 코딩 모드를 번갈아 나타낸다.An early version of the USAC codec, referred to as RM0 (reference model 0), is described in M. Neuendorf et al., A Novel Scheme for Low Bit Rate Integrated Speech and Audio Coding of the 126th AES Convention, for Low Bitrate Unified Speech and Audio Coding) - Described in MPEG RM0 article. These RM0 codecs alternate between different coding modes.

ㆍ 음성 신호: AMR-WB + 코딩으로부터 도출된 두 가지의 상이한 모드를 포함하는 LPD ("선형 예측 영역(Linear Predictive Domain)") 모드:Voice signal: LPD ("Linear Predictive Domain") mode containing two different modes derived from AMR-WB + coding:

- ACELP 모드- ACELP mode

- FFT 변환을 사용하는 MDCT 변환(AMR-WB+ 코덱과는 달리)을 사용하는 wLPT("가중 선형 예측 변환(weighted Linear Predictive Transform)")이라 호칭되는 TCX(“변환 부호화 기동(Transform Coded Excitation)”) 모드.(&Quot; Transform Coded Excitation ") called wLPT ("weighted linear predictive transform") using MDCT transformations (unlike AMR-WB + codecs) ) mode.

ㆍ 음악 신호: 1024개의 샘플을 사용하는 MPEG AAC ("고급 오디오 코딩(Advanced Audio Coding)") 타입의 MDCT ("수정된 이산 코사인 변환(Modified Discrete Cosine Transform)")에 의한 코딩을 사용하는 FD ("주파수 영역(Frequency Domain)") 모드.ㆍ Music signal: FD () which uses coding by MDCT ("Modified Discrete Cosine Transform") type of MPEG AAC ("Advanced Audio Coding") type using 1024 samples "Frequency Domain") mode.

USAC 코덱에서 LPD와 FD 모드 사이의 전이는 모드 전이시 오류 없이 충분한 품질을 보장하는 데 결정적이다. 각 모드(ACELP, TCX, FD)는 특정 "서명"을 가지며(아티팩트(artifacts)의 관점에서), 상기 FD 및 LPD 모드는 서로 다른 유형이다. FD 모드는 신호 도메인에서 변환 코딩을 기반으로 하며, LPD 모드는 필터 메모리가 적절히 관리되도록 지각적(perceptually) 가중 도메인에서 선형 예측 코딩을 사용한다. USAC RM0 코덱의 모드들 간 전이 관리는 J. Lecomte 외 2009년 5월 7-10 일 개최된 제 126 차 AES 협약의 "LPC 기반 및 비 LPC 기반 오디오 코딩 간 전이을 위한 효율적인 크로스 페이드(cross-fade) 윈도우"의 글(article)에 설명되어 있다. 상기 기사에서 설명되었듯이, 가장 큰 어려움은 LPD에서 FD 모드로의 전이와 그 반대의 경우에 있다. 여기서, CELP에서 FD로 전이하는 경우에 대해서만 논의하도록 한다.The transition between LPD and FD mode in the USAC codec is crucial to guarantee sufficient quality without error in mode transition. Each mode (ACELP, TCX, FD) has a specific "signature" (in terms of artifacts) and the FD and LPD modes are of different types. The FD mode is based on transform coding in the signal domain and the LPD mode uses linear predictive coding in the perceptually weighted domain so that the filter memory is properly managed. Transition management between modes of the USAC RM0 codec is described in J. Lecomte et al., "Effective Cross-fade for LPC-based and Non-LPC-based Audio Coding Transitions," in the 126th AES Convention, Quot; Windows "article. As described in this article, the biggest difficulty is the transition from LPD to FD mode and vice versa. Here, only the case of transition from CELP to FD is discussed.

MDCT가 어떻게 작동하는지 완전히 이해하기 위해, MDCT 변환 코딩의 원칙은 일반적인 개발 사례를 통해 상기된다.To fully understand how MDCT works, the principles of MDCT transform coding are recalled through common development practices.

인코더에서, MDCT 변환은 전형적으로 3 단계로 나누어지며, 신호는 MDCT 코딩 전에 M 샘플들의 프레임들로 세분된다:In the encoder, the MDCT transform is typically divided into three stages, and the signal is subdivided into frames of M samples before MDCT coding:

ㆍ 2M 길이의 "MDCT 윈도우"라 호칭되는 윈도우로 상기 신호의 가중치 지정.• Assigning the weight of the signal to a window called "MDCT window" of 2M length.

ㆍ 길이 M의 블록을 형성하기 위한 시간 영역에서의 폴딩("시간 영역 앨리어싱(aliasing)").Folding in the time domain to form a block of length M ("time domain aliasing").

ㆍ 길이 M의 DCT 변환.ㆍ DCT transformation of length M.

MDCT 윈도우는 M/2의 동일한 길이의 4개의 인접한 부분으로 분할되며, 여기서 상기 분할된 MDCT 윈도우를 "쿼터(quarter)"라 지칭한다.The MDCT window is divided into four contiguous portions of the same length of M / 2, where the partitioned MDCT window is referred to as a "quarter ".

상기 신호에 분석 윈도우(analysis window)가 곱해진 다음, 시간 영역 앨리어싱(aliasing)이 수행된다: 첫 번째 쿼터(윈도우)는 두 번째 쿼터 상에서 앨리어싱(aliase)되고(즉, 시간이 반전되고 중첩됨), 네 번째 쿼터는 세 번째 쿼터 상에서 앨리어싱된다.The signal is multiplied by an analysis window and then time domain aliasing is performed: The first quarter (window) is aliased on the second quarter (i.e., the time reversed and overlapped) , The fourth quota is aliased on the third quota.

보다 구체적으로, 하나의 쿼터의 다른 쿼터에 대한 시간 영역 앨리어싱은 다음과 같은 방식으로 수행된다: 첫 번째 쿼터의 첫 번째 샘플이 두 번째 쿼터의 마지막 샘플에 더해지고(또는 마지막 샘플에서 빼지고), 첫 번째 쿼터의 두 번째 샘플이 두 번째 쿼터의 마지막 샘플 바로 옆에 위치한 샘플에 더해지고(또는 마지막 샘플 바로 옆에 위치한 샘플에서 빼지고) 등, 두 번째 쿼터의 첫 번째 샘플에(에서) 더해지는(빼지는) 첫 번째 쿼터의 마지막 샘플까지 수행된다.More specifically, time-domain aliasing for the other quota of one quota is performed in the following manner: The first sample of the first quota is added to the last sample of the second quota (or subtracted from the last sample) The second sample of the first quota is added to (or added to) the first sample of the second quotient, such as added to (or subtracted from) the sample located immediately next to the last sample of the second quota Subtracted) is performed up to the last sample of the first quota.

따라서, 4개의 쿼터부터 2 개의 앨리어싱된(aliased) 쿼터가 얻어지며 각 샘플은 코딩될 신호의 샘플 2 개를 선형 조합한 결과이다. 이러한 선형 조합은 시간 영역 앨리어싱을 유도한다.Thus, two aliased quotas from four quarters are obtained, with each sample being the result of linear combination of two samples of the signal to be coded. This linear combination leads to time domain aliasing.

이후, 상기 2개의 앨리어싱된 쿼터는 DCT 변환(타입 IV) 후에 공동으로 인코딩된다. 다음 프레임에 대해, 선행(preceding) 프레임의 세 번째 및 네 번째 쿼터는 윈도우의 반만큼(즉, 50% 겹침) 시프트되어 현재 프레임의 첫 번째 및 두 번째 쿼터가 된다. 앨리어싱 후, 선행 프레임에서와 같은 샘플 쌍의 두 번째 선형 조합이 서로 다른 가중치로 전송된다.Thereafter, the two aliased quotas are jointly encoded after the DCT transform (Type IV). For the next frame, the third and fourth quotas of the preceding frame are shifted by half (i.e., 50% overlap) of the window to become the first and second quotas of the current frame. After aliasing, the second linear combination of sample pairs, such as in the preceding frame, is transmitted at different weights.

디코더에서, 역 DCT 변환 후에 이러한 랩핑된 신호의 디코딩된 버전을 획득한다. 두 개의 연속된 프레임은 동일한 쿼터들의 두 개의 서로 다른 중첩의 결과를 포함한다. 즉, 각 샘플 쌍에 대해 서로 다르지만 알려진 가중치(known weights)가 있는 두 개의 선형 조합의 결과를 있음을 의미한다: 따라서, 방정식의 시스템을 풀어 입력 신호의 복호화된 버전이 획득될 수 있고, 시간 영역 앨리어싱이 두 개의 연속된 복호화된 프레임의 사용에 의해 제거될 수 있다.At the decoder, a decoded version of this wrapped signal is obtained after inverse DCT conversion. Two consecutive frames contain the results of two different overlaps of the same quotas. That is, it means that there is a result of two linear combinations with different known weights for each pair of samples: therefore, a system of equations can be solved to obtain a decoded version of the input signal, Aliasing can be eliminated by the use of two consecutive decoded frames.

언급된 방정식 시스템의 해결은 일반적으로 현명하게(judiciously) 선택된 합성(synthesis) 윈도우의 오프닝(opening), 곱셈(multiplication) 후, 두 개의 연속 된 디코딩 된 프레임 사이에서(양자화 오차로 인한 불연속성 없이) 공통 부분을 가산하고 중첩하여 암묵적으로 수행할 수 있다. 실제로 이 연산은 오버랩-추가(overlap-add)처럼 동작한다. 첫 번째 쿼터 또는 네 번째 쿼터에 대한 윈도우의 각 샘플이 0일 때, 윈도우의 그러한 부분에서 시간 영역 앨리어싱 없는 MDCT 변환을 갖는다. 이 경우, MDCT 변환에 의한 부드러운 전이가 제공되지 않으며 예를 들어, 외부의 중첩 가산과 같은 다른 방법에 의해 수행되어야 한다.The solution of the mentioned equation system is generally that of opening and multiplication of the synthesis window chosen judiciously, and between two consecutive decoded frames (without discontinuity due to quantization error) common It can be performed implicitly by adding and overlapping parts. In fact, this operation behaves like an overlap-add. When each sample of the window for the first or fourth quota is zero, it has an MDCT transformation without time-domain aliasing in that part of the window. In this case, a smooth transition due to the MDCT transformation is not provided and it must be performed by other methods, such as an external overlap addition.

변환될 블록의 시간 영역 앨리어싱 방법과 관련하여, MDCT 변환 특히, DCT 변환의 정의의 변형된 구현이 존재한다는 점에 유의해야 한다(예를 들어, 왼쪽 및 오른쪽으로 앨리어싱된 쿼터에 적용된 부호를 반전할 수 있고, 두 번째 및 세 번째 쿼터는 첫 번째 및 네 번째 쿼터에 각각 앨리어싱될 수 있다). 이러한 변형은 윈도잉(windowing), 시간 영역 앨리어싱, 그리고 변환 및 최종적인 윈도잉, 앨리어싱 및 오버랩-추가(overlap-add)에 의한 샘플 블록 축소를 통한 합성에 관한 MDCT 분석(analysis)의 원리를 바꾸지 않는다.It should be noted that, with respect to the time domain aliasing method of the block to be transformed, there is a modified implementation of the MDCT transform, in particular the definition of the DCT transform (for example, reversing the sign applied to the left and right aliased quota , And the second and third quotas may be aliased respectively to the first and fourth quotas). These transformations change the principles of MDCT analysis on windowing, time domain aliasing, and synthesis through transformation and sample block reduction by final windowing, aliasing, and overlap-add Do not.

Lecomte 등의 논문에 기술된 USAC RM0 코더의 경우, ACELP 코딩에 의해 코딩된 프레임과 FD 코딩에 의해 코딩된 프레임 간의 전이(transition)는 다음과 같은 방식으로 수행된다:In the case of the USAC RM0 coder described in a paper by Lecomte et al., The transition between a frame coded by ACELP coding and a frame coded by FD coding is performed in the following manner:

FD 모드의 전이 윈도우(window)는 128개 샘플의 좌측에 중첩되어 사용된다.The transition window of the FD mode is used superimposed on the left side of 128 samples.

이 중첩 영역에 대한 시간 영역 앨리어싱은 재구성된 ACELP 프레임의 오른쪽에 인위적인(artificial) 시간 영역 앨리어싱을 도입함으로써 취소된다. 전이에 사용되는 MDCT 윈도우는 2304 샘플의 크기를 가지며 DCT 변환은 1152 샘플에서 작동하지만 보통 FD 모드 프레임은 2048 샘플의 크기를 가지는 윈도우와 1024 샘플의 DCT 변환으로 코딩된다. 따라서, 일반 FD 모드의 MDCT 변환은 전이 윈도우에 직접적으로 사용될 수 없으므로, 코더는 FD 모드에 대한 전이 구현을 복잡하게 하는 이 변환의 수정된 버전을 통합해야 한다.Time domain aliasing for this overlap region is canceled by introducing artificial time domain aliasing to the right of the reconstructed ACELP frame. The MDCT window used for the transition has a size of 2304 samples and the DCT transform operates on 1152 samples, but the FD mode frame is usually coded with a DCT transform of 1024 samples with a window size of 2048 samples. Thus, since the MDCT transform in normal FD mode can not be used directly in the transition window, the coder must incorporate a modified version of this transform that complicates the transition implementation for FD mode.

이러한 지연은 코딩 지연이 일반적으로 모바일 애플리케이션(예를 들어, GSM EFR, 3GPP AMR 및 AMR-WB)의 음성 코더의 경우 20-25 ms 정도이고 화상 회의(예를 들어, UIT-T G.722.1 Annex C 및 G.719)의 대화식 변환 코더의 경우 40 ms 정도로서, 대화식 애플리케이션과 호환되지 않는다. 게다가, 때때로 DCT 변환의 크기(2304 vs 2048)를 늘리면 전이의 순간에 복잡성이 극심해진다.This delay is such that the coding delay is typically about 20-25 ms for voice coders of mobile applications (e.g., GSM EFR, 3GPP AMR and AMR-WB) and videoconferencing (e.g., UIT-T G.722.1 Annex C and G.719) is about 40 ms, which is not compatible with interactive applications. In addition, increasing the size of the DCT transform (2304 vs 2048) from time to time increases complexity at the moment of transition.

이러한 단점을 극복하기 위해, 본 출원에서 참고 문헌으로 편입된 국제 특허 출원 WO2012/085451은 전이 프레임(transition frame)을 코딩하는 새로운 방법을 제공한다. 상기 전이 프레임은 예측 코딩에 의해 코딩된 선행 프레임의 다음에 변환 코딩된 현재 프레임으로 정의된다. 위에서 언급된 신규한 방법에 따르면, 전이 프레임의 일부분, 예를 들어, 12.8kHz에서 코어(core) CELP 코딩의 경우 5ms의 서브-프레임 및 12.7kHz에서 코어 CELP 코딩의 경우 각각 4ms의 2개의 추가 CELP 프레임들은 선행 프레임의 예측 코딩보다 더 제한된 예측 코딩에 의해 인코딩된다.To overcome this drawback, International patent application WO2012 / 085451, incorporated herein by reference, provides a novel method of coding a transition frame. The transition frame is defined as the next transform coded current frame of the preceding frame coded by predictive coding. According to the novel method mentioned above, a part of the transition frame, for example a sub-frame of 5 ms for core CELP coding at 12.8 kHz and two additional CELPs of 4 ms each for core CELP coding at 12.7 kHz The frames are encoded by a more limited predictive coding than the prediction coding of the preceding frame.

제한된 예측 코딩은, 예를 들어, 선형 예측 필터의 계수와 같은 예측 코딩에 의해 인코딩된 선행 프레임의 안정된 파라미터를 사용하고, 변환 프레임에서 추가적인 서브-프레임에 대한 몇 개의 최소 파라미터만을 코딩하는 것으로 구성된다.The limited predictive coding consists of using stable parameters of the preceding frame encoded by predictive coding, such as, for example, coefficients of a linear prediction filter, and coding only a few minimum parameters for additional sub-frames in the transform frame .

선행 프레임이 변환 코딩으로 인코딩되지 않았기 때문에, 프레임의 첫 번째 부분에서 시간 영역 앨리어싱을 복구(undo)할 수 없다. 앞서 인용된 특허 출원 WO2012/085451은 정상적으로 폴딩된(normally-folded) 첫 번째 쿼터에서 시간 영역 앨리어싱을 갖지 않도록 MDCT 윈도우의 첫 번째 절반(half)을 수정하는 것을 제안한다. 또한, 분석/합성(analysis/synthesis) 윈도우의 계수를 변경하는 동안, 디코딩된 CELP 프레임과 디코딩된 MDCT 프레임 사이의 중첩-가산(overlap-add)("크로스-페이드(cross-fade)"라고도 함)의 일부를 통합하는 것을 제안한다. 상기 특허 출원의 도 4e를 참조하면, 파선(교차하는 점 및 대시(dash))은 MDCT 인코딩의 폴딩(folding) 선(도면 상단) 및 MDCT 디코딩의 전개(unfolding) 선(도면 하단)에 해당한다. 위 도면에서 굵은 선은 인코더로 들어가는 새 샘플들의 프레임을 분리한다. 새로운 MDCT 프레임의 인코딩은 새로운 입력 샘플의 이렇게 정의된 프레임을 완전히 사용 가능할 때 시작할 수 있다. 상기 인코더에서 이러한 굵은 선은 현재 프레임이 아닌 각 프레임에 대해 새롭게 수신되는(incoming) 샘플 블록에 해당한다는 점에 주의해야 한다. 현재 프레임은 미리 보기(lookahead)에 해당하는 5ms만큼 실제로 지연된다. 도면 하단에서, 굵은 선은 디코더 출력에서 디코딩된 프레임을 분리한다.Since the preceding frame is not encoded with transcoding, time-domain aliasing can not be undone in the first part of the frame. The above-cited patent application WO2012 / 085451 proposes modifying the first half of the MDCT window so that it does not have time-domain aliasing in the first normally-folded quota. Also, while changing the coefficients of the analysis / synthesis window, overlap-add (also referred to as "cross-fade") between the decoded CELP frame and the decoded MDCT frame ). ≪ / RTI > 4E of the above patent application, the dashed line (intersecting dots and dash) corresponds to the folding line (top of drawing) of MDCT encoding and the unfolding line (bottom of drawing) of MDCT decoding . The bold line in the above figure separates the frames of new samples into the encoder. The encoding of the new MDCT frame can begin when the thus defined frame of the new input sample is fully usable. Note that this bold line in the encoder corresponds to the incoming sample block for each frame rather than the current frame. The current frame is actually delayed by 5ms corresponding to the lookahead. At the bottom of the figure, the bold line separates the decoded frame at the decoder output.

인코더에서, 전이(transition) 윈도우는 폴딩(folding) 포인트까지 0이다. 따라서, 접힌(folded) 윈도우의 좌측 사이드(side)의 계수는 펼쳐진(unfolded) 윈도우의 계수와 동일하다. 폴딩 포인트와 CELP 전이 서브 프레임(TR)의 끝 사이의 부분은 사인(sine)(하프(half)) 윈도우에 해당한다. 디코더에서, 펼쳐진 후, 동일한 윈도우가 신호에 적용된다. 폴딩 포인트와 MDCT 프레임의 시작 부분 사이의 세그먼트에서 윈도우의 계수는 sin^2 타입(type)의 윈도우에 해당한다. 디코딩된 CELP 서브 프레임과 MDCT로부터의 신호 사이의 중첩-가산(overlap-add)을 달성하기 위해, CELP 서브 프레임의 오버랩(overlap) 부분에 cos^2 타입의 윈도우를 적용하고, MDCT 프레임과 함께 후자(latter)를 부가하는 것으로 충분하다. 이 방법은 완벽한 재구성(reconstruction)을 제공한다.In the encoder, the transition window is 0 until the folding point. Thus, the coefficient of the left side of the folded window is the same as the coefficient of the unfolded window. The portion between the folding point and the end of the CELP transition sub-frame (TR) corresponds to a sine (half) window. In the decoder, after being expanded, the same window is applied to the signal. The window count in the segment between the folding point and the beginning of the MDCT frame corresponds to a window of type sin ^ 2. In order to achieve overlap-add between the decoded CELP subframe and the signal from the MDCT, a window of the cos < 2 > type is applied to the overlap portion of the CELP subframe, it is sufficient to add the latter. This method provides a perfect reconstruction.

그러나, 출원 WO2012/085451은 고전(classic) 프레임을 코딩하는 CELP에 대한 요구되는 예산(budget)에 대응하는 CELP 서브 프레임을 단일 서브 프레임으로 부호화하기 위해 비트 예산 Btrans를 할당하는 것을 제공한다. 전이 프레임의 변환 코딩에 대한 나머지 예산은 불충분하며 낮은 레이트(rate)에서 품질 저하를 초래할 수 있다.However, application WO2012 / 085451 provides for allocating a bit budget Btrans for coding a CELP subframe corresponding to a required budget for CELP coding a classic frame into a single subframe. The remaining budget for transform coding of the transition frame is insufficient and can lead to quality degradation at a low rate.

본 발명은 상기 상황을 개선한다.The present invention improves the situation.

이러한 목적을 위해, 본 발명의 첫 번째 양상은 전이 프레임을 코딩하기 위한 비트들의 분포를 결정하는 방법에 관한 것이다. 이러한 방법은 디지털 신호를 코딩/디코딩하기 위한 코더/디코더에서 구현된다. 상기 전이 프레임은 예측 코딩된 선행 프레임에 선행되고, 상기 전이 프레임을 코딩하는 단계는, 상기 전이 프레임의 단일 서브 프레임을 변환 코딩 및 예측 코딩하는 단계를 포함한다. 상기 방법은 다음 단계를 더 포함한다.To this end, a first aspect of the invention relates to a method for determining the distribution of bits for coding a transition frame. This method is implemented in a coder / decoder for coding / decoding a digital signal. Wherein the transition frame is preceded by a predictive coded preceding frame, and wherein coding the transition frame comprises transform coding and predictive coding of a single sub-frame of the transition frame. The method further comprises the following steps.

- 상기 전이 서브 프레임의 예측 코딩을 위한 비트 레이트를 할당하되, 상기 비트 레이트는 제 1 미리 결정된 비트 레이트 값과 상기 전이 프레임을 변환 코딩하기 위한 상기 비트 레이트 사이의 최소 값과 동일한 단계;Allocating a bit rate for predictive coding of the transition subframe, the bit rate being equal to a minimum value between a first predetermined bit rate value and the bit rate for transform coding the transition frame;

- 상기 비트 레이트를 위한 상기 전이 서브 프레임을 예측 코딩하기 위하여 할당된 제 1 비트 수를 결정하는 단계; 및- determining a first number of bits allocated for predicting the transition sub-frame for the bit rate; And

- 상기 전이 프레임 코딩을 위하여 가능한 비트 수와 상기 할당된 제 1 비트로부터, 상기 전이 프레임을 변환 코딩 하기 위하여 할당된 제 2 비트 수를 계산하는 단계.- calculating the number of possible bits for the transition frame coding and the number of second bits allocated for transcoding the transition frame from the assigned first bit.

다른 실시예에서, 코더/디코더는 제 1 주파수에서 신호 프레임을 예측 코딩/디코딩하기 위한 제 1 코어 동작 및 제 2 주파수에서 신호 프레임을 예측 코딩/디코딩하기 위한 제 2 코어 동작을 포함한다. 제 1 미리 결정된 비트 레이트 값은 예측 코딩된 선행 프레임을 코딩/디코딩하기 위한 제 1 코어 동작 및 제 2 코어 동작으로부터 선택된 코어에 의존한다.In another embodiment, the coder / decoder includes a first core operation for predicting / decoding a signal frame at a first frequency and a second core operation for predicting / decoding a signal frame at a second frequency. The first predetermined bit rate value depends on the core selected from the first core operation and the second core operation for coding / decoding the predictive coded preceding frame.

일 실시예에서, 예측 코딩된 선행 프레임을 코딩/디코딩하기 위하여 상기 제 1 코어가 선택되었을 때, 할당된 비트 레이트는 또한 변환 코딩된 전이 프레임의 상기 비트 레이트와 적어도 하나의 제 2 미리 결정된 비트 레이트 값 사이의 최대 값과 동일하고, 상기 제 2 미리 결정된 비트 레이트 값은 상기 제 1 미리 결정된 비트 레이트 값보다 작다. In one embodiment, when the first core is selected to code / decode a predictive-coded preceding frame, the assigned bit rate is also associated with the bit rate of the transform-coded transition frame and at least one second predetermined bit rate Value and the second predetermined bit rate value is less than the first predetermined bit rate value.

다른 실시예에서, 디지털 신호는 적어도 하나의 저 대역 주파수와 고 대역 주파수로 분해된다. 이 상황에서, 상기 계산된 제 1 비트수는, 상기 저 대역 주파수에 대한 상기 전이 서브 프레임을 예측 코딩하기 위하여 할당된다. 제3 미리 결정된 비트 수는 상기 고 대역 주파수에 대한 상기 전이 서브 프레임을 코딩하기 위하여 할당된다. 또한, 상기 전이 프레임을 변환 코딩하기 위하여 할당되는 상기 제2 비트수는 상기 제3 미리 결정된 비트수로부터 결정된다. In another embodiment, the digital signal is decomposed into at least one low band frequency and a high band frequency. In this situation, the calculated first number of bits is allocated to predictively code the transition sub-frame for the low-band frequency. A third predetermined number of bits is allocated to code the transition subframe for the highband frequency. In addition, the second number of bits allocated for transcoding the transition frame is determined from the third predetermined number of bits.

일 실시예에서, 전이 프레임을 코딩하기 위하여 이용 가능한 비트들의 수는 고정되어 있다. In one embodiment, the number of bits available for coding the transition frame is fixed.

다른 실시예에서, 제 2 비트 수는 전이 프레임을 코딩하기 위해 고정된 비트 수에서 제 1 비트 수를 빼고, 제 3 비트 수를 뺀 값과 동일하다. 따라서, 전이 프레임에서 비트 분포의 최종 결정은 코딩을 단순화하는 전체 값을 빼는 것으로 제한된다.In another embodiment, the second number of bits is equal to the number of fixed bits minus the first number of bits minus the third number of bits to code the transition frame. Thus, the final determination of the bit distribution in the transition frame is limited to subtracting the overall value, which simplifies the coding.

대안으로, 제 2 비트 수는 전이 프레임을 코딩하기 위해 고정된 비트 수에서 상기 제 1 비트수를 빼고, 상기 제 3 비트 수를 빼고, 제 1 비트 및 제 2 비트를 뺀 값과 동일하다. 제 1 비트는 상기 전이 서브 프레임의 상기 예측 코딩의 파라미터들을 결정할 때 저역 통과 필터 필터링이 수행되는지 여부를 나타내고, 상기 파라미터들은 토널 리드 타임(tonal lead time)과 관련된다. 상기 제 2 비트는 상기 전이 서브 프레임을 예측 코딩/디코딩을 위하여 상기 코더/디코더에 의하여 사용된 주파수를 나타낸다.Alternatively, the second number of bits is equal to subtracting the first number of bits from the fixed number of bits, subtracting the third number of bits, and subtracting the first and second bits to code the transition frame. The first bit indicates whether low pass filter filtering is performed when determining the parameters of the predictive coding of the transition sub-frame, and the parameters are related to the tonal lead time. And the second bit indicates the frequency used by the coder / decoder for predictive coding / decoding the transition subframe.

본 발명의 두 번째 양상은 예측 코딩 또는 변환 코딩에 따라 신호 프레임을 코딩할 수 있는 코더에서 디지털 신호를 코딩하는 방법에 관한 것으로서, 다음 단계를 포함한다:A second aspect of the present invention is directed to a method of coding a digital signal in a coder capable of coding a signal frame in accordance with predictive coding or transform coding, the method comprising the steps of:

* 예측 코딩에 따라 디지털 신호 샘플들의 선행하는 프레임 (301)을 코딩하는 단계;Coding the preceding frame (301) of digital signal samples according to predictive coding;

* 디지털 신호 샘플들의 현재 프레임을 전이 프레임으로 코딩하는 단계를 포함하되, 상기 전이 프레임을 코딩하는 단계는 상기 전이 프레임의 단일 서브 프레임 변환 코딩 및 예측 코딩하는 단계를 포함하고, 상기 현재 프레임을 코딩하는 단계는 아래의 서브 단계들을 포함하되, 상기 서브 단계들은;Coding the current frame of digital signal samples into a transition frame, wherein the step of coding the transition frame comprises a single sub-frame transform coding and a predictive coding of the transition frame, Wherein the steps comprise the following sub-steps:

- 상기 청구 범위들 중 하나에 따라 비트들의 분포를 결정하는 단계;Determining a distribution of bits according to one of the claims;

- 상기 할당된 제 2 비트 수에 대해 상기 전이 프레임을 코딩 변환하는 단계;Coding the transition frame for the allocated second number of bits;

- 상기 전이 서브 프레임 및 상기 할당된 제 1 비트 수를 예측 코딩하는 단계를 포함한다.And predicting the transition sub-frame and the allocated first number of bits.

일 실시예에서, 예측 코딩은 전이 프레임에서 비트들의 분포 동안 할당된 비트 레이트에 대한 결정된 예측 코딩 파라미터들을 생성하는 단계를 포함한다. 이러한 예측 파라미터의 사용은 예측 코딩을 위해 할당된 비트 레이트와 변환 코딩을 위해 할당된 나머지 레이트 사이의 비율을 최적화하고, 따라서 재구성된 신호의 품질을 최적화한다. 실제로, 일정한 품질에서, 상기 예측 파라미터 또는 다른 예측 파라미터에 대해 귀속된 비트의 수는 예측 코딩을 위해 할당된 비트 레이트에 대해 비선형 비율로 변할 수 있다.In one embodiment, predictive coding comprises generating determined predictive coding parameters for an assigned bit rate during distribution of bits in a transition frame. The use of such predictive parameters optimizes the ratio between the bit rate allocated for predictive coding and the remaining rate allocated for transform coding, thus optimizing the quality of the reconstructed signal. Indeed, at a constant quality, the number of bits attributed to the predictive parameter or other predictive parameter may vary at a non-linear rate relative to the bit rate allocated for predictive coding.

다른 실시예에서, 예측 코딩하는 단계는 선행 프레임의 예측 코딩을 위해 적어도 하나의 파라미터를 재사용하여 상기 선행 프레임을 예측 코딩하는 것과 관련하여 제한된 예측 코딩 파라미터들을 생성하는 단계를 포함한다. 따라서, 디코딩시 선행 프레임으로부터 부가 정보가 추출되어, 전이 서브 프레임을 디코딩하여 디코딩을 완료한다. 이는 전이 서브 프레임을 예측 코딩하기 위해 예약되어야 하는 비트의 수를 감소시킨다.In another embodiment, the step of predictive coding comprises generating constrained predictive coding parameters associated with predicting the preceding frame by reusing at least one parameter for predictive coding of the preceding frame. Therefore, additional information is extracted from the preceding frame in decoding, and the transition is completed by decoding the transition sub-frame. This reduces the number of bits that must be reserved for predictive coding of the transition subframe.

선행 프레임으로부터 재사용 파라미터들의 조합 및 전이 프레임의 변환 코딩을 위한 비트 레이트를 할당하는 것은 저비용으로 일관된 전이를 보장한다.Allocating the bit rate for the combination of reuse parameters from the preceding frame and the transform coding of the transition frame ensures low cost consistent transitions.

본 발명의 세 번째 양상은, 예측 코딩 및 변환 코딩에 의해 코딩된 디지털 신호를 디코딩하는 방법에 관한 것으로, 다음의 단계를 포함한다:A third aspect of the present invention relates to a method for decoding a coded digital signal by predictive coding and transform coding, the method comprising the steps of:

* 예측 코딩에 따라 코딩된 디지털 신호 샘플들의 선행 프레임을 예측 디코딩하는 단계;Predicting and decoding a preceding frame of digital signal samples coded according to predictive coding;

* 상기 전이 프레임을 디코딩하고 디지털 신호 샘플들의 현재 프레임을 코딩하고, 상기 전이 프레임을 코딩하는 단계는, 상기 전이 프레임의 단일 서브 프레임을 변환 코딩 및 예측 코딩하는 단계를 포함하고, 아래의 서브 단계들을 포함하되, 상기 서브 단계는:Decoding the transition frame and coding a current frame of digital signal samples and coding the transition frame comprises transform coding and predictive coding of a single subframe of the transition frame, The sub-step comprising:

- 본 발명의 제 1 양상에 따른 방법에 의해 비트들의 분포를 결정하는 단계;Determining a distribution of bits by a method according to the first aspect of the present invention;

- 상기 할당된 제 비트 수에 대한 상기 전이 서브 프레임을 예측 디코딩하는 단계;Predicting and decoding the transition sub-frame with respect to the allocated number of bits;

- 상기 할당된 제 2 비트 수에 대해 상기 전이 프레임을 변환 디코딩하는 단계를 더 포함한다.- transforming and decoding the transition frame for the allocated second number of bits.

전술한 바와 같이, 전이 프레임에서 비트의 분포를 결정하는 방법은 디코더에서 직접적으로 재현 가능하다. 실제로, 비트의 분포는 오직 전이의 변환 코딩된 부분의 비트 레이트로부터 결정된다. 따라서, 비트의 분포를 결정하는 단계를 구현하기 위해 여분의 비트가 필요하지 않으며 대역폭 절약이 이루어진다.As described above, the method of determining the distribution of bits in the transition frame is directly reproducible in the decoder. Indeed, the distribution of the bits is determined only from the bit rate of the transform coded portion of the transition. Thus, no extra bits are needed to implement the step of determining the distribution of bits and bandwidth savings are achieved.

본 발명의 네 번째 양상은, 명령들이 프로세서에 의해 실행될 때, 전술한 본 발명의 양상에 따른 방법을 구현하기 위한 명령들을 포함하는 컴퓨터 프로그램을 추가 목표로 한다.A fourth aspect of the present invention is directed to a computer program comprising instructions for implementing a method in accordance with aspects of the present invention as described above when the instructions are executed by a processor.

본 발명의 다섯 번째 양상은, 전이 프레임을 코딩하기 위한 비트들의 분포를 결정하기 위한 장치에 관한 것으로서, 상기 장치는 디지털 신호를 코딩/디코딩하기 위한 코더/디코더에서 구현되고, 상기 전이 프레임은 예측 코딩된 선행 프레임에 의해 선행되고, 상기 전이 프레임을 코딩하는 단계는 단일 서브 프레임을 변환 코딩 및 예측 코딩하는 단계를 포함하고, 상기 전이 프레임을 코딩하기 위한 상기 비트들의 수는 고정되고, 상기 장치는 다음 동작들을 수행하도록 배열된 프로세서를 포함한다:A fifth aspect of the present invention relates to an apparatus for determining a distribution of bits for coding a transition frame, the apparatus being implemented in a coder / decoder for coding / decoding a digital signal, Wherein the step of coding the transition frame comprises transcoding and predecoding a single subframe, the number of bits for coding the transition frame is fixed, and the device is next And a processor arranged to perform the operations:

- 상기 전이 서브 프레임을 예측 코딩하기 위한 비트 레이트를 할당하되, 상기 비트 레이트는 상기 전이 프레임을 변환 코딩하기 위한 비트 레이트와 제 1 미리 결정된 비트 레이트 값 사이의 최소값과 동일하고;Allocating a bit rate for predicting the transition subframe, the bit rate being equal to a minimum value between a bit rate for transform coding the transition frame and a first predetermined bit rate value;

- 상기 비트 레이트에 대한 상기 전이 서브 프레임을 예측 코딩하기 위해 할당된 제 1 비트 수를 결정하고;Determining a first number of bits allocated for predicting the transition sub-frame for the bit rate;

- 상기 코딩 파라미터들을 코딩하는데 필요한 비트 수 및 상기 전이 프레임을 코딩하기 위한 상기 고정 된 비트 수로부터 상기 전이 프레임을 변환 코딩하기 위해 할당된 제 2 비트 수를 계산한다.- calculate a second number of bits allocated for transcoding the transition frame from the number of bits needed to code the coding parameters and the number of fixed bits for coding the transition frame.

본 발명의 여섯 번째 양상은, 예측 코딩 또는 변환 코딩에 따라 디지털 신호 프레임들을 코딩할 수 있는 코더를 추가 목표로 하며, 상기 코더는;A sixth aspect of the present invention is directed to a coder capable of coding digital signal frames in accordance with predictive coding or transform coding, the coder comprising:

* 상기 본 발명의 다섯 번째 양상에 따른 장치;An apparatus according to the fifth aspect of the present invention;

* 다음의 동작을 수행하도록 구성된 프로세서를 포함하는 예측 코더를 포함하되, 상기 동작은:A prediction coder comprising a processor configured to perform the following operations, the operation comprising:

- 예측 코딩에 따라 디지털 신호 샘플들의 선행 프레임을 코딩하고;- code the preceding frame of digital signal samples according to prediction coding;

- 전이 프레임에 포함된 단일 서브 프레임을 예측 코딩하고, 디지털 신호 샘플들의 현재 프레임을 코딩하고, 상기 전이 프레임을 코딩하되, 상기 서브 프레임을 변환 코딩 또는 예측 코딩하는 동작을 포함하고, 상기 프로세서는 상기 할당된 제 1 비트 수의 전이 서브 프레임을 예측 코딩하기 위해 배열되고;- coding the current frame of digital signal samples, and coding the transition frame, wherein said transform coding or predictive coding of the single sub-frame contained in the transition frame comprises the steps of: Arranged for predicting the assigned first number of transition subframes;

* 상기 할당된 제 2 비트 수에서 상기 전이 프레임을 변환 코딩하는 동작을 수행하도록 배치된 프로세서를 포함하는 변환 코더를 포함한다.And a transform coder comprising a processor arranged to perform an operation of transform-coding the transition frame at the allocated second number of bits.

본 발명의 일곱 번째 양상은, 예측 코딩 및 변환 코딩에 의해 코딩된 디지털 신호에 대한 디코더를 추가 목표로 하며, 상기 디코더는:A seventh aspect of the present invention is directed to a decoder for a digital signal coded by predictive coding and transform coding, the decoder comprising:

* 본 발명의 다섯 번째 양상에 따른 장치;A device according to the fifth aspect of the present invention;

* 다음의 동작을 수행하도록 구성된 프로세서를 포함하는 예측 디코더를 포함하되, 상기 동작은;A prediction decoder including a processor configured to perform the following operations:

- 예측 코딩에 따라 코딩된 디지털 신호 샘플들의 선행 프레임을 예측 디코딩하고;Predicting and decoding the preceding frame of the coded digital signal samples according to predictive coding;

- 전이 프레임에 포함된 단일 서브 프레임을 예측 디코딩하고, 디지털 신호 샘풀들의 현재 프레임을 코딩하고, 상기 전이 프레임을 코딩하고, 상기 서브 프레임을 예측 코딩하고 변환 코딩하되, 상기 할당된 제 1 비트 수의 상기 전이 서브 프레임을 예측 디코딩하는 연산을 수행하도록 배치하고,- predicting and decoding a single subframe included in a transition frame, coding a current frame of digital signal samples, coding the transition frame, predictively coding and transform coding the subframe, Arranging to perform an operation of predicting and decoding the transition sub-frame,

* 상기 할당된 제 2 비트 수에 대해 상기 전이 프레임을 전이 변환 코딩하는 동작을 수행하도록 배치된 프로세서를 포함하는 변환 디코더를 포함한다.And a transposition decoder including a processor arranged to perform an operation of performing a transition transform coding of the transition frame with respect to the allocated second number of bits.

본 발명은 함께 믹싱되거나(mixed) 번갈아가면서 믹싱되는 음성(speech) 및 음악(music)을 포함할 수 있는 사운드를 코딩/디코딩하는 데 유리하게 적용된다.The present invention is advantageously applied to coding / decoding sounds that may include mixed speech and audio mixed together.

본 발명에 따르면, 예측 코딩 비트 레이트는 최대 값에 의해 억제된다. 예측 코딩에 할당된 비트 수는 이러한 비트 전송률에 따라 다르다. 비트 레이트가 약해짐에 따라, 코딩을 위해 할당되는 비트의 수가 더 적기 때문에, 전이 프레임 변환 코딩을 위한 최소 잔여 예산이 보장된다.According to the present invention, the predictive coding bit rate is suppressed by the maximum value. The number of bits allocated to predictive coding depends on these bit rates. As the bit rate is weaker, the minimum remaining budget for transition frame transform coding is guaranteed, since the number of bits allocated for coding is less.

또한, 생성된 신호의 일관성은 향상되어, 코딩(채널 코딩) 및 디코더에서 수신된 프레임을 프로세싱하는 후속 단계를 단순화한다.In addition, the consistency of the generated signal is improved, simplifying the coding (channel coding) and the subsequent steps of processing the received frame at the decoder.

또한, 상이한 코딩된 프레임들 사이에서 너무 큰 레이트 차이를 방지하기 위해 최소 비트 레이트가 보장된다. Also, a minimum bit rate is guaranteed to prevent too large rate differences between different coded frames.

또한, 디코딩시 복원된 신호의 품질을 희생함 없이 입력 신호의 전체 주파수 스펙트럼을 효율적으로 코딩하는 것이 가능하다.It is also possible to efficiently code the entire frequency spectrum of the input signal without sacrificing the quality of the recovered signal during decoding.

또한, 전이 프레임을 코딩하기 위하여 이용 가능한 비트들의 수는 고정되어 있다. 이는 코딩 단계의 복잡성을 줄인다.In addition, the number of available bits for coding the transition frame is fixed. This reduces the complexity of the coding step.

또한, 예측 코딩/디코딩을 위하여 상기 코더/디코더에 의하여 사용된 주파수를 나타냄으로써, 보다 유연한 코딩을 허용한다.It also permits more flexible coding by indicating the frequency used by the coder / decoder for predictive coding / decoding.

또한, 비트 분포를 결정하는 것은 디코더에서 재생 가능하며, 이러한 분배에 관한 정보의 명시적인 전송을 방지한다.Also, determining the bit distribution is reproducible in the decoder and prevents explicit transmission of information about this distribution.

또한, 이러한 코딩은 이 전이 프레임 내에서 예측 코딩과 변환 코딩 간의 균형 잡힌 분배를 보장한다.In addition, such coding ensures a balanced distribution between predictive coding and transform coding within this transition frame.

또한, 재구성된 신호의 품질을 최적화한다. 실제로, 일정한 품질에서, 상기 예측 파라미터 또는 다른 예측 파라미터에 대해 귀속된 비트의 수는 예측 코딩을 위해 할당된 비트 레이트에 대해 비선형 비율로 변할 수 있다.It also optimizes the quality of the reconstructed signal. Indeed, at a constant quality, the number of bits attributed to the predictive parameter or other predictive parameter may vary at a non-linear rate relative to the bit rate allocated for predictive coding.

또한, 디코딩시 선행 프레임으로부터 부가 정보가 추출되어, 전이 서브 프레임을 디코딩하여 디코딩을 완료한다. 이는 전이 서브 프레임을 예측 코딩하기 위해 예약되어야 하는 비트의 수를 감소시킨다.Further, additional information is extracted from the preceding frame in decoding, and the decoding is completed by decoding the transition sub-frame. This reduces the number of bits that must be reserved for predictive coding of the transition subframe.

선행 프레임으로부터 재사용 파라미터들의 조합 및 전이 프레임을 변환 코딩을 위한 비트 레이트를 할당하는 것은 저비용으로 일관된 전이를 보장한다.Assigning a combination of reuse parameters from the preceding frame and a bit rate for transcoding the transition frame ensures a low cost consistent transition.

전술한 바와 같이, 전이 프레임에서 비트의 분포를 결정하는 방법은 디코더에서 직접적으로 재현 가능하다. 실제로, 비트의 분포는 오직 전이의 변환 코딩된 부분의 비트 레이트로부터 결정된다. 따라서, 비트의 분포를 결정하는 단계를 구현하기 위해 여분의 비트가 필요하지 않으며 대역폭 절약이 이루어진다.As described above, the method of determining the distribution of bits in the transition frame is directly reproducible in the decoder. Indeed, the distribution of the bits is determined only from the bit rate of the transform coded portion of the transition. Thus, no extra bits are needed to implement the step of determining the distribution of bits and bandwidth savings are achieved.

본 발명의 다른 특징 및 이점은 이하의 상세한 설명 및 첨부 도면을 검토할 때 나타날 것이다.
도 1은 본 발명의 일 실시예에 따른 오디오 코더를 도시한다.
도 2는 본 발명의 일 실시예에 따른 도 1의 오디오 코더에 의해 구현되는 코딩 방법의 단계들을 나타내는 다이어그램이다.
도 3은 본 발명의 일 실시예에 따른 CELP 프레임과 MDCT 프레임간의 전이를 도시한다.
도 4는 본 발명의 일 실시예에 따른 전이 프레임을 코딩하기 위한 비트들의 분포를 결정하는 방법의 단계들을 나타내는 다이어그램이다.
도 5는 본 발명의 일 실시예에 따른 오디오 디코더를 도시한다.
도 6은 본 발명의 일 실시예에 따른 도 5의 오디오 디코더에 의해 구현되는 디코딩 방법의 단계들을 나타내는 다이어그램이다.
도 7은 본 발명의 일 실시예에 따른 전이 프레임 내 비트들의 분포를 결정하기 위한 장치를 도시한다.
Other features and advantages of the invention will appear when the following detailed description and accompanying drawings are considered.
1 illustrates an audio coder according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating steps of a coding method implemented by the audio coder of FIG. 1 according to an embodiment of the present invention.
Figure 3 illustrates the transition between a CELP frame and an MDCT frame in accordance with an embodiment of the present invention.
4 is a diagram illustrating steps of a method for determining a distribution of bits for coding a transition frame according to an embodiment of the present invention.
5 illustrates an audio decoder according to an embodiment of the present invention.
FIG. 6 is a diagram illustrating steps of a decoding method implemented by the audio decoder of FIG. 5 according to an embodiment of the present invention.
Figure 7 illustrates an apparatus for determining the distribution of bits in a transition frame according to an embodiment of the invention.

도 1은 본 발명의 일 실시예에 따른 오디오 코더(100)를 도시한다.Figure 1 illustrates an audio coder 100 in accordance with an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른, 도 1의 오디오 코더 100에 의해 구현되는 코딩 방법의 단계들을 도시하는 다이어그램이다.FIG. 2 is a diagram illustrating the steps of a coding method implemented by the audio coder 100 of FIG. 1, in accordance with an embodiment of the invention.

코더(100)은 201 단계에서 주어진 주파수 fs(예를 들어, 8, 16, 32 또는 48kHz)에서 샘플을 수신하고, 예를 들어 20ms의 서브 프레임으로 분해되는 수신 유닛(101)을 포함한다.The coder 100 includes a receiving unit 101 that receives samples at a given frequency fs (e.g., 8, 16, 32 or 48 kHz) in step 201 and is decomposed into sub-frames, for example 20 ms.

현재 프레임을 수신하면, 전처리 유닛(pre-processing unit)(102)은 적어도 하나의 LPD 모드와 FD 모드 사이에서 현재 프레임을 코딩하기 가장 적합한 코딩 모드를 202 단계에서 선택할 수 있다. 이하의 설명에서, 예시적인 목적을 위해, MDCT 코딩이 FD 모드를 위해 사용되고, CELP 코딩이 LPD 모드를 위해 사용되는 것으로 고려된다. LPD 및 FD 모드 각각에 대해 사용되는 코딩 기술에는 제한이 없다. 따라서, CELP 및 MDCT 모드 이외의 모드가 사용될 수 있으며, 예를 들어 CELP 코딩은 다른 유형의 예측 코딩으로 대체될 수 있으며, MDCT 변환은 다른 유형의 변환으로 대체될 수 있다.Upon receiving the current frame, the pre-processing unit 102 may select, in step 202, a coding mode best suited to code the current frame between the at least one LPD mode and the FD mode. In the following description, for illustrative purposes, it is contemplated that MDCT coding is used for the FD mode and CELP coding is used for the LPD mode. There are no restrictions on the coding techniques used for each of the LPD and FD modes. Thus, modes other than CELP and MDCT modes may be used, for example CELP coding may be replaced with other types of predictive coding, and MDCT transforms may be replaced with other types of transforms.

예를 들어, 미리 정해진 리스트로부터 선택된 모드를 나타내는 고정 길이 코딩과 함께 프레임 유형이 블록(206)을 통해 명시적으로 전송된다고 가정한다. 본 발명의 변형 예에서, 각 프레임에서 선택된 모드에 대한이 코딩은 가변 길이일 수 있다. CELP 코딩 유형(12.8 또는 16 kHz)이 전이 프레임의 디코딩을 용이하게 하기 위해 비트를 통해 명시적으로 전송될 수도 있다.For example, assume that the frame type is explicitly transmitted via block 206 with fixed length coding indicating a mode selected from a predetermined list. In a variant of the invention, this coding for the selected mode in each frame may be variable length. The CELP coding type (12.8 or 16 kHz) may be explicitly transmitted via bits to facilitate decoding of the transition frame.

203 단계는 202 단계에서 CELP 디코딩이 선택되었는지 검증한다. LPD 모드가 선택되는 경우, 신호 프레임은 204 단계에서 CELP 프레임을 코딩하기 위해 CELP 코더(103)로 전송된다. CELP 코더는 예를 들어, 12.8 kHz 및 16 kHz로 고정된 2 개의 개별적인 내부 샘플링 주파수에서 작동하는 2 개의 “코어”를 사용할 수 있으며, 12.8 또는 16 kHz의 내부 주파수에서 엔트리 신호(주파수 fs에서)의 샘플링의 사용이 요구된다. 그러한 리샘플링(re-sampling)은 전처리 블록(102) 또는 CELP 코더(103)의 리샘플링 유닛에서 구현될 수 있다. 프레임은 일반적으로 신호 분류에 따라 CELP 파라미터를 차감함으로써 CELP 코더(103)에 의해 예측 코딩된다. CELP 파라미터는 일반적으로 LPC 계수(LPC coefficients), 고정 및 적응 이득 벡터, 적응 사전 벡터(adaptive dictionary vector), 고정 사전 벡터(fixed dictionary vector)를 포함한다. 이 목록은 UIT-T G.718 코딩에서와 같이, 프레임의 신호 범주(category)를 기반으로 수정될 수도 있다. 따라서, 상기 계산된 파라미터들은 206 단계에서 전송 유닛(108)에 의해 정량화되고(quantified), 다중화되고(multiplexed) 그리고 디코더에 전송될 수 있다. 현재 프레임 다음의 프레임이 MDCT 전이 프레임인 경우, LPC 계수, 고정 및 적응 이득 벡터, 적응 사전 벡터, 고정 사전 벡터 및 CELP 디코더 상태와 같은 CELP 코딩 파라미터는 205 단계에서 메모리(107)에 더 기억될 수 있다.In step 203, it is verified in step 202 whether CELP decoding is selected. When the LPD mode is selected, the signal frame is transmitted to the CELP coder 103 in step 204 to code the CELP frame. The CELP coder may use, for example, two "cores" operating at two separate internal sampling frequencies fixed at 12.8 kHz and 16 kHz, and the input signal (at frequency fs) at an internal frequency of 12.8 or 16 kHz The use of sampling is required. Such re-sampling may be implemented in the pre-processing block 102 or the resampling unit of the CELP coder 103. [ The frame is typically predictively coded by the CELP coder 103 by subtracting the CELP parameter according to the signal classification. CELP parameters generally include LPC coefficients, fixed and adaptive gain vectors, adaptive dictionary vectors, and fixed dictionary vectors. This list may be modified based on the signal category of the frame, as in UIT-T G.718 coding. The calculated parameters may thus be quantified, multiplexed and transmitted to the decoder by the transmission unit 108 in step 206. [ If the frame following the current frame is an MDCT transition frame, CELP coding parameters such as LPC coefficients, fixed and adaptive gain vectors, adaptive dictionary vectors, fixed dictionary vectors, and CELP decoder states may further be stored in memory 107 in step 205 have.

후술되는 바와 같이, 대역 확장은 현재 프레임이 CELP 타입인 경우에 고 대역(high band)에 관련된 코딩으로 수행될 수도 있다.As described below, the band extension may be performed with coding related to the high band if the current frame is a CELP type.

203 단계에서 MDCT 코딩이 유닛(102)에 의해 선택되는 경우, 207 단계에서 현재 프레임에 선행하는 프레임이 MDCT 변환 코딩된 것으로 확인된다. 현재 프레임에 선행하는 프레임이 MDCT 변환 코딩된 경우, 현재 프레임은 208 단계에서 현재 프레임을 MDCT 변환 코딩하기 위해 MDCT 코더(105)에 직접 전송된다. MDCT 코더는 20 ms의 프레임 및 8.75 ms의 선견자(lookahead)를 포함하여 28.75 ms의 리샘플링되지 않은 신호를 포함하는 프레임을 코딩할 수 있다. MDCT 윈도우의 크기에는 제한이 없다. 또한, 입력 신호의 리샘플링에 기인한 CELP 코더 지연에 대응하는 지연은 MDCT 및 CELP 프레임이 동기화되는 방식으로 MDCT 코더에 의해 코딩된 프레임에 적용된다. 코더에서의 이러한 지연은 CELP 코딩 이전의 리샘플링 유형에 따라 0.9375 ms 일 수 있다. MDCT 변환 코딩된 프레임은 206 단계에서 디코더에 전송된다.If the MDCT coding is selected by the unit 102 in step 203, it is confirmed in step 207 that the frame preceding the current frame is MDCT transform coded. If the frame preceding the current frame has been MDCT transform coded, the current frame is sent directly to the MDCT coder 105 for MDCT transform coding the current frame in step 208. [ The MDCT coder can code frames that include a 28.75 ms non-resampled signal, including a 20 ms frame and a 8.75 ms lookahead. The size of the MDCT window is unlimited. Also, the delay corresponding to the CELP coder delay due to resampling of the input signal is applied to the frame coded by the MDCT coder in such a way that the MDCT and CELP frames are synchronized. This delay in the coder may be 0.9375 ms depending on the resampling type prior to CELP coding. The MDCT transform coded frame is sent to the decoder in step 206. [

유닛(102)에 의해 MDCT 코딩이 선택되고, 현재 프레임에 선행하는 프레임이 예측 코딩된 경우, 현재 프레임은 전이 프레임으로 전이 유닛(104)에 전송된다. 이하에서 설명되는 바와 같이, MDCT 전이 프레임은 추가 CELP 서브 프레임을 포함한다.When MDCT coding is selected by the unit 102 and the frame preceding the current frame is predictively coded, the current frame is transferred to the transition unit 104 as a transition frame. As described below, the MDCT transition frame includes additional CELP subframes.

전이 유닛(104)은 다음의 단계들을 구현할 수 있다:Transition unit 104 may implement the following steps:

- 209 단계에서, 현재 프레임을 코딩하는 MDCT에 대해 이용 가능한 예산을 정의하기 위해, 전이 CELP 서브 프레임의 코딩에 필요한 비트의 예산을 예상하는 단계. 다음에서 설명되는 바와 같이, 상기 예산은 현재 프레임 레이트(rate)에 따라 달라질 수 있다. 또한, 상기 예산은 사용된 CELP 코어에 따라 평가될 수 있다. MDCT 코딩의 품질을 떨어뜨리지 않기 위한 충분한 비트 예산을 보존하기 위해, 본 발명은 CELP 서브 프레임에 대한 코딩 레이트를 제한하는 것을 제공할 수 있다. 이를 위해, 그것은 도 7의 장치(700)와 같은 전이 프레임 내 비트 분포를 결정하는 장치를 포함한다;- In step 209, estimating the budget of the bits necessary for coding the transition CELP sub-frame to define the budget available for the MDCT coding the current frame. As described below, the budget may vary depending on the current frame rate. The budget can also be evaluated according to the CELP core used. In order to preserve a sufficient bit budget not to degrade the quality of the MDCT coding, the present invention may provide for limiting the coding rate for CELP subframes. To this end, it includes an apparatus for determining a bit distribution within a transition frame, such as apparatus 700 of Figure 7;

- 210 단계에서, 후술하는 도 3에 따라 코더에서 사용된 MDCT 윈도우를 수정하는 단계;- In step 210, modifying the MDCT window used in the coder according to FIG. 3 to be described later;

- 207 단계에서, 선행 프레임이 CELP 프레임이기 때문에 MDCT 변환 메모리를 제로화(zeroing)하는 단계 - 같은 방법으로 MDCT 메모리는 MDCT 디코딩에서 무시될 수 있다.- In step 207, the MDCT memory can be ignored in MDCT decoding in the same way as the step of zeroing the MDCT transform memory because the preceding frame is a CELP frame.

일 실시예에서, 이러한 단계들 중 적어도 하나는 후술하는 전이 프레임 코딩 유닛(106)에 의해 수행된다.In one embodiment, at least one of these steps is performed by a transition frame coding unit 106 described below.

전이 MDCT 프레임은 이하에서 설명되는 바와 같이, 212 단계에서 MDCT 코더(105)에 의해 코딩되고, 209 단계에서 할당된 비트의 예산에 기초하여 코딩된다. 또한, 추가 CELP 서브 프레임은 213단계에서, 도 3을 참조하여 이하에서 설명되는 바와 같이, CELP 코더(103)에 의해 코딩되고, 209 단계에서 할당된 비트 예산에 따라 결정될 수 있다. CELP 코딩은 MDCT 코딩 전 또는 후에 수행될 수 있다.The transition MDCT frame is coded by the MDCT coder 105 in step 212 and coded based on the budget of the bits allocated in step 209, as described below. Further, the additional CELP subframe may be coded by the CELP coder 103, as described below with reference to FIG. 3, in step 213, and may be determined according to the bit budget allocated in step 209. [ CELP coding may be performed before or after MDCT coding.

도 3은 코딩 전, 코더의 코딩 전 및 디코더의 디코딩 전의 CELP 및 MDCT 프레임 간의 전이를 도시한다.Figure 3 shows the transition between CELP and MDCT frames before coding, before coding of the coder and before decoding of the decoder.

코드(301)에 대한 프레임은 코더(100)에서 수신되고 CELP 코더(103)에 의해 코딩된다. 현재 프레임(302)은 MDCT 변환 코딩되도록 코더(100)의 입력에 의해 수신된다. 따라서, 이것이 전이 프레임이다. 또한, 상기 코더의 입력에 의해 수신된 다음 프레임(303)은 MDCT 변환 코딩된다. 본 발명에 따르면, 상기 후속 프레임(303)은 CELP 코딩에 의해 코딩될 수 있고, 상기 다음 프레임(303)에 대해 사용되는 코딩에 대한 제한은 없다.The frame for the code 301 is received at the coder 100 and coded by the CELP coder 103. The current frame 302 is received by the input of the coder 100 to be MDCT transform coded. Therefore, this is a transition frame. Also, the next frame 303 received by the input of the coder is MDCT transform coded. According to the present invention, the subsequent frame 303 may be coded by CELP coding, and there is no restriction on the coding used for the next frame 303. [

비대칭 MDCT 윈도우(304)는 현재 프레임을 코딩하기 위해 사용될 수 있다. 이 윈도우(304)는 14.375ms의 상승 에지(307), 11.25ms의 1에서의 이득을 갖는 레벨, 선견자(lookahead)에 대응하는 8.75 ms의 하강 에지(309) 및 5.265 ms의 널(null) 부분(310)을 도시한다. 상기 널(null) 부분(310)을 추가하는 것은 상기 선견자 및 이에 따른 대응 지연을 감소시킨다. 일 실시예에서, MDCT 코딩을 위한 MDCT 분석 윈도우의 형태는, 예를 들어, 선견자를 더 감소시키거나 특허 출원 WO2012/085451에 주어진 예들과 함께 대칭 윈도우를 사용하기 위해 수정된다.The asymmetric MDCT window 304 may be used to code the current frame. This window 304 has a rising edge 307 of 14.375 ms, a level with a gain of 1 of 11.25 ms, a falling edge 309 of 8.75 ms corresponding to the lookahead, and a null portion of 5.265 ms Gt; 310 < / RTI > Adding the null portion 310 reduces the seer and thus the corresponding delay. In one embodiment, the form of the MDCT analysis window for MDCT coding is modified, for example, to further reduce the seer or to use a symmetrical window with the examples given in patent application WO2012 / 085451.

점선(312)은 MDCT 윈도우(304)의 매체를 나타낸다. 상기 선(312)의 양측에서, MDCT 윈도우(212)의 10ms 쿼터는 도입부에서 기술된 바와 같이 앨리어싱된다. 실선(311)은 MDCT 윈도우(304)의 제 1 쿼터 및 제 2 쿼터 사이의 앨리어싱 영역을 나타낸다. 다음 프레임(303)의 MDCT 윈도우는 306으로 참조되며, MDCT 윈도우(304)의 하강 에지(309)에 대응하는 MDCT 윈도우(304)를 갖는 중첩-가산 영역을 보여준다.Dotted line 312 represents the media of the MDCT window 304. On either side of the line 312, the 10 ms quota of the MDCT window 212 is aliased as described in the introduction. Solid line 311 represents the aliased area between the first and second quotas of the MDCT window 304. [ The MDCT window of the next frame 303 is referenced 306 and shows the overlap-add region with the MDCT window 304 corresponding to the falling edge 309 of the MDCT window 304. [

MDCT 윈도우(305)는 그것이 MDCT 변환 코딩된 경우 상기 이전 윈도우에 적용될 윈도우를 이론적으로 나타낸다. 그러나, 선행 프레임(301)이 CELP 코더(103)에 의해 코딩되는 경우, 디코더에서 MDCT 변환 코딩된 프레임의 제 1 부분의 개방을 허용하기 위해, 윈도우는 제 1 쿼터에서 공백(null)이다(앞의 MDCT 프레임의 제2 부분을 사용할 수 없기 때문이다). The MDCT window 305 theoretically represents the window to be applied to the previous window if it is MDCT transform coded. However, if the preceding frame 301 is coded by the CELP coder 103, the window is null in the first quota to allow the decoder to open the first part of the MDCT transform coded frame Since the second portion of the MDCT frame of FIG.

이러한 목적을 위해, MDCT 윈도우(304)는 디코더에서 상기 MDCT 프레임의 제 1 부분에서 시간 영역 앨리어싱을 허용하면서 제로에서 제 1 쿼터를 갖는 MDCT 윈도우(313)에 의해 수정된다.For this purpose, the MDCT window 304 is modified by the MDCT window 313 with the first quota at zero, allowing time-domain aliasing in the first part of the MDCT frame at the decoder.

디코더에서, 분석 윈도우들(304, 305, 306 및 313)은 각각 합성 윈도우들(324, 325, 326 및 327)에 대응한다. 따라서 상기 합성 윈도우는 상응하는 분석 윈도우와 관련하여 시간상 반전(time-reversed)된다. 본 발명의 변형 예에서, 분석 및 합성 윈도우는 동일하거나 사인파(sinusoidal)의 유형 또는 다른 것일 수 있다.In the decoder, the analysis windows 304, 305, 306, and 313 correspond to the synthesis windows 324, 325, 326, and 327, respectively. The synthesis window is therefore time-reversed with respect to the corresponding analysis window. In a variant of the invention, the analysis and synthesis window may be of the same or sinusoidal type or otherwise.

CELP 코딩에 의해 코딩된 새로운 샘플들의 제 1 프레임(320)은 디코더에서 수신된다. 그것은 이 CELP 프레임(301)의 코드화된 버전에 대응한다. 여기서, 디코딩된 프레임은 프레임(320)에 대해 8.75ms만큼 시프트된다는 것을 상기한다.The first frame 320 of new samples coded by CELP coding is received at the decoder. It corresponds to the coded version of this CELP frame 301. Here, it is recalled that the decoded frame is shifted by 8.75 ms relative to frame 320.

전이 프레임(302)의 코드화된 버전이 수신된다(완전한 프레임을 형성하는 321 및 222을 참조). CELP 프레임(320)의 끝과 합성 윈도우(327) (앨리어싱 라인에 대응함)의 상승 에지의 시작 사이에 갭(gap)이 생성된다. 여기서 나타낸 특정 예에서, MDCT 윈도우의 1/4은 10ms이고, 이 CELP 프레임(220)을 커버하는 합성 윈도우 MDCT(324)의 널 부분은 5.625ms이고(MDCT 분석 윈도우(204)의 부분(310)에 대응함), 상기 갭은 4.275ms이다. 또한, MDCT 윈도우(327)의 널(null)이 아닌 부분의 시작과 함께 만족스러운 중첩-가산 길이를 보장하기 위해, 이 CELP 프레임(320)과 상기 MDCT 윈도우(327)의 시작 사이의 지연은 필요한 길이로 연장된다. 다음의 예에서, 도 2의 참조 번호(321)로 표현되는 바와 같이, 설명을 위해, 1.875ms의 만족스러운 중첩-가산 길이가 고려되고, 전술한 지연(누락된 신호 길이에 상응함)은 6.25ms가 된다.A coded version of the transition frame 302 is received (see 321 and 222 which form the complete frame). A gap is created between the end of the CELP frame 320 and the beginning of the rising edge of the synthesis window 327 (corresponding to the aliasing line). In the specific example shown here, 1/4 of the MDCT window is 10 ms and the null portion of the composite window MDCT 324 covering this CELP frame 220 is 5.625 ms (part 310 of the MDCT analysis window 204) , The gap is 4.275 ms. In addition, a delay between the start of this CELP frame 320 and the start of the MDCT window 327 is necessary to ensure a satisfactory overlap-add length along with the start of the non-null portion of the MDCT window 327 Lt; / RTI > In the following example, for illustrative purposes, a satisfactory overlap-add length of 1.875 ms is considered, and the delay described above (corresponding to the missing signal length), as represented by reference numeral 321 in Figure 2, ms.

도 3에 나타낸 신호 프레임들은 CELP 코딩/디코딩의 경우에 12.8 또는 16kHz의 상이한 샘플링 주파수들에서의 신호들을 포함할 수 있고, MDCT 코딩/디코딩의 경우에는 fs를 포함할 수 있음을 주목해야 한다. 그러나, 디코더에서, CELP 합성의 리샘플링 및 MDCT 합성의 시간 시프트 후에, 그 프레임들은 동기화된 채로 유지되고 도 3의 표현은 정확하게 유지된다.It should be noted that the signal frames shown in FIG. 3 may include signals at different sampling frequencies of 12.8 or 16 kHz in the case of CELP coding / decoding and may include fs in the case of MDCT coding / decoding. However, at the decoder, after a time shift of the resampling and MDCT synthesis of the CELP synthesis, the frames remain synchronized and the representation of Fig. 3 remains accurate.

전술한 바와 같이, 출원 WO2012/085451은 12.8 kHz CELP 코딩의 경우, MDCT 전이 프레임의 시작에서 5ms의 추가 CELP 서브 프레임을 코딩하고, 16 kHz CELP 코딩의 경우에는 MDCT 전이 프레임의 시작에서 각각 4 ms의 2 개의 추가 CELP 프레임들을 코딩한다.As described above, application WO2012 / 085451 codes additional CELP subframes of 5 ms at the beginning of the MDCT transition frame for 12.8 kHz CELP coding and 4 ms at the beginning of the MDCT transition frame for 16 kHz CELP coding Coding two additional CELP frames.

12.8kHz의 경우, 6.25ms 지연은 채워지지 않고 중첩-가산이 영향을 받는다: 디코더에서 단지 0.625ms의 중첩-가산만이 충분하지 않다.At 12.8 kHz, the 6.25 ms delay is not satisfied and the overlap-addition is affected: only a nesting-add of 0.625 ms is not enough at the decoder.

16kHz의 경우에, 2개의 추가 CELP 서브 프레임들이 전이 프레임의 시작에서 코딩되며, 그것은 전이 MDCT 프레임을 코딩하기 위한 예산을 거의 남기지 않아, 낮은 레이트로 상당한 품질 저하를 초래할 수 있다.In the case of 16 kHz, two additional CELP subframes are coded at the beginning of the transition frame, which leaves little budget for coding the transition MDCT frame and can result in significant degradation at low rates.

이러한 단점을 극복하기 위해, 본 발명은 CELP 코더(103)에 의해 12.8 또는 16 kHz에서 하나의 추가 CELP 서브 프레임의 코딩을 제안한다. 상술한 6.25 ms 길이의 누락된 신호를 생성하기 위해, 다음에 상세히 설명되는 바와 같이 추가 샘플들이 디코더에서 생성된다.To overcome this drawback, the present invention proposes the coding of one additional CELP subframe at 12.8 or 16 kHz by the CELP coder 103. To generate the above-mentioned 6.25 ms long missing signal, additional samples are generated at the decoder as will be described in detail below.

전이 CELP 서브 프레임을 코딩하기 위해, 유닛(106)은 선행 CELP 프레임의 적어도 하나의 CELP 파라미터를 재사용 할 수 있다. 예를 들어, 유닛(106)은 이전 CELP 서브 프레임의 선형 예측 계수 A(z)뿐만 아니라 이전 프레임 혁신(이전에 기술된 바와 같이 메모리(107)에 저장된)으로부터의 에너지를 적응적 사전 벡터, 적응 이득, 고정 이득, 및 전이 CELP 서브 프레임의 고정 사전 벡터를 코딩하기 위하여 재사용할 수 있다. 따라서, 추가 CELP 서브 프레임은 선행 CELP 프레임과 동일한 코어(12.8 kHz 또는 16 kHz)로 코딩될 수 있다.To code the transitional CELP subframe, the unit 106 may reuse at least one CELP parameter of the preceding CELP frame. For example, unit 106 may convert energy from previous frame innovations (stored in memory 107 as previously described) as well as the linear prediction coefficients A (z) of the previous CELP subframe into an adaptive dictionary vector, Gain, fixed gain, and the fixed pre-vector of the transition CELP sub-frame. Thus, the additional CELP subframe may be coded with the same core (12.8 kHz or 16 kHz) as the preceding CELP frame.

전이 프레임 코딩 유닛(106)은 본 발명에 따른 전이 프레임 코딩을 보장한다. 본 발명은 코딩된 프레임(322)이 전이 프레임임을 나타내는 추가 비트의 비트 흐름에서 유닛(106)에 의한 삽입을 더 제공할 수 있으나, 일반적인 경우들에서, 이러한 전이 프레임 지시는 여분의 비트들을 취함이 없이 현재의 프레임 코딩 모드의 글로벌 표시로 전송될 수 있다.Transition frame coding unit 106 ensures transition frame coding according to the present invention. The present invention may further provide for insertion by the unit 106 in the bit stream of additional bits indicating that the coded frame 322 is a transition frame, but in general cases, such a transition frame indication may be made by taking the extra bits Can be transmitted to the global indication of the current frame coding mode without any indication.

또한, 본 발명은 상기 디코더의 합성 신호의 상기 샘플 주파수가 반드시 CELP 코어 주파수와 동일할 필요가 없기 때문에, 이 유닛(116)은 후자가 요구될 때, 204 단계 및 214 단계(소위 "대역 확장" 방법)에서 고정된 예산으로 고 대역의 신호를 코딩할 수 있다.Also, since the present invention does not require that the sample frequency of the synthesized signal of the decoder need to be equal to the CELP core frequency, the unit 116 may perform steps 204 and 214 (so-called "band extension" Method) can code a high-band signal at a fixed budget.

이러한 목적으로, 전이 프레임(106)의 코딩 유닛은 다음의 단계들을 구현할 수 있다:For this purpose, the coding unit of the transition frame 106 may implement the following steps:

- 스펙트럼의 높은 부분(사용된 CELP 코어에 상응하는 주파수 이상, 즉, 6.4 또는 8 kHz 이상)을 보존하기 위해 고 대역 통과 필터에 의해 상기 전이 프레임의 CELP 선행 프레임 및 CELP 서브 프레임을 필터링하는 단계. 이러한 필터링은 CELP 코더(103)로부터의 유한 임펄스 응답(FIR)을 갖는 필터에 의해 구현될 수 있다;Filtering the CELP leading frame and the CELP subframe of the transition frame by a high pass filter to preserve a high portion of the spectrum (above the frequency corresponding to the CELP core used, i.e. above 6.4 or 8 kHz). This filtering may be implemented by a filter having a finite impulse response (FIR) from the CELP coder 103;

- 지연 파라미터와 이득(gain)을 추정하기 위해 원래의 전이 CELP 서브 프레임의 필터링된 부분과 필터링된 선행 CELP 프레임 사이의 상관을 검색하는 단계(필터링된 서브 프레임에 대응하는 신호와 지연을 적용함으로써 예측된 신호 사이의 진폭 차이);- searching for a correlation between the filtered portion of the original transitional CELP sub-frame and the filtered preceding CELP frame to estimate the delay parameter and gain (prediction by applying a signal and a delay corresponding to the filtered sub- ≪ / RTI >

- 예를 들어, 스칼라 정량화(scalar quantification)를 사용하여 지연 파라미터 및 상술한 이득을 코딩하는 단계(예를 들어, 지연은 6 비트 이상으로 코딩될 수 있고, 이득은 6 비트 이상으로 코딩될 수 있다).For example, using a scalar quantification to code a delay parameter and the gain described above (e.g., the delay can be coded to 6 bits or more, and the gain can be coded to 6 bits or more ).

전술한 209 단계는 본 발명의 일 실시예에 따른 변환 코딩을 위한 비트 분포를 결정하는 방법의 단계들을 도시하는 도 4를 참조하여 보다 상세하게 설명된다. 상술한 방법은 코더 및 디코더에서 동일한 방식으로 수행되지만, 오직 설명의 목적으로 코더 측에 도시된다.The above-described step 209 is described in more detail with reference to FIG. 4, which shows the steps of a method for determining a bit distribution for transform coding according to an embodiment of the present invention. The above-described method is performed in the same manner in the coder and decoder, but is shown on the coder side only for the purpose of explanation.

400 단계에서, 현재 프레임 코딩에 할당될 수 있는 core_brate로 표시된 토탈 레이트(비트/s)는 MDCT 코더의 출력 레이트와 동일하게 고정된다. 이러한 예시에서 20ms로 고려되는 프레임의 지속 시간, 초당 프레임의 수는 50이고 비트 단위의 토탈 예산은 core_brate/50과 같다. 토탈 예산은 고정 레이트 코더의 경우 고정될 수도 있고, 또는 가변 레이트 코더의 경우 가변적일 수도 있다. 다음에서는, num_bits 변수가 사용되며 core_brate/50 값으로 초기화된다.In step 400, the total rate (bits / s) indicated by core_brate, which can be assigned to the current frame coding, is fixed equal to the output rate of the MDCT coder. In this example, the duration of the frame considered as 20 ms, the number of frames per second is 50, and the total budget in bits is equal to core_brate / 50. The total budget may be fixed for a fixed rate coder, or may be variable for a variable rate coder. In the following, the num_bits variable is used and initialized to the core_brate / 50 value.

401 단계에서, 전이 유닛(104)은 이러한 선행 CELP 프레임을 코딩하기 위해 사용된 적어도 2 개의 CELP 코어로부터 CELP 코어를 결정한다. 다음의 예시에서, 두 개의 CELP 코어가 고려되며, 각각 12.8 kHz와 16 kHz의 주파수에서 작동한다. 대안으로, 단일 CELP 코어는 코딩시 및/또는 디코딩시에 구현된다.In step 401, the transition unit 104 determines the CELP core from at least two CELP cores used to code this preceding CELP frame. In the following example, two CELP cores are considered and operate at frequencies of 12.8 kHz and 16 kHz, respectively. Alternatively, a single CELP core is implemented upon coding and / or decoding.

선행 CELP 프레임에 사용된 CELP 코어가 12.8 kHz 주파수를 갖는 경우, 상기 방법은 전이 서브 프레임을 CELP 코딩하기 위해 cbrate으로 라벨링되는(labeled) 비트 레이트를 할당하는 단계(402)를 포함하며, 상기 비트 레이트는 전이 프레임의 MDCT 코딩에 대한 비트 레이트와 제 1 미리 결정된 비트 레이트 값 사이의 최소값과 동일하다. 상기 제 1 미리 결정된 값은 예를 들어, 24.4 kbit/s로 고정될 수 있으며, 이것은 전송 코딩을 위한 만족스러운 비트 예산을 보장하게 한다.If the CELP core used in the preceding CELP frame has a frequency of 12.8 kHz, the method includes allocating (402) a bit rate labeled cbrate for CELP coding the transition subframe, Is equal to the minimum value between the bit rate for the MDCT coding of the transition frame and the first predetermined bit rate value. The first predetermined value may be fixed, for example, to 24.4 kbit / s, which ensures a satisfactory bit budget for transmission coding.

따라서, cbrate = min(core_bitrate, 24400). 이 제한은 기껏해야 24.40 kbit/s의 CELP 코딩에 의해 코딩된 것처럼 코딩된 CELP 파라미터를 갖는 추가 서브 프레임으로 제한된, 제한된 CELP 코딩의 동작을 억제하는 것과 동일하다.Thus, cbrate = min (core_bitrate, 24400). This limitation is equivalent to inhibiting the operation of limited CELP coding, limited to additional subframes with coded CELP parameters as coded at most by 24.40 kbit / s CELP coding.

선택적 단계인 403 단계에서, 할당된 비트 레이트는 11.60 kbit/s CELP 비트 레이트와 비교된다. 만약 상기 할당된 비트 레이트가 더 높으면, 적응형 사전(adaptive dictionary)을 저역 통과 필터링하기 위한 비트 표시를 코딩하기 위한 비트가 예약될 수 있다(예컨대, 12.65 kbit/s보다 높거나 같은 속도로 AMR-WB 코딩하는 경우). num_bits 변수가 업데이트된다.In an optional step 403, the allocated bit rate is compared to the 11.60 kbit / s CELP bit rate. If the allocated bit rate is higher, the bits for coding the bit indications for low pass filtering an adaptive dictionary can be reserved (e.g., higher than or equal to 12.65 kbit / s for the AMR- WB coding). The num_bits variable is updated.

num_bits := num_bits - 1 num_bits: = num_bits - 1

404 단계에서, budg1로 라벨링된 제 1 비트 수는 추가 CELP 서브 프레임을 예측 코딩하기 위해 할당된다. 상기 제 1 비트 수(budg1)는 CELP 서브 프레임을 코딩하는데 사용되는 CELP 파라미터를 나타내는 비트 수를 나타낸다. 상술한 바와 같이, CELP 서브 프레임의 코딩은 제한된 수의 CELP 파라미터가 사용되며, 선행 CELP 프레임을 코딩하는데 사용된 일부 파라미터가 유리하게 재사용될 수 있다.In step 404, the first number of bits labeled budg1 is allocated to predictively code additional CELP subframes. The first number of bits (budg1) represents the number of bits representing the CELP parameter used to code the CELP subframe. As described above, the coding of the CELP subframe uses a limited number of CELP parameters, and some of the parameters used to code the preceding CELP frame can be advantageously re-used.

예를 들어, 여기(excitation)만이 추가 CELP 서브 프레임을 코딩하기 위해 모델링될 수 있고, 따라서 비트는 고정 사전 벡터, 적응 사전 벡터 및 이득 벡터에 대해서만 예약된다. 이러한 각각의 파라미터들에 귀속되는 비트의 수는 402 단계에서 이 추가 CELP 서브 프레임을 코딩하기 위해 할당된 비트 레이트로부터 추론된다. 예를 들어, ITU-T의 G.722.2의 2003 년 7 월 버전에서 시작된, 표 1/G722.2 - 20ms 프레임에 대한 AMR-WB 부호화 알고리즘의 비트 분포는, 할당된 비트 레이트에 따라 CELP 파라미터에 의한 비트 할당 예시를 제공한다.For example, only excitation can be modeled to code additional CELP subframes, so the bits are reserved only for fixed dictionary vectors, adaptive dictionary vectors, and gain vectors. The number of bits attributed to each of these parameters is deduced from the bit rate assigned in step 402 to code this additional CELP subframe. For example, the bit distribution of the AMR-WB encoding algorithm for Table 1 / G722.2-20 ms frames, started in the July 2003 version of G.722.2 of ITU-T, is shown in the CELP parameter ≪ / RTI >

이전의 예시에서, 서브 프레임 코딩이 제한되는 경우, budg1은 적응 사전, 고정 사전 및 이득 벡터 각각에 기인한 비트의 합계에 대응한다. 예를 들면, 할당된 비트 레이트가 19.85kbit/s인 경우, 전술한 표 1/G722를 참조하여, 고정 사전(음색 리드 타임)에 9 비트가 할당되고, 이득 벡터(디렉토리 이득)에 7 비트가 할당된다. 이 경우, budg1은 88 비트와 같다.In the previous example, if subframe coding is restricted, budg1 corresponds to the sum of the bits due to each of the adaptive dictionary, the fixed dictionary and the gain vector. For example, when the allocated bit rate is 19.85 kbit / s, 9 bits are allocated to the fixed dictionary (tone lead time) and 7 bits are allocated to the gain vector (directory gain) . In this case, budg1 is equal to 88 bits.

num_bits 변수가 업데이트될 수 있다:The num_bits variable can be updated:

num_bits := num_bits - budg1num_bits: = num_bits - budg1

또한, 본 발명은 CELP 파라미터들에 대한 비트의 할당에서 프레임 카테고리들을 고려하는 것을 제공할 수 있다. 예를 들어, ITU-T의 2008 년 6 월 버전인 G.718 규범(norm)의 6.8 및 8.1 절은 범주, 비 음성 모드(UC)와 같은 모드, 음성 모드(VC), 전이 모드(TC) 및 일반 모드(GC), 또는 할당된 비트 레이트(각각 8kbit/s 및 8+4kbit/s 속도에 해당되는 layer1 또는 layer2)에 따라 달라지는 각 CELP 파라미터에 할당할 예산을 제공한다. 코더 G.718은 계층적 코더이지만, AMR-WB의 멀티 레이트 할당과 함께 G 718 카테고리화(categorization)를 사용하여 CELP 코딩 원리를 결합하는 것이 가능하다.The present invention may also provide for considering frame categories in the allocation of bits for CELP parameters. For example, sections 6.8 and 8.1 of the G.718 norm, the June 2008 version of ITU-T, describe categories, modes such as non-voice mode (UC), voice mode (VC) And a budget allocated to each CELP parameter depending on the normal mode (GC), or the assigned bit rate (layer 1 or layer 2 corresponding to 8 kbit / s and 8 + 4 kbit / s speed, respectively). Coder G.718 is a hierarchical coder, but it is possible to combine CELP coding principles using G 718 categorization with multi-rate allocation of AMR-WB.

401 단계에서 선행 CELP 프레임에 대해 사용된 CELP 코어가 16 kHz 주파수를 가지는 것으로 결정되면, 상기 방법은 상기 전이 서브 프레임을 CELP 코딩하기 위한 비트 레이트(cbrate로 라벨링된)를 할당하는 405 단계를 포함하고, 상기 비트 레이트는 상기 전이 프레임을 코딩하는 MGCT에 대한 비트 레이트와 상기 비트 레이트의 제 1 미리 결정된 값 사이의 최소값과 동일하다. 16 kHz 코어의 경우, 제 1 미리 결정된 값은, 예를 들어, 22.6 kbit/s로 고정될 수 있으며, 이는 변환 코딩을 위한 만족스러운 비트 예산을 보장하도록 허용한다. 따라서, 제 1 미리 결정된 값은 선행 CELP 프레임의 코드에 사용된 CELP 코어에 의존한다. 또한, 16 kHz 코어를 코딩하기 위해, CELP 코딩에 비트 레이트를 할당할 때, 임계 값(threshold value)이 적용될 수 있다. 따라서, 할당된 비트 레이트는 변환 코딩된 전이 프레임에 대한 비트 레이트와 적어도 하나의 미리 결정된 제 2 미리 결정된 비트 레이트 값 사이의 최대 값과 동일하며, 상기 제 2 값은 상기 제 1 값보다 낮다. 트레이드(trade)의 상기 제 2 미리 결정된 값은, 예를 들어 14.8 kbit/s 일 수 있다. 따라서, 변환 코딩된 전이 프레임에 대한 비트 레이트가 14.8kbit/s보다 낮으면, 전이 서브 프레임을 코딩하는 CELP에 대해 할당되는 비트 레이트는 14.8kbit/s 일 수 있다.If it is determined in step 401 that the CELP core used for the preceding CELP frame has a frequency of 16 kHz, the method includes step 405 of assigning a bit rate (labeled cbrate) for CELP coding the transition sub-frame , The bit rate being equal to a minimum value between a bit rate for the MGCT coding the transition frame and a first predetermined value of the bit rate. For a 16 kHz core, the first predetermined value can be fixed, for example, to 22.6 kbit / s, which allows to ensure a satisfactory bit budget for transform coding. Thus, the first predetermined value depends on the CELP core used in the code of the preceding CELP frame. Also, in order to code a 16 kHz core, a threshold value can be applied when assigning a bit rate to the CELP coding. Thus, the assigned bit rate is equal to the maximum value between the bit rate for the transcoded transition frame and the at least one predetermined second bit rate value, and the second value is lower than the first value. The second predetermined value of the trade may be, for example, 14.8 kbit / s. Thus, if the bit rate for the transform coded transition frame is lower than 14.8 kbit / s, the bit rate allocated for the CELP coding the transition sub-frame may be 14.8 kbit / s.

보완적인 일 실시예에서, 변환 코딩된 전이 프레임에 대한 비트 레이트가 8 kbit/s보다 낮으면, 할당된 레이트는 8 kbit/s 일 수 있다.In one complementary embodiment, if the bit rate for the transform coded transition frame is less than 8 kbit / s, the allocated rate may be 8 kbit / s.

따라서, 이러한 보완적인 실시 예에 따르면, 다음의 알고리즘이 얻어진다:Thus, according to this complementary embodiment, the following algorithm is obtained:

If core_bitrate ≤ 8000If core_bitrate ≤ 8000

cbrate = 8000 cbrate = 8000

Otherwise if core_bitrate ≤ 14800Otherwise if core_bitrate ≤ 14800

othercbrate = 14800 othercbrate = 14800

OtherwiseOtherwise

cbrate = min(core_bitrate , 22600) cbrate = min (core_bitrate, 22600)

End if End if

선택적 단계인 407 단계에서, 할당된 비트 레이트는 11.60 kbit/s의 CELP 비트 레이트와 비교된다. 할당된 비트 레이트가 더 높으면, 비트는 적응 사전의 저역 필터링 비트 표시를 코딩하기 위해 예약될 수 있다. num_bits 변수는 업데이트된다.In an optional step 407, the allocated bit rate is compared to a CELP bit rate of 11.60 kbit / s. If the assigned bit rate is higher, the bit may be reserved to code the low-pass filtering bit representation of the adaptive dictionary. The num_bits variable is updated.

num_bits := num_bits - 1num_bits: = num_bits - 1

408 단계에서, 404 단계와 동일한 방식으로, 추가 CELP 서브 프레임을 예측 코딩하기 위해 제 1 비트 수 budg1이 할당되고, budg1은 전이 서브 프레임을 CELP 코딩하기 위해 할당된 비트 레이트에 의존한다.In step 408, in the same manner as step 404, a first number of bits budg1 is allocated to predictively code additional CELP subframes, and budg1 depends on the bit rate allocated for CELP coding the transition subframe.

다양한 코어 주파수에서의 코딩에 공통적인 410 단계에서, budg2로 라벨링된 제 2 수는 전이 프레임의 변환 코딩을 위해 할당되고, 전이 프레임의 총 비트 수인 제 1 비트 수 budg1으로부터 계산된다. 위의 계산과 관련하여 budg2는 num_bits 변수와 같다. 일반적으로, 전이 현재 프레임의 모드는 MDCT 코딩 예산에 귀속되는 것으로 가정되므로, 이 정보는 명시적으로 고려되지 않는다.In a step 410 common to coding at various core frequencies, a second number labeled budg2 is assigned for transform coding of the transition frame and is calculated from the first number of bits, budg1, which is the total number of bits of the transition frame. With respect to the above calculation, budg2 is the same as the num_bits variable. In general, the mode of the transition current frame is assumed to belong to the MDCT coding budget, so this information is not explicitly considered.

오디오 신호가 적어도 하나의 저 대역 주파수 및 하나의 고 대역 주파수로 분해되는 경우, 전이 서브 프레임의 저 대역 주파수를 코딩하기 위해 선행 단계가 구현될 수 있다. 상이한 코어 주파수에서의 코딩에 공통적인 410 단계 이전의 선택적인 단계 409 단계에서, 상기 방법은 상기 전이 서브 프레임의 주파수 고 대역을 코딩하기 위해, budg3으로 라벨링된 제 3 미리 결정된 비트 수를 할당하는 단계를 포함할 수 있다. 이 경우, 제 2 비트 수(budg2)는 제 1 비트 수(budg1) 및 제 3 비트 수(budg3)로부터 계산된다.If the audio signal is decomposed into at least one low band frequency and one high band frequency, the preceding steps can be implemented to code the low band frequency of the transition sub-frame. In an optional step 409 prior to step 410 common to coding at different core frequencies, the method includes assigning a third predetermined number of bits labeled as budg3 to code the frequency high band of the transition subframe . ≪ / RTI > In this case, the second number of bits (budg2) is calculated from the first number of bits (budg1) and the third number of bits (budg3).

이전에 설명한 바와 같이, 전이 서브 프레임의 고 대역 주파수(또는 대역을 확장)을 코딩하는 것은 오디오 신호의 선행 프레임과 전이 서브 프레임 사이의 상관 관계에 기초할 수 있다. 예를 들어, 고 대역 주파수를 코딩하는 것은 두 단계로 분해될 수 있다.As previously described, coding the high band frequency (or extending the band) of the transition subframe may be based on the correlation between the preceding frame and the transition subframe of the audio signal. For example, coding high band frequencies can be broken down into two stages.

첫 번째 단계에서, 오디오 신호의 선행 프레임 및 현재 프레임은 하이 패스 필터에 의해 필터링되어 스펙트럼의 상위 부분만을 유지한다. 스펙트럼의 상위 부분은 사용된 CELP 코어의 주파수보다 높은 주파수에 해당할 수 있다. 예를 들어, 사용된 CELP 코어가 12.8 kHz CELP 코어인 경우, 상기 고 대역은 12.8 kHz보다 낮은 주파수가 필터링된 오디오 신호에 해당한다. 이러한 필터링은 FIR 필터에 의해 구현될 수 있다.In the first step, the preceding frame and the current frame of the audio signal are filtered by a high pass filter to maintain only the upper part of the spectrum. The upper part of the spectrum may correspond to a frequency higher than the frequency of the CELP core used. For example, if the CELP core used is a 12.8 kHz CELP core, the high band corresponds to a filtered audio signal with a frequency lower than 12.8 kHz. This filtering can be implemented by a FIR filter.

두 번째 단계에서, 선행 프레임 및 현재 프레임의 필터링된 부분들 사이의 상관 관계 검색이 수행된다. 이러한 상관 관계 검색은 지연 파라미터를 추정한 다음, 이득을 추정할 수 있게 한다. 상기 이득은 현재 프레임의 필터링된 부분과 지연을 적용하여 예측된 신호 사이의 진폭 비율에 해당한다.In the second step, a correlation search is performed between the preceding frame and the filtered portions of the current frame. This correlation search allows estimating the delay parameter and then estimating the gain. The gain corresponds to the amplitude ratio between the filtered portion of the current frame and the predicted signal by applying a delay.

예를 들어, 이득을 위해 6 비트가 할당되고 지연을 위해 6 비트가 할당될 수 있다. 제 3 비트 수(budg3)는 12가 된다.For example, 6 bits may be allocated for gain and 6 bits for delay. And the third bit number (budg3) becomes 12.

num_bits 변수는 업데이트 될 수 있다.The num_bits variable can be updated.

num_bits := num_bits - budg3num_bits: = num_bits - budg3

따라서, 제 2 비트 수(budg2)는 업데이트된 변수num_bits 와 동일하다.Thus, the second number of bits (budg2) is equal to the updated variable num_bits.

도 5는 본 발명의 일 실시예에 따른 오디오 디코더(500)를 도시하고, 도 6은 도 5의 오디오 디코더(500)에서 구현되는 본 발명의 일 실시예에 따른 디코딩 방법의 단계들을 도시하는 다이어그램이다.FIG. 5 illustrates an audio decoder 500 in accordance with an embodiment of the present invention, FIG. 6 illustrates a diagram illustrating the steps of a decoding method according to an embodiment of the present invention implemented in the audio decoder 500 of FIG. to be.

디코더(500)는 도 1의 코더(500)로부터 발생된 코딩된 디지털 신호(또는 비트 플로우(flow))를 601 단계에서 수신하기 위한 수신 유닛(501)을 포함한다. 만약, 현재 프레임이 CELP 프레임, MDCT 프레임 또는 전이 프레임인 경우, 상기 비트 플로우는 602 단계에서 결정할 수 있는 카테고리화 유닛(502)에 제출된다. 이를 위해, 카테고리화 유닛(502)은 현재의 프레임이 전이 프레임인지 여부를 나타내는 비트 플로우 정보와 어떤 CELP 코어가 CELP 프레임 또는 전이 CELP 서브 프레임을 디코딩하는데 사용할지를 나타내는 정보로부터 비트 플로우를 감산할 수 있다.The decoder 500 includes a receiving unit 501 for receiving the coded digital signal (or bit flow) generated from the coder 500 of FIG. If the current frame is a CELP frame, an MDCT frame, or a transition frame, the bit flow is submitted to the categorization unit 502, which can be determined in step 602. [ To this end, the categorization unit 502 may subtract the bit flow from the bit-flow information indicating whether the current frame is a transition frame and from which information the CELP core uses to decode the CELP frame or the transition CELP sub-frame .

603 단계에서, 현재 프레임이 전이 프레임임이 확인된다.In step 603, it is confirmed that the current frame is a transition frame.

만약 현재 프레임이 전이 프레임이 아닌 경우, 604 단계에서 현재 프레임이 CELP 프레임임이 확인된다. 만약 그런 경우라면, 상기 프레임은 카테고리화 유닛(502)에 의해 지시된 코어 주파수로, 605 단계에서 CELP 프레임을 디코딩 할 수 있는 CELP 디코더(504)에 전송된다. CELP 프레임을 디코딩한 후에, CELP 디코더(504)는 606 단계에서 선형 예측 필터 계수들(A(z))과 같은 파라미터들과 다음 프레임이 전이 프레임인 경우의 예측 에너지와 같은 내부 상태들을 메모리(506)에 저장한다.If the current frame is not a transition frame, it is confirmed in step 604 that the current frame is a CELP frame. If so, the frame is transmitted to the CELP decoder 504, which can decode the CELP frame in step 605, with the core frequency indicated by the categorization unit 502. [ After decoding the CELP frame, the CELP decoder 504 stores internal states, such as parameters, such as the linear prediction filter coefficients A (z), and the predicted energy in the case where the next frame is a transition frame, ).

CELP 디코더(504)로부터의 출력으로서, 신호는 607 단계에서 리샘플링 유닛(505)에 의해 디코더(500)의 출력 주파수로 리샘플링될 수 있다. 본 발명의 일 실시예에서, 리샘플링 유닛은 FIR 필터를 포함하고 리샘플링은 (예를 들어) 1.25 ms의 지연을 도입한다. 일 실시예에서, 후 처리는 리샘플링 전 또는 후에 CELP 디코딩에 적용될 수 있다.As an output from the CELP decoder 504, the signal may be resampled by the resampling unit 505 to the output frequency of the decoder 500 in step 607. [ In one embodiment of the invention, the resampling unit comprises a FIR filter and the resampling introduces a delay of, for example, 1.25 ms. In one embodiment, the post-processing may be applied to CELP decoding before or after resampling.

상술한 바와 같이, 일 실시예에서, 대역 확장은 6071 및 6151 단계에서 대역 확장의 관리 유닛(5051)에 의해 현재 프레임이 CELP 유형일 때 고 대역과 연관된 디코딩으로 수행될 수 있다. 그 다음, 고 대역은 CELP 코딩과 결합되어 잠재적으로 저 대역에서 CELP 합성에 추가 지연이 적용될 수 있다.As described above, in one embodiment, band extension may be performed with the decoding associated with the high band when the current frame is the CELP type by the management unit 5051 of band extension in steps 6071 and 6151. The highband is then combined with CELP coding, potentially allowing additional delay to be applied to CELP synthesis in the low band.

CELP 디코더에 의해 디코딩되고 리샘플링되기 전 또는 후에 잠재적으로 후처리되고 리샘플링된 신호는 608 단계에서 디코더의 출력 인터페이스(510)로 전송된다.A signal that is potentially post-processed and resampled before or after being decoded and resampled by the CELP decoder is transmitted to the output interface 510 of the decoder in step 608. [

디코더(500)는 MDCT 디코더(507)를 더 포함한다. 604 단계에서 현재 프레임이 MDCT 프레임인 것으로 결정되는 경우, MDCT 디코더(507)는 609 단계에서 고전적인 방식으로 MDCT 프레임을 디코딩할 수 있다. 610 단계에서, CELP 디코더(504)로부터 발생되는 신호의 리샘플링 애플리케이션(application)에 필요한 지연에 대응하는 지연은 지연 유닛(508)에 의해 디코더 출력에 적용되어 MDCT 합성을 CELP 합성과 동기화시킨다. MDCT에 의해 디코딩되고 지연된 신호는 608 단계에서 디코더의 출력 인터페이스(510)로 전송된다.The decoder 500 further includes an MDCT decoder 507. If it is determined in step 604 that the current frame is an MDCT frame, the MDCT decoder 507 may decode the MDCT frame in a classical manner in step 609. [ In step 610, the delay corresponding to the delay required for the resampling application of the signal generated from the CELP decoder 504 is applied to the decoder output by the delay unit 508 to synchronize the MDCT synthesis with the CELP synthesis. The signal decoded and delayed by the MDCT is transmitted to the output interface 510 of the decoder in step 608. [

현재 프레임이 603 단계 이후에 전이 프레임으로 결정되는 경우, 비트의 분포를 결정하는 장치(503)는 611 단계에서 전이 프레임의 CELP 코딩을 위해 할당된 제 1 비트 수(budg1)와 전이 프레임의 변환 코딩을 위해 할당된 제 2 비트 수(budg3) 를 결정할 수 있다. 상기 장치(503)는 도 7을 참조하여 상세히 설명된 장치(700)에 대응할 수 있다.If the current frame is determined to be a transition frame after step 603, the apparatus for determining the distribution of bits 503 determines in step 611 the first bit number (budg1) allocated for CELP coding of the transition frame and the transformed coding Lt; / RTI > (budg3) that is allocated for the first bit. The device 503 may correspond to the device 700 described in detail with reference to FIG.

MDCT 디코더(507)는 결정 유닛(503)에 의해 계산된 제 3 비트 수(budg3)를 사용하여 전이 프레임의 디코딩에 필요한 레이트를 조정한다. MDCT 디코더(507)는 MDCT 변환의 메모리를 더 제로화하고 612 단계에서 전이 프레임을 디코딩한다. MDCT 디코더로부터 발생하는 신호는 613 단계에서 지연 유닛(508)에 의해 지연된다.The MDCT decoder 507 uses the third bit number (budg3) calculated by the decision unit 503 to adjust the rate required for decoding the transition frame. The MDCT decoder 507 further zeroizes the memory of the MDCT transform and decodes the transition frame in step 612. [ The signal generated from the MDCT decoder is delayed by the delay unit 508 in step 613.

동시에, CELP 디코더(504)는 614 단계에서 제 1 비트 수 budg1에 기초하여 전이 CELP 서브 프레임을 디코딩한다. 이러한 목적을 위해, CELP 디코더(504)는 현재 프레임 카테고리에 의존할 수 있는 CELP 파라미터를 디코딩하고, 그리고 예를 들어 적응 사전으로부터의 피치 값, CELP 서브 프레임의 고정 및 이득 사전을 포함하고, 선형 예측 필터 계수를 사용한다. 게다가, CELP 디코더(504)는 CELP 디코딩 상태를 업데이트한다. 이러한 상태들은 전형적으로 12.8 kHz 또는 16 kHz CELP 코어가 사용되는지 여부에 따라, 4 ms 또는 5 ms에 걸쳐 신호 서브 프레임을 생성하기 위한 선행 CELP 프레임으로부터 발생하는 혁신(innovation)의 예측 에너지를 포함할 수 있다(전이 CELP 서브 프레임을 제한된 코딩하는 경우).At the same time, in step 614, the CELP decoder 504 decodes the transition CELP subframe based on the first number of bits budg1. For this purpose, the CELP decoder 504 decodes a CELP parameter that may depend on the current frame category and includes, for example, a pitch value from the adaptive dictionary, a fixed and gain dictionary of the CELP subframe, Filter coefficients are used. In addition, the CELP decoder 504 updates the CELP decoding state. These states may include the predictive energy of innovation from a preceding CELP frame to generate a signal sub-frame over 4 ms or 5 ms, typically depending on whether a 12.8 kHz or 16 kHz CELP core is used (If the transitional CELP subframe is limited coding).

전술 한 바와 같이, 출원 WO2012/085451은 12.8 kHz의 CELP 코어에 대한 5 ms의 서브 프레임 및 16 kHz의 CELP 코어에 대한 4 ms의 2 개의 추가 서브 프레임을 추가 코딩하는 것을 제공한다.As described above, application WO2012 / 085451 provides a further coding of two additional sub-frames of 4 ms for a 5 ms sub-frame for a CELP core of 12.8 kHz and a CELP core of 16 kHz.

도 3을 참조하여 설명된 바와 같이, 12.8 kHz의 경우, 6.25 ms 지연은 채워지지 않고 중첩-가산이 영향을 받는다: 디코더는 단지 0.625 ms의 중첩-가산을 가지며, 이는 불충분하다.As described with reference to FIG. 3, for 12.8 kHz, the 6.25 ms delay is not satisfied and the superposition-addition is affected: the decoder only has a superposition-add of 0.625 ms, which is insufficient.

16 kHz의 경우, 추가 CELP 서브 프레임에 대해, 전이 프레임의 시작시에 코딩되고, 이것은 전이 MDCT 프레임을 코딩하기 위한 예산을 거의 남기지 않고, 현재의 프레임에서 “풀 레이트(full-rate)”로 MDCT 코딩에 대한 품질 저하를 야기할 수 있다. At 16 kHz, for an additional CELP sub-frame, it is coded at the beginning of the transition frame, which leaves little budget for coding the transition MDCT frame, and is a "full-rate" MDCT It may cause deterioration in quality of coding.

따라서, 국제 출원 WO2012/085451의 해결책은 만족스럽지 않다.Thus, the solution of international application WO2012 / 085451 is unsatisfactory.

본 발명의 독립적인 양상은, 하나의 추가 전이 CELP 서브 프레임으로부터, 전이 CELP 서브 프레임을 부호화하기 위해 사용된 코딩 파라미터를 재사용함으로써 제 2 서브 프레임을 부분적으로 생성한다. 따라서, 지연은 충분한 중첩 가산을 보장하고, 전이 프레임의 MDCT 코딩 레이트에 영향을 미치지 않으면서 채워진다.An independent aspect of the present invention partially generates a second sub-frame by reusing, from one additional transition CELP sub-frame, the coding parameters used to encode the transition CELP sub-frame. Thus, the delay guarantees sufficient overlap addition and is filled without affecting the MDCT coding rate of the transition frame.

이러한 목적을 위해, 본 발명은 또한, 예측 디코딩에 따라 또는 변환 디코딩에 따라 신호 프레임을 디코딩할 수 있는 디코더(500)에서 코딩된 디지털 신호 P를 디코딩하는 방법을 목표로 한다. 상기 방법은 다음의 단계를 포함할 수 있다:For this purpose, the present invention also aims at a method for decoding a coded digital signal P in a decoder 500 that is capable of decoding a signal frame according to predictive decoding or in accordance with transform decoding. The method may comprise the following steps:

- 501단계에서, 제 1 디지털 신호 프레임을 코딩하는 예측 코딩 파라미터들의 제 1 세트를 수신하는 단계;- receiving, in step 501, a first set of predictive coding parameters for coding a first digital signal frame;

- 605단계에서, 예측 코딩 파라미터의 제 1 세트에 기초하여 제 1 프레임을 예측 디코딩하는 단계;- predicting the first frame based on the first set of predictive coding parameters in step 605;

- 새로운 프레임에 대해 501 단계에서, 변환 코딩된 전이 프레임의 제 1 전이 서브 프레임을 예측 코딩하기 위한 파라미터들의 제 2 세트를 수신하는 단계;Receiving a second set of parameters for predicting a first transition subframe of the transform coded transition frame in step 501 for the new frame;

- 614단계에서, 상기 제 2 세트의 예측 코딩 파라미터들에 기초하여 상기 제 1 전이 서브 프레임을 디코딩하는 단계,- decoding the first transition sub-frame based on the second set of predictive coding parameters in step 614,

- 614단계에서, 상기 제 2 세트의 적어도 하나의 예측 코딩 파라미터로부터 제 2 전이 서브 프레임으로부터의 샘플을 생성하는 단계.- generating, in step 614, samples from the second transition sub-frame from the at least one predictive coding parameter of the second set.

본 발명은 또한 P를 디코딩하는 방법을 구현하기 위한 디코더(500)뿐만 아니라, 명령들이 프로세서에 의해 실행될 때 P를 디코딩하는 방법을 수행하기 위한 상기 명령들을 포함하는 컴퓨터 프로그램을 목표로 한다.The present invention also contemplates a computer program that includes the decoder 500 for implementing a method for decoding P, as well as the instructions for performing the method of decoding P when the instructions are executed by a processor.

제 2 서브 프레임을 생성하기 위해 재사용되는 CELP 파라미터는 이득 벡터, 적응 사전 벡터 및 고정 사전 벡터 일 수 있다.The CELP parameters reused to generate the second subframe may be a gain vector, an adaptive dictionary vector, and a fixed dictionary vector.

P를 디코딩하는 방법의 일 실시예에 따르면, 최소 오버랩 값은 변환 디코딩을 위해 미리 정의될 수 있고, 제 2 서브 프레임으로부터 생성된 샘플들의 수는 상기 최소 오버랩 값에 기초하여 결정된다. 이 마지막 서브 프레임은 제 1 서브 프레임에서와 동일한 피치 지연 및 동일한 적응 사전 이득을 갖는 피치 예측을 반복함으로써 CELP 합성을 연장하고, 동일한 LPC 계수 및 디엠퍼시스(de-emphasis) 또는 디액센트 (de-accentuation)를 이용하여 합성 LPC 필터링을 수행함으로써 추가 정보 없이 생성될 수 있다. According to one embodiment of the method for decoding P, the minimum overlap value can be predefined for transform decoding, and the number of samples generated from the second subframe is determined based on the minimum overlap value. This last sub-frame extends the CELP synthesis by repeating the pitch prediction with the same pitch delay and the same adaptive pre-gain as in the first sub-frame and uses the same LPC coefficients and de-emphasis or de-accentuation ) By performing the synthetic LPC filtering.

제 2 CELP 서브 프레임은 12.8 kHz의 CELP 코어의 경우 1.25 ms의 신호를 보존하고 16 kHz의 CELP 코어의 경우 2.25 ms의 신호를 보존하기 위해 잘릴 수 있다. 따라서, 제 1 CELP 서브 프레임은 갭을 채우고 MDCT 전이 프레임과 함께 만족할만한 중첩-가산(최소 오버랩 값, 예를 들어, 1.875 ms)을 보장하는 6.25 ms의 추가 신호를 갖도록 완료된다. 일 실시 형태에서, 추가 CELP 서브 프레임은 12.8 및 16 kHz CELP 코어에 대해 6.25 ms로 확장된 길이를 가지며, 이는 특히 고정된 사전에 대해, 그러한 연장된 서브 프레임의 길이를 갖는 "정상적인" CELP 코딩을 수정하는 것을 의미한다The second CELP subframe preserves a 1.25 ms signal for a 12.8 kHz CELP core and can be truncated for a 2.25 ms signal for a 16 kHz CELP core. Thus, the first CELP subframe is filled with a 6.25 ms additional signal to fill the gap and ensure a satisfactory overlap-add (minimum overlap value, e.g., 1.875 ms) with the MDCT transition frame. In one embodiment, the additional CELP subframe has an extended length of 6.25 ms for the 12.8 and 16 kHz CELP cores, which is particularly suitable for fixed dictionaries as "normal" CELP coding with such extended subframe length Means to modify

P를 디코딩하는 방법의 이전 실시예에 부가하여, 방법 P는 유한 임펄스 응답 필터에 의해 수행되는 리샘플링하는 615단계를 더 포함할 수 있다. 이전에 설명된 바와 같이, FIR 필터는 리샘플링 유닛(505)에 통합될 수 있다. 리샘플링은 선행하는 CELP 프레임으로부터의 FIR 필터 메모리를 사용하고 처리는 이 예에서 1.25㎳의 여분의 지연을 유도한다.In addition to the previous embodiment of the method of decoding P, method P may further comprise resampling 615 performed by a finite impulse response filter. As previously described, the FIR filter may be integrated into resampling unit 505. [ Resampling uses the FIR filter memory from the preceding CELP frame and processing leads to an extra delay of 1.25 ms in this example.

상기 방법 P는 상기 리샘플링 단계에 의해 도입된 지연을 채우기 위해 상기 유한 임펄스 응답 필터 메모리에 저장된 샘플들로부터 획득된 추가 신호를 부가하는 단계를 더 포함할 수 있다. 따라서, 이전에 생성된 6.25ms의 추가 신호에 더하여, 1.25ms의 신호가 디코더(500)에 의해 생성되며, 이들 샘플은 유리하게 6.25ms의 추가 신호의 리샘플링에 의해 도입된 지연을 채우는 것을 허용한다.The method P may further comprise adding an additional signal obtained from the samples stored in the finite impulse response filter memory to fill the delay introduced by the resampling step. Thus, in addition to the 6.25 ms additional signal previously generated, a 1.25 ms signal is generated by the decoder 500 and these samples advantageously allow the delay introduced by resampling of the 6.25 ms additional signal .

이러한 목적으로, 리샘플링 유닛(505)의 FIR 필터 메모리는 CELP 디코딩 후에 각 프레임에 대해 저장될 수 있다. 이 메모리의 샘플 수는 고려된 CELP 코어 주파수(12.8 또는 16 kHz)에서 1.25 ms에 해당한다For this purpose, the FIR filter memory of resampling unit 505 may be stored for each frame after CELP decoding. The number of samples in this memory corresponds to 1.25 ms at the considered CELP core frequency (12.8 or 16 kHz)

방법 P의 보완적인 실시예에 따르면, 저장된 샘플을 리샘플링하는 것은 유한 임펄스 응답 필터로부터의 제 1 지연보다 짧은 제 2 지연을 도입하는 보간 방법에 의해 수행되며, 이는 널(null)로 간주 될 수 있다. 따라서, FIR 필터 메모리로부터 생성된 1.25 ms 신호는 최소 지연을 의미하는 방법에 따라 리샘플링된다. 예를 들어, FIR 필터 메모리에 의해 생성된 1.25 ms의 신호를 리샘플링하는 것은 큐빅(cubic) 보간에 의해 수행될 수 있는데, 이는 오직 2 개의 샘플들로부터의 지연을 의미하며, FIR 필터로부터의 지연과 비교하여 최소 지연을 의미한다. 따라서, 두 개의 추가 샘플은 위에서 언급 한 1.25ms의 신호를 다시 샘플링하는 데 필요하다. 이 두 개의 추가 샘플은 FIR 필터의 리샘플링 메모리의 마지막 값을 반복하여 얻을 수 있다.According to a complementary embodiment of method P, resampling the stored samples is performed by an interpolation method which introduces a second delay shorter than the first delay from the finite impulse response filter, which can be considered null . Thus, the 1.25 ms signal generated from the FIR filter memory is resampled according to a method which means minimum delay. For example, resampling a 1.25 ms signal generated by an FIR filter memory can be performed by cubic interpolation, which means a delay from only two samples, and the delay from the FIR filter ≪ / RTI > Thus, two additional samples are needed to resample the 1.25 ms signal mentioned above. These two additional samples can be obtained by repeating the last value of the resampling memory of the FIR filter.

디코더는 제 1 및 제 2 전이 프레임으로부터 얻어진 6.25ms의 CELP 신호로부터 고주파수 부분을 추가로 디코딩할 수 있다. 이를 위해, CELP 디코더(504)는 선행 CELP 프레임의 마지막 서브 프레임으로부터의 적응 이득 및 고정 사전 벡터를 사용할 수 있다.The decoder may further decode the high frequency portion from the 6.25 ms CELP signal obtained from the first and second transition frames. To this end, the CELP decoder 504 may use an adaptive gain and a fixed dictionary vector from the last subframe of the preceding CELP frame.

디코더(500)는 616 단계에서, 디코딩된 신호와 리샘플링된 CELP 전이 서브 프레임, 큐빅 보간에 의해 리샘플링된 샘플 및 MDCT 디코더(507)로부터 발생되는 전이 프레임의 디코딩된 신호 사이의 중첩 가산을 보장할 수 있는 중첩 가산 유닛(509)을 더 포함한다.Decoder 500 can ensure overlay addition between the decoded signal and the decoded signal of the resampled CELP transition subframe, the sample resampled by cubic interpolation and the transition frame generated from MDCT decoder 507 in step 616 And a superimposing addition unit 509. [

이 목적을 위해, 유닛(509)은 도 3의 합성 수정된(modified) 윈도우(327)를 적용한다. 따라서, 두 쿼터에 대한 MDCT 앨리어싱 포인트 이전에, 샘플들은 제로화된다. 상술한 앨리어싱 포인트 후에, 윈도우된 샘플들은 도 3의 수정되지 않은 윈도우(324)에 의해 나뉘어지고, 인코더에 적용된 윈도우와 결합된 시너스-타입(sinus-type) 윈도우에 의해 곱해져서, 총 윈도우는 sin^2이다. 중첩 가산에 관련된 부분에서 CELP 및 0-지연 리샘플링(예를 들어, 큐빅 보간)으로 발생되는 샘플은 cos^2 윈도우에 의해 가중치가 적용된다.For this purpose, the unit 509 applies the synthetic modified window 327 of FIG. Thus, prior to the MDCT aliasing point for both quotas, the samples are zeroed. After the aliasing point described above, the windowed samples are divided by the unmodified window 324 of FIG. 3 and multiplied by a sinus-type window associated with the window applied to the encoder, ^ 2. Samples generated by CELP and 0-delayed resampling (eg, cubic interpolation) at the portion associated with the overlap addition are weighted by the cos ^ 2 window.

이와 같이 획득된 전이 프레임은 608 단계에서 디코더의 출력 인터페이스(510)로 전송된다.The thus obtained transition frame is transmitted to the output interface 510 of the decoder in step 608. [

도 7은 전이 프레임에 대한 비트 분포를 결정하기 위한 장치(700)의 예를 나타낸다.FIG. 7 shows an example of an apparatus 700 for determining a bit distribution for a transition frame.

상기 장치는 랜덤 액세스 메모리(random access memory)(704) 및 전술한 전이 프레임에 대한 비트 분포를 결정하는 방법을 구현할 수 있는 명령을 저장하기 위한 프로세서(703)를 포함한다. 상기 장치는 또한 상기 방법을 적용한 후에 보존되도록 의도된 데이터를 저장하기 위한 대용량 메모리(705)를 포함한다. 또한, 디바이스(700)는 디지털 신호 프레임을 수신하고 이들 상이한 프레임 각각에 할당된 예산에 대한 세부 사항을 방출하기 위한 입력 인터페이스(701) 및 출력 인터페이스(706)를 포함한다.The apparatus includes a processor 703 for storing instructions that may implement a random access memory 704 and a method for determining the bit distribution for the transition frame described above. The apparatus also includes a mass memory (705) for storing data intended to be stored after applying the method. Device 700 also includes an input interface 701 and an output interface 706 for receiving digital signal frames and for emitting the details of the budget allocated to each of these different frames.

상기 디바이스(700)는 디지털 신호 프로세서(DSP)(702)를 더 포함할 수 있다. 이 DSP(702)는 공지된 방식으로 이들 프레임을 형성, 복조 및 증폭하기 위한 디지털 신호 프레임을 수신할 수 있다. The device 700 may further include a digital signal processor (DSP) 702. The DSP 702 may receive digital signal frames for forming, demodulating, and amplifying these frames in a known manner.

본 발명은 예시적인 목적을 위해 상기 기술된 실시예에 국한되지 않으며; 그것은 다른 변형으로 확장된다.The present invention is not limited to the embodiments described above for illustrative purposes only; It extends to other variants.

따라서, 압축 또는 압축 해제 장치가 전체로서 엔티티(antity)인 실시예가 설명되었다. 물론, 장치는 예를 들어 디지털 카메라, 사진 카메라, 이동 전화, 컴퓨터, 영화 프로젝터 등과 같은 모든 타입의 보다 중요한 장치에 내장될 수 있다.Thus, an embodiment has been described in which the compression or decompression apparatus is an entity as a whole. Of course, the device may be embedded in any type of more important device, such as, for example, a digital camera, a photographic camera, a mobile phone, a computer, a movie projector,

또한, 압축, 압축 해제 및 비교 장치의 특정 설계를 제안하는 실시예가 설명되었다. 이러한 설계들은 설명의 목적으로만 제공되는 것이다. 따라서, 구성 요소의 배열 및 각 구성 요소에 할당된 태스크(task)의 상이한 분포도 고려될 수 있다. 예를 들어, 디지털 신호 프로세서 (DSP)에 의해 수행되는 작업은 고전(classic) 프로세서에 의해 수행될 수도 있다.In addition, embodiments have been described which suggest specific designs of compression, decompression and comparison devices. These designs are provided for illustrative purposes only. Thus, the arrangement of components and the different distributions of tasks assigned to each component can also be considered. For example, tasks performed by a digital signal processor (DSP) may be performed by a classic processor.

100: 오디오 코더
101: 수신 유닛
102: 전처리 유닛
103: CELP 코더
104: 전이 유닛
105: MDCT 코더
106: 프레임 코딩 유닛
107: 메모리
108: 전송 유닛
500: 오디오 디코더
501: 수신 유닛
502: 카테고리화 유닛
504: CELP 디코더
505: 리샘플링 유닛
507: MDCT 디코더
508: 지연 유닛
509: 중첩 가산 유닛
510: 출력 인터페이스
100: Audio coder
101: Receiving unit
102: preprocessing unit
103: CELP coder
104: transition unit
105: MDCT coder
106: Frame coding unit
107: Memory
108: Transmission unit
500: Audio decoder
501: receiving unit
502: Categorization unit
504: CELP decoder
505: resampling unit
507: MDCT decoder
508: Delay unit
509: Overlap addition unit
510: Output interface

Claims (15)

디지털 신호를 코딩/디코딩하기 위한 코더/디코더(100; 500)에서 구현되는, 전이 프레임(321, 322)을 코딩하기 위한 비트들의 분포를 결정하는 방법으로서,
상기 전이 프레임은 예측 코딩된 선행 프레임(320)에 선행되고,
상기 전이 프레임의 코딩은 상기 전이 프레임의 단일 서브 프레임의 변환 코딩 및 예측 코딩을 포함하고, 상기 방법은,
- 상기 전이 서브 프레임의 예측 코딩을 위한 비트 레이트를 할당하되, 상기 비트 레이트는 제 1 미리 결정된 비트 레이트 값과 상기 전이 프레임을 변환 코딩하기 위한 상기 비트 레이트 사이의 최소 값과 동일한 단계(402; 405);
- 상기 비트 레이트를 위한 상기 전이 서브 프레임을 예측 코딩하기 위하여 할당된 제 1 비트 수를 결정하는 단계(408, 408); 및
- 상기 전이 프레임 코딩을 위하여 가능한 비트 수와 상기 할당된 제 1 비트로부터, 상기 전이 프레임을 변환 코딩하기 위하여 할당된 제 2 비트 수를 계산하는 단계(410)를 포함하는 방법.
CLAIMS What is claimed is: 1. A method for determining a distribution of bits for coding a transition frame (321, 322), implemented in a coder / decoder (100; 500) for coding /
The transition frame precedes the predictive coded preceding frame 320,
Wherein the coding of the transition frame comprises transform coding and predictive coding of a single sub-frame of the transition frame,
- allocating a bit rate for predictive coding of the transition subframe, the bit rate being equal to a minimum value between a first predetermined bit rate value and the bit rate for transform coding the transition frame (402; 405 );
- determining (408, 408) a first number of bits allocated for predicting the transition subframe for the bit rate; And
- calculating (410) the number of possible bits for the transition frame coding and the second number of bits allocated for transcoding the transition frame from the assigned first bit.
제 1 항에 있어서,
상기 코더/디코더(100; 500)는,
제 1 주파수에서 신호 프레임의 예측 코딩/디코딩을 위한 제 1 코어 동작 및, 제 2 주파수에서 신호 프레임의 예측 코딩/디코딩을 위한 제 2 코어 동작을 포함하고,
제 2 미리 결정된 비트 레이트 값은 상기 예측 코딩된 선행 프레임(320)을 코딩/디코딩하기 위한, 상기 제 1 코어 동작 및 상기 제 2 코어 동작으로부터 선택된 코어에 의존하는 방법.
The method according to claim 1,
The coder / decoder (100; 500)
A first core operation for predictive coding / decoding a signal frame at a first frequency and a second core operation for predictive coding / decoding a signal frame at a second frequency,
Wherein a second predetermined bit rate value is dependent on a core selected from the first core operation and the second core operation for coding / decoding the predictive coded preceding frame (320).
제 2 항에 있어서,
상기 예측 코딩된 선행 프레임(320)을 코딩/디코딩하기 위하여 상기 제1 코어가 선택되었을 때, 상기 할당된 비트 레이트는 상기 변환 코딩된 전이 프레임(322)의 상기 비트 레이트와 적어도 하나의 제 2 미리 결정된 비트 레이트 값 사이의 최대 값과 동일하고, 상기 제 2 미리 결정된 비트 레이트 값은 상기 제 1 미리 결정된 비트 레이트 값보다 작은 방법.
3. The method of claim 2,
When the first core is selected to code / decode the predictive coded preceding frame 320, the assigned bit rate is compared to the bit rate of the transform coded transition frame 322 and the at least one second Wherein the second predetermined bit rate value is equal to a maximum value between the determined bit rate values, and wherein the second predetermined bit rate value is less than the first predetermined bit rate value.
선행하는 항 중 어느 한 항에 있어서,
상기 디지털 신호는 적어도 하나의 저 대역 주파수와 고 대역 주파수로 분해되고,
상기 계산된 제 1 비트 수는 상기 저 대역 주파수에 대한 상기 전이 서브 프레임(321)의 예측 코딩을 위하여 할당되고,
제 3 미리 결정된 비트 수는 상기 고 대역 주파수에 대한 상기 전이 서브 프레임의 코딩을 위하여 할당되고,
상기 전이 프레임(322)의 변환 코딩을 위하여 할당되는 상기 제 2 비트 수는 상기 제 3 미리 결정된 비트 수로부터 결정되는 방법.
12. A compound according to any one of the preceding claims,
The digital signal is decomposed into at least one low band frequency and a high band frequency,
The calculated first number of bits is allocated for predictive coding of the transition sub-frame 321 for the low-band frequency,
A third predetermined number of bits is allocated for coding of the transition sub-frame for the high-band frequency,
Wherein the second number of bits allocated for transcoding of the transition frame (322) is determined from the third predetermined number of bits.
제 4 항에 있어서,
상기 전이 프레임(321, 322)을 코딩하기 위하여 이용 가능한 비트의 수는 고정되는 것을 특징으로 하는 방법.
5. The method of claim 4,
Characterized in that the number of available bits for coding the transition frames (321, 322) is fixed.
제 5 항에 있어서,
상기 제 2 비트 수는 상기 전이 프레임(321; 322)을 코딩하기 위해 고정된 비트 수에서 상기 제 1 비트 수를 빼고, 상기 제 3 비트 수를 뺀 값과 동일한 방법.
6. The method of claim 5,
Wherein the second number of bits is equal to a value obtained by subtracting the first number of bits from a fixed number of bits to code the transition frame (321; 322) and subtracting the third number of bits.
제 5 항에 있어서,
상기 제 2 비트 수는 상기 전이 프레임(321;322)을 코딩하기 위해 고정된 비트 수에서 상기 제 1 비트 수를 빼고, 상기 제 3 비트 수를 빼고, 제 1 비트 및 제 2 비트를 뺀 값과 동일하고,
상기 제 1 비트는 상기 전이 서브 프레임의 상기 예측 코딩의 파라미터들을 결정할 때 저역 통과 필터 필터링이 수행되는지 여부를 나타내되, 상기 파라미터들은 토널 리드 타임(tonal lead time)과 관련되고,
상기 제 2 비트는 상기 전이 서브 프레임을 예측 코딩/디코딩을 위하여 상기 코더/디코더에 의하여 사용된 주파수를 나타내는 방법.
6. The method of claim 5,
The second number of bits is calculated by subtracting the first number of bits from a fixed number of bits to code the transition frame 321 (322), subtracting the third number of bits, subtracting the first and second bits, The same,
Wherein the first bit indicates whether low pass filter filtering is performed when determining the parameters of the predictive coding of the transition subframe, the parameters being related to a tonal lead time,
And the second bit indicates a frequency used by the coder / decoder for predictive coding / decoding the transition subframe.
예측 코딩에 따라 또는 변환 코딩에 따라 신호 프레임을 코딩할 수 있는 코더(100)에서 디지털 신호를 코딩하는 방법에 있어서,
* 예측 코딩에 따라 디지털 신호 샘플들의 선행 프레임(301)을 코딩하는 단계; 및
* 디지털 신호 샘플들의 현재 프레임(302)을 전이 프레임(321, 322)으로 코딩하는 단계를 포함하되, 상기 전이 프레임(321, 332)을 코딩하는 단계는 상기 전이 프레임의 단일 서브 프레임(321) 변환 코딩 및 예측 코딩하는 단계를 포함하고, 상기 현재 프레임(302)을 코딩하는 단계는 아래의 서브 단계들을 포함하되, 상기 서브 단계들은,
- 상기 이전의 청구항들 중 어느 한 항에 따라 비트들의 분포를 결정하는 단계(209);
- 할당된 제 2 비트 수에 대해 상기 전이 프레임(322)을 변환 코딩하는 단계(212); 및
- 상기 전이 서브 프레임(321) 및 할당된 제 1 비트 수를 예측 코딩하는 단계(213)를 포함하는 방법.
1. A method of coding a digital signal in a coder (100) capable of coding a signal frame in accordance with predictive coding or in accordance with transform coding,
Coding the preceding frame (301) of digital signal samples in accordance with predictive coding; And
Coding the current frame (302) of digital signal samples into a transition frame (321, 322), wherein coding the transition frame (321, 332) comprises transforming a single sub- Coding and predictive coding, the step of coding the current frame (302) comprises the following sub-steps:
- determining (209) the distribution of bits according to any one of the preceding claims;
- transform coding (212) the transition frame (322) for a second number of bits allocated; And
- predicting the transition sub-frame (321) and the first number of bits allocated (213).
제 8 항에 있어서,
상기 예측 코딩하는 단계는, 상기 할당된 비트 레이트에 대한 결정된 예측 코딩 파라미터들을 생성하는 단계를 포함하는 방법.
9. The method of claim 8,
Wherein the predictive coding step comprises generating determined predictive coding parameters for the assigned bit rate.
제 8 항 및 제 9 항 중 어느 한 항에 있어서,
상기 예측 코딩하는 단계는, 상기 선행 프레임의 예측 코딩을 위해 적어도 하나의 파라미터를 재사용하여 상기 선행 프레임(320)의 예측 코딩과 관련하여 제한된 예측 코딩 파라미터들을 생성하는 단계를 포함하는 방법.
10. A method according to any one of claims 8 and 9,
Wherein the predictive coding step includes reusing at least one parameter for predictive coding of the preceding frame to generate limited predictive coding parameters associated with predictive coding of the preceding frame.
코딩된 디지털 신호를 디코딩하는 방법에 있어서, 상기 방법에 따라 구현된 디코더(500)는 예측 코딩 또는 변환 디코딩에 따라 신호 프레임들을 디코딩할 수 있고,
* 예측 코딩에 따라 코딩된 디지털 신호 샘플들의 선행 프레임을 예측 코딩하는 단계(605); 및
* 전이 프레임(321, 322)을 디코딩하고 디지털 신호 샘플들의 현재 프레임을 코딩하고, 상기 전이 프레임을 코딩하는 단계는, 상기 전이 프레임의 단일 서브 프레임(321)을 변환 코딩 및 예측 코딩하는 단계를 포함하고, 아래의 서브 단계들을 포함하되, 상기 서브 단계는,
- 상기 이전의 청구항들 중 어느 한 항에 따라 비트들의 분포를 결정하는 단계(611);
- 할당된 제 1 비트 수에 대해 상기 전이 서브 프레임(321)을 예측 디코딩하는 단계(614); 및
- 할당된 제 2 비트 수에 대해 상기 전이 프레임(322)을 변환 디코딩하는 단계(612)를 포함하는 방법.
A method of decoding a coded digital signal, wherein the decoder (500) implemented in accordance with the method is capable of decoding signal frames in accordance with predictive coding or transform decoding,
Predicting (605) a preceding frame of digital signal samples coded according to predictive coding; And
Decoding the transition frames 321 and 322 and coding the current frame of digital signal samples and coding the transition frame includes transform coding and predictive coding of a single sub frame 321 of the transition frame And comprising the following sub-steps:
- determining (611) the distribution of bits according to any one of the preceding claims;
- predicting (614) the transition subframe (321) for a first number of bits allocated; And
- transform decoding (612) the transition frame (322) for a second number of bits allocated.
명령들이 프로세서에 의해 실행될 때, 상기 이전의 청구항들 중 어느 한 항에 따른 방법을 구현하기 위한 상기 명령들을 포함하는 컴퓨터 프로그램.15. A computer program comprising instructions for implementing a method according to any one of the preceding claims when instructions are executed by a processor. 전이 프레임(321, 322)을 코딩하기 위한 비트들의 분포를 결정하기 위한 장치로서, 상기 장치(104, 503)는 디지털 신호를 코딩/디코딩하기 위한 코더/디코더에서 구현되고, 상기 전이 프레임은 예측 코딩된 선행 프레임(320)에 의해 선행되고, 상기 전이 프레임을 코딩하는 단계는 단일 서브 프레임(321)을 변환 코딩 및 예측 코딩하는 단계를 포함하고, 상기 전이 프레임을 코딩하기 위한 상기 비트들의 수는 고정되고, 상기 장치는 다음 동작들을 수행하도록 배열된 프로세서를 포함하되, 상기 동작은,
- 상기 전이 서브 프레임을 예측 코딩하기 위한 비트 레이트를 할당하되, 상기 비트 레이트는 상기 전이 프레임을 변환 코딩하기 위한 비트 레이트와 제 1 미리 결정된 비트 레이트 값 사이의 최소값과 동일하고;
- 상기 비트 레이트에 대한 상기 전이 서브 프레임을 예측 코딩하기 위해 할당된 제 1 비트 수를 결정하고;
- 상기 코딩 파라미터들을 코딩하는데 필요한 비트 수 및 상기 전이 프레임을 코딩하기 위한 상기 고정된 비트 수로부터 상기 전이 프레임을 변환 코딩하기 위해 할당된 제 2 비트 수를 계산하는 장치.
An apparatus for determining a distribution of bits for coding transition frames (321, 322), the apparatus (104, 503) being implemented in a coder / decoder for coding / decoding a digital signal, Wherein the step of coding the transition frame comprises transform coding and predecoding a single subframe (321), wherein the number of bits for coding the transition frame is fixed The apparatus comprising a processor arranged to perform the following operations,
Allocating a bit rate for predicting the transition subframe, the bit rate being equal to a minimum value between a bit rate for transform coding the transition frame and a first predetermined bit rate value;
Determining a first number of bits allocated for predicting the transition sub-frame for the bit rate;
And - a second number of bits allocated for transcoding the transition frame from the number of bits needed to code the coding parameters and the number of fixed bits for coding the transition frame.
예측 코딩 또는 변환 코딩에 따라 디지털 신호 프레임들을 코딩할 수 있는 코더에 있어서,
* 제 13 항에 따른 장치(104); 및
* 아래의 동작을 수행하도록 구성된 프로세서를 포함하는 예측 코더(103)를 포함하되, 상기 동작은
- 예측 코딩에 따라 디지털 신호 샘플들의 선행 프레임을 코딩하고;
- 전이 프레임에 포함된 단일 서브 프레임을 예측 코딩하고, 디지털 신호 샘플들의 현재 프레임을 코딩하고, 상기 전이 프레임을 코딩하고, 상기 서브 프레임을 변환 코딩 또는 예측 코딩하되, 상기 프로세서는 할당된 제 1 비트 수의 전이 서브 프레임을 예측 코딩하기 위해 배열되고;
- 할당된 제 2 비트 수에서 상기 전이 프레임을 변환 코딩하는 동작을 수행하도록 배치된 프로세서를 포함하는 변환 코더(105)를 포함하는 코더.
A coder capable of coding digital signal frames in accordance with predictive coding or transform coding,
Device (104) according to claim 13; And
A prediction coder 103 comprising a processor configured to perform the following operations,
- code the preceding frame of digital signal samples according to prediction coding;
- coding a current frame of digital signal samples, coding the transition frame, and transcoding or predecoding the subframe, wherein the processor is configured to: The number of transitions being arranged to predictively code subframes;
- a transcoder (105) comprising a processor arranged to perform transcoding the transition frame at a second number of bits allocated.
예측 코딩 및 변환 코딩에 의해 코딩된 디지털 신호용 디코더에 있어서,
* 제 13 항에 따른 장치(503); 및
* 다음의 동작을 수행하도록 구성된 프로세서를 포함하는 예측 디코더(504)를 포함하되, 상기 동작은,
- 예측 코딩에 따라 코딩된 디지털 신호 샘플들의 선행 프레임(320)을 예측 디코딩하고;
- 전이 프레임에 포함된 단일 서브 프레임(321)을 예측 디코딩하고, 디지털 신호 샘플들의 현재 프레임을 코딩하고, 상기 전이 프레임을 코딩하고, 상기 서브 프레임을 예측 코딩하고 변환 코딩하되, 상기 프로세서는 할당된 제 1 비트 수의 상기 전이 서브 프레임을 예측 디코딩하는 연산을 수행하도록 배치되고,
* 할당된 제 2 비트 수에 대해 상기 전이 프레임을 변환 디코딩을 수행하도록 배치된 프로세서를 포함하는 변환 디코더(507)를 포함하는 디코더.
In a decoder for a digital signal coded by predictive coding and transform coding,
An apparatus (503) according to claim 13; And
A prediction decoder (504) comprising a processor configured to perform the following operations,
Predictively decode the preceding frame (320) of coded digital signal samples according to predictive coding;
Predicting and decoding a single subframe (321) included in a transition frame, coding a current frame of digital signal samples, coding the transition frame, and predictively coding and transform coding the subframe, And to perform an operation of predicting and decoding the transition sub-frame of the first number of bits,
And a transform decoder (507) comprising a processor arranged to perform transform decoding of the transition frame for a second number of bits allocated.
KR1020177005825A 2014-07-29 2015-07-27 Determining a budget for lpd/fd transition frame encoding KR20170037660A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227015119A KR102485835B1 (en) 2014-07-29 2015-07-27 Determining a budget for lpd/fd transition frame encoding

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1457353 2014-07-29
FR1457353A FR3024581A1 (en) 2014-07-29 2014-07-29 DETERMINING A CODING BUDGET OF A TRANSITION FRAME LPD / FD
PCT/FR2015/052073 WO2016016566A1 (en) 2014-07-29 2015-07-27 Determining a budget for lpd/fd transition frame encoding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227015119A Division KR102485835B1 (en) 2014-07-29 2015-07-27 Determining a budget for lpd/fd transition frame encoding

Publications (1)

Publication Number Publication Date
KR20170037660A true KR20170037660A (en) 2017-04-04

Family

ID=51894138

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227015119A KR102485835B1 (en) 2014-07-29 2015-07-27 Determining a budget for lpd/fd transition frame encoding
KR1020177005825A KR20170037660A (en) 2014-07-29 2015-07-27 Determining a budget for lpd/fd transition frame encoding

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020227015119A KR102485835B1 (en) 2014-07-29 2015-07-27 Determining a budget for lpd/fd transition frame encoding

Country Status (8)

Country Link
US (2) US10586549B2 (en)
EP (1) EP3175443B1 (en)
JP (1) JP6607921B2 (en)
KR (2) KR102485835B1 (en)
CN (2) CN112133315B (en)
ES (1) ES2676832T3 (en)
FR (1) FR3024581A1 (en)
WO (1) WO2016016566A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3024581A1 (en) * 2014-07-29 2016-02-05 Orange DETERMINING A CODING BUDGET OF A TRANSITION FRAME LPD / FD
JP6754764B2 (en) * 2014-12-09 2020-09-16 ドルビー・インターナショナル・アーベー Error concealment of M DCT area
CA3074750A1 (en) * 2017-09-20 2019-03-28 Voiceage Corporation Method and device for efficiently distributing a bit-budget in a celp codec
CN111402908A (en) * 2020-03-30 2020-07-10 Oppo广东移动通信有限公司 Voice processing method, device, electronic equipment and storage medium
CN111431947A (en) * 2020-06-15 2020-07-17 广东睿江云计算股份有限公司 Method and system for optimizing display of cloud desktop client

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE302991T1 (en) * 1998-01-22 2005-09-15 Deutsche Telekom Ag METHOD FOR SIGNAL-CONTROLLED SWITCHING BETWEEN DIFFERENT AUDIO CODING SYSTEMS
US6782360B1 (en) * 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US6604070B1 (en) * 1999-09-22 2003-08-05 Conexant Systems, Inc. System of encoding and decoding speech signals
US6804218B2 (en) * 2000-12-04 2004-10-12 Qualcomm Incorporated Method and apparatus for improved detection of rate errors in variable rate receivers
EP1428206B1 (en) * 2001-08-17 2007-09-12 Broadcom Corporation Bit error concealment methods for speech coding
CA2365203A1 (en) * 2001-12-14 2003-06-14 Voiceage Corporation A signal modification method for efficient coding of speech signals
US6647366B2 (en) * 2001-12-28 2003-11-11 Microsoft Corporation Rate control strategies for speech and music coding
US7937271B2 (en) * 2004-09-17 2011-05-03 Digital Rise Technology Co., Ltd. Audio decoding using variable-length codebook application ranges
US7630902B2 (en) * 2004-09-17 2009-12-08 Digital Rise Technology Co., Ltd. Apparatus and methods for digital audio coding using codebook application ranges
US8090573B2 (en) * 2006-01-20 2012-01-03 Qualcomm Incorporated Selection of encoding modes and/or encoding rates for speech compression with open loop re-decision
FR2897733A1 (en) * 2006-02-20 2007-08-24 France Telecom Echo discriminating and attenuating method for hierarchical coder-decoder, involves attenuating echoes based on initial processing in discriminated low energy zone, and inhibiting attenuation of echoes in false alarm zone
MX2009004427A (en) * 2006-10-24 2009-06-30 Voiceage Corp Method and device for coding transition frames in speech signals.
KR100848324B1 (en) * 2006-12-08 2008-07-24 한국전자통신연구원 An apparatus and method for speech condig
CN101206860A (en) * 2006-12-20 2008-06-25 华为技术有限公司 Method and apparatus for encoding and decoding layered audio
CN101025918B (en) * 2007-01-19 2011-06-29 清华大学 Voice/music dual-mode coding-decoding seamless switching method
CN100578619C (en) * 2007-11-05 2010-01-06 华为技术有限公司 Encoding method and encoder
EP2077551B1 (en) * 2008-01-04 2011-03-02 Dolby Sweden AB Audio encoder and decoder
CN101261836B (en) * 2008-04-25 2011-03-30 清华大学 Method for enhancing excitation signal naturalism based on judgment and processing of transition frames
AU2009267394B2 (en) * 2008-07-11 2012-10-18 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder and decoder for encoding frames of sampled audio signals
MY159110A (en) * 2008-07-11 2016-12-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E V Audio encoder and decoder for encoding and decoding audio samples
EP2144171B1 (en) * 2008-07-11 2018-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder for encoding and decoding frames of a sampled audio signal
KR101315617B1 (en) * 2008-11-26 2013-10-08 광운대학교 산학협력단 Unified speech/audio coder(usac) processing windows sequence based mode switching
KR101622950B1 (en) * 2009-01-28 2016-05-23 삼성전자주식회사 Method of coding/decoding audio signal and apparatus for enabling the method
WO2011013983A2 (en) * 2009-07-27 2011-02-03 Lg Electronics Inc. A method and an apparatus for processing an audio signal
AU2010305383B2 (en) * 2009-10-08 2013-10-03 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Multi-mode audio signal decoder, multi-mode audio signal encoder, methods and computer program using a linear-prediction-coding based noise shaping
MY166169A (en) * 2009-10-20 2018-06-07 Fraunhofer Ges Forschung Audio signal encoder,audio signal decoder,method for encoding or decoding an audio signal using an aliasing-cancellation
SG10201406778VA (en) * 2009-10-20 2015-01-29 Fraunhofer Ges Forschung Multi-mode audio codec and celp coding adapted therefore
CN102222505B (en) * 2010-04-13 2012-12-19 中兴通讯股份有限公司 Hierarchical audio coding and decoding methods and systems and transient signal hierarchical coding and decoding methods
KR20130036304A (en) * 2010-07-01 2013-04-11 엘지전자 주식회사 Method and device for processing audio signal
US8990094B2 (en) * 2010-09-13 2015-03-24 Qualcomm Incorporated Coding and decoding a transient frame
FR2969805A1 (en) * 2010-12-23 2012-06-29 France Telecom LOW ALTERNATE CUSTOM CODING PREDICTIVE CODING AND TRANSFORMED CODING
CA2827272C (en) * 2011-02-14 2016-09-06 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion
CN102737636B (en) * 2011-04-13 2014-06-04 华为技术有限公司 Audio coding method and device thereof
FR2977439A1 (en) * 2011-06-28 2013-01-04 France Telecom WINDOW WINDOWS IN ENCODING / DECODING BY TRANSFORMATION WITH RECOVERY, OPTIMIZED IN DELAY.
BR122021019877B1 (en) * 2011-06-30 2022-07-19 Samsung Electronics Co., Ltd DEVICE FOR GENERATING AN EXTENDED BANDWIDTH SIGNAL
FR2981781A1 (en) * 2011-10-19 2013-04-26 France Telecom IMPROVED HIERARCHICAL CODING
US9672840B2 (en) * 2011-10-27 2017-06-06 Lg Electronics Inc. Method for encoding voice signal, method for decoding voice signal, and apparatus using same
EP2830062B1 (en) * 2012-03-21 2019-11-20 Samsung Electronics Co., Ltd. Method and apparatus for high-frequency encoding/decoding for bandwidth extension
CN103915100B (en) * 2013-01-07 2019-02-15 中兴通讯股份有限公司 A kind of coding mode switching method and apparatus, decoding mode switching method and apparatus
MX348506B (en) * 2013-02-20 2017-06-14 Fraunhofer Ges Forschung Apparatus and method for encoding or decoding an audio signal using a transient-location dependent overlap.
EP2980797A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder, method and computer program using a zero-input-response to obtain a smooth transition
FR3024581A1 (en) * 2014-07-29 2016-02-05 Orange DETERMINING A CODING BUDGET OF A TRANSITION FRAME LPD / FD
TWI602172B (en) * 2014-08-27 2017-10-11 弗勞恩霍夫爾協會 Encoder, decoder and method for encoding and decoding audio content using parameters for enhancing a concealment

Also Published As

Publication number Publication date
CN106605263B (en) 2020-11-27
JP2017527843A (en) 2017-09-21
EP3175443A1 (en) 2017-06-07
JP6607921B2 (en) 2019-11-20
KR20220066412A (en) 2022-05-24
US11158332B2 (en) 2021-10-26
CN112133315B (en) 2024-03-08
CN106605263A (en) 2017-04-26
US20180182408A1 (en) 2018-06-28
ES2676832T3 (en) 2018-07-25
EP3175443B1 (en) 2018-04-11
CN112133315A (en) 2020-12-25
WO2016016566A1 (en) 2016-02-04
KR102485835B1 (en) 2023-01-09
US20200168236A1 (en) 2020-05-28
US10586549B2 (en) 2020-03-10
FR3024581A1 (en) 2016-02-05

Similar Documents

Publication Publication Date Title
JP7488926B2 (en) Encoders using forward aliasing cancellation
RU2584463C2 (en) Low latency audio encoding, comprising alternating predictive coding and transform coding
EP3336840B1 (en) Audio decoder and method for providing a decoded audio information using an error concealment modifying a time domain excitation signal
TWI459379B (en) Audio encoder and decoder for encoding and decoding audio samples
JP7026711B2 (en) Frame loss management in FD / LPD transition context
US11158332B2 (en) Determining a budget for LPD/FD transition frame encoding
AU2017265062A1 (en) Audio decoder and method for providing a decoded audio information using an error concealment based on a time domain excitation signal
TWI587291B (en) Audio decoder/encoder device and its operating method and computer program
KR20130133846A (en) Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion
CN105723457B (en) Predictive coding/decoding is transitioned into from transition coding/decoding
Ogunfunmi et al. Scalable and Multi-Rate Speech Coding for Voice-over-Internet Protocol (VoIP) Networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
E601 Decision to refuse application
E801 Decision on dismissal of amendment