KR101442997B1 - 멀티-스테이지 형상 벡터 양자화를 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체 - Google Patents

멀티-스테이지 형상 벡터 양자화를 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR101442997B1
KR101442997B1 KR1020137005131A KR20137005131A KR101442997B1 KR 101442997 B1 KR101442997 B1 KR 101442997B1 KR 1020137005131 A KR1020137005131 A KR 1020137005131A KR 20137005131 A KR20137005131 A KR 20137005131A KR 101442997 B1 KR101442997 B1 KR 101442997B1
Authority
KR
South Korea
Prior art keywords
vector
codebook
rotation matrix
vectors
input
Prior art date
Application number
KR1020137005131A
Other languages
English (en)
Other versions
KR20130036361A (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 퀄컴 인코포레이티드
Publication of KR20130036361A publication Critical patent/KR20130036361A/ko
Application granted granted Critical
Publication of KR101442997B1 publication Critical patent/KR101442997B1/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/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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/90Pitch determination of speech signals
    • 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/093Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters using sinusoidal excitation models

Abstract

멀티스테이지 형상 벡터 양자화기 아키텍쳐는 회전 매트릭스를 생성하기 위해 선택된 제 1-스테이지 코드북 벡터로부터의 정보를 사용한다. 회전 매트릭스는 제 1-스테이지 양자화 에러의 형상 양자화를 지원하기 위해 입력 벡터의 방향을 회전시키는데 사용된다.

Description

멀티-스테이지 형상 벡터 양자화를 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체{SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR MULTI-STAGE SHAPE VECTOR QUANTIZATION}
본 특허 출원은 2010년 7월 30일자로 출원된, 발명의 명칭이 "SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR EFFICIENT TRANSFORM-DOMAIN CODING OF AUDIO SIGNALS" 인 미국 가출원 제 61/369,662 호에 대한 우선권을 주장한다. 본 특허 출원은 2010년 7월 31일자로 출원된, 발명의 명칭이 "SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR DYNAMIC BIT ALLOCATION" 인 미국 가출원 제 61/369,705 호에 대한 우선권을 주장한다. 본 특허 출원은 2010년 8월 1일자로 출원된, 발명의 명칭이 "SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR MULTI-STAGE SHAPE VECTOR QUANTIZATION" 인 미국 가출원 제 61/369,751 호에 대한 우선권을 주장한다. 본 특허 출원은 2010년 8월 17일자로 출원된, 발명의 명칭이 "SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR GENERALIZED AUDIO CODING" 인 미국 가출원 제 61/374,565 호에 대한 우선권을 주장한다. 본 특허 출원은 2010년 9월 17일자로 출원된, 발명의 명칭이 "SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR GENERALIZED AUDIO CODING" 인 미국 가출원 제 61/384,237 호에 대한 우선권을 주장한다. 본 특허 출원은 2011년 3월 31일자로 출원된, 발명의 명칭이 "SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR DYNAMIC BIT ALLOCATION" 인 미국 가출원 제 61/470,438 호에 대한 우선권을 주장한다.
본 개시는 오디오 신호 프로세싱의 분야에 관한 것이다.
변경된 이산 코사인 변환 (modified discrete cosine transform; MDCT) 에 기초한 코딩 스킴들이 스피치 및/또는 음악과 같은 비스피치 콘텐츠를 포함할 수도 있는 일반화된 오디오 신호들을 코딩하기 위해 통상 사용된다. MDCT 코딩을 사용하는 기존의 오디오 코덱들의 에들은 MPEG-1 오디오 레이어 3 (MP3), 돌비 디지털 (돌비 연구소, 런던, UK; AC-3 로도 지칭되며 ATSC A/52 로서 표준화됨), Vorbis (Xiph, Org Foundation, Somerville, MA), 윈도우즈 미디오 오디오 (WMA, 마이크로소프트사, 레드몬드, 워싱톤), 적응형 변환 음향 코딩 (ATRAC, 소니사, 도쿄, 일본), 및 진보된 오디오 코딩 (AAC, 가장 최근에 ISO/IEC 14496-3: 2009 에서 표준화됨) 을 포함한다. MDCT 코딩은 또한 강화된 가변 레이트 코덱 (EVRC, 제 3 세대 파트너쉽 프로젝트 2 (3GPP2) 문서 C. S0014-D v2.0, Jan. 25, 2010 에서 표준화됨) 과 같은 일부 통신 표준들의 컴포넌트이다. G.718 코덱 ("Frame error robust narrowband and wideband embedded variable bit-rate coding of speech and audio from 8-32 kbit/s," 전기 통신 표준 섹터 (ITU-T), 제너바, 스위스, June 2008, 2008년 11월 및 2009년 8월에 정정, 2009년 3월 및 2010년 3월에 보정됨) 은 MDCT 코딩을 사용하는 멀티-레이어 코덱의 일 예이다.
일반적 구성 (configuration) 에 따른 벡터 양자화의 방법은 제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 제 1 코드북 벡터를 선택함으로써, 제 1 방향을 갖는 제 1 입력 벡터를 양자화하는 단계, 및 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 단계를 포함한다. 이 방법은 또한 (A) 제 1 방향을 갖는 벡터와 (B) 회전 매트릭스의 곱을 계산하여 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하는 단계, 및 제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 제 2 코드북 벡터를 선택함으로써 제 2 방향을 갖는 제 2 입력 벡터를 양자화하는 단계를 포함한다. 대응하는 벡터 역양자화 방법들이 또한 개시된다. 유형의 특징들을 판독하는 머신으로 하여금 그러한 방법을 수행하게 하는 유형의 특징들을 갖는 컴퓨터 판독가능 저장 매체 (예를 들어, 비일시적 매체) 가 또한 개시된다.
일반적 구성에 따른 벡터 양자화를 위한 장치는 제 1 방향을 갖는 제 1 입력 벡터를 수신하고 제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 제 1 코드북 벡터를 선택하도록 구성된 제 1 벡터 양자화기, 및 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하도록 구성된 회전 매트릭스 생성기를 포함한다. 이 장치는 또한 (A) 제 1 방향을 갖는 벡터와 (B) 회전 매트릭스의 곱을 계산하여 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하도록 구성된 곱셈기, 및 제 2 방향을 갖는 제 2 입력 벡터를 수신하고, 제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 제 2 코드북 벡터를 선택하도록 구성된 제 2 벡터 양자화기를 포함한다. 대응하는 벡터 역양자화를 위한 장치도 개시된다.
또 다른 일반적인 구성에 따른 오디오 신호의 프레임들을 프로세싱하기 위한 장치는 제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 제 1 코드북 벡터를 선택함으로써, 제 1 방향을 갖는 제 1 입력 벡터를 양자화하는 수단, 및 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 수단을 포함한다. 이 장치는 또한 (A) 제 1 방향을 갖는 벡터와 (B) 회전 매트릭스의 곱을 계산하여 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하는 수단, 및 제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 제 2 코드북 벡터를 선택함으로써 제 2 방향을 갖는 제 2 입력 벡터를 양자화하는 수단을 포함한다. 대응하는 벡터 역양자화를 위한 장치도 개시된다.
도 1a 내지 도 1d 는 이득-형상 벡터 양자화 동작들의 예들을 도시한다.
도 2a 는 일반 구성에 따른 멀티 스테이지 형상 양자화를 위한 장치 (A100) 의 블록도를 도시한다.
도 2b 는 일반 구성에 따른 멀티 스테이지 형상 역양자화를 위한 장치 (D100) 의 블록도를 도시한다.
도 3a 및 도 3b 는 회전 매트릭스를 생성하는데 사용될 수도 있는 공식들의 예들을 도시한다.
도 4 는 간단한 2차원 예를 사용하는 장치 (A100) 의 동작의 원리를 도시한다.
도 5a, 도 5b, 및 도 6 은 회전 매트릭스를 생성하는데 사용될 수도 있는 공식들의 예들을 도시한다.
도 7a 및 도 7b 는 각각 도 1a 및 도 1b 의 개루프 이득 코딩 구조들에의 장치 (A100) 의 적용들의 예들을 도시한다.
도 7c 는 폐루프 이득 코딩 구조에서 사용될 수도 있는 장치 (A100) 의 구현 (A110) 의 블록도를 도시한다.
도 8a 및 도 8b 는 각각 도 1c 및 도 1d 의 개루프 이득 코딩 구조들에의 장치 (A110) 의 적용들의 예들을 도시한다.
도 9a 는 장치 (A100) 의 확장인 3-스테이지 형상 양자화기의 개략도를 도시한다.
도 9b 는 장치 (A110) 의 확장인 3-스테이지 형상 양자화기의 개략도를 도시한다.
도 9c 는 장치 (D100) 의 확장인 3-스테이지 형상 역양자화기의 개략도를 도시한다.
도 10a 는 이득 양자화기 (GQ10) 의 구현 (GQ100) 의 블록도를 도시한다.
도 10b 는 이득 벡터 계산기 (GVC10) 의 구현 (GVC20) 의 블록도를 도시한다.
도 11a 는 이득 역양자화기 (DQ100) 의 블록도를 도시한다.
도 11b 는 이득 양자화기 (GQ10) 의 예측 구현 (GQ200) 의 블록도를 도시한다.
도 11c 는 이득 양자화기 (GQ10) 의 예측 구현 (GQ210) 의 블록도를 도시한다.
도 11d 는 이득 역양자화기 (GD200) 의 블록도를 도시한다.
도 11e 는 예측기 (PD10) 의 구현 (PD20) 의 블록도를 도시한다.
도 12a 는 이득 양자화기들 (GQ100 및 GQ200) 의 인스턴스들을 포함하는 이득-코딩 구조를 도시한다.
도 12b 는 장치 (A100) 의 구현을 포함하는 통신 디바이스 (D10) 의 블록도를 도시한다.
도 13a 는 일반 구성에 따른 벡터 양자화를 위한 방법 (M100) 을 위한 흐름도를 도시한다.
도 13b 는 일반 구성에 따른 벡터 양자화를 위한 장치 (MF100) 의 블록도를 도시한다.
도 14a 는 일반 구성에 따른 벡터 역양자화를 위한 방법 (MD100) 을 위한 흐름도를 나타낸다.
도 14b 는 일반 구성에 따른 벡터 역양자화를 위한 장치 (DF100) 의 블록도를 도시한다.
도 15 는 핸드셋 (H100) 의 정면도, 배면도 및 측면도를 도시한다.
도 16 은 UB-MDCT 신호가 모델링되고 있는 예에 대하 크기 대 주파수의 플롯을 도시한다.
이득-형상 벡터 양자화 스킴에서, (예를 들어, 복잡성 및 저장을 감소시키기 위해) 다수의 스테이지들에서 형상 벡터들의 코딩을 수행하는 것이 바람직할 수도 있다. 여기에 기술된 멀티 스테이지 형상 벡터 양자화기 아키텍쳐는 광대한 범위의 비트 레이트들에 대한 효과적인 이득-형상 벡터 양자화를 지원하는 경우들에서 사용될 수도 있다.
문맥에 의해 명백히 제한되지 않는 한, 용어 "신호" 는 여기서 배선, 버스, 또는 다른 송신 매체 상에 표현된 메모리 위치 (또는 메모리 위치들의 세트) 의 상태를 포함하여, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "발생 (generating)" 은 여기서 컴퓨팅 또는 그렇지 않으면 생성 (producing) 과 같은, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "계산 (calculating)" 은 여기서 컴퓨팅, 평가, 평활화 및/또는 복수의 값들로부터의 선택과 같은, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "획득" 은 계산, 도출, (예를 들어, 외부 디바이스로부터) 수신 및/또는 (저장 엘리먼트들의 어레이로부터) 취출과 같은, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "선택" 은 둘 이상으로된 세트 중 적어도 하나, 및 전체 보다 적은 것을 식별, 표시, 적용, 및/또는 사용하는 것과 같은, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 용어 "포함 (comprising)" 이 본 상세한 설명 및 청구범위에서 사용되는 경우, 그것은 다른 엘리먼트들 또는 동작들을 배체하지 않는다. 용어 ("A 는 B 에 기초한다" 에서와 같은) "~ 에 기초하는" 은 다음의 경우들 (i) "~ 로부터 도출되는" (예를 들어 "B 는 A 의 전신이다") (ii) "~ 에 적어도 기초하는" (예를 들어, "A 는 B 에 적어도 기초하는"), 및 특정의 문맥에서 적절한 경우 (iii) "~ 와 동일한" (예를 들어, "A 는 B 와 동일하다") 을 포함하여, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 유사하게 용어 "~ 에 응답하여" 는 "~ 에 적어도 응답하여" 를 포함하여, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다.
달리 표현되지 않는 한, 용어 "시리즈" 는 2 개 이상의 아이템들의 시퀀스를나타내는데 사용된다. 용어 "로가리듬 (logarithm)" 은 다른 베이스들에 대한 연산의 확장들이 본 개시의 범위 내에 있더라도, 베이스-10 로가리듬을 나타내는데 사용된다. 용어 "주파수 컴포넌트" 는 (예를 들어, 고속 푸리에 변환에 의해 생성된) 신호의 주파수 도메인 표현의 샘플 또는 신호의 부대역 (예를 들어, 바크 스케일 또는 멜 (mel) 스케일 부대역) 과 같은, 신호의 주파수들 또는 주파수 대역들의 세트 중의 하나를 나타내는데 사용된다.
달리 표시되지 않는 다면, 특정의 피쳐를 갖는 장치의 동작의 임의의 개시는 또한 상사성 피쳐를 갖는 방법을 개시하는 것으로 명백히 의도되고 (역도 성립), 특정의 구성에 따른 장치의 동작의 임의의 개시는 또한 상사성 구성에 따른 방법을 개시하는 것으로 명백히 의도된다 (역도 성립). 용어 "구성 (configuration)" 은 그의 특징의 문맥에 의해 표시된 방법, 장치, 및/또는 시스템을 참조하여 사용될 수도 있다. 용어들 "방법", "프로세스", "절차", 및 "기법" 은 특정의 문맥에 의해 달리 표시되지 않는 한 일반적으로 및 상호교환적으로 사용된다. 용어들 "장치" 및 "디바이스" 는 또한 특정의 문맥에 의해 달리 표시되지 않는 한 일반적으로 및 상호교환적으로 사용된다. 용어들 "엘리먼트" 및 "모듈" 은 통상적으로 더 큰 구성의 일부를 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "시스템" 은 여기서 "공통의 목적을 서빙하기 위해 상호작용하는 엘리먼트들의 그룹" 을 포함하여, 그의 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문서의 일부의 참조에 의한 통합은 그 일부 내에서 참조되는 용어들 또는 변수들의 정의들을, 그러한 정의들이 그 통합된 부분에서 참조되는 임의의 도면들 뿐아니라 그 문서 내의 그 밖의 다른 곳에서 나타나는 곳에서 통합하는 것으로 이해되어야 한다.
여기에 기술된 시스템, 방법 및 장치는 일반적으로 주파수 도메인에서 오디오 신호들의 표현들을 코딩하는데 적용가능하다. 그러한 표현의 통상적인 예는 변환 도메인에서 변환 계수들의 시리즈이다. 적합한 변환들의 예들은 정현 유니터리 변환들과 같은 이산 직교 변환들을 포함한다. 적합한 정현 유니터리 변환들의 예들은 제한 없이 이산 코사인 변환 (DCT), 이산 사인 변환 (DST), 및 이산 푸리에 변환 (DFT) 를 포함하는 이산 삼각 변환들을 포함한다. 적합한 변환들의 다른 예들은 그러한 변환들의 랩핑된 (lapped) 버전들을 포함한다. 적합한 변환의 특정의 예는 위에서 도입된 변경된 DCT (MDCT) 이다.
본 개시의 전체에 걸쳐, 오디오 주파수 범위의 "저대역" 및 "고대역" (등가적으로, "상위 대역"), 및 0 내지 4 킬로헤르츠 (kHz) 의 저대역 및 3.5 내지 7 kHz 의 고대역의 특정의 예를 참조한다. 여기에 논의되는 원리들은 그러한 제한이 명백히 진술되지 않는다면, 이러한 특정의 예에 어떤 식으로든 제한되지 않는다. 인코딩, 디코딩, 할당, 양자화, 및/또는 다른 프로세싱의 이들 원리들의 적용이 명백히 생각되고 여기에 개시되는 주파수 범위의 다른 예들 (제한 없이) 은 0, 25, 50, 100, 150, 및 200 Hz 중 임의의 것에서 하위 경계 및 3000, 3500, 4000, 및 4500 Hz 중 임의의 것에서 상위 경계를 갖는 저대역, 및 3000, 3500, 4000, 및 4500 Hz 중 임의의 것에서 하위 경계 및 6000, 6500, 7000, 7500, 8000, 8500 및 9000 Hz 중 임의의 것에서 상위 경계를 갖는 고대역을 포함한다. 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 7000, 7500, 8000, 8500 및 9000 Hz 중 임의의 것에서 하위 경계 및 10, 10.5, 11, 11.5, 12, 12.5, 13, 13.5, 14, 14.5, 15, 15.5 및 16 kHz 중 임의의 것에서 상위 경계를 갖는 고대역에의 그러한 원리들의 적용이 또한 명백히 고려되고 여기에 개시된다. 고대역 신호가 (예를 들어, 리샘플링 및/또는 데시메이션을 통해) 코딩 프로세스의 초기 스테이션에서 낮은 샘플링 레이트로 통상 변환되지만, 그것은 고대역 신호로 남아있고 그것이 반송하는 정보는 고대역 오디오-주파수 범위를 계속 나타낸다.
여기에 기술된 멀티스테이지 형상 양자화 동작을 포함하는 코딩 스킴은 (예를 들어 스피치를 포함하는) 임의의 오디오 신호를 코딩하는데 적용될 수도 있다. 대안적으로, 비스피치 오디오 (예를 들어, 음악) 에 대해서만 그러한 코딩 스킴을 사용하는 것이 바람직할 수도 있다. 그러한 경우에, 코딩 스킴은 오디오 신호의 각 프레임의 콘텐츠의 유형을 결정하고 적합한 코딩 스킴을 선택하기 위해 분류 스킴과 함께 사용될 수도 있다.
여기에 기술된 멀티스테이지 형상 양자화 동작을 포함하는 코딩 스킴은 멀티-레이어 또는 멀티-스테이지 코덱에서 1차 코덱 또는 층 또는 스테이지로서 사용될 수도 있다. 그러한 한 예에서, 그러한 코딩 스킴은 오디오 신호 (예를 들어, 저대역 또는 고대역) 의 주파수 콘텐츠의 일부를 코딩하는데 사용되며, 다른 코딩 스킴은 신호의 주파수 콘텐츠의 다른 부분을 코딩하는데 사용된다. 그러한 다른 예에서, 그러한 코딩 스킴은 다른 코딩 레이어의 레지듀얼 (즉, 원래의 신호와 인코딩된 신호 간의 에러) 을 코딩하는데 사용된다.
이득-형상 벡터 양자화는 이득 팩터에 의해 표현된 벡터 에너지를 형상에 의해 표현되는 벡터 방향으로부터 디커플링함으로써 (예를 들어, 사운드 또는 이미지 데이터를 나타내는) 신호 벡터들을 효율적으로 인코딩하는데 사용될 수도 있는 코딩 기법이다. 그러한 기법은 특히 스피치 및/또는 음악과 같은 오디오 신호들의 코딩과 같이 신호의 동적 범위가 클 수도 있는 적용들에 적합할 수도 있다.
이득-형상 벡터 양자화기 (GSVQ) 는 입력 벡터 x 의 형상 및 이득을 분리하여 인코딩한다. 도 1a 는 이득-형상 벡터 양자화 동작의 일예를 도시한다. 이러한 예에서, 형상 양자화기 (SQ100) 는 (예를 들어, 평균 제곱 에러 의미에서 가장 가까운) 입력 벡터 x 에 코드북 내에서의 가장 가까운 벡터로서 코드북으로부터 양자화된 형상 벡터
Figure 112013017773968-pct00001
를 선택하고 코드북에서의 벡터
Figure 112013017773968-pct00002
에 대한 인덱스를 출력함으로써 벡터 양자화 (VQ) 스킴을 수행하도록 구성된다. 다른 예에서, 형상 양자화기 (SQ100) 는 입력 벡터 x 에 가장 가까운 (예를 들어, 평균 제곱 에러 의미에서 가장 가까운) 유닛 펄스들의 단위-놈 패턴을 선택하고 그 패턴에 대한 코드북 인덱스를 출력함으로써 펄스-코딩 양자화 스킴을 수행하도록 구성된다. 놈 계산기 (NC10) 는 입력 벡터 x 의 놈
Figure 112013017773968-pct00003
을 계산하도록 구성되고, 이득 양자화기 (GQ10) 는 양자화된 이득 값을 생성하도록 놈을 양자화하도록 구성된다.
형상 양자화기 (SQ100) 는 통상 코드북 벡터들이 단위 놈을 갖는 (즉, 단위 초구 (hypersphere) 상에 모든 포인트들이 존재하는) 제약을 갖는 벡터 양자화기로서 구현된다. 이러한 제약은 (예를 들어, 평균 제곱 에러 계산으로부터 내적 연산까지) 코드북 검색을 단순화한다. 예를 들어, 형상 양자화기 (SQ100) 는 arg maxk(xTSk) 와 같은 연산에 따라 K 개의 단위-놈 벡터들 Sk, k = 0,1,...,K-1 의 코드북 중에서 벡터
Figure 112013017773968-pct00004
를 선택하도록 구성될 수도 있다. 그러한 검색은 소모적일 수도 있고 최적화될 수도 있다. 예를 들어, 벡터들은 특정의 검색 전략을 지원하도록 코드북 내에 배열될 수도 있다.
일부 경우들에서, 형상 양자화기 (SQ100) 로의 입력을 (예를 들어, 특정의 코드북 검색 전략을 가능하게 하도록) 단위-놈이도록 제약하는 것이 바람직할 수도 있다. 도 1b 는 이득-형상 벡터 양자화 동작의 그러한 예를 도시한다. 이러한 예에서, 정규화기 (NL10) 는 벡터 놈
Figure 112013017773968-pct00005
및 단위-놈 형상 벡터
Figure 112013017773968-pct00006
를 생성하기 위해 입력 벡터 x 를 정규화하도록 구성되고, 형상 양자화기 (SQ100) 는 그의 입력으로서 형상 벡터 S 를 수신하도록 배열된다. 이러한 경우, 형상 양자화기 (SQ100) 는 arg maxk(STSk) 와 같은 연산에 따라 K 개의 단위-놈 벡터들 Sk, k = 0,1,...,K-1 의 코드북 중에서 벡터
Figure 112013017773968-pct00007
를 선택하도록 구성될 수도 있다.
대안적으로, 형상 양자화기 (SQ100) 는 단위 펄스들의 패턴들의 코드북 중에서 벡터
Figure 112013017773968-pct00008
를 선택하도록 구성될 수도 있다. 이러한 경우, 형상 양자화기 (SQ100) 는 정규화될 때 형상 벡터 S 와 가장 가까운 (예를 들어, 평균 제곱 에러 의미에서 가장 가까운) 패턴을 선택하도록 구성될 수도 있다. 그러한 패턴은 통상 그 패턴에서 각 점유된 포지션에 대한 사인 (sign) 및 펄스들의 수를 나타내는 코드북 인덱스로서 인코딩된다. 패턴을 선택하는 것은 입력 벡터를 스케일링하는 것과 그것을 패턴과 매칭하는 것을 포함할 수도 있고, 양자화된 벡터
Figure 112013017773968-pct00009
는 선택된 패턴을 정규화하는 것에 의해 생성된다. 그러한 패턴들을 인코딩하기 위해 형상 양자화기 (SQ100) 에 의해 수행될 수도 있는 펄스 코딩 스킴들의 예들은 팩토리얼 펄스 코딩 및 콤비네이션얼 펄스 코딩을 포함한다.
이득 양자화기 (GQ10) 는 벡터 양자화를 위해 이득 벡터로 이득을 다른 이득들과 결합하거나 이득의 스칼라 양자화를 수행하도록 구성될 수도 있다. 도 1a 및 도 1b 의 예에서, 이득 양자화기 (GQ10) 는 ("개루프 이득" 으로도 불리는) 놈
Figure 112013017773968-pct00010
으로서 입력 벡터 x 의 이득을 수신 및 양자화하도록 배열된다. 다른 경우들에서, 이득은 원래의 형상과 양자화된 형상 벡터
Figure 112013017773968-pct00011
의 상관에 기초한다. 그러한 이득은 "폐루프 이득" 이라고 불린다. 도 1c 는 내적 계산기 (IP10) 및 양자화된 형상 벡터
Figure 112013017773968-pct00012
을 생성하는 형상 양자화기 (SQ100) 의 구현 (SQ110) 을 포함하는 이득-형상 벡터 양자화 동작의 예를 도시한다. 계산기 (IP10) 는 양자화된 형상 벡터
Figure 112013017773968-pct00013
와 원래의 입력 벡터 (예를 들어,
Figure 112013017773968-pct00014
) 의 내적을 계산하도록 배열되고, 이득 양자화기 (GQ10) 는 폐루프 이득으로서 이러한 곱을 수신 및 양자화하도록 배열된다. 형상 양자화기 (SQ100) 가 열악한 형상 양자화 결과를 생성하는 한, 폐루프 이득은 낮을 것이다. 형상 양자화기가 형상을 정확하게 양자화하는 한, 폐루프 이득은 높을 것이다. 형상 양자화가 완벽한 경우, 폐루프 이득은 개루프 이득과 동일하다. 도 1d 는 형상 양자화기 (SQ110) 로의 입력으로서 단위-놈 형상 벡터
Figure 112013017773968-pct00015
를 생성하기 위해 입력 벡터 x 를 정규화하도록 구성된 정규화기 (NL20) 을 포함하는 유사한 이득-형상 벡터 양자화 동작의 예를 도시한다.
음악 및 스피치와 같은 오디오 신호들에서, 신호 벡터들은 신호의 프레임을 변환 도메인 (예를 들어, 고속 푸리에 변환 (FFT) 또는 MDCT 도메인) 으로 변환하고, 이들 변환 도메인 계수들로부터 부대역들을 형성함으로써 형성될 수도 있다. 일 예에서, 인코더는 미리결정된 분할 스킴 (예를 들어, 프레임이 수신되기 전에 디코더에 알려져 있는 고정된 분할 스킴) 에 따라 부대역들의 세트로 변환 계수들을 분할하고, 벡터 양자화 (VQ) 스킴 (예를 들어, 여기에 기술된 GSVQ 스킴) 을 사용하여 각 부대역을 인코딩함으로써 프레임을 인코딩하도록 구성된다. 그러한 경우에 대해, 형상 코드북은 균일한 양자화 셀들 (예를 들어, 보로노이 (Voronoi) 영역들) 로의 단위 초구의 분할을 나타내도록 선택될 수도 있다.
다른 예에서, 신호 내의 상당한 에너지의 영역들을 식별하고 이들 영역들을 신호의 나머지와 분리하여 인코딩하는 것이 바람직할 수도 있다. 예를 들어, 그러한 영역들을 인코딩하는데 상대적으로 더 많은 비트들을 그리고 신호의 다른 영역들을 인코딩하는데 상대적으로 더 적은 비트들 (또는 심지어 비트가 없음) 을 사용함으로써 코딩 효율을 증가시키는 것이 바람직할 수도 있다. 그러한 영역들은 일반적으로 대응하는 벡터들의 형상들이 다른 것들보다 단위 초구의 일부 영역들 내에 더 있도록 특정의 유형의 형상을 공유할 수도 있다. 높은 하모닉 콘텐츠를 갖는 신호의 상당한 영역들은 예를 들어 피크 중심 형상 (peak-centered shape) 을 갖도록 선택될 수도 있다. 도 16 은 선택된 부대역들과 이러한 선택 동작의 레지듀얼로의 프레임의 분할을 나타내는 선형 예측 코딩 레지듀얼 신호의 (예를 들어, 3.5 내지 7 kHz 의 범위의 오디오 컨텐츠를 나타내는) 고대역 부분의 140 개의 MDCT 계수들의 프레임에 대한 그러한 선택의 예를 도시한다. 그러한 경우들에서, 불균일한 양자화 셀들로의 단위 초구의 분할을 나타내도록 형상 코드북을 설계하는 것이 바람직할 수도 있다.
멀티스테이지 벡터 양자화 스킴은 이전의 스테이지의 양자화 에러를 인코딩함으로써 더욱 정확한 결과를 생성하여, 이러한 에러가 디코더에서 감소될 수 있도록 한다. 이득-형상 VQ 정황 (context) 에서 멀티스테이지 VQ 를 구현하는 것이 바람직할 수도 있다.
상술한 바와 같이, 형상 양자화기는 통상 코드북 벡터들이 단위 놈을 갖는다는 제약을 갖는 벡터 양자화기로서 구현된다. 그러나, 형상 양자화기의 양자화 에러 (즉, 입력 벡터 x 와 대응하는 선택된 코드북 벡터 간의 차이) 는 단위 놈을 갖는 것으로 기대되지 않을 것이며, 이것은 스케일러빌리티 문제를 발생시키고 멀티-스테이지 형상 양자화기의 구현을 문제가 있게 만든다. 디코더에서 유용한 결과를 얻기 위해, 예를 들어, 양자화 에러 벡터의 이득과 형상 양자의 인코딩이 통상 요구될 것이다. 에러 이득의 인코딩은 송신되는 부가적인 정보를 생성하고, 이것은 비트-제약 정황 (예를 들어, 셀룰러 전화, 위성 통신) 에서는 바람직하지 않을 수도 있다.
도 2a 는 에러 이득의 양자화를 회피하는 일반 구성에 따른 멀티-스테이지 형상 양자화를 위한 장치 (A100) 의 블록도를 나타낸다. 장치 (A100) 는 형상 양자화기 (SQ110) 의 예 및 상술된 형상 양자화기 (SQ100) 의 예 (SQ200) 를 포함한다. 제 1 형상 양자화기 (SQ110) 는 길이 (N) 의 제 1 코드북 벡터 (Sk) 및 Sk 에 대한 인덱스를 생성하기 위해 제 1 입력 벡터 (V10a) 의 형상 (예를 들어, 방향) 을 양자화하도록 구성된다. 장치 (A100) 는 선택된 벡터 (Sk) 에 기초하는 NxN 회전 매트릭스 (Rx) 를 생성하도록 구성된 회전 매트릭스 생성기 (200), 및 벡터 r = (Rk)v (여기서 v 는 벡터 V10b 를 나타냄) 를 생성하기 위해 회전 매트릭스 (Rx) 와 제 2 벡터 (V10b) 의 곱을 계산하도록 구성된 곱셈기 (ML10) 를 포함한다. 벡터 (V10b) 는 벡터 (V10a) 와 동일한 방향을 가지며 (예를 들어, 벡터 (V10b 및 V10a) 는 동일한 벡터이거나, 하나가 다른 것의 정규화된 버전일 수도 있다), 벡터 (r) 는 벡터 (V10b 및 V10a) 와 상이한 방향을 갖는다. 제 제 2 형상 양자화기 (SQ200) 는 제 2 코드북 벡터 (Sn) 및 Sn 에 대한 인덱스를 생성하기 위해 벡터 (r) 의 (또는 벡터 (r) 과 동일한 방향을 갖는 벡터의) 형상을 양자화하도록 구성된다. (일반적인 경우, 제 2 형상 양자화기 (SQ200) 는 벡터 (r) 가 아니라, 벡터 (r) 와 동일한 방향을 갖는 벡터를 입력으로서 수신하도록 구성될 수도 있다.)
이러한 접근법에서, 제 1 형상 양자화기 (SQ110) 에 의해 수행되는 각각의 제 1-스테이지 양자화에 대한 에러를 인코딩하는 것은 (A) 입력 벡터를 나타내도록 선택되었던 제 1-스테이지 코드북 벡터 (Sk) 및 (B) 기준 방향에 기초하는 회전 매트릭스 (Rk) 에 의해 대응하는 입력 벡터의 방향을 회전시키는 것을 포함한다. 기준 방향은 디코더에게 알려져 있고 고정될 수도 있다. 기준 방향은 또한 입력 벡터 (V10a) 와 독립적일 수도 있다.
벡터 (V10b) 에 대한 임의의 다른 영향을 최소화하면서 원하는 회전을 생성하는 공식을 사용하도록 회전 매트릭스 생성기 (200) 를 구성하는 것이 바람직할 수도 있다. 도 3a 는 공식에서의 S 를 (길이 N 의 칼럼 벡터로서의) 현재의 선택된 벡터 (Sk) 로 대체함으로써 회전 매트릭스 (Rx) 를 생성하는 회전 매트릭스 생성기 (200) 에 의해 사용될 수도 있는 공식의 일 예를 도시한다. 이러한 예에서, 기준 방향은 단위 벡터 [1, 0, 0, ..., 0] 의 방향이지만, 임의의 다른 기준 방향이 선택될 수도 있다. 그러한 기준 방향의 잠재적 이점들은 각각의 입력 벡터에 대해 대응하는 회전 매트릭스가 대응하는 코드북 벡터로부터 상대적으로 저렴하게 계산될 수도 있다는 것, 및 대응하는 회전들이 고정 포인트 구현들에 특히 중요할 수도 있는 다른 영향이 거의 없고 상대적으로 저렴하게 수행될 수도 있다는 것을 포함한다.
곱셈기 (ML10) 는 매트릭스-벡터 곱 r = Rk × v 를 계산하도록 배열된다. 이러한 단위-놈 벡터는 제 2 형상 양자화 스테이지 (즉, 제 2 형상 양자화기 (SQ200)) 로의 입력이다. 동일한 기준 방향에 기초한 각각의 회전 매트릭스를 구성하는 것은 해당 방향에 대한 양자화 에러들의 집중을 초래하며, 이것은 해당 에러에 대한 효과적인 제 2-스테이지 양자화를 지원한다.
회전 매트릭스 (Rx) 에 의해 유도되는 회전은 (계산상의 에러의 경계들 내에서) 가역적이어서, 회전 매트릭스의 전치 행렬과의 곱셈에 의해 역전될 수 있다. 도 2b 는 일반적 구성에 따른 멀티스테이지 형상 역양자화를 위한 장치 (D100) 의 블록도를 나타낸다. 장치 (D100) 는 벡터 (Sk) 에 대한 인덱스에 응답하여 제 1 선택된 코드북 벡터 (Sk) 를 생성하도록 구성된 제 1 형상 역양자화기 (500), 및 벡터 (Sn) 에 대한 인덱스에 대한 응답으로 제 2 선택된 코드북 벡터 (Sn) 을 생성하도록 구성된 제 2 형상 역양자화기 (600) 을 포함한다. 장치 (D100) 는 또한 (예를 들어, 생성기 (200) 에 의해) 인코더에서 생성된 대응하는 회전 매트릭스의 전치 행렬인, 제 1-스테이지 코드북 벡터 (Sk) 에 기초하는 회전 매트릭스 (RkT) 를 생성하도록 구성된 회전 매트릭스 생성기 (210) 를 포함한다. 예를 들어, 생성기 (210) 는 생성기 (200) 과 동일한 공식에 따라 매트릭스를 생성하고 그 후 (예를 들어, 그것을 주 대각선에 대해 반사시킴으로써) 그 매트릭스의 전치 행렬을 계산하거나, 그 공식의 전치 행렬인 생성 공식을 사용하도록 구현될 수도 있다. 장치 (D100) 는 또한 매트릭스-벡터 곱 RkT×Sn 으로서 출력 벡터
Figure 112013017773968-pct00016
를 계산하는 곱셈기 (ML30) 을 포함한다.
도 4 는 간단한 2차원 예를 사용하는 장치 (A100) 의 동작의 원리를 나타낸다. 좌측에는, 단위-놈 벡터 S 가 (점선 화살표들로 표시된) 코드북 벡터들의 세트 중에서 (별로 표시된) 가장 가까운 Sk 를 선택함으로써 제 1 스테이지에서 양자화된다. 코드북 검색은 (예를 들어, 벡터 S 와의 내적이 최소인 코드북 벡터를 선택함으로써) 내적 연산을 사용하여 수행될 수도 있다. 코드북 벡터들은 (도 4 에 도시된 바와 같은) 단위 초구 주위에 균일하게 분포될 수도 있거나 여기에 기술된 바와 같이 불균일하게 분포될 수도 있다.
도 4 의 좌하측에 도시된 바와 같이, 제 1 스테이지의 양자화 에러를 결정하기 위해 벡터 감산을 사용하는 것은 더이상 단위-놈이 아닌 에러 벡터를 생성한다. 대신에, 벡터 S 는 여기에 기술된 코드북 벡터 (Sk) 에 기초한 회전 매트릭스 (Rk) 에 의해 도 4 의 중앙에 도시된 바와 같이 회전된다. 예를 들어, 회전 매트릭스 (Rk) 는 (점선으로 표시된) 특정의 기준 방향에 대해 코드북 벡터 (Sk) 를 회전시킬 매트릭스로서 선택될 수도 있다. 도 4 의 우측은 회전된 벡터 (Rk × S) 가 삼각형에 의해 표시된 바와 같은, Rk × S 에 가장 가까운 (예를 들어, 벡터 (Rk × S) 와의 최소 내적을 갖는) 제 2 코드북으로부터의 벡터를 선택함으로써 양자화되는 제 2 양자화 스테이지를 도시한다. 도 4 에 도시된 바와 같이, 회전 동작은 제 1-스테이지 양자화 에러를 기준 방향 주위에 집중시켜, 제 2 코드북이 전체보다 적은 단위 초구를 커버하도록 한다.
S[1] 이 네거티브 1 에 가까운 경우에, 도 3a 의 생성 공식은 특히 고정-포인트 구현에서 계산상의 문제를 제공할 수도 있는 매우 작은 수에 의한 나눗셈을 수반할 수도 있다. 그러한 경우에 (예를 들어, 그 나눗셈이 적어도 1 과 같은 수에 의하도록 S[1] 이 제로 보다 작은 경우에) 대신에 도 3b 의 공식을 사용하도록 회전 매트릭스 생성기 (200 및 210) 를 구성하는 것이 바람직할 수도 있다. 대안적으로, 등가의 효과가 인코더에서 제 1 축 (예를 들어, 기준 방향) 을 따라 회전 매트릭스를 반사시키고 디코더에서 반사를 역전시킴으로써 그러한 경우에 획득될 수도 있다.
기준 방향에 대한 다른 선택들은 다른 단위 벡터들 중 임의의 것을 포함할 수도 있다. 예를 들어, 도 5a 및 도 5b 는 길이-N 단위 벡터 [0, 0, ..., 0, 1] 에 의해 표시된 기준 방향에 대해 도 3a 및 도 3b 에 도시된 것들에 대응하는 생성 공식들의 예들을 도시한다. 도 6 은 유일한 비제로 엘리먼트가 d 번째 엘리먼트인 (여기서, 1 < d < N) 길이-N 단위 벡터에 의해 표시되는 기준 방향에 대해, 도 3a 에 도시된 공식에 대응하는 생성 공식의 일반적인 예를 도시한다. 일반적으로, 회전 매트릭스 (Rk) 가 (예를 들어, 도 3a, 도 3b, 도 4, 도 5a, 도 5b 및 도 6 에 도시된 예들에서와 같이) 기준 벡터의 방향에 대한, 선택된 제 1 코드북 벡터 및 기준 벡터를 포함하는 평면 내에서, 선택된 제 1 코드북 벡터의 회전을 정의하는 것이 바람직할 수도 있다. 벡터 (V10b) 는 일반적으로 이러한 평면에 있지 않지만, 벡터 (V10b) 에 회전 매트릭스 (Rk) 를 곱하는 것은 이러한 평면에 평행한 평면 내에서 그것을 회전시킬 것이다. 회전 매트릭스 (Rk) 에 의한 곱셈은 선택된 제 1 코드북 벡터와 기준 방향 양자에 직교하는 (차원 N-2 의) 서브스페이스에 대해 벡터를 회전시킨다.
도 7a 및 도 7b 는 각각 도 1a 및 도 1b 의 개루프 이득 코딩 구조들에의 장치 (A100) 의 적용들의 예들을 도시한다. 도 7a 에서, 장치 (A100) 는 입력 벡터 (V10a) 및 벡터 (V10b) 로서 벡터 (x) 를 수신하도록 배열되고, 도 7b 에서 장치 (A100) 는 입력 벡터 (V10a) 및 벡터 (V10b) 로서 형상 벡터 (S) 를 수신하도록 배열된다.
도 7c 는 (예를 들어, 도 1c 및 도 1d 에 도시된 바와 같은) 폐루프 이득 코딩 구조에서 사용될 수도 있는 장치 (A100) 의 구현 (A110) 의 블록도를 도시한다. 장치 (A110) 는 회전 매트릭스 (Rk) 의 전치 행렬을 계산하도록 (예를 들어, 주 대각선에 대해 회전 매트릭스 (Rk) 를 반사시키도록) 구성된 트랜스포저 (400), 및 양자화된 형상 벡터
Figure 112013017773968-pct00017
를 매트릭스-벡터 곱 RkT×Sn 으로서 계산하도록 구성된 곱셈기 (ML20) 를 포함한다. 도 8a 및 도 8b 는 각각 도 1c 및 도 1d 의 개루프 이득 코딩 구조들에의 장치 (A110) 의 적용들의 예들을 도시한다.
여기에 기술된 멀티스테이지 형상 양자화 원리들은 임의의 수의 형상 양자화 스테이지들로 확장될 수도 있다. 예를 들어, 도 9a 는 장치 (A100) 의 확장인 3-스테이지 형상 양자화기의 개략도를 나타낸다. 이러한 도면에서, 다양한 라벨들이 다음의 구조들 또는 값들을 표시한다: 벡터 방향들 (V1 및 V2); 코드북 벡터들 (C1 및 C2); 코드북 인덱스들 (X1, X2 및 X3); 양자화기 (Q1, Q2, 및 Q3); 회전 매트릭스 생성기들 (G1 및 G2); 및 회전 매트릭스들 (R1 및 R2). 도 9b 는 장치 (A110) 의 확장이며, 양자화된 형상 벡터
Figure 112013017773968-pct00018
를 생성하는 3-스테이지 형상 양자화기의 유사한 개략도를 나타낸다 (이 도면에서, 각 라벨 TR 은 매트릭스 트랜스포저를 나타낸다). 도 9c 는 장치 (D100) 의 확장인 대응하는 3-스테이지 형상 역양자화기의 개략도를 도시한다.
오디오 신호들의 낮은 비트 레이트 코딩은 오디오 신호 프레임의 콘텐츠를 코딩하는데 이용가능한 비트들의 최적의 활용을 종종 요구한다. 오디오 신호 프레임들의 콘텐츠들은 신호의 PCM 샘플들 또는 신호의 변환-도메인 표현 중 어느 하나일 수도 있다. 신호 벡터를 인코딩하는 것은 통상 벡터를 복수의 서브벡터들로 분할하고, 각 서브벡터에 비트 할당을 할당하고, 각 서브벡터를 대응하는 할당된 수의 비트들로 인코딩하는 것을 포함한다. 통상의 오디오 코딩 애플리케이션에서, 예를 들어 각 프레임에 대해 다수의 (예를 들어, 10 개 또는 20 개의) 상이한 부대역 벡터들에 대한 이득-형상 벡터 양자화를 수행하는 것이 바람직할 수도 있다. 프레임 사이즈의 예들은 100, 120, 140, 160 및 180 개의 값들 (예를 들어, 변환 계수들) 을 포함하고, 부대역 길이의 예들은 5, 6, 7, 8, 9, 10, 11, 및 12 를 포함한다.
비트 할당에 대한 하나의 접근법은 상이한 형상 벡터들 중에서 총 비트 할당 (B) 을 균일하게 분할하는 것 (그리고 예를 들어 폐루프 이득-코딩 스킴을 사용하는 것) 이다. 예를 들어, 각 서브벡터에 할당된 비트들의 수는 프레임 마다 고정되어 있을 수도 있다. 이러한 경우, 디코더는 이미 인코더가 이러한 정보를 송신할 필요가 없도록 비트 할당 스킴의 지식을 가지도록 구성될 수도 있다. 그러나, 비트들의 최적의 활용의 목표는 오디오 신호 프레임의 여러 컴포넌트들이 그들의 지각적 중요도에 관련되는 (예를 들어, 비례하는) 비트들의 수로 코딩되는 것을 보장하는 것일 수도 있다. 입력 부대역 벡터들의 일부는 덜 중요할 수도 있어서 (예를 들어, 적은 에너지를 캡쳐할 수도 있어서), 이들 형상 벡터들에는 더 적은 비트들을 할당하고 더 중요한 부대역들의 형상 벡터들에는 더 많은 비트들을 할당함으로써 더 양호한 결과가 획득될 수 있도록 한다.
고정된 할당 스킴은 서브벡터들의 상대적인 지각적 중요도에서의 변동을 설명하지 않기 때문에, 각 서브벡터에 할당된 비트들의 수가 프레임 마다 변화하도록 동적 할당 스킴을 대신 사용하는 것이 바람직할 수도 있다. 이 경우, 각 프레임을 위해 사용된 특정의 비트 할당 스킴에 대한 정보는 프레임이 디코딩될 수 있도록 디코더에 제공된다.
대부분의 오디오 인코더들은 디코더로 사이드 정보로서 비트 할당을 명시적으로 송신한다. 예를 들어 AAC 와 같은 오디오 코딩 알고리즘들은 통상 비트 할당 정보를 전달하기 위해 허프만 코딩과 같은 엔트로피 코딩 스킴들 또는 사이드 정보를 사용한다. 비트 할당을 전달하기 위해 사이드 정보만의 사용은 이러한 사이드 정보가 신호를 코딩하는데 직접 사용되지 않기 때문에 비효율적이다. 허프만 코딩 또는 산술 코딩과 같은 가변-길이 코드워드들은 몇가지 이점을 제공할 수도 있지만, 코딩 효율을 감소시킬 수도 있는 긴 코드워드들을 만날 수도 있다. 인코더 및 디코더 양자 모두에게 알려져 있는 코딩된 이득 파라미터들에 기초하는 동적 비트 할당 스킴을 대신 사용하여, 그 스킴이 인코더로부터 디코더로 사이드 정보의 명시적인 송신 없이 수행될 수 있도록 한다. 그러한 효율은 셀룰러 전화와 같은 낮은 비트 레이트 애플리케이션들에 대해 특히 중요할 수도 있다.
그러한 동적 비트 할당은 연관된 이득들의 값들에 따라 형상 양자화을 위해 비트들을 할당함으로써 사이드 정보 없이 구현될 수도 있다. 소스-코딩 면에서, 폐루프 이득은 개루프 이득과 달리 특정의 형상 양자와 에러를 고려하기 때문에, 폐루프 이득은 더욱 최적인 것으로 고려될 수도 있다. 그러나, 이러한 이득 값에 기초하여 상류에서 프로세싱을 수행하는 것이 바람직할 수도 있다. 상세히 설명하면, 형상을 양자화하는 방법을 결정하기 위해 이득 값을 사용하는 것 (예를 들어, 형상들 중에 양자화 비트-버짓을 동적으로 할당하기 위해 이득 값들을 사용하는 것) 이 바람직할 수도 있다. 이러한 경우, 이득이 비트 할당을 제어하기 때문에, 형상 양자화는 인코더 및 디코더 양자에서의 이득에 명시적으로 의존하여, 형상-종속 폐루프 이득보다는 형상-독립 개루프 이득 계산이 사용되도록 한다.
동적 할당 스킴을 지원하기 위해, 양자화될 각 형상에 대해 할당되는 비트들의 특정의 수에 응답하여 상이한 사이즈들의 코드북들 중에서 (즉, 상이한 인덱스 길이들을 갖는 코드북들 중에서) 선택하도록 형상 양자화기 및 역양자화기 (예를 들어, 양자화기들 (SQ110, SQ200, SQ210; 역양자화기들 (500 및 600)) 를 구현하는 것이 바람직할 수도 있다. 그러한 예에서, 장치 (A100) 의 하나 이상의 양자화기들 (예를 들어, 양자화기들 (SQ110 및 SQ200 또는 SQ210) 은 개루프 이득이 낮은 부대역 벡터의 형상을 인코딩하기 위해 더 짧은 인덱스 길이를 갖는 코드북을 사용하도록 그리고 개루프 이득이 높은 부대역 벡터의 형상을 인코딩하기 위해 더 긴 인덱스 길이를 갖는 코드북을 사용하도록 구현될 수도 있다. 그러한 동적 할당 스킴은 고정되거나 그렇지 않은 경우 대응하는 역양자화기들이 임의의 부가적인 사이드 정보 없이 동일한 스킴을 적용할 수도 있도록 결정론적인 형상 코드북 인텍스 길이와 벡터 이득 사이의 맵핑을 사용하도록 구성될 수도 있다.
개루프 이득-코딩의 경우에, (예를 들어, 형상 코드북 벡터들에 대한 인덱스들의 길이들인) 형상을 인코딩하는데 사용된 비트들의 수의 함수인 팩터 γ 로 개루프 이득에 곱함으로써 디코더 (예를 들어, 이득 역양자화기) 를 구성하는 것이 바람직할 수도 있다. 형상을 양자화하는데 매우 적은 비트들이 사용되는 경우, 형상 양자화기는 벡터들 (S 및
Figure 112013017773968-pct00019
) 이 그다지 잘 매치하지 않도록 큰 에러를 생성하는 경향이 있고, 그래서 그 에러를 반영하기 위해 디코더에서 이득을 감소시키는 것이 바람직할 수도 있다. 정정 팩터 (γ) 는 평균 면에서만 이러한 에러를 나타낸다: 그것은 단지 코드북에만 (특별히, 코드북들의 비트들의 수에만) 의존하고, 입력 벡터 x 의 임의의 특정의 상세에 의존하지 않는다. 코덱은 정정 팩터 (γ) 가 송신되는 것이 아니라 벡터
Figure 112013017773968-pct00020
를 양자화하는데 얼마나 많은 비트들이 사용되었는지에 따라 디코더에 의해 테이블로부터 판독되도록 구성될 수도 있다.
이러한 정정 팩터 (γ) 는 비트 레이트에 기초하여, 평균으로 벡터
Figure 112013017773968-pct00021
가 진정한 형상 S 에 얼마나 가깝게 접근하는 것으로 기대될 수 있는지를 나타낸다. 비트 레이트가 상승함에 따라, 평균 에러는 감소할 것이고, 정정 팩터 (γ) 의 값은 1 에 접근할 것이며, 비트 레이트가 매우 낮아짐에 따라, S 와 벡터
Figure 112013017773968-pct00022
사이의 상관 (예를 들어, 벡터
Figure 112013017773968-pct00023
T 와 S 의 내적) 은 감소하고, 정정 팩터 (γ) 의 값은 또한 감소할 것이다. (예를 들어, 실제의 입력 마다의 적응적인 면에서) 폐루프 이둑에서와 동일한 효과를 획득하는 것이 바람직할 수도 있지만, 개루프 경우에는, 상관이 통상 평균 면에서만 이용가능하다.
대안적으로, 개루프와 폐루프 이득 방법들 간의 일종의 내삽이 수행될 수도 있다. 그러한 접근법은 단지 길이-기반 평균 양자화 에러보다는 특정의 형상 양자화의 품질에 의존하는 동적 정정 팩터를 갖는 개루프 이득 표현을 증대시킨다. 그러한 팩터는 양자화된 형상과 양자화되지 않은 형상의 도트 프러덕트에 기초하여 계산될 수도 있다. 이러한 정정 팩터의 값을 매우 코어스하게 (예를 들어, 4- 또는 8-엔트리 코드북으로의 인덱스로서) 인코딩하여, 그것이 매우 적은 비트들에서 송신될 수 있도록 하는 것이 바람직하다.
시간에 대한 및/또는 주파수에 걸친 이득 파라미터들에서의 상관을 효율적으로 활용하는 것이 바람직할 수도 있다. 상술된 바와 같이, 신호 벡터들은 신호의 프레임을 변환 도메인으로 변환하고 이들 변환 도메인 계수들로부터 부대역들을 형성함으로써 오디오 코딩에서 형성될 수도 있다. 연속적인 프레임들로부터의 벡터들의 에너지들 간의 상관들을 활용하기 위해 예측적 이득 코딩 스킴을 사용하는 것이 바람직할 수도 있다. 부가적으로 또는 대안적으로, 단일 프레임 내의 부대역들의 에너지들 간의 상관들을 활용하기 위해 변환 이득 코딩 스킴을 사용하는 것이 바람직할 수도 있다.
도 10a 는 여기에 기술된 회전 매트릭스의 상이한 적용을 포함하는 이득 양자화기 (GQ10) 의 구현 (GQ100) 의 블록도를 나타낸다. 이득 양자화기 (GQ100) 는 입력 신호의 프레임의 M 개의 부대역 벡터들 (×1 내지 ×M) 을 수신하고, 부대역 이득 값들의 대응하는 벡터 (GV10) 를 생성하도록 구성된 이득 벡터 계산기 (GVC10) 를 포함한다. M 개의 부대역들은 (예를 들어, 미리결정된 분할 스킴에 따라 M 개의 부대역들로 분할되는) 전체 프레임을 포함할 수도 있다. 대안적으로, M 개의 부대역들은 (예를 들어, 여기서 언급된 예들에서와 같이, 동적 부대역 스킴에 따라 선택되는) 전체보다는 적은 프레임을 포함할 수도 있다. 부대역들의 수 M 의 예들은 (제한 없이) 5, 6, 7, 8, 9, 10, 및 20 을 포함한다.
도 10b 는 이득 벡터 계산기 (GVC10) 의 구현 (GVC20) 의 블록도를 나타낸다. 벡터 계산기 (GVC20) 는 M 개의 부대역들 중 대응하는 부대역에 대해 대응하는 이득 값 (G10-1, G10-2, ..., G10-M) 을 계산하도록 각각 구성된 이득 팩터 계산기의 M 개의 인스턴스들 (GC10-1, GC10-2, ..., GC10-M) 을 포함한다. 일 예에서, 각각의 이득 팩터 계산기 (GC10-1, GC10-2, ..., GC10-M) 는 대응하는 부대역 벡터의 놈으로서 대응하는 이득 값을 계산하도록 구성된다. 다른 예에서, 각각의 이득 팩터 계산기 (GC10-1, GC10-2, ..., GC10-M) 는 데시벨 또는 다른 로가리듬 또는 지각적 스케일로 대응하는 이득 값을 계산하도록 구성된다. 그러한 하나의 예에서, 각각의 이득 팩터 계산기 (GC10-1, GC10-2, ..., GC10-M) 는
Figure 112013017773968-pct00024
과 같은 식 (여기서, xm 은 대응하는 부대역 벡터를 나타낸다) 에 따라 대응하는 이득 값 GC10-m (1 <= m <= M) 을 계산하도록 구성된다.
벡터 계산기 (GVC20) 는 또한 대응하는 프레임에 대한 길이 M 의 벡터의 대응하는 엘리먼트에 M 개의 이득 값들 (G10-1 내지 G10-M) 각각을 저장하고 이러한 벡터를 이득 벡터 (GV10) 로서 출력하도록 구성되는 벡터 레지스터 (VR10) 를 포함한다.
이득 양자화기 (GQ100) 는 또한 회전 매트릭스 (Rg) 를 생성하도록 구성된 회전 매트릭스 생성기 (200) 의 구현 (250), 및 Rg 와 이득 벡터 (GV10) 의 매트릭스-벡터 곱으로서 벡터 (gr) 을 계산하도록 구성된 곱셈기 (ML30) 를 포함한다. 일 예에서, 생성기 (250) 는 도 3a 에 도시된 생성 공식의 S 를 길이-M 단위-놈 벡터 (Y; 여기서 YT = [1, 1, 1, ..., 1]/√M) 로 대체함으로써 매트릭스 (Rg) 를 생성하도록 구성된다. 결과의 회전 매트릭스 (Rg) 는 그의 제 1 엘리먼트에 이득 벡터 (GV10) 의 평균 파워를 갖는 출력 벡터 (gr) 를 생성하는 효과를 갖는다.
그러한 제 1-엘리먼트 평균을 생성하기 위해 다른 변환들 (예를 들어, FFT, MDCT, Walsh, 또는 웨이블릿 변환) 이 사용될 수도 있지만, 이러한 변환에 의해 생성된 출력 벡터 (gr) 의 다른 엘리먼트들의 각각은 이러한 평균과 벡터 (GV10) 의 대응하는 엘리먼트 사이의 차이이다. 부대역 이득들 중 그 차이들로부터 프레임의 평균 이득 값을 분리함으로써, 그러한 스킴은 (예를 들어, 라우드 프레임 내에서) 각각의 부대역에서의 해당 에너지를 인코딩하는데 사용되었을 비트들이 각각의 부대역에서의 미세한 상세들을 인코딩하는데 이용가능하게 될 수 있게 한다. 이들 차이들은 또한 (예를 들어, 여기에 기술된) 대응하는 형상 벡터들에 대한 비트들의 동적 할당을 위한 방법에 대한 입력으로서 사용될 수도 있다. 평균 파워를 벡터 (gr) 의 상이한 엘리먼트에 위치시키는 것이 원해지는 경우, 여기에 기술된 생성 공식들의 대응하는 것이 대신에 사용될 수도 있다.
이득 양자화기 (GQ100) 는 또한 (예를 들어, 하나 이상의 코드북 인덱스들로서) 양자화된 이득 벡터 (QV10) 를 생성하도록 적어도 벡터 (gr) 의 서브벡터 (예를 들어, 평균 값을 배제하는 길이 (M-1) 의 서브벡터) 를 양자화하도록 구성된 벡터 양자화기 (VQ10) 를 포함한다. 일 예에서, 벡터 양자화기 (VQ10) 은 스플릿-벡터 (split-vector) 양자화를 수행하도록 구현된다. 이득 값들 (G10-1 내지 G10-M) 이 개루프 이득들인 경우, 상술된 상관 팩터 (γ) 를 대응하는 디코딩된 이득 값들에 적용하도록 대응하는 역양자화기를 구성하는 것이 바람직할 수도 있다.
도 11a 는 대응하는 이득 역양자화기 (DQ100) 의 블록도를 도시한다. 역양자화기 (DQ100) 는 양자화된 이득 벡터 (QV10) 를 역양자화하여 역양자화된 벡터 (gr)D 를 생성하도록 구성된 벡터 역양자화기 (DQ10), 양자화기 (GQ100) 에 적용된 회전 매트릭스의 전치 행렬 (RgT) 을 생성하도록 구성된 회전 매트릭스 생성기 (260), 및 매트릭스 (RgT) 와 벡터 (gr)D 의 매트릭스-벡터 곱을 계산하여 디코딩된 이득 벡터 (DV10) 를 생성하도록 구성된 곱셈기 (ML40) 를 포함한다. 양자화된 이득 벡터 (QV10) 가 (도 12a 를 참조하여 여기에 기술된 바와 같은) 벡터 (gr) 의 평균 값 엘리먼트를 포함하지 않는 경우, 디코딩된 평균값은 이와 달리 역양자화된 벡터 (gr)D 의 엘리먼트들과 결합되어 디코딩된 이득 벡터 (DV10) 의 대응하는 엘리먼트들을 생성할 수도 있다.
평균 파워에 의해 점유되는 벡터 (gr) 의 엘리먼트에 대응하는 이득은 (예를 들어, 역양자화 이후에) 이득 벡터의 다른 엘리먼트들로부터 (예를 들어, 디코더에서, 및 아마도 비트 할당의 목적으로 인코더에서) 도출될 수도 있다. 예를 들어, 이러한 이득은 (A) 평균 (즉, 평균 회수 M) 에 의해 암시된 총 이득과 (B) 다른 (M-1) 재구성된 이득들의 합 사이의 차이로서 계산될 수도 있다. 그러한 유도는 유도된 이득 값으로 다른 (M-1) 재구성된 이득들의 양자화 에러를 축적하는 효과를 가질 수도 있지만, 그것은 또한 그 이득 값을 코딩 및 송신하는 비용을 회피한다.
이득 양자화기 (GQ100) 가 여기에 기술된 멀티-스테이지 형상 양자화 장치 (A100) 의 구현과 함께 사용될 수도 있고, 또한 관련된 부대역 벡터들의 세트들에의 단일-스테이지 이득-형상 벡터 양자화의 적용들에서와 같이, 장치 (A100) 와 독립적으로 사용될 수도 있다는 것을 명백히 주의해야 한다.
상술된 바와 같이, 예측 이득 인코딩을 갖는 GSVQ 는 프레임 마다 차분적으로 선택된 (예를 들어, 고 에너지) 부대역들의 세트의 이득 팩터들을 인코딩하는데 사용될 수도 있다. 각 부대역에 대한 이득 팩터들이 서로 독립적으로 그리고 이전의 프레임의 대응하는 이득 팩터에 대해 차분적으로 인코딩되도록 예측 이득 코딩을 포함하는 이득-형상 벡터 양자화 스킴을 사용하는 것이 바람직할 수도 있다.
도 11b 는 양자화된 예측 에러 (QP10) 및 에러 (QP10) 에 대한 대응하는 코드북 인텍스를 생성하도록 예측 에러 (PE10) 를 양자화하도록 구성된 스칼라 양자화기 (CQ10), 이득 값 (GN10) 으로부터 예측된 이득 값 (PG10) 을 감산하여 예측 에러 (PE10) 을 생성하도록 구성된 가산기 (AD10), 예측된 이득 값 (PG10) 에 양자화된 예측 에러 (QP10) 을 가산하도록 구성된 가산기 (AD20), 및 예측된 이득 값 (PG10) 과 양자화된 예측 에러 (QP10) 의 이전의 값들의 하나 이상의 합들에 기초하여 예측된 이득 값 (PG10) 을 계산하도록 구성된 예측기 (PD10) 을 포함하는 이득 양자화기 (GQ10) 의 예측 구현 (GQ200) 의 블록도를 도시한다. 예측기 (PD10) 는 H(z) = a1z-1 + a2z-2 와 같은 전달 함수를 갖는 2차 유한 임펄스 응답 필터로서 구현될 수도 있다. 도 11e 는 예측기 (PD10) 의 그러한 구현 (PD20) 의 블록도를 나타낸다. 그러한 필터에 대한 예시적인 계수 값들은 (a1, a2) = (0.8, 0.2) 를 포함한다. 입력 이득 값 (GN10) 은 여기에 기술된 개루프 이득 또는 폐루프 이득일 수도 있다. 도 11c 는 이득 양자화기 (GQ10) 의 또 다른 예측 구현 (GQ210) 의 불록도를 나타낸다. 이러한 경우, 스칼라 양자화기 (CQ10) 가 선택된 인덱스에 대응하는 코드북 엔트리를 출력하는 것은 필요하지 않다. 도 11d 는 이득 양자화기들 (GQ200 및 GQ210) 중 어느 하나에 의해 생성된 양자화된 예측 에러 (QP10) 에 대한 코드북 인덱스에 따라 디코딩된 이득 값 (DN10) 을 생성하기 위해 (예를 들어, 대응하는 디코더에서) 사용될 수도 있는 이득 역양자화기 (GD200) 의 블록도를 나타낸다. 역양자화기 (GD200) 는 코드북 인덱스에 의해 표시된 양자화된 예측 에러 (PD10) 를 생성하도록 구성된 스칼라 역양자화기 (CD10), 디코딩된 이득 값 (DN10) 의 하나 이상의 이전의 값들에 기초하여 예측된 이득 값 (DG10) 을 생성하도록 배열된 예측기 (PD10) 의 인스턴스, 및 예측된 이득 값 (DG10) 및 역양자화된 예측 에러 (PD10) 을 가산하여 디코딩된 이득 값 (DN10) 을 생성하도록 배열된 가산기 (AD20) 의 인스턴스를 포함한다.
이득 양자화기 (GQ200 또는 GQ210) 는 여기에 기술된 멀티-스테이지 형상 양자화 장치 (A100) 의 구현 (예를 들어, A110) 과 함께 사용될 수도 있고, 또한 관련된 부대역 벡터들의 세트들에의 단일-스테이지 이득-형상 벡터 양자화의 적용들에서와 같이 장치 (A100) 와 독립적으로 사용될 수도 있다는 것이 주목되어야 한다. 이득 값 (GB10) 이 개루프 이득인 경우, 대응하는 디코딩된 이득 값에 상술된 정정 팩터 (γ) 를 적용하도록 대응하는 역양자화기를 구성하는 것이 바람직할 수도 있다.
이득 양자화기 (GQ100) 와 같은 이득 코딩에 대한 변환 구조를 갖는 이득 양자화기 (GQ200 또는 GQ210) 과 같은 예측 구조를 결합하는 것이 바람직할 수도 있다. 도 12a 는 이득 양자화기 (GQ100) 가 벡터 (gr) 로부터 평균 이득 값 (AG10) 및 벡터 (gr) 의 다른 (예를 들어, 차분) 엘리먼트들에 기초하여 양자화된 이득 벡터 (QV10) 를 생성하도록 여기에 기술된 부대역 벡터들 (×1 내지 ×M) 을 양자화하도록 구성되는 예를 나타낸다. 이러한 예에서, 예측 이득 양자화기 (GQ200) (대안적으로, GQ210) 는 평균 이득 값 (AG10) 에 관해서만 동작하도록 배열된다.
여기에 기술된 동적 할당 방법과 결합하여 도 12a 에 도시된 접근법을 사용하는 것이 바람직할 수도 있다. 부대역 이득들의 평균 컴포넌트는 부대역들 중의 동적 할당에 영향을 미치지 않기 때문에, 과거에 대한 종속 없이 차분 컴포넌트들을 코딩하는 것은 (예를 들어 이전의 프레임의 삭제로부터 초래되는) 예측 코딩 동작의 실패에 저항하고 과거의 프레임들의 손실에 대해 강건한 동적 할당 동작을 획득하는데 사용될 수도 있다. 그러한 배열은 여기에 기술된 멀티-스테이지 형상 양자화 장치 (A100) 의 구현 (예를 들어, A110) 과 함께 사용될 수도 있고, 또한 관련된 부대역 벡터들의 세트들에의 단일-스테이지 이득-형상 벡터 양자화의 적용들에서와 같이, 장치 (A100) 와 독립적으로 사용될 수도 있다는 것이 주목되어야 한다.
본 개시에서 표시된 형상 양자화 동작들의 임의의 것은 여기에 기술된 멀티-스테이지 형상 양자화 원리들에 따라 구현될 수도 있다는 것이 명백히 고려되고 여기에 개시된다. 장치 (A100) 의 구현을 포함하는 인코더는 오디오 신호를 세그먼트들의 시리즈로서 프로세스하도록 구성될 수도 있다. 세그먼트 (또는 "프레임") 는 통상 약 5 또는 10 밀리초로부터 약 40 또는 50 밀리초까지의 범위의 길이를 갖는 시간-도메인 세그먼트에 대응하는 변환 계수들의 블록일 수도 있다. 시간-도메인 세그먼트들은 오버랩핑하거나 (예를 들어, 인접한 세그먼트들이 25% 또는 50% 까지 오버랩핑함) 오버랩핑하지 않을 수도 있다.
오디오 코더에 있어서, 높은 품질과 낮은 지연 양자 모두를 획득하는 것이 바람직할 수도 있다. 오디오 코더는 높은 품질을 획득하기 위해 큰 프레임 사이즈를 사용할 수도 있지만, 불행하게도 큰 프레임 사이즈는 통상 더 긴 지연을 초래한다. 여기에 기술된 오디오 인코더의 잠재적인 이점들은 짧은 프레임 사이즈들 (예를 들어, 10 밀리초 룩어헤드 (lookahead) 를 갖는 20 밀리초 프레임 사이즈) 를 갖는 높은 품질 코딩을 포함한다. 하나의 특정의 예에서, 시간-도메인 신호는 20 밀리초 비오버랩핑 세그먼트들의 시리즈로 분할되고, 각 프레임에 대한 MDCT 는 인접한 프레임들 각각을 10 밀리초 만큼 오버랩핑하는 40 밀리초 윈도우에 대해 취해진다.
하나의 특정의 예에서, 장치 (A100) 의 구현을 포함하는 인코더에 의해 프로세싱된 세그먼트들 (또는 "프레임들") 의 시리즈 중 각각은 (저대역 MDCT 또는 LB-MDCT 로도 지칭되는) 0 내지 4 kHz 의 저대역 주파수 범위를 나타내는 160 개의 MDCT 계수들의 세트를 포함한다. 다른 특정의 예에서, 그러한 인코더에 의해 프로세싱되는 프레임들의 시리즈의 각각은 (고대역 MDCT 또는 HB-MDCT 로도 지칭되는) 3.5 내지 7 kHz 의 고대역 주파수 범위를 나타내는 140 개의 MDCT 계수들의 세트를 포함한다.
장치 (A100) 의 구현을 포함하는 인코더는 고정된 동일한 길이의 부대역들을 인코딩하도록 구현될 수도 있다. 특정의 예에서, 각각의 부대역은 각 부대역 벡터의 형상의 길이가 7 이도록 7 개의 주파수 빈들의 폭 (예를 들어, 25 Hz 의 빈 간격에 대해 175 Hz) 을 갖는다. 그러나, 여기에 기술된 원리들은 또한 부대역들의 길이들이 하나의 타겟 프레임으로부터 다른 것으로 변화할 수도 있는 경우, 및/또는 타겟 프레임 내의 부대역들의 세트의 하나 이상 (가능하게는 모두) 의 길이들이 상이할 수도 있는 경우에 적용될 수도 있다는 것이 명백히 고려되며 여기에 기술된다.
장치 (A100) 의 구현을 포함하는 오디오 인코더는 (예를 들어, MDCT 계수들 또는 FFT 계수들과 같은 변환 계수들로서) 변환 도메인에서의 샘플들로서 오디오 신호의 프레임들 (예를 들어, LPC 레지듀얼) 을 수신하도록 구성될 수도 있다. 그러한 인코더는 미리결정된 분할 스킴 (즉, 프레임이 수신되기 전에 디코더에 알려져 있는 고정된 분할 스킴) 에 따라 부대역들의 세트로 변환 계수들을 그룹핑하고, 이득-형상 벡터 양자화 스킴을 사용하여 각 부대역을 인코딩함으로써 각 프레임을 인코딩하도록 구현될 수도 있다. 그러한 미리결정된 분할 스킴의 일 예에서, 각 100-엘리먼트 입력 벡터는 각각의 길이들 (25, 35, 40) 의 3 개의 서브벡터들로 분할된다.
높은 하모닉 콘텐츠를 갖는 오디오 신호들 (예를 들어, 음악 신호들, 유성음 스피치 신호들) 의 경우, 주어진 시간에서 주파수 도메인에서의 상당한 에너지의 영역들의 위치들은 시간의 경과에 따라 비교적 지속될 수도 있다. 시간의 경과에 따라 그러한 상관을 활용함으로써 오디오 신호의 효율적인 변환-도메인 코딩을 수행하는 것이 바람직할 수도 있다. 하나의 그러한 예에서, 동적 부대역 선택 스킴은 ("종속-모드 코딩" 으로도 불리는) 디코딩된 이전의 프레임의 대응하는 지각적으로 중요한 부대역들로 인코딩될 프레임의 지각적으로 중요한 (예를 들어, 높은 에너지) 부대역들을 매치하는데 사용된다. 특정의 애플리케이션에서, 그러한 스킴은 선형 예측 코딩 (LPC) 동작의 레지듀얼과 같은 오디오 신호의 0-4 kHz 범위에 대응하는 MDCT 변환 계수들을 인코딩하는데 사용된다. 종속-모드 코딩의 부가적인 설명은 본 출원이 우선권을 주장하는 상술된 출원들에서 발견될 수도 있다.
또 다른 예에서, 하모닉 신호의 부대역들의 선택된 세트의 각각의 위치들은 기본 주파수 (F0) 에 대한 선택된 값 및 주파수 도메인에서의 인접한 피크들 사이의 간격에 대한 선택된 값을 사용하여 모델링된다. 그러한 하모닉 모델링의 부가적인 설명은 본 출원이 우선권을 주장하는 상술된 출원들에서 발견될 수도 있다.
동일한 신호의 상이한 주파수 대역들을 개별적으로 코딩하도록 오디오 코덱을 구성하는 것이 바람직할 수도 있다. 예를 들어, 오디오 신호의 저대역 부분을 인코딩하는 제 1 인코딩된 신호 및 동일한 오디오 신호의 고대역 부분을 인코딩하는 제 2 인코딩된 신호를 생성하도록 그러한 코덱을 구성하는 것이 바람직할 수도 있다. 그러한 스플릿-대역 코딩이 바람직할 수도 있는 애플리케이션들은 협대역 디코딩 시스템들과 양립가능하게 유지되어야 하는 광대역 인코딩 시스템들을 포함한다. 그러한 애플리케이션들은 또한 상이한 주파수 대역들에 대해 상이한 코딩 스킴들의 사용을 지원함으로써 오디오 입력 신호들 (예를 들어, 스피치와 음악 양자 모두) 의 상이한 유형들의 범위의 효율적인 코딩을 달성하는 일반화된 오디오 코딩 스킴들을 포함한다.
신호의 상이한 주파수 대역들이 개별적으로 인코딩되는 경우에, 이러한 인코딩된 정보는 이미 디코더에 알려져 있을 것이기 때문에, 하나의 대역에서의 코딩 효율을 다른 대역으로부터 인코딩된 (예를 들어, 양자화된) 정보를 사용하여 증가시키는 것이 일부의 경우들에서 가능할 수도 있다. 예를 들어, 오디오 신호 프레임의 제 1 대역 ("소스" 대역으로도 지칭됨) 의 변환 계수들의 디코딩된 표현으로부터의 정보를 사용하여 동일한 오디오 신호 프레임의 제 2 대역 ("모델링될" 대역으로도 지칭됨) 의 변환 계수들을 인코딩하기 위해 릴렉스된 하모닉 모델이 적용될 수도 있다. 하모닉 모델이 관련된 그러한 경우에, 제 1 대역의 디코딩된 표현이 디코더에서 이미 이용가능하기 때문에 코딩 효율은 증가될 수도 있다.
그러한 확장된 방법은 코딩된 제 1 대역에 조화적으로 관련된 제 2 대역의 부대역들을 결정하는 것을 포함할 수도 있다. 오디오 신호들 (예를 들어, 복소 음악 신호들) 에 대한 낮은 비트 레이트 코딩 알고리즘들에서, 신호의 프레임을 다수의 대역들 (예를 들어, 저대역 및 고대역) 로 분할하는 것과 대역들의 변환 도메인 표현을 효율적으로 코딩하기 위해 이들 대역들 간의 상관을 활용하는 것이 바람직할 수도 있다.
그러한 확장의 특정의 예에서, (이후로 상위 대역 MDCT 또는 UB-MDCT 로 지칭되는) 오디오 신호 프레임의 3.5-7 kHz 대역에 대응하는 MDCT 계수들은 프레임의 양자화된 저대역 MDCT 스펙트럼 (0-4 kHz) 으로부터의 하모닉 정보에 기초하여 인코딩된다. 그러한 확장의 다른 예들에서, 2 개의 주파수 범위들이 오버랩할 필요가 없고 심지어 분리될 수도 있다 (예를 들어, 0-4 kHz 대역의 디코딩된 표현으로부터의 정보에 기초하여 프레임의 7-14 kHz 대역을 코딩) 는 것이 명백히 주목되어야 한다. 하모닉 모델링의 부가적인 설명은 본 출원이 우선권을 주장하는 상술된 출원들에서 발견될 수도 있다.
도 13a 는 태스크들 (T100, T200, T300 및 T400) 을 포함하는 일반 구성에 따라 벡터 양자화의 방법 (M100) 에 대한 흐름도를 나타낸다. 태스크 (T100) 는 (예를 들어, 형상 양자화기 (SQ100) 를 참조하여 여기에 기술된 바와 같이) 제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 하나를 선택함으로써 제 1 방향을 갖는 제 1 입력 벡터를 양자화한다. 태스크 (T200) 는 (예를 들어, 회전 매트릭스 생성기 (200) 를 참조하여 여기에 기술된 바와 같이) 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성한다. 태스크 (T300) 는 (예를 들어, 곱셈기 (ML10) 를 참조하여 여기에 기술된 바와 같이) (A) 제 1 방향을 갖는 벡터와 (B) 회전 매트릭스와의 곱을 계산하여 제 2 방향을 갖는 회전된 벡터를 생성한다. 태스크 (T400) 는 (예를 들어, 제 2 형상 양자화기 (SQ200) 를 참조하여 여기에 기술된 바와 같이) 제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 하나를 선택함으로써 제 2 방향을 갖는 제 2 입력 벡터를 양자화한다.
도 13b 는 일반적 구성에 따른 벡터 양자화를 위한 장치 (MF100) 의 블록도를 나타낸다. 장치 (MF100) 는 (예를 들어, 형상 양자화기 (SQ100) 를 참조하여 여기에 기술된 바와 같이) 제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 하나를 선택함으로써 제 1 방향을 갖는 제 1 입력 벡터를 양자화하는 수단 (F100) 을 포함한다. 장치 (MF100) 는 또한 (예를 들어, 회전 매트릭스 생성기 (200) 를 참조하여 여기에 기술된 바와 같이) 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 수단 (F200) 을 포함한다. 장치 (MF100) 는 또한 (예를 들어, 곱셈기 (ML10) 를 참조하여 여기에 기술된 바와 같이) (A) 제 1 방향을 갖는 벡터와 (B) 회전 매트릭스와의 곱을 계산하여 제 2 방향을 갖는 회전된 벡터를 생성하는 수단 (F300) 을 포함한다. 장치 (MF100) 는 또한 (예를 들어, 제 2 형상 양자화기 (SQ200) 를 참조하여 여기에 기술된 바와 같이) 제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 하나를 선택함으로써 제 2 방향을 갖는 제 2 입력 벡터를 양자화하는 수단 (F400) 을 포함한다.
도 14a 는 태스크들 (T600, T700, T800, 및 T900) 을 포함하는 일반적 구성에 따른 벡터 역양자화를 위한 방법 (MD100) 에 대한 흐름도를 나타낸다. 태스크 (T600) 는 (예를 들어, 제 1 형상 역양자화기 (500) 를 참조하여 여기에 기술된 바와 같이) 제 1 코드북의 복수의 제 1 코드북 벡터들 중에서, 제 1 코드북 인덱스에 의해 표시되는 제 1 코드북 벡터를 선택한다. 태스크 (T700) 는 (예를 들어, 회전 매트릭스 생성기 (210) 를 참조하여 여기에 기술된 바와 같이) 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성한다. 태스크 (T800) 는 (예를 들어, 제 2 형상 역양자화기 (600) 를 참조하여 여기에 기술된 바와 같이) 제 2 코드북의 복수의 제 2 코드북 벡터들 중에서, 제 2 코드북 인덱스에 의해 표시되고 제 1 방향을 갖는 제 2 코드북 벡터를 선택한다. 태스크 (T900) 는 (예를 들어, 곱셈기 (ML30) 를 참조하여 여기에 기술된 바와 같이) (A) 제 1 방향을 갖는 벡터와 (B) 회전 매트릭스의 곱을 계산하여 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성한다.
도 14b 는 일반적 구성에 따른 벡터 역양자화를 위한 장치 (DF100) 의 블록도를 나타낸다. 장치 (DF100) 는 (예를 들어, 제 1 형상 역양자화기 (500) 를 참조하여 여기에 기술된 바와 같이) 제 1 코드북의 복수의 제 1 코드북 벡터들 중에서, 제 1 코드북 인덱스에 의해 표시되는 제 1 코드북 벡터를 선택하는 수단 (F600) 을 포함한다. 장치 (DF100) 는 또한 (예를 들어, 회전 매트릭스 생성기 (210) 를 참조하여 여기에 기술된 바와 같이) 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 수단 (F700) 을 포함한다. 장치 (DF100) 는 또한 (예를 들어, 제 2 형상 역양자화기 (600) 를 참조하여 여기에 기술된 바와 같이) 제 2 코드북의 복수의 제 2 코드북 벡터들 중에서, 제 2 코드북 인덱스에 의해 표시되고 제 1 방향을 갖는 제 2 코드북 벡터를 선택하는 수단 (F800) 을 포함한다. 장치 (DF100) 는 또한 (예를 들어, 곱셈기 (ML30) 를 참조하여 여기에 기술된 바와 같이) (A) 제 1 방향을 갖는 벡터와 (B) 회전 매트릭스의 곱을 계산하여 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하는 수단 (F900) 을 포함한다.
도 12b 는 장치 (A100) 의 구현을 포함하는 통신 디바이스 (D10) 의 블록도를 도시한다. 디바이스 (D10) 는 장치 (A100) (또는 MF100) 또는 아마도 장치 (D100) (또는 DF100) 이 엘리먼트들을 임베딩하는 칩 또는 칩셋 (CS10) (예를 들어, 이동국 모뎀 (MSM) 칩셋) 을 포함한다. 칩/칩셋 (CS10) 은 (예를 들어, 명령들로서) 장치 (A100 또는 MF100) 의 소프트웨어 및/또는 펌웨어 부분을 실행하도록 구성될 수도 있는 하나 이상의 프로세서들을 포함할 수도 있다.
칩/칩셋 (CS10) 은 무선 주파수 (RF) 통신 신호를 수신하고 그 RF 신호 내에 인코딩된 오디오 신호를 디코딩 및 재생성하도록 구성된 수신기, 및 마이크로폰 (MV10) 에 의해 생성된 신호에 기초하는 (예를 들어, 장치 (A100) 에 의해 생성된 코드북 인텍스들을 포함하는) 인코딩된 오디오 신호를 기술하는 RF 통신 신호를 송신하도록 구성된 송신기를 포함한다. 그러한 디바이스는 ("코덱" 으로도 불리는) 하나 이상의 인코딩 및 디코딩 스킴들을 통해 무선으로 음성 통신 데이터를 송신 및 수신하도록 구성될 수도 있다. 그러한 코덱들의 예들은 (www-dot-3gpp-dot-org 에서 온라인으로 이용가능한) 명칭이 "Enhanced Variable Rate Codec, Speech Service Options 3, 68, and 70 for Wideband Spread Spectrum Digital Systems" (February 2007) 인 제 3 세대 파트너쉽 프로젝트 2 (3GPP2) 문서 C.S0014-C, v1.0 에 기술된 강화된 가변 레이트 코덱; (www-dot-3gpp-dot-org 에서 온라인으로 이용가능한) 명칭이 "Selectable Mode Vocoder (SMV) Service Option for Wideband Spread Spectrum Communication Systems" (January 2004) 인 3GPP2 문서 C.S0030-0, v3.0 에 기술된 선택가능 모드 보코더 스피치 코덱; 문서 ETSI TS 126 092 V6.0.0 (European Telecommunications Standards Institute (ETSI), Sophia Antipolis Cedex, FR, December 2004) 에 기술된 적응적 멀티 레이트 (AMR) 스피치 코덱; 및 문서 ETSI TS 126 192 V6.0.0 (ETSI, December 2004) 에 기술된 AMR 광대역 스피치 코덱을 포함한다. 예를 들어, 칩 또는 칩셋 (CS10) 은 하나 이상의 그러한 코덱들과 양립가능하도록 인코딩된 프레임들을 생성하도록 구성될 수도 있다.
디바이스 (D10) 는 안테나 (C30) 를 통해 RF 통신 신호들을 수신 및 송신하도록 구성된다. 디바이스 (D10) 는 또한 안테나 (C30) 로의 경로에 디플렉서 및 하나 이상의 전력 증폭기들을 포함할 수도 있다. 칩/칩셋 (CS10) 은 또한 키패트 (C10) 를 통해 사용자 입려을 수신하고 디스플레이 (C20) 를 통해 정보를 디스플레이하도록 구성될 수도 있다. 이러한 예에서, 디바이스 (D10) 는 또한 글로벌 포지셔닝 시스템 (GPS) 로케이션 서비스 및/또는 무선 (예를 들어, 블루투스TM) 핸드셋과 같은 외부 디바이스와의 단거리 통신을 지원하는 하나 이상의 안테나 (C40) 를 포함한다. 다른 예에서, 그러한 통신 디바이스는 블루투스TM 헤드셋 자체이고 키패드 (C10), 디스플레이 (C20), 및 안테나 (C30) 가 없다.
통신 디바이스 (D10) 는 스마트폰들 및 랩탑 및 태블릿 컴퓨터들을 포함하는 다양한 통신 디바이스들에서 구현될 수도 있다. 도 15 는 전면에 배열된 2 개의 음성 마이크로폰들 (MV10-1 및 MV10-3), 배면에 배열된 음성 마이크로폰 (MV10-2), 전면의 상부 코너에 위치된 에러 마이크로폰 (ME10), 및 배면에 위치된 노이즈 기준 마이크로폰 (MR10) 을 갖는 핸드셋 (H100) (예를 들어, 스마트폰) 의 전면도, 배면도, 및 측면도를 도시한다. 라우드스피커 (LS10) 는 에러 마이크로폰 (ME10) 근처의 전면의 상부 중앙에 배열되고, 2 개의 다른 라우드스피커들 (LS20L, LS20R) 이 또한 (예를 들어, 스피커폰 애플리케이션들을 위해) 제공된다. 그러한 핸드셋의 마이크로폰들 사이의 최대 거리는 통상 약 10 또는 12 센티미터이다.
여기에 개시된 방법들 및 장치들은 임의의 송수신 및/또는 오디오 센싱 애플리케이션, 특히 그러한 애플리케이션들의 모바일 또는 다르게는 휴대용 예들에서 일반적으로 적용될 수도 있다. 예를 들어, 여기에 개시된 구성들의 범위는 코드 분할 다중 접속 (CDMA) 공중 인터페이스를 사용하도록 구성된 무선 전화 통신 시스템에 상주하는 통신 디바이스들을 포함한다. 그럼에도 불구하고, 여기에 기술된 특징들을 갖는 방법 및 장치는 유선을 통한 VoIP (Voice over IP) 를 사용하는 시스템들 및/또는 무선 (예를 들어, CDMA, TDMA, FDMA, 및/또는 TD-SCDMA) 송신 채널들과 같은 당업자에게 알려진 넓은 범위의 기술들을 사용하는 여러 통신 시스템들 중 임의의 것에 상주할 수도 있다는 것이 당업자에게는 이해될 것이다.
여기에 개시된 통신 디바이스는 패킷-교환되는 네트워크 (예를 들어, VoIP 와 같은 프로토콜들에 따라 오디오 송신들을 반송하도록 배열된 유선 및/또는 무선 네트워크들) 및/또는 회로-교환되는 네트워크에서의 사용을 위해 적응될 수도 있다는 것이 명백하게 고려되고 여기에 개시된다. 여기에 개시된 통신 디바이스들은 전체-대역 광대역 코딩 시스템들 및 스플릿-대역 광대역 코딩 시스템들을 포함하여, 광대역 코딩 시스템들 (예를 들어, 5 킬로헤르츠보다 큰 오디오 주파수들을 인코딩하는 시스템들) 에서의 사용을 위해 및/또는 협대역 코딩 시스템들 (예를 들어, 약 4 또는 5 킬로헤르츠의 오디오 주파수 범위를 인코딩하는 시스템들) 에서의 사용을 위해 적응될 수도 있다는 것이 명백히 고려되며 여기에 개시된다.
기술된 구성들의 제시는 본 기술분야에서 통상 기술자가 여기에 개시된 방법들 및 다른 구조들을 실시 또는 사용하는 것을 가능하게 하도록 제공된다. 여기에 도시되고 기술된 흐름도, 블록도, 및 다른 구조들은 단지 예시일 뿐이고, 이들 구조들의 다른 변형들이 또한 본 개시의 범위 내에 있다. 이들 구성들의 여러 변경들은 가능하며, 여기에 제시된 일반 원리들은 마찬가지로 다른 구성들에 적용될 수도 있다. 따라서, 본 개시는 위에서 나타낸 구성들로 제한되도록 의되되는 것이 아니라, 원래의 개시의 일부를 형성하는, 제출된 첨부된 청구항들에서 포함하는, 여기의 임의의 방식으로 개시된 원리들 및 신규한 특징들과 일관된 가장 넓은 범위와 일치되는 것이다.
당업자는 정보 및 신호들이 다양한 상이한 기술들 및 기법들 중 임의의 것을 사용하여 표현될 수도 있다는 것을 이해할 것이다. 예를 들어, 상기 상세한 설명 전체에 걸쳐 참조될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들 및 심볼들은 전압들, 전류들, 전자기파들, 자기 장들 또는 입자들, 광학 장들 또는 입자들 또는 이들의 임의의 조합에 의해 표현될 수도 있다.
여기에 개시된 구성의 구현을 위한 중요한 설계 요건들은, 특별히 압축된 오디오 또는 오디오비주얼 정보 (예를 들어, 여기에서 식별된 예들 중 하나와 같은 압축 포맷에 따라 인코딩된 파일 또는 스트림) 의 플레이백과 같은 계산 집약적 애플리케이션들 또는 광대역 통신들 (예를 들어, 12, 16, 44.1, 48 또는 192 kHz 와 같이 8 킬로헤르츠를 초과하는 샘플링 레이트들에서의 음성 통신들) 에 대한 애플리케이션들에 대해, 프로세싱 지연 및/또는 계산상의 복잡성 (초당 수백만의 명령 단위 또는 MIPS 로 통상 측정됨) 을 최소화하는 것을 포함할 수도 있다.
여기에 개시된 장치 (예를 들어, 장치 A100, A110, D100, MF100 또는 DF100) 는 의도된 애플리케이션에 적합한 것으로 생각되는, 소프트웨어 및/또는 펌웨어와 하드웨어의 임의의 조합으로 구현될 수도 있다. 예를 들어, 그러한 장치의 엘리먼트들은 동일한 칩 상에 또는 칩셋 내의 2 개 이상의 칩들 중에 상주하는 전자 및/또는 광학 디바이스들로서 제조될 수도 있다. 그러한 디바이스의 하나의 예는 트랜지스터들 또는 로직 게이트들과 같은 로직 엘리먼트들의 고정되거나 프로그램가능한 어레이이고, 이들 엘리먼트들의 임의의 것은 하나 이상의 그러한 에레이들로서 구현될 수도 있다. 이들 엘리먼트들의 임의의 둘 이상 또는 심지어 전부가 동일한 어레이 또는 어레이들 내에서 구현될 수도 있다. 그러한 어레이 또는 어레이들은 (예를 들어, 둘 이상의 칩들을 포함하는 칩셋 내의) 하나 이상의 칩들 내에서 구현될 수도 있다.
여기에 개시된 장치 (예를 들어, 장치 A100, A110, D100, MF100 또는 DF100) 의 여러 구현들의 하나 이상의 엘리먼트들은 마이크로프로세서들, 임베딩된 프로세서들, IP 코어들, 디지털 신호 프로세서들, FPGA 들 (field-programmable gate arrays), ASSP 들 (application-specific standard products), 및 ASIC 들 (application-specific integrated circuits) 과 같은 로직 엘리먼트들의 하나 이상의 고정되거나 프로그램가능한 어레이들 상에서 실행하도록 배열된 명령들의 하나 이상의 세트들로서 전체적으로 또는 부분적으로 구현될 수도 있다. 여기에 개시된 장치의 구현의 여러 엘리먼트들 중 임의의 것은 또한 하나 이상의 컴퓨터들 (예를 들어, "프로세서들" 로서 불리기도 하는, 명령들의 하나 이상의 세트들 또는 시퀀스들을 실행하도록 프로그램된 하나 이상의 어레이들을 포함하는 머신들) 로서 구현될 수도 있고, 이들 엘리먼트들의 임의의 둘 이상 또는 심지어 전부는 동일한 그러한 컴퓨터 또는 컴퓨터들 내에서 구현될 수도 있다.
여기에 개시된 프로세서 또는 다른 프로세싱 수단은 예를 들어 동일한 칩 상에 또는 칩셋 내의 둘 이상의 칩들 중에 상주하는 하나 이상의 전자 및/또는 광학 디바이스들로서 제조될 수도 있다. 그러한 디바이스의 일 예는 트랜지스터들 또는 로직 게이트들과 같은 로직 엘리먼트들의 고정되거나 프로그램가능한 어레이이고, 이들 엘리먼트들의 임의의 것은 하나 이상의 그러한 에레이들로서 구현될 수도 있다. 그러한 어레이 또는 어레이들은 (예를 들어, 둘 이상의 칩들을 포함하는 칩셋 내의) 하나 이상의 칩들 내에서 구현될 수도 있다. 그러한 어레이들의 예들은 마이크로프로세서들, 임베딩된 프로세서들, IP 코어들, DSP 들, FPGA 들, ASSP 들, 및 ASIC 들과 같은 로직 엘리먼트들의 하나 이상의 고정되거나 프로그램가능한 어레이들을 포함한다. 여기에 개시된 프로세서 또는 다른 프로세싱 수단은 또한 하나 이상의 컴퓨터들 (예를 들어, 명령들의 하나 이상의 세트들 또는 시퀀스들을 실행하도록 프로그램된 하나 이상의 어레이들을 포함하는 머신들) 또는 다른 프로세서들로서 구현될 수도 있다. 여기에 기술된 프로세서가 프로세서가 임베딩되는 디바이스 또는 시스템 (예를 들어, 오디오 센싱 디바이스) 의 다른 동작에 관련된 태스크와 같이, 방법 (M100 또는 MD100) 의 구현의 절차에 직접 관련되지 않은 명령들의 다른 세트들을 실행하거나 태스크들을 수행하는데 사용되는 것이 가능하다. 여기에 개시된 방법의 일부가 오디오 센싱 디바이스의 프로세서에 의해 수행되고 그 방법의 다른 부분은 하나 이상의 다른 프로세서들의 제어하에서 수행되는 것도 가능하다.
당업자는 여기에 개시된 구성들과 관련하여 기술된 여러 예시적인 모듈들, 로직 블록들, 회로들 및 테스트들 및 다른 동작들이 전자 하드웨어, 컴퓨터 소프트웨어 또는 이들 양자의 조합들로서 구현될 수도 있다는 것을 인정할 것이다. 그러한 모듈들, 로직 블록들, 회로들 및 동작들은 범용 프로세서, 디지털 신호 프로세서 (DSP), ASIC 또는 ASSP, FPGA 또는 다른 프로그램가능한 로직 디바이스, 이산 게이트 또는 트랜지스트 로직, 이산 하드웨어 컴포넌트들 또는 여기에 개시된 구성을 생성하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 예를 들어, 그러한 구성은 하드-와이어드 회로로서, 애플리케이션 특정 집적 회로내로 제조된 회로 구성으로서, 또는 비휘발성 기억장치로 로딩된 펌웨어 프로그램 또는 머신 판독가능 코드로서 데이터 저장 매체로부터 또는 데이터 저장 매체로 로딩되는 소프트웨어 프로그램으로서 적어도 일부가 구현될 수도 있고, 그러한 코드는 범용 프로세서 또는 다른 디지털 신호 프로세싱 유닛과 같은 로직 엘리먼트들의 어레이에 의해 실행가능한 명령들이다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들어 DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다. 소프트웨어 모듈은 RAM (randoom-access memory), ROM (read-only memory), 플래시 RAM 과 같은 비휘발성 RAM (NVRAM), 이레이저블 프로그래머블 ROM (EPROM), 전기적으로 소거가능한 프로래머블 ROM (EEPROM), 레지스터들, 하드 디스크, 착탈가능한 디스크 또는 CD-ROM 과 같은 비일시적인 저장 매체; 또는 본 기술분야에서 공지된 저장 매체의 임의의 다른 형태에 상주할 수도 있다. 예시적인 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고, 저장 매체로 정보를 기입할 수 있도록 프로세서에 커플링된다. 대안으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC 에 상주할 수도 있다. ASIC 는 사용자 단말기에 상주할 수도 있다. 대안으로, 프로세서 및 저장 매체는 사용자 단말기에서 이산 컴포넌트들로서 상주할 수도 있다.
여기에 개시된 여러 방법들 (예를 들어, 방법들 M100, MD100, 및 여기에 개시된 여러 장치의 동작을 참조하여 개시된 다른 방법들) 은 프로세서와 같은 로직 엘리먼트들의 어레이에 의해 수행될 수도 있다는 것, 및 여기에 개시된 장치의 여러 엘리먼트들은 그러한 어레이 상에서 실행하도록 설계된 모듈들로서 구현될 수도 있다는 것이 주목된다. 여기에서 사용되는 바와 같이, 용어 "모듈" 또는 "서브-모듈" 은 컴퓨터 명령들 (예를 들어 로직 표현들) 을 소프트웨어, 하드웨어, 또는 펌웨어 형태로 포함하는 임의의 방법, 장치, 디바이스, 유닛 또는 컴퓨터 판독가능 데이터 저장 매체를 지칭할 수 있다. 다수의 모듈들 또는 시스템들이 하나의 모듈 또는 시스템으로 결합될 수 있고, 하나의 모듈 또는 시스템이 동일한 기능들을 수행하는 다수의 모듈들 또는 시스템들로 분리될 수 있다는 것이 이해되어야 한다. 소프트웨어 또는 다른 컴퓨터 실행가능한 명령들로 구현되는 경우, 프로세스의 엘리먼트들은 필수적으로 루틴들, 프로그램들, 오브젝트들, 컴포넌트들, 데이터 구조들 등과 관련된 태스크들을 수행하는 코드 세그먼트들이다. 용어 "소프트웨어" 는 소스 코드, 어셈블리어 코드, 머신 코드, 이진 코드, 펌웨어, 매크로코드, 마이크로코드, 로직 엘리먼트들의 어레이에 의해 실행가능한 명령들의 임의의 하나 이상의 세트들 또는 시퀀스들, 및 그러한 예들의 임의의 조합을 포함하는 것으로 이해되어야 한다. 프로그램 또는 코드 세그먼트들은 프로세서 판독가능 매체에 저장되거나 송신 매체 또는 통신 링크를 통해 반송파에서 구현되는 컴퓨터 데이터 신호에 의해 송신될 수 있다.
여기에 개시된 방법들, 스킴들, 및 기법들의 구현들은 또한 로직 엘리먼트들의 어레이 (예를 들어, 프로세서, 마이크로프로세서, 마이크로제어기, 또는 다른 유한 상태 머신) 를 포함하는 머신에 의해 실행가능한 명령들의 하나 이상의 세트들로서 (예를 들어, 여기에 리스트된 하나 이상의 컴퓨터 판독가능 저장 매체의 유형의 컴퓨터 판독가능한 피쳐들로) 유형으로 구현될 수도 있다. 용어 "컴퓨터 판독가능 매체" 는 휘발성, 비휘발성, 착탈가능, 및 비착탈가능 저장 매체를 포함하는, 정보를 저장 또는 전송할 수 있는 임의의 매체를 포함할 수도 있다. 컴퓨터 판독가능 매체의 예들은 전자 회로, 반도체 메모리 디바이스, ROM, 플래시 메모리, 소거가능 ROM (EROM), 플로피 디스켓 또는 다른 자기 기억장치, CD-ROM/DVD 또는 다른 광학 기억장치, 하드 디스크 또는 원하는 정보를 저장하는데 사용될 수 있는 임의의 다른 매체, 광섬유 매체, 무선 주파수 (RF) 링크, 또는 원하는 정보를 반송하는데 사용될 수 있고 액세스될 수 있는 임의의 다른 매체를 포함한다. 컴퓨터 데이터 신호는 전자 네트워크 채널들, 광섬유들, 에어 (air), 전자기, RF 링크들 등과 같은 송신 매체를 통해 전파할 수 있는 임의의 신호를 포함할 수도 있다. 코드 세그먼트들은 인터넷 또는 인트라넷과 같은 컴퓨터 네트워크들을 통해 다운로드될 수도 있다. 임의의 경우에, 본 개시의 범위는 그러한 실시형태들에 의해 제한되는 것으로 해석되지 않아야 한다.
여기에 기술된 방법들의 태스크들의 각각은 하드웨어로 직접, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이들 둘의 조합으로 구현될 수도 있다. 여기에 개시된 방법의 구현의 통상적인 애플리케이션에서, 로직 엘리먼트들 (예를 들어, 로직 게이트들) 의 어레이는 방법의 여러 태스크들 중 하나, 하나를 초과, 또는 심지어 전부를 수행하도록 구성된다. 태스크들의 하나 이상 (가능하면 전부) 이 또한 로직 엘리먼트들의 어레이 (예를 들어, 프로세서, 마이크로프로세서, 마이크로제어기, 또는 다른 유한 상태 머신) 를 포함하는 머신 (예를 들어, 컴퓨터) 에 의해 판독가능 및/또는 실행가능한 컴퓨터 프로그램 제품 (예를 들어, 디스크들, 플래시 또는 다른 비휘발성 메모리 카드들, 반도체 메모리 칩들 등과 같은 하나 이상의 데이터 저장 매체) 에서 구현된 코드 (예를 들어, 명령들의 하나 이상의 세트들) 로서 구현될 수도 있다. 여기에 개시된 방법의 구현의 태스크들은 또한 하나 보다 많은 그러한 어레이 또는 머신에 의해 수행될 수도 있다. 이들 또는 다른 구현들에서, 태스크들은 셀룰러 전화 또는 그러한 통신 능력을 갖는 다른 디바이스와 같은 무선 통신들을 위한 디바이스 내에서 수행될 수도 있다. 그러한 디바이스는 (VoIP 와 같은 하나 이상의 프로토콜들을 사용하는) 패킷-교환 네트워크 및/또는 회로-교환 네트워크와 통신하도록 구성될 수도 있다. 예를 들어, 그러한 디바이스는 인코딩된 프레임들을 수신 및/또는 송신하도록 구성된 RF 회로를 포함할 수도 있다.
여기에 개시된 여러 방법들은 핸드셋, 헤드셋 또는 휴대용 디지털 보조기 (PDA) 와 같은 휴대용 통신 디바이스에 의해 수행될 수도 있다는 것, 및 여기에 기술된 여러 장치는 그러한 디바이스 내에 포함될 수도 있다는 것이 명백히 개시된다. 통상의 실시간 (예를 들어, 온라인) 애플리케이션은 그러한 이동 디바이스를 사용하여 행해지는 전화 대화이다.
하나 이상의 예시적인 실시형태들에서, 여기에 기술된 동작들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 그러한 동작들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장 또는 컴퓨터 판독가능 매체를 통해 송신될 수도 있다. 용어 "컴퓨터 판독가능 매체" 는 컴퓨터 판독가능 저장 매체 및 통신 (예를 들어, 송신) 매체 양자 모두를 포함한다. 제한이 아닌 예로써, 컴퓨터 판독가능 저장 매체는 (제한 없이 동적 또는 정적 RAM, ROM, EEPROM, 및/또는 플래시 RAM 을 포함할 수도 있는) 반도체 메모리, 또는 강유전체, 자기저항, 오보닉, 폴리메릭, 또는 상변화 메모리와 같은 기억 엘리먼트들의 어레이; CD-ROM 또는 다른 광학 디스크 기억 장치; 및/또는 자기 디스크 기억 장치 또는 다른 자기 저장 디바이스들을 포함할 수 있다. 그러한 저장 매체는 컴퓨터에 의해 액세스될 수 있는 명령들 또는 데이터 구조들의 형태로 정보를 저장할 수도 있다. 통신 매체는 한 장소로부터 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하여, 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드을 반송하는데 사용될 수 있고, 컴퓨터에 의해 액세스될 수 있는 임의의 매체를 포함할 수 있다. 또한, 임의의 연결이 컴퓨터 판독가능 매체로 적절히 일컬어진다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스티드 페어, 디지털 가입자 라인 (DSL), 또는 적외선, 무선, 및/또는 마이크로웨이브와 같은 무선 기술을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되는 경우, 동축 케이블, 광섬유 케이블, 트위스티드 페어, 디지털 가입자 라인 (DSL), 또는 적외선, 무선, 및/또는 마이크로웨이브와 같은 무선 기술은 매체의 정의에 포함된다. 여기에서 사용된 디스크 (disk) 및 디스크 (disc) 는 CD (compact disc), 레이저 디스크, 광 디스크, DVD (digital versatile disc), 플로피 디스크 및 블루-레이 디스크TM (블루-레이 디스크 협회, 유니버설 시티, 캘리포니아) 을 포함하며, 여기서 디스크 (disk) 는 보통 자기적으로 데이터를 재생하는 반면, 디스크 (disc) 는 레이저를 사용하여 광학적으로 데이터를 재생한다. 상술한 것의 조합들은 또한 컴퓨터 판독가능 매체 내에 포함되어야 한다.
여기에 기술된 음향 신호 프로세싱 장치는 소정의 동작들을 제어하기 위해 스피치 입력을 수락하는 전자 디바이스로 통합될 수도 있고, 또는 그렇지 않으면 통신 디바이스들과 같이 배경 노이즈들로부터 원하는 노이즈들의 분리로부터 이익들 받을 수도 있다. 다수의 애플리케이션들이 다수의 방향들로부터 기원하는 배경 사운드들로부터 원하는 사운드를 강화 또는 깨끗하게 분리하는 것으로부터 이익을 얻을 수도 있다. 그러한 애플리케이션들은 음성 인식 및 검출, 스피치 강화 및 분리, 음성-활성화 제어 등과 같은 능력들을 포함하는 전자 또는 컴퓨팅 디바이스들에서의 인간-머신 인터페이스들을 포함할 수도 있다. 그러한 음향 신호 프로세싱 장치를 단지 제한된 프로세싱 능력들만 제공하는 디바이스들에서 적합하도록 구현하는 것은 바람직할 수도 있다.
여기에 기술된 모듈들, 엘리먼트들, 및 디바이스들의 여러 구현들의 엘리먼트들은 예를 들어 동일한 칩 상에 또는 칩셋 내의 둘 이상의 칩들 중에 상주하는 전자 및/또는 광학 디바이스들로서 제조될 수도 있다. 그러한 디바이스의 하나의 예는 트랜지스터들 또는 게이트들과 같은 로직 엘리먼트들의 고정되거나 프로그램가능한 어레이이다. 여기에 기술된 장치의 여러 구현들의 하나 이상의 엘리먼트들은 또한 마이크로프로세서들, 임베딩된 프로세서들, IP 코어들, 디지털 신호 프로세서들, FPGA 들, ASSP 들, 및 ASIC 들과 같은 로직 엘리먼트들의 하나 이상의 고정되거나 프로그램가능한 어레이들 상에서 실행하도록 배열된 명령들의 하나 이상의 세트들로서 전체적으로 또는 부분적으로 구현될 수도 있다.
여기에 기술된 장치의 구현의 하나 이상의 엘리먼트들이 장치가 임베딩되는 시스템 또는 디바이스의 다른 동작과 관련된 태스크와 같이, 장치의 동작에 직접 관련되지 않는 명령들의 다른 세트들을 실행하거나 태스크들을 수행하는데 사용되는 것이 가능하다. 여기에 기술된 장치의 구현의 하나 이상의 엘리먼트들이 통상의 구조 (예를 들어, 상이한 시간들에 상이한 엘리먼트들에 대응하는 코드의 부분들을 실행하는데 사용되는 프로세서, 상이한 시간들에 상이한 엘리먼트들에 대응하는 태스크들을 수행하도록 실행되는 명령들의 세트, 또는 상이한 시간들에 상이한 엘리먼트들을 위한 동작들을 수행하는 전자 및/또는 광학 디바이스들의 배열) 를 갖는 것도 가능하다.

Claims (40)

  1. 벡터 양자화를 위한 장치로서,
    제 1 방향을 갖는 제 1 입력 벡터를 수신하고, 제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 제 1 코드북 벡터를 선택하도록 구성된 제 1 벡터 양자화기;
    상기 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하도록 구성된 회전 매트릭스 생성기;
    (A) 상기 제 1 방향을 갖는 벡터와
    (B) 상기 회전 매트릭스
    의 곱을 계산하여 상기 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하도록 구성된 곱셈기; 및
    상기 제 2 방향을 갖는 제 2 입력 벡터를 수신하고, 제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 제 2 코드북 벡터를 선택하도록 구성된 제 2 벡터 양자화기를 포함하는, 벡터 양자화를 위한 장치.
  2. 제 1 항에 있어서,
    상기 복수의 제 1 코드북 벡터들 및 상기 복수의 제 2 코드북 벡터들 중의 각각은 단위-놈 (unit-norm) 벡터인, 벡터 양자화를 위한 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제 1 벡터 양자화기는 상기 제 1 입력 벡터의 이득 값에 기초하여 복수의 코드북들 중에서 상기 제 1 코드북을 선택하도록 구성되는, 벡터 양자화를 위한 장치.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 복수의 제 1 코드북 벡터들 중의 각각에 대해, 상기 제 1 코드북 벡터와의 상기 제 1 입력 벡터의 내적은 상기 제 1 입력 벡터와 상기 선택된 제 1 코드북 벡터의 내적보다 크지 않은, 벡터 양자화를 위한 장치.
  5. 제 1 항 또는 제 2 항에 있어서,
    상기 제 1 입력 벡터는 오디오 신호의 프레임의 복수의 부대역 벡터들 중의 하나이고,
    상기 장치는 상기 오디오 신호의 이전의 프레임의 평균 이득 값에 기초하여, 상기 복수의 부대역 벡터들의 평균 이득 값을 인코딩하도록 구성된 이득 양자화기를 포함하는, 벡터 양자화를 위한 장치.
  6. 제 1 항 또는 제 2 항에 있어서,
    상기 회전 매트릭스의 적어도 하나의 로우의 엘리먼트들의 각각은 상기 선택된 제 1 코드북 벡터의 대응하는 엘리먼트에 기초하는, 벡터 양자화를 위한 장치.
  7. 제 1 항 또는 제 2 항에 있어서,
    상기 회전 매트릭스의 적어도 하나의 칼럼의 엘리먼트들의 각각은 상기 선택된 제 1 코드북 벡터의 대응하는 엘리먼트에 기초하는, 벡터 양자화를 위한 장치.
  8. 제 1 항 또는 제 2 항에 있어서,
    상기 회전 매트릭스는 상기 제 1 입력 벡터와는 독립적인 기준 벡터에 기초하는, 벡터 양자화를 위한 장치.
  9. 제 8 항에 있어서,
    상기 기준 벡터는 단지 하나의 비제로 엘리먼트를 갖는, 벡터 양자화를 위한 장치.
  10. 제 8 항에 있어서,
    상기 회전 매트릭스는 상기 기준 벡터의 방향에 대해, 상기 선택된 제 1 코드북 벡터 및 상기 기준 벡터를 포함하는 평면 내에서, 상기 선택된 제 1 코드북 벡터의 회전을 정의하는, 벡터 양자화를 위한 장치.
  11. 제 1 항 또는 제 2 항에 있어서,
    상기 곱셈기는 상기 회전 매트릭스와 상기 제 1 입력 벡터의 곱을 계산함으로써 상기 제1 방향을 갖는 벡터와 상기 회전 매트릭스의 상기 곱을 계산하도록 구성되는, 벡터 양자화를 위한 장치.
  12. 제 1 항 또는 제 2 항에 있어서,
    상기 선택된 제 1 코드북 벡터는 단위 펄스들의 패턴에 기초하는, 벡터 양자화를 위한 장치.
  13. 벡터 양자화의 방법으로서,
    제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 제 1 코드북 벡터를 선택함으로써 제 1 방향을 갖는 제 1 입력 벡터를 양자화하는 단계;
    상기 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 단계;
    (A) 상기 제 1 방향을 갖는 벡터와
    (B) 상기 회전 매트릭스
    의 곱을 계산하여 상기 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하는 단계; 및
    제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 제 2 코드북 벡터를 선택함으로써 상기 제 2 방향을 갖는 제 2 입력 벡터를 양자화하는 단계를 포함하는, 벡터 양자화의 방법.
  14. 제 13 항에 있어서,
    상기 복수의 제 1 코드북 벡터들 및 상기 복수의 제 2 코드북 벡터들 중의 각각은 단위-놈 (unit-norm) 벡터인, 벡터 양자화의 방법.
  15. 제 13 항에 있어서,
    상기 제 1 입력 벡터를 양자화하는 단계는 상기 제 1 입력 벡터의 이득 값에 기초하여 복수의 코드북들 중에서 상기 제 1 코드북을 선택하는 단계를 포함하는, 벡터 양자화의 방법.
  16. 제 13 항에 있어서,
    상기 복수의 제 1 코드북 벡터들 중의 각각에 대해, 상기 제 1 코드북 벡터와 상기 제 1 입력 벡터의 내적은 상기 제 1 입력 벡터와 상기 선택된 제 1 코드북 벡터의 내적보다 크지 않은, 벡터 양자화의 방법.
  17. 제 13 항에 있어서,
    상기 제 1 입력 벡터는 오디오 신호의 프레임의 복수의 부대역 벡터들 중의 하나이고,
    상기 방법은 상기 오디오 신호의 이전의 프레임의 평균 이득 값에 기초하여, 상기 복수의 부대역 벡터들의 평균 이득 값을 인코딩하는 단계를 포함하는, 벡터 양자화의 방법.
  18. 제 13 항에 있어서,
    상기 회전 매트릭스의 적어도 하나의 로우의 엘리먼트들의 각각은 상기 선택된 제 1 코드북 벡터의 대응하는 엘리먼트에 기초하는, 벡터 양자화의 방법.
  19. 제 13 항에 있어서,
    상기 회전 매트릭스의 적어도 하나의 칼럼의 엘리먼트들의 각각은 상기 선택된 제 1 코드북 벡터의 대응하는 엘리먼트에 기초하는, 벡터 양자화의 방법.
  20. 제 13 항에 있어서,
    상기 회전 매트릭스는 상기 제 1 입력 벡터와는 독립적인 기준 벡터에 기초하는, 벡터 양자화의 방법.
  21. 제 20 항에 있어서,
    상기 기준 벡터는 단지 하나의 비제로 엘리먼트를 갖는, 벡터 양자화의 방법.
  22. 제 20 항에 있어서,
    상기 회전 매트릭스는 상기 기준 벡터의 방향에 대해, 상기 선택된 제 1 코드북 벡터 및 상기 기준 벡터를 포함하는 평면 내에서, 상기 선택된 제 1 코드북 벡터의 회전을 정의하는, 벡터 양자화의 방법.
  23. 제 13 항에 있어서,
    상기 제 1 방향을 갖는 벡터와 상기 회전 매트릭스의 상기 곱을 계산하는 단계는 상기 회전 매트릭스와 상기 제 1 입력 벡터의 곱을 계산함으로써 수행되는, 벡터 양자화의 방법.
  24. 제 13 항에 있어서,
    상기 선택된 제 1 코드북 벡터는 단위 펄스들의 패턴에 기초하는, 벡터 양자화의 방법.
  25. 벡터 양자화를 위한 장치로서,
    제 1 코드북의 복수의 제 1 코드북 벡터들 중 대응하는 제 1 코드북 벡터를 선택함으로써 제 1 방향을 갖는 제 1 입력 벡터를 양자화하는 수단;
    상기 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 수단;
    (A) 상기 제 1 방향을 갖는 벡터와
    (B) 상기 회전 매트릭스
    의 곱을 계산하여 상기 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하는 수단; 및
    제 2 코드북의 복수의 제 2 코드북 벡터들 중 대응하는 제 2 코드북 벡터를 선택함으로써 상기 제 2 방향을 갖는 제 2 입력 벡터를 양자화하는 수단을 포함하는, 벡터 양자화를 위한 장치.
  26. 제 25 항에 있어서,
    상기 복수의 제 1 코드북 벡터들 및 상기 복수의 제 2 코드북 벡터들 중의 각각은 단위-놈 (unit-norm) 벡터인, 벡터 양자화를 위한 장치.
  27. 제 25 항 또는 제 26 항에 있어서,
    상기 제 1 입력 벡터를 양자화하는 수단은 상기 제 1 입력 벡터의 이득 값에 기초하여 복수의 코드북들 중에서 상기 제 1 코드북을 선택하도록 구성되는, 벡터 양자화를 위한 장치.
  28. 제 25 항 또는 제 26 항에 있어서,
    상기 복수의 제 1 코드북 벡터들 중의 각각에 대해, 상기 제 1 코드북 벡터와 상기 제 1 입력 벡터의 내적은 상기 제 1 입력 벡터와 상기 선택된 제 1 코드북 벡터의 내적보다 크지 않은, 벡터 양자화를 위한 장치.
  29. 제 25 항 또는 제 26 항에 있어서,
    상기 제 1 입력 벡터는 오디오 신호의 프레임의 복수의 부대역 벡터들 중의 하나이고,
    상기 장치는 상기 오디오 신호의 이전의 프레임의 평균 이득 값에 기초하여, 상기 복수의 부대역 벡터들의 평균 이득 값을 인코딩하는 수단을 포함하는, 벡터 양자화를 위한 장치.
  30. 제 25 항 또는 제 26 항에 있어서,
    상기 회전 매트릭스의 적어도 하나의 로우의 엘리먼트들의 각각은 상기 선택된 제 1 코드북 벡터의 대응하는 엘리먼트에 기초하는, 벡터 양자화를 위한 장치.
  31. 제 25 항 또는 제 26 항에 있어서,
    상기 회전 매트릭스의 적어도 하나의 칼럼의 엘리먼트들의 각각은 상기 선택된 제 1 코드북 벡터의 대응하는 엘리먼트에 기초하는, 벡터 양자화를 위한 장치.
  32. 제 25 항 또는 제 26 항에 있어서,
    상기 회전 매트릭스는 상기 제 1 입력 벡터와는 독립적인 기준 벡터에 기초하는, 벡터 양자화를 위한 장치.
  33. 제 32 항에 있어서,
    상기 기준 벡터는 단지 하나의 비제로 엘리먼트를 갖는, 벡터 양자화를 위한 장치.
  34. 제 32 항에 있어서,
    상기 회전 매트릭스는 상기 기준 벡터의 방향에 대해, 상기 선택된 제 1 코드북 벡터 및 상기 기준 벡터를 포함하는 평면 내에서, 상기 선택된 제 1 코드북 벡터의 회전을 정의하는, 벡터 양자화를 위한 장치.
  35. 제 25 항 또는 제 26 항에 있어서,
    상기 곱을 계산하는 수단은 상기 회전 매트릭스와 상기 제 1 입력 벡터의 곱을 계산함으로써 상기 제 1 방향을 갖는 벡터와 상기 회전 매트릭스의 상기 곱을 계산하도록 구성되는, 벡터 양자화를 위한 장치.
  36. 제 25 항 또는 제 26 항에 있어서,
    상기 선택된 제 1 코드북 벡터는 단위 펄스들의 패턴에 기초하는, 벡터 양자화를 위한 장치.
  37. 제 1 코드북 인덱스 및 제 2 코드북 인덱스를 포함하는 양자화된 벡터를 역양자화하는 장치로서,
    상기 제 1 코드북 인덱스를 수신하고, 제 1 코드북으로부터 대응하는 제 1 코드북 벡터를 생성하도록 구성된 제 1 벡터 역양자화기;
    상기 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하도록 구성된 회전 매트릭스 생성기;
    제 2 코드북 인덱스를 수신하고, 제 2 코드북으로부터 제 1 방향을 갖는 대응하는 제 2 코드북 벡터를 생성하도록 구성된 제 2 벡터 역양자화기; 및
    (A) 상기 제 1 방향을 갖는 벡터와
    (B) 상기 회전 매트릭스
    의 곱을 계산하여 상기 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하도록 구성된 곱셈기를 포함하는, 양자화된 벡터를 역양자화하는 장치.
  38. 제 1 코드북 인덱스 및 제 2 코드북 인덱스를 포함하는 양자화된 벡터를 역양자화하는 방법으로서,
    제 1 코드북의 복수의 제 1 코드북 벡터들 중에서, 상기 제 1 코드북 인덱스에 의해 표시되는 제 1 코드북 벡터를 선택하는 단계;
    상기 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 단계;
    제 2 코드북의 복수의 제 2 코드북 벡터들 중에서, 상기 제 2 코드북 인덱스에 의해 표시되고 제 1 방향을 갖는 제 2 코드북 벡터를 선택하는 단계; 및
    (A) 상기 제 1 방향을 갖는 벡터와
    (B) 상기 회전 매트릭스
    의 곱을 계산하여 상기 제 1 방향과는 상이한 제 2방향을 갖는 회전된 벡터를 생성하는 단계를 포함하는, 양자화된 벡터를 역양자화하는 방법.
  39. 제 1 코드북 인덱스 및 제 2 코드북 인덱스를 포함하는 양자화된 벡터를 역양자화하는 장치로서,
    제 1 코드북의 복수의 제 1 코드북 벡터들 중에서, 상기 제 1 코드북 인덱스에 의해 표시되는 제 1 코드북 벡터를 선택하는 수단;
    상기 선택된 제 1 코드북 벡터에 기초하는 회전 매트릭스를 생성하는 수단;
    제 2 코드북의 복수의 제 2 코드북 벡터들 중에서, 상기 제 2 코드북 인덱스에 의해 표시되고 제 1 방향을 갖는 제 2 코드북 벡터를 선택하는 수단; 및
    (A) 상기 제 1 방향을 갖는 벡터와
    (B) 상기 회전 매트릭스
    의 곱을 계산하여 상기 제 1 방향과는 상이한 제 2 방향을 갖는 회전된 벡터를 생성하는 수단을 포함하는, 양자화된 벡터를 역양자화하는 장치.
  40. 유형의 피쳐들을 갖는 컴퓨터 판독가능 저장 매체로서,
    상기 피쳐들은 상기 피쳐들을 판독하는 머신으로 하여금 제 13 항 내지 제 24 항 및 제 38 항 중 어느 한 항에 기재된 방법을 수행하게 하는, 유형의 피쳐들을 갖는 컴퓨터 판독가능 저장 매체.
KR1020137005131A 2010-07-30 2011-07-29 멀티-스테이지 형상 벡터 양자화를 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체 KR101442997B1 (ko)

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US36966210P 2010-07-30 2010-07-30
US61/369,662 2010-07-30
US36970510P 2010-07-31 2010-07-31
US61/369,705 2010-07-31
US36975110P 2010-08-01 2010-08-01
US61/369,751 2010-08-01
US37456510P 2010-08-17 2010-08-17
US61/374,565 2010-08-17
US38423710P 2010-09-17 2010-09-17
US61/384,237 2010-09-17
US201161470438P 2011-03-31 2011-03-31
US61/470,438 2011-03-31
US13/193,476 US8831933B2 (en) 2010-07-30 2011-07-28 Systems, methods, apparatus, and computer-readable media for multi-stage shape vector quantization
US13/193,476 2011-07-28
PCT/US2011/045858 WO2012016122A2 (en) 2010-07-30 2011-07-29 Systems, methods, apparatus, and computer-readable media for multi-stage shape vector quantization

Publications (2)

Publication Number Publication Date
KR20130036361A KR20130036361A (ko) 2013-04-11
KR101442997B1 true KR101442997B1 (ko) 2014-09-23

Family

ID=45527629

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020137005405A KR20130069756A (ko) 2010-07-30 2011-07-29 오디오 신호들의 종속-모드 코딩을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR1020137005152A KR101445509B1 (ko) 2010-07-30 2011-07-29 동적 비트 할당을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR1020137005131A KR101442997B1 (ko) 2010-07-30 2011-07-29 멀티-스테이지 형상 벡터 양자화를 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR1020137005161A KR101445510B1 (ko) 2010-07-30 2011-07-29 하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020137005405A KR20130069756A (ko) 2010-07-30 2011-07-29 오디오 신호들의 종속-모드 코딩을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR1020137005152A KR101445509B1 (ko) 2010-07-30 2011-07-29 동적 비트 할당을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020137005161A KR101445510B1 (ko) 2010-07-30 2011-07-29 하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들

Country Status (10)

Country Link
US (4) US20120029926A1 (ko)
EP (5) EP2599080B1 (ko)
JP (4) JP2013537647A (ko)
KR (4) KR20130069756A (ko)
CN (4) CN103038821B (ko)
BR (1) BR112013002166B1 (ko)
ES (1) ES2611664T3 (ko)
HU (1) HUE032264T2 (ko)
TW (1) TW201214416A (ko)
WO (4) WO2012016110A2 (ko)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2356492T3 (es) * 2005-07-22 2011-04-08 France Telecom Método de conmutación de tasa de transmisión en decodificación de audio escalable en tasa de transmisión y ancho de banda.
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
US9208792B2 (en) 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection
WO2012037515A1 (en) 2010-09-17 2012-03-22 Xiph. Org. Methods and systems for adaptive time-frequency resolution in digital data coding
CN103329199B (zh) * 2011-01-25 2015-04-08 日本电信电话株式会社 编码方法、编码装置、周期性特征量决定方法、周期性特征量决定装置、程序、记录介质
US8838442B2 (en) 2011-03-07 2014-09-16 Xiph.org Foundation Method and system for two-step spreading for tonal artifact avoidance in audio coding
WO2012122297A1 (en) 2011-03-07 2012-09-13 Xiph. Org. Methods and systems for avoiding partial collapse in multi-block audio coding
WO2012122299A1 (en) * 2011-03-07 2012-09-13 Xiph. Org. Bit allocation and partitioning in gain-shape vector quantization for audio coding
PT3321931T (pt) 2011-10-28 2020-02-25 Fraunhofer Ges Forschung Aparelho de codificação e método de codificação
RU2505921C2 (ru) * 2012-02-02 2014-01-27 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ и устройство кодирования и декодирования аудиосигналов (варианты)
WO2013147666A1 (en) * 2012-03-29 2013-10-03 Telefonaktiebolaget L M Ericsson (Publ) Transform encoding/decoding of harmonic audio signals
DE202013005408U1 (de) * 2012-06-25 2013-10-11 Lg Electronics Inc. Mikrophonbefestigungsanordnung eines mobilen Endgerätes
CN103516440B (zh) 2012-06-29 2015-07-08 华为技术有限公司 语音频信号处理方法和编码装置
EP2685448B1 (en) * 2012-07-12 2018-09-05 Harman Becker Automotive Systems GmbH Engine sound synthesis
JP6096896B2 (ja) * 2012-07-12 2017-03-15 ノキア テクノロジーズ オーユー ベクトル量子化
US8885752B2 (en) * 2012-07-27 2014-11-11 Intel Corporation Method and apparatus for feedback in 3D MIMO wireless systems
US9129600B2 (en) * 2012-09-26 2015-09-08 Google Technology Holdings LLC Method and apparatus for encoding an audio signal
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
CN103854653B (zh) * 2012-12-06 2016-12-28 华为技术有限公司 信号解码的方法和设备
PL3457400T3 (pl) * 2012-12-13 2024-02-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Urządzenie do kodowania głosowego audio, urządzenie do dekodowania głosowego audio, sposób kodowania głosowego audio i sposób dekodowania głosowego audio
US9577618B2 (en) 2012-12-20 2017-02-21 Advanced Micro Devices, Inc. Reducing power needed to send signals over wires
JP6173484B2 (ja) 2013-01-08 2017-08-02 ドルビー・インターナショナル・アーベー 臨界サンプリングされたフィルタバンクにおけるモデル・ベースの予測
AU2014211544B2 (en) * 2013-01-29 2017-03-30 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Noise filling in perceptual transform audio coding
JP6407150B2 (ja) 2013-06-11 2018-10-17 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 音響信号の帯域幅拡張を行う装置及び方法
CN104282308B (zh) 2013-07-04 2017-07-14 华为技术有限公司 频域包络的矢量量化方法和装置
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
CN104347082B (zh) * 2013-07-24 2017-10-24 富士通株式会社 弦波帧检测方法和设备以及音频编码方法和设备
US9224402B2 (en) 2013-09-30 2015-12-29 International Business Machines Corporation Wideband speech parameterization for high quality synthesis, transformation and quantization
US8879858B1 (en) 2013-10-01 2014-11-04 Gopro, Inc. Multi-channel bit packing engine
JP6400590B2 (ja) * 2013-10-04 2018-10-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 音響信号符号化装置、音響信号復号装置、端末装置、基地局装置、音響信号符号化方法及び復号方法
PT3471096T (pt) * 2013-10-18 2020-07-06 Ericsson Telefon Ab L M Codificação de posições de picos espectrais
US10049683B2 (en) 2013-10-21 2018-08-14 Dolby International Ab Audio encoder and decoder
EP3913808A1 (en) * 2013-11-12 2021-11-24 Telefonaktiebolaget LM Ericsson (publ) Split gain shape vector coding
US20150149157A1 (en) * 2013-11-22 2015-05-28 Qualcomm Incorporated Frequency domain gain shape estimation
WO2015136078A1 (en) * 2014-03-14 2015-09-17 Telefonaktiebolaget L M Ericsson (Publ) Audio coding method and apparatus
CN104934032B (zh) * 2014-03-17 2019-04-05 华为技术有限公司 根据频域能量对语音信号进行处理的方法和装置
US9542955B2 (en) * 2014-03-31 2017-01-10 Qualcomm Incorporated High-band signal coding using multiple sub-bands
SG11201701197TA (en) 2014-07-25 2017-03-30 Panasonic Ip Corp America Audio signal coding apparatus, audio signal decoding apparatus, audio signal coding method, and audio signal decoding method
US9620136B2 (en) 2014-08-15 2017-04-11 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US9672838B2 (en) 2014-08-15 2017-06-06 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US9336788B2 (en) 2014-08-15 2016-05-10 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
CA2964906A1 (en) 2014-10-20 2016-04-28 Audimax, Llc Systems, methods, and devices for intelligent speech recognition and processing
US20160232741A1 (en) * 2015-02-05 2016-08-11 Igt Global Solutions Corporation Lottery Ticket Vending Device, System and Method
WO2016142002A1 (en) * 2015-03-09 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal
TWI758146B (zh) * 2015-03-13 2022-03-11 瑞典商杜比國際公司 解碼具有增強頻譜帶複製元資料在至少一填充元素中的音訊位元流
DE102015104864A1 (de) 2015-03-30 2016-10-06 Thyssenkrupp Ag Lagerelement für einen Stabilisator eines Fahrzeugs
EP3320539A1 (en) * 2015-07-06 2018-05-16 Nokia Technologies OY Bit error detector for an audio signal decoder
EP3171362B1 (en) * 2015-11-19 2019-08-28 Harman Becker Automotive Systems GmbH Bass enhancement and separation of an audio signal into a harmonic and transient signal component
US10210874B2 (en) * 2017-02-03 2019-02-19 Qualcomm Incorporated Multi channel coding
US10825467B2 (en) * 2017-04-21 2020-11-03 Qualcomm Incorporated Non-harmonic speech detection and bandwidth extension in a multi-source environment
US11531695B2 (en) * 2017-08-23 2022-12-20 Google Llc Multiscale quantization for fast similarity search
WO2019056108A1 (en) * 2017-09-20 2019-03-28 Voiceage Corporation METHOD AND DEVICE FOR EFFICIENT DISTRIBUTION OF A BINARY BUDGET IN A CELP CODEC
CN108153189B (zh) * 2017-12-20 2020-07-10 中国航空工业集团公司洛阳电光设备研究所 一种民机显示控制器的电源控制电路及方法
WO2019165642A1 (en) * 2018-03-02 2019-09-06 Intel Corporation Adaptive bitrate coding for spatial audio streaming
KR20230058546A (ko) 2018-04-05 2023-05-03 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) 컴포트 노이즈 생성 지원
CN110704024B (zh) * 2019-09-28 2022-03-08 中昊芯英(杭州)科技有限公司 一种矩阵处理装置、方法及处理设备
US20210209462A1 (en) * 2020-01-07 2021-07-08 Alibaba Group Holding Limited Method and system for processing a neural network
CN111681639B (zh) * 2020-05-28 2023-05-30 上海墨百意信息科技有限公司 一种多说话人语音合成方法、装置及计算设备

Family Cites Families (115)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3978287A (en) * 1974-12-11 1976-08-31 Nasa Real time analysis of voiced sounds
US4516258A (en) 1982-06-30 1985-05-07 At&T Bell Laboratories Bit allocation generator for adaptive transform coder
JPS6333935A (ja) 1986-07-29 1988-02-13 Sharp Corp ゲイン/シエイプ・ベクトル量子化器
US4899384A (en) 1986-08-25 1990-02-06 Ibm Corporation Table controlled dynamic bit allocation in a variable rate sub-band speech coder
JPH01205200A (ja) 1988-02-12 1989-08-17 Nippon Telegr & Teleph Corp <Ntt> 音声符号化方式
US4964166A (en) * 1988-05-26 1990-10-16 Pacific Communication Science, Inc. Adaptive transform coder having minimal bit allocation processing
US5388181A (en) 1990-05-29 1995-02-07 Anderson; David J. Digital audio compression system
US5630011A (en) 1990-12-05 1997-05-13 Digital Voice Systems, Inc. Quantization of harmonic amplitudes representing speech
US5222146A (en) 1991-10-23 1993-06-22 International Business Machines Corporation Speech recognition apparatus having a speech coder outputting acoustic prototype ranks
EP0551705A3 (en) 1992-01-15 1993-08-18 Ericsson Ge Mobile Communications Inc. Method for subbandcoding using synthetic filler signals for non transmitted subbands
CA2088082C (en) 1992-02-07 1999-01-19 John Hartung Dynamic bit allocation for three-dimensional subband video coding
IT1257065B (it) 1992-07-31 1996-01-05 Sip Codificatore a basso ritardo per segnali audio, utilizzante tecniche di analisi per sintesi.
KR100188912B1 (ko) 1992-09-21 1999-06-01 윤종용 서브밴드코딩의 비트재할당 방법
US5664057A (en) 1993-07-07 1997-09-02 Picturetel Corporation Fixed bit rate speech encoder/decoder
JP3228389B2 (ja) 1994-04-01 2001-11-12 株式会社東芝 利得形状ベクトル量子化装置
TW271524B (ko) * 1994-08-05 1996-03-01 Qualcomm Inc
US5751905A (en) 1995-03-15 1998-05-12 International Business Machines Corporation Statistical acoustic processing method and apparatus for speech recognition using a toned phoneme system
SE506379C3 (sv) 1995-03-22 1998-01-19 Ericsson Telefon Ab L M Lpc-talkodare med kombinerad excitation
US5692102A (en) 1995-10-26 1997-11-25 Motorola, Inc. Method device and system for an efficient noise injection process for low bitrate audio compression
US5692949A (en) 1995-11-17 1997-12-02 Minnesota Mining And Manufacturing Company Back-up pad for use with abrasive articles
US5956674A (en) 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
US5781888A (en) 1996-01-16 1998-07-14 Lucent Technologies Inc. Perceptual noise shaping in the time domain via LPC prediction in the frequency domain
JP3240908B2 (ja) 1996-03-05 2001-12-25 日本電信電話株式会社 声質変換方法
JPH09288498A (ja) 1996-04-19 1997-11-04 Matsushita Electric Ind Co Ltd 音声符号化装置
JP3707153B2 (ja) 1996-09-24 2005-10-19 ソニー株式会社 ベクトル量子化方法、音声符号化方法及び装置
EP0883107B9 (en) 1996-11-07 2005-01-26 Matsushita Electric Industrial Co., Ltd Sound source vector generator, voice encoder, and voice decoder
FR2761512A1 (fr) 1997-03-25 1998-10-02 Philips Electronics Nv Dispositif de generation de bruit de confort et codeur de parole incluant un tel dispositif
US6064954A (en) 1997-04-03 2000-05-16 International Business Machines Corp. Digital audio signal coding
WO1999003095A1 (en) 1997-07-11 1999-01-21 Koninklijke Philips Electronics N.V. Transmitter with an improved harmonic speech encoder
DE19730130C2 (de) 1997-07-14 2002-02-28 Fraunhofer Ges Forschung Verfahren zum Codieren eines Audiosignals
US6233550B1 (en) 1997-08-29 2001-05-15 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
US5999897A (en) * 1997-11-14 1999-12-07 Comsat Corporation Method and apparatus for pitch estimation using perception based analysis by synthesis
JPH11224099A (ja) 1998-02-06 1999-08-17 Sony Corp 位相量子化装置及び方法
JP3802219B2 (ja) * 1998-02-18 2006-07-26 富士通株式会社 音声符号化装置
US6301556B1 (en) 1998-03-04 2001-10-09 Telefonaktiebolaget L M. Ericsson (Publ) Reducing sparseness in coded speech signals
US6115689A (en) * 1998-05-27 2000-09-05 Microsoft Corporation Scalable audio coder and decoder
JP3515903B2 (ja) 1998-06-16 2004-04-05 松下電器産業株式会社 オーディオ符号化のための動的ビット割り当て方法及び装置
US6094629A (en) 1998-07-13 2000-07-25 Lockheed Martin Corp. Speech coding system and method including spectral quantizer
US7272556B1 (en) 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US6766288B1 (en) 1998-10-29 2004-07-20 Paul Reed Smith Guitars Fast find fundamental method
US6363338B1 (en) * 1999-04-12 2002-03-26 Dolby Laboratories Licensing Corporation Quantization in perceptual audio coders with compensation for synthesis filter noise spreading
US6246345B1 (en) 1999-04-16 2001-06-12 Dolby Laboratories Licensing Corporation Using gain-adaptive quantization and non-uniform symbol lengths for improved audio coding
CA2368453C (en) 1999-04-16 2009-12-08 Grant Allen Davidson Using gain-adaptive quantization and non-uniform symbol lengths for audio coding
JP4242516B2 (ja) 1999-07-26 2009-03-25 パナソニック株式会社 サブバンド符号化方式
US6236960B1 (en) 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding
US6782360B1 (en) 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US6952671B1 (en) 1999-10-04 2005-10-04 Xvd Corporation Vector quantization with a non-structured codebook for audio compression
JP2001242896A (ja) 2000-02-29 2001-09-07 Matsushita Electric Ind Co Ltd 音声符号化/復号装置およびその方法
JP3404350B2 (ja) 2000-03-06 2003-05-06 パナソニック モバイルコミュニケーションズ株式会社 音声符号化パラメータ取得方法、音声復号方法及び装置
CA2359260C (en) 2000-10-20 2004-07-20 Samsung Electronics Co., Ltd. Coding apparatus and method for orientation interpolator node
GB2375028B (en) * 2001-04-24 2003-05-28 Motorola Inc Processing speech signals
JP3636094B2 (ja) 2001-05-07 2005-04-06 ソニー株式会社 信号符号化装置及び方法、並びに信号復号装置及び方法
ATE320651T1 (de) 2001-05-08 2006-04-15 Koninkl Philips Electronics Nv Kodieren eines audiosignals
JP3601473B2 (ja) 2001-05-11 2004-12-15 ヤマハ株式会社 ディジタルオーディオ圧縮回路および伸長回路
KR100347188B1 (en) 2001-08-08 2002-08-03 Amusetec Method and apparatus for judging pitch according to frequency analysis
US7027982B2 (en) 2001-12-14 2006-04-11 Microsoft Corporation Quality and rate control strategy for digital audio
US7240001B2 (en) 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
US7310598B1 (en) * 2002-04-12 2007-12-18 University Of Central Florida Research Foundation, Inc. Energy based split vector quantizer employing signal representation in multiple transform domains
DE10217297A1 (de) 2002-04-18 2003-11-06 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten
JP4296752B2 (ja) 2002-05-07 2009-07-15 ソニー株式会社 符号化方法及び装置、復号方法及び装置、並びにプログラム
US7447631B2 (en) 2002-06-17 2008-11-04 Dolby Laboratories Licensing Corporation Audio coding system using spectral hole filling
TWI288915B (en) 2002-06-17 2007-10-21 Dolby Lab Licensing Corp Improved audio coding system using characteristics of a decoded signal to adapt synthesized spectral components
US7069212B2 (en) * 2002-09-19 2006-06-27 Matsushita Elecric Industrial Co., Ltd. Audio decoding apparatus and method for band expansion with aliasing adjustment
JP4657570B2 (ja) 2002-11-13 2011-03-23 ソニー株式会社 音楽情報符号化装置及び方法、音楽情報復号装置及び方法、並びにプログラム及び記録媒体
FR2849727B1 (fr) 2003-01-08 2005-03-18 France Telecom Procede de codage et de decodage audio a debit variable
JP4191503B2 (ja) 2003-02-13 2008-12-03 日本電信電話株式会社 音声楽音信号符号化方法、復号化方法、符号化装置、復号化装置、符号化プログラム、および復号化プログラム
US7996234B2 (en) 2003-08-26 2011-08-09 Akikaze Technologies, Llc Method and apparatus for adaptive variable bit rate audio encoding
US7613607B2 (en) 2003-12-18 2009-11-03 Nokia Corporation Audio enhancement in coded domain
CA2457988A1 (en) 2004-02-18 2005-08-18 Voiceage Corporation Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
CN1998045A (zh) 2004-07-13 2007-07-11 松下电器产业株式会社 音调频率估计装置以及音调频率估计方法
US20060015329A1 (en) 2004-07-19 2006-01-19 Chu Wai C Apparatus and method for audio coding
CN102201242B (zh) 2004-11-05 2013-02-27 松下电器产业株式会社 编码装置、解码装置、编码方法及解码方法
JP4599558B2 (ja) 2005-04-22 2010-12-15 国立大学法人九州工業大学 ピッチ周期等化装置及びピッチ周期等化方法、並びに音声符号化装置、音声復号装置及び音声符号化方法
US7630882B2 (en) * 2005-07-15 2009-12-08 Microsoft Corporation Frequency segmentation to obtain bands for efficient coding of digital media
WO2007052088A1 (en) 2005-11-04 2007-05-10 Nokia Corporation Audio compression
CN101030378A (zh) 2006-03-03 2007-09-05 北京工业大学 一种建立增益码书的方法
KR100770839B1 (ko) * 2006-04-04 2007-10-26 삼성전자주식회사 음성 신호의 하모닉 정보 및 스펙트럼 포락선 정보,유성음화 비율 추정 방법 및 장치
US8712766B2 (en) 2006-05-16 2014-04-29 Motorola Mobility Llc Method and system for coding an information signal using closed loop adaptive bit allocation
US7987089B2 (en) 2006-07-31 2011-07-26 Qualcomm Incorporated Systems and methods for modifying a zero pad region of a windowed frame of an audio signal
US8374857B2 (en) * 2006-08-08 2013-02-12 Stmicroelectronics Asia Pacific Pte, Ltd. Estimating rate controlling parameters in perceptual audio encoders
US20080059201A1 (en) 2006-09-03 2008-03-06 Chih-Hsiang Hsiao Method and Related Device for Improving the Processing of MP3 Decoding and Encoding
JP4396683B2 (ja) 2006-10-02 2010-01-13 カシオ計算機株式会社 音声符号化装置、音声符号化方法、及び、プログラム
JP5096474B2 (ja) 2006-10-10 2012-12-12 クゥアルコム・インコーポレイテッド オーディオ信号を符号化及び復号化する方法及び装置
US20080097757A1 (en) * 2006-10-24 2008-04-24 Nokia Corporation Audio coding
KR100862662B1 (ko) 2006-11-28 2008-10-10 삼성전자주식회사 프레임 오류 은닉 방법 및 장치, 이를 이용한 오디오 신호복호화 방법 및 장치
EP2101318B1 (en) 2006-12-13 2014-06-04 Panasonic Corporation Encoding device, decoding device and corresponding methods
CN101548318B (zh) 2006-12-15 2012-07-18 松下电器产业株式会社 编码装置、解码装置以及其方法
KR101299155B1 (ko) * 2006-12-29 2013-08-22 삼성전자주식회사 오디오 부호화 및 복호화 장치와 그 방법
FR2912249A1 (fr) 2007-02-02 2008-08-08 France Telecom Codage/decodage perfectionnes de signaux audionumeriques.
EP1973101B1 (en) 2007-03-23 2010-02-24 Honda Research Institute Europe GmbH Pitch extraction with inhibition of harmonics and sub-harmonics of the fundamental frequency
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
US8005023B2 (en) 2007-06-14 2011-08-23 Microsoft Corporation Client-side echo cancellation for multi-party audio conferencing
US7761290B2 (en) 2007-06-15 2010-07-20 Microsoft Corporation Flexible frequency and time partitioning in perceptual transform coding of audio
US7774205B2 (en) 2007-06-15 2010-08-10 Microsoft Corporation Coding of sparse digital media spectral data
JP5253502B2 (ja) 2007-06-21 2013-07-31 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ベクトルを符号化する方法
US7885819B2 (en) 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
DK3401907T3 (da) 2007-08-27 2020-03-02 Ericsson Telefon Ab L M Fremgangsmåde og indretning til perceptuel spektral afkodning af et audiosignal omfattende udfyldning af spektrale huller
US8566106B2 (en) 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
WO2009048239A2 (en) * 2007-10-12 2009-04-16 Electronics And Telecommunications Research Institute Encoding and decoding method using variable subband analysis and apparatus thereof
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8139777B2 (en) 2007-10-31 2012-03-20 Qnx Software Systems Co. System for comfort noise injection
CN101465122A (zh) 2007-12-20 2009-06-24 株式会社东芝 语音的频谱波峰的检测以及语音识别方法和系统
US20090319261A1 (en) 2008-06-20 2009-12-24 Qualcomm Incorporated Coding of transitional speech frames for low-bit-rate applications
KR101518532B1 (ko) 2008-07-11 2015-05-07 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 오디오 인코더, 오디오 디코더, 오디오 신호, 오디오 스트림을 부호화 및 복호화하는 장치 및 컴퓨터 프로그램
ATE539433T1 (de) 2008-07-11 2012-01-15 Fraunhofer Ges Forschung Bereitstellen eines zeitverzerrungsaktivierungssignals und codierung eines audiosignals damit
EP2328670B1 (en) 2008-08-26 2017-04-12 Huawei Technologies Co., Ltd. System and method for wireless communications
EP2182513B1 (en) 2008-11-04 2013-03-20 Lg Electronics Inc. An apparatus for processing an audio signal and method thereof
MY180550A (en) 2009-01-16 2020-12-02 Dolby Int Ab Cross product enhanced harmonic transposition
RU2519027C2 (ru) 2009-02-13 2014-06-10 Панасоник Корпорэйшн Устройство векторного квантования, устройство векторного обратного квантования и способы для этого
FR2947945A1 (fr) * 2009-07-07 2011-01-14 France Telecom Allocation de bits dans un codage/decodage d'amelioration d'un codage/decodage hierarchique de signaux audionumeriques
US9117458B2 (en) 2009-11-12 2015-08-25 Lg Electronics Inc. Apparatus for processing an audio signal and method thereof
WO2011110594A1 (en) 2010-03-10 2011-09-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio signal decoder, audio signal encoder, method for decoding an audio signal, method for encoding an audio signal and computer program using a pitch-dependent adaptation of a coding context
US9998081B2 (en) 2010-05-12 2018-06-12 Nokia Technologies Oy Method and apparatus for processing an audio signal based on an estimated loudness
US20120029926A1 (en) 2010-07-30 2012-02-02 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dependent-mode coding of audio signals
US9208792B2 (en) 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CUPERMAN V ET AL, "Structured vector quantization using linear transforms", IEEE TRANS. ON SIGNAL PROCESSING, June 2003 *

Also Published As

Publication number Publication date
JP5694531B2 (ja) 2015-04-01
EP3852104A1 (en) 2021-07-21
EP2599082B1 (en) 2020-11-25
KR20130069756A (ko) 2013-06-26
JP2013537647A (ja) 2013-10-03
EP2599081B1 (en) 2020-12-23
WO2012016128A3 (en) 2012-04-05
EP2599081A2 (en) 2013-06-05
ES2611664T3 (es) 2017-05-09
CN103038821B (zh) 2014-12-24
EP2599080A2 (en) 2013-06-05
JP5587501B2 (ja) 2014-09-10
CN103038822B (zh) 2015-05-27
US8831933B2 (en) 2014-09-09
JP2013534328A (ja) 2013-09-02
KR20130036364A (ko) 2013-04-11
HUE032264T2 (en) 2017-09-28
BR112013002166B1 (pt) 2021-02-02
US20120029924A1 (en) 2012-02-02
WO2012016110A3 (en) 2012-04-05
JP5694532B2 (ja) 2015-04-01
CN103052984A (zh) 2013-04-17
US9236063B2 (en) 2016-01-12
EP3021322B1 (en) 2017-10-04
KR101445509B1 (ko) 2014-09-26
EP2599082A2 (en) 2013-06-05
JP2013539548A (ja) 2013-10-24
EP2599080B1 (en) 2016-10-19
US20120029925A1 (en) 2012-02-02
JP2013532851A (ja) 2013-08-19
WO2012016128A2 (en) 2012-02-02
CN103038822A (zh) 2013-04-10
WO2012016122A2 (en) 2012-02-02
TW201214416A (en) 2012-04-01
KR20130036361A (ko) 2013-04-11
BR112013002166A2 (pt) 2016-05-31
WO2012016110A2 (en) 2012-02-02
US8924222B2 (en) 2014-12-30
KR20130037241A (ko) 2013-04-15
EP3852104B1 (en) 2023-08-16
US20120029926A1 (en) 2012-02-02
WO2012016122A3 (en) 2012-04-12
CN103052984B (zh) 2016-01-20
CN103038821A (zh) 2013-04-10
EP3021322A1 (en) 2016-05-18
CN103038820A (zh) 2013-04-10
WO2012016126A3 (en) 2012-04-12
WO2012016126A2 (en) 2012-02-02
KR101445510B1 (ko) 2014-09-26
US20120029923A1 (en) 2012-02-02

Similar Documents

Publication Publication Date Title
KR101442997B1 (ko) 멀티-스테이지 형상 벡터 양자화를 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR101445512B1 (ko) 잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR20200019164A (ko) 대역폭 확장신호 생성장치 및 방법
WO2008114078A1 (en) En encoder

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 6