KR101445512B1 - 잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체 - Google Patents

잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR101445512B1
KR101445512B1 KR1020137006753A KR20137006753A KR101445512B1 KR 101445512 B1 KR101445512 B1 KR 101445512B1 KR 1020137006753 A KR1020137006753 A KR 1020137006753A KR 20137006753 A KR20137006753 A KR 20137006753A KR 101445512 B1 KR101445512 B1 KR 101445512B1
Authority
KR
South Korea
Prior art keywords
audio signal
energy
locations
frequency domain
gain factor
Prior art date
Application number
KR1020137006753A
Other languages
English (en)
Other versions
KR20130030332A (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 KR20130030332A publication Critical patent/KR20130030332A/ko
Application granted granted Critical
Publication of KR101445512B1 publication Critical patent/KR101445512B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/028Noise substitution, i.e. substituting non-tonal spectral components by noisy source
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders

Landscapes

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

Abstract

스펙트럼의 코딩되지 않은 엘리먼트들에서 잡음을 주입하는 스킴은 코딩되지 않은 엘리먼트들의 로케이션들 사이에서의 오리지널 스펙트럼의 에너지의 분배의 측정에 따라 제어된다.

Description

잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체{SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR NOISE INJECTION}
35 U.S.C. §119 하의 우선권 주장
본 특허 출원은 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 코딩은 또한 강화된 가변 레이트 코덱 (2010년 1월자, EVRC, 제 3 세대 파트너쉽 프로젝트 2 (3GPP2) 문헌 C. S0014-D v2.0, 에서 표준화됨) 과 같은 일부 통신 표준들의 컴포넌트이다. G.718 코덱 ("Frame error robust narrowband and wideband embedded variable bit-rate coding of speech and audio from 8-32 kbit/s," 전기 통신 표준 섹터 (ITU-T), 제너바, 스위스, 2008년 6월, 2008년 11월 및 2009년 8월에 정정, 2009년 3월 및 2010년 3월에 보정됨) 은 MDCT 코딩을 사용하는 멀티-레이어 코덱의 일 예이다.
일반 구성에 따른 오디오 신호의 프로세싱 방법은 오디오 신호로부터의 정보에 기초하여 코드북의 복수의 엔트리들 중 하나를 선택하는 단계, 및 선택된 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의 주파수 도메인에서의 로케이션들을 결정하는 단계를 포함한다. 이 방법은 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지를 계산하는 단계, 결정된 주파수-도메인 로케이션들 중 오디오 신호의 에너지의 분배의 측정 값을 계산하는 단계, 및 상기 계산된 에너지 및 상기 계산된 값에 기초하여 잡음 주입 이득 팩터를 계산하는 단계를 포함한다. 피처들을 판독하는 머신으로 하여금 이러한 방법을 수행하게 하는유형의 피처들을 갖는 컴퓨터 판독가능 저장 매체 (예를 들어, 비일시적 매체) 가 또한 개시된다.
일반 구성에 따른 오디오 신호를 프로세싱하기 위한 장치는, 오디오 신호로부터의 정보에 기초하여, 코드북의 복수의 엔트리들 중 하나를 선택하기 위한 수단, 및 선택된 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의, 주파수 도메인에서의 로케이션들을 결정하기 위한 수단을 포함한다. 이 장치는, 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지를 계산하기 위한 수단, 결정된 주파수-도메인 로케이션들 중 오디오 신호의 에너지의 분배의 측정 값을 계산하기 위한 수단, 및 상기 계산된 에너지 및 상기 계산된 값에 기초하여, 잡음 주입 이득 팩터를 계산하기 위한 수단을 포함한다.
오디오 신호를 프로세싱하기 위한 장치는, 오디오 신호로부터의 정보에 기초하여, 코드북의 복수의 엔트리들 중 하나를 선택하도록 구성된 벡터 양자화기, 및 선택된 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의, 주파수 도메인에서의 로케이션들을 결정하도록 구성된 제로-값 검출기를 포함한다. 이 장치는, 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지를 계산하도록 구성된 에너지 계산기, 결정된 주파수-도메인 로케이션들 중 오디오 신호의 에너지의 분배의 측정 값을 계산하도록 구성된 희소성 계산기, 및 상기 계산된 에너지 및 상기 계산된 값에 기초하여, 잡음 주입 이득 팩터를 계산하도록 구성된 이득 팩터 계산기를 포함한다.
도 1 은 MDCT 동작을 위한 통상의 사인 윈도우 형상의 3 가지 예들을 나타낸다.
도 2 는 상이한 윈도우 함수 w(n) 의 일 예를 나타낸다.
도 3a 는 일반 구성에 따른 오디오 신호의 프로세싱의 방법 (M100) 의 블록도를 나타낸다.
도 3b 는 방법 (M100) 의 구현 (M110) 의 플로우차트를 나타낸다.
도 4a 내지 도 4c 는 이득-형상 벡터 양자화 구조들의 예들을 나타낸다.
도 5 는 펄스 인코딩 전 및 후에 입력 스펙트럼 벡터의 예를 나타낸다.
도 6a 는 스펙트럼 계수 에너지들의 저장된 세트의 서브세트의 예를 나타낸다.
도 6b 는 희소성 팩터의 값의 이득 조정 팩터의 값으로의 맵핑의 플롯을 나타낸다.
도 6c 는 특정 임계 값들에 대한 도 6b 의 맵핑의 플롯을 나타낸다.
도 7a 는 태스크 (T500) 의 이러한 구현 (T502) 의 플로우차트를 나타낸다.
도 7b 는 태스크 (T500) 의 구현 (T504) 의 플로우차트를 나타낸다.
도 7c 는 태스크들 (T502 및 T504) 의 구현 (T506) 의 플로우차트를 나타낸다.
도 8a 는 태스크 (T520) 의 예에 대한 클립핑 동작의 플롯을 나타낸다.
도 8b 는 특정 임계 값들에 대한 태스크 (T520) 의 예의 플롯을 나타낸다.
도 8c 는 태스크 (T520) 의 구현을 수행하도록 실행될 수도 있는 의사코드 리스팅을 나타낸다.
도 8d 는 잡음 주입 이득 팩터의 희소성-기반 변조를 수행하도록 실행될 수도 있는 의사코드 리스팅을 나타낸다.
도 8e 는 태스크 (T540) 의 구현을 수행하도록 실행될 수도 있는 의사코드 리스팅을 나타낸다.
도 9a 는 단조 감소 함수에 따라 LPC 이득 값 (데시벨 단위) 의 팩터 z 의 값으로의 맵핑의 예를 나타낸다.
도 9b 는 특정 임계 값에 대한 도 9a 의 맵핑의 플롯을 나타낸다.
도 9c 는 도 9a 에 도시된 맵핑의 상이한 구현의 예를 나타낸다.
도 9d 는 특정 임계 값에 대한 도 9c 의 맵핑의 플롯을 나타낸다.
도 10a 는 레퍼런스 프레임 및 타겟 프레임에서의 서브대역 로케이션들 간의 관계의 예를 나타낸다.
도 10b 는 일반 구성에 따른 잡음 주입의 방법 (M200) 의 플로우차트를 나타낸다.
도 10c 는 일반 구성에 따른 잡음 주입을 위한 장치 (MF200) 의 블록도를 나타낸다.
도 10d 는 다른 일반 구성에 따른 잡음 주입을 위한 장치 (A200) 의 블록도를 나타낸다.
도 11 은 저대역 오디오 신호에서 선택된 서브대역들의 예를 나타낸다.
도 12 는 고대역 오디오 신호에서 선택된 서브대역들 및 잔여 컴포넌트들의 예를 나타낸다.
도 13a 는 일반 구성에 따른 오디오 신호를 프로세싱하기 위한 장치 (MF100) 의 블록도를 나타낸다.
도 13b 는 다른 일반 구성에 따른 오디오 신호를 프로세싱하기 위한 장치 (A100) 의 블록도를 나타낸다.
도 14 는 인코더 (E20) 의 블록도를 나타낸다.
도 15a 내지 도 15e 는 인코더 (E100) 에 대한 애플리케이션들의 범위를 나타낸다.
도 16a 는 신호 분류의 방법 (MZ100) 의 블록도를 나타낸다.
도 16b 는 통신 디바이스 (D10) 의 블록도를 나타낸다.
도 17 은 핸드셋 (H100) 의 전면, 후면, 및 측면 뷰들을 나타낸다.
저장 또는 송신을 위한 신호 벡터들을 인코딩하는 시스템에서, 송신될 정보의 양을 최소화하면서 지각적 품질을 최대화하기 위해서 주입된 잡음의 이득, 스펙트럼 형상, 및/또는 특징을 적절히 조정하기 위해 잡음 주입 알고리즘을 포함하는 것이 바람직할 수도 있다. 예를 들어, (예를 들어, 주입될 잡음의 레벨을 제어하도록) 이러한 잡음 주입 스킴을 제어하도록 본원에 설명된 바와 같은 희소성 팩터를 적용하는 것이 바람직할 수도 있다. 이 점에서, 이들 신호들이 언더라잉 (underlying) 코딩 스킴에 의해 미리 잘-코딩된다는 것이 가정될 수도 있기 때문에 높은 음조 신호들 또는 다른 희박한 스펙트럼과 같은 잡음-형이 아닌 오디오 신호들에 잡음을 추가하는 것을 방지하도록 특히 주의하는 것이 바람직할 수도 있다. 유사하게, 코딩된 신호에 관하여 주입된 잡음의 스펙트럼을 성형하고, 또는 다르게는 그 스펙트럼 특징을 조정하는 것이 유리할 수도 있다.
문맥에 의해 명백히 제한되지 않는 한, 용어 "신호" 는 여기서 배선, 버스, 또는 다른 송신 매체 상에 표현된 메모리 로케이션 (또는 메모리 로케이션들의 세트) 의 상태를 포함하여, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "발생 (generating)" 은 여기서 컴퓨팅 또는 다르게는 생성 (producing) 과 같은, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "계산 (calculating)" 은 여기서 컴퓨팅, 평가, 평활화 및/또는 복수의 값들로부터의 선택과 같은, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "획득" 은 계산, 도출, (예를 들어, 외부 디바이스로부터) 수신 및/또는 (저장 엘리먼트들의 어레이로부터) 취출과 같은, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "선택" 은 둘 이상으로된 세트 중 적어도 하나, 및 전체 보다 적은 것을 식별, 표시, 적용, 및/또는 사용하는 것과 같은, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 용어 "포함 (comprising)" 이 본 상세한 설명 및 청구범위에서 사용되는 경우, 그것은 다른 엘리먼트들 또는 동작들을 배제하지 않는다. 용어 ("A 는 B 에 기초한다" 에서와 같은) "~ 에 기초하는" 은 다음의 경우들 (i) "~ 로부터 도출되는" (예를 들어 "B 는 A 의 전신이다") (ii) "~ 에 적어도 기초하는" (예를 들어, "A 는 B 에 적어도 기초하는"), 및 특정의 문맥에서 적절한 경우 (iii) "~ 와 동일한" (예를 들어, "A 는 B 와 동일하다") 을 포함하여, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 유사하게 용어 "~ 에 응답하여" 는 "~ 에 적어도 응답하여" 를 포함하여, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다.
달리 나타내지 않는 한, 용어 "시리즈 (series)" 는 2 개 이상의 아이템들의 시퀀스를 나타내기 위해 사용된다. 용어 "로그 (logarithm)" 는 베이스-10 의 로그를 나타내기 위해 사용되었지만, 이러한 연산의 다른 베이스들로의 확장들은 본 개시의 범위 내에 있다. 용어 "주파수 컴포넌트" 는, (예를 들면, 고속 푸리에 변환 (fast Fourier transform) 에 의해 생성된) 신호의 주파수 도메인 표시의 샘플 또는 신호의 서브대역 (예를 들면, 바크 스케일 (Bark scale) 또는 멜 스케일 (mel scale) 서브대역) 과 같은, 신호의 주파수들 또는 주파수 대역들의 세트 중 하나를 나타내기 위해 사용된다.
달리 나타내지 않는 한, 특정의 피처를 갖는 장치의 동작의 임의의 개시는 또한 유사성 피처를 갖는 방법을 개시하는 것으로 명백히 의도되고 (역도 성립), 특정의 구성에 따른 장치의 동작의 임의의 개시는 또한 유사성 구성에 따른 방법을 개시하는 것으로 명백히 의도된다 (역도 성립). 용어 "구성 (configuration)" 은 그의 특징의 문맥에 의해 표시된 방법, 장치, 및/또는 시스템을 참조하여 사용될 수도 있다. 용어들 "방법", "프로세스", "절차", 및 "기법" 은 특정의 문맥에 의해 달리 표시되지 않는 한 일반적으로 그리고 상호교환적으로 사용된다. 다수의 서브태스크들을 갖는 "태스크 (task)" 가 또한 방법이다. 용어들 "장치" 및 "디바이스" 는 또한 특정의 문맥에 의해 달리 표시되지 않는 한 일반적으로 그리고 상호교환적으로 사용된다. 용어들 "엘리먼트" 및 "모듈" 은 통상적으로 더 큰 구성의 일부를 나타내는데 사용된다. 문맥에 의해 명백히 제한되지 않는 한, 용어 "시스템" 은 여기서 "공통의 목적을 서빙하기 위해 상호작용하는 엘리먼트들의 그룹" 을 포함하여, 그 보통의 의미들 중 임의의 것을 나타내는데 사용된다. 문헌의 일부의 참조에 의한 임의의 통합은 그 일부 내에서 참조되는 용어들 또는 변수들의 정의들을, 그러한 정의들이 그 통합된 부분에서 참조되는 임의의 도면들 뿐아니라 그 문헌 내의 그 밖의 다른 곳에서 나타나는 곳에서 통합하는 것으로 이해되어야 한다.
여기에 설명된 시스템, 방법 및 장치는 일반적으로 주파수 도메인에서 오디오 신호들의 표현들을 코딩하는데 적용가능하다. 그러한 표현의 통상적인 예는 변환 도메인에서의 일련의 변환 계수들이다. 적합한 변환들의 예들은 사인곡선 유니터리 변환들과 같은 이산 직교 변환들을 포함한다. 적합한 사인곡선 유니터리 변환들의 예들은 제한 없이 이산 코사인 변환 (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, 및 5000 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 중 임의의 것에서 상한을 갖는 고대역에의 그러한 원리들의 적용이 또한 명백히 고려되고 여기에 개시된다. 고대역 신호가 (예를 들어, 리샘플링 및/또는 데시메이션을 통해) 코딩 프로세스의 초기 스테이지에서 낮은 샘플링 레이트로 통상 변환되지만, 그것은 고대역 신호로 남아있고 그것이 반송하는 정보는 고대역 오디오-주파수 범위를 계속 나타낸다.
본원에 설명된 바와 같은 잡음 주입 이득의 계산 및/또는 애플리케이션을 포함하는 코딩 스킴은 임의의 오디오 신호 (예를 들어, 스피치를 포함) 를 코딩하는데 적용될 수도 있다. 대안으로, 이러한 코딩 스킴은 단지 넌-스피치 오디오 (예를 들어, 음악) 에만 사용하는 것이 바람직할 수도 있다. 이러한 경우, 코딩 스킴은 오디오 신호의 각 프레임의 콘텐트의 유형을 결정하고 적합한 코딩 스킴을 선택하기 위해 분류 스킴과 함께 사용될 수도 있다.
본원에 설명된 바와 같은 잡음 주입 이득의 계산 및/또는 애플리케이션을 포함하는 코딩 스킴은 멀티-레이어 또는 멀티-스테이지 코덱에서 레이어 또는 스테이지로서 또는 프라이머리 코덱으로서 사용될 수도 있다. 이러한 일 예에서, 이러한 코딩 스킴은 오디오 신호의 주파수 콘텐트의 일부 (예를 들어, 저대역 또는 고대역) 를 코딩하는데 사용되고, 다른 코딩 스킴은 신호의 주파수 콘텐트의 다른 부분을 코딩하는데 사용된다. 다른 이러한 예에서, 이러한 코딩 스킴은 다른 코딩 레이어의 잔여분 (즉, 오리지널 신호와 인코딩된 신호 간의 에러) 을 코딩하는데 사용된다.
주파수 도메인에서의 신호의 표현으로서 오디오 신호를 프로세싱하는 것이 바람직할 수도 있다. 이러한 표현의 통상의 예는 변환 도메인에서 일련의 변환 계수들이다. 이러한 신호의 변환-도메인 표현은 시간 도메인에서 신호의 PCM (pulse-code modulation) 샘플들의 프레임 상에서 변환 동작 (예를 들어, FFT 또는 MDCT 동작) 을 수행함으로써 획득될 수도 있다. 변환-도메인 코딩은, 예를 들어 주파수 (예를 들어, 일 서브대역에서 다른 서브대역으로) 및/또는 시간 (예를 들어, 일 서브대역에서 다른 서브대역으로) 에 대한 신호의 서브대역들 중 에너지 스펙트럼의 상관을 이용하는 코딩 스킴들을 지원함으로써 코딩 효율성을 증가시키도록 도울 수도 있다. 프로세싱되는 오디오 신호는 입력 신호 (예를 들어, 스피치 및/또는 음악 신호) 상에서 다른 코딩 동작의 잔여분일 수도 있다. 이러한 일 예에서, 프로세싱되는 오디오 신호는 입력 오디오 신호 (예를 들어, 스피치 및/또는 음악 신호) 선형 예측 코딩 (LPC) 분석 동작의 잔여분이다.
본원에 설명된 바와 같은 방법들, 시스템들, 및 장치는 일련의 세그먼트들로서 오디오 신호를 프로세싱하도록 구성될 수도 있다. 세그먼트 (또는 "프레임") 는 통상적으로 약 5 또는 10 밀리초에서 약 40 또는 50 밀리초의 범위의 길이를 갖는 시간-도메인 세그먼트에 대응하는 변환 계수들의 블록일 수도 있다. 시간-도메인 세그먼트들은 오버랩 (예를 들어, 인접한 세그먼트들과 25% 또는 50% 오버랩) 하거나 오버랩하지 않을 수도 있다.
오디오 코더에서 고 품질 및 저 지연 양자 모두를 획득하는 것이 바람직할 수도 있다. 오디오 코더는 큰 프레임 사이즈를 사용하여 고 품질을 획득할 수도 있지만, 유감스럽게도 큰 프레임 사이즈는 통상적으로 긴 지연을 야기한다. 본원에 설명된 바와 같이 오디오 인코더의 잠재적 이점들은 짧은 프레임 사이즈들 (예를 들어, 10 밀리초 미리보기 (lookahead) 를 갖는 20 밀리초 프레임 사이즈) 을 갖는 고 품질 코딩을 포함한다. 일 특정 예에서, 시간-도메인 신호는 일련의 20 밀리초의 비오버랩핑 세그먼트들로 분할되고, 각 프레임에 대한 MDCT 는 10 밀리초만큼 인접한 프레임들 각각을 오버랩하는 40 밀리초 윈도우 위에 취해진다. 본원에 개시된 바와 같은 시스템, 방법, 또는 장치에 의해 프로세싱될 오디오 신호를 생성하는데 사용될 수도 있는 MDCT 변환 동작의 일 예는 상기 인용된 문헌 C.S0014-D v3.0 의 섹션 4.13.4 (Modified Discrete Cosine Transform (MDCT), pp. 4-134 내지 4-135) 에서 설명되고, 이 섹션은 MDCT 변환 동작의 예로서 참조로 포함된다.
본원에 설명된 바와 같은 방법, 시스템, 또는 장치에 의해 프로세싱된 바와 같은 세그먼트는 또한, 변환에 의해 생성된 바와 같은 블록, 이러한 블록 상에서 이전 동작에 의해 생성된 바와 같은 블록의 일부분일 수도 있다. 일 특정 예에서, 이러한 방법, 시스템, 또는 장치에 의해 프로세싱된 일련의 세그먼트들 (또는 "프레임들") 각각은 0 내지 4 kHz 의 저대역 주파수 범위를 나타내는 160 MDCT 계수들의 세트를 포함한다. 다른 특정 예에서, 이러한 방법, 시스템, 또는 장치에 의해 프로세싱된 일련의 프레임들 각각은 3.5 내지 7 kHz 의 고대역 주파수 범위를 나타내는 140 MDCT 계수들의 세트를 포함한다.
MDCT 코딩 스킴은 2 이상의 연속적인 프레임들에 대해 확장 (즉, 오버랩) 되는 인코딩 윈도우를 사용한다. M 의 프레임 길이에 대해, MDCT 는 2M 샘플들의 입력에 기초하여 M 계수들을 생성한다. 따라서, MDCT 코딩 스킴의 일 피처는 변환 윈도우가 인코딩된 프레임을 나타내는데 필요한 변환 계수들의 수를 증가시키지 않고 하나 이상의 프레임 경계들에 대해 확장되는 것을 허용하는 것이다.
M 개의 MDCT 계수들의 계산은
Figure 112013022809010-pct00001
Figure 112013022809010-pct00002
로서 표현될 수도 있고, 여기서 k= 0, 1, ... M-1 에 대해
Figure 112013022809010-pct00003
이다. 함수 w(n) 은 통상적으로, 조건
Figure 112013022809010-pct00004
을 만족하는 (또한, 프리센-브래들리 (Princen-Bradley) 조건으로 지칭됨) 윈도우이도록 선택된다. 대응하는 역 MDCT 동작은 n = 0, 1, 2M-1 에 대해
Figure 112013022809010-pct00005
로서 표현될 수도 있고, 여기서
Figure 112013022809010-pct00006
은 M 개의 수신된 MDCT 계수들이고
Figure 112013022809010-pct00007
은 2M 개의 디코딩된 샘플들이다.
도 1 은 MDCT 동작에 대한 통상의 사인곡선 윈도우 형상의 3 가지 예들을 나타낸다. 프리센-브래들리 조건을 만족하는 이 윈도우 형상은 0≤n<2M 에 대해
Figure 112013022809010-pct00008
으로서 표현될 수도 있고, 여기서 n = 0 은 현재 프레임의 제 1 샘플을 가리킨다. 도면에 도시된 바와 같이, 현재 프레임 (프레임 p) 을 인코딩하는데 사용된 MDCT 윈도우 (804) 는 프레임 p 및 프레임 (p+1) 에 대해 넌-제로 값들을 갖고, 그 외에는 제로 값이다. 이전 프레임 (프레임 (p-1)) 을 인코딩하는데 사용된 MDCT 윈도우 (802) 는 프레임 (p-1) 및 프레임 p 에 대해 넌-제로 값들을 갖고, 그 외에는 제로 값이며, 이어지는 프레임 (프레임 (p+1)) 을 인코딩하는데 사용된 MDCT 윈도우 (806) 는 비슷하게 배열된다. 디코더에서, 디코딩된 시퀀스들은 입력 시퀀스로서 동일한 방식으로 오버랩되고 추가된다. MDCT 가 오버랩 윈도우 함수를 사용하더라도, 오버랩-앤-추가 (overlap-and-add) 후에 프레임당 입력 샘플들의 수가 프레임당 MDCT 계수들의 수와 동일하기 때문에 그것은 임계적으로 샘플링된 필터 뱅크이다.
도 2 는 M 보다 짧은 미리보기 (lookahead) 간격을 허용하도록 (예를 들어, 도 1 에 예시된 함수 w(n) 대신에) 사용될 수도 있는 윈도우 함수 w(n) 의 일 예를 나타낸다. 도 2 에 도시된 특정 예에서, 미리보기 간격은 M/2 샘플들의 길이이지만, 이러한 기법은 L 개의 샘플들의 임의의 미리보기를 허용하도록 구현될 수도 있으며, 여기서 L 은 0 내지 M 의 임의의 값을 갖는다. 이 기법 (이것의 예들은 상기 참조로 포함된 문헌 C.S0014-D 의 섹션 4.13.4 에 설명되어 있음) 에서, MDCT 윈도우가 길이 (M-L)/2 의 제로-패드 영역들을 갖고 시작 및 종료하고, w(n) 은 프리센-브래들리 조건을 만족한다. 이러한 윈도우 함수의 일 구현은 다음과 같이 표현될 수도 있다:
Figure 112013022809010-pct00009
여기서
Figure 112013022809010-pct00010
은 현재 프레임 (p) 의 제 1 샘플이고
Figure 112013022809010-pct00011
은 다음 프레임 (p+1) 의 제 1 샘플이다. 이러한 기법에 따라 인코딩된 신호는 (양자화 및 수치 에러들의 부재 시) 완벽한 복원 특성을 유지한다. 경우 L = M 에 대해, 이 윈도우 함수는 도 1 에 예시된 것과 동일하고, 경우 L = 0 에 대해
Figure 112013022809010-pct00012
에 있어서 w(n) = 1 이며, 그 밖에는 오버랩이 없도록 0 이다.
주파수 도메인 (예를 들어, MDCT 또는 FFT 도메인) 에서 오디오 신호들을 코딩하는 경우, 특히 저 비트 레이트 및 고 샘플링 레이트에서, 코딩된 스펙트럼의 상당 부분들은 제로 에너지를 포함할 수도 있다. 이 결과는, 시작하기 위해 낮은 에너지를 갖는 경향이 있는, 하나 이상의 다른 코딩 동작들의 잔여분들인 신호들에 대해 특히 참 (true) 일 수도 있다. 이 결과는 또한, 오디오 신호들의 "핑크 잡음" 평균 형상 때문에 스펙트럼의 상위 주파수 부분들에서 특히 참일 수도 있다. 이들 영역들은 통상적으로 코딩되는 영역들보다 전체적으로 덜 중요하지만, 디코딩된 신호에서의 그 완전한 부재는 그럼에도 불구하고 성가신 인공물들, 일반적인 "느림 (dullness)" 및/또는 자연스러움의 부족을 초래한다.
오디오 신호들의 많은 실용적인 클래스에 대해, 이러한 영역들의 콘텐트는 잡음으로서 심리음향적으로 잘 모델링될 수도 있다. 따라서, 디코딩 동안 잡음을 신호에 주입함으로써 이러한 인공물들을 감소시키는 것이 바람직할 수도 있다. 비트의 최소 비용을 위해, 이러한 잡음 주입은 스펙트럼-도메인 오디오 코딩 스킴에 포스트-프로세싱 동작으로서 적용될 수 있다. 인코더에서, 이러한 동작은 코딩된 신호의 파라미터로서 인코딩되도록 적합한 잡음 주입 이득 팩터를 계산하는 것을 포함할 수도 있다. 디코더에서, 이러한 동작은 잡음 주입 이득 팩터에 따라 변조된 잡음을 갖는 입력 코딩된 신호의 엠프티 영역들을 채우는 것을 포함할 수도 있다.
도 3a 는 태스크들 (T100, T200, T300, T400, 및 T500) 을 포함하는 일반 구성에 따른 오디오 신호의 프로세싱 방법 (M100) 의 블록도를 나타낸다. 오디오 신호로부터의 정보에 기초하여, 태스크 (T100) 는 복수의 코드북의 엔트리들 중 하나를 선택한다. 스플릿 VQ 또는 멀티-스테이지 VQ 스킴에서, 태스크 (T100) 는 2 이상의 코드북들 각각으로부터 엔트리를 선택함으로써 신호 벡터를 양자화하도록 구성될 수도 있다. 태스크 (T200) 는 선택된 코드북 엔트리의 제로-값 (zero-valued) 엘리먼트들의 로케이션들 (또는, 하나 이상의 추가의 코드북 엔트리들에 기초한 신호와 같은 선택된 코드북 엔트리에 기초한 신호의 이러한 엘리먼트들의 로케이션) 을 주파수 도메인에서 결정한다. 태스크 (T300) 는 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지를 계산한다. 태스크 (T400) 는 오디오 신호 내에서 에너지의 분배의 측정 값을 계산한다. 계산된 에너지 및 계산된 에너지 분배 값에 기초하여, 태스크 (T500) 는 잡음 주입 이득 팩터를 계산한다. 방법 (M100) 은 통상적으로, 방법의 각 인스턴스가 오디오 신호의 각 프레임에 대해 (예를 들어, 변환 계수들의 각 블록에 대해) 실행하도록 구현된다. 방법 (M100) 은 (전체 대역폭, 또는 일부 서브대역에 걸친) 오디오 스펙트럼을 그 입력으로서 취하도록 구성될 수도 있다. 일 예에서, 방법 (M100) 에 의해 프로세싱된 오디오 신호는 LPC 잔여 도메인에서 UB-MDCT 스펙트럼이다.
오디오 신호의 프레임에 대한 변환 계수들의 세트를 벡터로서 프로세싱함으로써 오디오 신호의 코딩된 버전을 생성하도록 태스크 (T100) 을 구성하는 것이 바람직할 수도 있다. 예를 들어, 태스크 (T100) 는 벡터 양자화 (VQ) 스킴을 수행하도록 구현될 수도 있고, 이 스킴은 그것을 (또한, 디코더로도 알려져 있는) 코드북의 엔트리에 매칭시킴으로써 벡터를 인코딩한다. 종래의 VQ 스킴에서, 코드북은 벡터들의 테이블이고, 이 테이블 내의 선택된 엔트리의 인덱스는 벡터를 표현하도록 사용된다. 코드북에서의 엔트리들의 최대 수를 결정하는, 코드북 인덱스의 길이는 애플리케이션에 적합한 것으로 여겨지는 어느 임의의 정수일 수도 있다. 펄스-코딩 VQ 스킴에서, (코드북 인덱스로도 지칭될 수도 있는) 선택된 코드북 엔트리는 펄스들의 특정 패턴을 설명한다. 펄스 코딩의 경우에서, 엔트리 (또는 인덱스) 의 길이는 대응하는 패턴에서의 펄스들의 최대 수를 결정한다. 스플릿 VQ 또는 멀티-스테이지 VQ 스킴에서, 태스크 (T100) 는 2 이상의 코드북들 각각으로부터 엔트리를 선택함으로써 신호 벡터를 양자화하도록 구성될 수도 있다.
이득-형상 벡터 양자화는, 형상으로 표현되는 벡터 방향으로부터 이득 팩터로 표현되는 벡터 에너지를 디커플링함으로써 (예를 들어, 오디오 또는 이미지 데이터를 나타내는) 신호 벡터들을 효율적으로 인코딩하는데 사용될 수도 있는 코딩 기법이다. 이러한 기법은 특히, 오디오 신호들 (예를 들어, 스피치 및/또는 음악에 기초한 신호들) 의 코딩과 같이 신호의 동적 범위가 클 수도 있는 애플리케이션에 적합할 수도 있다.
이득-형상 벡터 양자화기 (gain-shape vector quantizer; GSVQ) 는 신호 벡터 (x) 의 형상 및 이득을 개별적으로 인코딩한다. 도 4a 는 이득-형상 벡터 양자화 동작의 예를 나타낸다. 이 예에서, 형상 양자화기 (SQ100) 는 (예를 들어, 평균 제곱 오차 의미에서) 신호 벡터 (x) 와 코드북에서 가장 가까운 벡터로서 양자화된 형상 벡터 (
Figure 112013022809010-pct00013
) 를 코드북으로부터 선택하고 벡터 (
Figure 112013022809010-pct00014
) 에 대한 인덱스를 코드북에서 출력함으로써 VQ 스킴을 수행하도록 구성된다. 놈 계산기 (NC10) 는 신호 벡터 (x) 의 놈 ∥x∥을 계산하도록 구성되고, 이득 양자화기 (GQ10) 는 놈을 양자화하여 양자화된 이득 팩터를 생성하도록 구성된다. 이득 양자화기 (GQ10) 는 놈을 스칼라 (scalar) 로서 양자화하도록 구성되고, 또는 다른 이득들을 갖는 놈 (예를 들어, 복수의 벡터들 중 다른 것들로부터의 놈들) 을 벡터 양자화를 위한 이득 벡터로 조합하도록 구성될 수도 있다.
형상 양자화기 (SQ100) 는 통상적으로, 코드북 벡터들이 유닛 놈을 갖는다는 (즉, 유닛 초구 상의 모든 포인트들임) 제약을 갖고 벡터 양자화기로서 구현된다. 이 제약은 (예를 들어, 평균 제곱 오차 계산에서 내적 연산으로) 코드북 검색을 단순화한다. 예를 들어, 형상 양자화기 (SQ100) 는 arg maxk (xTSk) 와 같은 연산에 따라, K 개의 유닛-놈 벡터들 Sk (k = 0, 1, ... , K-1) 의 코드북 중에서 벡터 (
Figure 112013022809010-pct00015
) 를 선택하도록 구성될 수도 있다. 이러한 검색은 완전하거나 최적화될 수도 있다. 예를 들어, 벡터들은 특정 검색 전략을 지원하도록 코드북 내에 배열될 수도 있다.
일부 경우들에서, (예를 들어, 특정 코드북 검색 전략을 인에이블하도록) 형상 양자화기 (SQ100) 에 대한 입력을 유닛-놈으로 제약하는 것이 바람직할 수도 있다. 도 4b 는 이득-형상 벡터 양자화 연산의 이러한 예를 나타낸다. 이 예에서, 노멀라이저 (NL10) 는 벡터 놈 ∥x∥ 및 유닛-놈 형상 벡터 S = x/∥x∥ 를 생성하기 위해 신호 벡터 (x) 를 정규화하도록 구성되고, 형상 양자화기 (SQ100) 는 형상 벡터 (S) 를 그 입력으로서 수신하도록 구성된다. 이러한 경우에서, 형상 양자화기 (SQ100) 는 arg maxk (STSk) 와 같은 연산에 따라 K 개의 유닛-놈 벡터들 Sk (k = 0, 1, ... , K-1) 의 코드북 중에서 벡터 (
Figure 112013022809010-pct00016
) 를 선택하도록 구성될 수도 있다.
대안으로, 형상 양자화기는 입력 펄스들의 패턴들의 코드북 중에서 코딩된 벡터를 선택하도록 구성될 수도 있다. 도 4c 는 이득-형상 벡터 양자화 연산의 예를 나타낸다. 이 경우, 양자화기 (SQ200) 는 스케일링된 형상 벡터 Ssc 에 가장 가까운 (예를 들어, 평균 제곱 오차 의미에서 가장 가까운) 패턴을 선택하도록 구성된다. 이러한 패턴은 통상적으로, 패턴에서 각각 차지하는 위치에 대한 사인 및 펄스들의 수를 나타내는 코드북 엔트리로서 인코딩된다. 패턴을 선택하는 것은 형상 벡터 Ssc 및 대응하는 스칼라 스케일 팩터 gsc 를 획득하기 위해 신호 벡터를 (예를 들어, 스케일러 (SC10) 에서) 스케일링하고, 그 후 스케일링된 형상 벡터 Ssc 를 패턴에 매칭시키는 것을 포함할 수도 있다. 이 경우, 스케일러 (SC10) 는 (각 엘리먼트를 가장 가까운 정수로 라운딩한 후) Ssc 의 엘리먼트들의 절대 값들의 합이 원하는 값 (예를 들어, 23 또는 28) 에 근사하도록 스케일링된 형상 벡터 (Ssc) 를 생성하기 위해 신호 벡터 (x) 를 스케일링하도록 구성될 수도 있다. 대응하는 역양자화된 신호 벡터는 선택된 패턴을 정규화하도록 결과의 스케일 팩터 (gsc) 를 사용함으로써 생성될 수도 있다. 이러한 패턴들을 인코딩하기 위한 형상 양자화기 (SQ200) 에 의해 수행될 수도 있는 펄스 코딩 스킴들의 예들은 계승식 펄스 코딩 및 결합식 펄스 코딩을 포함한다. 본원에 설명된 시스템, 방법, 또는 장치 내에서 수행될 수도 있는 펄스-코딩 벡터 양자화 연산의 일 예는 상기 인용된 문헌 C.S0014-D v3.0 의 섹션들 4.13.5 (MDCT Residual Line Spectrum Quantization, pp. 4-135 내지 4-137) 및 4.13.6 (Global Scale Factor Quantization, p. 4-137) 에서 설명되고, 이 섹션들은 이에 의해 태스크 (T100) 의 구현의 일 예로서 참조로 포함된다.
도 5 는 펄스 인코딩 전 및 후에 입력 스펙트럼 벡터 (예를 들어, MDCT 스펙트럼) 의 예를 나타낸다. 이 예에서, 각 차원에서 그 오리지널 값이 솔리드 라인으로 표시되는 30 차원 벡터는 코딩된 스펙트럼을 나타내는 도트들 및 제로-값 엘리먼트들을 나타내는 스퀘어들로 도시된 바와 같이, 펄스들의 패턴 (0, 0, -1, -1, +1, +2, -1, 0, 0, +1, -1, -1, +1, -1, +1, -1, -1, +2, -1, 0, 0, 0, 0, -1, +1, +1, 0, 0, 0, 0) 으로 표현된다. 이 펄스들의 패턴은 통상적으로, 30 비트들보다 매우 적은 코드북 엔트리 (또는 인덱스) 로 표현될 수 있다.
태스크 (T200) 는 코딩된 스펙트럼에서 제로-값 엘리먼트들의 로케이션들을 결정한다. 일 예에서, 태스크 (T200) 는 다음과 같은 표현식에 따라 제로 검출 마스크를 생성하도록 구현된다:
Figure 112013022809010-pct00017
(1)
여기서, Zd 는 제로 검출 마스크이고 XC 는 코딩된 입력 스펙트럼 벡터를 나타내며, k 는 샘플 인덱스를 나타낸다. 도 5 에 도시된 코딩된 예에 대해, 이러한 마스크는 폼 {1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,1,1,1,1} 를 갖는다. 이 경우에서, 오리지널 벡터의 40 퍼센트 (30 개의 엘리먼트들 중 12 개) 는 제로-값 엘리먼트들로서 코딩된다.
신호의 주파수 범위의 서브대역 내에서 제로-값 엘리먼트들의 로케이션들을 나타내도록 태스크 (T200) 를 구성하는 것이 바람직할 수도 있다. 이러한 일 예에서, XC 는 0 내지 4 kHz 의 저대역 주파수 범위를 나타내는 160 개의 MDCT 계수들의 벡터이고, 태스크 (T200) 는 다음과 같은 표현식에 따라 제로 검출 마스크를 생성하도록 구현된다:
Figure 112013022809010-pct00018
(2)
(예를 들어, 1000 내지 3600 Hz 의 주파수 범위에 걸쳐 제로-값 엘리먼트들의 검출을 위해).
태스크 (T300) 는 (예를 들어, 제로 검출 마스크에 의해 나타낸 바와 같이) 태스크 (T200) 에서 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지를 계산한다. 이들 로케이션들에서 입력 스펙트럼은 또한, "코딩되지 않은 입력 스펙트럼" 또는 "입력 스펙트럼의 코딩되지 않은 영역들" 로서 지칭될 수도 있다. 통상의 예에서, 태스크 (T300) 는 이들 로케이션들에서 오디오 신호의 값들의 제곱들의 합으로서 에너지를 계산하도록 구성된다. 도 5 에 예시된 경우에 대해, 태스크 (T300) 는 스퀘어들로 마킹되는 주파수-도메인 로케이션들에서 입력 스펙트럼의 값들의 제곱들의 합으로서 에너지를 계산하도록 구성될 수도 있다. 이러한 계산은 다음과 같은 표현식에 따라 수행될 수도 있다:
Figure 112013022809010-pct00019
, 여기서 K 는 입력 벡터 (X) 의 길이를 나타낸다. 추가의 예에서, 이 합산은 (예를 들어, 범위 40≤ k≤ 143 에 걸쳐) 태스크 (T200) 에서 제로 검출 마스크가 계산되는 서브대역에 제한된다. 복소 값 계수들을 생성하는 변환의 경우에서, 에너지는 태스크 (T200) 에 의해 결정된 로케이션들에서 오디오 신호의 값들의 크기들의 제곱들의 합으로서 계산될 수도 있는 것으로 이해될 것이다.
코딩되지 않은 스펙트럼 내 (즉, 오디오 신호의 결정된 주파수-도메인 로케이션들 중) 의 에너지의 분배의 측정에 기초하여, 태스크 (T400) 는 대응하는 희소성 팩터를 계산한다. 태스크 (T400) 는 (예를 들어, 태스크 (T300) 에 의해 계산된 바와 같은) 코딩되지 않은 스펙트럼의 총 에너지와 코딩되지 않은 스펙트럼의 계수들의 서브세트의 총 에너지 간의 관계에 기초하여 희소성 팩터를 계산하도록 구성될 수도 있다. 이러한 일 예에서, 서브세트는 코딩되지 않은 스펙트럼에서 최상위 에너지를 갖는 계수들 중에서 선택된다. 이들 값들 (예를 들어, (서브세트의 에너지)/(코딩되지 않은 스펙트럼의 총 에너지)] 간의 관계가 코딩되지 않은 스펙트럼의 에너지가 집중 또는 분배되는 정도를 나타내는 것으로 이해될 수도 있다.
일 예에서, 태스크 (T400) 는 (예를 들어, 태스크 (T300) 에 의해 계산된 바와 같은) 코딩되지 않은 입력 스펙트럼의 총 에너지로 나누어진, 코딩되지 않은 입력 스펙트럼의 LC 최상위 에너지 계수들의 에너지들의 합으로서 희소성 팩터를 계산한다. 이러한 계산은 코딩되지 않은 입력 스펙터럼 벡터의 엘리먼트들의 에너지들을 내림 차순으로 소팅하는 것을 포함할 수도 있다. LC 는 코딩되지 않은 입력 스펙트럼 벡터에서 계수들의 총 수의 약 5, 6, 7, 8, 9, 10, 15 또는 20 퍼센트의 값을 갖는 것이 바람직할 수도 있다. 도 6a 는 LC 최상위-에너지 계수들을 선택하는 예를 예시한다.
LC 에 대한 값들의 예들은 5, 10, 15, 및 20 을 포함한다. 일 특정 예에서, LC 는 10 과 동일하고, 고대역 입력 스펙트럼 벡터의 길이는 140 (대안으로, 저대역 입력 스펙트럼 벡터의 길이는 144) 이다. 본원에 설명된 예들에서, 태스크 (T400) 는 0 (예를 들어, 에너지 없음) 내지 1 의 스케일 상에서 희소성 팩터를 계산하지만 (예를 들어, 모든 에너지는 LC 최상위-에너지 계수들에 집중됨), 당업자는 이들 원리들도 본원의 설명도 이러한 제약에 한정되지 않음을 인식할 것이다.
일 예에서, 태스크 (T400) 는 다음과 같은 표현식에 따라 희소성 팩터를 계산하도록 구현된다:
Figure 112013022809010-pct00020
(3)
여기서, β는 희소성 팩터를 나타내고 K 는 입력 벡터 (X) 의 길이를 나타낸다 (이러한 경우, 표현식 (3) 에서 함수의 분모는 태스크 (T300) 으로부터 획득될 수도 있음). 추가의 예에서, LC 계수들이 선택되는 풀 (pool), 및 표현식 (3) 의 분모의 합은 제로 검출 마스크가 (예를 들어, 범위 40 ≤ k≤ 143 에 걸쳐) 태스크 (T200) 에서 계산되는 서브대역에 제한된다.
다른 예에서, 태스크 (T400) 는 그 에너지 합이 코딩되지 않은 스펙트럼의 총 에너지의 지정된 부분 (예를 들어, 코딩되지 않은 스펙트럼의 총 에너지의 5, 10, 12, 15, 20, 25, 또는 30 퍼센트) 을 초과하는 코딩되지 않은 스펙트럼의 최상위-에너지 계수들의 수에 기초하여 희소성 팩터를 계산하도록 구현된다. 이러한 계산은, (예를 들어, 범위 40 ≤ k ≤ 143 에 걸쳐) 태스크 (T200) 에서 제로 검출 마스크가 계산되는 서브대역에 제한될 수도 있다.
태스크 (T500) 는 태스크 (T300) 에 의해 계산된 바와 같은 코딩되지 않은 입력 스펙트럼의 에너지에 기초하여 그리고 태스크 (T400) 에 의해 계산된 바와 같은 코딩되지 않은 입력 스펙트럼의 희소성 팩터에 기초하여 잡음 주입 이득 팩터를 계산한다. 태스크 (T500) 는 결정된 주파수-도메인 로케이션들에서 계산된 에너지에 기초하여 잡음 주입 이득 팩터의 초기 값을 계산하도록 구성될 수도 있다. 이러한 일 예에서, 태스크 (T500) 는 다음과 같은 표현식에 따라 잡음 주입 이득 팩터의 초기 값을 계산하도록 구현된다:
Figure 112013022809010-pct00021
(4)
여기서
Figure 112013022809010-pct00022
는 잡음 주입 이득 팩터를 나타내고, K 는 입력 벡터 (X) 의 길이를 나타내며, α 는 1 보다 크지 않은 값 (예를 들어, 0.8 또는 0.9) 을 갖는 팩터이다. (이러한 경우에서, 표현식 (4) 의 분수의 분자는 태스크 (T300) 로부터 획득될 수도 있다). 추가의 예에서, 표현식 (4) 의 합은, (예를 들어, 범위 40 ≤ k≤ 143 에 걸쳐) 태스크 (T200) 에서 제로 검출 마스크가 계산되는 서브대역에 제한된다.
희소성 팩터가 높은 값을 갖는 경우 (즉, 코딩되지 않은 스펙트럼이 잡음-형이 아닌 경우), 잡음 이득을 감소시키는 것이 바람직할 수도 있다. 태스크 (T500) 는 이득 팩터의 값이 희소성 팩터가 증가함에 따라 감소하도록 희소성 팩터를 사용하여 잡음 주입 이득 팩터를 변조하도록 구성될 수도 있다. 도 6b 는 단조 감소 함수에 따라 이득 조정 팩터 (f1) 의 값에의 희소성 팩터의 값 (β) 의 맵핑의 플롯을 나타낸다. 이러한 변조는 잡음 주입 이득 팩터 (
Figure 112013022809010-pct00023
) 의 계산에 포함될 수도 있고 (예를 들어, 잡음 주입 이득 팩터를 생성하기 위해 상기 표현식 (4) 의 우측에 적용될 수도 있고), 또는 팩터 (f1) 는
Figure 112013022809010-pct00024
와 같은 표현식에 따라 잡음 주입 이득 팩터 (
Figure 112013022809010-pct00025
) 의 초기 값을 업데이트하는데 사용될 수도 있다.
도 6b 에 도시된 특정 예는 지정된 하위 임계 값 (L) 보다 작은 희소성 팩터 값에 대해 변하지 않는 이득 값을 패스하고, L 과 지정된 상위 임계 값 (B) 사이의 희소성 팩터 값들에 대한 이득 값을 선형적으로 감소시키며, B 보다 큰 희소성 팩터 값들에 대해 이득 값을 0 으로 클립핑 (clip) 한다. 이 플롯 아래의 라인은, 희소성 팩터의 낮은 값들이 에너지 집중의 낮은 정도 (예를 들어, 더 많이 분배된 에너지 스펙트럼) 를 나타내고, 희소성 팩터의 높은 값들이 높은 정도의 에너지 집중 (예를 들어, 음조 (tonal) 신호) 을 나타낸다는 것을 예시한다. 도 6c 는 L = 0.5 및 B = 0.7 의 값들에 대한 이 예를 나타낸다 (여기서, 희소성 팩터의 값은 범위 [0,1] 인 것으로 가정된다). 이들 예들은 또한, 감소가 비선형적이도록 구현될 수도 있다. 도 8d 는 도 6c 에 도시된 맵핑에 따라 잡음 주입 이득 팩터의 희소성-기반 변조를 수행하도록 실행될 수도 있는 의사코드 리스팅 (listing) 을 나타낸다.
작은 수의 비트들을 사용하여 희소성-변조된 잡음 주입 이득 팩터를 양자화하고 양자화된 팩터를 프레임의 사이드 정보로서 송신하는 것이 바람직할 수도 있다. 도 3b 는 태스크 (T500) 에 의해 생성된 변조된 잡음 주입 이득 팩터를 양자화하는 태스크 (T600) 를 포함하는 방법 (M100) 의 구현 (M110) 의 플로우차트를 나타낸다. 예를 들어, 태스크 (T600) 는 스칼라 양자화기 (예를 들어, 3-비트 스칼라 양자화기) 를 사용하여 로그 스케일 (예를 들어, 데시벨 스케일) 상에서 잡음 주입 이득 팩터를 양자화하도록 구성될 수도 있다.
태스크 (T500) 는 또한, 그 자신의 크기에 따라 잡음 주입 이득 팩터를 변조하도록 구성될 수도 있다. 도 7a 는 서브태스크들 (T510, T520, 및 T530) 을 포함하는 태스크 (T500) 의 이러한 구현 (T502) 의 플로우차트를 나타낸다. 태스크 (T510) 는 (예를 들어, 표현식 (4) 를 참조하여 전술된 바와 같이) 잡음 주입 이득 팩터에 대한 초기 값을 계산한다. 태스크 (T520) 는 초기 값에 대해 저-이득 클립핑 동작을 수행한다. 예를 들어, 태스크 (T520) 는 지정된 임계 값 미만인 이득 팩터의 값들을 0 으로 감소시키도록 구성될 수도 있다. 도 8a 는 임계 값 c 미만의 이득 값들을 0 으로 클립핑하고, c 내지 d 의 범위에서의 값들을 0 내지 d 의 범위로 선형적으로 맵핑하며, 변화없이 상위 값들을 패스하는 태스크 (T520) 의 예에 대한 이러한 동작의 플롯을 나타낸다. 도 8b 는 값들 c = 200, d = 400 에 대한 태스크 (T520) 의 특정 예를 나타낸다. 이들 예들은 또한, 맵핑이 비선형적이도록 구현될 수도 있다. 태스크 (T530) 는 (예를 들어, 전술된 바와 같이 이득 조정 팩터 (f1) 를 적용하여 클립핑된 팩터를 업데이트함으로써) 태스크 (T520) 에 의해 생성된 클립핑된 이득 팩터에 희소성 팩터를 적용한다. 도 8c 는 도 8b 에 도시된 맵핑에 따라 태스크 (T520) 를 수행하도록 실행될 수도 있는 의사코드 리스팅을 나타낸다. 당업자는, 태스크 (T500) 가 또한 태스크들 (T520 및 T530) 의 시퀀스가 반전되도록 (즉, 태스크 (T530) 가 태스크 (T510) 에 의해 생성된 초기 값 상에서 수행되고 태스크 (T520) 가 태스크 (T530) 의 결과 상에서 수행되도록) 구현될 수도 있음을 인식할 것이다.
본원에 언급된 바와 같이, 방법 (M100) 에 의해 프로세싱된 오디오 신호는 입력 신호의 LPC 분석의 잔여분일 수도 있다. LPC 분석의 결과로서, 디코더에서 대응하는 LPC 합성에 의해 생성된 바와 같은 디코딩된 출력 신호는 입력 신호보다 웅장하거나 부드러울 수도 있다. 입력 신호의 LPC 합성에 의해 생성된 계수들의 세트 (예를 들어, 반사 계수들 또는 필터 계수들의 세트) 는, 일반적으로 얼마나 많은 웅장하거나 부드러운 신호가 디코더에서 합성 필터를 통과하게 되는 것으로 예상될 수 있는지를 나타내는 LPC 이득을 계산하는데 사용될 수도 있다.
일 예에서, LPC 이득은 LPC 합성에 의해 생성된 반사 계수들의 세트에 기초한다. 이러한 경우에서, LPC 이득은
Figure 112013022809010-pct00026
와 같은 표현식에 따라 계산될 수도 있고, 여기서 ki 는 i 번째 반사 계수이고 p 는 LPC 분석의 오더이다. 다른 예에서, LPC 이득은 LPC 분석에 의해 생성된 필터 계수들의 세트에 기초한다. 이러한 경우, LPC 이득은 (예를 들어, LPC 이득 계산의 예로써 참조로서 포함되는, 상기에서 인용된 문헌 C.S0014-D v3.0 의 섹션 4.6.1.2 (Generation of Spectral Transition Indicator (LPCFLAG), p. 4-40) 에 설명된 바와 같은) LPC 분석 필터의 임펄스 응답의 에너지로서 계산될 수도 있다.
LPC 이득이 증가하는 경우, 잔여 신호에 주입된 잡음이 또한 증폭될 것으로 예상될 수도 있다. 더욱이, 높은 LPC 신호는 통상적으로 신호가 잡음-형 보다는 매우 상관된다 (예를 들어, 음조) 는 것을 나타내고, 이러한 신호의 잔여분에 주입된 잡음을 추가하는 것은 부적합할 수도 있다. 이러한 경우에서, 입력 신호는 스펙트럼이 잔여 도메인에서 비-희박한 것으로 나타나더라도 강한 음조일 수도 있어서, 높은 LPC 이득은 음조성 (tonality) 의 표시로서 고려될 수도 있다.
입력 오디오 스펙트럼과 연관된 LPC 이득의 값에 따라 잡음 주입 이득 팩터의 값을 변조하도록 태스크 (T500) 를 구현하는 것이 바람직할 수도 있다. 예를 들어, LPC 이득이 증가할 때 잡음 주입 이득 팩터의 값을 감소시키도록 태스크 (T500) 를 구성하는 것이 바람직할 수도 있다. 태스크 (T520) 의 저-이득 클립핑에 추가하여 또는 이에 대안으로 수행될 수도 있는, 잡음 주입 이득 팩터의 이러한 LPC 이득-기반 제어는 LPC 이득에서의 프레임-대-프레임 변형들을 평활화하는 것 (smooth out) 을 도울 수도 있다.
도 7b 는 서브태스크들 (T510, T530, 및 T540) 을 포함하는 태스크 (T500) 의 구현 (T504) 의 플로우차트를 나타낸다. 태스크 (T540) 는 태스크 (T530) 에 의해 생성된 변조된 잡음 주입 이득 팩터에 LPC 이득에 기초한 조정을 수행한다. 도 9a 는 단조 감소 함수에 따라 팩터 z 의 값에의 LPC 이득 값 gLPC (데시벨 단위) 의 맵핑의 예를 나타낸다. 이 예에서, 팩터 z 는 LPC 이득이 u 보다 작은 경우 0 의 값을 갖고, 그 외에는 (2 - gLPC) 의 값을 갖는다. 이러한 경우에서, 태스크 (T540) 는
Figure 112013022809010-pct00027
Figure 112013022809010-pct00028
와 같은 표현식에 따라 태스크 (T530) 에 의해 생성된 잡음 주입 이득 팩터를 조정하도록 구현될 수도 있다. 도 9b 는 u 의 값이 2 인 특정 예에 대한 이러한 맵핑의 플롯을 나타낸다.
도 9c 는 도 9a 에 도시된 맵핑의 상이한 구현의 예를 나타내고, 여기서 LPC 이득 값 gLPC (데시벨 단위) 은 단조 감소 함수에 따라 이득 조정 팩터 (f2) 의 값에 맵핑되고, 도 9d 는 u 의 값이 2 인 특정 예에 대한 이러한 맵핑의 플롯을 나타낸다. 도 9c 및 도 9d 에서 플롯들의 축은 로그이다. 이러한 경우, 태스크 (T540) 는
Figure 112013022809010-pct00029
과 같은 표현식에 따라 태스크 (T530) 에 의해 생성된 잡음 주입 이득 팩터를 조정하도록 구현될 수도 있고, 여기서 LPC 이득이 2 보다 큰 경우 f2 의 값은
Figure 112013022809010-pct00030
이고, 그 외에는 1 이다. 도 8e 는 도 9b 및 도 9d 에 도시된 바와 같은 맵핑에 따라 태스크 (T540) 를 수행하도록 실행될 수도 있는 의사코드 리스팅을 나타낸다. 당업자는 태스크 (T500) 가 또한 태스크들 (T530 및 T540) 의 시퀀스가 반전되도록 (즉, 태스크 (T540) 가 태스크 (T510) 에 의해 생성된 초기 값 상에서 수행되고 태스크 (T530) 가 태스크 (T540) 의 결과 상에서 수행되도록) 구현될 수도 있음을 인식할 것이다. 도 7c 는 서브태스크들 (T510, T520, T530, 및 T540) 을 포함하는 태스크들 (T502 및 T504) 의 구현 (T506) 의 플로우차트를 나타낸다. 당업자는 태스크 (T500) 가 또한, 태스크들 (T520, T530, 및/또는 T540) 이 상이한 시퀀스로 수행되어 (예를 들어, 태스크 (T540) 는 태스크 (T520 및/또는 T530) 의 업스트림에서 수행되고, 및/또는 태스크 (T530) 는 태스크 (T520) 의 업스트림에서 수행되어) 구현될 수도 있음을 인식할 것이다.
도 10b 는 서브태스크들 (TD100, TD200, 및 TD300) 을 포함하는 일반 구성에 따라 잡음 주입의 방법 (M200) 의 플로우차트를 나타낸다. 이러한 방법은, 예를 들어 디코더에서 수행될 수도 있다. 태스크 (TD100) 는 입력 코딩된 스펙트럼에서 엠프티 엘리먼트들의 수와 동일한 길이의 잡음 벡터 (예를 들어, 독립적으로 동등하게 분배된 (i.i.d.) 가우시안 잡음의 벡터) 를 획득 (예를 들어, 생성) 한다. 디코더에서 생성되는 동일한 잡음 벡터가 또한 (예를 들어, 코딩된 신호의 폐-루프 분석을 지원하도록) 인코더에서 생성될 수도 있도록 결정론적 함수에 따라 잡음 벡터를 생성하도록 태스크 (TD100) 를 구성하는 것이 바람직할 수도 있다. 예를 들어, (예를 들어, 태스크 (TD100) 에 의해 생성된 코드북 인덱스로) 인코딩된 신호로부터 값들을 갖고 시드 (seed) 되는 랜덤 수 생성기를 사용하여 잡음 벡터를 생성하도록 태스크 (TD100) 를 구현하는 것이 바람직할 수도 있다.
태스크 (TD100) 는 잡음 벡터를 정규화하도록 구성될 수도 있다. 예를 들어, 태스크 (TD100) 는 1 과 동일한 놈 (즉, 제곱들의 합) 을 갖도록 잡음 벡터를 스케일링하도록 구성될 수도 있다. 태스크 (TD100) 는 또한, 일부 사이드 정보 (예컨대, 프레임의 LPC 파라미터들) 로부터 또는 입력 코딩된 스펙트럼으로부터 직접 도출될 수도 있는 함수 (예를 들어, 스펙트럼 가중 함수) 에 따라 잡음 벡터 상에서 스펙트럼 성형 동작을 수행하도록 구성될 수도 있다. 예를 들어, 태스크 (TD100) 는 가우시안 잡음 벡터에 스펙트럼 성형 커브를 적용하고, 결과를 정규화하여 유닛 에너지를 갖도록 구성될 수도 있다.
잡음 벡터의 원하는 스펙트럼 틸트를 유지하기 위해 스펙트럼 성형을 수행하는 것이 바람직할 수도 있다. 일 예에서, 태스크 (TD100) 는 잡음 벡터에 포먼트 필터를 적용함으로써 스펙트럼 성형을 수행하도록 구성된다. 이러한 동작은 LPC 필터 계수들에 의해 나타난 바와 같이 스펙트럼 피크들 주변에 더 많은 잡음을 집중시키고 스펙트럼 밸리에서는 더 많이 집중시키지 않으며, 이는 지각적으로 약간 바람직할 수도 있다.
태스크 (TD200) 는 잡음 벡터에 역양자화된 잡음 주입 이득 팩터를 적용한다. 예를 들어, 태스크 (TD200) 는 태스크 (T600) 에 의해 양자화된 잡음 주입 이득 팩터를 역양자화하고 역양자화된 잡음 주입 이득 팩터로 태스크 (TD100) 에 의해 생성된 잡음 벡터를 스케일링하도록 구성될 수도 있다.
태스크 (TD300) 는 태스크 (TD200) 에 의해 생성된 스케일링된 잡음 벡터의 엘리먼트들을 입력 코딩된 스펙트럼의 대응하는 엠프티 엘리먼트들로 주입하여 출력 코딩된, 잡음-주입된 스펙트럼을 생성한다. 예를 들어, 태스크 (TD300) 는 (예를 들어, 태스크 (T100) 에 의해 생성된 바와 같은) 하나 이상의 코드북 인덱스들을 역양자화하여 입력 코딩된 스펙트럼을 역양자화된 신호 벡터로서 획득하도록 구성될 수도 있다. 일 예에서, 태스크 (TD300) 는 역양자화된 신호 벡터의 일 엔드에서 그리고 스케일링된 잡음 벡터의 일 엔드에서 시작하고, 역양자화된 신호 벡터를 트래버스하여 역양자화된 신호 벡터의 트래버스 동안 마주치는 각각의 제로-값 엘리먼트에서 스케일링된 잡음 벡터의 다음 엘리먼트를 주입하도록 구현된다. 다른 예에서, 태스크 (TD300) 는 (예를 들어, 태스크 (T200) 를 참조하여 본원에 설명된 바와 같이) 역양자화된 신호 벡터로부터 제로-검출 마스크를 계산하고, (예를 들어, 엘리먼트 × 엘리먼트 곱셈과 같이) 스케일링된 잡음 벡터에 마스크를 적용하며, 역양자화된 신호 벡터에 결과의 마스킹된 잡음 벡터를 가산하도록 구성된다.
전술된 바와 같이, 잡음 주입 방법들 (예를 들어, 방법 (M100 및 M200)) 은 펄스-코딩된 신호들의 인코딩 및 디코딩에 적용될 수도 있다. 그러나, 일반적으로 이러한 잡음 주입은 일반적으로 스펙트럼의 영역들이 0 으로 설정되는 코딩된 결과를 생성하는 임의의 코딩 스킴에 포스트-프로세싱 또는 백-엔드 동작으로서 적용될 수도 있다. 예를 들어, 이러한 방법 (M100) 의 구현 (방법 (M200) 의 대응하는 구현을 가짐) 은 본원에 설명된 바와 같은 의존-모드 또는 하모닉 코딩 스킴의 잔여분의 펄스-코딩 결과에, 또는 잔여분이 0 으로 설정되는 이러한 의존-모드 또는 하모닉 코딩 스킴의 출력에 적용될 수도 있다.
통상적으로 오디오 신호의 각 프레임의 인코딩은 프레임을 복수의 서브대역들로 분할하는 것 (즉, 벡터로서 프레임을 복수의 서브벡터들로 분할하는 것), 비트 할당을 각각의 서브벡터들에 배정하는 것, 및 각각의 서브벡터를 대응하는 할당된 수의 비트들로 인코딩하는 것을 포함한다. 예를 들어, 통상의 오디오 코딩 애플리케이션에서 각각의 프레임의 다수 (예를 들어, 10, 20, 30, 또는 40) 의 상이한 서브대역 벡터들 상에서 벡터 양자화를 수행하는 것이 바람직할 수도 있다. 프레임 사이즈의 예들은 (제한 없이) 100, 120, 140, 160, 및 180 값들을 포함하고, 서브대역 길이의 예들은 (제한 없이) 5, 6, 7, 8, 9, 10, 11, 12, 및 16 을 포함한다.
장치 (A100) 의 구현을 포함하고 다르게는 방법 (M100) 을 수행하도록 구성되는 오디오 인코더는 오디오 신호의 프레임들 (예를 들어, LPC 잔여분) 을 변환 도메인에서의 샘플들로서 (예를 들어, MDCT 계수들 또는 FFT 계수들과 같은 변환 계수들로서) 수신하도록 구성될 수도 있다. 이러한 인코더는 미리결정된 분할 스킴 (즉, 프레임이 수신되기 전에 디코더에 알려져 있는 고정된 분할 스킴) 에 따라 변환 계수들을 서브벡터들의 세트로 그룹화하고 이득-형상 벡터 양자화 스킴을 사용하여 각 서브벡터를 인코딩함으로써 각 프레임을 인코딩하도록 구현될 수도 있다. 서브벡터들은 오버랩할 필요가 없고 심지어 서로 분리될 수도 있다 (본원에 설명된 특정 예들에서, 0-4 kHz 저대역과 3.5-7 kHz 고대역 사이에서 설명된 바와 같은 오버랩을 제외하고, 서브벡터들은 오버랩하지 않음). 이 분할은, 각각의 입력 벡터가 동일한 방식으로 분할되도록 (예를 들어, 벡터의 콘텐츠들과는 관계없이) 미리결정될 수도 있다.
이러한 미리결정된 분할 스킴의 일 예에서, 각각 100-엘리먼트 입력 벡터는 각각의 길이들 (25, 35, 40) 의 3 개의 서브벡터들로 분할된다. 미리결정된 분할의 다른 예는 140 개의 엘리먼트들의 입력 벡터를 20 개의 길이 7 의 서브벡터들의 세트로 분할한다. 미리결정된 분할의 추가의 예는 280 개의 엘리먼트들의 입력 벡터를 40 개의 길이 7 의 서브벡터들의 세트로 분할한다. 이러한 경우에서, 장치 (A100) 또는 방법 (M100) 은 2 이상의 서브벡터들 각각을 별개의 입력 신호 벡터로서 수신하고 이들 서브벡터들 각각에 대해 별개의 잡음 주입 이득 팩터를 계산하도록 구성될 수도 있다. 동시에 상이한 서브벡터들을 프로세싱하도록 배열된 장치 (A100) 또는 방법 (M100) 의 다수의 구현들이 또한 고려된다.
오디오 신호들의 저-비트-레이트 코딩은 종종, 오디오 신호 프레임의 콘텐츠를 코딩하기에 이용 가능한 비트들의 최적의 이용을 요구한다. 인코딩될 신호 내에서 중요한 에너지의 영역들을 식별하는 것이 바람직할 수도 있다. 신호의 나머지로부터 이러한 영역들을 분리하는 것은 증가된 코딩 효율성을 위해 이들 영역들의 타겟팅된 코딩을 가능하게 한다. 예를 들어, 이러한 영역들을 인코딩하기 위해 상대적으로 더 많은 비트들을 그리고 신호의 다른 영역들을 인코딩하기 위해 상대적으로 더 적은 비트들 (또는 심지어 비트들이 없음) 을 사용함으로써 코딩 효율성을 증가시키는 것이 바람직할 수도 있다. 이러한 경우들에서, 그들의 코딩된 스펙트럼이 통상적으로 상당한 수의 제로-값의 엘리먼트들을 포함하기 때문에, 이들 다른 영역들 상에서 방법 (M100) 을 수행하는 것이 바람직할 수도 있다.
대안으로, 이 분할은 (예를 들어, 일부 지각적 기준에 따라) 일 프레임에서 다음 프레임으로 입력 벡터들이 상이하게 분할되도록 가변적일 수도 있다. 예를 들어, 신호의 하모닉 컴포넌트들의 타겟팅된 코딩 및 검출에 의한 오디오 신호의 효율적인 변환 도메인 코딩을 수행하는 것이 바람직할 수도 있다. 도 11 은 크기 대 주파수의 플롯을 나타내고, 여기서 저대역 선형 예측 코딩 (LPC) 잔여 신호의 하모닉하게 이격된 피크들에 대응하는 길이 7 의 8 개의 선택된 서브대역들이 주파수 축 부근의 바들에 의해 표시된다. 이 경우에서, 선택된 서브대역들의 로케이션들은 2 개의 값들을 사용하여 모델링될 수도 있다: 기본 주파수 (F0) 를 표현하기 위한 제 1 선택된 값, 및 주파수 도메인에서 인접한 피크들 간의 공간을 표현하기 위한 제 2 선택된 값. 도 12 는 선택된 서브대역들 사이 및 외측에 놓인 잔여 컴포넌트들을 가리키는 고대역 LPC 잔여 신호에 대한 유사한 예를 나타낸다. 이러한 경우에서, 잔여 컴포넌트들 상에서 (예를 들어, 각각의 잔여 컴포넌트 상에서 및/또는 잔여 컴포넌트들의 2 이상의 연속 상에서, 그리고 가능하게는 잔여 컴포넌트들의 모두 상에서 별개로) 방법 (M100) 을 수행하는 것이 바람직할 수도 있다. (프레임의 고대역 영역에서의 피크들의 로케이션들이 동일한 프레임의 저대역 영역의 코딩된 버전에서의 피크들의 로케이션들에 기초하여 모델링되는 경우를 포함하는) 하모닉 모델링 및 하모닉-모드 코딩의 추가의 설명은, 이 출원이 우선권을 주장하는 상기 열거된 출원들에서 찾을 수도 있다.
가변 분할 스킴의 다른 예는, 이전 프레임일 수도 있는, 다른 프레임 (또한, 레퍼런스 프레임으로 지칭됨) 의 코딩된 버전으로 지각적으로 중요한 서브대역들의 로케이션들에 기초하여 현재 프레임 (또한, 타겟 프레임으로 지칭됨) 에서 지각적으로 중요한 서브대역들의 세트를 식별한다. 도 10a 는 이러한 코딩 스킴에서 서브대역 선택 동작의 예를 나타낸다. 높은 하모닉 콘텐트를 갖는 오디오 신호들 (예를 들어, 음악 신호들, 음성 스피치 신호들) 에 대해, 소정 시간에서 주파수 도메인에서 중요한 에너지의 영역들의 로케이션들은 시간이 경과하면서 비교적 지속될 수도 있다. 이러한 시간에 대한 상관을 활용함으로써 오디오 신호의 효율적인 변환-도메인 코딩을 수행하는 것이 바람직할 수도 있다. 이러한 일 예에서, 동적 서브대역 선택 스킴은 디코딩 (또한, "의존-모드 코딩" 으로 지칭됨) 된 것으로서 이전 프레임의 대응하는 지각적으로 중요한 서브대역들과 인코딩될 프레임의 지각적으로 중요한 (예를 들어, 고-에너지) 서브대역들을 매칭시키는데 사용된다. 이러한 경우에서, (예를 들어, 잔여 컴포넌트들 중 2 이상, 그리고 가능하게는 전부의 연속 및/또는 각각의 잔여 컴포넌트 상에서 별개로) 선택된 서브대역들 사이 및 외측에 놓인 잔여 컴포넌트들에 대해 방법 (M100) 을 수행하는 것이 바람직할 수도 있다. 특정 애플리케이션에서, 이러한 스킴은 선형 예측 코딩 (LPC) 동작의 잔여분과 같은 오디오 신호의 0-4 kHz 범위에 대응하는 MDCT 변환 계수들을 인코딩하는데 사용된다. 의존-모드 코딩의 추가의 설명은 이 출원이 우선권을 주장하는 상기 열거된 출원들에서 찾을 수도 있다.
잔여 신호의 다른 예는 (예를 들어, 전술된 동적 선택 스킴들 중 하나에 따라 선택된 바와 같이) 선택된 서브대역들의 세트를 코딩하고, 오리지널 신호에서 코딩된 세트를 감산함으로써 획득된다. 이러한 경우에서, 잔여 신호의 전부 또는 일부 상에서 방법 (M100) 을 수행하는 것이 바람직할 수도 있다. 예를 들어, 전체 잔여 신호 벡터 상에서 방법 (M100) 을 수행하고 또는 미리결정된 분할 스킴에 따라 서브벡터들로 분할될 수도 있는, 잔여 신호의 하나 이상의 서브벡터들 각각에 대해 별개로 방법 (M100) 을 수행하는 것이 바람직할 수도 있다.
도 13a 는 일반 구성에 따라 오디오 신호를 프로세싱하기 위한 장치 (MF100) 의 블록도를 나타낸다. 장치 (MF100) 는 (예를 들어, 태스크 (T100) 의 구현들을 참조하여 본원에 설명된 바와 같이) 오디오 신호로부터의 정보에 기초하여 복수의 코드북의 엔트리들 중 하나를 선택하기 위한 수단 (FA100) 을 포함한다. 장치 (MF100) 는 또한, (예를 들어, 태스크 (T200) 의 구현들을 참조하여 본원에 설명된 바와 같이) 선택된 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의, 주파수 도메인에서의 로케이션들을 결정하기 위한 수단 (FA200) 을 포함한다. 장치 (MF100) 는 또한, (예를 들어, 태스크 (T300) 의 구현들을 참조하여 본원에 설명된 바와 같이) 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지를 계산하기 위한 수단 (FA300) 을 포함한다. 장치 (MF100) 는 또한, (예를 들어, 태스크 (T400) 의 구현들을 참조하여 본원에 설명된 바와 같이) 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지의 분배의 측정 값을 계산하기 위한 수단 (FA400) 을 포함한다. 장치 (MF100) 는 또한, (예를 들어, 태스크 (T500) 의 구현들을 참조하여 본원에 설명된 바와 같이) 상기 계산된 에너지 및 상기 계산된 값에 기초하여 잡음 주입 이득 팩터를 계산하기 위한 수단 (FA500) 을 포함한다.
도 13b 는 벡터 양자화기 (100), 제로-값 검출기 (200), 에너지 계산기 (300), 희소성 계산기 (400) 및 이득 팩터 계산기 (500) 를 포함하는 일반 구성에 따른 오디오 신호를 프로세싱하기 위한 장치 (A100) 의 블록도를 나타낸다. 벡터 양자화기 (100) 는 (예를 들어, 태스크 (T100) 의 구현들을 참조하여 본원에 설명된 바와 같이) 오디오 신호로부터의 정보에 기초하여 복수의 코드북의 엔트리들 중 하나를 선택하도록 구성된다. 제로-값 검출기 (200) 는 (예를 들어, 태스크 (T200) 의 구현들을 참조하여 본원에 설명된 바와 같이) 선택된 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의, 주파수 도메인에서의 로케이션들을 결정하도록 구성된다. 에너지 계산기 (300) 는 (예를 들어, 태스크 (T300) 의 구현들을 참조하여 본원에 설명된 바와 같이) 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지를 계산하도록 구성된다. 희소성 계산기 (400) 는 (예를 들어, 태스크 (T400) 의 구현들을 참조하여 본원에 설명된 바와 같이) 결정된 주파수-도메인 로케이션들에서 오디오 신호의 에너지의 분배의 측정 값을 계산하도록 구성된다. 이득 팩터 계산기 (500) 는 (예를 들어, 태스크 (T500) 의 구현들을 참조하여 본원에 설명된 바와 같이) 상기 계산된 에너지 및 상기 계산된 값에 기초하여 잡음 주입 이득 팩터를 계산하도록 구성된다. 장치 (A100) 는 또한, (예를 들어, 태스크 (T600) 의 구현들을 참조하여 본원에 설명된 바와 같이) 이득 팩터 계산기 (500) 에 의해 생성된 잡음 주입 이득 팩터를 양자화하도록 구성된 스칼라 양자화기를 포함하도록 구현될 수도 있다.
도 10c 는 일반 구성에 따른 잡음 주입을 위한 장치 (MF200) 의 블록도를 나타낸다. 장치 (MF200) 는 (예를 들어, 태스크 (TD100) 를 참조하여 본원에 설명된 바와 같이) 잡음 벡터를 획득하기 위한 수단 (FD100) 을 포함한다. 장치 (MF200) 는 또한, (예를 들어, 태스크 (TD200) 를 참조하여 본원에 설명된 바와 같이) 역양자화된 잡음 주입 이득 팩터를 잡음 벡터에 적용하기 위한 수단 (FD200) 을 포함한다. 장치 (MF200) 는 또한, (예를 들어, 태스크 (TD300) 를 참조하여 본원에 설명된 바와 같이) 코딩된 스펙트럼의 엠프티 엘리먼트들에서 스케일링된 잡음 벡터를 주입하기 위한 수단 (FD300) 을 포함한다.
도 10d 는 잡음 생성기 (D100), 스케일러 (D200), 및 잡음 주입기 (D300) 를 포함하는 일반 구성에 따른 잡음 주입을 위한 장치 (A200) 의 블록도를 나타낸다. 잡음 생성기 (D100) 는 (예를 들어, 태스크 (TD100) 를 참조하여 본원에 설명된 바와 같은) 잡음 벡터를 획득하도록 구성된다. 스케일러 (D200) 는 (예를 들어, 태스크 (TD200) 를 참조하여 본원에 설명된 바와 같은) 잡음 벡터에 역양자화된 잡음 주입 이득 팩터를 적용하도록 구성된다. 예를 들어, 스케일러 (D200) 는 잡음 벡터의 각 엘리먼트에 역양자화된 잡음 주입 이득 팩터를 곱하도록 구성될 수도 있다. 잡음 주입기 (D300) 는 (예를 들어, 태스크 (TD300) 의 구현을 참조하여 본원에 설명된 바와 같은) 코딩된 스펙트럼의 엠프티 엘리먼트에서 스케일링된 잡음 벡터를 주입하도록 구성된다. 일 예에서, 잡음 주입기 (D300) 는 역양자화된 신호 벡터의 일 엔드에서 그리고 스케일링된 잡음 벡터의 일 엔드에서 시작하고, 역양자화된 신호 벡터의 트래버스 동안 마주치는 각각의 제로-값 엘리먼트에서 스케일링된 잡음 벡터의 다음 엘리먼트를 주입하는, 역양자화된 신호 벡터를 트래버스하도록 구현된다. 다른 예에서, 잡음 주입기 (D300) 는 (예를 들어, 태스크 (T200) 을 참조하여 본원에 설명된 바와 같은) 역양자화된 신호 벡터로부터 제로-검출 마스크를 계산하고, (예를 들어, 엘리먼트×엘리먼트 곱셈) 이 마스크를 스케일링된 잡음 벡터에 적용하며, 결과의 마스킹된 잡음 벡터를 역양자화된 신호 벡터에 가산하도록 구성된다.
도 14 는 MDCT 도메인에서의 샘플들로서 (즉, 변환 도메인 계수들로서) 오디오 프레임 (SM10) 을 수신하고 대응하는 인코딩된 프레임 (SE20) 을 생성하도록 구성되는 인코더 (E20) 의 블록도를 나타낸다. 인코더 (E20) 는 (예를 들어, GSVQ 와 같은 VQ 스킴에 따라) 프레임의 복수의 서브대역들을 인코딩하도록 구성되는 서브대역 인코더 (BE10) 를 포함한다. 코딩된 서브대역들은, 에러 인코더 (EE10) 에 의해 인코딩되는 에러 신호 (ES10)(또한 잔여분으로 지칭됨) 를 생성하도록 입력 프레임으로부터 감산된다. 에러 인코더 (EE10) 는 본원에 설명된 바와 같은 펄스-코딩 스킴을 사용하여 에러 신호 (ES10) 를 인코딩하고, 본원에 설명된 바와 같은 방법 (M100) 의 구현을 수행하여 잡음 주입 이득 팩터를 계산하도록 구성될 수도 있다. 코딩된 서브대역들 및 코딩된 에러 신호 (계산된 잡음 주입 이득 팩터의 표현식을 포함함) 가 결합되어 인코딩된 프레임 (SE20) 을 획득한다.
도 15a 내지 도 15e 는 전술된 바와 같이 (예를 들어, 본원에 설명된 인코딩 스킴들, 예컨대 하모닉 코딩 스킴 또는 의존-모드 코딩 스킴 중 어느 하나, 또는 인코더 (E20) 의 구현으로서 수행함으로써) 변환 도메인에서 신호를 인코딩하도록 구현되고, 또한 방법 (M100) 의 인스턴스를 수행하도록 구성되는 인코더 (E100) 에 대한 애플리케이션들의 범위를 나타낸다. 도 15a 는 오디오 프레임들 (SA10) 을 변환 도메인에서의 샘플들로서 (즉, 변환 도메인 계수들로서) 수신하고, 대응하는 인코딩된 프레임들 (SE10) 을 생성하도록 배열되는 인코더 (E100) 의 인스턴스 및 변환 모듈 (MM1)(예를 들어, 고속 푸리에 변환 또는 MDCT 모듈) 을 포함하는 오디오 프로세싱 경로의 블록도를 나타낸다.
도 15b 는 도 15a 의 경로의 구현의 블록도를 나타내고, 여기서 변환 모듈 (MM1) 은 MDCT 변환 모듈을 사용하여 구현된다. 변형된 DCT 모듈 (MM10) 은 각각의 오디오 프레임 상에서 본원에 설명된 바와 같은 MDCT 동작을 수행하여 MDCT 도메인 계수들의 세트를 생성한다.
도 15c 는 선형 예측 코딩 분석 모듈 (AM10) 을 포함하는 도 15a 의 경로의 구현의 블록도를 나타낸다. 선형 예측 코딩 (LPC) 분석 모듈 (AM10) 은 분류된 프레임 상에 LPC 분석 동작을 수행하여, LPC 파라미터들 (예를 들어, 필터 계수들) 의 세트 및 LPC 잔여 신호를 생성한다. 일 예에서, LPC 분석 모듈 (AM10) 은 0 에서 4000 Hz 까지의 대역폭을 갖는 프레임 상에서 10번째 오더 (tenth-order) 의 LPC 분석을 수행하도록 구성된다. 다른 예에서, LPC 분석 모듈 (AM10) 은 3500 내지 7000 Hz 의 고대역 주파수 범위를 나타내는 프레임 상에서 6번째 오더의 LPC 분석을 수행하도록 구성된다. 변형된 DCT 모듈 (MM10) 은 LPC 잔여 신호 상에 MDCT 동작을 수행하여, 변환 도메인 계수들의 세트를 생성한다. 대응하는 디코딩 경로는 인코딩된 프레임들 (SE10) 을 디코딩하고, 디코딩된 프레임들 상에 역 MDCT 변환을 수행하여, LPC 합성 필터로의 입력을 위한 활성화 신호를 획득하도록 구성될 수도 있다.
도 15d 는 신호 분류기 (SC10) 를 포함하는 프로세싱 경로의 블록도를 나타낸다. 신호 분류기 (SC10) 는 오디오 신호의 프레임들 (SA10) 을 수신하고, 각각의 프레임을 적어도 2 개의 카테고리들 중 하나로 분류한다. 예를 들어, 신호 분류기 (SC10) 는 프레임 (SA10) 을 스피치 또는 음악으로서 분류하도록 구성되므로, 프레임이 음악으로서 분류되면, 도 15d 에 도시된 경로의 나머지는 그것을 인코딩하는데 사용되고, 프레임이 스피치로서 분류되면, 상이한 프로세싱 경로가 그것을 인코딩하는데 사용될 수도 있다. 이러한 분류는 신호 액티비티 검출, 잡음 검출, 주기성 검출, 시간-도메인 희소성 검출, 및/또는 주파수-도메인 희소성 검출을 포함할 수도 있다.
도 16a 는 (예를 들어, 오디오 프레임들 (SA10) 각각 상에서) 신호 분류기 (SC10) 에 의해 수행될 수도 있는 신호 분류의 방법 (MZ100) 의 블록도를 나타낸다. 방법 (MC100) 은 태스크들 (TZ100, TZ200, TZ300, TZ400, TZ500, 및 TZ600) 을 포함한다. 태스크 (TZ100) 는 신호의 액티비티의 레벨을 정량화한다. 액티비티의 레벨이 임계 미만이면, 태스크 (TZ200) 는 (예를 들어, 저-비트 레이트 NELP (noise-excited linear prediction) 스킴 및/또는 DTX (discontinuous transmission) 스킴을 사용하여) 신호를 사일런스로서 인코딩한다. 액티비티의 레벨이 충분히 높으면 (예를 들어, 임계보다 위), 태스크 (TZ300) 는 신호의 주기성 정도를 정량화한다. 신호가 주기적이지 않다고 태스크 (TZ300) 가 결정하면, 태스크 (TZ400) 는 NELP 스킴을 사용하여 신호를 인코딩한다. 신호가 주기적이라고 태스크 (TZ300) 가 결정하면, 태스크 (TZ500) 는 시간 및/또는 주파수 도메인에서 신호의 희소성 (sparsity) 정도를 정량화한다. 신호가 시간 도메인에서 희소하다고 태스크 (TZ500) 가 결정하면, 태스크 (TZ600) 는 CELP (code-excited linear prediction) 스킴, 예컨대 완화형 CELP (RCELP) 또는 대수적 CELP (ACELP) 를 사용하여 신호를 인코딩한다. 신호가 주파수 도메인에서 희소하다고 태스크 (TZ500) 가 결정하면, 태스크 (TZ700) 는 (예를 들어, 도 15d 의 프로세싱 경로의 나머지로 신호를 패스함으로써) 인코더 (E20) 를 참조하여 설명된 바와 같은 하모닉 모델, 의존 모드 또는 스킴을 사용하여 신호를 인코딩한다.
도 15d 에 도시된 바와 같이, 프로세싱 경로는 시간 마스킹, 주파수 마스킹, 및/또는 청력 임계와 같은 음향 심리학 기준을 적용함으로써 MDCT-도메인 신호를 단순화하도록 (예를 들어, 인코딩될 변환 도메인 계수들의 수를 감소시키도록) 구성되는 지각적인 프루닝 모듈 (PM10) 을 포함할 수도 있다. 모듈 (PM10) 은 오리지널 오디오 프레임들 (SA10) 에 지각적 모델을 적용함으로써 이러한 기준에 대한 값들을 연산하도록 구현될 수도 있다. 이 예에서, 인코더 (E100) 는 프루닝된 프레임들을 인코딩하여 대응하는 인코딩된 프레임 (SE10) 을 생성하도록 배열된다.
도 15e 는 도 15c 및 도 15d 의 경로들 양자의 구현의 블록도를 나타내고, 여기서 인코더 (E100) 는 LPC 잔여분을 인코딩하도록 배열된다.
도 16b 는 장치 (A100) 의 구현을 포함하는 통신 디바이스 (D10) 의 블록도를 나타낸다. 디바이스 (D10) 는 장치 (A100)(또는 MF100) 및 가능하게는 장치 (A200)(또는 MF200) 의 엘리먼트들을 구현하는 칩 또는 칩세트 (CS10)(예를 들어, 이동국 모뎀 (MSM) 칩세트) 를 포함한다. 칩/칩세트 (CS10) 는 하나 이상의 프로세서들을 포함할 수도 있고, 이 프로세서들은 (예를 들어, 명령들로서) 장치 (A100 또는 MF100) 의 소프트웨어 및/또는 펌웨어를 실행하도록 구성될 수도 있다.
칩/칩세트 (CS10) 는 무선-주파수 (RF) 통신 신호를 수신하고, RF 신호 내에서 인코딩된 오디오 신호를 디코딩 및 재생하도록 구성되는 수신기, 및 마이크로폰 (MV10) 에 의해 생성된 신호에 기초하는 (예를 들어, 장치 (A100) 에 의해 생성된 바와 같은 잡음 주입 이득 팩터의 표현을 포함하는) 인코딩된 오디오 신호를 설명하는 RF 통신 신호를 송신하도록 구성되는 송신기를 포함한다. 이러한 디바이스는 하나 이상의 인코딩 및 디코딩 스킴들 (schemes) (또한 "코덱들" 로 지칭됨) 을 통해 음성 통신 데이터를 무선으로 송신하고 수신하도록 구성될 수도 있다. 이러한 코덱들의 예들로는 2007년 2월의 발명의 명칭이 "Enhanced Variable Rate Codec, Speech Service Options 3, 68, and 70 for Wideband Spread Spectrum Digital Systems"인 3세대 파트너십 프로젝트 2 (3GPP2) 문헌 C.S0014-C, v1.0 (www-dot-3gpp-dot-org에서 온라인으로 이용가능) 에 기재된 바와 같은 향상된 변속 코덱; 2004년 1월의 발명의 명칭이 "Selectable Mode Vocoder (SMV) Service Option for Wideband Spread Spectrum Communication Systems"인 3GPP2 문헌 C.S0030-0, v3.0 (www-dot-3gpp-dot-org에서 온라인으로 이용가능) 에 기재된 바와 같은 선택가능 모드 보코더 스피치 코덱; ETSI TS 126 092 V6.0.0 (유럽전기통신표준협회 (ETSI), 프랑스, 소피아 안티폴리스 세덱스, 2004년 12월) 에 기재된 바와 같은 적응적 멀티 레이트 (AMR) 스피치 코덱; 및 문헌 ETSI TS 126 192 V6.0.0 (ETSI, 2004년 12월) 에 기재된 바와 같은 AMR 광대역 스피치 코덱이 있다. 예를 들어, 칩 또는 칩세트 (CS10) 는 하나 이상의 이러한 코덱들에 순응하도록 인코딩된 프레임들을 생성하도록 구성될 수도 있다.
디바이스 (D10) 는 안테나 (C30) 를 통해 RF 통신 신호들을 수신 및 송신하도록 구성된다. 디바이스 (D10) 는 또한, 안테나 (C30) 로의 경로에서 디플렉서 및 하나 이상의 전력 증폭기들을 포함할 수도 있다. 칩/칩세트 (CS10) 는 또한, 키패드 (C10) 를 통해 사용자 입력을 수신하고 디스플레이 (C20) 를 통해 정보를 디스플레이하도록 구성된다. 이 예에서, 디바이스 (D10) 는 또한, 하나 이상의 안테나들 (C40) 을 포함하여 글로벌 포지셔닝 시스템 (GPS) 로케이션 서비스들 및/또는 무선 (예를 들어, Bluetooth™) 헤드셋과 같은 외부 디바이스와의 단-거리 통신을 지원한다. 다른 예에서, 이러한 통신 디바이스는 그 자체가 Bluetooth™ 헤드셋이고, 키패드 (C10), 디스플레이 (C20), 및 안테나 (C30) 가 없다.
통신 디바이스 (D10) 는 스마트폰들 및 랩톱 컴퓨터와 태블릿 컴퓨터를 포함하는, 다양한 통신 디바이스들에서 구현될 수도 있다. 도 17 은 전면 상에 배열된 2 개의 음성 마이크로폰들 (MV1O-1 및 MV10-3), 후면 상에 배열된 음성 마이크로폰 (MV10-2), 전면의 상단 코너에 위치한 에러 마이크로폰 (ME10), 및 후면 상에 위치한 잡음 레퍼런스 마이크로폰 (MR10) 을 갖는 핸드셋 (H100)(예를 들어, 스마트폰) 의 전면, 후면, 및 측면 뷰들을 나타낸다. 에러 마이크로폰 (ME10) 부근의 전면의 상부 센터에는 라우드스피커 (LS10) 가 배열되고, (예를 들어, 스피커폰 애플리케이션들에 대해) 또한 2 개의 다른 라우드스피커들 (LS20L, LS20R) 이 제공된다. 이러한 핸드셋의 마이크로폰들 간의 최대 거리는 통상적으로 약 10 또는 12 센티미터이다.
본원에서 개시된 방법들 및 장치는 일반적으로 임의의 송수신 및/또는 오디오 감지 애플리케이션, 특히 이러한 애플리케이션들의 모바일 또는 그렇지 않으면 휴대용 인스턴스들에 적용될 수도 있다. 예를 들어, 본원에서 개시된 구성들의 범위는 오버-더-에어 (over-the-air) 인터페이스를 통한 코드분할 다중 액세스 (CDMA) 를 채용하도록 구성된 무선 전화통화 통신 시스템에 상주하는 통신 디바이스들을 포함한다. 그럼에도 불구하고, 본원에서 설명되는 바와 같은 피처들을 갖는 방법 및 장치가, 당업자들에게 알려진 넓은 범위의 기술들을 채용하는 다양한 통신 시스템들, 이를테면 유선 및/또는 무선 (예컨대, CDMA, TDMA, FDMA, 및/또는 TD-SCDMA) 전송 채널들을 통한 VoIP (voice over IP) 를 채용하는 시스템들 중의 임의의 것에 상주할 수도 있다는 것이 당업자들에 의해 이해될 것이다.
본원에서 개시된 통신 디바이스들은 패킷 교환식 (packet-switched) (예를 들어, VoIP와 같은 프로토콜들에 따라 오디오 송신물들을 운반하도록 배열된 유선 및/또는 무선 네트워크들) 및/또는 회선 교환식 (circuit-switched) 인 네트워크들에서의 사용에 적응될 수도 있다는 것이 명백히 고려되며 이에 의해 개시된다. 본원에서 개시된 통신 디바이스들은, 전체 대역 광대역 코딩 시스템들 및 분할 대역 (split-band) 광대역 코딩 시스템들을 포함하여, 협대역 코딩 시스템들 (예컨대, 약 4 또는 5 킬로헤르츠의 오디오 주파수 범위를 인코딩하는 시스템들) 에서의 사용을 위해 및/또는 광대역 코딩 시스템들 (예컨대, 5 킬로헤르츠보다 큰 오디오 주파수들을 인코딩하는 시스템들) 에서의 사용을 위해 적응될 수도 있다는 것이 또한 명백히 고려되며 이에 의해 개시된다.
본원에서 설명되는 구성들의 표현은 당업자가 본원에 개시된 방법들 및 다른 구조들을 사용할 수 있도록 제공된다. 본원에 도시되고 설명된 플로우차트들, 블록도들, 및 기타 구조들은 예들일 뿐이고, 이러한 구조들의 다른 변형들 또한 이 개시물의 범위 내에 있다. 이 구성들의 각종 변형들이 가능하고, 본원에서 제시된 일반 원리들은 다른 구성들에도 적용될 수도 있다. 따라서, 본 개시물은 위에서 도시된 구성들로 제한하는 의도는 아니며 그보다는 원래의 개시물의 일부를 형성하는 제시된 바와 같은 첨부의 청구항들을 포함하여 본원에서 어떤 형식으로든 개시되는 원리들 및 신규한 특징들과 일치되는 가장 넓은 범위에 부합된다.
당업자들은 정보 및 신호들이 각종 상이한 기술들 및 기법들 중의 임의의 것을 사용하여 표현될 수 있다는 것을 이해할 것이다. 예를 들어, 전술된 상세한 설명 전체에 걸쳐 참조될 수 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 및 심볼들은 전압들, 전류들, 전자기파들, 자기 장들 또는 입자들, 광학적 장들 또는 입자들, 또는 이들의 조합에 의하여 표현될 수 있다.
본원에 개시된 구성의 구현을 위해 중요한 설계 요건은, 특히 연산-집약적 애플리케이션들, 예컨대 압축된 오디오 또는 시청각 정보의 플레이백 (예를 들어, 압축 포맷, 예컨대 본원에 식별된 예들 중 하나에 따라 인코딩된 파일 또는 스트림) 또는 광대역 통신들 (예를 들어, 8 킬로헤르츠보다 높은 샘플링 레이트들, 예컨대 12, 16, 44.1, 48, 또는 192 kHz 에서의 음성 통신들) 에 대한 애플리케이션들에 대한 프로세싱 지연 및/또는 연산적 복잡성 (통상적으로, 초당 또는 MIPS 당 수백만의 명령들로 측정됨) 을 최소화하는 것을 포함할 수도 있다.
본원에서 개시된 바와 같은 장치 (예컨대, 장치 A100 및 MF100) 는 의도된 애플리케이션에 적합한 것으로 여겨지는 하드웨어, 소프트웨어 및/또는 펌웨어의 임의의 조합으로 구현될 수도 있다. 예를 들어, 이러한 장치의 엘리멘트들은 예를 들어 동일한 칩 상에 또는 칩세트의 둘 이상의 칩들 중에 상주하는 전자적 및/또는 광학적 디바이스들로서 제작될 수도 있다. 이러한 디바이스의 일 예는 트랜지스터들 또는 로직 게이트들과 같은 로직 엘리먼트들의 고정식 또는 프로그램가능 어레이이고, 이들 엘리먼트들의 어느 것이라도 하나 이상의 이러한 어레이들로서 구현될 수 있다. 임의의 두 개 이상의, 또는 심지어 모든 이러한 요소들은 동일한 어레이 또는 어레이들 내에 구현될 수 있다. 이러한 어레이 또는 어레이들은 하나 이상의 칩들 내에 (예를 들어, 둘 이상의 칩들을 포함한 칩세트 내에) 구현될 수 있다.
본원에서 개시된 장치 (예컨대, 장치 A100 및 MF100) 의 각종 구현들의 하나 이상의 엘리멘트들은 또한, 로직 엘리먼트들의 하나 이상의 고정식 또는 프로그램가능 어레이들, 이를테면 마이크로프로세서들, 임베디드 프로세서들, IP 코어들, 디지털 신호 프로세서들, FPGA들 (field-programmable gate arrays), ASSP들 (application-specific standard products), 및 ASIC들 (application-specific integrated circuits) 상에서 실행하도록 배열된 명령들의 하나 이상의 세트들로서 전체적으로 또는 부분적으로 구현될 수도 있다. 본원에서 개시된 바와 같은 장치의 구현의 각종 엘리먼트들 중의 어느 것이라도 하나 이상의 컴퓨터들 (명령들의 하나 이상의 세트들 또는 시퀀스들을 실행하도록 프로그래밍된 하나 이상의 어레이들을 포함하는 머신들이며, 예컨대, "프로세서들" 로 지칭됨) 로서 구현될 수도 있고, 이러한 엘리먼트들의 임의의 둘 이상의, 또는 심지어 전부는 동일한 그러한 컴퓨터 또는 컴퓨터들 내에 구현될 수도 있다.
본원에서 개시된 바와 같은 프로세싱를 위한 프로세서 또는 다른 수단은 예를 들어 칩세트의 동일한 칩 상에 또는 둘 이상의 칩들 상에 존재하는 하나 이상의 전자적 및/또는 광학적 디바이스들로서 제작될 수도 있다. 이러한 디바이스의 일 예는 트랜지스터들 또는 로직 게이트들과 같은 로직 엘리먼트들의 고정식 또는 프로그램가능 어레이이고, 이들 엘리먼트들의 어느 것이라도 하나 이상의 이러한 어레이들로서 구현될 수 있다. 이러한 어레이 또는 어레이들은 하나 이상의 칩들 내에 (예를 들어, 둘 이상의 칩들을 포함한 칩세트 내에) 구현될 수 있다. 이러한 어레이들의 예들은 로직 엘리멘트들의 고정식 또는 프로그램가능 어레이들, 이를테면 마이크로프로세서들, 내장형 프로세서들, IP 코어들, DSP들, FPGA들, ASSP들, 및 ASIC들을 포함한다. 본원에서 개시된 바와 같은 프로세싱을 위한 프로세서 또는 다른 수단은 또한 하나 이상의 컴퓨터들 (예컨대, 명령들의 하나 이상의 세트들 또는 시퀀스들을 실행하도록 프로그래밍된 하나 이상의 어레이들을 포함하는 머신들) 또는 다른 프로세서들로서 실시될 수도 있다. 본원에서 설명되는 바와 같은 프로세서는, 프로세서가 내장되는 디바이스 또는 시스템 (예컨대, 오디오 통신 디바이스) 의 다른 동작에 관련한 태스크와 같이, 방법 (M100 또는 MF200) 의 구현의 프로시저에 직접 관련되지 않은 명령들의 다른 세트들을 실행하거나 또는 태스크들을 수행하는데 사용되는 것이 가능하다. 본원에서 개시된 바와 같은 방법의 부분이 오디오 감지 디바이스의 프로세서에 의해 수행되는 것과 이 방법의 다른 부분이 하나 이상의 다른 프로세서들의 제어 하에서 수행되는 것이 또한 가능하다.
당업자들은 본원에서 개시된 구성들과 관련하여 설명된 각종 예시적인 모듈들, 논리적 블록들, 회로들, 및 테스트들과 다른 동작들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘의 조합들로 구현될 수도 있음을 이해할 것이다. 이러한 모듈들, 논리 블록들, 회로들, 및 동작들은 본원에서 개시된 구성을 생성하도록 설계된 범용 프로세서, 디지털 신호 프로세서 (DSP), ASIC 또는 ASSP, FPGA 또는 기타 프로그램가능 로직 디바이스, 별개의 게이트 또는 트랜지스터 로직, 별개의 하드웨어 부품들, 또는 그것들의 임의의 조합으로 구현되거나 수행될 수도 있다. 예를 들어, 이러한 구성은 적어도 부분적으로는 하드 와이어드 (hard-wired) 회로로서, 주문형 집적회로로 제작된 회로 구성으로서, 또는 비휘발성 스토리지에 로딩된 펌웨어 프로그램 또는 데이터 저장 매체로부터 또는 그 속으로 범용 프로세서 또는 기타의 디지털 신호 처리 유닛과 같은 로직 엘리먼트들의 어레이에 의해 실행가능한 명령어들인 기계 판독가능 코드로서 로딩된 소프트웨어 프로그램으로서 구현될 수 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로는, 이 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 조합, 예를 들어 DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 협력하는 하나 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성으로도 구현될 수도 있다. 소프트웨어 모듈은 RAM (random-access memory), ROM (read-only memory), 비휘발성 RAM (NVRAM) 이를테면 플래시 RAM, 소거가능 프로그램가능 ROM (EPROM), 전기적 소거가능 프로그램가능 ROM (EEPROM), 레지스터들, 하드디스크, 착탈식 디스크, 또는 CD-ROM에, 또는 이 기술분야에서 공지된 임의의 다른 형태의 저장 매체에 존재할 수도 있다. 예시적인 저장 매체는 프로세서와 커플링되어 프로세서는 저장 매체로부터 정보를 판독하고 그 저장 매체에 정보를 기입할 수 있다. 대안으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC 내에 존재할 수도 있다. ASIC은 사용자 단말 내에 존재할 수도 있다. 대안으로, 프로세서와 저장 매체는 사용자 단말에 개별 컴포넌트들로서 존재할 수 있다.
본원에서 개시된 각종 방법들 (예를 들어, 방법들 (M100 및 MF200) 의 구현들) 이 프로세서와 같은 로직 엘리먼트들의 어레이에 의해 수행될 수도 있다는 것과, 본원에서 설명된 바와 같은 장치의 각종 엘리멘트들은 이러한 어레이 상에서 실행하도록 설계된 모듈들로서 구현될 수도 있다는 것에 주의한다. 여기에서 사용되는 바와 같이, 용어 "모듈" 또는 "서브-모듈" 은 컴퓨터 명령들 (예를 들어 로직 표현들) 을 소프트웨어, 하드웨어, 또는 펌웨어 형태로 포함하는 임의의 방법, 장치, 디바이스, 유닛 또는 컴퓨터 판독가능 데이터 저장 매체를 지칭할 수 있다. 다수의 모듈들 또는 시스템들이 하나의 모듈 또는 시스템으로 결합될 수 있고, 하나의 모듈 또는 시스템이 동일한 기능들을 수행하는 다수의 모듈들 또는 시스템들로 분리될 수 있다는 것이 이해되어야 한다. 소프트웨어 또는 다른 컴퓨터 실행가능한 명령들로 구현되는 경우, 프로세스의 엘리먼트들은 필수적으로 루틴들, 프로그램들, 객체들, 컴포넌트들, 데이터 구조들 등과 관련된 태스크들을 수행하는 코드 세그먼트들이다. 용어 "소프트웨어" 는 소스 코드, 어셈블리어 언어 코드, 머신 코드, 이진 코드, 펌웨어, 매크로코드, 마이크로코드, 로직 엘리먼트들의 어레이에 의해 실행가능한 명령들의 임의의 하나 이상의 세트들 또는 시퀀스들, 및 그러한 예들의 임의의 조합을 포함하는 것으로 이해되어야 한다. 프로그램 또는 코드 세그먼트들은 프로세서 판독가능 매체에 저장되거나 송신 매체 또는 통신 링크를 통해 반송파에서 구현되는 컴퓨터 데이터 신호에 의해 송신될 수 있다.
본원에서 개시된 방법들, 스킴들, 및 기법들의 구현들은 로직 엘리먼트들의 어레이를 포함한 머신 (예컨대, 프로세서, 마이크로프로세서, 마이크로제어기, 또는 기타의 유한 상태 머신) 에 의해 실행가능한 명령들의 하나 이상의 세트들로서 (예를 들어, 본원에서 열거된 바와 같은 하나 이상의 컴퓨터 판독가능 저장 매체들의 유형의 컴퓨터 판독가능 피처들에) 유형적으로 (tangibly) 구현될 수도 있다. 용어 "컴퓨터 판독가능 매체"는 휘발성, 비휘발성, 착탈식 및 비착탈식 저장 매체들을 포함하여, 정보를 저장하거나 전송할 수 있는 임의의 매체를 포함할 수도 있다. 컴퓨터 판독가능 매체의 예들은 전자 회로, 반도체 메모리 디바이스, ROM, 플래시 메모리, 소거가능 ROM (EROM), 플로피 디스켓 또는 다른 자기 스토리지, CD-ROM/DVD 또는 다른 광 스토리지, 하드 디스크 또는 원하는 정보를 저장하는데 이용될 수 있는 임의의 다른 매체, 광섬유 매체, 무선 주파수 (RF) 링크, 또는 원하는 정보를 운반하는데 사용될 수 있고 액세스될 수 있는 임의의 다른 매체를 포함한다. 컴퓨터 데이터 신호는 전자 네트워크 채널들, 광 섬유들, 에어, 전자기, 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 (31)

  1. 오디오 신호를 프로세싱하는 방법으로서,
    상기 오디오 신호로부터의 정보에 기초하여, 코드북의 복수의 엔트리들 중 하나를 선택하는 단계;
    선택된 상기 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의, 주파수 도메인에서의 로케이션들을 결정하는 단계;
    결정된 상기 주파수 도메인에서의 로케이션들에서 상기 오디오 신호의 에너지를 계산하는 단계;
    결정된 상기 주파수 도메인에서의 로케이션들 중 상기 오디오 신호의 에너지의 분배의 측정 값을 계산하는 단계; 및
    계산된 상기 에너지 및 계산된 상기 측정 값에 기초하여, 잡음 주입 이득 팩터를 계산하는 단계를 포함하는, 오디오 신호 프로세싱 방법.
  2. 제 1 항에 있어서,
    선택된 상기 코드북 엔트리는 유닛 펄스들의 패턴에 기초하는, 오디오 신호 프로세싱 방법.
  3. 제 1 항에 있어서,
    상기 오디오 신호의 에너지의 분배의 측정 값을 계산하는 단계는,
    결정된 상기 주파수 도메인에서의 로케이션들 각각에서 상기 오디오 신호의 엘리먼트의 에너지를 계산하는 단계; 및
    계산된 상기 엘리먼트들의 에너지들을 소팅 (sorting) 하는 단계를 포함하는, 오디오 신호 프로세싱 방법.
  4. 제 1 항에 있어서,
    상기 에너지 분배의 측정 값은 (A) 결정된 상기 주파수 도메인에서의 로케이션들에서의 상기 오디오 신호의 엘리먼트들의 서브세트의 총 에너지와 (B) 결정된 상기 주파수 도메인에서의 로케이션들에서의 상기 오디오 신호의 엘리먼트들의 총 에너지 간의 관계에 기초하는, 오디오 신호 프로세싱 방법.
  5. 제 1 항에 있어서,
    상기 잡음 주입 이득 팩터는 (A) 결정된 상기 주파수 도메인에서의 로케이션들에서 상기 오디오 신호의 계산된 상기 에너지와 (B) 결정된 상기 주파수 도메인에서의 로케이션들을 포함하는 주파수 범위에서의 상기 오디오 신호의 에너지 간의 관계에 기초하는, 오디오 신호 프로세싱 방법.
  6. 제 1 항에 있어서,
    상기 잡음 주입 이득 팩터를 계산하는 단계는,
    상기 잡음 주입 이득 팩터의 초기 값이 임계 값보다 크지 않다는 것을 검출하는 단계; 및
    상기 검출하는 단계에 응답하여 상기 잡음 주입 이득 팩터의 초기 값을 클립핑 (clipping) 하는 단계를 포함하는, 오디오 신호 프로세싱 방법.
  7. 제 6 항에 있어서,
    상기 잡음 주입 이득 팩터는 클립핑된 상기 초기 값에 계산된 상기 에너지 분배의 측정 값을 적용한 결과에 기초하는, 오디오 신호 프로세싱 방법.
  8. 제 1 항에 있어서,
    상기 오디오 신호는 복수의 변형된 이산 코사인 변환 계수들인, 오디오 신호 프로세싱 방법.
  9. 제 1 항에 있어서,
    상기 오디오 신호는 제 2 오디오 신호의 선형 예측 코딩 분석의 잔여분 (residual) 에 기초하는, 오디오 신호 프로세싱 방법.
  10. 제 9 항에 있어서,
    상기 잡음 주입 이득 팩터는 또한, 선형 예측 코딩 이득에 기초하고,
    상기 선형 예측 코딩 이득은 상기 제 2 오디오 신호의 상기 선형 예측 코딩 분석에 의해 생성된 계수들의 세트에 기초하는, 오디오 신호 프로세싱 방법.
  11. 오디오 신호를 프로세싱하기 위한 장치로서,
    상기 오디오 신호로부터의 정보에 기초하여, 코드북의 복수의 엔트리들 중 하나를 선택하기 위한 수단;
    선택된 상기 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의, 주파수 도메인에서의 로케이션들을 결정하기 위한 수단;
    결정된 상기 주파수 도메인에서의 로케이션들에서 상기 오디오 신호의 에너지를 계산하기 위한 수단;
    결정된 상기 주파수 도메인에서의 로케이션들 중 상기 오디오 신호의 에너지의 분배의 측정 값을 계산하기 위한 수단; 및
    계산된 상기 에너지 및 계산된 상기 측정 값에 기초하여, 잡음 주입 이득 팩터를 계산하기 위한 수단을 포함하는, 오디오 신호 프로세싱 장치.
  12. 제 11 항에 있어서,
    선택된 상기 코드북 엔트리는 유닛 펄스들의 패턴에 기초하는, 오디오 신호 프로세싱 장치.
  13. 제 11 항 또는 제 12 항에 있어서,
    상기 오디오 신호의 에너지의 분배의 측정 값을 계산하기 위한 수단은,
    결정된 상기 주파수 도메인에서의 로케이션들 각각에서 상기 오디오 신호의 엘리먼트의 에너지를 계산하기 위한 수단; 및
    계산된 상기 엘리먼트들의 에너지들을 소팅 (sorting) 하기 위한 수단을 포함하는, 오디오 신호 프로세싱 장치.
  14. 제 11 항 또는 제 12 항에 있어서,
    상기 에너지 분배의 측정 값은 (A) 결정된 상기 주파수 도메인에서의 로케이션들에서의 상기 오디오 신호의 엘리먼트들의 서브세트의 총 에너지와 (B) 결정된 상기 주파수 도메인에서의 로케이션들에서의 상기 오디오 신호의 엘리먼트들의 총 에너지 간의 관계에 기초하는, 오디오 신호 프로세싱 장치.
  15. 제 11 항 또는 제 12 항에 있어서,
    상기 잡음 주입 이득 팩터는 (A) 결정된 상기 주파수 도메인에서의 로케이션들에서 상기 오디오 신호의 계산된 상기 에너지와 (B) 결정된 상기 주파수 도메인에서의 로케이션들을 포함하는 주파수 범위에서의 상기 오디오 신호의 에너지 간의 관계에 기초하는, 오디오 신호 프로세싱 장치.
  16. 제 11 항 또는 제 12 항에 있어서,
    상기 잡음 주입 이득 팩터를 계산하기 위한 수단은,
    상기 잡음 주입 이득 팩터의 초기 값이 임계 값보다 크지 않다는 것을 검출하기 위한 수단; 및
    상기 검출하기 위한 수단에 응답하여 상기 잡음 주입 이득 팩터의 초기 값을 클립핑 (clipping) 하기 위한 수단을 포함하는, 오디오 신호 프로세싱 장치.
  17. 제 16 항에 있어서,
    상기 잡음 주입 이득 팩터는 클립핑된 상기 초기 값에 계산된 상기 에너지 분배의 측정 값을 적용한 결과에 기초하는, 오디오 신호 프로세싱 장치.
  18. 제 11 항 또는 제 12 항에 있어서,
    상기 오디오 신호는 복수의 변형된 이산 코사인 변환 계수들인, 오디오 신호 프로세싱 장치.
  19. 제 11 항 또는 제 12 항에 있어서,
    상기 오디오 신호는 제 2 오디오 신호의 선형 예측 코딩 분석의 잔여분에 기초하는, 오디오 신호 프로세싱 장치.
  20. 제 19 항에 있어서,
    상기 잡음 주입 이득 팩터는 또한, 선형 예측 코딩 이득에 기초하고,
    상기 선형 예측 코딩 이득은 상기 제 2 오디오 신호의 상기 선형 예측 코딩 분석에 의해 생성된 계수들의 세트에 기초하는, 오디오 신호 프로세싱 장치.
  21. 오디오 신호를 프로세싱하기 위한 장치로서,
    상기 오디오 신호로부터의 정보에 기초하여, 코드북의 복수의 엔트리들 중 하나를 선택하도록 구성된 벡터 양자화기;
    선택된 상기 코드북 엔트리에 기초하는 제 1 신호의 제로-값 엘리먼트들의, 주파수 도메인에서의 로케이션들을 결정하도록 구성된 제로-값 검출기;
    결정된 상기 주파수 도메인에서의 로케이션들에서 상기 오디오 신호의 에너지를 계산하도록 구성된 에너지 계산기;
    결정된 상기 주파수 도메인에서의 로케이션들 중 상기 오디오 신호의 에너지의 분배의 측정 값을 계산하도록 구성된 희소성 계산기; 및
    계산된 상기 에너지 및 계산된 상기 측정 값에 기초하여, 잡음 주입 이득 팩터를 계산하도록 구성된 이득 팩터 계산기를 포함하는, 오디오 신호 프로세싱 장치.
  22. 제 21 항에 있어서,
    선택된 상기 코드북 엔트리는 유닛 펄스들의 패턴에 기초하는, 오디오 신호 프로세싱 장치.
  23. 제 21 항 또는 제 22 항에 있어서,
    상기 희소성 계산기는, 결정된 상기 주파수 도메인에서의 로케이션들 각각에서 상기 오디오 신호의 엘리먼트의 에너지를 계산하고 계산된 상기 엘리먼트들의 에너지들을 소팅하도록 구성되는, 오디오 신호 프로세싱 장치.
  24. 제 21 항 또는 제 22 항에 있어서,
    상기 에너지 분배의 측정 값은 (A) 결정된 상기 주파수 도메인에서의 로케이션들에서의 상기 오디오 신호의 엘리먼트들의 서브세트의 총 에너지와 (B) 결정된 상기 주파수 도메인에서의 로케이션들에서의 상기 오디오 신호의 엘리먼트들의 총 에너지 간의 관계에 기초하는, 오디오 신호 프로세싱 장치.
  25. 제 21 항 또는 제 22 항에 있어서,
    상기 잡음 주입 이득 팩터는 (A) 결정된 상기 주파수 도메인에서의 로케이션들에서 상기 오디오 신호의 계산된 상기 에너지와 (B) 결정된 상기 주파수 도메인에서의 로케이션들을 포함하는 주파수 범위에서의 상기 오디오 신호의 에너지 간의 관계에 기초하는, 오디오 신호 프로세싱 장치.
  26. 제 21 항 또는 제 22 항에 있어서,
    상기 이득 팩터 계산기는,
    상기 잡음 주입 이득 팩터의 초기 값이 임계 값보다 크지 않다는 것을 검출하고, 상기 검출하는 것에 응답하여 상기 잡음 주입 이득 팩터의 초기 값을 클립핑 (clipping) 하도록 구성되는, 오디오 신호 프로세싱 장치.
  27. 제 26 항에 있어서,
    상기 잡음 주입 이득 팩터는 클립핑된 상기 초기 값에 계산된 상기 에너지 분배의 측정 값을 적용한 결과에 기초하는, 오디오 신호 프로세싱 장치.
  28. 제 21 항 또는 제 22 항에 있어서,
    상기 오디오 신호는 복수의 변형된 이산 코사인 변환 계수들인, 오디오 신호 프로세싱 장치.
  29. 제 21 항 또는 제 22 항에 있어서,
    상기 오디오 신호는 제 2 오디오 신호의 선형 예측 코딩 분석의 잔여분에 기초하는, 오디오 신호 프로세싱 장치.
  30. 제 29 항에 있어서,
    상기 잡음 주입 이득 팩터는 또한, 선형 예측 코딩 이득에 기초하고,
    상기 선형 예측 코딩 이득은 상기 제 2 오디오 신호의 상기 선형 예측 코딩 분석에 의해 생성된 계수들의 세트에 기초하는, 오디오 신호 프로세싱 장치.
  31. 피처들을 판독하는 머신으로 하여금 제 1 항 내지 제 10 항 중 어느 한 항에 기재된 방법을 수행하도록 하는 유형의 피처들을 갖는 컴퓨터 판독가능 저장 매체.
KR1020137006753A 2010-08-17 2011-08-17 잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체 KR101445512B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
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/211,027 US9208792B2 (en) 2010-08-17 2011-08-16 Systems, methods, apparatus, and computer-readable media for noise injection
US13/211,027 2011-08-16
PCT/US2011/048056 WO2012024379A2 (en) 2010-08-17 2011-08-17 Systems, methods, apparatus, and computer-readable media for noise injection

Publications (2)

Publication Number Publication Date
KR20130030332A KR20130030332A (ko) 2013-03-26
KR101445512B1 true KR101445512B1 (ko) 2014-09-26

Family

ID=45594772

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137006753A KR101445512B1 (ko) 2010-08-17 2011-08-17 잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체

Country Status (8)

Country Link
US (1) US9208792B2 (ko)
EP (1) EP2606487B1 (ko)
JP (1) JP5680755B2 (ko)
KR (1) KR101445512B1 (ko)
CN (1) CN103069482B (ko)
ES (1) ES2808302T3 (ko)
HU (1) HUE049109T2 (ko)
WO (1) WO2012024379A2 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2642906T3 (es) 2008-07-11 2017-11-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificador de audio, procedimientos para proporcionar un flujo de audio y programa de ordenador
PL2489041T3 (pl) * 2009-10-15 2020-11-02 Voiceage Corporation Jednoczesne kształtowanie szumu w dziedzinie czasu i w dziedzinie częstotliwości dla przekształcenia tdac
US9236063B2 (en) 2010-07-30 2016-01-12 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dynamic bit allocation
EP2681734B1 (en) * 2011-03-04 2017-06-21 Telefonaktiebolaget LM Ericsson (publ) Post-quantization gain correction in audio coding
PL397008A1 (pl) * 2011-11-17 2013-05-27 Politechnika Poznanska Sposób kodowania obrazu
KR102123770B1 (ko) 2012-03-29 2020-06-16 텔레폰악티에볼라겟엘엠에릭슨(펍) 하모닉 오디오 신호의 변환 인코딩/디코딩
WO2014009775A1 (en) 2012-07-12 2014-01-16 Nokia Corporation Vector quantization
KR101877906B1 (ko) * 2013-01-29 2018-07-12 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 노이즈 채움 개념
PT3121813T (pt) * 2013-01-29 2020-06-17 Fraunhofer Ges Forschung Preenchimento de ruído sem informação lateral para codificadores do tipo celp
WO2014168777A1 (en) * 2013-04-10 2014-10-16 Dolby Laboratories Licensing Corporation Speech dereverberation methods, devices and systems
US9883312B2 (en) 2013-05-29 2018-01-30 Qualcomm Incorporated Transformed higher order ambisonics audio data
US20150149157A1 (en) * 2013-11-22 2015-05-28 Qualcomm Incorporated Frequency domain gain shape estimation
US9542955B2 (en) * 2014-03-31 2017-01-10 Qualcomm Incorporated High-band signal coding using multiple sub-bands
US10770087B2 (en) * 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
CN107424621B (zh) * 2014-06-24 2021-10-26 华为技术有限公司 音频编码方法和装置
US10847170B2 (en) * 2015-06-18 2020-11-24 Qualcomm Incorporated Device and method for generating a high-band signal from non-linearly processed sub-ranges
CN105578115B (zh) * 2015-12-22 2016-10-26 深圳市鹰硕音频科技有限公司 一种具有语音评估功能的网络教学方法及系统
KR102169435B1 (ko) * 2016-03-21 2020-10-23 후아웨이 테크놀러지 컴퍼니 리미티드 가중된 행렬 계수의 적응형 양자화
US10991379B2 (en) * 2018-06-22 2021-04-27 Babblelabs Llc Data driven audio enhancement
CN113691224A (zh) * 2021-08-12 2021-11-23 上海艾为电子技术股份有限公司 数字音频功放电路、芯片及减小空闲音的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090187409A1 (en) 2006-10-10 2009-07-23 Qualcomm Incorporated Method and apparatus for encoding and decoding audio signals

Family Cites Families (110)

* 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 ソニー株式会社 ベクトル量子化方法、音声符号化方法及び装置
CN1262994C (zh) 1996-11-07 2006-07-05 松下电器产业株式会社 噪声消除器
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
DE69836081D1 (de) 1997-07-11 2006-11-16 Koninkl Philips Electronics Nv Transmitter mit verbessertem harmonischen sprachkodierer
DE19730130C2 (de) 1997-07-14 2002-02-28 Fraunhofer Ges Forschung Verfahren zum Codieren eines Audiosignals
WO1999010719A1 (en) 1997-08-29 1999-03-04 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
TW536692B (en) 1999-04-16 2003-06-11 Dolby Lab Licensing Corp Using gain-adaptive quantization and non-uniform symbol lengths for improved audio coding
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
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 ソニー株式会社 信号符号化装置及び方法、並びに信号復号装置及び方法
KR100871999B1 (ko) 2001-05-08 2008-12-05 코닌클리케 필립스 일렉트로닉스 엔.브이. 오디오 코딩
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
US7240001B2 (en) * 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
US7027982B2 (en) 2001-12-14 2006-04-11 Microsoft Corporation Quality and rate control strategy for digital audio
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
ES2259158T3 (es) 2002-09-19 2006-09-16 Matsushita Electric Industrial Co., Ltd. Metodo y aparato decodificador audio.
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 日本電信電話株式会社 音声楽音信号符号化方法、復号化方法、符号化装置、復号化装置、符号化プログラム、および復号化プログラム
WO2005020210A2 (en) 2003-08-26 2005-03-03 Sarnoff Corporation 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
JPWO2006006366A1 (ja) 2004-07-13 2008-04-24 松下電器産業株式会社 ピッチ周波数推定装置およびピッチ周波数推定方法
US20060015329A1 (en) 2004-07-19 2006-01-19 Chu Wai C Apparatus and method for audio coding
RU2500043C2 (ru) 2004-11-05 2013-11-27 Панасоник Корпорэйшн Кодер, декодер, способ кодирования и способ декодирования
JP4599558B2 (ja) 2005-04-22 2010-12-15 国立大学法人九州工業大学 ピッチ周期等化装置及びピッチ周期等化方法、並びに音声符号化装置、音声復号装置及び音声符号化方法
BRPI0520729B1 (pt) 2005-11-04 2019-04-02 Nokia Technologies Oy Método para a codificação e decodificação de sinais de áudio, codificador para codificação e decodificador para decodificar sinais de áudio e sistema para compressão de áudio digital.
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 カシオ計算機株式会社 音声符号化装置、音声符号化方法、及び、プログラム
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
JP5339919B2 (ja) 2006-12-15 2013-11-13 パナソニック株式会社 符号化装置、復号装置およびこれらの方法
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
WO2008155707A1 (en) 2007-06-21 2008-12-24 Koninklijke Philips Electronics N.V. Method for encoding vectors.
US7885819B2 (en) 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
EP2186089B1 (en) * 2007-08-27 2018-10-03 Telefonaktiebolaget LM Ericsson (publ) Method and device for perceptual spectral decoding of an audio signal including filling of spectral holes
US8566106B2 (en) * 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
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
PL2311033T3 (pl) * 2008-07-11 2012-05-31 Fraunhofer Ges Forschung Dostarczanie sygnału aktywującego dopasowanie czasowe i kodowanie sygnału audio z jego użyciem
ES2642906T3 (es) 2008-07-11 2017-11-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificador de audio, procedimientos para proporcionar un flujo de audio y programa de ordenador
US8300616B2 (en) 2008-08-26 2012-10-30 Futurewei Technologies, Inc. System and method for wireless communications
WO2010053287A2 (en) * 2008-11-04 2010-05-14 Lg Electronics Inc. An apparatus for processing an audio signal and method thereof
ES2901735T3 (es) 2009-01-16 2022-03-23 Dolby Int Ab Transposición armónica mejorada de productos de cruce
WO2010092827A1 (ja) 2009-02-13 2010-08-19 パナソニック株式会社 ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法
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
ES2458354T3 (es) 2010-03-10 2014-05-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador de señales de audio, codificador de señales de audio, métodos y programa de ordenador que utiliza tasa de muestreo dependiente de la codificación del contorno de distorsión en el tiempo
WO2011141772A1 (en) 2010-05-12 2011-11-17 Nokia Corporation Method and apparatus for processing an audio signal based on an estimated loudness
US9236063B2 (en) 2010-07-30 2016-01-12 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dynamic bit allocation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090187409A1 (en) 2006-10-10 2009-07-23 Qualcomm Incorporated Method and apparatus for encoding and decoding audio signals

Also Published As

Publication number Publication date
KR20130030332A (ko) 2013-03-26
US9208792B2 (en) 2015-12-08
EP2606487A2 (en) 2013-06-26
JP2013539068A (ja) 2013-10-17
US20120046955A1 (en) 2012-02-23
JP5680755B2 (ja) 2015-03-04
ES2808302T3 (es) 2021-02-26
CN103069482B (zh) 2015-12-16
EP2606487B1 (en) 2020-04-29
HUE049109T2 (hu) 2020-09-28
WO2012024379A2 (en) 2012-02-23
WO2012024379A3 (en) 2012-04-26
CN103069482A (zh) 2013-04-24

Similar Documents

Publication Publication Date Title
KR101445512B1 (ko) 잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR101445510B1 (ko) 하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들
US9728200B2 (en) Systems, methods, apparatus, and computer-readable media for adaptive formant sharpening in linear prediction coding
EP2599079A2 (en) Systems, methods, apparatus, and computer-readable media for dependent-mode coding of audio signals
HUE035162T2 (en) Systems, procedures, equipment and computer-readable media for decoding harmonic signals

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: 20180628

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 6