KR20100085994A - Mdct 스펙트럼의 결합 인코딩을 이용하는 스케일링 가능한 스피치 및 오디오 인코딩 - Google Patents

Mdct 스펙트럼의 결합 인코딩을 이용하는 스케일링 가능한 스피치 및 오디오 인코딩 Download PDF

Info

Publication number
KR20100085994A
KR20100085994A KR1020107011197A KR20107011197A KR20100085994A KR 20100085994 A KR20100085994 A KR 20100085994A KR 1020107011197 A KR1020107011197 A KR 1020107011197A KR 20107011197 A KR20107011197 A KR 20107011197A KR 20100085994 A KR20100085994 A KR 20100085994A
Authority
KR
South Korea
Prior art keywords
transform
signal
spectral lines
spectral
layer
Prior art date
Application number
KR1020107011197A
Other languages
English (en)
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 퀄컴 인코포레이티드
Publication of KR20100085994A publication Critical patent/KR20100085994A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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

Abstract

결합 스펙트럼 인코딩을 구현하는 스케일링 가능한 스피치 및 오디오 코덱이 제공된다. 나머지 신호는 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터 획득되고, 여기서, 나머지 신호는 원래의 오디오 신호와 그 원래의 오디오 신호의 재구성된 버전 사이의 차이다. 나머지 신호는 이산 코사인 변환 (DCT)-타입의 변환 계층에서 변환되어, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼을 획득한다. 변환 스펙트럼의 스펙트럼 라인은 결합 위치 코딩 기술을 이용하여 변환된다. 결합 위치 코딩 기술은 스펙트럼 라인의 선택된 서브세트에 대한 사전적 인덱스를 생성하는 것을 포함하고, 각각의 사전적 인덱스는, 복수의 가능한 2 진 스트링 중 스펙트럼 라인의 선택된 서브세트의 위치를 나타내는 2 진 스트링을 나타낸다. 사전적 인덱스는 2 진 스트링 내의 넌-제로 스펙트럼 라인을 그 2 진 스트링의 길이보다 적은 비트로 나타낸다.

Description

MDCT 스펙트럼의 결합 인코딩을 이용하는 스케일링 가능한 스피치 및 오디오 인코딩{SCALABLE SPEECH AND AUDIO ENCODING USING COMBINATORIAL ENCODING OF MDCT SPECTRUM}
35 U.S.C.§119 하의 우선권 주장
본 특허출원은, 2007 년 10 월 22 일 출원되고 발명의 명칭이 "Low-Complexity Technique for Encoding/Decoding of Quantized MDCT Spectrum in Scalable Speech + Audio Codecs" 이며, 본 양수인에게 양도되고 본 명세서에 참조로 명백하게 포함된 미국 가특허출원 제 60/981,814 호에 대해 우선권을 주장한다.
다음의 상세한 설명은 일반적으로 인코더 및 디코더에 관한 것이고, 더 상세하게는, 변형된 이산 코사인 변환 (MDCT) 스펙트럼을 스케일링 가능한 스피치 및 오디오 코덱의 일부로 코딩하는 효율적인 방식에 관한 것이다.
오디오 코딩의 일 목적은, 오디오 신호를 가능한 한 원래의 사운드 품질만큼 유지하면서 원하는 한정된 정보량으로 압축하는 것이다. 인코딩 프로세스에서, 시간 도메인의 오디오 신호는 주파수 도메인으로 변환된다.
MPEG Layer-3 (MP3), MPEG-2 및 MPEG-4 와 같은 지각적 오디오 코딩 기술은 데이터량을 감소시키기 위해 인간 귀의 신호 마스킹 특성을 이용한다. 이로써, 양자화 잡음은 지배적인 전체 신호에 의해 마스킹되는 방식으로, 즉, 불가청으로 남는 방식으로 주파수 대역에 분포된다. 오디오 품질의 지각가능한 손실이 거의 없이 또는 전혀 없이 상당한 저장 사이즈의 감소가 가능하다. 지각적 오디오 코딩 기술은 종종 스케일링 가능하고, 기본 또는 코어 계층 및 적어도 하나의 향상 계층을 갖는 계층화된 비트 스트림을 생성한다. 이것은, 비트-레이트 스케일링 가능성을 허용하여, 즉, 디코더 측에서 상이한 오디오 품질 레벨로 디코딩하는 것 또는 트래픽 형상화 또는 컨디셔닝에 의해 네트워크 내의 비트 레이트를 감소시키는 것을 허용한다.
코드 여기 선형 예측 (CELP; code excited linear prediction) 은, 스피치 코딩에 널리 이용되는 대수적 CELP (ACELP), 릴랙스드 CELP (RCELP), 저-지연 CELP (LD-CELP) 및 벡터 합 여기 선형 예측 (VSELP) 를 포함하는 알고리즘의 클래스이다. CELP 의 기본 원리는 AbS (Analysis-by-Synthesis) 로 지칭되며, 디코딩된 (합성) 신호를 폐쇄 루프에서 지각적으로 최적화함으로써 인코딩 (분석) 이 수행되는 것을 의미한다. 이론적으로, 최상의 CELP 스트림은, 모든 가능한 비트 조합을 시도하고, 최상으로 들리는 디코딩된 신호를 생성하는 비트 조합을 선택함으로써 생성될 것이다. 이것은, 실제로는 2 가지 이유, 즉, 구현하기에 매우 복잡한 것 및 "최상으로 들리는" 선택 기준은 인간 청취자를 의미하는 것 때문에 명백하게 가능하지 않다. 한정된 연산 리소스를 이용하여 실시간 인코딩을 달성하기 위해, CELP 탐색은 지각적 가중 기능을 이용하여 더 작고 더 조작하기 쉬운 연속적 탐색으로 분할된다. 통상적으로, 인코딩은, (a) 입력 오디오 신호에 대한 선형 예측 코딩 계수를 (통상적으로 라인 스펙트럼 쌍으로서) 연산 및/또는 양자화하는 것, (b) 최상의 매칭을 탐색하여 코딩된 신호를 생성하기 위해 코드북을 이용하는 것, (c) 코딩된 신호와 실제 입력 신호 사이의 차이인 에러 신호를 생성하는 것, 및 (d) (통상적으로 MDCT 스펙트럼에서) 이러한 에러 신호를 하나 이상의 계층에서 더 인코딩하여, 재구성되거나 합성된 신호의 품질을 개선하는 것을 포함한다.
CELP 알고리즘에 기초하여 스피치 및 오디오 코덱을 구현하는 다양한 다른 기술들이 이용가능하다. 이 기술들 중 몇몇에서는, (통상적으로 DCT, MDCT 또는 유사한 변환을 이용하여) 후속적으로 변환되고, 인코딩된 신호의 품질을 더 개선하기 위해 인코딩되는 에러 신호가 생성된다. 그러나, 다수의 이동 디바이스 및 네트워크의 프로세싱 및 대역폭 제한에 기인하여, 저장 또는 송신되는 정보의 사이즈를 감소시키기 위해 이러한 MDCT 스펙트럼 코딩의 효율적인 구현이 바람직하다.
다음으로, 몇몇 실시형태의 기본적 이해를 제공하기 위해 하나 이상의 실시형태의 단순한 개요를 제공한다. 이 개요는 고려되는 모든 실시형태의 포괄적 개관이 아니며, 모든 실시형태의 중요한 또는 결정적인 엘리먼트를 식별하거나 임의의 또는 모든 실시형태의 범주를 한정하도록 의도되는 것은 아니다. 그 유일한 목적은, 추후에 제공되는 더 상세한 설명에 대한 서두로서 하나 이상의 실시형태들의 몇몇 개념들을 단순화된 형태로 제공하는 것이다.
스케일링 가능한 스피치 및 오디오 압축 알고리즘에서 MDCT (또는 유사한 변환 기반) 스펙트럼의 인코딩/디코딩을 위한 효율적인 기술이 제공된다. 이 기술은 코드의 구조를 정의할 때 지각적으로 양자화된 MDCT 스펙트럼의 스파스니스 (sparseness) 특성을 이용하며, 이것은 코딩된 대역에서 넌-제로 스펙트럼 라인의 부분들을 나타내는 엘리먼트를 포함하고, 이 엘리먼트를 연산하기 위해 결합 열거 기술을 이용한다.
일 실시예에서, 스케일링 가능한 스피치 및 오디오 코덱에서 MDCT 스펙트럼을 인코딩하는 방법이 제공된다. 변환 스펙트럼의 이러한 인코딩은, 인코더 하드웨어, 인코딩 소프트웨어 및/또는 이들의 결합에 의해 수행될 수도 있고, 프로세서, 프로세싱 회로, 및/또는 머신 판독가능 매체에서 구현될 수도 있다. 코드 여기 선형 예측 (CELP) 기반 인코딩 계층으로부터 나머지 신호가 획득되고, 이 나머지 신호는 원래의 오디오 신호와 원래의 오디오 신호의 재구성된 버전 사이의 차이이다. 원래의 오디오 신호의 재구성된 버전은: (a) CELP 기반 인코딩 계층으로부터 원래의 오디오 신호의 인코딩된 버전을 합성하여 합성된 신호를 획득하는 단계, (b) 합성된 신호를 리-엠퍼시스하는 단계, 및/또는 (c) 리-엠퍼시스된 신호를 업샘플링하여 원래의 오디오 신호의 재구성된 버전을 획득하는 단계에 의해 획득될 수도 있다.
나머지 신호는 이산 코사인 변환 (DCT) 타입의 변환 계층에서 변환되어, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼을 획득한다. DCT 타입의 변환 계층은 변형된 이산 코사인 변환 (MDCT) 계층일 수도 있고, 그 변환 스펙트럼은 MDCT 스펙트럼이다.
변환 스펙트럼의 스펙트럼 라인은 결합 위치 코딩 기술을 이용하여 인코딩된다. 변환 스펙트럼의 스펙트럼 라인의 인코딩은, 넌-제로 스펙트럼 라인 위치에 대한 결합 위치 코딩 기술을 이용하여, 스펙트럼 라인 위치를 나타내는 것에 기초하여 스펙트럼 라인의 선택된 서브세트의 위치를 인코딩하는 것을 포함할 수도 있다. 몇몇 구현에서는, 스펙트럼 라인의 세트가 드롭되어 인코딩 이전에 스펙트럼 라인의 수를 감소시킬 수도 있다. 또 다른 실시예에서, 결합 위치 코딩 기술은, 스펙트럼 라인의 선택된 서브세트에 대한 사전적 인덱스를 생성하는 것을 포함할 수도 있으며, 각각의 사전적 인덱스는, 스펙트럼 라인의 선택된 서브세트의 위치를 나타내는 복수의 가능한 2 진 스트링 중 하나를 나타낸다. 사전적 인덱스는 2 진 스트링에서의 스펙트럼 라인을 그 2 진 스트링의 길이보다 더 적은 비트로 나타낼 수도 있다.
또 다른 예에서, 결합 위치 코딩 기술은 2 진 스트링 내의 스펙트럼 라인의 위치를 나타내는 인덱스를 생성하는 것을 포함할 수도 있으며, 그 스펙트럼 라인의 위치는 결합 공식:
Figure pct00001
에 기초하여 인코딩되고, 여기서, n 은 2 진 스트링의 길이이고, k 는 인코딩될 선택된 스펙트럼 라인의 수이고, wj 는 2 진 스트링의 개별 비트를 나타낸다.
몇몇 구현에서, 복수의 스펙트럼 라인은 복수의 서브밴드로 분할될 수도 있고, 연속적인 서브밴드는 영역들로 그룹화될 수도 있다. 영역 내의 각각의 서브밴드에 대한 복수의 스펙트럼 라인으로부터 선택된 메인 펄스가 인코딩될 수도 있고, 영역 내의 스펙트럼 라인의 선택된 서브세트는 각각의 서브밴드에 대한 메인 펄스를 배제한다. 또한, 일 영역 내의 스펙트럼 라인의 선택된 서브세트의 위치는 넌-제로 스펙트럼 라인 위치에 대한 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여 인코딩될 수도 있다. 그 영역 내의 스펙트럼 라인의 선택된 서브세트는 각각의 서브밴드에 대한 메인 펄스를 배제할 수도 있다. 변환 스펙트럼의 스펙트럼 라인의 인코딩은, 그 스펙트럼 라인의 선택된 서브세트의 위치에 기초하여, 영역 내의 모든 위치와 동일한 길이인 모든 가능한 2 진 스트링의 어레이를 생성하는 것을 포함할 수도 있다. 영역은 중첩될 수도 있고, 각각의 영역은 복수의 연속적 서브밴드를 포함할 수도 있다.
또 다른 예에서는, 스케일링 가능한 스피치 및 오디오 코덱에서 변환 스펙트럼을 디코딩하는 방법이 제공된다. 변환 스펙트럼의 이러한 디코딩은 디코더 하드웨어, 디코딩 소프트웨어 및/또는 이들의 결합에 의해 수행될 수도 있고, 프로세서, 프로세싱 회로, 및/또는 머신 판독가능 매체에서 구현될 수도 있다. 나머지 신호의 복수의 변환 스펙트럼의 스펙트럼 라인을 나타내는 인덱스가 획득되며, 나머지 신호는 코드 여기 선형 예측 (CELP) 기반 인코딩 계층으로부터의 원래의 오디오 신호와 그 원래의 오디오 신호의 재구성된 버전 사이의 차이이다. 인덱스는 2 진 스트링에서의 넌-제로 스펙트럼 라인을 그 2 진 스트링의 길이보다 더 적은 비트로 나타낼 수도 있다. 일 예에서, 획득된 인덱스는 2 진 스트링 내의 스펙트럼 라인의 위치를 나타낼 수도 있으며, 그 스펙트럼 라인의 위치는 결합 공식:
Figure pct00002
에 기초하여 인코딩되고, 여기서, n 은 2 진 스트링의 길이이고, k 는 인코딩될 선택된 스펙트럼 라인의 수이고, wj 는 2 진 스트링의 개별 비트를 나타낸다.
인덱스는, 복수의 변환 스펙트럼의 스펙트럼 라인을 인코딩하는데 이용되는 결합 위치 코딩 기술을 반대로 행함으로써 디코딩된다. 나머지 신호의 버전은 역 이산 코사인 변환 (IDCT) 타입의 역변환 계층에서 디코딩된 복수의 변환 스펙트럼의 스펙트럼 라인을 이용하여 합성된다. 나머지 신호의 버전을 합성하는 것은, 변환 스펙트럼의 스펙트럼 라인에 역 DCT 타입의 변환을 적용하여 나머지 신호의 시간-도메인 버전을 생성하는 것을 포함한다. 변환 스펙트럼의 스펙트럼 라인을 디코딩하는 것은, 넌-제로 스펙트럼 라인 위치에 대한 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여 스펙트럼 라인의 선택된 서브세트의 위치를 디코딩하는 것을 포함할 수도 있다. DCT 타입의 역변환 계층은 역 변형된 이산 코사인 변환 (IMDCT) 계층일 수도 있고, 변환 스펙트럼은 MDCT 스펙트럼이다.
추가적으로 원래의 오디오 신호를 인코딩한 CELP-인코딩 신호가 수신될 수도 있다. CELP-인코딩 신호는 디코딩되어 디코딩 신호를 생성할 수도 있다. 디코딩 신호는 나머지 신호의 합성된 버전과 결합되어, 원래의 오디오 신호의 (더 높은 신뢰도의) 재구성된 버전을 획득할 수도 있다.
다양한 특성, 성질 및 이점은 도면과 관련하여 기술된 상세한 설명으로부터 명백해질 것이며, 도면 전체에서 유사한 참조부호는 대응하는 부분을 식별한다.
도 1 은 하나 이상의 코딩 특성이 구현될 수도 있는 통신 시스템을 도시하는 블록도이다.
도 2 는 일 실시예에 따라 효율적인 오디오 코딩을 수행하도록 구성될 수도 있는 송신 디바이스를 도시하는 블록도이다.
도 3 은 일 실시예에 따라 효율적인 오디오 디코딩을 수행하도록 구성될 수도 있는 수신 디바이스를 도시하는 블록도이다.
도 4 는 일 실시예에 따른 스케일링 가능한 인코더의 블록도이다.
도 5 는 인코더에 의해 구현될 수도 있는 MDCT 스펙트럼 인코딩 프로세스를 도시하는 블록도이다.
도 6 은, 프레임이 선택되고 영역들 및 서브밴드로 분할되어 MDCT 스펙트럼의 인코딩을 용이하게 할 수 있는 방법의 일 실시예를 도시하는 도면이다.
도 7 은 효율적인 방식으로 오디오 프레임을 인코딩하는 일반적 접근방법을 도시한다.
도 8 은 MDCT 오디오 프레임에서 펄스를 효율적으로 인코딩할 수도 있는 인코더를 도시하는 블록도이다.
도 9 는 프레임에 대한 형상 벡터를 획득하는 방법을 도시하는 흐름도이다.
도 10 은 스케일링 가능한 스피치 및 오디오 코덱에서 변환 스펙트럼을 인코딩하는 방법을 도시하는 블록도이다.
도 11 은 디코더의 일예를 도시하는 블록도이다.
도 12 는 스케일링 가능한 스피치 및 오디오 코덱에서 변환 스펙트럼을 인코딩하는 방법을 도시하는 블록도이다.
도 13 은 스케일링 가능한 스피치 및 오디오 코덱에서 변환 스펙트럼을 디코딩하는 방법을 도시하는 블록도이다.
이하, 전체에 걸쳐 유사한 도면 부호는 유사한 엘리먼트를 지칭하도록 사용되는 도면을 참조하여 다양한 실시형태를 설명한다. 다음의 설명에서는, 설명의 목적으로 하나 이상의 실시형태의 철저한 이해를 제공하기 위해 다수의 세부사항들을 설명한다. 그러나, 이들 세부사항들이 없어도 이러한 실시형태(들)이 실시될 수도 있음은 자명할 것이다. 다른 예에서, 하나 이상의 실시형태의 설명을 용이하게 하기 위해 주지의 구조 및 디바이스는 블록도로 도시하였다.
개관
오디오 신호를 반복적으로 인코딩하기 위해 다중 계층의 코딩이 이용되는 오디오 신호의 인코딩/디코딩을 위한 스케일링 가능한 코덱에서, 오디오 신호의 나머지가 인코딩을 위해 (예를 들어, MDCT 도메인으로) 변환되는 하나 이상의 코딩 계층에서 변형된 이산 코사인 변환이 이용될 수도 있다. MDCT 도메인에서, 스펙트럼 라인의 프레임은 서브밴드로 분할될 수도 있고, 중첩하는 서브밴드의 영역들이 정의된다. 영역 내의 각각의 서브밴드에 대해, 메인 펄스 (즉, 서브밴드에서의 스펙트럼 라인 중 가장 강한 스펙트럼 라인 또는 그룹) 가 선택될 수도 있다. 메인 펄스의 위치가 정수를 이용하여 인코딩되어, 각각의 서브밴드 내에서의 위치를 나타낼 수도 있다. 각각의 메인 펄스의 진폭/크기는 별도로 인코딩될 수도 있다. 또한, 이미 선택된 메인 펄스를 배제하고, 영역 내의 복수의 (예를 들어, 4 개의) 서브펄스 (예를 들어, 나머지 스펙트럼 라인) 가 선택된다. 선택된 서브펄스는 영역 내에서 그 서브펄스의 전반적 위치에 기초하여 인코딩된다. 이 서브펄스들의 위치는 결합 위치 코딩 기술을 이용하여 인코딩되어, 영역의 모든 길이보다 적은 비트로 표현될 수 있는 사전적 인덱스를 생성할 수도 있다. 이 방식으로 메인 펄스 및 서브펄스를 나타냄으로써, 이 펄스들은 저장 및/또는 송신을 위해 비교적 적은 수의 비트를 이용하여 인코딩될 수 있다.
통신 시스템
도 1 은 하나 이상의 코딩 특성이 구현될 수도 있는 통신 시스템을 도시하는 블록도이다. 코더 (102) 는 인입하는 입력 오디오 신호 (104) 를 수신하고, 인코딩된 오디오 신호 (106) 를 생성한다. 인코딩된 오디오 신호 (106) 는 통신 채널 (예를 들어, 무선 또는 유선) 을 통해 디코더 (108) 로 송신될 수도 있다. 디코더 (108) 는, 그 인코딩된 오디오 신호 (106) 에 기초하여 입력 오디오 신호 (104) 를 재구성하여, 재구성된 출력 오디오 신호 (110) 를 생성하도록 시도한다. 설명을 위해, 코더 (102) 는 송신기 디바이스 상에서 동작할 수도 있는 반면, 디코더 디바이스는 수신기 디바이스 상에서 동작할 수도 있다. 그러나, 이러한 임의의 디바이스들은 인코더 및 디코더 모두를 포함할 수도 있음은 자명할 것이다.
도 2 는, 일 실시예에 따라 효율적인 오디오 코딩을 수행하도록 구성될 수도 있는 송신 디바이스 (202) 를 도시하는 블록도이다. 입력 오디오 신호 (204) 는 마이크폰 (206) 에 의해 캡쳐되고, 증폭기 (208) 에 의해 증폭되고, A/D 변환기 (210) 에 의해, 스피치 인코딩 모듈 (212) 로 전송되는 디지털 신호로 변환된다. 스피치 인코딩 모듈 (212) 은 입력 신호의 다중 계층 (스케일링) 코딩을 수행하도록 구성되고, 적어도 하나의 이러한 계층은 MDCT 스펙트럼에서 나머지 (에러 신호) 를 인코딩하는 것을 포함한다. 스피치 인코딩 모듈 (212) 은 도 4, 5, 6, 7, 8, 9 및 10 과 관련하여 설명되는 바와 같은 인코딩을 수행할 수도 있다. 스피치 인코딩 모듈 (212) 로부터의 출력 신호는, 채널 디코딩이 수행되는 송신 경로 인코딩 모듈 (214) 로 전송될 수도 있고, 결과로 얻어진 출력 신호는 변조 회로 (216) 로 전송되고, 인코딩된 오디오 신호 (224) 의 송신을 위해, D/A 변환기 (218) 및 RF 증폭기 (220) 를 통해 안테나 (222) 로 전송되도록 변조된다.
도 3 은, 일 실시예에 따라 효율적인 오디오 디코딩을 수행하도록 구성될 수도 있는 수신 디바이스 (302) 를 도시하는 블록도이다. 인코딩된 오디오 신호 (304) 는 안테나 (306) 에 의해 수신되고, RF 증폭기 (308) 에 의해 증폭되고, A/D 변환기 (310) 를 통해 복조 회로 (312) 로 전송되어, 복조된 신호가 송신 경로 디코딩 모듈 (314) 로 공급된다. 송신 경로 디코딩 모듈 (314) 로부터의 출력 신호는, 입력 신호의 다중 계층 (스케일링) 디코딩을 수행하도록 구성된 스피치 디코딩 모듈 (316) 로 전송되고, 적어도 하나의 이러한 계층은 IMDCT 스펙트럼에서 나머지 (에러 신호) 를 디코딩하는 것을 포함한다. 스피치 디코딩 모듈 (316) 은 도 11, 12 및 13 과 관련하여 설명되는 바와 같이 신호 디코딩을 수행할 수도 있다. 스피치 디코딩 모듈 (316) 로부터의 출력 신호는 D/A 변환기 (318) 로 전송된다. D/A 변환기 (318) 로부터의 아날로그 스피치 신호는 증폭기 (320) 를 통해 스피커 (322) 로 전송되어, 재구성된 출력 오디오 신호 (324) 를 제공한다.
스케일링 가능한 오디오 코덱 아키텍쳐
코더 (102; 도 1), 디코더 (108; 도 1), 스피치/오디오 인코딩 모듈 (212; 도 2), 및/또는 스피치/오디오 디코딩 모듈 (316; 도3) 은 스케일링 가능한 오디오 코덱으로 구현될 수도 있다. 이러한 스케일링 가능한 오디오 코덱은, 에러가 발생하기 쉬운 텔레커뮤니케이션 채널에 대한 고성능 광대역 스피치 코딩에, 전달되는 인코딩된 협대역 스피치 신호 또는 광대역 오디오/뮤직 신호의 높은 품질을 제공한다. 스케일링 가능한 오디오 코덱에 대한 하나의 접근방법은, 하나의 계층으로부터의 에러 신호 (나머지) 가 후속 계층에서 인코딩되어 이전 계층에서 인코딩된 오디오 신호를 더 개선하는 반복적 인코딩 계층을 제공하는 것이다. 예를 들어, 코드북 여기 선형 예측 (CELP) 은, 상이한 여기 신호의 코드북이 인코더 및 디코더에 유지되는 선형 예측 코딩의 개념에 기초한다. 인코더는 가장 적절한 여기 신호를 발견하고, (고정형, 대수적, 및/또는 적응형 코드북으로부터) 그에 대응하는 인덱스를 디코더로 전송하고, 디코더는 이를 이용하여 (코드북에 기초하여) 신호를 재생성한다. 인코더는 오디오 신호를 인코딩한 후 디코딩함으로써 AbS (Analysis-by-Synthesis) 를 수행하여, 재구성된 또는 합성된 오디오 신호를 생성한다. 그 후, 인코더는, 에러 신호의 에너지, 즉, 원래의 오디오 신호와 재구성된 또는 합성된 오디오 신호 사이의 차이를 최소화하는 파라미터를 발견한다. 출력 비트-레이트는 채널 요건을 충족시키는 다소의 코딩 계층 및 원하는 오디오 품질을 이용함으로써 조정될 수 있다. 이러한 스케일링 가능한 오디오 코덱은, 하위 계층의 디코딩에 영향을 주지 않으면서 상위 계층의 비트스트림이 폐기될 수 있는 다수의 계층을 포함할 수도 있다.
이러한 다중 계층 아키텍쳐를 이용하는 기존의 스케일링 가능한 코덱의 예로는 ITU-T 권고 G.729.1 및 이머징 ITU-T 표준, 코드 명칭 G.EV-VBR 이 포함된다. 예를 들어, 임베디드 가변 비트 레이트 (EV-VBR) 코덱은 다중 계층 L1 (코어 계층) 내지 LX (여기서, X 는 최고 확장 계층의 번호) 로 구현될 수도 있다. 이러한 코덱은 16 kHz 에서 샘플링된 광대역 (WB) 신호 및 8 kHz 에서 샘플링된 협대역 (NB) 신호 모두를 허용할 수도 있다. 유사하게, 코덱 출력은 광대역 또는 협대역일 수 있다.
코덱 (예를 들어, EV-VBR 코덱) 에 대한 계층 구조의 일예가 표 1 에 나타나 있으며, L1 (코어 계층) 내지 L5 (최고 확장 계층) 으로 지칭되는 5 개의 계층이 포함된다. 하위 2 개의 계층 (L1 및 L2) 은 코드 여기 선형 예측 (CELP) 알고리즘에 기초할 수도 있다. 코어 계층 L1 은 가변 멀티-레이트 광대역 (VMR-WB) 스피치 코딩 알고리즘으로부터 유도될 수도 있고, 상이한 입력 신호들에 대해 최적화된 다수의 코딩 모드를 포함할 수도 있다. 즉, 코어 계층 L1 은 오디오 신호를 더 양호하게 모델링하기 위해 입력 신호를 분류할 수도 있다. 코어 계층 L1 로부터의 코딩 에러 (나머지) 는 적응형 코드북 및 고정형 대수적 코드북에 기초하여, 향상 또는 확장 계층 L2 에 의해 인코딩된다. 계층 L2 로부터의 에러 신호 (나머지) 는 변형된 이산 코사인 변환 (MDCT) 을 이용하는 변환 도메인에서 상위 계층 (L3 내지 L5) 에 의해 더 코딩될 수도 있다. 사이드 정보는 계층 L3 에서 전송되어 프레임 소거 은닉 (FEC) 을 향상시킬 수도 있다.
Figure pct00003
코어 계층 L1 코덱은 본질적으로 CELP 기반 코덱이며, 적응형 멀티-레이트 (AMR), AMR 광대역 (AMR-WB), 가변 멀티-레이트 광대역 (VMR-WB), 향상된 가변 레이트 코덱 (EVRC) 또는 EVR 광대역 (EVRC-WB) 코덱과 같은 다수의 주지된 협대역 또는 광대역 보코더 중 하나와 호환될 수도 있다.
스케일링 가능한 코덱의 계층 2 는 코드북을 이용하여, 코어 계층 L1 로부터 지각적으로 가중된 코딩 에러 (나머지) 를 더 최소화할 수도 있다. 코덱 프레임 소거 은닉 (FEC) 을 향상시키기 위해, 사이드 정보가 연산되어 후속 계층 L3 에서 송신될 수도 있다. 코어 계층 코딩 모드와는 독립적으로, 사이드 정보는 신호 분류를 포함할 수도 있다.
광대역 출력에 대해, 계층 L2 인코딩 이후의 가중된 에러 신호는 변형된 이산 코사인 변환 (MDCT) 또는 유사한 타입의 변환에 기초한 중첩-가산 변환 코딩을 이용하여 코딩되는 것으로 가정한다. 즉, 코딩된 계층 L3, L4 및/또는 L5 에 대해, 신호는 MDCT 스펙트럼에서 인코딩될 수도 있다. 그 결과, MDCT 스펙트럼에서 신호를 코딩하는 효율적인 방법이 제공된다.
인코더 실시예
도 4 는 일 실시예에 따른 스케일링 가능한 인코더 (402) 의 블록도이다. 인코딩 이전의 전처리 스테이지에서, 입력 신호 (404) 는 원하지 않는 저주파수 성분을 억제하기 위해 고역 통과 필터링되어 (406), 필터링된 입력 신호 SHP(n) 를 생성한다. 예를 들어, 고역 통과 필터 (406) 는 광대역 입력 신호에 대해서 25 Hz 의 컷오프 및 협대역 입력 신호에 대해 100 Hz 를 가질 수도 있다. 그 후, 필터링된 입력 신호 SHP(n) 는 리샘플링 모듈 (408) 에 의해 리샘플링되어, 리샘플링된 입력 신호 S12.8(n) 를 생성한다. 예를 들어, 원래의 입력 신호 (404) 는 16 kHz 에서 샘플링될 수도 있고, 계층 L1 및/또는 L2 인코딩에 대해 이용된 내부 주파수일 수도 있는 12.8 kHz 로 리샘플링된다. 그 후, 프리-엠퍼시스 모듈 (410) 이 1 차 고역 통과 필터를 적용하여, 그 리샘플링된 입력 신호 S12.8(n) 의 더 높은 주파수를 엠퍼시스 (및 저주파수를 감쇠) 한다. 그 후, 결과로 얻어진 신호는 인코더/디코더 모듈 (412) 로 전달되고, 인코더/디코더 모듈 (412) 은, 스펙트럼 엔빌로프를 나타내는 선형 예측 (LP) 합성 필터를 통과한 여기 신호에 의해 스피치 신호가 모델링되는 코드 여기 선형 예측 (CELP) 기반 알고리즘에 기초하여 계층 L1 및/또는 L2 인코딩을 수행할 수도 있다. 신호 에너지는 각각의 지각적인 결정적 대역에 대해 연산될 수도 있고, 계층 L1 및 L2 인코딩의 일부로서 이용될 수도 있다. 또한, 인코딩된 인코더/디코더 모듈 (412) 은 입력 신호의 버전을 합성 (재구성) 할 수도 있다. 즉, 인코더/디코더 모듈 (412) 은 입력 신호를 인코딩한 이후, 이를 디코딩하고, 디-엠퍼시스 모듈 (416) 및 리샘플링 모듈 (418) 이 입력 신호 (404) 의 버전
Figure pct00004
을 재생성한다. 원래의 신호 SHP(n) 와 재생성된 신호
Figure pct00005
사이의 차 (420) 를 택함으로써 나머지 신호 x2(n) 가 생성된다 (즉, x2(n) = SHP(n) -
Figure pct00006
). 그 후, 나머지 신호 x2(n) 는 가중 모듈 (424) 에 의해 지각적으로 가중되고, MDCT 모듈 (428) 에 의해 MDCT 스펙트럼 또는 도메인으로 변형되어 나머지 신호 X2(k) 를 생성한다. 그 후, 나머지 신호 X2(k) 는, 그 나머지 신호 X2(k) 를 인코딩하는 결합 스펙트럼 인코더 (432) 에 제공되어, 계층 L3, L4 및/또는 L5 에 대한 인코딩된 파라미터를 생성한다. 일예로, 결합 스펙트럼 인코더 (432) 는 나머지 신호 X2(k) 에서 넌-제로 스펙트럼 라인 (펄스) 을 나타내는 인덱스를 생성한다. 예를 들어, 이 인덱스는, 넌-제로 스펙트럼 라인의 위치를 나타내는 복수의 가능한 2 진 스트링 중 하나를 나타낼 수도 있다. 결합 기술에 기인하여, 인덱스는 2 진 스트링 내의 넌-제로 스펙트럼 라인을 그 2 진 스트링의 길이보다 적은 비트로 나타낼 수도 있다.
그 후, 계층 L1 내지 L5 로부터의 파라미터는 출력 비트스트림 (436) 으로서 기능할 수 있고, 후속적으로, 디코더에서 원래의 입력 신호 (404) 의 버전을 재구성 또는 합성하는데 이용될 수 있다.
계층 1 - 분류 인코딩: 코어 계층 L1 은 인코더/디코더 모듈 (412) 에서 구현될 수도 있고, 신호 분류 및 4 개의 개별 코딩 모드를 이용하여 인코딩 성능을 개선할 수도 있다. 일예로, 각각의 프레임의 상이한 인코딩을 위해 고려될 수 있는 이 4 개의 개별 신호 클래스는: (1) 무성음 (unvoiced) 스피치 프레임에 대한 무성음 코딩 (UC), (2) 평탄한 피치 에볼루션을 갖는 준-주기적 세그먼트에 대해 최적화된 유성음 코딩 (VC), (3) 프레임 소거의 경우 에러 전파를 최소화하도록 설계된 유성음 온세트 (onset) 에 후속하는 프레임에 대한 전이 모드 (TC), 및 (4) 다른 프레임에 대한 고유 코딩 (GC) 을 포함할 수도 있다. 무성음 코딩 (UC) 에서는, 적응형 코드북이 이용되지 않고, 가우시안 코드북으로부터 여기가 선택된다. 준-주기적 세그먼트는 유성음 코딩 (VC) 모드로 인코딩된다. 유성음 코딩 선택은 평탄한 피치 에볼루션에 의해 컨디셔닝된다. 유성음 코딩 모드는 ACELP 기술을 이용할 수도 있다. 전이 코딩 (TC) 프레임에서는, 제 1 피치 주기의 성문음 (glottal) 임펄스를 포함하는 서브프레임에서의 적응형 코드북이 고정형 코드북으로 대체된다.
코어 계층 L1 에서는, 스펙트럼 엔빌로프를 나타내는 선형 예측 (LP) 합성 필터를 통과하는 여기 신호에 의해 CELP 기반 패러다임을 이용하여 신호가 모델링될 수도 있다. LP 필터는 고유 및 유성음 코딩 모드에 대한 멀티-스테이지 벡터 양자화 (MSVQ) 및 세이프티-네트 접근방법을 이용하여 이미턴스-스펙트럼 주파수 (ISF) 에서 양자화될 수도 있다. 개방-루프 (OL) 피치 분석이 피치-트래킹 알고리즘에 의해 수행되어, 평탄한 피치 윤곽을 보장한다. 그러나, 피치 추정의 강건성을 향상시키기 위해, 2 개의 동시의 피치 에볼루션 윤곽이 비교될 수도 있고, 더 평탄한 윤곽을 생성하는 트랙이 선택된다.
20 ms 분석 윈도우를 이용하여 대부분의 모드에서 프레임별로, 하나는 프레임-말단이고 하나는 프레임 중간인, LPC 파라미터의 2 개의 세트가 추정 및 인코딩된다. 프레임 중간의 ISF 는 각각의 ISF 서브-그룹에 대해 발견된 선형 보간 계수를 갖는 보간 스플리트 VQ 에 의해 인코딩되어, 추정 및 보간된 양자화 ISF 들 사이의 차이가 최소화된다. 일예로, LP 계수의 ISF 표현을 양자화하기 위해서, (약한 예측 및 강한 예측에 대응하는) 2 개의 코드북 세트가 병렬로 탐색되어, 추정된 스펙트럼 엔빌로프의 왜곡을 최소화하는 코드북 엔트리 및 예측기를 발견할 수도 있다. 이 세이프티-네트 접근방법의 주요 이유는, 스펙트럼 엔빌로프가 급격하게 진화하는 세그먼트와 프레임 소거가 일치하는 경우 에러 전파를 감소시키는 것이다. 추가적 에러 강건성을 제공하기 위해, 약한 예측기는 때때로, 예측없이 양자화되는 제로로 설정된다. 양자화 왜곡이 예측있는 경로에 충분히 근접한 경우, 또는 양자화 왜곡이 투명한 코딩을 제공할 정도로 충분히 작은 경우 예측없는 경로가 항상 선택될 수도 있다. 또한, 강하게 예측된 코드북 탐색에서는, 프레임 소거의 존재시에 클린-채널 성능에 영향을 주지 않고 에러 전파를 감소시키도록 기대되면 준-최적 코드 벡터가 선택된다. UC 및 TC 프레임의 ISF 는 예측없이 시스템적으로 더 양자화된다. UC 프레임에 있어서, 충분한 비트가 이용가능하여, 예측이 없는 경우에도 더 양호한 스펙트럼 양자화를 허용한다. 클린 채널 성능에서의 잠재적 감소에도 불구하고, TC 프레임은 이용될 예측을 위한 프레임 소거에 매우 민감한 것으로 고려된다.
협대역 (NB) 신호에 대해, 양자화되지 않은 최적의 이득으로 생성된 L2 여기를 이용하여 피치 추정이 수행된다. 이 접근방법은 이득 양자화의 효과를 제거하고, 계층들에 걸친 피치-래그 추정을 개선한다. 광대역 (WB) 신호에 대해, 표준 피치 추정 (양자화된 이득을 갖는 L1 여기) 이 이용된다.
계층 2 - 향상 인코딩: 계층 L2 에서는, 인코더/디코더 모듈 (412) 이 대수적 코드북을 다시 이용하여 코어 계층 L1 로부터의 양자화 에러를 인코딩할 수도 있다. L2 계층에서는, 인코더가 적응형 코드북을 더 변형시켜, 과거의 L1 기여 및 과거의 L2 기여를 포함한다. 적응형 피치-래그는 L1 및 L2 에서와 동일하여, 계층들 사이의 시간 동기화를 유지한다. 그 후, L1 및 L2 에 대응하는 적응형 및 대수적 코드북 이득이 다시 최적화되어, 지각적으로 가중된 코딩 에러를 최소화한다. 업데이트된 L1 이득 및 L2 이득은 L1 에서 이미 양자화된 이득에 대해 예측적으로 벡터-양자화된다. CELP 계층 (L1 및 L2) 은 내부 (예를 들어, 12.8 kHz) 샘플링 레이트에서 동작할 수도 있다. 따라서, 계층 L2 로부터의 출력은 0 내지 6.4 kHz 주파수 대역에서 인코딩된 합성 신호를 포함한다. 광대역 출력에 대해, AMR-WB 대역폭 확장이 이용되어, 미싱된 6.4 내지 7 kHz 대역폭을 생성할 수도 있다.
계층 3 - 프레임 소거 은닉: 프레임 소거 조건 (FEC) 에서의 성능을 향상시키기 위해, 프레임-에러 은닉 모듈 (414) 은 인코더/디코더 모듈 (412) 로부터의 사이드 정보를 획득할 수도 있고, 이를 이용하여 계층 L3 파라미터를 생성한다. 사이드 정보는 모든 코딩 모드에 대한 클래스 정보를 포함할 수도 있다. 또한, 이전의 프레임 스펙트럼 엔빌로프 정보가 코어 계층 전이 코딩을 위해 송신될 수도 있다. 또한, 다른 코어 계층 코딩 모드에 대해, 합성된 신호의 위상 정보 및 피치-동기화 에너지가 전송될 수도 있다.
계층 3, 4, 5 - 변환 코딩: 계층 L2 의 제 2 스테이지 CELP 코딩으로부터 생성된 나머지 신호 X2(k) 는, MDCT 또는 중첩 가산 구조를 갖는 유사한 변환을 이용하여 계층 L3, L4 및 L5 에서 양자화될 수도 있다. 즉, 이전 계층으로부터의 나머지 또는 "에러" 신호가 후속 계층에 의해 이용되어, (디코더로의 이러한 송신 에러를 효율적으로 나타내기 위한) 파라미터를 생성한다.
MDCT 계수는 다수의 기술을 이용하여 양자화될 수도 있다. 몇몇 예에서, MDCT 계수는 스케일링 가능한 대수적 벡터 양자화를 이용하여 양자화된다. MDCT 는 20 밀리초 (ms) 마다 연산될 수도 있고, 그 스펙트럼 계수가 8-차원 블록으로 양자화된다. 원래의 신호의 스펙트럼으로부터 유도된 오디오 클리너 (MDCT 도메인 잡음-형상화 필터) 가 적용된다. 전체 이득이 계층 L3 에서 송신된다. 또한, 고주파수 보상을 위해 몇몇 비트가 이용된다. MDCT 계수의 양자화를 위해 나머지 계층 L3 비트가 이용된다. 계층 L4 및 L5 비트는, 계층 L4 및 L5 레벨에서 성능이 독립적으로 최대화되도록 이용된다.
몇몇 구현에서, MDCT 계수는, 스피치와 뮤직이 지배적인 오디오 컨텐츠들에 대해 상이하게 양자화될 수도 있다. 스피치와 뮤직 컨텐츠들 사이의 구별은, L2 가중된 합성 MDCT 컴포넌트들을 대응하는 입력 신호 컴포넌트와 비교함으로써 CELP 모델 효율성의 평가에 기초한다. 스피치가 지배적인 컨텐츠에 있어서는, 8-차원 블록에서 양자화된 스펙트럼 계수를 갖는 L3 및 L4 에서 스케일링 가능한 대수적 벡터 양자화 (AVQ) 가 이용된다. 전체 이득은 L3 에서 송신되고, 고주파 보상을 위해 몇몇 비트가 이용된다. 나머지 L3 및 L4 비트는 MDCT 계수의 양자화를 위해 이용된다. 이 양자화 방법은 멀티-레이트 래티스 VQ (MRLVQ) 이다. 인덱싱 과정의 복잡성 및 메모리 소모를 감소시키기 위해, 신규한 멀티-레벨 치환 기반 알고리즘이 이용되고 있다. 다수의 단계에서 랭킹 연산화가 수행된다. 먼저, 입력 벡터가 부호 벡터 및 절대값 벡터로 분해된다. 둘째로, 절대값 벡터는 다수의 레벨로 더 분해된다. 최고 레벨의 벡터가 원래의 절대값 벡터이다. 각각의 하위 레벨의 벡터는 상위 레벨의 벡터로부터 가장 빈번한 엘리먼트를 제거함으로써 획득된다. 상위 레벨 벡터와 관련된 각각의 하위 레벨의 벡터의 위치 파라미터는 치환 및 결합 함수에 기초하여 인덱싱된다. 마지막으로, 모든 하위 레벨의 인덱스 및 부호가 출력 인덱스로 구성된다.
뮤직이 지배적인 컨텐츠에 있어서는, 대역 선택적 형상-이득 벡터 양자화 (형상-이득 VQ) 가 계층 L3 에서 이용될 수도 있고, 추가적인 펄스 위치 벡터 양자화기가 계층 L4 에 적용될 수도 있다. 계층 L3 에서, MDCT 계수의 에너지를 연산함으로써 대역 선택이 먼저 수행될 수도 있다. 그 후, 선택된 대역의 MDCT 계수는 멀티-펄스 코드북을 이용하여 양자화된다. 벡터 양자화기가 이용되어, MDCT 계수에 대한 서브밴드 이득을 양자화한다. 계층 L4 에 대해, 전체 대역폭은 펄스 포지셔닝 기술을 이용하여 코딩될 수도 있다. 오디오 소스 모델의 미스매치에 기인하여 스피치 모델이 원하지 않는 잡음을 생성하는 경우, L2 계층 출력의 특정 주파수가 감쇠되어, MDCT 계수는 더 공격적으로 코딩될 수 있다. 이것은, 입력 신호의 MDCT 와 계층 L4 를 통해 코딩된 오디오 신호의 MDCT 사이에 제곱 에러를 최소화시키는 폐쇄 루프 방식으로 행해진다. 적용된 감쇠의 양은 6 dB 까지 될 수도 있으며, 이것은, 2 또는 더 적은 비트를 이용하여 통신될 수도 있다. 계층 L5 는 추가적인 펄스 위치 코딩 기술을 이용할 수도 있다.
MDCT 스펙트럼의 코딩
계층 L3, L4 및 L5 가 MDCT 스펙트럼 (예를 들어, 이전 계층에 대한 나머지를 나타내는 MDCT 계수) 에서 코딩을 수행하기 때문에, 이러한 MDCT 스펙트럼 코딩이 효율적인 것이 바람직하다. 그 결과, MDCT 스펙트럼 코딩의 효율적인 방법이 제공된다.
이 프로세스에 대한 입력은, CELP 코어 (계층 L1 및/또는 L2) 이후의 에러 신호 (나머지) 또는 이전 계층 이후의 나머지 MDCT 스펙트럼의 완전한 MDCT 스펙트럼이다. 즉, 계층 L3 에서, 완전한 MDCT 스펙트럼이 수신되고 부분적으로 인코딩된다. 그 후, 계층 L4 에서, 계층 L3 에서 인코딩된 신호의 나머지 MDCT 스펙트럼이 인코딩된다. 이 프로세스는 계층 L5 및 다른 후속 계층에 대해 반복될 수도 있다.
도 5 는, 인코더의 상위 계층에서 구현될 수도 있는 예시적인 MDCT 스펙트럼 인코딩 프로세스를 도시하는 블록도이다. 인코더 (502) 는 이전 계층으로부터 나머지 신호 (504) 의 MDCT 스펙트럼을 획득한다. 이러한 나머지 신호 (504) 는 원래의 신호와 그 원래의 신호의 재구성된 (예를 들어, 원래의 신호의 인코딩된 버전으로부터 재구성된) 버전 사이의 차이일 수도 있다. 나머지 신호의 MDCT 계수가 양자화되어, 소정의 오디오 프레임에 대한 스펙트럼 라인을 생성할 수도 있다.
일예로, 서브-밴드/영역 선택기 (508) 는 나머지 신호 (504) 를 복수의 (예를 들어, 17 개의) 균일한 서브-밴드로 분할할 수도 있다. 예를 들어, 320 개의 스펙트럼 라인의 소정의 오디오 프레임에 대해, 최초 및 최후의 24 개의 포인트들 (스펙트럼 라인들) 은 드롭될 수도 있고, 나머지 272 개의 스펙트럼 라인들은 16 개의 스펙트럼 라인 각각의 17 개의 서브밴드로 분할될 수도 있다. 다양한 구현에서 상이한 수의 서브밴드가 이용될 수도 있고, 드롭될 수도 있는 최초 및 최후의 포인트들의 수가 변할 수도 있고, 그리고/또는 서브밴드 또는 프레임 당 스플리트될 수도 있는 스펙트럼 라인의 수 또한 변할 수도 있다.
도 6 은, 오디오 프레임 (602) 이 선택되고 영역들 및 서브밴드로 분할되어, MDCT 스펙트럼의 인코딩을 용이하게 할 수 있는 방법의 일예를 도시하는 도면이다. 이 예에 따르면, 복수의 영역들 (예를 들어, 8 개) 이 복수의 (예를 들어, 5 개의) 연속적인 또는 인접한 서브밴드 (604) 로 구성되도록 정의될 수도 있다 (예를 들어, 일 영역은, 5 개의 서브밴드 × 16 개의 스펙트럼 라인/서브밴드 = 80 개의 스펙트럼 라인을 커버할 수도 있다). 복수의 영역 (606) 은 각각의 인접 영역과 중첩되고 전체 대역폭 (예를 들어, 7 kHz) 을 커버하도록 배열될 수도 있다. 영역 정보는 인코딩을 위해 생성될 수도 있다.
영역이 선택되면, 영역 내의 MDCT 스펙트럼은, 타겟 벡터의 (위치 결정 및 부호와 동기화된) 형상 및 이득이 순차적으로 양자화되는 형상-이득 양자화를 이용하여 형상 양자화기 (510) 및 이득 양자화기 (512) 에 의해 양자화된다. 형상화는 메인 펄스 및 서브-펄스에 대한 진폭과 함께, 서브-밴드 당 메인 펄스 및 복수의 서브-펄스에 대응하는 스펙트럼 라인의 위치 결정, 부호를 형성하는 단계를 포함한다. 도 6 에 도시된 예에서, 영역 (606) 내의 80 개의 스펙트럼 라인은, 영역 당 5 개의 메인 펄스 (5 개의 연속적 서브-밴드 (604a, 604b, 604c, 604d 및 604e) 각각에 대해 하나의 메인 펄스) 및 4 개의 추가적 서브-펄스로 구성되는 형상 벡터에 의해 표현될 수도 있다. 즉, 각각의 서브-밴드 (604) 에 대해, 메인 펄스 (즉, 그 서브-밴드에서 16 개의 스펙트럼 라인 내의 가장 강한 펄스) 가 선택된다. 또한, 각각의 영역 (606) 에 대해, 추가적인 4 개의 서브-펄스 (즉, 80 개의 스펙트럼 라인 내에서 다음으로 가장 강한 스펙트럼 라인 펄스) 가 선택된다. 도 6 에 도시된 바와 같이, 일예로, 메인 펄스와 서브-펄스의 위치 및 부호의 결합은 50 비트로 인코딩될 수 있으며, 여기서 50 비트는,
5 개의 메인 펄스 (서브-밴드 당 하나의 메인 펄스) 에 대한 인덱스를 위한 20 비트;
5 개의 메인 펄스의 부호를 위한 5 비트;
80 개의 스펙트럼 라인 영역 내의 임의의 4 개의 서브-펄스의 인덱스를 위한 21 비트;
4 개의 서브-펄스의 부호를 위한 4 비트이다.
각각의 메인 펄스는 4 비트 (예를 들어, 4 비트에 의해 표현되는 수 0 내지 16) 를 이용하여 16 개의 스펙트럼 라인 서브-밴드 내의 위치에 의해 표현될 수도 있다. 그 결과, 영역의 5 개의 메인 펄스에 대해 총 20 비트를 택한다. 각각의 메인 펄스 및/또는 서브-펄스의 부호는 1 비트 (예를 들어, 포지티브 또는 네거티브에 대해 0 또는 1 중 하나) 로 표현될 수도 있다. 영역 내의 4 개의 선택된 서브-펄스 각각의 위치는, (각각의 선택된 서브-펄스의 위치를 나타내기 위해 이항 계수를 이용하는) 결합 위치 코딩 기술을 이용하여 인코딩되어, 그 영역 내의 4 개의 서브-펄스의 위치를 나타내는데 이용된 비트의 총 수가 그 영역의 길이보다 적어지도록 사전적 인덱스를 생성할 수도 있다.
메인 펄스 및/또는 서브-펄스의 진폭 및/또는 크기를 인코딩하기 위해 추가적인 비트가 이용될 수도 있다. 몇몇 구현에서, 펄스 진폭/크기는 2 비트를 이용하여 인코딩될 수도 있다 (즉, 00 - 펄스 없음, 01 - 서브-펄스 및/또는 10 - 메인 펄스). 형상 양자화에 후속하여, 계산된 서브-밴드 이득에 대해 이득 양자화가 수행된다. 영역은 5 개의 서브-밴드를 포함하기 때문에, 10 비트를 이용하여 벡터 양자화될 수 있는 영역에 대해 5 개의 이득이 획득된다. 벡터 양자화는 스위칭 예측 방식을 이용한다. 다음 인코딩 계층에 대한 입력으로서 이용될 수 있는 출력 나머지 신호 (516) 가 (원래의 입력 나머지 신호 (504) 로부터 양자화된 나머지 신호 Squant 를 감산 (514) 함으로써) 획득될 수도 있다.
도 7 은 오디오 프레임을 효율적인 방식으로 인코딩하는 일반적인 접근방법을 도시한다. N 개의 스펙트럼 라인의 영역 (702) 은 복수의 연속적인 또는 인접한 서브-밴드로부터 정의될 수도 있고, 각각의 서브-밴드 (704) 는 L 개의 스펙트럼 라인을 갖는다. 영역 (702) 및/또는 서브-밴드 (704) 는 오디오 프레임의 나머지 신호에 관한 것일 수도 있다.
각각의 서브-밴드에 대해, 메인 펄스가 선택된다 (706). 예를 들어, 서브-밴드의 L 개의 스펙트럼 라인 내의 가장 강한 펄스가 그 서브-밴드에 대한 메인 펄스로서 선택된다. 가장 강한 펄스는, 서브-밴드에서 가장 큰 진폭 또는 크기를 갖는 펄스로서 선택될 수도 있다. 예를 들어, 서브-밴드 A (704a) 에 대해 제 1 메인 펄스 PA 가 선택되고, 서브-밴드 B (704b) 에 대해 제 2 메인 펄스 PB 가 선택되고, 서브-밴드 (704) 각각에 대해 이와 같이 메인 펄스가 선택된다. 영역 (702) 은 N 개의 스펙트럼 라인을 갖기 때문에, 영역 (702) 내의 각각의 스펙트럼 라인의 위치는 ci (1≤i≤N) 로 표시될 수 있다. 일예로, 제 1 메인 펄스 PA 는 위치 c3 에 존재할 수도 있고, 제 2 메인 펄스 PB 는 위치 c24 에 존재할 수도 있고, 제 3 메인 펄스 PC 는 위치 c41 에 존재할 수도 있고, 제 4 메인 펄스 PD 는 위치 c59 에 존재할 수도 있고, 제 5 메인 펄스 PE 는 위치 c79 에 존재할 수도 있다. 이 메인 펄스들은, 대응하는 서브-밴드 내에서의 위치를 나타내기 위해 정수를 이용하여 인코딩될 수도 있다. 그 결과, L=16 개의 스펙트럼 라인에 대해, 각각의 메인 펄스의 위치는 4 개의 비트를 이용하여 표현될 수도 있다.
영역 내의 나머지 스펙트럼 라인 또는 펄스로부터 스트링 w 가 생성된다 (708). 이 스트링을 생성하기 위해, 선택된 메인 펄스가 스트링 w 로부터 제거되고, 나머지 펄스 w1...wN-p (p 는 영역 내의 메인 펄스의 수) 가 스트링이 남는다. 스트링은 제로들 "0" 및 "1" 에 의해 표현될 수도 있고, 여기서, "0" 은 특정한 위치에 펄스가 존재하지 않음을 나타내고, "1" 은 특정한 위치에 펄스가 존재함을 나타낸다.
펄스 세기에 기초하여 스트링 w 로부터 복수의 서브-펄스가 선택된다 (710). 예를 들어, 세기 (진폭/크기) 에 기초하여 4 개의 서브-펄스 S1, S2, S3 및 S4 가 선택될 수도 있다 (즉, 스트링 w 에 남은 가장 강한 4 개의 펄스가 선택된다). 일예로, 제 1 서브-펄스 S1 은 위치 w20 에 존재할 수도 있고, 제 2 서브-펄스 S2 는 위치 w29 에 존재할 수도 있고, 제 3 서브-펄스 S3 은 위치 w51 에 존재할 수도 있고, 제 4 서브-펄스 S4 는 위치 w69 에 존재할 수도 있다. 그 후, 선택된 서브-펄스 각각의 위치는 이항 계수에 기초한 사전적 인덱스를 이용하여 인코딩되어 (712), 사전적 인덱스 i(w) 는 선택된 서브-펄스 위치의 결합, 즉, i(w) = w20 + w29 + w51 + w69 에 기초한다.
도 8 은, MDCT 오디오 프레임에서 펄스를 효율적으로 인코딩하는 인코더를 도시하는 블록도이다. 인코더 (802) 는, 수신된 MDCT 스펙트럼 오디오 프레임 (801) 을 복수의 스펙트럼 라인을 갖는 다중 대역으로 분할하는 서브-밴드 생성기 (802) 를 포함할 수도 있다. 그 후, 영역 선택기 (806) 가 복수의 중첩 영역을 생성하고, 각각의 영역은 복수의 인접 서브-밴드로 구성된다. 그 후, 메인 펄스 선택기 (808) 가 영역 내의 각각의 서브-밴드로부터 메인 펄스를 선택한다. 메인 펄스는 서브-밴드 내에서 가장 큰 진폭/크기를 갖는 펄스 (하나 이상의 스펙트럼 라인 또는 포인트) 일 수도 있다. 그 후, 영역 내의 각각의 서브-밴드에 대한 선택된 메인 펄스는 부호 인코더 (810), 위치 인코더 (812), 이득 인코더 (814) 및 진폭 인코더 (816) 에 의해 인코딩되어, 각각의 메인 펄스에 대한 대응하는 인코딩된 비트를 생성한다. 유사하게, 서브-펄스 선택기 (809) 가 그 영역에 걸쳐 (즉, 그 서브-펄스가 어느 서브-밴드에 속하는지에 무관하게) 복수의 (예를 들어, 4 개의) 서브-펄스를 선택한다. 서브-펄스는 영역 내에서, 서브-밴드 내의 가장 큰 진폭/크기를 갖는 나머지 펄스들 (즉, 이미 선택된 메인 펄스를 제외한 펄스들) 중에서 선택될 수도 있다. 그 후, 그 영역에 대한 선택된 서브-펄스는 부호 인코더 (818), 위치 인코더 (820), 이득 인코더 (822) 및 진폭 인코더 (824) 에 의해 인코딩되어, 서브-펄스에 대한 대응하는 인코딩된 비트를 생성한다. 위치 인코더 (820) 는 결합 위치 코딩 기술을 수행하여, 서브-펄스의 위치를 인코딩하는데 이용되는 비트의 전체 사이즈를 감소시키는 사전적 인덱스를 생성하도록 구성될 수도 있다. 더 상세하게는, 전체 영역 중 오직 몇몇 펄스만 인코딩될 경우, 그 몇몇 서브-펄스를 영역의 전체 길이로 나타내는 것보다 사전적 인덱스로 표현하는 것이 훨씬 효율적이다.
도 9 는, 프레임에 대한 형상 벡터를 획득하는 방법을 도시하는 흐름도이다. 전술한 바와 같이, 형상 벡터는 5 개의 메인 펄스 및 4 개의 서브-펄스 (스펙트럼 라인) 로 구성되며, (80 라인 영역 내에서의) 위치 결정 및 부호는 가능한 최소수의 비트를 이용하여 통신될 것이다.
이 예에서, 메인 펄스 및 서브 펄스의 특성에 대해 몇몇 가정이 행해진다. 첫째로, 메인 펄스의 크기는 서브-펄스의 크기보다 큰 것으로 가정되고, 그 비율은 미리 설정된 상수 (예를 들어, 0.8) 일 수도 있다. 이것은, 제안된 양자화 기술이 각각의 서브-밴드에서의 MDCT 스펙트럼에 3 개의 가능한 재구성 레벨 (크기) 중 하나, 즉, 제로 (0), 서브-펄스 레벨 (예를 들어, 0.8) 및 메인 펄스 레벨 (예를 들어, 1) 을 할당할 수도 있음을 의미한다. 둘째로, 각각의 16-포인트 (16-스펙트럼 라인) 서브-밴드는 정확하게 (서브-밴드 당 한번 송신되는 전용 이득을 갖는) 하나의 메인 펄스를 갖는다고 가정된다. 그 결과, 메인 펄스는 영역 내의 각각의 서브-밴드에 대해 제공된다. 세째로, 나머지 4 개의 (또는 더 적은) 서브-펄스는 80 라인 영역의 임의의 서브-밴드에 주입될 수 있지만, 임의의 선택된 메인 펄스를 대체하지는 못한다. 서브-펄스는 서브-밴드에서 스펙트럼 라인을 나타내는데 이용된 비트의 최대수를 나타낼 수도 있다. 예를 들어, 서브-밴드의 4 개의 서브-펄스는 임의의 서브-밴드에서 16 개의 스펙트럼 라인을 나타낼 수 있고, 따라서, 일 서브-밴드에서 16 개의 스펙트럼 라인을 나타내는데 이용된 비트의 최대수는 4 이다.
전술한 설명에 기초하여, 펄스의 인코딩 방법은 다음과 같이 유도될 수 있다. (복수의 스펙트럼 라인을 갖는) 프레임이 복수의 서브-밴드로 분할된다 (902). 복수의 중첩하는 영역이 정의될 수도 있고, 각각의 영역은 복수의 연속적인/인접한 서브-밴드를 포함한다 (904). 펄스 진폭/크기에 기초하여 그 영역 내의 각각의 서브-밴드에서 메인 펄스가 선택된다 (906). 각각의 선택된 메인 펄스에 대해 위치 인덱스가 인코딩된다 (908). 일 예에서, 메인 펄스는 16 개의 스펙트럼 라인을 갖는 서브-밴드 내의 임의의 곳에 있을 수도 있기 때문에, 그 위치는 4 비트 (예를 들어, 0...15 내의 정수값) 로 표현될 수 있다. 유사하게, 부호, 진폭 및/또는 이득이 각각의 메인 펄스에 대해 인코딩될 수도 있다 (910). 부호는 1 비트 (1 또는 0) 로 표현될 수도 있다. 메인 펄스에 대한 각각의 인덱스는 4 비트를 가질 것이므로, 각각의 메인 펄스에 대한 이득 및 진폭 인코딩에 이용되는 비트에 부가하여, 5 개의 메인 펄스 인덱스 (예를 들어, 5 서브-밴드) 및 메인 펄스의 부호를 위한 5 비트를 나타내기 위해 20 비트가 이용될 수도 있다.
서브-펄스의 인코딩을 위해, 영역의 나머지 펄스들 중 선택된 복수의 서브-펄스로부터 2 진 스트링이 생성되고, 선택된 메인 펄스는 제거된다 (912). "선택된 복수의 서브-펄스" 는 나머지 펄스들 중 최대 진폭/크기를 갖는 k 개의 펄스일 수도 있다. 또한, 80 개의 스펙트럼 라인을 갖는 영역에 대해, 모든 5 개의 메인 펄스가 제거되면, 서브-펄스를 고려할 80-5 = 75 개의 위치가 남는다. 그 결과,
0 : 서브-펄스가 없는 것을 나타냄
1 : 일 위치에서, 선택된 서브-펄스의 존재를 나타냄
로 구성된 75-비트의 2 진 스트링 w 가 생성될 수 있다.
그 후, 복수의 k 개의 넌-제로 비트를 갖는 모든 가능한 2 진 스트링들에 대해 2 진 스트링 w 의 사전적 인덱스가 연산된다 (914). 또한, 선택된 서브-펄스 각각에 대해 부호, 진폭 및/또는 이득이 인코딩될 수도 있다 (916).
사전적 인덱스 생성
선택된 서브-펄스를 나타내는 사전적 인덱스는, 이항 계수에 기초한 결합 위치 코딩 기술을 이용하여 생성될 수도 있다. 예를 들어, k 개의 넌-제로 비트를 갖는 길이 n 의 모든 가능한
Figure pct00007
의 2 진 스트링의 세트에 대해 2 진 스트링 w 가 연산될 수도 있다 (스트링 w 에서 각각의 넌-제로 비트는 인코딩될 펄스의 위치를 나타냄). 일예로, 2 진 스트링 w 내의 모든 k 개의 펄스의 위치를 인코딩하는 인덱스를 생성하기 위해 다음의 결합 공식이 이용될 수도 있으며:
Figure pct00008
여기서, n 은 2 진 스트링의 길이이고 (예를 들어, n = 75), k 는 선택된 서브-펄스의 수이고 (예를 들어, k = 4), wj 는 2 진 스트링 w 의 개별 비트를 나타내고, 모든 k>n 에 대해,
Figure pct00009
= 0 으로 가정된다. 따라서, k = 4, n = 75 인 예에 대해, 모든 가능한 서브-펄스 벡터의 인덱스에 의해 점유된 값의 전체 범위는,
Figure pct00010
이다. 따라서, 이것은, log21285826
Figure pct00011
20.294...비트로 표현될 수 있다. 가장 근접한 정수를 이용하면, 21 비트가 이용될 것이다. 이것은, 2 진 스트링에 대한 75 비트 또는 80-비트 영역 내에 남은 비트보다 더 작음을 유의한다.
스트링으로부터 사전적 인덱스를 생성하는 예
일 예에 따르면, 선택된 서브-펄스의 위치를 나타내는 2 진 스트링에 대한 사전적 인덱스는 이항 계수에 기초하여 계산될 수도 있으며, 삼각 어레이 (파스칼의 삼각형) 내에서 미리 연산되고 저장될 수 있는 일 구현은 다음과 같다:
/* n 의 최대값: */
#define N_MAX 32
/* 파스칼의 삼각형: */
static unsigned *binomial[N_MAX+1], b_data[(N_MAX+1) * (N_MAX+2) / 2];
/* 파스칼의 삼각형 초기화 */
static void compute_binomial_coeffs (void)
{
int n, k; unsigned *b = b_data;
for (n=0; n<=N_MAX; n++) {
binomial[n] = b; b += n + 1; /* 행을 할당함 */
binomial[n][0] = binomial[n][n] = 1; /* 최초 및 최후의 계수를 설정함 */
for (k=1; k<n; k++) {
binomial[n][k] = binomial[n-1][k-1] + binomial[n-1][k];
}
}
}
그 결과, 2 진 스트링 w 의 다양한 위치에서 복수의 서브-펄스 (예를 들어, 2 진 "1") 를 나타내는 2 진 스트링 w 에 대해 이항 계수가 계산될 수도 있다.
이항 계수의 어레이를 이용하여, 사전적 인덱스 (i) 의 연산은 다음과 같이 구현될 수 있다:
/* (n,k) 시퀀스의 인덱스 획득 */
static int index (unsigned w, int n, int k)
{
int i=0, j;
for (j=1; j<=n; j++) {
if (w & (1 << n-j)) {
if (n-j >= k)
i += binomial[n-j][k];
k--;
}
}
return i;
}
예시적인 인코딩 방법
도 10 은 스케일링 가능한 스피치 및 오디오 코덱에서 변환 스펙트럼을 인코딩하는 방법을 도시하는 블록도이다. 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터 나머지 신호가 획득되고, 나머지 신호는 원래의 오디오 신호와 그 원래의 오디오 신호의 재구성된 버전 사이의 차이이다 (1002). 원래의 오디오 신호의 재구성된 버전은: (a) CELP-기반 인코딩 계층으로부터 원래의 오디오 신호의 인코딩된 버전을 합성하여 합성된 신호를 획득하고, (b) 그 합성된 신호를 리-엠퍼시스하고/하거나 (c) 그 리-엠퍼시스 신호를 업샘플링하여, 원래의 오디오 신호의 재구성된 버전을 획득함으로써, 획득될 수도 있다.
나머지 신호는 이산 코사인 변환 (DCT)-타입의 변환 계층으로 변환되어, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼이 획득된다 (1004). DCT-타입의 변환 계층은 변형된 이산 코사인 변환 (MDCT) 일 수도 있고, 변환 스펙트럼은 MDCT 스펙트럼이다.
변환된 스펙트럼의 스펙트럼 라인은 결합 위치 코딩 기술을 이용하여 인코딩된다 (1006). 변환된 스펙트럼의 스펙트럼 라인의 인코딩은, 넌-제로 스펙트럼 라인 위치에 대한 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여 스펙트럼 라인의 선택된 서브세트의 위치를 인코딩하는 것을 포함한다. 몇몇 구현에서, 스펙트럼 라인의 세트는 인코딩 이전에 스펙트럼 라인의 수를 감소시키기 위해 드롭될 수도 있다. 또 다른 예에서, 결합 위치 코딩 기술은 스펙트럼 라인의 선택된 서브세트에 대한 사전적 인덱스를 생성하는 것을 포함할 수도 있고, 각각의 사전적 인덱스는 복수의 가능한 2 진 스트링 중 스펙트럼 라인의 그 선택된 서브세트의 위치를 나타내는 2 진 스트링을 나타낸다. 사전적 인덱스는 2 진 스트링의 스펙트럼 라인을 그 2 진 스트링의 길이보다 더 적은 비트로 나타낼 수도 있다.
또 다른 예에서, 결합 위치 코딩 기술은 2 진 스트링 내의 스펙트럼 라인의 위치를 나타내는 인덱스를 생성하는 것을 포함할 수도 있으며, 그 스펙트럼 라인의 위치는 결합 공식:
Figure pct00012
에 기초하여 인코딩되고, 여기서, n 은 2 진 스트링의 길이이고, k 는 인코딩될 선택된 스펙트럼 라인의 수이고, wj 는 2 진 스트링의 개별 비트를 나타낸다.
일예로, 복수의 스펙트럼 라인은 복수의 서브-밴드로 분할될 수도 있고, 연속적 서브-밴드는 영역들로 그룹화될 수도 있다. 영역 내의 각각의 서브-밴드에 대한 복수의 스펙트럼 라인으로부터 선택된 메인 펄스가 인코딩될 수도 있고, 그 영역 내의 스펙트럼 라인의 선택된 서브세트는 각각의 서브-밴드에 대한 메인 펄스를 배제한다. 또한, 영역 내의 스펙트럼 라인의 선택된 서브세트의 위치는, 넌-제로 스펙트럼 라인 위치에 대한 결합 위치 코딩 기술을 이용하여 스펙트럼 라인의 위치를 나타내는 것에 기초하여 인코딩될 수도 있다. 영역 내의 스펙트럼 라인의 선택된 서브세트는 각각의 서브-밴드에 대한 메인 펄스를 배제할 수도 있다. 변환 스펙트럼의 스펙트럼 라인의 인코딩은, 스펙트럼 라인의 그 선택된 서브세트의 위치에 기초하여, 영역 내의 모든 위치와 동일한 길이의 모든 가능한 2 진 스트링의 어레이를 생성하는 것을 포함할 수도 있다. 영역은 중첩될 수도 있고, 각각의 영역은 복수의 연속적인 서브-밴드를 포함할 수도 있다.
사전적 인덱스를 디코딩하는 그 인코딩된 펄스를 합성하는 프로세스는 인코딩에 대해 설명한 동작의 단순한 반대이다.
MDCT 스펙트럼의 디코딩
도 11 은 디코더의 일예를 도시하는 블록도이다. 각각의 오디오 프레임 (예를 들어, 20 밀리초 프레임) 에서, 디코더 (1102) 는 하나 이상의 계층의 정보를 포함하는 입력 비트스트림 (1104) 을 수신할 수도 있다. 수신된 계층은, 8 kbit/s 내지 32 kbit/s 에 대응할 수도 있는 계층 1 로부터 계층 5 까지의 범위일 수도 있다. 이것은, 디코더 동작이 각각 프레임에서 수신된 비트 (계층) 의 수만큼 컨디셔닝되는 것을 의미한다. 이 예에서, 출력 신호 (1132) 는 WB 이고, 모든 계층은 디코더 (1102) 에서 정확하게 수신된 것으로 가정된다. 코어 계층 (계층 1) 및 ACELP 향상 계층 (계층 2) 이 디코더 모듈 (1106) 에 의해 먼저 디코딩되고, 신호 합성이 수행된다. 그 후, 합성된 신호는 디-엠퍼시스 모듈 (1108) 에 의해 디-엠퍼시스되고, 리샘플링 모듈 (1110) 에 의해 16 kHz 로 리샘플링되어 신호
Figure pct00013
를 생성한다. 후-처리 모듈은 신호
Figure pct00014
를 더 프로세싱하여, 계층 1 또는 계층 2 의 합성된 신호
Figure pct00015
를 생성한다.
그 후, 상위 계층 (계층 3, 4, 5) 가 결합 스펙트럼 디코더 모듈 (1116) 에 의해 디코딩되어, MDCT 스펙트럼 신호
Figure pct00016
를 획득한다. MDCT 스펙트럼
Figure pct00017
은 역 MDCT 모듈 (1120) 에 의해 역변환되고, 결과로 얻어진 신호
Figure pct00018
가 계층 1 및 계층 2 의 지각적으로 가중된 합성 신호
Figure pct00019
에 가산된다. 그 후, 형상화 모듈 (1122) 에 의해 시간적 잡음 형상화가 적용된다. 그 후, 현재의 프레임과 중첩하는 이전 프레임의 가중된 합성 신호
Figure pct00020
가 그 합성물에 가산된다. 그 후, 역 지각적 가중 (1124) 이 적용되어, 합성된 WB 신호를 복원한다. 마지막으로, 그 복원된 신호에 피치 포스트-필터 (1126) 가 적용되고, 고역 통과 필터 (1128) 가 후속한다. 포스트-필터 (1126) 는 MDCT (계층 3, 4, 5) 의 중첩-가산 합성에 의해 도입된 과도한 디코더 지연을 이용한다. 이것은, 최적의 방식으로 2 개의 피치 포스트-필터 신호를 결합한다. 하나의 신호는, 과도한 디코더 지연을 이용하여 생성된 계층 1 또는 계층 2 디코더 출력의 고품질 피치 포스트-필터 신호
Figure pct00021
이다. 다른 하나의 신호는 상위 계층 (계층 3, 4, 5) 합성 신호의 저-지연 피치 포스트-필터 신호
Figure pct00022
이다. 그 후, 필터링된 합성 신호
Figure pct00023
가 잡음 게이트 (1130) 에서 출력된다.
도 12 는, MDCT 스펙트럼 오디오 프레임의 펄스를 효율적으로 디코딩할 수도 있는 디코더를 도시하는 블록도이다. 오디오 프레임에 대한 MDCT 스펙트럼의 메인 및/또는 서브-펄스에 대한 부호, 위치, 진폭 및/또는 이득을 포함하는 복수의 인코딩된 입력 비트가 수신된다. 하나 이상의 메인 펄스에 대한 비트는, 부호 디코더 (1210), 위치 디코더 (1212), 이득 디코더 (1214) 및/또는 진폭 디코더 (1216) 를 포함할 수도 있는 메인 펄스 디코더에 의해 디코딩된다. 그 후, 메인 펄스 합성기 (1208) 가 디코딩된 정보를 이용하여 하나 이상의 메인 펄스를 재구성한다. 유사하게, 하나 이상의 서브-펄스에 대한 비트가, 부호 디코더 (1218), 위치 디코더 (1220), 이득 디코더 (1222), 및/또는 진폭 디코더 (1224) 를 포함하는 서브-펄스 디코더에서 디코딩될 수도 있다. 서브-펄스의 위치는 결합 위치 코딩 기술에 기초하는 사전적 인덱스를 이용하여 인코딩될 수도 있음을 유의한다. 그 결과, 위치 디코더 (1220) 는 결합 스펙트럼 디코더일 수도 있다. 그 후, 서브-펄스 합성기 (1209) 가 디코딩된 정보를 이용하여 하나 이상의 서브-펄스를 재구성한다. 그 후, 영역 재생성기 (1206) 가 서브-펄스에 기초하여 복수의 중첩하는 영역을 재생성하고, 각각의 영역은 복수의 인접한 서브-밴드로 구성된다. 그 후, 서브-밴드 재생성기 (1204) 가 메인 펄스 및/또는 서브-펄스를 이용하여 서브-밴드를 재생성하여, 오디오 프레임 (1201) 에 대한 재구성된 MDCT 를 유도한다.
사전적 인덱스로부터 스트링을 생성하는 실시예
서브-펄스의 위치를 나타내는 수신된 사전적 인덱스를 디코딩하기 위해, 반대의 프로세스가 수행되어, 소정의 사전적 인덱스에 기초하여 시퀀스 또는 2 진 스트링을 획득할 수도 있다. 이러한 반대의 프로세스의 일예는 다음과 같이 구현될 수 있다.
/* 인덱스를 이용하여 (n,k) 시퀀스를 생성함 */
static unsigned make_sequence (int i, int n, int k)
{
unsigned j, b, w = 0;
for (j=1; j<=n; j++) {
if (n-j < k) goto l1;
b = binomial[n-j][k];
if (i >= b) {
i -= b;
l1:
w |= 1U << (n-j);
k --;
}
}
return w;
}
오직 적은 비트의 세트 (예를 들어, k = 4) 를 갖는 긴 시퀀스 (예를 들어, n = 75) 의 경우, 이 루틴은 더 실용적이도록 변형될 수 있다. 예를 들어, 비트의 시퀀스를 통해 탐색하는 대신에, 넌-제로 비트의 인덱스가 인코딩을 위해 전달되어, index() 함수는:
/* j0...j3 - 넌-제로 비트의 인덱스 */
static int index (int n, int j0, int j1, int j3, int j4)
{
int i=0;
if (n-j0 >= 4) i += binomial[n-j0][4];
if (n-j1 >= 3) i += binomial[n-j1][3];
if (n-j2 >= 2) i += binomial[n-j2][2];
if (n-j3 >= 2) i += binomial[n-j3][1];
return i;
}
이 된다.
이항 어레이 중 오직 처음 4 개의 열만 이용됨을 유의한다. 따라서, 메모리의 75*4 = 300 워드가 저장을 위해 이용된다.
일예로, 디코딩 프로세스는 다음의 알고리즘에 의해 달성될 수 있다.
static void decode_indices (int i, int n, int *j0, int *j1, int *j2, int *j3)
{
unsigned b, j;
for (j=1; j<=n-4; j++) {
b = binomial[n-j][4];
if (i >= b) {i -= b; break;}
}
*j0 = n-j;
for (j++; j<=n-3; j++) {
b = binomial[n-j][3];
if (i >= b) {i -= b; break;}
}
*j1 = n-j;
for (j++; j<=n-2; j++) {
b = binomial[n-j][2];
if (i >= b) {i -= b; break;}
}
*j2 = n-j;
for (j++; j<=n-1; j++) {
b = binomial[n-j][1];
if (i >= b) break;
}
*j3 = n-j;
}
이것은, 각각의 단계에서 이용된 룩업 및 비교만을 갖는 n 반복의 언롤링 루프이다.
예시적인 인코딩 방법
도 13 은 스케일링 가능한 스피치 및 오디오 코덱에서 변환 스펙스럼을 디코딩하는 방법을 도시하는 블록도이다. 나머지 신호의 복수의 변환 스펙트럼의 스펙트럼 라인을 나타내는 인덱스가 획득되고, 그 나머지 신호는 원래의 신호와 코드 여기 선형 예측 (CELP) 기반 인코딩 계층으로부터의 그 원래의 신호의 재구성된 버전 사이의 차이다 (1302). 인덱스는 2 진 스트링 내의 넌-제로 스펙트럼 라인을 그 2 진 스트링의 길이보다 적은 비트로 나타낼 수도 있다. 일예로, 획득된 인덱스는 2 진 스트링 내의 스펙트럼 라인의 위치를 나타낼 수도 있고, 그 스펙트럼 라인의 위치는 결합 공식:
Figure pct00024
에 기초하여 인코딩되고, 여기서, n 은 2 진 스트링의 길이이고, k 는 인코딩될 선택된 스펙트럼 라인의 수이고, wj 는 2 진 스트링의 개별 비트를 나타낸다.
인덱스는, 복수의 변환 스펙트럼의 스펙트럼 라인을 인코딩하는데 이용된 결합 위치 코딩 기술을 반대로 함으로써 디코딩된다 (1304). 나머지 신호의 버전은 역 이산 코사인 변환 (IDCT)-타입의 역변환 계층에서 디코딩된 복수의 변환 스펙트럼의 스펙트럼 라인을 이용하여 합성된다 (1306). 나머지 신호의 버전을 합성하는 것은, 변환 스펙트럼의 스펙트럼 라인에 역 DCT-타입 변환을 적용하여, 나머지 신호의 시간-도메인 버전을 생성하는 것을 포함할 수도 있다. 변환 스펙트럼의 스펙트럼 라인을 디코딩하는 것은, 넌-제로 스펙트럼 라인 위치에 대한 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여 스펙트럼 라인의 선택된 서브세트의 위치를 디코딩하는 것을 포함할 수도 있다. DCT-타입의 역변환 계층은 역 변형된 이산 코사인 변환 (IMDCT) 계층일 수도 있고, 변환 스펙트럼은 MDCT 스펙트럼이다.
또한, 원래의 오디오 신호를 인코딩한 CELP-인코딩 신호가 수신될 수도 있다 (1308). CELP-인코딩 신호가 디코딩되어, 디코딩된 신호를 생성할 수도 있다 (1310). 디코딩된 신호는 나머지 신호의 합성된 버전과 결합되어, 원래의 오디오 신호의 재구성된 버전 (더 높은 신뢰도) 을 획득할 수도 있다 (1312).
또한, 당업자는 여기에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들을 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로 구현할 수도 있음을 알 수 있다. 하드웨어와 소프트웨어의 이러한 대체 가능성을 분명히 설명하기 위하여, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들을 주로 그들의 기능의 관점에서 상술하였다. 그러한 기능이 하드웨어로 구현될지 소프트웨어로 구현될지는 전체 시스템에 부과된 특정한 애플리케이션 및 설계 제약조건들에 의존한다. 구성은, 플로우차트, 흐름도, 구조도 또는 블록도로 도시된 프로세스로서 설명될 수도 있음을 유의한다. 흐름도는 동작들을 순차적인 프로세스로서 설명할 수도 있지만, 다수의 동작들은 병렬적으로 또는 동시에 수행될 수 있다. 또한, 동작의 순서는 재배열될 수도 있다. 동작들이 완료되는 경우 프로세스는 종료된다. 프로세스는 방법, 펑션, 과정, 서브루틴, 서브프로그램 등에 대응할 수도 있다. 프로세스가 펑션에 대응하는 경우, 그 종료는 호출 펑션 또는 메인 펑션으로의 펑션의 리턴에 대응한다.
여기에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그래머블 게이트 어레이 (FPGA), 또는 기타 프로그래머블 로직 디바이스, 별도의 게이트 또는 트랜지스터 로직, 별도의 하드웨어 컴포넌트들, 또는 여기서 설명된 기능을 수행하도록 설계된 이들의 임의의 결합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 다른 방법으로, 그 프로세서는 임의의 종래 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 결합, 예를 들어, DSP 와 마이크로프로세서의 결합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들 또는 임의의 기타 다른 구성물로 구현될 수도 있다.
소프트웨어로 구현되는 경우, 다양한 실시예들은 펌웨어, 미들웨어, 또는 마이크로코드를 이용할 수도 있다. 필요한 태스크를 수행하는 프로그램 코드 또는 코드 세그먼트는 저장 매체 또는 기타 스토리지(들)과 같은 컴퓨터-판독가능 매체에 저장될 수도 있다. 프로세서는 필요한 태스크를 수행할 수도 있다. 코드 세그먼트는 절차, 함수, 서브프로그램, 프로그램, 루틴, 서브루틴, 모듈, 소프트웨어 패키지, 클래스, 또는 명령들, 데이터 구조 또는 프로그램 스테이츠먼트의 임의의 조합을 표현할 수도 있다. 코드 세그먼트는 정보, 데이터, 아규먼트, 파라미터 또는 메모리 컨텐츠를 패싱 및/또는 수신함으로써 또 다른 코드 세그먼트 또는 하드웨어 회로에 커플링될 수도 있다. 정보, 아규먼트 파라미터, 데이터 등은, 메모리 공유, 메시지 패싱, 토큰 패싱, 네트워크 송신 등을 포함하는 임의의 적절한 수단을 이용하여 패싱, 포워딩 또는 송신될 수도 있다.
본 명세서에서 사용되는 바와 같이, 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔터티, 하드웨어, 펌웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어, 또는 실행 소프트웨어를 지칭하는 것으로 의도된다. 예를 들어, 컴포넌트는, 한정하려는 것은 아니지만, 프로세서 상에서 구동하는 프로세스, 프로세서, 오브젝트, 실행가능한 것, 실행의 스레드, 프로그램, 및/또는 컴퓨터일 수도 있다. 예시로서, 연산 디바이스 상에서 실행되는 애플리케이션 및 그 연산 디바이스 모두가 컴포넌트일 수 있다. 하나 이상의 컴포넌트는, 프로세서 및/또는 실행의 스레드 내에 상주할 수도 있고, 일 컴포넌트는 하나의 컴퓨터상에 집중될 수도 있고, 및/또는 2 개 이상의 컴퓨터들 사이에 분산될 수도 있다. 또한, 이들 컴포넌트들은, 다양한 데이터 구조를 저장한 다양한 컴퓨터 판독가능 매체로부터 실행할 수 있다. 컴포넌트들은, 하나 이상의 데이터 패킷 (예를 들어, 로컬 시스템에서, 분산 시스템에서, 및/또는 신호에 의해 다른 시스템과의 네트워크, 이를 테면, 인터넷을 통해 다른 컴포넌트와 상호작용하는 일 컴포넌트로부터의 데이터) 을 가진 신호에 따라서와 같이 로컬 및/또는 원격 프로세스에 의해 통신할 수 있다.
하나 이상의 실시예에서, 설명된 기능들은 하드웨어, 소프트웨어 펌웨어 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되면, 기능들은 컴퓨터-판독가능 매체 상에서 하나 이상의 명령들 또는 코드로 저장될 수도 있고 이를 통해 송신될 수도 있다. 컴퓨터-판독가능 매체는 컴포터 저장 매체, 및 하나의 장소로부터 다른 장소로 컴퓨터 프로그램의 이송을 용이하게 하는 임의의 매체를 포함하는 통신 매체 모두를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 한정이 아닌 예시로서, 이러한 컴퓨터-판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 기타 광학 디스크 저장 매체, 자기 디스크 저장 매체 또는 기타 자기 저장 디바이스, 또는 원하는 프로그램 코드를 컴퓨터에 의해 액세스가능한 명령들 또는 데이터 구조들의 형태로 반송하거나 저장하는데 이용될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터-판독가능 매체로 적절하게 지칭된다. 예를 들어, 동축 케이블, 광섬유 케이블, 트위스트 쌍, 디지털 가입자 라인 (DSL), 또는 적외선, 무선 및 전자파와 같은 무선 기술을 이용하여 소프트웨어가 웹사이트, 서버 또는 기타 원격 소스로부터 송신되면, 그 동축 케이블, 광섬유 케이블, 트위스트 상, DSL, 또는 적외선, 무선 및 전자파와 같은 무선 기술이 매체의 정의에 포함된다. 여기서 사용되는 바와 같이, 디스크 (Disk 및 disc) 는 컴팩트 디스크 (CD), 레이져 디스크, 광 디스크, DVD, 플로피 디스크 및 통상적으로 데이터를 자기적으로 재생성하는 블루 레이 디스크를 포함하며, 디스크는 레이져를 이용하여 데이터를 광학적으로 재생성한다. 또한, 전술한 매체들의 조합이 컴퓨터-판독가능 매체의 범주 내에 포함될 것이다. 소프트웨어는 하나의 명령 또는 다수의 명령들을 포함할 수도 있고, 상이한 프로그램들 사이 및 다수의 저장 매체 사이에서 다수의 상이한 코드 세그먼트에 걸쳐 분포될 수도 있다. 예시적인 저장 매체는, 프로세서가 그 저장 매체로부터 정보를 판독하거나 그 저장 매체에 정보를 기록할 수 있도록 그 프로세서에 커플링될 수도 있다. 대안적으로, 저장 매체는 프로세서에 포함될 수도 있다.
여기서 개시된 방법들은, 그 개시된 방법을 달성하기 위한 하나 이상의 단계들 또는 동작들을 포함한다. 이 방법 단계들 및/또는 동작들은 청구항의 범주를 벗어나지 않으면서 서로 교환될 수도 있다. 즉, 설명되고 있는 실시형태의 적절한 동작에 단계들 또는 동작들의 특정한 순서가 요구되지 않으면, 특정한 단계들 및/또는 동작들의 순서 및/또는 이용은 청구항의 범주를 벗어나지 않으면서 변형될 수도있다.
도 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 및/또는 13 에 도시된 하나 이상의 컴포넌트들, 단계들 및/또는 펑션들은 단일한 컴포넌트, 단계 또는 펑션으로 재배열 및/또는 결합될 수도 있고, 다수의 컴포넌트들, 단계들 또는 펑션들로 구현될 수도 있다. 또한, 추가적인 엘리먼트들, 컴포넌트들, 단계들 및/또는 펑션들이 추가될 수도 있다. 도 1, 2, 3, 4, 5, 8, 11 및 12 에 도시된 장치, 디바이스 및/또는 컴포넌트는 도 6, 7 및 10 내지 13 에 개시된 방법, 특징 또는 단계들 중 하나 이상을 수행하도록 구성 또는 적응될 수도 있다. 여기서 개시된 알고리즘은 소프트웨어 및/또는 임베디드 하드웨어로 효율적으로 구현될 수도 있다.
전술한 구성들은 오직 예시이며, 청구항을 한정하는 것으로 해석되어서는 안된다. 이 구성들의 설명은 예시적인 것으로 의도되고, 청구항의 범주를 한정하는 것으로 의도되지 않는다. 이와 같이, 본 교시는 다른 타입의 장치에 용이하게 적용될 수 있으며, 다양한 대체예, 변형예 및 변화예는 당업자에게 자명할 것이다.

Claims (40)

  1. 스케일링 가능한 스피치 및 오디오 코덱에서의 인코딩 방법으로서,
    코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터 나머지 신호를 획득하는 단계로서, 상기 나머지 신호는 원래의 오디오 신호와 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인, 상기 나머지 신호를 획득하는 단계;
    상기 나머지 신호를 이산 코사인 변환 (DCT)-타입의 변환 계층에서 변환하여, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼을 획득하는 단계; 및
    결합 위치 코딩 기술을 이용하여, 상기 변환 스펙트럼의 스펙트럼 라인을 인코딩하는 단계를 포함하는, 인코딩 방법.
  2. 제 1 항에 있어서,
    상기 DCT-타입의 변환 계층은 변형된 이산 코사인 변환 (MDCT) 계층이고, 상기 변환 스펙트럼은 MDCT 스펙트럼인, 인코딩 방법.
  3. 제 1 항에 있어서,
    상기 변환 스펙트럼의 스펙트럼 라인의 인코딩은,
    넌-제로 스펙트럼 라인 위치에 대한 상기 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여, 스펙트럼 라인의 선택된 서브세트의 위치를 인코딩하는 것을 포함하는, 인코딩 방법.
  4. 제 1 항에 있어서,
    상기 복수의 스펙트럼 라인을 복수의 서브-밴드로 스플리트하는 단계; 및
    연속적인 서브-밴드를 영역들로 그룹화하는 단계를 더 포함하는, 인코딩 방법.
  5. 제 4 항에 있어서,
    상기 영역 내의 각각의 서브-밴드에 대한 복수의 스펙트럼 라인으로부터 선택된 메인 펄스를 인코딩하는 단계를 더 포함하는, 인코딩 방법.
  6. 제 4 항에 있어서,
    넌-제로 스펙트럼 라인 위치에 대한 상기 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여, 영역 내의 스펙트럼 라인의 선택된 서브세트의 위치를 인코딩하는 단계를 더 포함하며,
    상기 변환 스펙트럼의 스펙트럼 라인의 인코딩은, 스펙트럼 라인의 선택된 서브세트의 위치에 기초하여, 상기 영역 내의 모든 위치와 동일한 길이인 모든 가능한 2 진 스트링의 어레이를 생성하는 것을 포함하는, 인코딩 방법.
  7. 제 4 항에 있어서,
    상기 영역들은 중첩되고, 각각의 영역은 복수의 연속적 서브-밴드를 포함하는, 인코딩 방법.
  8. 제 1 항에 있어서,
    상기 결합 위치 코딩 기술은,
    스펙트럼 라인의 선택된 서브세트에 대한 사전적 인덱스를 생성하는 것을 포함하고, 각각의 사전적 인덱스는, 복수의 가능한 2 진 스트링 중 스펙트럼 라인의 선택된 서브세트의 위치를 나타내는 2 진 스트링을 나타내는, 인코딩 방법.
  9. 제 8 항에 있어서,
    상기 사전적 인덱스는 2 진 스트링 내의 넌-제로 스펙트럼 라인을 상기 2 진 스트링의 길이보다 적은 비트로 나타내는, 인코딩 방법.
  10. 제 1 항에 있어서,
    상기 결합 위치 코딩 기술은 2 진 스트링 내의 스펙트럼 라인의 위치를 나타내는 인덱스를 생성하는 것을 포함하고,
    상기 스펙트럼 라인의 위치는 하기의 결합 공식,
    Figure pct00025

    에 기초하여 인코딩되고, n 은 상기 2 진 스트링의 길이이고, k 는 인코딩될 선택된 스펙트럼 라인의 수이고, wj 는 상기 2 진 스트링의 개별 비트를 나타내는, 인코딩 방법.
  11. 제 1 항에 있어서,
    일 세트의 스펙트럼 라인을 드롭시켜, 인코딩 이전에 스펙트럼 라인의 수를 감소시키는 단계를 더 포함하는, 인코딩 방법.
  12. 제 1 항에 있어서,
    상기 원래의 오디오 신호의 재구성된 버전은,
    상기 CELP-기반 인코딩 계층으로부터의 원래의 오디오 신호의 인코딩된 버전을 합성하여, 합성된 신호를 생성하고;
    상기 합성된 신호를 리-엠퍼시스하고;
    상기 리-엠퍼시스된 신호를 업샘플링하여, 상기 원래의 오디오 신호의 재구성된 버전을 획득함으로써 획득되는, 인코딩 방법.
  13. 코드 여기 선형 예측 (CELP)-기반 인코딩 계층 모듈로부터 나머지 신호를 획득하고, 상기 나머지 신호를 변환하여, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼을 획득하도록 구성된 이산 코사인 변환 (DCT)-타입의 변환 계층 모듈로서, 상기 나머지 신호는, 원래의 오디오 신호와 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인, 상기 DCT-타입의 변환 계층 모듈; 및
    결합 위치 코딩 기술을 이용하여 상기 변환 스펙트럼의 스펙트럼 라인을 인코딩하도록 구성된 결합 스펙트럼 인코더를 포함하는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  14. 제 13 항에 있어서,
    상기 DCT-타입의 변환 계층 모듈은 변형된 이산 코사인 변환 (MDCT) 계층 모듈이고, 상기 변환 스펙트럼은 MDCT 스펙트럼인, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  15. 제 13 항에 있어서,
    상기 변환 스펙트럼의 스펙트럼 라인의 인코딩은,
    넌-제로 스펙트럼 라인 위치에 대한 상기 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여, 스펙트럼 라인의 선택된 서브세트의 위치를 인코딩하는 것을 포함하는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  16. 제 13 항에 있어서,
    상기 복수의 스펙트럼 라인을 복수의 서브-밴드로 스플리트하도록 구성된 서브-밴드 생성기; 및
    연속적인 서브-밴드를 영역들로 그룹화하도록 구성된 영역 생성기를 더 포함하는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  17. 제 16 항에 있어서,
    상기 영역 내의 각각의 서브-밴드에 대한 복수의 스펙트럼 라인으로부터 선택된 메인 펄스를 인코딩하도록 구성된 메인 펄스 인코더를 더 포함하는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  18. 제 16 항에 있어서,
    넌-제로 스펙트럼 라인 위치에 대한 상기 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여, 영역 내의 스펙트럼 라인의 선택된 서브세트의 위치를 인코딩하도록 구성된 서브-펄스 인코더를 더 포함하며,
    상기 변환 스펙트럼의 스펙트럼 라인의 인코딩은, 스펙트럼 라인의 선택된 서브세트의 위치에 기초하여, 상기 영역 내의 모든 위치와 동일한 길이인 모든 가능한 2 진 스트링의 어레이를 생성하는 것을 포함하는, 방법.
  19. 제 16 항에 있어서,
    상기 영역들은 중첩되고, 각각의 영역은 복수의 연속적 서브-밴드를 포함하는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  20. 제 13 항에 있어서,
    상기 결합 위치 코딩 기술은,
    스펙트럼 라인의 선택된 서브세트에 대한 사전적 인덱스를 생성하는 것을 포함하고, 각각의 사전적 인덱스는, 복수의 가능한 2 진 스트링 중 스펙트럼 라인의 선택된 서브세트의 위치를 나타내는 2 진 스트링을 나타내는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  21. 제 20 항에 있어서,
    상기 사전적 인덱스는 2 진 스트링 내의 넌-제로 스펙트럼 라인을 상기 2 진 스트링의 길이보다 적은 비트로 나타내는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  22. 제 13 항에 있어서,
    상기 결합 스펙트럼 인코더는 2 진 스트링 내의 스펙트럼 라인의 위치를 나타내는 인덱스를 생성하도록 구성되고,
    상기 스펙트럼 라인의 위치는 하기의 결합 공식,
    Figure pct00026

    에 기초하여 인코딩되고, n 은 상기 2 진 스트링의 길이이고, k 는 인코딩될 선택된 스펙트럼 라인의 수이고, wj 는 상기 2 진 스트링의 개별 비트를 나타내는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  23. 제 13 항에 있어서,
    상기 원래의 오디오 신호의 재구성된 버전은,
    상기 CELP-기반 인코딩 계층으로부터의 원래의 오디오 신호의 인코딩된 버전을 합성하여, 합성된 신호를 생성하고;
    상기 합성된 신호를 리-엠퍼시스하고;
    상기 리-엠퍼시스된 신호를 업샘플링하여, 상기 원래의 오디오 신호의 재구성된 버전을 획득함으로써 획득되는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  24. 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터 나머지 신호를 획득하는 수단으로서, 상기 나머지 신호는 원래의 오디오 신호와 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인, 상기 나머지 신호를 획득하는 수단;
    상기 나머지 신호를 이산 코사인 변환 (DCT)-타입의 변환 계층에서 변환하여, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼을 획득하는 수단; 및
    결합 위치 코딩 기술을 이용하여, 상기 변환 스펙트럼의 스펙트럼 라인을 인코딩하는 수단을 포함하는, 스케일링 가능한 스피치 및 오디오 인코더 디바이스.
  25. 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터, 원래의 오디오 신호와 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인 나머지 신호를 획득하고;
    상기 나머지 신호를 이산 코사인 변환 (DCT)-타입의 변환 계층에서 변환하여, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼을 획득하고,
    결합 위치 코딩 기술을 이용하여, 상기 변환 스펙트럼의 스펙트럼 라인을 인코딩하도록 구성되는 스케일링 가능한 스피치 및 오디오 인코딩 회로를 포함하는, 프로세서.
  26. 하나 이상의 프로세서에 의해 실행되는 경우, 상기 프로세서로 하여금,
    코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터, 원래의 오디오 신호와 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인 나머지 신호를 획득하고;
    상기 나머지 신호를 이산 코사인 변환 (DCT)-타입의 변환 계층에서 변환하여, 복수의 스펙트럼 라인을 갖는 대응하는 변환 스펙트럼을 획득하고,
    결합 위치 코딩 기술을 이용하여, 상기 변환 스펙트럼의 스펙트럼 라인을 인코딩하게 하는, 스케일링 가능한 스피치 및 오디오 인코딩을 위해 동작하는 명령들을 포함하는, 머신-판독가능 매체.
  27. 나머지 신호의 복수의 변환 스펙트럼의 스펙트럼 라인을 나타내는 인덱스를 획득하는 단계로서, 상기 나머지 신호는, 원래의 오디오 신호와 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터의 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인, 상기 인덱스를 획득하는 단계;
    상기 복수의 변환 스펙트럼의 스펙트럼 라인을 인코딩하는데 이용된 결합 위치 코딩 기술을 반대로 행함으로써 상기 인덱스를 디코딩하는 단계; 및
    역 이산 코사인 변환 (IDCT)-타입의 역 변환 계층에서, 디코딩된 복수의 변환 스펙트럼의 스펙트럼 라인을 이용하여 상기 나머지 신호의 버전을 합성하는 단계를 포함하는, 스케일링 가능한 스피치 및 오디오 디코딩을 위한 방법.
  28. 제 27 항에 있어서,
    상기 원래의 오디오 신호를 인코딩한 CELP-인코딩 신호를 수신하는 단계;
    CELP-인코딩 신호를 디코딩하여 디코딩된 신호를 생성하는 단계; 및
    상기 디코딩된 신호를 상기 나머지 신호의 합성된 버전과 결합하여, 상기 원래의 오디오 신호의 재구성된 버전을 획득하는 단계를 더 포함하는, 스케일링 가능한 스피치 및 오디오 디코딩을 위한 방법.
  29. 제 27 항에 있어서,
    상기 나머지 신호의 버전을 합성하는 단계는, 상기 변환 스펙트럼의 스펙트럼 라인에 역 DCT-타입의 변환을 적용하여, 상기 나머지 신호의 시간-도메인 버전을 생성하는 단계를 포함하는, 스케일링 가능한 스피치 및 오디오 디코딩을 위한 방법.
  30. 제 27 항에 있어서,
    상기 변환 스펙트럼의 스펙트럼 라인의 디코딩은,
    넌-제로 스펙트럼 라인 위치에 대한 상기 결합 위치 코딩 기술을 이용하여 스펙트럼 라인 위치를 나타내는 것에 기초하여, 스펙트럼 라인의 선택된 서브세트의 위치를 디코딩하는 것을 포함하는, 스케일링 가능한 스피치 및 오디오 디코딩을 위한 방법.
  31. 제 27 항에 있어서,
    상기 인덱스는, 2 진 스트링 내의 넌-제로 스펙트럼 라인을 상기 2 진 스트링의 길이보다 적은 비트로 나타내는, 스케일링 가능한 스피치 및 오디오 디코딩을 위한 방법.
  32. 제 27 항에 있어서,
    DCT-타입의 역 변환 계층은 역 변형된 이산 코사인 변환 (IMDCT) 계층이고, 상기 변환 스펙트럼은 MDCT 스펙트럼인, 스케일링 가능한 스피치 및 오디오 디코딩을 위한 방법.
  33. 제 27 항에 있어서,
    상기 획득된 인덱스는 2 진 스트링 내의 스펙트럼 라인의 위치를 나타내고,
    상기 스펙트럼 라인의 위치는 하기의 결합 공식,
    Figure pct00027

    에 기초하여 인코딩되고, n 은 상기 2 진 스트링의 길이이고, k 는 인코딩될 선택된 스펙트럼 라인의 수이고, wj 는 상기 2 진 스트링의 개별 비트를 나타내는, 스케일링 가능한 스피치 및 오디오 디코딩을 위한 방법.
  34. 나머지 신호의 복수의 변환 스펙트럼의 스펙트럼 라인을 나타내는 인덱스를 획득하고, 상기 복수의 변환 스펙트럼의 스펙트럼 라인을 인코딩하는데 이용된 결합 위치 코딩 기술을 반대로 행함으로써 상기 인덱스를 디코딩하도록 구성된 결합 스펙트럼 디코더로서, 상기 나머지 신호는, 원래의 오디오 신호와 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터의 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인, 상기 결합 스펙트럼 디코더; 및
    디코딩된 복수의 변환 스펙트럼의 스펙트럼 라인을 이용하여, 상기 나머지 신호의 버전을 합성하도록 구성된 역 이산 코사인 변환 (IDCT)-타입의 역 변환 계층 모듈을 포함하는, 스케일링 가능한 스피치 및 오디오 디코더 디바이스.
  35. 제 34 항에 있어서,
    상기 원래의 오디오 신호를 인코딩한 CELP-인코딩 신호를 수신하고;
    CELP-인코딩 신호를 디코딩하여 디코딩된 신호를 생성하고;
    상기 디코딩된 신호를 상기 나머지 신호의 합성된 버전과 결합하여, 상기 원래의 오디오 신호의 재구성된 버전을 획득하도록 구성된 CELP 디코더를 더 포함하는, 스케일링 가능한 스피치 및 오디오 디코더 디바이스.
  36. 제 34 항에 있어서,
    상기 나머지 신호의 버전을 합성하는 상기 IDCT-타입의 역 변환 계층 모듈은 상기 변환 스펙트럼의 스펙트럼 라인에 역 DCT-타입의 변환을 적용하여 상기 나머지 신호의 시간-도메인 버전을 생성하도록 구성되는, 스케일링 가능한 스피치 및 오디오 디코더 디바이스.
  37. 제 34 항에 있어서,
    상기 인덱스는, 2 진 스트링 내의 넌-제로 스펙트럼 라인을 상기 2 진 스트링의 길이보다 적은 비트로 나타내는, 스케일링 가능한 스피치 및 오디오 디코더 디바이스.
  38. 나머지 신호의 복수의 변환 스펙트럼의 스펙트럼 라인을 나타내는 인덱스를 획득하는 수단으로서, 상기 나머지 신호는, 원래의 오디오 신호와 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터의 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인, 상기 인덱스를 획득하는 수단;
    상기 복수의 변환 스펙트럼의 스펙트럼 라인을 인코딩하는데 이용된 결합 위치 코딩 기술을 반대로 행함으로써 상기 인덱스를 디코딩하는 수단; 및
    역 이산 코사인 변환 (IDCT)-타입의 역 변환 계층에서, 디코딩된 복수의 변환 스펙트럼의 스펙트럼 라인을 이용하여 상기 나머지 신호의 버전을 합성하는 수단을 포함하는, 스케일링 가능한 스피치 및 오디오 디코더 디바이스.
  39. 원래의 오디오 신호와 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터의 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인 나머지 신호의 복수의 변환 스펙트럼의 스펙트럼 라인을 나타내는 인덱스를 획득하고;
    상기 복수의 변환 스펙트럼의 스펙트럼 라인을 인코딩하는데 이용된 결합 위치 코딩 기술을 반대로 행함으로써 상기 인덱스를 디코딩하고;
    역 이산 코사인 변환 (IDCT)-타입의 역 변환 계층에서, 디코딩된 복수의 변환 스펙트럼의 스펙트럼 라인을 이용하여 상기 나머지 신호의 버전을 합성하도록 구성되는 스케일링 가능한 스피치 및 오디오 디코딩 회로를 포함하는, 프로세서.
  40. 하나 이상의 프로세서에 의해 실행되는 경우, 상기 프로세서로 하여금,
    원래의 오디오 신호와 코드 여기 선형 예측 (CELP)-기반 인코딩 계층으로부터의 상기 원래의 오디오 신호의 재구성된 버전 사이의 차이인 나머지 신호의 복수의 변환 스펙트럼의 스펙트럼 라인을 나타내는 인덱스를 획득하고;
    상기 복수의 변환 스펙트럼의 스펙트럼 라인을 인코딩하는데 이용된 결합 위치 코딩 기술을 반대로 행함으로써 상기 인덱스를 디코딩하고;
    역 이산 코사인 변환 (IDCT)-타입의 역 변환 계층에서, 디코딩된 복수의 변환 스펙트럼의 스펙트럼 라인을 이용하여 상기 나머지 신호의 버전을 합성하게 하는, 스케일링 가능한 스피치 및 오디오 디코딩을 위해 동작하는 명령들을 포함하는, 머신-판독가능 매체.
KR1020107011197A 2007-10-22 2008-10-22 Mdct 스펙트럼의 결합 인코딩을 이용하는 스케일링 가능한 스피치 및 오디오 인코딩 KR20100085994A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US98181407P 2007-10-22 2007-10-22
US60/981,814 2007-10-22
US12/255,604 2008-10-21
US12/255,604 US8527265B2 (en) 2007-10-22 2008-10-21 Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs

Publications (1)

Publication Number Publication Date
KR20100085994A true KR20100085994A (ko) 2010-07-29

Family

ID=40210550

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107011197A KR20100085994A (ko) 2007-10-22 2008-10-22 Mdct 스펙트럼의 결합 인코딩을 이용하는 스케일링 가능한 스피치 및 오디오 인코딩

Country Status (13)

Country Link
US (1) US8527265B2 (ko)
EP (1) EP2255358B1 (ko)
JP (2) JP2011501828A (ko)
KR (1) KR20100085994A (ko)
CN (2) CN101836251B (ko)
AU (1) AU2008316860B2 (ko)
BR (1) BRPI0818405A2 (ko)
CA (1) CA2701281A1 (ko)
IL (1) IL205131A0 (ko)
MX (1) MX2010004282A (ko)
RU (1) RU2459282C2 (ko)
TW (1) TWI407432B (ko)
WO (1) WO2009055493A1 (ko)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100647336B1 (ko) * 2005-11-08 2006-11-23 삼성전자주식회사 적응적 시간/주파수 기반 오디오 부호화/복호화 장치 및방법
DK2827327T3 (da) 2007-04-29 2020-10-12 Huawei Tech Co Ltd Fremgangsmåde til excitationsimpulskodning
KR101649376B1 (ko) 2008-10-13 2016-08-31 한국전자통신연구원 Mdct 기반 음성/오디오 통합 부호화기의 lpc 잔차신호 부호화/복호화 장치
WO2010044593A2 (ko) 2008-10-13 2010-04-22 한국전자통신연구원 Mdct 기반 음성/오디오 통합 부호화기의 lpc 잔차신호 부호화/복호화 장치
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
EP2490216B1 (en) * 2009-10-14 2019-04-24 III Holdings 12, LLC Layered speech coding
CN102667921B (zh) 2009-10-20 2014-09-10 弗兰霍菲尔运输应用研究公司 音频编码器、音频解码器、用于将音频信息编码的方法、用于将音频信息解码的方法
JP5746974B2 (ja) * 2009-11-13 2015-07-08 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化装置、復号装置およびこれらの方法
EP2502229B1 (en) * 2009-11-19 2017-08-09 Telefonaktiebolaget LM Ericsson (publ) Methods and arrangements for loudness and sharpness compensation in audio codecs
CN102081926B (zh) * 2009-11-27 2013-06-05 中兴通讯股份有限公司 格型矢量量化音频编解码方法和系统
MX2012008075A (es) 2010-01-12 2013-12-16 Fraunhofer Ges Forschung Codificador de audio, decodificador de audio, metodo para codificar e informacion de audio, metodo para decodificar una informacion de audio y programa de computacion utilizando una modificacion de una representacion de un numero de un valor de contexto numerico previo.
WO2011087332A2 (ko) 2010-01-15 2011-07-21 엘지전자 주식회사 오디오 신호 처리 방법 및 장치
EP2357649B1 (en) * 2010-01-21 2012-12-19 Electronics and Telecommunications Research Institute Method and apparatus for decoding audio signal
CN102918590B (zh) * 2010-03-31 2014-12-10 韩国电子通信研究院 编码方法和装置、以及解码方法和装置
ES2501840T3 (es) * 2010-05-11 2014-10-02 Telefonaktiebolaget Lm Ericsson (Publ) Procedimiento y disposición para el procesamiento de señales de audio
CN102299760B (zh) * 2010-06-24 2014-03-12 华为技术有限公司 脉冲编解码方法及脉冲编解码器
ES2559981T3 (es) * 2010-07-05 2016-02-17 Nippon Telegraph And Telephone Corporation Método de codificación, método de decodificación, dispositivo, programa y medio de registro
US20120029926A1 (en) * 2010-07-30 2012-02-02 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dependent-mode coding of audio signals
US8879634B2 (en) 2010-08-13 2014-11-04 Qualcomm Incorporated Coding blocks of data using one-to-one codes
US9208792B2 (en) 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection
RU2648595C2 (ru) 2011-05-13 2018-03-26 Самсунг Электроникс Ко., Лтд. Распределение битов, кодирование и декодирование аудио
US9472199B2 (en) 2011-09-28 2016-10-18 Lg Electronics Inc. Voice signal encoding method, voice signal decoding method, and apparatus using same
EP2733699B1 (en) * 2011-10-07 2017-09-06 Panasonic Intellectual Property Corporation of America Scalable audio encoding device and scalable audio encoding method
US8924203B2 (en) 2011-10-28 2014-12-30 Electronics And Telecommunications Research Institute Apparatus and method for coding signal in a communication system
CN103493130B (zh) * 2012-01-20 2016-05-18 弗劳恩霍夫应用研究促进协会 用以利用正弦代换进行音频编码及译码的装置和方法
WO2013142650A1 (en) 2012-03-23 2013-09-26 Dolby International Ab Enabling sampling rate diversity in a voice communication system
KR101398189B1 (ko) * 2012-03-27 2014-05-22 광주과학기술원 음성수신장치 및 음성수신방법
JP6096896B2 (ja) * 2012-07-12 2017-03-15 ノキア テクノロジーズ オーユー ベクトル量子化
EP2720222A1 (en) * 2012-10-10 2014-04-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for efficient synthesis of sinusoids and sweeps by employing spectral patterns
ES2753228T3 (es) * 2012-11-05 2020-04-07 Panasonic Ip Corp America Dispositivo de codificación de audio de voz, dispositivo de decodificación de audio de voz, procedimiento de codificación de audio de voz y procedimiento de decodificación de audio de voz
KR101701081B1 (ko) 2013-01-29 2017-01-31 프라운호퍼-게젤샤프트 츄어 푀르더룽 데어 안게반텐 포르슝에.파우. 제 1 오디오 인코딩 알고리즘 및 제 2 오디오 인코딩 알고리즘 중 하나를 선택하기 위한 장치 및 방법
AU2014211544B2 (en) * 2013-01-29 2017-03-30 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Noise filling in perceptual transform audio coding
EP3432304B1 (en) 2013-02-13 2020-06-17 Telefonaktiebolaget LM Ericsson (publ) Frame error concealment
KR102148407B1 (ko) * 2013-02-27 2020-08-27 한국전자통신연구원 소스 필터를 이용한 주파수 스펙트럼 처리 장치 및 방법
RU2619886C2 (ru) * 2013-03-26 2017-05-19 Долби Лабораторис Лайсэнзин Корпорейшн Кодирование перцепционно-квантованного видеоконтента в многоуровневом кодировании vdr
PL3011555T3 (pl) * 2013-06-21 2018-09-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Rekonstrukcja ramki sygnału mowy
SG11201510463WA (en) 2013-06-21 2016-01-28 Fraunhofer Ges Forschung Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pitch lag estimation
EP2830065A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decoding an encoded audio signal using a cross-over filter around a transition frequency
PL3046104T3 (pl) * 2013-09-16 2020-02-28 Samsung Electronics Co., Ltd. Sposób kodowania sygnału oraz sposób dekodowania sygnału
US10388293B2 (en) 2013-09-16 2019-08-20 Samsung Electronics Co., Ltd. Signal encoding method and device and signal decoding method and device
RU2638734C2 (ru) 2013-10-18 2017-12-15 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Кодирование спектральных коэффициентов спектра аудиосигнала
PT3471096T (pt) * 2013-10-18 2020-07-06 Ericsson Telefon Ab L M Codificação de posições de picos espectrais
JP5981408B2 (ja) * 2013-10-29 2016-08-31 株式会社Nttドコモ 音声信号処理装置、音声信号処理方法、及び音声信号処理プログラム
KR101854296B1 (ko) 2013-10-31 2018-05-03 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 시간 도메인 여기 신호를 변형하는 오류 은닉을 사용하여 디코딩된 오디오 정보를 제공하기 위한 오디오 디코더 및 방법
PT3288026T (pt) 2013-10-31 2020-07-20 Fraunhofer Ges Forschung Descodificador áudio e método para fornecer uma informação de áudio descodificada utilizando uma ocultação de erro baseada num sinal de excitação no domínio de tempo
CN104751849B (zh) 2013-12-31 2017-04-19 华为技术有限公司 语音频码流的解码方法及装置
WO2015122752A1 (ko) 2014-02-17 2015-08-20 삼성전자 주식회사 신호 부호화방법 및 장치와 신호 복호화방법 및 장치
JP6633547B2 (ja) * 2014-02-17 2020-01-22 サムスン エレクトロニクス カンパニー リミテッド スペクトル符号化方法
CN107369454B (zh) * 2014-03-21 2020-10-27 华为技术有限公司 语音频码流的解码方法及装置
LT3511935T (lt) 2014-04-17 2021-01-11 Voiceage Evs Llc Būdas, įrenginys ir kompiuteriu nuskaitoma neperkeliama atmintis garso signalų tiesinės prognozės kodavimui ir dekodavimui po perėjimo tarp kadrų su skirtingais mėginių ėmimo greičiais
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
CN111968656B (zh) 2014-07-28 2023-11-10 三星电子株式会社 信号编码方法和装置以及信号解码方法和装置
FR3024582A1 (fr) * 2014-07-29 2016-02-05 Orange Gestion de la perte de trame dans un contexte de transition fd/lpd
CN107004417B (zh) * 2014-12-09 2021-05-07 杜比国际公司 Mdct域错误掩盖
US10504525B2 (en) * 2015-10-10 2019-12-10 Dolby Laboratories Licensing Corporation Adaptive forward error correction redundant payload generation
WO2019056108A1 (en) * 2017-09-20 2019-03-28 Voiceage Corporation METHOD AND DEVICE FOR EFFICIENT DISTRIBUTION OF A BINARY BUDGET IN A CELP CODEC
CN112669860B (zh) * 2020-12-29 2022-12-09 北京百瑞互联技术有限公司 一种增加lc3音频编解码有效带宽的方法及装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0969783A (ja) 1995-08-31 1997-03-11 Nippon Steel Corp オーディオデータ符号化装置
JP3849210B2 (ja) * 1996-09-24 2006-11-22 ヤマハ株式会社 音声符号化復号方式
US6263312B1 (en) * 1997-10-03 2001-07-17 Alaris, Inc. Audio compression and decompression employing subband decomposition of residual signal and distortion reduction
KR100335611B1 (ko) 1997-11-20 2002-10-09 삼성전자 주식회사 비트율 조절이 가능한 스테레오 오디오 부호화/복호화 방법 및 장치
US6782360B1 (en) 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US6351494B1 (en) 1999-09-24 2002-02-26 Sony Corporation Classified adaptive error recovery method and apparatus
US6662154B2 (en) * 2001-12-12 2003-12-09 Motorola, Inc. Method and system for information signal coding using combinatorial and huffman codes
KR100711989B1 (ko) * 2002-03-12 2007-05-02 노키아 코포레이션 효율적으로 개선된 스케일러블 오디오 부호화
EP1619664B1 (en) * 2003-04-30 2012-01-25 Panasonic Corporation Speech coding apparatus, speech decoding apparatus and methods thereof
CA2551281A1 (en) * 2003-12-26 2005-07-14 Matsushita Electric Industrial Co. Ltd. Voice/musical sound encoding device and voice/musical sound encoding method
JP4445328B2 (ja) 2004-05-24 2010-04-07 パナソニック株式会社 音声・楽音復号化装置および音声・楽音復号化方法
WO2006030864A1 (ja) 2004-09-17 2006-03-23 Matsushita Electric Industrial Co., Ltd. 音声符号化装置、音声復号装置、通信装置及び音声符号化方法
ATE480851T1 (de) 2004-10-28 2010-09-15 Panasonic Corp Skalierbare codierungsvorrichtung, skalierbare decodierungsvorrichtung und verfahren dafür
US8036390B2 (en) 2005-02-01 2011-10-11 Panasonic Corporation Scalable encoding device and scalable encoding method
US8306827B2 (en) 2006-03-10 2012-11-06 Panasonic Corporation Coding device and coding method with high layer coding based on lower layer coding results
US8711925B2 (en) * 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
US7461106B2 (en) * 2006-09-12 2008-12-02 Motorola, Inc. Apparatus and method for low complexity combinatorial coding of signals
US9653088B2 (en) 2007-06-13 2017-05-16 Qualcomm Incorporated Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding

Also Published As

Publication number Publication date
CA2701281A1 (en) 2009-04-30
CN101836251A (zh) 2010-09-15
EP2255358A1 (en) 2010-12-01
TW200935402A (en) 2009-08-16
IL205131A0 (en) 2010-11-30
JP2013178539A (ja) 2013-09-09
MX2010004282A (es) 2010-05-05
WO2009055493A1 (en) 2009-04-30
US8527265B2 (en) 2013-09-03
CN102968998A (zh) 2013-03-13
BRPI0818405A2 (pt) 2016-10-11
AU2008316860A1 (en) 2009-04-30
US20090234644A1 (en) 2009-09-17
AU2008316860B2 (en) 2011-06-16
RU2459282C2 (ru) 2012-08-20
JP2011501828A (ja) 2011-01-13
EP2255358B1 (en) 2013-07-03
CN101836251B (zh) 2012-12-12
RU2010120678A (ru) 2011-11-27
TWI407432B (zh) 2013-09-01

Similar Documents

Publication Publication Date Title
US8527265B2 (en) Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8515767B2 (en) Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs
KR101344174B1 (ko) 오디오 신호 처리 방법 및 오디오 디코더 장치
KR101516468B1 (ko) 샘플링된 오디오 신호의 프레임들을 인코딩 및 디코딩하기 위한 오디오 인코더 및 디코더
RU2485606C2 (ru) Схема кодирования/декодирования аудио сигналов с низким битрейтом с применением каскадных переключений
EP2041745B1 (en) Adaptive encoding and decoding methods and apparatuses
TWI605448B (zh) 產生帶寬延伸訊號的裝置
CA2923218A1 (en) Adaptive bandwidth extension and apparatus for the same
CA2636493A1 (en) Apparatus and method for encoding and decoding signal
MX2011000366A (es) Codificador y decodificador de audio para codificar y decodificar muestras de audio.
MX2011000375A (es) Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada.
US9240192B2 (en) Device and method for efficiently encoding quantization parameters of spectral coefficient coding
US20100280830A1 (en) Decoder
KR20080034817A (ko) 부호화/복호화 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20120502

Effective date: 20130821