하모닉패턴 계산기 - hamonigpaeteon gyesangi

KR20130036364A - 하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들 - Google Patents

하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들 Download PDF

Info

Publication numberKR20130036364A KR20130036364A KR1020137005161A KR20137005161A KR20130036364A KR 20130036364 A KR20130036364 A KR 20130036364A KR 1020137005161 A KR1020137005161 A KR 1020137005161A KR 20137005161 A KR20137005161 A KR 20137005161A KR 20130036364 A KR20130036364 A KR 20130036364AAuthorityKRSouth KoreaPrior art keywordssubbandcandidatessubbandslocationaudio signalPrior art date2010-07-30Application numberKR1020137005161AOther languages English (en) Other versions KR101445510B1 (koInventor비베크 라젠드란에단 로버트 두니벤카테쉬 크리쉬난애쉬쉬 쿠마르 타와리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.)2010-07-30Filing date2011-07-29Publication date2013-04-11 Priority claimed from US36966210P external-priority 2011-07-29 Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드 2013-04-11 Publication of KR20130036364A publication Critical patent/KR20130036364A/ko 2014-09-26 Application granted granted Critical 2014-09-26 Publication of KR101445510B1 publication Critical patent/KR101445510B1/ko

Links

  • Espacenet
  • Global Dossier
  • Discuss
  • 230000005236 sound signal Effects 0.000 claims description 128
  • 230000000875 corresponding Effects 0.000 claims description 74
  • 230000001965 increased Effects 0.000 claims description 6
  • 238000003672 processing method Methods 0.000 claims 4
  • 238000001228 spectrum Methods 0.000 description 30
  • 238000010586 diagram Methods 0.000 description 29
  • 238000004891 communication Methods 0.000 description 22
  • 239000000203 mixture Substances 0.000 description 17
  • 238000000034 method Methods 0.000 description 10
  • 238000004458 analytical method Methods 0.000 description 9
  • 230000005540 biological transmission Effects 0.000 description 9
  • 230000003287 optical Effects 0.000 description 9
  • 230000000694 effects Effects 0.000 description 8
  • 230000015654 memory Effects 0.000 description 7
  • 238000001514 detection method Methods 0.000 description 6
  • 101700058872 SC10 Proteins 0.000 description 4
  • 230000003044 adaptive Effects 0.000 description 3
  • 239000000835 fiber Substances 0.000 description 3
  • 238000005070 sampling Methods 0.000 description 3
  • 230000001413 cellular Effects 0.000 description 2
  • 238000007906 compression Methods 0.000 description 2
  • 238000004590 computer program Methods 0.000 description 2
  • 235000019800 disodium phosphate Nutrition 0.000 description 2
  • 238000005516 engineering process Methods 0.000 description 2
  • 239000003365 glass fiber Substances 0.000 description 2
  • 230000000873 masking Effects 0.000 description 2
  • 230000000737 periodic Effects 0.000 description 2
  • 230000004044 response Effects 0.000 description 2
  • 239000004065 semiconductor Substances 0.000 description 2
  • 238000000926 separation method Methods 0.000 description 2
  • CDDBPMZDDVHXFN-ONEGZZNKSA-N 2-[(E)-3-(1,3-benzodioxol-5-yl)prop-2-enyl]-1-hydroxypiperidine Chemical compound ON1CCCCC1C\C=C\C1=CC=C(OCO2)C2=C1 CDDBPMZDDVHXFN-ONEGZZNKSA-N 0.000 description 1
  • 210000003666 Nerve Fibers, Myelinated Anatomy 0.000 description 1
  • 240000001439 Opuntia Species 0.000 description 1
  • 206010057190 Respiratory tract infection Diseases 0.000 description 1
  • 238000004364 calculation method Methods 0.000 description 1
  • 239000000969 carrier Substances 0.000 description 1
  • 238000005056 compaction Methods 0.000 description 1
  • 239000002131 composite material Substances 0.000 description 1
  • 239000012141 concentrate Substances 0.000 description 1
  • 230000003247 decreasing Effects 0.000 description 1
  • 230000001934 delay Effects 0.000 description 1
  • 230000002708 enhancing Effects 0.000 description 1
  • 230000005284 excitation Effects 0.000 description 1
  • 230000014509 gene expression Effects 0.000 description 1
  • 238000009499 grossing Methods 0.000 description 1
  • 239000006249 magnetic particle Substances 0.000 description 1
  • 230000000116 mitigating Effects 0.000 description 1
  • 230000004048 modification Effects 0.000 description 1
  • 238000006011 modification reaction Methods 0.000 description 1
  • 239000002245 particle Substances 0.000 description 1
  • OZAIFHULBGXAKX-UHFFFAOYSA-N precursor Substances N#CC(C)(C)N=NC(C)(C)C#N OZAIFHULBGXAKX-UHFFFAOYSA-N 0.000 description 1
  • 230000001902 propagating Effects 0.000 description 1
  • 230000002104 routine Effects 0.000 description 1
  • 239000007787 solid Substances 0.000 description 1
  • 230000003068 static Effects 0.000 description 1
  • 238000000844 transformation Methods 0.000 description 1
  • 230000001131 transforming Effects 0.000 description 1
  • 230000001702 transmitter Effects 0.000 description 1
  • XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1

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

신호의 오디오-주파수 범위를 표현하는 일 세트의 변환 계수들을 코딩하기 위한 방식은, 하모닉 모델을 사용하여 주파수 도메인에서 중요한 에너지의 영역들의 로케이션들 간의 관계를 파라미터화한다.

Description

하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들{SYSTEMS, METHODS, APPARATUS, AND COMPUTER-READABLE MEDIA FOR CODING OF HARMONIC SIGNALS}

35 U.S.C.§119 하의 우선권 주장

본 특허 출원은, 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), 돌비 디지털 (Dolby Digital) (영국 런던 소재의 돌비 연구소; AC-3 이라고도 불리고 ATSC A/52 로서 표준화됨), 보비스 (Vorbis) (매사추세츠주 소머빌 소재의 Xiph.Org 재단), 윈도우즈 미디어 오디오 (Windows Media Audio; WMA) (워싱턴주 레드몬드 소재의 Microsoft Corp.), ATRAC (Adaptive Transform Acoustic Coding) (일본 도쿄 소재의 Sony Corp.) 및 고급 오디오 코딩 (Advanced Audio Coding; AAC) (ISO/IEC 14496-3:2009 에서 가장 최근에 표준화됨) 을 포함한다. MDCT 코딩은 또한 향상된 가변 레이트 코덱 (Enhanced Variable Rate Codec; EVRC) (3 세대 파트너십 프로젝트 2 (3GGP2) 문서 C.S0014-D v2.0 (2010년 1월 25일) 에서 표준화됨) 과 같은 일부 전기통신 표준들의 컴포넌트이다. G.718 코덱 (2008년 6 월에 스위스 제네바에서 개최되고, 2008년 11월 및 2009년 8월에 정정되며, 2009년 3월 및 2010년 3월에 개정된, "Frame error robust narrowband and wideband embedded variable bit-rate coding of speech and audio from 8-32 kbit/s", 전기통신 표준화 부문 (ITU-T)) 은 MDCT 코딩을 사용하는 멀티-계층 코덱의 일 예이다.

일반적인 구성 (configuration) 에 따른 오디오 신호 프로세싱의 방법은 주파수 도메인에서 기준 오디오 신호 내의 복수의 피크들을 로케이팅하는 단계를 포함한다. 이 방법은 또한, 하모닉 모델 (harmonic model) 의 기본 주파수에 대한 후보들의 개수 Nf 를 선택하는 단계를 포함하며, 각각의 후보는 주파수 도메인에서의 복수의 피크들 중 대응하는 피크의 로케이션에 기초한다. 이 방법은 또한, 주파수 도메인에서의 복수의 피크들 중 적어도 2 개의 피크들의 로케이션들에 기초하여, 하모닉 스페이싱 후보들의 개수 Nd 를 계산하는 단계를 포함한다. 이 방법은, 기본 주파수 및 하모닉 스페이싱 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하는 단계를 포함하며, 그 세트 내의 각각의 서브대역의 주파수 도메인에서의 로케이션은 후보 쌍에 기초한다. 이 방법은, 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 대응하는 세트의 적어도 하나의 서브대역으로부터 에너지 값을 계산하는 단계, 및 적어도 복수의 계산된 에너지 값들에 기초하여, 후보들의 복수의 상이한 쌍들 중에서 후보들의 쌍을 선택하는 단계를 포함한다. 유형의 피처들을 판독하는 머신으로 하여금, 이러한 방법을 수행하도록 하는 그 피처들을 갖는 컴퓨터 판독가능 저장 매체 (예를 들어, 비일시적 매체) 가 또한 개시된다.

일반적인 구성에 따른 오디오 신호 프로세싱을 위한 장치는, 주파수 도메인에서 기준 오디오 신호 내의 복수의 피크들을 로케이팅하는 수단; 하모닉 모델의 기본 주파수에 대한 후보들의 개수 Nf 를 선택하는 수단으로서, 각각은 주파수 도메인에서의 복수의 피크들 중 대응하는 피크의 로케이션에 기초하는, 상기 개수 Nf 를 선택하는 수단; 및 주파수 도메인에서의 피크들 중 적어도 2 개의 피크들의 로케이션들에 기초하여, 하모닉 모델의 하모닉들 사이의 스페이싱에 대한 후보들의 개수 Nd 를 계산하는 수단을 포함한다. 이 장치는 또한, 기본 주파수 및 하모닉 스페이싱 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하는 수단으로서, 그 세트 내의 각각의 서브대역의 주파수 도메인에서의 로케이션은 후보들의 쌍에 기초하는, 상기 일 세트의 적어도 하나의 서브대역을 선택하는 수단; 및 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 대응하는 세트의 적어도 하나의 서브대역으로부터 에너지 값을 계산하는 수단을 포함한다. 이 접근법은 또한 적어도 복수의 계산된 에너지 값들에 기초하여, 후보들의 복수의 상이한 쌍들 중에서 후보들의 쌍을 선택하는 수단을 포함한다.

다른 일반적인 구성에 따른 오디오 신호 프로세싱을 위한 장치는, 주파수 도메인에서 기준 오디오 신호 내의 복수의 피크들을 로케이팅하도록 구성된 주파수-도메인 피크 로케이터; 하모닉 모델의 기본 주파수에 대한 후보들의 개수 Nf 를 선택하도록 구성된 기본 주파수 후보 선택기로서, 각각은 주파수 도메인에서의 복수의 피크들 중 대응하는 피크의 로케이션에 기초하는, 상기 기본 주파수 후보 선택기; 및 주파수 도메인에서의 피크들 중 적어도 2 개의 피크들의 로케이션들에 기초하여, 하모닉 모델의 하모닉들 사이의 스페이싱에 대한 후보들의 개수 Nd 를 계산하도록 구성된 거리 계산기를 포함한다. 이 장치는 또한, 기본 주파수 및 하모닉 스페이싱 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하도록 구성된 서브대역 배치 선택기로서, 그 세트 내의 각각의 서브대역의 주파수 도메인에서의 로케이션은 후보들의 쌍에 기초하는, 상기 서브대역 배치 선택기; 및 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 대응하는 세트의 적어도 하나의 서브대역으로부터 에너지 값을 계산하도록 구성된 에너지 계산기를 포함한다. 이 장치는 또한, 적어도 복수의 계산된 에너지 값들에 기초하여, 후보들의 복수의 상이한 쌍들 중에서 후보들의 쌍을 선택하도록 구성된 후보 쌍 선택기를 포함한다.

도 1a 는 일반적인 구성에 따라 오디오 신호를 프로세싱하는 방법 MA100 에 대한 플로우차트를 도시한다.
도 1b 는 태스크 TA600 의 일 구현 TA602 에 대한 플로우차트를 도시한다.
도 2a 는 피크 선택 윈도우의 일 예를 예시한 도면이다.
도 2b 는 태스크 T430 의 애플리케이션의 일 예를 도시한 도면이다.
도 3a 는 방법 MA100 의 일 구현 MA110 의 플로우차트를 도시한다.
도 3b 는 인코딩된 신호를 디코딩하는 방법 MD100 의 플로우차트를 도시한다.
도 4 는 하모닉 신호의 일 예 및 대안의 세트들의 선택된 서브대역들의 플롯을 도시한다.
도 5 는 태스크 TA400 의 일 구현 TA402 의 플로우차트를 도시한다.
도 6 은 방법 MA100 의 일 구현에 따라 배치된 일 세트의 서브대역들의 일 예를 도시한 도면이다.
도 7 은 지터 정보의 결여를 보상하기 위한 접근법의 일 예를 도시한 도면이다.
도 8 은 잔여 신호의 영역을 확장하는 일 예를 도시한 도면이다.
도 9 는 유닛 펄스들의 개수로서 잔여 신호의 일부를 인코딩하는 일 예를 도시한 도면이다.
도 10a 는 일반적인 구성에 따라 오디오 신호를 프로세싱하는 방법 MB100 에 대한 플로우차트를 도시한다.
도 10b 는 방법 MB100 의 일 구현 MB110 의 플로우차트를 도시한다.
도 11 은 타겟 오디오 신호가 UB-MDCT 신호인 일 예에 대한 매그니튜드 대 주파수의 플롯을 도시한다.
도 12a 는 일반적인 구성에 따라 오디오 신호를 프로세싱하기 위한 장치 MF100 의 블록도를 도시한다.
도 12b 는 일반적인 구성에 따라 오디오 신호를 프로세싱하기 위한 장치 A100 의 블록도를 도시한다.
도 13a 는 장치 MF100 의 일 구현 MF110 의 블록도를 도시한다.
도 13b 는 장치 A100 의 일 구현 A110 의 블록도를 도시한다.
도 14 는 일반적인 구성에 따라 오디오 신호를 프로세싱하기 위한 장치 MF210 의 블록도를 도시한다.
도 15a 및 도 15b 는 타겟 신호들을 인코딩하는 것에 대한 방법 MB110 의 애플리케이션들의 예들을 예시한 도면들이다.
도 16 의 A 내지 E 는 장치 A110, 장치 MF110, 또는 장치 MF210 의 다양한 구현들에 대한 일 범위의 애플리케이션들을 도시한 도면들이다.
도 17a 는 신호 분류의 방법 MC100 의 블록도를 도시한다.
도 17b 는 통신 디바이스 D10 의 블록도를 도시한다.
도 18 은 핸드셋 H100 의 프론트 뷰, 리어 뷰 및 사이드 뷰를 도시한다.
도 19 는 방법 MA100 의 애플리케이션의 일 예를 도시한 도면이다.

인코딩될 신호 내의 중요한 에너지 (significant energy) 의 영역들을 식별하는 것이 바람직할 수도 있다. 이러한 영역들을 나머지 신호로부터 분리하는 것은 증가된 코딩 효율을 위해 이들 영역들의 타겟팅된 코딩을 가능하게 한다. 예를 들어, 상대적으로 더 많은 비트들을 사용하여 이러한 영역들을 인코딩하고 상대적은 더 적은 비트들 (또는 심지어는 비트들이 없다) 을 사용하여 신호의 다른 영역들을 인코딩함으로써 코딩 효율을 증가시키는 것이 바람직할 수도 있다.

높은 하모닉 컨텐트를 갖는 오디오 신호들 (예를 들어, 음악 신호들, 유성음 스피치 신호들) 의 경우, 주파수 도메인에서의 중요한 에너지의 영역들의 로케이션들이 관련될 수도 있다. 이러한 하모닉시티 (harmonicity) 를 활용함으로써 오디오 신호의 효율적인 변환-도메인 코딩을 수행하는 것이 바람직할 수도 있다.

신호의 오디오-주파수 범위를 표현하는 일 세트의 변환 계수들을 코딩하기 위한 여기에 설명된 방식은 하모닉 모델을 사용하여 주파수 도메인에서의 중요한 에너지의 영역들의 로케이션들 간의 관계를 파라미터화함으로써 신호 스펙트럼에 걸친 하모닉시티를 활용한다. 이 하모닉 모델의 파라미터들은 (예를 들어, 증가하는 주파수의 순서의) 이들 영역들 중의 제 1 영역의 로케이션 및 연속적인 영역들 간의 스페이싱을 포함할 수도 있다. 하모닉 모델 파라미터들을 추정하는 것은 후보 세트들의 파라미터 값들의 풀 (pool) 을 생성하는 것 및 생성된 풀 중에서 일 세트의 모델 파라미터 값들을 선택하는 것을 포함할 수도 있다. 특정 애플리케이션에서, 이러한 방식은 선형 예측 코딩 연산의 잔여물 (residual) 과 같이, 오디오 신호의 0 내지 4kHz 범위 (이하 저대역 (lowband) MDCT (또는 LB-MDCT) 로 지칭) 에 대응하는 MDCT 변환 계수들을 인코딩하는데 사용된다.

중요한 에너지의 영역들의 로케이션들을 그들의 컨텐트로부터 분리하는 것은, 이들 영역들의 로케이션들 간의 하모닉 관계의 표현이 최소 보조 정보 (예를 들어, 하모닉 모델의 파라미터 값들) 를 사용하여 디코더에 송신되는 것을 허용한다. 이러한 효율은 셀룰러 전화와 같은 낮은 비트-레이트 (row-bit-rate) 애플리케이션들에 특히 중요할 수도 있다.

그 문맥에 의해 명확히 제한되지 않는다면, 용어 "신호" 는 여기서 와이어, 버스, 또는 다른 송신 매체 상에서 표현되는 바와 같은 메모리 로케이션 (또는 메모리 로케이션들의 세트) 의 상태를 포함하는, 그 용어의 통상적인 의미들 중의 임의의 것을 나타내는데 사용된다. 그 문맥에 의해 명확히 제한되지 않는다면, 용어 "생성하는 것 (generating)" 은 여기서 컴퓨팅하는 것 또는 다르게는 생성하는 것 (producing) 과 같이, 그 용어의 통상적인 의미들 중 임의의 것을 나타내는데 사용된다. 그 문맥에 의해 명확히 제한되지 않는다면, 용어 "계산하는 것" 은 여기서 복수의 값들로부터 컴퓨팅하는 것, 평가하는 것, 평활화하는 것, 및/또는 선택하는 것과 같이, 그 용어의 통상적인 의미들 중 임의의 것을 나타내는데 사용된다. 그 문맥에 의해 명확히 제한되지 않는다면, 용어 "획득하는 것" 은 계산하는 것, 유도하는 것, (예를 들어, 외부 디바이스로부터) 수신하는 것, 및/또는 (예를 들어, 저장 엘리먼트들의 어레이로부터) 취출하는 것과 같이, 그 용어의 통상적인 의미들 중 임의의 것을 나타내는데 사용된다. 그 문맥에 의해 명확히 제한되지 않는다면, 용어 "선택하는 것" 은 2 개 이상으로 된 세트 중 적어도 하나, 및 그 세트의 전부보다 적은 것을 식별하는 것, 나타내는 것, 적용하는 것, 및/또는 사용하는 것과 같이, 그 용어의 통상적인 의미들 중 임의의 것을 나타내는데 사용된다. 용어 "포함하는 것" 이 본 설명 및 청구범위에서 사용되는 경우, 그 용어는 다른 엘리먼트들 또는 동작들을 배제하지 않는다. 용어 ("A 가 B 에 기초한다" 에서와 같이) "~ 에 기초하는" 은 (i) "~ 로부터 유도된" 경우 (예를 들어 "B 는 A 의 선행물 (precursor) 이다"), (ii) "~ 에 적어도 기초한" 경우 (예를 들어, "A 는 적어도 B 에 기초한다"), 및 특정 문맥에서 적합하다면, (iii) "~ 와 동일한" 경우 (예를 들어, "A 는 B 와 동일하다") 를 포함하는, 그 용어의 통상적인 의미들 중 임의의 것을 나타내는데 사용된다. 유사하게, 용어 "~ 에 응답하여" 는 "적어도 ~ 에 응답하여" 를 포함하는, 그 용어의 통상적인 의미들 중 임의의 것을 나타내는데 사용된다.

다르게 나타내지 않는다면, 용어 "시리즈 (series)" 는 2 개 이상의 아이템들의 시퀀스를 나타내는데 사용된다. 용어 "로그 (logarithm)" 는 베이스-10 의 로그를 나타내는데 사용되지만, 이러한 연산의 다른 베이스들로의 확장들은 본 개시물의 범위 내에 있다. 용어 "주파수 컴포넌트" 는, (예를 들면, 고속 푸리에 변환 (fast Fourier transform) 에 의해 생성된) 신호의 주파수 도메인 표현의 샘플 또는 신호의 서브대역 (예를 들면, 바크 스케일 (Bark scale) 또는 멜 스케일 (mel scale) 서브대역) 과 같은 신호의 주파수들 또는 주파수 대역들의 세트 중에서 하나를 나타내는데 사용된다.

다르게 나타내지 않는다면, 특정 피처를 갖는 장치의 동작의 임의의 개시물은 또한 유사한 피처를 갖는 방법을 명확히 개시하는 것으로 의도되며 (그 역도 또한 마찬가지이다), 특정 구성에 따른 장치의 동작의 임의의 개시물은 또한 유사한 구성에 따른 방법을 명확히 개시하는 것으로 의도된다 (그 역도 또한 마찬가지이다). 용어 "구성 (configuration)" 은 그 용어의 특정 문맥에 의해 나타낸 바와 같이 방법, 장치 및/또는 시스템과 관련하여 사용될 수도 있다. 용어들 "방법", "프로세스", "절차", 및 "기법" 은 특정 문맥에 의해 다르게 나타내지 않는다면 일반적으로 그리고 상호교환가능하게 사용된다. 용어들 "장치" 및 "디바이스" 는 또한 특정 문맥에 의해 다르게 나타내지 않는다면 일반적으로 그리고 상호교환가능하게 사용된다. 용어들 "엘리먼트" 및 "모듈" 은 통상 더 큰 구성의 일부를 나타내는데 사용된다. 용어 "시스템" 은, 그 용어의 문맥에 의해 명확히 제한되지 않는다면, 여기서 "공통 목적을 서비스하기 위해 상호작용하는 엘리먼트들의 그룹" 을 포함하는, 그 용어의 통상적인 의미들 중 임의의 것을 나타내는데 사용된다. 문서의 일 부분의 참조에 의한 임의의 통합은 또한 그 부분 내에서 참조되는 용어들 또는 변수들의 정의들 (여기서 이러한 정의들은 문서 내의 어딘가 다른 곳에 나타난다) 뿐만 아니라, 통합된 부분 내에서 참조된 임의의 도 (figure) 들을 통합하는 것으로 이해되어야 한다.

여기에 설명된 시스템들, 방법들, 및 장치는 일반적으로 주파수 도메인에서의 오디오 신호들의 코딩 표현들에 적용가능하다. 이러한 표현의 통상적인 예는 변환 도메인에서의 변환 계수들의 시리즈이다. 적합한 변환들의 예들은 이산 직교 변환 (discrete orthogonal transform) 들, 이를 테면 사인곡선 유니터리 변환 (sinusoidal unitary transform) 들을 포함한다. 적합한 사인곡선 유니터리 변환들의 예들은 이산 코사인 변환 (DCT) 들, 이산 사인 변환 (DST) 들, 및 이산 푸리에 변환 (DFT) 을 제한 없이 포함하는, 이산 삼각 변환 (discrete trigonometric transform) 들을 포함한다. 적합한 변환들의 다른 예들은 이러한 변환들의 랩핑된 (lapped) 버전들을 포함한다. 적합한 변환의 특정 예는 상기 도입된 변형 DCT (MDCT) 이다.

본 개시물 전반에 걸쳐 오디오 주파수 범위의 "저대역" 및 "고대역" (동등하게는 "상위 대역"), 및 0 내지 4 킬로헤르츠 (kHz) 의 저대역 및 3.5 내지 7kHz 의 고대역의 특정 예를 참조하게 된다. 여기에 논의된 원리들은, 제한이 명확히 언급되지 않는다면, 어느 방식으로도 이 특정 예에 제한되지 않는다는 것에 명확히 주목된다. 인코딩, 디코딩, 할당, 양자화, 및/또는 다른 프로세싱의 이들 원리들의 적용이 명확히 고려되고 이로써 개시되는 주파수 범위들의 다른 예들 (다시 제한 없음) 은 0, 25, 50, 100, 150, 및 200Hz 중 임의의 것에서 하한을 갖고 3000, 3500, 4000, 및 4500Hz 중 임의의 것에서 상한을 갖는 저대역, 및 3000, 3500, 4000, 4500, 및 5000Hz 중 임의의 것에서 하한을 갖고 6000, 6500, 7000, 7500, 8000, 8500, 및 9000Hz 중 임의의 것에서 상한을 갖는 고대역을 포함한다. 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 7000, 7500, 8000, 8500, 및 9000Hz 중 임의의 것에서 하한을 갖고 10, 10.5, 11, 11.5, 12, 12.5, 13, 13.5, 14, 14.5, 15, 15.5, 및 16kHz 중 임의의 것에서 상한을 갖는 고대역에 이러한 원리들의 적용 (다시 제한 없음) 이 또한 명확히 고려되고 이로써 개시된다. 또한, 고대역 신호가 통상 (예를 들어, 리샘플링 및/또는 데시메이션을 통해) 코딩 프로세스의 초기 스테이지에서 하위 샘플링 레이트로 컨버팅될 것이지만, 고대역 신호를 유지하고 그 고대역 신호가 운반하는 정보는 고대역 오디오-주파수 범위를 계속 표현한다는 것에 명확히 주목된다. 저대역과 고대역이 주파수에서 오버랩하는 경우, 저대역의 오버랩핑 부분을 제로 아웃하거나, 고대역의 오버랩핑 부분을 제로 아웃하거나, 또는 오버랩핑 부분에 걸쳐 저대역으로부터 고대역으로 크로스-페이드하는 것이 바람직할 수도 있다.

여기에 설명한 바와 같이 코딩 방식이 임의의 오디오 신호 (예를 들어, 스피치를 포함) 를 코딩하기 위해 적용될 수도 있다. 대안으로, 이러한 코딩 방식을 넌-스피치 오디오 (예를 들어, 음악) 를 위해서만 사용하는 것이 바람직할 수도 있다. 이러한 경우에, 코딩 방식은 분류 방식 (classification scheme) 에 의해, 오디오 신호의 각각의 프레임의 컨텐트의 타입을 결정하고 적합한 코딩 방식을 선택하는데 사용될 수도 있다.

여기에 설명한 바와 같이 코딩 방식은 프라이머리 코덱으로서 또는 멀티 계층 또는 멀티 스테이지 코덱에서의 계층 또는 스테이지로서 사용될 수도 있다. 하나의 이러한 예에서, 이러한 코딩 방식은 오디오 신호의 주파수 컨텐트의 일 부분 (예를 들어, 저대역 또는 고대역) 을 코딩하는데 사용되고, 다른 코딩 방식은 신호의 주파수 컨텐트의 다른 부분을 코딩하는데 사용된다. 다른 이러한 예에서, 이러한 코딩 방식은 다른 코딩 계층의 잔여물 (즉, 원래의 신호와 인코딩된 신호 사이의 에러) 을 코딩하는데 사용된다.

도 1a 는 태스크 TA100, 태스크 TA200, 태스크 TA300, 태스크 TA400, 태스크 TA500 및 태스크 TA600 을 포함하는 일반적인 구성에 따라 오디오 신호를 프로세싱하는 방법 MA100 에 대한 플로우차트를 도시한다. 방법 MA100 은 오디오 신호를 세그먼트들의 시리즈로서 (예를 들어, 각각의 세그먼트에 대해 태스크 TA100, 태스크 TA200, 태스크 TA300, 태스크 TA400, 태스크 TA500, 및 태스크 TA600 각각의 인스턴스를 수행함으로써) 프로세싱하도록 구성될 수도 있다. 세그먼트 (또는 "프레임") 는 통상 약 5 밀리초 또는 10 밀리초에서 약 40 밀리초 또는 50 밀리초의 범위의 길이를 가진 시간-도메인 세그먼트에 대응하는 변환 계수들의 블록일 수도 있다. 시간-도메인 세그먼트들은 오버랩핑 (예를 들어, 인접한 세그먼트들은 25% 또는 50% 만큼 오버랩핑) 일 수도 있고 또는 넌오버랩핑일 수도 있다.

오디오 코더에서는 높은 품질과 낮은 지연 양자를 획득하는 것이 바람직할 수도 있다. 오디오 코더는 높은 품질을 획득하기 위해 큰 프레임 사이즈를 사용할 수도 있지만, 유감스럽게도 큰 프레임 사이즈는 통상 더 긴 지연을 초래한다. 오디오 인코더의 잠재적인 이점들은 여기에 설명한 바와 같이 작은 프레임 사이즈들 (예를 들어, 10 밀리초 미리보기 (lookahead) 를 가진 20 밀리초 프레임 사이즈) 을 가진 높은 품질 코딩을 포함한다. 하나의 특정 예에서, 시간-도메인 신호는 20 밀리초 넌오버랩핑 세그먼트들의 시리즈로 분할되며, 각각의 프레임에 대한 MDCT 가 10 밀리초만큼 인접한 프레임들 각각을 오버랩핑하는 40 밀리초 윈도우에 대해 행해진다.

방법 MA100 에 의해 프로세싱한 바와 같은 세그먼트는 변환에 의해 생성된 바와 같은 블록의 일 부분 (예를 들어, 저대역 또는 고대역), 또는 이러한 블록에 대한 이전 동작에 의해 생성된 바와 같은 블록의 일 부분일 수도 있다. 하나의 특정 예에서, 방법 MA100 에 의해 프로세싱된 세그먼트들의 시리즈 각각은 0 내지 4kHz 의 저대역 주파수 범위를 표현하는 160 MDCT 계수들의 세트를 포함한다. 다른 특정 예에서, 방법 MA100 에 의해 프로세싱된 세그먼트들의 시리즈 각각은 3.5 내지 7kHz 의 고대역 주파수 범위를 표현하는 140 MDCT 계수들의 세트를 포함한다.

태스크 TA100 은 주파수 도메인에서 오디오 신호 내의 복수의 피크들을 로케이팅한다. 이러한 동작은 "피크-픽킹 (peak-picking)" 으로도 지칭될 수도 있다. 태스크 TA100 은 신호의 전체 주파수 범위로부터 특정 개수의 가장 높은 피크들을 선택하도록 구성될 수도 있다. 대안으로, 태스크 TA100 은 신호의 특정 주파수 범위 (예를 들어, 낮은 주파수 범위) 로부터 피크들을 선택하도록 구성될 수도 있고, 또는 신호의 상이한 주파수 범위들에서 상이한 선택 기준을 적용하도록 구성될 수도 있다. 여기에 설명한 바와 같이 특정 예에서, 태스크 TA100 은 프레임의 낮은 주파수 범위에서 적어도 제 2 개수 Nf 의 가장 높은 피크들을 포함하는, 프레임 내에 적어도 제 1 개수 (Nd+1) 의 가장 높은 피크들을 로케이팅하도록 구성된다.

태스크 TA100 은 샘플의 어느 한쪽까지의 일부 최소 거리 내에 최대 값을 갖는 ("빈 (bin)" 이라고도 불리는) 주파수-도메인 신호의 샘플로서 피크를 식별하도록 구성될 수도 있다. 하나의 이러한 예에서, 태스크 TA100 은 샘플에 센터링되는 사이즈 (2dmin+1) 의 윈도우 내에 최대 값을 갖는 샘플로서 피크를 식별하도록 구성되며, 여기서 dmin 은 피크들 사이의 최소 허용된 스페이싱이다. dmin 의 값은 로케이팅될 ("서브대역들" 이라고도 불리는) 중요한 에너지의 영역들의 최대 원하는 개수에 따라 선택될 수도 있다. dmin 의 예들은, 8, 9, 10, 12, 및 15 개의 샘플들 (대안으로는, 100, 125, 150, 175, 200, 또는 250Hz) 을 포함하지만, 원하는 애플리케이션에 적합한 임의의 값이 사용될 수도 있다. 도 2a 는 dmin 의 값이 8 인 경우, 신호의 포텐셜 피크 로케이션에 센터링된, 사이즈 (2dmin+1) 의 피크 선택 윈도우의 일 예를 예시한다.

태스크 TA100 에 의해 로케이팅된 피크들의 적어도 일부 (즉, 적어도 3 개) 의 주파수-도메인 로케이션들에 기초하여, 태스크 TA200 은 ("거리" 또는 d 후보들이라고도 불리는) 하모닉 스페이싱 후보들의 개수 Nd 를 계산한다. Nd 에 대한 값들의 예들은 5, 6, 및 7 을 포함한다. 태스크 TA200 은 태스크 TA100 에 의해 로케이팅된 (Nd+1) 개의 가장 큰 피크들 중 인접한 피크들 사이의 (예를 들어, 주파수 빈들의 개수 관점의) 거리들로서 이들 스페이싱 후보들을 컴퓨팅하도록 구성될 수도 있다.

태스크 TA100 에 의해 로케이팅된 피크들의 적어도 일부 (즉, 적어도 2 개) 의 주파수-도메인 로케이션들에 기초하여, 태스크 TA300 은 ("기본 주파수" 또는 F0 후보들이라고도 불리는) 제 1 서브대역의 로케이션에 대한 후보들의 개수 Nf 를 식별한다. Nf 에 대한 값들의 예들은 5, 6, 및 7 을 포함한다. 태스크 TA300 은 이들 후보들을 신호 내의 Nf 개의 가장 높은 피크들의 로케이션들로서 식별하도록 구성될 수도 있다. 대안으로, 태스크 TA300 은 이들 후보들을 검사되는 주파수 범위의 낮은 주파수 부분 (예를 들어, 하위 30, 35, 40, 45 또는 50 퍼센트) 내의 Nf 개의 가장 높은 피크들의 로케이션들로서 식별하도록 구성될 수도 있다. 하나의 이러한 예에서, 태스크 TA300 은 0 내지 1250Hz 의 범위에서 태스크 TA100 에 의해 로케이팅된 피크들의 로케이션들 중에서 F0 후보들의 개수 Nf 를 식별한다. 다른 이러한 예에서, 태스크 TA300 은 0 내지 1600Hz 의 범위에서 태스크 TA100 에 의해 로케이팅된 피크들의 로케이션들 중에서 F0 후보들의 개수 Nf 를 식별한다.

방법 MA100 의 상기 설명된 구현들의 범위는, 단 하나의 하모닉 스페이싱 후보가 (예를 들어, 가장 큰 2 개의 피크들 사이의 거리, 또는 특정 주파수 범위 내의 가장 큰 2 개의 피크들 사이의 거리로서) 계산되는 경우, 및 단 하나의 F0 후보가 (예를 들어, 가장 높은 피크의 로케이션, 또는 특정 주파수 범위 내의 가장 높은 피크의 로케이션으로서) 식별되는 개별 경우를 포함한다는 것에 명확히 주목된다.

F0 및 d 후보들의 복수의 액티브 쌍들 각각에 대해, 태스크 TA400 은 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하며, 여기서 그 세트 내의 각각의 서브대역의 주파수 도메인에서의 로케이션은 (F0, d) 쌍에 기초한다. 하나의 예에서, 태스크 TA400 은, 제 1 서브대역이 대응하는 F0 로케이션에 센터링되도록 각각의 세트의 서브대역들을 선택하도록 구성되며, 여기서 각각의 후속 서브대역의 센터는 d 의 대응하는 값과 동일한 거리만큼 이전 서브대역의 센터로부터 분리된다.

태스크 TA400 은 입력 범위 내에 놓인 대응하는 (F0, d) 쌍에 의해 나타내지는 모든 서브대역들을 포함하는 각각의 세트를 선택하도록 구성될 수도 있다. 대안으로, 태스크 TA400 은 그 세트들 중 적어도 하나에 대해 이들 서브대역들의 전부보다 적은 서브대역을 선택하도록 구성될 수도 있다. 태스크 TA400 은 예를 들어, 그 세트에 대한 최대 개수 이하의 서브대역들을 선택하도록 구성될 수도 있다. 대안으로 또는 추가적으로, 태스크 TA400 은 특정 범위 내에 놓인 서브대역들만을 선택하도록 구성될 수도 있다. 하위 주파수들에서의 서브대역들은, 예를 들어, 입력 범위 내의 가장 낮은 주파수 서브대역들 및/또는 단지 로케이션들이 입력 범위 내의 특정 주파수 (예를 들어, 1000, 1500 또는 2000Hz) 를 넘지 않는 서브대역들 중 하나 이상 (예를 들어, 4, 5 또는 6 개) 의 특정 개수 이하를 선택하도록 태스크 TA400 을 구성하는 것이 바람직할 수도 있도록 지각적으로 더 중요한 경향이 있다.

태스크 TA400 은 고정된 및 동일한 길이의 서브대역들을 선택하도록 구현될 수도 있다. 특정 예에서, 각각의 서브대역은 7 개의 주파수 빈들의 폭 (예를 들어, 25Hz 의 빈 스페이싱의 경우, 175Hz) 을 갖는다. 그러나, 여기에 설명된 원리들은 또한 서브대역들의 길이들이 일 프레임에서 다른 프레임으로 변할 수도 있고, 및/또는 프레임 내의 서브대역들 중 2 개 이상 (가능하다면 전부) 의 길이들이 상이할 수도 있는 경우들에 또한 적용될 수도 있다는 것이 명확히 고려되고 이로써 개시된다.

하나의 예에서, F0 및 d 의 값들의 모든 상이한 쌍들은, 태스크 TA400 이 모든 가능한 (F0, d) 쌍에 대해 대응하는 세트의 하나 이상의 서브대역들을 선택하도록 구성되도록 액티브인 것으로 간주된다. 예를 들어, Nf 및 Nd 가 모두 7 과 동일한 경우, 태스크 TA400 은 49 개의 가능한 쌍들 각각을 고려하도록 구성될 수도 있다. Nf 가 5 와 동일하고 Nd 가 6 과 동일한 경우, 태스크 TA400 은 30 개의 가능한 쌍들 각각을 고려하도록 구성될 수도 있다. 대안으로, 태스크 TA400 은, 가능한 (F0, d) 쌍들 중 일부가 충족에 실패할 수도 있다는 기준을 활동에 대해 부과하도록 구성될 수도 있다. 이러한 경우에, 예를 들어, 태스크 TA400 은 최대 허용가능한 개수 초과의 서브대역들을 생성할 쌍들 (예를 들어, F0 과 d 의 낮은 값들의 조합들) 및/또는 최소 원하는 개수 미만의 서브대역들을 생성할 쌍들 (예를 들어, F0 과 d 의 높은 값들의 조합들) 을 무시하도록 구성될 수도 있다.

F0 및 d 후보들의 복수의 쌍들 각각에 대해, 태스크 TA500 은 오디오 신호의 대응하는 세트의 하나 이상의 서브대역들로부터 적어도 하나의 에너지 값을 계산한다. 하나의 이러한 예에서, 태스크 TA500 은 각각의 세트의 하나 이상의 서브대역들로부터의 에너지 값을 그 세트의 서브대역들의 총 에너지로서 (예를 들어, 서브대역들 내의 주파수-도메인 샘플 값들의 제곱된 매그니튜드들의 합 (a sume of the squared magnitudes) 으로서) 계산한다. 대안으로 또는 추가적으로, 태스크 TA500 은 각각의 세트의 서브대역들로부터의 에너지 값들을 각 개개의 서브대역의 에너지들로서 계산하고 및/또는 각각의 세트의 서브대역들로부터의 에너지 값을 그 세트의 서브대역들에 대한 서브대역당 평균 에너지 (예를 들어, 다수의 서브대역들에 대해 정규화된 총 에너지) 로서 계산하도록 구성될 수도 있다. 태스크 TA500 은 태스크 TA400 과 동일한 복수의 쌍들 각각에 대해 또는 이 복수개보다 적은 수에 대해 실행하도록 구성될 수도 있다. 예를 들어, 태스크 TA400 이 각 가능한 (F0, d) 쌍에 대해 일 세트의 서브대역들을 선택하도록 구성되는 경우, 태스크 TA500 은 활동에 대한 특정 기준을 충족하는 쌍들에 대해서만 에너지 값들을 계산하도록 (예를 들어, 상기 설명한 바와 같이, 너무 많은 서브대역들을 생성할 쌍들 및/또는 너무 적은 서브대역들을 생성할 쌍들을 무시하도록) 구성될 수도 있다. 다른 예에서, 태스크 TA400 은 너무 많은 서브대역들을 생성할 쌍들을 무시하도록 구성되고, 태스크 TA500 은 너무 적은 서브대역들을 생성할 쌍들을 또한 무시하도록 구성된다.

도 1a 는 태스크들 TA400 과 TA500 의 실행을 시리즈로 도시하지만, 태스크 TA400 이 완료하기 전에 태스크 TA500 이 또한 서브대역들의 세트들에 대한 에너지들을 계산하기 시작하도록 구성될 수도 있다는 것이 이해될 것이다. 예를 들어, 태스크 TA500 은 태스크 TA400 이 서브대역들의 다음 세트를 선택하기 시작하기 전에 일 세트의 서브대역들로부터 에너지 값을 계산하기 (심지어는 계산을 종료하기) 시작하도록 구현될 수도 있다. 하나의 이러한 예에서, 태스크 TA400 및 태스크 TA500 은 F0 및 d 후보들의 복수의 액티브 쌍들 각각에 대해 교대로 하도록 구성된다. 마찬가지로, 태스크 TA400 은 또한 태스크 TA200 및 태스크 TA300 이 완료하기 전에 실행을 시작하도록 구현될 수도 있다.

하나 이상의 서브대역들의 세트들의 적어도 일부로부터의 계산된 에너지 값들에 기초하여, 태스크 TA600 은 (F0, d) 후보 쌍들 중에서 후보 쌍을 선택한다. 하나의 예에서, 태스크 TA600 은 가장 높은 총 에너지를 갖는 서브대역들의 세트에 대응하는 쌍을 선택한다. 다른 예에서, 태스크 TA600 은 서브대역당 가장 높은 평균 에너지를 갖는 서브대역들의 세트에 대응하는 후보 쌍을 선택한다.

도 1b 는 태스크 TA600 의 추가 구현 TA602 에 대한 플로우차트를 도시한다. 태스크 TA620 은 대응하는 세트의 서브대역들의 서브대역당 평균 에너지에 따라 (예를 들어, 내림차순으로) 복수의 액티브 후보 쌍들을 소팅하는 태스크 TA610 을 포함한다. 이 동작은 높은 총 에너지를 갖지만 하나 이상의 서브대역들이 지각적으로 중요할 너무 적은 에너지를 가질 수도 있는 서브대역 세트들을 생성하는 후보 쌍들의 선택을 억제하게 돕는다. 이러한 조건은 과도한 개수의 서브대역들을 나타낼 수도 있다.

태스크 TA602 는 또한 서브대역당 가장 높은 평균 에너지들을 갖는 서브대역 세트들을 생성하는 Pv 후보 쌍들 중에서, 가장 높은 총 에너지를 캡처하는 서브대역 세트와 연관된 후보 쌍을 선택하는 태스크 TA620 을 포함한다. 이 동작은, 서브대역당 높은 평균 에너지를 갖지만 너무 적은 서브대역들 갖는 서브대역 세트들을 생성하는 후보 쌍들의 선택을 억제하게 돕는다. 이러한 조건은, 서브대역들의 세트가 더 낮은 에너지를 갖지만 여전히 지각적으로 중요할 수도 있는 신호의 영역들을 포함하기를 실패한다는 것을 나타낼 수도 있다.

태스크 TA620 은 Pv 에 대해 고정된 값, 이를 테면 4, 5, 6, 7, 8, 9 또는 10 을 사용하도록 구성될 수도 있다. 대안으로, 태스크 TA620 은 액티브 후보 쌍들의 총 개수와 관련되는 (예를 들어, 액티브 후보 쌍들의 총 개수의 10, 20, 또는 25 퍼센트와 동일하거나 그 이하인) Pv 의 값을 사용하도록 구성될 수도 있다.

F0 및 d 의 선택된 값들은 정수 값들이고 유한 개수의 비트들을 이용하여 디코더에 송신될 수 있는 모델 보조 정보를 포함한다. 도 3 은 태스크 TA700 을 포함하는 방법 MA100 의 일 구현 MA110 의 플로우차트를 도시한다. 태스크 TA700 은 선택된 후보 쌍의 값들의 표시들을 포함하는 인코딩된 신호를 생성한다. 태스크 TA700 은 F0 의 선택된 값을 인코딩하거나, 또는 최소 (또는 최대) 로케이션으로부터 F0 의 선택된 값의 오프셋을 인코딩하도록 구성될 수도 있다. 유사하게, 태스크 TA700 은 d 의 선택된 값을 인코딩하거나, 또는 최소 또는 최대 거리로부터 d 의 선택된 값의 오프셋을 인코딩하도록 구성될 수도 있다. 특정 예에서, 태스크 TA700 은 6 비트들을 사용하여 선택된 F0 을 인코딩하고 6 비트들을 사용하여 선택된 d 값을 인코딩한다. 추가 예들에서, 태스크 TA700 은 F0 및 d 의 현재 값을 (예를 들어, 파라미터의 이전 값에 대한 오프셋으로서) 차별적으로 인코딩하도록 구현될 수도 있다.

벡터 양자화 (VQ) 코딩 방식을 사용하여 선택된 후보 쌍에 의해 식별된 중요한 에너지의 영역들의 컨텐트들 (즉, 서브대역들의 선택된 세트 각각 내의 값들) 을 벡터들로서 인코딩하도록 태스크 TA700 을 구현하는 것이 바람직할 수도 있다. VQ 방식은 벡터를, 그것을 (디코더로도 알려져 있는) 하나 이상의 코드북들 각각에서의 엔트리에 매칭시키고 벡터를 표현하기 위해 이들 엔트리들의 인덱스 또는 인덱스들을 이용함으로써 인코딩한다. 코드북 내의 엔트리들의 최대 개수를 결정하는 코드북 인덱스의 길이는, 애플리케이션에 적합한 것으로 간주되는 어느 임의의 정수일 수도 있다.

적합한 VQ 방식의 일 예는 GSVQ (gain-shape VQ) 이며, 여기서, 각각의 서브대역의 컨텐트들은 정규화된 형상 벡터 (이는 예를 들어 주파수 축에 따른 서브대역의 형상을 기술한다) 및 대응하는 이득 팩터로 분해되어, 형상 벡터와 이득 팩터가 개별적으로 양자화된다. 형상 벡터들을 인코딩하도록 할당된 비트들의 수는 다양한 서브대역들의 형상 벡터들 간에 균일하게 분배될 수도 있다. 대안으로, 다른 서브대역들의 형상 벡터들의 이득 팩터들과 비교하여 대응하는 이득 팩터들이 비교적 높은 값들을 갖는 형상 벡터들과 같이, 다른 것보다 더 많은 에너지를 캡처하는 형상 벡터들을 인코딩하는 것에 더 많은 가용 비트들을 할당하는 것이 바람직할 수도 있다.

각각의 세트의 서브대역들에 대한 이득 팩터들이 서로 독립적으로 그리고 이전 프레임의 대응하는 이득 팩터에 대하여 차별적으로 인코딩되도록 예측적 이득 코딩을 포함하는 GSVQ 방식을 사용하는 것이 바람직하다. 특정 예에서, 방법 MA110 은 LB-MDCT 스펙트럼의 주파수 범위에서 중요한 에너지의 영역들을 인코딩하도록 배열된다.

도 3b 는 태스크 TD100, 태스크 TD200 및 태스크 TD300 을 포함하는 (예를 들어, 태스크 TA700 에 의해 생성된 바와 같은) 인코딩된 신호를 디코딩하는 대응하는 방법 MD100 의 플로우차트를 도시한다. 태스크 TD100 은 인코딩된 신호로부터 F0 및 d 의 값들을 디코딩하고, 태스크 TD200 은 서브대역들의 세트를 역양자화한다. 태스크 TD300 은 F0 및 d 의 디코딩된 값들에 기초하여, 주파수 도메인에서 각각의 역양자화된 서브대역들 배치함으로써 디코딩된 신호를 구성한다. 예를 들어, 태스크 TD300 은 각각의 서브대역 m 을 주파수-도메인 로케이션 F0+md 에서 센터링함으로써 디코딩된 신호를 구성하도록 구현될 수도 있으며, 여기서 0<=m<M 이며, M 은 선택된 세트 내의 서브대역들의 개수이다. 태스크 TD300 은 디코딩된 신호의 점유되지 않은 빈들에 0 값들을 할당하거나, 대안으로는, 디코딩된 신호의 점유되지 않은 비트들에 여기에 설명한 바와 같이 디코딩된 잔여물의 값들을 할당하도록 구성될 수도 있다.

하모닉 코딩 모드에서, 적합한 로케이션들 내에 영역들을 배치하는 것은 효율적인 코딩에 결정적일 수도 있다. 가장 적은 개수의 서브대역들을 사용하여 주어진 주파수 범위에서 가장 큰 양의 에너지를 캡처하도록 코딩 방식을 구성하는 것이 바람직할 수도 있다.

도 4 는 MDCT 도메인에서의 하모닉 신호의 하나의 예에 대한 주파수 빈 인덱스 대 절대 변환 계수 값의 플롯을 도시한다. 도 4 는 또한, 이 신호에 대한 2 개의 가능한 세트들의 서브대역들에 대한 주파수-도메인 로케이션들을 도시한다. 제 1 세트의 서브대역들 로케이션들은 그레이로 그려지고 x 축 아래에 브래킷 (bracket) 들로도 표시되는 균일하게 이격된 블록들로 도시된다. 이 세트는 방법 MA100 에 의해 선택되는 (F0, d) 후보 쌍에 대응한다. 이 예에서는, 신호에서의 피크들의 로케이션들이 규칙적인 것으로 나타나지만, 그 로케이션들은 하모닉 모델의 서브대역들의 균일한 스페이싱에 정확하게 일치하지 않는다는 것을 알 수도 있다. 사실상, 이 경우 내의 모델은 신호의 가장 높은 피크를 거의 빗나간다. 따라서, 심지어는 최적 (F0, d) 의 후보 쌍에 따라 엄격하게 구성되는 모델이 신호 피크들 중 하나 이상에서의 에너지의 일부를 캡처하기를 실패할 수도 있다는 것이 예상될 수도 있다.

하모닉 모델을 완화함으로써 오디오 신호 내의 비균일성을 도모하도록 방법 MA100 을 구현하는 것이 바람직할 수도 있다. 예를 들어, 세트의 하모닉 관련된 서브대역들 (즉, F0, F0+d, F0+2d, 등에 로케이팅된 서브대역들) 중 하나 이상이 각각의 방향에서 유한 개수의 빈들만큼 시프트하는 것을 허용하는 것이 바람직할 수도 있다. 이러한 경우에, 서브대역들 중 하나 이상의 로케이션이 (F0, d) 쌍으로 나타내진 로케이션으로부터 적은 양만큼 벗어나는 것 (시프트 또는 "지터" 라고도 불림) 을 허용하도록 태스크 TA400 을 구현하는 것이 바람직할 수도 있다. 이러한 시프트의 값은 결과의 서브대역이 피크의 더 많은 에너지를 캡처하도록 선택될 수도 있다.

서브대역에 대해 허용된 지터의 양에 대한 예들은 서브대역 폭의 25, 30, 40 및 50 퍼센터를 포함한다. 주파수 축의 각각의 방향에서 허용된 지터의 양은 동일할 필요가 없다. 특정 예에서, 각각의 7-빈 서브대역은 그 초기 포지션을 주파수 축을 따라, 현재 (F0, d) 후보 쌍에 의해 나타낸 바와 같이, 최대 4 개의 주파수 빈들 이상으로 또는 최대 3 개의 주파수 빈들 이하로 시프트하도록 허용된다. 이 예에서, 서브대역에 대한 선택된 지터 값은 3 개의 비트들로 표현될 수도 있다. 또한, 허용가능한 지터 값들의 범위는 F0 및/또는 d 의 함수인 것이 가능하다.

서브대역에 대한 시프트 값은 서브대역을 배치하여 가장 많은 에너지를 캡처하는 값으로서 결정될 수도 있다. 대안으로, 서브대역에 대한 시프트 값은, 서브대역 내에 최대 샘플 값을 센터링하는 값으로서 결정될 수도 있다. 도 4 의 완화된 서브대역 로케이션들은, 블랙-라인 블록들로 나타낸 바와 같이, (왼쪽에서 오른쪽으로 두번째 그리고 마지막 피크들을 참조하여 가장 분명히 도시한 바와 같이) 이러한 피크-센터링 기준에 따라 배치된다는 것을 알 수도 있다. 피크-센터링 기준은 서브대역들의 형상들 간에 더 적은 분산을 야기하는 경향이 있으며, 이는 더 나은 GSVQ 코딩을 야기할 수도 있다. 최대-에너지 기준은 예를 들어, 센터링되지 않은 형상들을 생성함으로써 그 형상들 간에 엔트로피를 증가시킬 수도 있다. 추가 예에서, 서브대역에 대한 시프트 값은 이들 기준 모두를 이용하여 결정될 수도 있다.

도 5 는 완화된 하모닉 모델에 따라 서브대역 세트들을 선택하는 태스크 TA400 의 일 구현 TA402 의 플로우차트를 도시한다. 태스크 TA402 는 태스크 TA410, 태스크 TA420, 태스크 TA430, 태스크 TA440, 태스크 TA450, 태스크 TA460 및 태스크 TA470 을 포함한다. 이 예에서, 태스크 TA402 는 각각의 액티브 후보 쌍에 대해 한번 실행하고 (예를 들어, 태스크 TA100 에 의해 로케이팅한 바와 같이) 주파수 범위에서 피크들의 로케이션들의 소팅된 리스트에 액세스하도록 구성된다. 피크 로케이션들의 리스트의 길이가 적어도 타겟 프레임에 대한 서브대역들의 최대 허용가능한 개수 (예를 들어, 140 또는 160 개의 샘플들의 프레임 사이즈에 대해, 프레임당 8, 10, 12, 14, 16, 또는 18 피크들) 만큼이 되도록 하는 것이 바람직할 수도 있다.

루프 초기화 태스크 TA410 은 루프 카운터 i 의 값을 최소 값 (예를 들어, 1) 으로 설정한다. 태스크 TA420 은, 리스트 내의 i 번째 가장 높은 피크가 이용가능한지 (즉, 아직 액티브 서브대역에 있지 않은지) 여부를 결정한다. i 번째 가장 높은 피크가 이용가능하다면, 태스크 TA430 은, 피크의 로케이션을 포함하기 위해, 허용가능한 지터 범위에 의해 완화한 바와 같이 현재 (F0, d) 후보 쌍 (즉, F0, F0+d, F0+2d 등) 에 의해 나타내진 로케이션들에 따라 임의의 넌액티브 서브대역이 배치될 수 있는지 여부를 결정한다. 이 문맥에서, "액티브 서브대역" 은 임의의 이전에 배치된 서브대역의 오버랩핑 없이 이미 배치되어 임계값 T 보다 큰 (대안으로는, 그 값 이상인) 에너지를 갖는 서브대역이며, 여기서 T 는 액티브 서브대역들 내의 최대 에너지의 함수이다 (예를 들어, 이 프레임에 대해 방금 배치된 가장 높은 에너지의 액티브 서브대역의 에너지의 15, 20, 25 또는 30 퍼센트). 넌액티브 서브대역은 액티브가 아닌 (즉, 아직 배치되지 않거나, 배치되지만 다른 서브대역과 오버랩하거나, 또는 충분하지 않은 에너지를 갖는) 서브대역이다. 태스크 TA430 이 피크에 대해 배치될 수 있는 임의의 넌액티브 서브대역을 발견하기를 실패한다면, 제어는 (만약에 있다면) 리스트 내의 다음 가장 높은 피크를 프로세싱하기 위해 루프 증분 태스크 TA440 을 통해 태스크 TA410 으로 되돌아간다.

로케이션 (F0+j*d) 에서의 서브대역이 i 번째 피크 (예를 들어, 그 피크는 2 개의 로케이션들 사이에 놓인다) 를 포함하도록 배치될 수도 있는 정수 j 의 2 개의 값들이 존재하고, 이들 j 의 값들 중 어느 것도 액티브 서브대역과 아직 연관되지 않는다는 것을 알 수도 있다. 이러한 경우들에서, 이들 2 개의 서브대역들 중에서 선택하도록 태스크 TA430 을 구현하는 것이 바람직할 수도 있다. 태스크 TA430 은 예를 들어, 다르게는 더 낮은 에너지를 가질 서브대역을 선택하도록 구성될 수도 있다. 이러한 경우에, 태스크 TA430 은 피크를 배제하고 임의의 액티브 서브대역과 오버랩핑하지 않는 제약들의 영향을 받는 2 개의 서브대역들 각각을 배치하도록 구현될 수도 있다. 이들 제약들 내에서, 태스크 TA430 은 각각의 서브대역을 가장 높은 가능한 샘플에 센터링하고 (대안으로는, 최대 가능한 에너지를 캡처하도록 각각의 서브대역을 배치하고), 2 개의 서브대역들 각각에서 결과의 에너지를 계산하며, 피크를 포함하도록 (예를 들어 태스크 TA450 에 의해) 배치될 서브대역으로서 가장 낮은 에너지를 갖는 서브대역을 선택하도록 구현될 수도 있다. 이러한 접근법은 최종 서브대역 로케이션들에서의 공동 에너지를 최대화하게 도울 수도 있다.

도 2b 는 태스크 TA430 의 애플리케이션의 일 예를 도시한다. 이 예에서, 주파수 축의 가운데에 있는 도트는 i 번째 피크의 로케이션을 나타내고, 볼드 브래킷 (bold bracket) 은 기존 액티브 서브대역의 로케이션을 나타내고, 서브대역 폭은 7 개의 샘플들이며, 허용가능한 지터 범위는 (+5, -4) 이다. i 번째 피크의 좌측 및 우측 이웃 로케이션들 [F0+kd], [F0+(k+1)d], 및 이들 로케이션들 각각에 대한 허용가능한 서브대역 배치들의 범위가 또한 나타내진다. 상기 설명한 바와 같이, 태스크 TA430 은 피크를 배제하고 임의의 액티브 서브대역과 오버랩하지 않도록 각각의 서브대역에 대한 배치의 허용가능한 범위를 제약한다. 도 2b 에 나타낸 바와 같이 각각의 제약된 범위 내에서, 태스크 TA430 은 가장 높은 가능한 샘플에 센터링되도록 (또는 대안으로는, 최대 가능한 에너지를 캡처하도록) 대응하는 서브대역을 배치하고, i 번째 피크를 포함하도록 배치될 서브대역으로서 가장 낮은 에너지를 갖는 결과의 서브대역을 선택한다.

태스크 TA450 은 태스크 TA430 에 의해 제공된 서브대역을 배치하고, 그 서브대역을 적절하게 액티브 또는 넌액티브로서 마크한다. 태스크 TA450 은, 서브대역이 (서브대역에 대한 허용가능한 지터 범위를 저감시킴으로써) 임의의 기존 액티브 서브대역과 오버랩하지 않도록 서브대역을 배치하도록 구성될 수도 있다. 태스크 TA450 은 또한 i 번째 피크가 서브대역 내에 (즉, 지터 범위 및/또는 오버랩 기준에 의해 허용된 정도까지) 센터링되도록 서브대역을 배치하도록 구성될 수도 있다.

태스크 TA460 은, 더 많은 서브대역들이 현재 액티브 후보 쌍에 대해 남아 있다면 루프 증분 태스크 TA440 을 통해 태스크 TA420 에 대한 제어를 다시 시작한다. 마찬가지로, 태스크 TA430 은, i 번째 피크에 대해 배치될 수 있는 넌액티브 서브대역의 발견의 실패 시에 루프 증분 태스크 TA440 을 통해 태스크 TA420 에 대한 제어를 다시 시작한다.

태스크 TA420 이 i 의 임의의 값에 대해 실패한다면, 태스크 TA470 은 현재 액티브 후보 쌍에 대해 나머지 서브대역들을 배치한다. 태스크 TA470 은, 가장 높은 샘플 값이 서브대역 내에 센터링되도록 각각의 서브대역을 배치하도록 (즉, 지터 범위에 의해 허용되지 않는 정도까지 및/또는 서브대역이 임의의 기존 액티브 서브대역과 오버랩하지 않도록) 구성될 수도 있다. 예를 들어, 태스크 TA470 은 현재 액티브 후보 쌍에 대한 나머지 서브대역들 각각에 대해 태스크 TA450 의 인스턴스를 수행하도록 구성될 수도 있다.

이 예에서, 태스크 TA402 는 또한 서브대역들을 프루닝 (pruning) 하는 옵션의 태스크 TA480 을 포함한다. 태스크 TA480 은 에너지 임계값 (예를 들어, T) 을 충족하지 않는 서브대역들을 거부하고 및/또는 가장 높은 에너지를 갖는 다른 서브대역을 오버랩하는 서브대역들을 거부하도록 구성될 수도 있다.

도 6 은 MDCT 도메인에서 도시한 바와 같이 하모닉 신호의 0 내지 3.5kHz 범위에 대해, 태스크 TA402 및 태스크 TA602 를 포함하는 방법 MA100 의 일 구현에 따라 배치된, 일 세트의 서브대역들의 일 예를 도시한다. 이 예에서, y 축은 절대 MDCT 값을 나타내고, 서브대역들은 x 또는 주파수 빈 축 근처에 블록들로 나타내진다.

태스크 TA700 은 선택된 지터 값들을 인코딩된 신호 (예를 들어, 디코더로의 송신을 위해) 팩킹하도록 구현될 수도 있다. 그러나, (예를 들어, 태스크 TA402 로서) 태스크 TA400 에서 완화된 하모닉 모델을 적용하지만 인코딩된 신호로부터 지터 값들을 제외시키도록 태스크 TA700 의 대응하는 인스턴스를 구현하는 것이 또한 가능하다. 예를 들어, 어떠한 비트들도 지터를 송신하기 위해 이용가능하지 않은 낮은 비트-레이트 경우에도, 더 많은 신호 에너지를 인코딩함으로써 얻어진 지각적 이득이 미보정된 지터에 의해 야기된 지각적 에러보다 클 것이라고 예상될 수도 있기 때문에, 인코더에 완화된 모델을 적용하는 것이 여전히 바람직할 수도 있다. 이러한 애플리케이션의 한가지 예는 음악 신호들의 낮은 비트-레이트 코딩의 경우이다.

일부 애플리케이션들에서, 인코더가 모델링된 서브대역들 밖에 있는 신호 에너지를 폐기하도록, 하모닉 모델에 의해 선택된 서브대역들만을 인코딩된 신호가 포함하는 것이 충분할 수도 있다. 다른 경우들에서는, 하모닉 모델에 의해 캡처되지 않은 이러한 신호 정보를 인코딩된 신호가 또한 포함하는 것이 바람직할 수도 있다.

하나의 접근법에서, (잔여 신호라고도 불리는) 코딩되지 않은 정보의 표현은 원래의 입력 스펙트럼에서 재구성된 하모닉 모델 서브대역들을 제거함으로써 인코더에서 계산된다. 이러한 방식으로 계산된 잔여물은 통상 입력 신호와 동일한 길이를 가질 것이다.

완화된 하모닉 모델이 신호를 인코딩하는데 사용되는 경우에서, 서브대역들의 로케이션들을 시프팅하는데 사용되었던 지터 값들은 디코더에서 이용가능할 수도 있고 또는 이용가능하지 않을 수도 있다. 지터 값이 디코더에서 이용가능하다면, 디코딩된 서브대역들은 디코더에서 인코더에서와 동일한 로케이션들에 배치될 수도 있다. 지터 값들이 디코더에서 이용가능하지 않다면, 선택된 서브대역들은 선택된 (F0, d) 쌍에 의해 나타낸 바와 같이 균일한 스페이싱에 따라 디코더에 배치될 수도 있다. 그러나, 잔여 신호가 원래의 신호에서 재구성된 신호를 제거함으로써 계산되었던 경우에서, 지터링되지 않은 서브대역들은 더 이상 잔여 신호에 위상-정렬되지 않을 것이고, 재구성된 신호를 이러한 잔여 신호에 부가하는 것은 해로운 간섭을 초래할 수도 있다.

대안의 접근법은 하모닉 모델에 의해 캡처되지 않았던 입력 신호 스펙트럼 (예를 들어, 선택된 서브대역 내에 포함되지 않았던 그 빈들) 의 영역들의 연쇄로서 잔여 신호를 계산하는 것이다. 이러한 접근법은, 지터 파라미터 값들이 디코더에 송신되지 않는 코딩 애플리케이션들의 경우 특히 바람직할 수도 있다. 이러한 방식으로 계산된 잔여물은 입력 신호의 것보다 작고 (예를 들어 프레임 내의 서브대역들의 개수에 따라) 프레임 간 변할 수도 있는 길이를 갖는다. 도 19 는, 이러한 잔여물의 영역들이 라벨링되는 오디오 신호 프레임의 3.5 내지 7kHz 대역에 대응하는 MDCT 계수들을 인코딩하는 방법 MA100 의 애플리케이션의 일 예를 도시한다. 여기에 설명한 바와 같이, 이러한 잔여물을 인코딩하기 위해 펄스-코딩 방식 (예를 들어, 계승 펄스 코딩 (factorial pulse coding)) 을 사용하는 것이 바람직할 수도 있다.

지터 파라미터 값들이 디코더에서 이용가능하지 않은 경우에서, 잔여 신호는 여러 상이한 방법들 중 하나를 이용하여 디코딩된 서브대역들 사이에 삽입될 수 있다. 디코딩의 하나의 이러한 방법은, 지터링되지 않은 재구성된 신호에 부가하기 전에 잔여 신호 내의 각각의 지터 범위를 제로 아웃하는 것이다. 예를 들어, 상기 언급한 (+4, -3) 의 지터 범위에 대해, 이러한 방법은 (F0, d) 쌍에 의해 나타내진 서브대역들 각각의 오른쪽의 4 개의 빈들로부터 왼쪽의 3 개의 빈들로 잔여 신호의 샘플들을 제로잉하는 것을 포함할 것이다. 그러나 이러한 접근법이 잔여물과 지터링되지 않은 서브대역들 사이의 간섭을 제거할 수도 있지만, 이것은 또한 상당할 수도 있는 정보의 손실을 야기한다.

디코딩의 다른 방법은, 지터링되지 않은 재구성된 신호에 의해 점유되지 않은 빈들 (지터링되지 않은 재구성된 서브대역들의 앞, 뒤, 그리고 사이의 빈들) 을 가득 채우기 위해 잔여물을 삽입하는 것이다. 이러한 접근법은 지터링되지 않은 재구성된 서브대역들의 배치를 도모하기 위해 잔여물의 에너지를 효과적으로 이동시킨다. 도 7 은 3 개의 진폭 대 주파수 플롯들 A 내지 C 모두가 동일한 수평 주파수-빈 스케일에 수직으로 정렬되어 있는, 이러한 접근법의 하나의 예를 도시한다. 플롯 A 는 선택된 서브대역 (대시 라인들 내의 채워진 도트들) 의 원래의 지터링된 배치 및 주변 잔여물 (개방된 도트들) 의 일부를 포함하는 신호 스펙트럼의 일부를 도시한다. 지터링되지 않은 서브대역의 배치를 도시하는 플롯 B 에서는, 서브대역의 처음 2 개의 빈들이 현재 에너지를 포함하는 원래의 잔여물의 샘플들 (플롯 A 에서 그 샘플들에는 동그라미가 그려져 있다) 의 시리즈를 오버랩한다는 것을 알 수도 있다. 플롯 C 는 증가하는 주파수의 순서로 점유되지 않은 빈들을 채우기 위해 연쇄된 잔여물을 이용하는 일 예를 도시하며, 이는 이 잔여물의 샘플들의 시리즈를 지터링되지 않은 서브대역의 다른 쪽에 배치한다.

디코딩의 추가 방법은, MDCT 스펙트럼의 연속성이 지터링되지 않은 서브대역들과 잔여 신호 사이의 경계들에서 유지되는 그러한 방식으로 잔여물을 삽입하는 것이다. 예를 들어, 이러한 방법은 어느 하나의 단 또는 양 단에서의 오버랩을 회피하기 위하여 2 개의 지터링되지 않은 서브대역들 사이에 있는 (또는 처음 서브대역 앞에 있거나 또는 마지막 서브대역 다음에 있는) 잔여물의 영역을 압축하는 것을 포함할 수도 있다. 이러한 압축은, 예를 들어, 서브대역들 사이 (또는 서브대역와 범위 경계 사이) 에 있는 에어리어를 점유하기 위해 그 영역을 주파수-랩핑함으로써 수행될 수도 있다. 유사하게, 이러한 방법은 어느 하나의 단 또는 양 단에서 갭을 채우기 위하여 2 개의 지터링되지 않은 서브대역들 사이에 있는 (또는 처음 서브대역 앞에 있거나 또는 마지막 서브대역 다음에 있는) 잔여물의 영역을 확장하는 것을 포함할 수도 있다. 도 8 은 진폭 대 주파수 플롯 B 에 도시한 바와 같이 지터링되지 않은 서브대역들 사이의 갭을 채우기 위해 진폭 대 주파수 플롯 A 에서의 대시 라인들 사이의 잔여물의 부분이 확장되는 (예를 들어, 선형 보간되는) 그러한 일 예를 도시한다.

벡터를 유닛 펄스들의 패턴에 매칭시키고 벡터를 표현하기 위해 그 패턴을 식별하는 인덱스를 사용함으로써 인코딩하는, 잔여 신호를 코딩하도록 펄스 코딩 방식을 사용하는 것이 바람직할 수도 있다. 이러한 방식은, 예를 들어, 잔여 신호 내의 유닛 펄스들의 개수, 포지션들, 및 부호들을 인코딩하도록 구성될 수도 있다. 도 9 는 잔여 신호의 일부가 유닛 펄스들의 개수로서 인코딩되는 그러한 방법의 일 예를 도시한다. 이 예에서, 각각의 디멘젼에서의 값이 솔리드 라인으로 나타내지는 30 차원 벡터는, (펄스 로케이션들에서의) 도트들 및 (0 값 로케이션들에서의) 정사각형으로 나타낸 바와 같이, 펄스들의 패턴 (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) 으로 표현된다.

특정 개수의 유닛 펄스들의 포지션들 및 부호들은 코드북 인덱스로서 표현될 수도 있다. 예를 들어, 도 9 에 도시한 바와 같은 펄스들의 패턴은 통상 길이가 30 비트들보다 훨씬 작은 코드북 인덱스로 표현될 수 있다. 펄스 코딩 방식들의 예들은 계승 펄스 코딩 방식들 및 조합 펄스 코딩 (combinatorial-pulse-coding) 방식들을 포함한다.

동일한 신호의 상이한 주파수 대역들을 개별적으로 코딩하도록 오디오 코덱을 구성하는 것이 바람직할 수도 있다. 예를 들어, 오디오 신호의 저대역 부분을 인코딩하는 제 1 인코딩된 신호 및 동일한 오디오 신호의 고대역 부분을 인코딩하는 제 2 인코딩된 신호를 생성하도록 이러한 코덱을 구성하는 것이 바람직할 수도 있다. 이러한 스플릿-대역 코딩이 바람직할 수도 있는 애플리케이션들은 협대역 디코딩 시스템들과 호환가능한 상태가 되어야 하는 광대역 인코딩 시스템들을 포함한다. 이러한 애플리케이션들은 또한 상이한 주파수 대역들에 대해 상이한 코딩 방식들의 사용을 지원함으로써 상이한 타입들의 오디오 입력 신호들 (예를 들어, 스피치와 음악 양자) 의 범위의 효율적인 코딩을 달성하는 일반화된 오디오 코딩 방식들을 포함한다.

신호의 상이한 주파수 대역들이 개별적으로 인코딩되는 경우에서, 일부 경우들에서는, 일 대역 내의 코딩 효율을, 다른 대역으로부터의 인코딩된 (예를 들어, 양자화된) 정보를 이용함으로써 이 인코딩된 정보가 이미 디코더에 알려져 있을 때 증가시키는 것이 가능할 수도 있다. 예를 들어, 여기에 설명된 하모닉 모델 (예를 들어, 완화된 하모닉 모델) 을 적용하는 원리들은 ("기준" 신호라고도 불리는) 오디오 신호 프레임의 제 1 대역의 변환 계수들의 디코딩된 표현으로부터의 정보를 이용하여 ("타겟" 신호라고도 불리는) 동일한 오디오 신호 프레임의 제 2 대역의 변환 계수들을 인코딩할 수도 있다. 하모닉 모델이 적절한 그러한 경우에, 코딩 효율은 제 1 대역의 디코딩된 표현이 이미 디코더에서 이용가능하기 때문에 증가될 수도 있다.

이러한 확장된 방법은 코딩된 제 1 대역과 하모닉 관련되는 제 2 대역의 서브대역들을 결정하는 것을 포함할 수도 있다. 오디오 신호들 (예를 들어, 복합 음악 신호들) 에 대한 낮은 비트-레이트 코딩 알고리즘들에서, 신호의 프레임을 다수의 대역들 (예를 들어, 저대역 및 고대역) 로 스플리팅하고 이들 대역들 간의 상관을 활용하여 대역들의 변환 도메인 표현을 효율적으로 코딩하는 것이 바람직할 수도 있다.

이러한 확장의 특정 예에서, (이후로 상위대역 MDCT 또는 UB-MDCT 로 지칭되는) 오디오 신호 프레임의 3.5 내지 7kHz 대역에 대응하는 MDCT 계수들은 프레임의 양자화된 저대역 MDCT 스펙트럼 (0 내지 4kHz) 에 기초하여 인코딩된다. 이러한 확장의 다른 예들에서, 2 개의 주파수 범위들은 오버랩할 필요가 없고 심지어는 분리될 수도 있다는 것에 명시적으로 주목된다 (예를 들어, 0 내지 4kHz 대역의 디코딩된 표현으로부터의 정보에 기초하여 프레임의 7 내지 14kHz 대역의 코딩). 코딩된 저대역 MDCT들은 UB-MDCT들을 코딩하기 위한 기준으로서 사용되기 때문에, 고대역 코딩 모델의 다수의 파라미터들은 그들의 송신을 명시적으로 요구하지 않고 디코더에서 유도될 수 있다.

도 10a 는 태스크 TB100, 태스크 TB200, 태스크 TB300, 태스크 TB400, 태스크 TB500, 태스크 TB600, 및 태스크 TB700 을 포함하는 일반적인 구성에 따른 오디오 신호 프로세싱의 방법 MB100 에 대한 플로우차트를 도시한다. 태스크 TB100 은 기준 오디오 신호 (예를 들어, 오디오 주파수 신호의 제 1 주파수 범위의 역양자화된 표현) 내의 복수의 피크들을 로케이팅한다. 태스크 TB100 은 여기에 설명한 바와 같이 태스크 TA100 의 인스턴스로서 구현될 수도 있다. 기준 오디오 신호가 방법 MA100 의 구현을 이용하여 인코딩되었던 경우에서, dmin 의 동일한 값을 사용하도록 태스크 TA100 및 태스크 TB100 을 구성하는 것이 바람직할 수도 있지만, dmin 의 상이한 값들을 사용하도록 2 개의 태스크들을 구성하는 것 또한 가능하다 (그러나, 방법 MB100 은 일반적으로 디코딩된 기준 오디오 신호를 생성하는데 사용되었던 특정 코딩 방식에 관계 없이 적용가능하다는 것에 주목하는 것이 중요하다).

태스크 TB100 에 의해 로케이팅된 피크들의 적어도 일부 (즉, 적어도 3 개) 의 주파수-도메인 로케이션들에 기초하여, 태스크 TB200 은 기준 오디오 신호 내의 하모닉 스페이싱 후보들의 개수 Nd2 를 계산한다. Nd2 에 대한 값들의 예들은 3, 4 및 5 를 포함한다. 태스크 TB200 은 태스크 TB100 에 의해 로케이팅된 (Nd2+1) 가장 큰 피크들 중 인접한 피크들 간의 (예를 들어, 주파수 빈들의 개수의 관점의) 거리들로서 이들 스페이싱 후보들을 컴퓨팅하도록 구성될 수도 있다.

태스크 TB100 에 의해 로케이팅된 피크들의 적어도 일부 (즉, 적어도 2 개) 의 주파수-도메인 로케이션들에 기초하여, 태스크 TB300 은 기준 오디오 신호 내의 F0 후보들의 개수 Nf2 를 식별한다. Nf2 에 대한 값들의 예들은 3, 4, 및 5 를 포함한다. 태스크 TB300 은 기준 오디오 신호 내의 Nf2 가장 높은 피크들의 로케이션들로서 이들 후보들을 식별하도록 구성될 수도 있다. 대안으로, 태스크 TB300 은 이들 후보들을 기준 주파수 범위의 낮은 주파수 부분 (예를 들어, 하위 30, 35, 40, 45 또는 50 퍼센트) 내의 Nf2 가장 높은 피크들의 로케이션들로서 식별하도록 구성될 수도 있다. 하나의 이러한 예에서, 태스크 TB300 은 0 내지 1250Hz 의 범위의 태스크 TB100 에 의해 로케이팅된 피크들의 로케이션들 사이에서 F0 후보들의 개수 Nf2 를 식별한다. 다른 이러한 예에서, 태스크 TB300 은 0 내지 1600Hz 의 범위의 태스크 TB100 에 의해 로케이팅된 피크들의 로케이션들 사이에서 F0 후보들의 개수 Nf2 를 식별한다.

방법 MB100 의 상기 설명된 구현들의 범위는, 단 하나의 하모닉 스페이싱 후보가 (예를 들어, 가장 큰 2 개의 피크들 간의 거리, 또는 특정 주파수 범위 내의 가장 큰 2 개의 피크들 간의 거리로서) 계산되는 경우 및 단 하나의 FO 후보가 (예를 들어, 가장 높은 피크의 로케이션, 또는 특정 주파수 범위 내의 가장 높은 피크의 로케이션으로서) 식별되는 개별 경우를 포함한다는 것에 명확히 주목된다.

F0 및 d 후보들의 복수의 액티브 쌍들 각각에 대해, 태스크 TB400 은 타겟 오디오 신호 (예를 들어, 오디오-주파수 신호의 제 2 주파수 범위의 표현) 의 일 세트의 적어도 하나의 서브대역을 선택하며, 여기서 그 세트의 각각의 서브대역의 주파수 도메인에서의 로케이션은 (F0, d) 쌍에 기초한다. 그러나, 태스크 TA400 과 대조적으로, 이 경우, 서브대역들은 로케이션들 F0m, F0m+d, F0m+2d 등에 대해 배치되며, 여기서, F0m 의 값은 타겟 오디오 신호의 주파수 범위에 F0 을 맵핑함으로써 계산된다. 이러한 맵핑은 F0m=F0+Ld 와 같은 수식에 따라 수행될 수도 있으며, 여기서 L 은, F0m 이 타겟 오디오 신호의 주파수 범위 내에 있도록 가장 작은 정수이다. 이러한 경우에, 디코더는, 타겟 오디오 신호의 주파수 범위 및 F0 및 d 의 값들이 디코더에 이미 알려져 있기 때문에, 인코더로부터의 추가 정보 없이 L 의 동일한 값을 계산할 수도 있다.

태스크 TB400 은 입력 범위 내에 있는 대응하는 (F0, d) 쌍에 의해 나타내진 서브대역들 모두를 포함하는 각각의 세트를 선택하도록 구성될 수도 있다. 대안으로, 태스크 TB400 은 그 세트들 중 적어도 하나에 대해 이들 서브대역들 모두보다 적은 서브대역들을 선택하도록 구성될 수도 있다. 태스크 TB400 은 예를 들어, 그 세트에 대해 서브대역들의 최대 개수 이하의 서브대역을 선택하도록 구성될 수도 있다. 대안으로 또는 추가적으로, 태스크 TB400 은 특정 범위 내에 있는 서브대역들만을 선택하도록 구성될 수도 있다. 예를 들어, 입력 범위 내의 가장 낮은 주파수 서브대역들 및/또는 단지 로케이션들이 입력 범위 내의 특정 주파수 (예를 들어, 5000, 5500 또는 6000Hz) 를 넘지 않는 서브대역들의 하나 이상 (예를 들어, 4, 5 또는 6) 의 특정 개수 이하를 선택하도록 태스크 TB400 을 구성하는 것이 바람직할 수도 있다.

하나의 예에서, 태스크 TB400 은 제 1 서브대역이 대응하는 F0m 로케이션에 센터링되도록 각각의 세트의 서브대역들을 선택하도록 구성되며, 여기서 각각의 후속 서브대역의 센터는 d 의 대응하는 값과 동일한 거리만큼 이전 서브대역의 센터에서 분리된다.

F0 및 d 의 모든 상이한 쌍들의 값들은, 태스크 TB400 이 모든 가능한 (F0, d) 쌍에 대해 대응하는 세트의 하나 이상의 서브대역들을 선택하도록 구성되도록 액티브인 것으로 간주될 수도 있다. 예를 들어, Nf2 및 Nd2 가 모두 4 와 동일한 경우에, 태스크 TB400 은 16 개의 가능한 쌍들 각각을 고려하도록 구성될 수도 있다. 대안으로, 태스크 TB400 은, 가능한 (F0, d) 쌍들 중 일부가 충족에 실패할 수도 있다는 기준을 활동에 대해 부과하도록 구성될 수도 있다. 예를 들어, 이러한 경우에, TB400 은 서브대역들의 최대 허용가능한 개수보다 많이 생성할 쌍들 (예를 들어, F0 및 d 의 낮은 값들의 조합들) 및/또는 서브대역들의 최소 원하는 개수보다 적게 생성할 쌍들 (예를 들어, F0 및 d 의 높은 값들의 조합들) 을 무시하도록 구성될 수도 있다.

F0 및 d 후보들의 복수의 쌍들 각각에 대해, 태스크 TB500 은 타겟 오디오 신호의 하나 이상의 서브대역들의 대응하는 세트로부터 적어도 하나의 에너지 값을 계산한다. 하나의 이러한 예에서, 태스크 TB500 은 각각의 세트의 하나 이상의 서브대역들로부터의 에너지 값을 그 세트의 서브대역들의 총 에너지로서 (예를 들어, 서브대역들 내의 주파수-도메인 샘플 값들의 제곱된 매그니튜드들의 합으로서) 계산한다. 대안으로 또는 추가적으로, 태스크 TB500 은 각각의 세트의 서브대역들로부터의 에너지 값들을 각 개개의 서브대역의 에너지들로서 계산하고 및/또는 각각의 세트의 서브대역들로부터의 에너지 값을 그 세트의 서브대역들에 대한 서브대역당 평균 에너지 (예를 들어, 다수의 서브대역들에 대해 정규화된 총 에너지) 로서 계산하도록 구성될 수도 있다. 태스크 TB500 은 태스크 TB400 과 동일한 복수의 쌍들 각각에 대해 또는 이 복수개보다 적은 수에 대해 실행하도록 구성될 수도 있다. 태스크 TB400 이 각각의 가능한 (F0, d) 쌍에 대해 일 세트의 서브대역들을 선택하도록 구성되는 경우에, 예를 들어, 태스크 TB500 은 활동에 대한 특정 기준을 충족하는 쌍들에 대해서만 에너지 값들을 계산하도록 (예를 들어, 상기 설명한 바와 같이, 너무 많은 서브대역들을 생성할 쌍들 및/또는 너무 적은 서브대역들을 생성할 쌍들을 무시하도록) 구성될 수도 있다. 다른 예에서, 태스크 TB400 은 너무 많은 서브대역들을 생성할 쌍들을 무시하도록 구성되고, 태스크 TB500 은 너무 적은 서브대역들을 생성할 쌍들을 무시하도록 또한 구성된다.

도 10a 는 태스크 TB400 및 태스크 TB500 의 실행을 시리즈로 도시하지만, 태스크 TB500 은 또한 태스크 TB400 이 완료하기 전에 서브대역들의 세트들에 대한 에너지들을 계산하기 시작하도록 구현될 수도 있다는 것이 이해될 것이다. 예를 들어, 태스크 TB500 은 태스크 TB400 이 서브대역들의 다음 세트를 선택하기 시작하기 전에 서브대역들의 세트로부터의 에너지 값을 계산 (또는 심지어는 계산을 종료) 하기 시작하도록 구현될 수도 있다. 하나의 이러한 예에서, 태스크 TB400 및 태스크 TB500 은 F0 및 d 후보들의 복수의 액티브 쌍들 각각에 대해 교대로 하도록 구성된다. 마찬가지로, 태스크 TB400 은 또한 태스크 TB200 및 태스크 TB300 이 완료하기 전에 실행을 시작하도록 구현될 수도 있다.

적어도 하나의 서브대역의 세트들 중 적어도 일부로부터의 계산된 에너지 값들에 기초하여, 태스크 TB600 은 (F0, d) 후보 쌍들 중에서 후보 쌍을 선택한다. 하나의 예에서, 태스크 TB600 은 가장 높은 총 에너지를 갖는 서브대역들의 세트에 대응하는 쌍을 선택한다. 다른 예에서, 태스크 TB600 은 서브대역당 가장 높은 평균 에너지를 갖는 서브대역들의 세트에 대응하는 후보 쌍을 선택한다. 추가 예에서, 태스크 TB600 은 (예를 들어, 도 1b 에 도시한 바와 같이) 태스크 TA602 의 인스턴스로서 구현된다.

도 10b 는 태스크 TB700 을 포함하는 방법 MB100 의 일 구현 MB110 의 플로우차트를 도시한다. 태스크 TB700 은 선택된 후보 쌍의 값들의 표시들을 포함하는 인코딩된 신호를 생성한다. 태스크 TB700 은 F0 의 선택된 값을 인코딩하거나, 또는 최소 (또는 최대) 로케이션으로부터의 F0 의 선택된 값의 오프셋을 인코딩하도록 구성될 수도 있다. 유사하게, 태스크 TB700 은 d 의 선택된 값을 인코딩하거나, 또는 최소 또는 최대 거리로부터의 d 의 선택된 값의 오프셋을 인코딩하도록 구성될 수도 있다. 특정 예에서, 태스크 TB700 은 6 비트들을 사용하여 선택된 F0 값을 인코딩하고 6 비트들을 사용하여 선택된 d 값을 인코딩한다. 추가 예들에서, 태스크 TB700 은 F0 및/또는 d 의 현재 값을 (예를 들어, 파라미터의 이전 값에 대한 오프셋으로서) 차별적으로 인코딩하도록 구현될 수도 있다.

VQ 코딩 방식 (예를 들어, GSVQ) 을 사용하여 서브대역들의 선택된 세트를 벡터들로서 인코딩하도록 태스크 TB700 을 구현하는 것이 바람직할 수도 있다. 서브대역들의 각각의 세트에 대한 이득 팩터들이 서로 독립적으로 그리고 이전 프레임의 대응하는 이득 팩터에 대하여 차별적으로 인코딩되도록 예측적 이득 코딩을 포함하는 GSVQ 방식을 사용하는 것이 바람직할 수도 있다. 특정 예에서, 방법 MB110 은 UB-MDCT 스펙트럼의 주파수 범위에서 중요한 에너지의 영역들을 인코딩하도록 배열된다.

기준 오디오 신호가 디코더에서 이용가능하기 때문에, 태스크 TB100, 태스크 TB200, 및 태스크 TB300 은 또한 동일한 기준 오디오 신호로부터 동일한 개수 (또는 "코드북") Nf2 의 F0 후보들 및 동일한 개수 ("코드북") Nd2 의 d 후보들을 획득하기 위해 디코더에서 수행될 수도 있다. 각 코드북 내의 값들은 예를 들어 증가하는 값의 순서로 소팅될 수도 있다. 결과적으로, 선택된 (F0, d) 쌍의 실제 값들을 인코딩하는 대신에, 이들 오더링된 복수개들 각각으로 인덱스를 인코더가 송신하면 충분하다. Nf2 및 Nd2 가 모두 4 와 동일한 특정 예의 경우, 태스크 TB700 은 2 비트 코드북 인덱스를 사용하여 선택된 d 값을 나타내고 다른 2 비트 코드북 인덱스를 사용하여 선택된 F0 값을 나타내도록 구현될 수도 있다.

태스크 TB700 에 의해 생성되는 인코딩된 타겟 오디오 신호를 디코딩하는 방법은 또한 인덱스들로 나타내진 F0 및 d 의 값들을 선택하는 단계, 서브대역들의 선택된 세트를 역양자화하는 단계, 맵핑 값 m 을 계산하는 단계, 및 주파수 도메인 로케이션 F0m+pd 에서 각 서브대역 p 를 배치 (예를 들어, 센터링) 함으로써 디코딩된 타겟 오디오 신호를 구성하는 단계를 포함할 수도 있으며, 여기서 0<=p<P 이며, P 는 선택된 세트 내의 서브대역들의 개수이다. 디코딩된 타겟 신호의 점유되지 않은 빈들은 0 값들을 할당받거나, 대안적으로는 여기에 설명한 바와 같이 디코딩된 잔여물의 값들을 할당받을 수도 있다.

태스크 TA400 과 같이, 태스크 TB400 은 F0 의 각각의 값이 처음에 상기 설명한 바와 같이 F0m 에 맵핑된다는 것을 제외하고는, 상기 설명한 바와 같이 태스크 TA402 의 반복된 인스턴스들로서 구현될 수도 있다. 이 경우에, 태스크 TA402 는 평가될 각각의 후보 쌍에 대해 한번 실행하고 타겟 신호 내의 피크들의 로케이션들의 리스트에 액세스하도록 구성되며, 여기서 리스트는 샘플 값의 감소하는 순서로 소팅된다. 이러한 리스트를 생성하기 위해, 방법 MB100 은 또한 기준 신호에 대해서보다는 타겟 신호에 대해 동작하도록 구성되는 태스크 TB100 (또는 태스크 TB100 의 다른 인스턴스) 과 유사한 피크-픽킹 태스크를 포함할 수도 있다.

도 11 은 타겟 오디오 신호가 3.5 내지 7kHz 의 오디오-주파수 스펙트럼을 표현하는 140 변환 계수들의 UB-MDCT 신호인 일 예에 대한 매그니튜드 대 주파수의 플롯을 도시한다. 이 도는 타겟 오디오 신호 (그레이 라인), (그레이로 그려진 블록들로 그리고 브래킷들로 나타내진) (F0, d) 후보 쌍에 따라 선택된 5 개의 균일하게 이격된 서브대역들의 세트, 및 (블랙으로 그려진 블록들로 나타내진) (F0, d) 쌍 및 피크-센터링 기준에 따라 선택된 5 개의 지터링된 서브대역들의 세트를 도시한다. 이 예에 도시한 바와 같이, UB-MDCT 스펙트럼은 더 낮은 샘플링 레이트로 컨버팅되거나 다르게는 주파수 빈 0 또는 1 에서 시작하도록 코딩 목적으로 시프팅된 고대역 신호로부터 계산될 수도 있다. 이러한 경우에, F0m 의 각각의 맵핑은 또한 시프팅된 스펙트럼 내의 적합한 주파수를 나타내기 위해 시프트를 포함한다. 특정 예에서, 타겟 오디오 신호의 UB-MDCT 스펙트럼의 제 1 주파수 빈은, 태스크 TA400 이 F0m=F0+Ld-140 과 같은 수식에 따라 각 F0 을 대응하는 F0m 에 맵핑하도록 구성될 수도 있도록 기준 오디오 신호 (예를 들어, 3.5kHz 에서의 음향 컨텐트를 표현) 의 LB-MDCT 스펙트럼의 빈 140 에 대응한다.

기준 오디오 신호가 여기에 설명한 바와 같이 완화된 하모닉 모델을 사용하여 인코딩되었던 경우에서, 동일한 지터 경계 (예를 들어, 우측의 최대 4 개의 빈들 및 좌측의 최대 3 개의 빈들) 는 완화된 하모닉 모델을 사용하여 타겟 신호를 인코딩하기 위해 사용될 수도 있고, 또는 상이한 지터 경계가 일측 또는 양측에서 사용될 수도 있다. 각각의 서브대역에 대해, 가능하다면, 서브대역 내에 피크를 센터링하는 지터 값을 선택하거나, 또는 이러한 지터 값이 이용가능하지 않다면, 피크를 부분적으로 센터링하는 지터 값을 선택하거나, 또는 이러한 지터 값이 이용가능하지 않다면, 서브대역에 의해 캡처링된 에너지를 최대화하는 지터 값을 선택하는 것이 바람직할 수도 있다.

하나의 예에서, 태스크 TB400 은 타겟 신호 (예를 들어, UB-MDCT 스펙트럼) 내의 서브대역당 최대 에너지를 집중시키는 (F0, d) 쌍을 선택하도록 구성된다. 에너지 집중 (energy compaction) 은 또한 (예를 들어, 태스크 TA430 을 참조하여 상기 설명한 바와 같이) 센터링하거나 부분적으로 센터링하는 2 개 이상의 지터 후보들 사이에서 결정하기 위한 척도로서 사용될 수도 있다.

지터 파라미터 값들 (각 서브대역에 대해 하나의 값) 은 디코더에 송신될 수도 있다. 지터 값들이 디코더에 송신되지 않는다면, 하모닉 모델 서브대역들의 주파수 로케이션들에서 에러가 발생할 수도 있다. 그러나, 고대역 오디오-주파수 범위 (예를 들어, 3.5 내지 7kHz 범위) 를 표현하는 타겟 신호들의 경우, 이 에러는 통상 지각가능하지 않아, 선택된 지터 값들을 디코더로 전송하지 않고 그 지터 값들에 따라 서브대역들을 인코딩하는 것이 바람직할 수도 있고, 그 서브대역들은 디코더에서 (예를 들어 선택된 (F0, d) 쌍에만 기초하여) 균일하게 이격될 수도 있다. 예를 들어, 음악 신호들의 매우 낮은 비트-레이트 코딩 (예를 들어, 초당 약 20 킬로비트들) 의 경우에는, 지터 파라미터 값들을 송신하지 않고 디코더에서 서브대역들의 로케이션들에서의 에러를 허용하지 않는 것이 바람직할 수도 있다.

선택된 서브대역들의 세트가 식별된 후, 잔여 신호는 (예를 들어, 원래의 타겟 신호 스펙트럼과 재구성된 하모닉 모델 서브대역들 간의 차이로서) 재구성된 타겟 신호를 원래의 타겟 신호 스펙트럼에서 제거함으로써 인코더에서 계산될 수도 있다. 대안으로, 잔여 신호는 하모닉 모델링에 의해 캡처되지 않은 타겟 신호 스펙트럼의 영역들 (예를 들어, 선택된 서브대역들에 포함되지 않은 그 빈들) 의 연쇄로서 계산될 수도 있다. 타겟 오디오 신호가 UB-MDCT 스펙트럼이고 기준 오디오 신호가 재구성된 LB-MDCT 스펙트럼인 경우, 특히 타겟 오디오 신호를 인코딩하는데 사용된 지터 값들이 디코더에서 이용가능하지 않을 경우에는 캡처되지 않은 영역들을 연쇄시킴으로써 잔여물을 획득하는 것이 바람직할 수도 있다. 선택된 서브대역들은 벡터 양자화 방식 (예를 들어, GSVQ 방식) 을 사용하여 코딩될 수도 있고, 잔여 신호는 계승 펄스 코딩 방식 또는 조합 펄스 코딩 방식을 사용하여 코딩될 수도 있다.

지터 파라미터 값들이 디코더에서 이용가능하다면, 잔여 신호가 디코더에서 인코더에서와 동일한 빈들에 다시 들어갈 수도 있다. 지터 파라미터 값들이 (예를 들어, 음악 신호들의 낮은 비트-레이트의 경우) 디코더에서 이용가능하지 않다면, 선택된 서브대역들은 상기 설명한 바와 같이 선택된 (F0, d) 쌍에 기초한 균일한 스페이싱에 따라 디코더에서 배치될 수도 있다. 이 경우에는, 잔여 신호가 상기 설명한 바와 같이 여러 상이한 방법들 중 하나를 사용하여 (예를 들어, 잔여물 내의 각각의 지터 범위를 그것을 지터없는 재구성된 신호에 부가하기 전에 제로 아웃하거나, 잔여물을 사용하여 선택된 서브대역을 오버랩할 잔여 에너지를 이동시키면서 점유되지 않은 빈들을 채우거나, 또는 잔여물을 주파수 랩핑하여) 선택된 서브대역들 사이에 삽입될 수 있다.

도 12a 는 일반적인 구성에 따른 오디오 신호 프로세싱을 위한 장치 MF100 의 블록도를 도시한다. 장치 MF100 은 (예를 들어 태스크 TA100 을 참조하여 여기에 설명한 바와 같이) 주파수 도메인에서 오디오 신호 내의 복수의 피크들을 로케이팅하는 수단 FA100 을 포함한다. 장치 MF100 은 또한 (예를 들어, 태스크 TA200 을 참조하여 여기에 설명한 바와 같이) 하모닉 스페이싱 (d) 후보들의 개수 Nd 를 계산하는 수단 FA200 을 포함한다. 장치 MF100 은 또한 (예를 들어, 태스크 TA300 을 참조하여 여기에 설명한 바와 같이) 기본 주파수 (F0) 후보들의 개수 (Nf) 를 식별하는 수단 FA300 을 포함한다. 장치 MF100 은 또한, (예를 들어, 태스크 TA400 을 참조하여 여기에 설명한 바와 같이) 복수의 상이한 (F0, d) 쌍들 각각에 대해, 로케이션들이 쌍에 기초하는 오디오 신호의 일 세트의 서브대역들을 선택하는 수단 FA400 을 포함한다. 장치 MF100 은 또한, (예를 들어, 태스크 TA500 을 참조하여 여기에 설명한 바와 같이) 복수의 상이한 (F0, d) 쌍들 각각에 대해, 대응하는 세트의 서브대역들의 에너지를 계산하는 수단 FA500 을 포함한다. 장치 MF100 은 또한, (예를 들어, 태스크 TA600 을 참조하여 설명한 바와 같이) 계산된 에너지들에 기초하여 후보 쌍을 선택하는 수단 FA600 을 포함한다. 도 13a 는 (예를 들어, 태스크 TA700 을 참조하여 여기에 설명한 바와 같이) 선택된 후보 쌍의 값들의 표시들을 포함하는 인코딩된 신호를 생성하는 수단 FA700 을 포함하는 장치 MF100 의 일 구현 MF110 의 블록도를 도시한다.

도 12b 는 다른 일반적인 구성에 따른 오디오 신호 프로세싱을 위한 장치 A100 의 블록도를 도시한다. 장치 A100 은 (예를 들어, 태스크 TA100 을 참조하여 여기에 설명한 바와 같이) 주파수 도메인에서 오디오 신호 내의 복수의 피크들을 로케이팅하도록 구성된 주파수-도메인 피크 로케이터 (100) 를 포함한다. 장치 A100 은 또한 (예를 들어, 태스크 TA200 을 참조하여 여기에 설명한 바와 같이) 하모닉 스페이싱 (d) 후보들의 개수 Nd 를 계산하도록 구성된 거리 계산기 (200) 를 포함한다. 장치 A100 은 또한 (예를 들어, 태스크 TA300 을 참조하여 여기에 설명한 바와 같이) 기본 주파수 (F0) 후보들의 개수 Nf 를 식별하도록 구성된 기본 주파수 후보 선택기 (300) 를 포함한다. 장치 A100 은 또한 (예를 들어, 태스크 TA400 을 참조하여 여기에 설명한 바와 같이) 복수의 상이한 (F0, d) 쌍들 각각에 대해, 로케이션들이 쌍에 기초하는 오디오 신호의 일 세트의 서브대역들을 선택하도록 구성된 서브대역 배치 선택기 (400) 를 포함한다. 장치 A100 은 또한 (예를 들어, 태스크 TA500 을 참조하여 여기에 설명한 바와 같이) 복수의 상이한 (F0, d) 쌍들 각각에 대해, 대응하는 세트의 서브대역들의 에너지를 계산하도록 구성된 에너지 계산기 (500) 를 포함한다. 장치 A100 은 또한 (예를 들어, 태스크 TA600 을 참조하여 여기에 설명한 바와 같이) 계산된 에너지들에 기초하여 후보 쌍을 선택하도록 구성된 후보 쌍 선택기 (600) 를 포함한다. 장치 A100 은 또한, 그 다양한 엘리먼트들이 여기에 설명한 바와 같이 방법 MB100 의 대응하는 태스크들을 수행하도록 구성되도록 구현될 수도 있다는 것에 명확히 주목된다.

도 13b 는 양자화기 (710) 및 비트 팩커 (720) 를 포함하는 장치 A100 의 일 구현 A110 의 블록도를 도시한다. 양자화기 (710) 는 (예를 들어, 태스크 TA700 을 참조하여 여기에 설명한 바와 같이) 서브대역들의 선택된 세트를 인코딩하도록 구성된다. 예를 들어, 양자화기 (710) 는 GSVQ 또는 다른 VQ 방식을 사용하여 서브대역들을 벡터들로서 인코딩하도록 구성될 수도 있다. 비트 팩커 (720) 는 (예를 들어, 태스크 TA700 을 참조하여 여기에 설명한 바와 같이) 선택된 후보 쌍의 값들을 인코딩하고, 선택된 후보 쌍들의 이들 표시들을 양자화된 서브대역들과 팩킹하여 인코딩된 신호를 생성하도록 구성된다. 대응하는 디코더는 양자화된 서브대역들을 언팩킹하고 후보 값들을 디코딩하도록 구성된 비트 언팩커, 역양자화된 세트의 서브대역들을 생성하도록 구성된 역양자화기, 및 (예를 들어, 태스크 TD300 을 참조하여 설명한 바와 같이) 디코딩된 후보 값들에 기초하는 로케이션들에서 주파수 도메인에서의 역양자화된 서브대역들을 배치하고, 가능하다면 대응하는 잔여물을 배치하여 디코딩된 신호를 생성하도록 구성된 서브대역 배치기를 포함할 수도 있다. 장치 A110 은 또한, 그 다양한 엘리먼트들이 여기에 설명한 바와 같이 방법 MB110 의 대응하는 태스크들을 수행하도록 구성되도록 구현될 수도 있다는 것에 명확히 주목된다.

도 14 는 일반적인 구성에 따른 오디오 신호 프로세싱을 위한 장치 MF210 의 블록도를 도시한다. 장치 MF210 은 (예를 들어, 태스크 TB100 을 참조하여 여기에 설명한 바와 같이) 주파수 도메인에서 기준 오디오 신호 내의 복수의 피크들을 로케이팅하는 수단 FB100 을 포함한다. 장치 MF210 은 또한 (예를 들어, 태스크 TB200 을 참조하여 여기에 설명한 바와 같이) 하모닉 스페이싱 (d) 후보들의 개수 Nd2 를 계산하는 수단 FB200 을 포함한다. 장치 MF210 은 또한 (예를 들어, 태스크 TB300 을 참조하여 여기에 설명한 바와 같이) 기본 주파수 (F0) 후보들의 개수 Nf2 를 식별하는 수단 FB300 을 포함한다. 장치 MF210 은 또한, (예를 들어, 태스크 TB400 을 참조하여 여기에 설명한 바와 같이) 복수의 상이한 (F0, d) 쌍들 각각에 대해, 로케이션들이 쌍에 기초하는 타겟 오디오 신호의 일 세트의 서브대역들을 선택하는 수단 FB400 을 포함한다. 장치 MF210 은 또한 (예를 들어, 태스크 TB500 을 참조하여 여기에 설명한 바와 같이) 복수의 상이한 (F0, d) 쌍들 각각에 대해, 대응하는 세트의 서브대역들의 에너지를 계산하는 수단 FB500 을 포함한다. 장치 MF210 은 또한 (예를 들어, 태스크 TB600 을 참조하여 여기에 설명한 바와 같이) 계산된 에너지들에 기초하여 후보 쌍을 선택하는 수단 FB600 을 포함한다. 장치 MF210 은 또한 (예를 들어, 태스크 TB700 을 참조하여 여기에 설명한 바와 같이) 선택된 후보 쌍의 값들의 표시들을 포함하는 인코딩된 신호를 생성하는 수단 FB700 을 포함한다.

기준 신호 (예를 들어, 저대역 스펙트럼) 이 하모닉 모델 (예를 들어 방법 MA100 의 인스턴스) 을 사용하여 인코딩되는 경우에, 방법 MB100 의 인스턴스 가 아닌 MA100 의 인스턴스를 타겟 신호 (예를 들어, 고대역 스펙트럼) 에 대해 수행하는 것이 바람직할 수도 있다. 즉, 방법 MB100 에 의해서와 같이 저대역 값들로부터의 F0 을 맵핑하기 보다는, 고대역 스펙트럼으로부터 독립적으로 F0 및 d 에 대한 고대역 값들을 추정하는 것이 바람직할 수도 있다. 이러한 경우에, F0 및 d 에 대한 상위대역 값들을 디코더에 송신하거나, 대안으로는, F0 에 대한 저대역 값과 고대역 값 사이의 차이 및 d 에 대한 저대역 값과 고대역 값 사이의 차이 (고대역 모델 파라미터들의 "파라미터-레벨 예측" 이라고도 불림) 를 송신하는 것이 바람직할 수도 있다.

고대역 파라미터들의 이러한 독립적인 추정은 ("신호-레벨 예측" 이라고도 불리는) 디코딩된 저대역 스펙트럼으로부터의 파라미터들의 예측과 비교하여 에러 내성 (error resiliency) 의 관점에서 이점을 가질 수도 있다. 하나의 예에서, 하모닉 저대역 서브대역들에 대한 이득들은 2 개의 이전 프레임들로부터의 정보를 사용하는 적응적 차동 펄스-코드-변조 (adaptive differential pulse-code-modulated) 방식을 사용하여 인코딩된다. 결과적으로, 연속적인 이전 하모닉 저대역 프레임들 중 임의의 것이 손실된다면, 디코더에서의 서브대역 이득은 인코더에서의 것과는 다를 수도 있다. 디코딩된 저대역 스펙트럼으로부터의 고대역 하모닉 모델 파라미터들의 신호-레벨 예측이 이러한 경우에 사용되었다면, 가장 큰 피크들은 인코더 및 디코더에서 다를 수도 있다. 이러한 차이는 디코더에서의 F0 및 d 에 대한 부정확한 추정치들의 원인이 될 수도 있어, 잠재적으로는 완전히 잘못된 고대역 디코딩된 결과를 야기한다.

도 15a 는 LPC 잔여 도메인에 있을 수도 있는, 타겟 신호를 인코딩하는 것에 대한 방법 MB110 의 애플리케이션의 일 예를 예시한다. 왼쪽 경로에서, 태스크 S100 은 (펄스-코딩 연산의 잔여물에 대해 방법 MA100 또는 MB100 의 일 구현을 수행하는 것을 포함할 수도 있는) 전체 타겟 신호 스펙트럼의 펄스 코딩을 수행한다. 오른쪽 경로에서, 방법 MB110 의 일 구현은 타겟 신호를 인코딩하는데 사용된다. 이 경우에, 태스크 TB700 은 VQ 방식 (예를 들어, GSVQ) 을 사용하여 선택된 서브대역들을 인코딩하고 펄스-코딩 방법을 사용하여 잔여물을 인코딩하도록 구성될 수도 있다. 태스크 S200 은 코딩 연산들의 결과들을 (예를 들어, 2 개의 인코딩된 신호들을 디코딩하고 디코딩된 신호들을 원래의 타겟 신호와 비교함으로써) 평가하고, 현재 어느 코딩 모드가 보다 적합한지를 나타낸다.

도 15b 는 LPC 잔여 도메인에 있을 수도 있는, 입력 신호가 고대역 (상위대역, "UB") 의 MDCP 스펙트럼이고 기준 신호가 재구성된 LB-MDCT 스펙트럼인 하모닉-모델 인코딩 시스템의 블록도를 도시한다. 이 예에서, 태스크 S100 의 일 구현 S110 은 펄스 코딩 방법 (예를 들어, 계승 펄스 코딩 (FPC) 방법 또는 조합 펄스 코딩 방법) 을 사용하여 타겟 신호를 인코딩한다. 기준 신호는 하모닉 모델, 이전 인코딩된 프레임에 의존하는 코딩 모델, 고정된 서브대역들을 사용하는 코딩 방식, 또는 일부 다른 코딩 방식을 사용하여 인코딩될 수도 있는 프레임의 양자화된 LB-MDCT 스펙트럼으로부터 획득된다. 즉, 방법 MB110 의 동작은 기준 신호를 인코딩하는데 사용된 특정 방법에 대해 독립적이다. 이 경우에, 방법 MB110 은 변환 코드를 사용하여 서브대역 이득들을 인코딩하도록 구현될 수도 있으며, 형상 벡터들을 양자화하기 위해 할당된 비트들의 개수는 코딩된 이득들 및 LPC 분석의 결과들에 기초하여 계산될 수도 있다. (예를 들어, 하모닉 모델에 의해 선택된 서브대역들을 인코딩하기 위해 GSVQ 를 사용하여) 방법 MB110 에 의해 생성되는 인코딩된 신호는 (예를 들어, FPC 와 같은 펄스 코딩만을 사용하여) 태스크 S110 에 의해 생성되는 인코딩된 신호와 비교되며, 태스크 S200 의 일 구현 S210 은 지각적 메트릭 (예를 들어, LPC-가중화된 신호-대-잡음비 메트릭) 에 따라 프레임에 대한 최적의 코딩 모드를 선택한다. 이 경우에, 방법 MB100 은 서브대역 및 잔여 이득들에 기초하여 GSVQ 에 대한 비트 할당들 및 잔여 인코딩들을 계산하도록 구현될 수도 있다.

코딩 모드 선택 (예를 들어, 도 15a 및 도 15b 에 도시한 바와 같음) 은 멀티-대역 경우로 연장될 수도 있다. 하나의 이러한 예에서, 저대역과 고대역 각각은, 4 개의 상이한 모드 조합들이 처음에는 프레임에 대한 고려 하에 있도록 독립적인 코딩 모드 (예를 들어, GSVQ 또는 펄스-코딩 모드) 와 하모닉 코딩 모드 (예를 들어, 방법 MA100 또는 MB100) 양자를 사용하여 코딩된다. 이러한 경우에, 여기에 설명한 바와 같이 디코딩된 서브대역들을 원래의 신호로부터 제거함으로써 저대역 하모닉 코딩 모드에 대한 잔여물을 계산하는 것이 바람직할 수도 있다. 다음에, 저대역 모드들 각각에 대해, 최적의 대응하는 고대역 모드가 (예를 들어, LPC-가중화된 메트릭과 같이, 고대역에 대한 지각적 메트릭을 사용하여 2 개의 옵션들 간의 비교에 따라) 선택된다. 2 개의 나머지 옵션들 (즉, 대응하는 최적의 고대역 모드를 가진 저대역 독립적인 모드, 및 대응하는 최적의 고대역 모드를 가진 저대역 하모닉 모드) 중, 저대역과 고대역 양자를 커버하는 지각적 메트릭 (예를 들어, LPC-가중화된 지각적 메트릭) 을 참조하여 이들 옵션들 사이에서 선택이 행해진다. 이러한 멀티-대역 경우의 하나의 예에서, 저대역 독립적인 모드는 GSVQ 를 사용하여 고정된 서브대역들의 세트를 인코딩하고, 고대역 독립적인 모드는 펄스 코딩 방식 (예를 들어, 계승 펄스 코딩) 을 사용하여 고대역 신호를 인코딩한다.

도 16 의 A 내지 E 는 여기에 설명한 바와 같이 장치 A110 (또는 MF110 또는 MF210) 의 다양한 구현들에 대한 일 범위의 애플리케이션들을 도시한다. 도 16 의 A 는 변환 모듈 MM1 (예를 들어, 고속 푸리에 변환 또는 MDCT 모듈) 및 오디오 프레임들 SA10 을 변환 도메인에서의 샘플들로서 (즉, 변환 도메인 계수들로서) 수신하고 대응하는 인코딩된 프레임들 SE10 을 생성하도록 배열되는 장치 A110 (또는 MF110 또는 MF210) 의 인스턴스를 포함하는 오디오 프로세싱 경로의 블록도를 도시한다.

도 16 의 B 는, 변환 모듈 MM1 이 MDCT 변환 모듈을 사용하여 구현되는 도 16 의 A 의 경로의 일 구현이 블록도를 도시한다. 변형 DCT 모듈 MM10 은 각각의 오디오 프레임에 대해 MDCT 연산을 수행하여 MDCT 도메인 계수들의 세트를 생성한다.

도 16 의 C 는 선형 예측 코딩 분석 모듈 AM10 을 포함하는 도 16 의 A 의 경로의 일 구현의 블록도이다. 선형 예측 코딩 (LPC) 분석 모듈 AM10 은 분류된 프레임에 대해 LPC 분석 동작을 수행하여 일 세트의 LPC 파라미터들 (예를 들어, 필터 계수들) 및 LPC 잔여 신호를 생성한다. 하나의 예에서, LPC 분석 모듈 AM10 은 0 내지 4000Hz 의 대역폭을 갖는 프레임에 대해 10차 LPC 분석을 수행하도록 구성된다. 다른 예에서, LPC 분석 모듈 AM10 은 3500 내지 7000Hz 의 고대역 주파수 범위를 표현하는 프레임에 대해 6차 LPC 분석을 수행하도록 구성된다. 변형 DCT 모듈 MM10 은 LPC 잔여 신호에 대해 MDCT 연산을 수행하여 변환 도메인 계수들의 세트를 생성한다. 대응하는 디코딩 경로는 인코딩된 프레임들 SE10 을 디코딩하고 디코딩된 프레임들에 대해 역 MDCT 변환을 수행하여 LPC 분석 필터에 대한 입력을 위한 여기 신호를 획득하도록 구성될 수도 있다.

도 16 의 D 는 신호 분류기 SC10 를 포함하는 프로세싱 경로의 블록도를 도시한다. 신호 분류기 SC10 은 오디오 신호의 프레임들 SA10 을 수신하고 각각의 프레임을 적어도 2 개의 카테고리들 중 하나로 분류한다. 예를 들어, 신호 분류기 SC10 은, 프레임이 음악으로서 분류된다면, 도 16 의 D 에 도시된 나머지 경로가 그것을 인코딩하는데 사용되고, 프레임이 스피치로서 분류된다면, 상이한 프로세싱 경로가 그것을 인코딩하는데 사용되도록 프레임 SA10 을 스피치 또는 음악으로서 분류하도록 구성될 수도 있다. 이러한 분류는 신호 활동 검출, 잡음 검출, 주기성 검출, 시간-도메인 희소성 검출, 및/또는 주파수-도메인 희소성 검출을 포함할 수도 있다.

도 17a 는 신호 분류기 SC10 에 의해 (예를 들어, 오디오 프레임들 SA10 각각에 대해) 수행될 수도 있는 신호 분류의 방법 MC100 의 블록도를 도시한다. 방법 MC100 은 태스크 TC100, 태스크 TC200, 태스크 TC300, 태스크 TC400, 태스크 TC500, 및 태스크 TC600 을 포함한다. 태스크 TC100 은 신호 내의 활동의 레벨을 양자화한다. 활동의 레벨이 임계값보다 낮다면, 태스크 TC200 은 신호를 (예를 들어, 낮은 비트-레이트 잡음-여기된 선형 예측 (noise-excited linear prediction; NELP) 방식 및/또는 불연속 송신 (DTX) 방식을 사용하여) 사일런스 (silence) 로서 인코딩한다. 활동의 레벨이 충분히 높다면 (예를 들어, 임계값보다 높다면), 태스크 TC300 은 신호의 주기성의 정도를 양자화한다. 태스크 TC300 이 신호가 주기적이지 않다는 것을 결정한다면, 태스크 TC400 은 NELP 방식을 사용하여 신호를 인코딩한다. 태스크 TC300 이 신호가 주기적이라는 것을 결정한다면, 태스크 TC500 은 프레임 및/또는 주파수 도메인에서의 신호의 희소성의 정도를 양자화한다. 태스크 TC500 이 신호가 시간 도메인에서 희소하다는 것을 결정한다면, 태스크 TC600 은 완화된 CELP (RCELP) 또는 ACELP (algebraic CELP) 와 같은 코드-여기된 선형 예측 (CELP) 방식을 사용하여 신호를 인코딩한다. 태스크 TC500 이 신호가 주파수 도메인에서 희소하다는 것을 결정한다면, 태스크 TC700 은 하모닉 모델을 사용하여 신호를 (예를 들어, 그 신호를 도 16 의 D 에서의 나머지 프로세싱 경로로 전달함으로써) 인코딩한다.

도 16 의 D 에 도시한 바와 같이, 프로세싱 경로는 시간 마스킹, 주파수 마스킹 및/또는 히어링 임계값과 같은 음향 심리학 기준을 적용함으로써 MDCT-도메인 신호를 단순화하도록 (예를 들어, 인코딩될 변환 도메인 계수들의 개수를 저감시키도록) 구성되는 지각적 프루닝 모듈 PM10 을 포함할 수도 있다. 모듈 PM10 은 지각적 모델을 원래의 오디오 프레임들 SA10 에 적용함으로써 이러한 기준에 대한 값들을 컴퓨팅하도록 구현될 수도 있다. 이 예에서, 장치 A110 (또는 MF110 또는 MF210) 은 프루닝된 프레임들을 인코딩하여 대응하는 인코딩된 프레임들 SE10 을 생성하도록 배열된다.

도 16 의 E 는, 장치 A110 (또는 MF110 또는 MF210) 이 LPC 잔여물을 인코딩하도록 배열되는, 도 A1C 및 A1D 의 경로들 양자의 일 구현의 블록도를 도시한다.

도 17b 는 장치 A100 의 일 구현을 포함하는 통신 디바이스 D10 의 블록도를 도시한다. 디바이스 D10 은 장치 A100 (또는 MF100 및/또는 MF210) 의 엘리먼트들을 수록하는 칩 또는 칩셋 CS10 (예를 들어, 이동국 모뎀 (MSM) 칩셋) 을 포함한다. 칩/칩셋 CS10 은 하나 이상의 프로세서들을 포함할 수도 있으며, 이는 장치 A100 또는 MF100 의 소프트웨어 및/또는 펌웨어 부분을 (예를 들어, 명령들로서) 실행하도록 구성될 수도 있다.

칩/칩셋 CS10 은, 무선 주파수 (RF) 통신 신호를 수신하고 RF 신호 내에 인코딩된 오디오 신호를 디코딩 및 재생하도록 구성되는 수신기, 및 (예를 들어, 태스크 TA700 또는 TB700 에 의해 생성된 바와 같이) 인코딩된 오디오 신호를 설명하는 RF 통신 신호를 송신하도록 구성되는 송신기를 포함한다. 이러한 디바이스는 보이스 통신 데이터를 하나 이상의 인코딩 및 디코딩 방식들 ("코덱들" 이라고도 불림) 을 통해 무선으로 송신 및 수신하도록 구성될 수도 있다. 이러한 코덱들의 예들은 (www-dot-3gpp-dot-org 에서 온라인 입수가능한) 명칭이 "Enhanced Variable Rate Codec, Speech Service Options 3, 68, and 70 for Wideband Spread Spectrum Digital Systems" (2007년 2월) 인 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" (2004년 1월) 인 3GPP2 문서 C.S0030-0, v3.0 에서 설명되는 선택가능한 모드 보코더 스피치 코덱; 문서 ETSI TS 126 092 V6.0.0 (유럽 전기통신 표준 협회 (ETSI), Sophia Antipolis Cedex, FR, 2004년 12월) 에서 설명되는 적응적 멀티 레이트 (AMR) 스피치 코덱; 및 문서 ETSI TS 126 192 V6.0.0 (ETSI, 2004년 12월) 에서 설명되는 AMR 광대역 스피치 코덱을 포함한다.

디바이스 D10 은 RF 통신 신호들을 안테나 C30 을 통해 수신 및 송신하도록 구성된다. 디바이스 D10 은 안테나 C30 에 대한 경로에 듀플렉서 및 하나 이상의 전력 증폭기들을 포함할 수도 있다. 칩/칩셋 CS10 은 또한 키패드 C10 을 통해 사용자 입력을 수신하고 정보를 디스플레이 C20 을 통해 디스플레이하도록 구성된다. 이 예에서, 디바이스 D10 은 또한 무선 (예를 들어, BluetoothTM) 헤드셋과 같은 외부 디바이스와 글로벌 포지셔닝 시스템 (GPS) 로케이션 서비스들 및/또는 단거리 통신들을 지원하기 위해 하나 이상의 안테나들 C40 을 포함한다. 다른 예에서, 이러한 통신 디바이스는 그 자체가 BluetoothTM 이고, 키패드 C10, 디스플레이 C20 및 안테나 C30 이 없다.

통신 디바이스 D10 은 스마트폰들 및 랩탑 및 태블릿 컴퓨터들을 포함하는, 다양한 통신 디바이스들에 수록될 수도 있다. 도 18 은 프론트면 상에 배열된 2 개의 보이스 마이크로폰들 MV10-1 및 MV10-3, 리어면 상에 배열된 보이스 마이크로폰 MV10-2, 프론트면의 상부 코너에 로케이팅된 에러 마이크로폰 ME10 및 백면 상에 로케이팅된 노이즈 기준 마이크로폰 MR10 을 갖는 핸드셋 H100 (예를 들어, 스마트폰) 의 프론트, 리어 및 사이드 뷰들을 도시한다. 라우드스피커 LS10 은 에러 마이크로폰 ME10 근방의 프론트면의 상부 중앙에 배열되고, 2 개의 다른 라우드스피커들 LS20L, LS20R 이 또한 (예를 들어, 스피커폰 애플리케이션들을 위해) 제공된다. 이러한 핸드셋의 마이크로폰들 사이의 최대 거리는 통상 약 10 또는 12 센티미터들이다.

여기에 개시된 방법들 및 장치는 일반적으로 임의의 트랜시빙 및/또는 오디오 감지 애플리케이션, 특히 이러한 애플리케이션들의 모바일 또는 다르게는 휴대용 인스턴스들에서 적용될 수도 있다. 예를 들어, 여기에 개시된 구성들의 범위는 코드 분할 다중 액세스 (CDMA) 공중 경유 인터페이스를 채용하도록 구성된 무선 전화 통신 시스템에 상주하는 통신 디바이스들을 포함한다. 그럼에도 불구하고, 여기에 설명한 바와 같은 피처들을 갖는 방법 및 장치는 유선 및/또는 무선 (예를 들어, CDMA, TDMA, FDMA, 및/또는 TD-SCDMA) 송신 채널들을 통해 VoIP (Voice over IP) 를 채용하는 시스템들과 같이, 당업자에게 알려져 있는 광범위한 기술들을 채용하는 다양한 통신 시스템들 중 임의의 것에 상주할 수도 있다는 것이 당업자에 의해 이해될 것이다.

여기에 개시된 통신 디바이스들은 패킷 스위칭되는 네트워크들 (예를 들어, VoIP 와 같은 프로토콜들에 따라 오디오 송신들을 운반하도록 배열된 유선 및/또는 무선 네트워크들) 및/또는 회로 스위칭되는 네트워크들에서 이용하도록 적응될 수도 있다는 것이 명확히 고려되고 이로써 개시된다. 또한, 여기에 개시된 통신 디바이스들은 협대역 코딩 시스템들 (예를 들어, 약 4 또는 5 킬로헤르츠의 오디오 주파수 범위를 인코딩하는 시스템들) 에서 이용하도록 적응될 수도 있고 및/또는 전대역 (whole-band) 광대역 코딩 시스템들 및 스플릿-대역 (split-band) 광대역 코딩 시스템들을 포함하는, 광대역 코딩 시스템들 (예를 들어, 5 킬로헤르츠보다 큰 오디오 주파수들을 인코딩하는 시스템들) 에서 이용하도록 적응될 수도 있다.

상기 개시된 구성들의 제시는 임의의 당업자가 여기에 개시된 방법들 및 다른 구조들을 실시 또는 이용할 수 있게 하기 위해 제공된다. 여기에 도시 및 설명된 플로우차트들, 블록도들, 및 다른 구조들은 단지 예들이며, 이들 구조들의 다른 변형들이 또한 본 개시물의 범위 내에 있다. 이들 구성들에 대한 다양한 변경들이 가능하며, 여기에 제시된 일반적인 원리들은 다른 구성들에도 물론 적용될 수도 있다. 따라서, 본 개시물은 상기 도시된 구성들에 제한되는 것으로 의도되지 않고 원래의 개시물의 부분을 형성하는, 출원 시 첨부된 청구범위에 포함되는, 여기에 임의의 방식으로 개시된 원리들 및 신규한 특징들에 부합하는 최광의 범위를 따르게 될 것이다.

당업자는 정보 및 신호들이 다양한 상이한 기술들 및 기법들 중 임의의 것을 이용하여 표현될 수도 있다는 것을 이해할 것이다. 예를 들어, 상기 설명 전반에 걸쳐 참조될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 및 심볼들은 전압들, 전류들, 전자기파들, 자기장들 또는 자기 입자들, 광학장들 또는 광학 입자들, 또는 이들의 임의의 조합으로 표현될 수도 있다.

여기에 개시된 구성의 구현에 대한 중요한 설계 요건들은 특히 컴퓨터 집약적 애플리케이션들, 이를 테면 압축된 오디오 또는 오디오비주얼 정보 (예를 들어, 여기에 식별된 예들 중 하나와 같은 압축 포맷에 따라 인코딩된 파일 또는 스트림) 또는 광대역 통신들 (예를 들어, 12, 16, 44.1, 48 또는 192kHz 와 같은 8 킬로헤르츠보다 높은 샘플링 레이트들에서의 보이스 통신들) 에 대한 애플리케이션들에 대한 프로세싱 지연 및/또는 컴퓨테이션 복잡도 (통상 초 또는 MIPS 당 수 백개의 명령들로 측정됨) 를 최소화하는 것을 포함할 수도 있다.

여기에 개시된 바와 같은 장치 (예를 들어, 장치 A100, 장치 A110, 장치 MF100, 장치 MF110, 또는 장치 MF210) 는, 의도된 애플리케이션에 적합한 것으로 여겨지는 하드웨어의 소프트웨어와의, 및/또는 펌웨어와의 임의의 조합으로 구현될 수도 있다. 예를 들어, 이러한 엘리먼트들은 예를 들어 동일한 칩 상에 또는 칩셋 내의 2 개 이상의 칩들 사이에 상주하는 전자 및/또는 광학 디바이스들로서 제작될 수도 있다. 이러한 디바이스의 하나의 예는 트랜지스터들 또는 로직 게이트들과 같은 로직 엘리먼트들의 고정된 또는 프로그램가능 어레이이고, 이들 엘리먼트들 중 임의의 것이 하나 이상의 이러한 어레이들로서 구현될 수도 있다. 임의의 2 개 이상의, 또는 심지어 모든 이러한 엘리먼트들은 동일한 어레이 또는 어레이들 내에 구현될 수도 있다. 이러한 어레이 또는 어레이들은 하나 이상의 칩들 내에 (예를 들어, 2 개 이상의 칩들을 포함하는 칩셋 내에) 구현될 수도 있다.

여기에 개시된 장치 (예를 들어, 장치 A100, 장치 A110, 장치 MF100, 장치 MF110 또는 장치 MF210) 의 다양한 구현들의 하나 이상의 엘리먼트들은 하나 이상의 고정된 또는 프로그램가능 어레이들의 로직 엘리먼트, 이를 테면 마이크로프로세서들, 임베딩된 프로세서들, IP 코어들, 디지털 신호 프로세서들, 필드 프로그램가능 게이트 어레이 (FPGA) 들, ASSP (application-specific standard product) 들, 및 주문형 집적 회로 (ASIC) 들 상에서 실행하도록 배열된 명령들의 하나 이상의 세트들로서 전체 또는 부분적으로 구현될 수도 있다. 여기에 개시된 바와 같은 장치의 일 구현의 다양한 엘리먼트들 중 임의의 것은 또한 하나 이상의 컴퓨터들 (예를 들어 "프로세서들" 이라고도 불리는, 명령들의 하나 이상의 세트들 또는 시퀀스들을 실행하도록 프로그램된 하나 이상의 어레이들을 포함하는 머신들) 로서 구현될 수도 있으며, 이러한 엘리먼트들의 임의의 2 개 이상, 또는 심지어는 전부가 동일한 이러한 컴퓨터 또는 컴퓨터들 내에서 구현될 수도 있다.

여기에 개시된 바와 같은 프로세싱을 위한 프로세서 또는 다른 수단은 예를 들어 칩셋 내의 동일한 칩 상에 또는 2 개 이상의 칩들 사이에 상주하는 하나 이상의 전자 및/또는 광학 디바이스들로서 제작될 수도 있다. 이러한 디바이스의 하나의 예는 트랜지스터들 또는 로직 게이트들과 같은 로직 엘리먼트들의 고정된 또는 프로그램가능 어레이이며, 이들 엘리먼트들 중 임의의 것이 하나 이상의 이러한 어레이들로서 구현될 수도 있다. 이러한 어레이 또는 어레이들은 하나 이상의 칩들 내에 (예를 들어, 2 개 이상의 칩들을 포함하는 칩셋 내에) 구현될 수 있다. 이러한 어레이들의 예들은 고정된 또는 프로그램가능 어레이들의 로직 엘리먼트들, 이를 테면 마이크로프로세서들, 임베딩된 프로세서들, IP 코어들, DSP들, FPGA들, ASSP들, 및 ASIC들을 포함한다. 여기에 개시된 바와 같은 프로세싱을 위한 프로세서 또는 다른 수단은 또한 하나 이상의 컴퓨터들 (예컨대, 명령들의 하나 이상의 세트들 또는 시퀀스들을 실행하도록 프로그램된 하나 이상의 어레이들을 포함하는 머신들) 또는 다른 프로세서들로서 수록될 수도 있다. 여기에 설명된 바와 같은 프로세서는, 그 프로세서가 임베딩되는 디바이스 또는 시스템 (예컨대, 오디오 감지 디바이스) 의 다른 동작에 관한 태스크와 같이, 방법 MA100, 방법 MA110, 방법 MB100, 방법 MB110 또는 방법 MD100 의 일 구현의 프로시저에 직접 관련되지 않은 명령들의 다른 세트들을 실행하거나 또는 태스크들을 수행하는데 사용되는 것이 가능하다. 또한 여기에 개시된 바와 같은 방법의 부분은, 오디오 감지 디바이스의 프로세서에 의해 수행되는 것이 가능하고 이 방법의 다른 부분은 하나 이상의 다른 프로세서들의 제어 하에서 수행되는 것이 가능하다.

당업자는 여기에 개시된 구성들과 관련하여 설명된 다양한 예시적인 모듈들, 논리 블록들, 회로들, 및 테스트들과 다른 동작들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘의 조합들로서 구현될 수도 있음을 이해할 것이다. 이러한 모듈들, 논리 블록들, 회로들, 및 동작들은 여기에 개시된 구성을 생성하도록 설계된 범용 프로세서, 디지털 신호 프로세서 (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 은 사용자 단말기 내에 상주할 수도 있다. 대안으로, 프로세서와 저장 매체는 사용자 단말기 내에 개별 컴포넌트들로서 상주할 수도 있다.

여기에 개시된 다양한 방법들 (예를 들어, 방법 MA100, 방법 MA110, 방법 MB100, 방법 MB110, 또는 방법 MD100) 은 프로세서와 같은 로직 엘리먼트들의 어레이에 의해 수행될 수도 있고, 여기에 설명한 바와 같은 장치의 다양한 엘리먼트들은 이러한 어레이 상에서 실행하도록 설계된 모듈들로서 구현될 수도 있다는 것에 주목된다. 여기에 사용한 바와 같이, 용어 "모듈" 또는 "서브-모듈" 은 컴퓨터 명령들 (예를 들어, 논리식들) 을 소프트웨어, 하드웨어 또는 펌웨어 형태로 포함하는 임의의 방법, 장치, 디바이스, 유닛 또는 컴퓨터 판독가능 데이터 저장 매체를 지칭할 수 있다. 다수의 모듈들 또는 시스템들이 하나의 모듈 또는 시스템으로 조합될 수 있고 하나의 모듈 또는 시스템이 동일한 기능들을 수행하는 다수의 모듈들 또는 시스템들로 분리될 수 있다는 것이 이해될 것이다. 소프트웨어 또는 다른 컴퓨터 실행가능 명령들로 구현될 경우, 프로세스의 엘리먼트들은 본질적으로 이를 테면 루틴들, 프로그램들, 오브젝트들, 컴포넌트들, 데이터 구조들 등에 의해서와 같이, 관련 태스크들을 수행하는 코드 세그먼트들이다. 용어 "소프트웨어" 는 소스 코드, 어셈블리 언어 코드, 머신 코드, 이진 코드, 펌웨어, 매크로코드, 마이크로코드, 로직 엘리먼트들의 어레이에 의해 실행가능한 명령들의 임의의 하나 이상의 세트들 또는 시퀀스들, 및 이러한 예들의 임의의 조합을 포함하는 것으로 이해되어야 한다. 프로그램 또는 코드 세그먼트들은 프로세서 판독가능 매체에 저장될 수 있거나 또는 송신 매체 또는 통신 링크를 통해 반송파에 수록된 컴퓨터 데이터 신호에 의해 송신될 수 있다.

여기에 개시된 방법들, 방식들, 및 기법들의 구현들은 로직 엘리먼트들의 어레이를 포함하는 머신 (예를 들어, 프로세서, 마이크로프로세서, 마이크로제어기, 또는 다른 유한 상태 머신) 에 의해 실행가능한 명령들의 하나 이상의 세트들로서 (예를 들어, 여기에 열거된 바와 같은 하나 이상의 컴퓨터 판독가능 저장 매체들의 유형의 컴퓨터 판독가능 피처들에) 유형적으로 (tangibly) 구현될 수도 있다. 용어 "컴퓨터 판독가능 매체" 는 휘발성, 비휘발성, 착탈식 및 비착탈식 저장 매체들을 포함하는, 정보를 저장하거나 전송할 수 있는 임의의 매체를 포함할 수도 있다. 컴퓨터 판독가능 매체의 예들은 전자 회로, 반도체 메모리 디바이스, ROM, 플래시 메모리, 소거가능한 ROM (EROM), 플로피 디스켓 또는 다른 마그네틱 저장장치, CD-ROM/DVD 또는 다른 광학 저장장치, 하드 디스크 또는 원하는 정보를 저장하는데 사용될 수 있는 임의의 다른 매체, 광섬유 매체, 무선 주파수 (RF) 링크, 또는 원하는 정보를 운반하는데 사용될 수 있고 액세스될 수 있는 임의의 다른 매체를 포함한다. 컴퓨터 데이터 신호는 전자 네트워크 채널들, 광섬유들, 대기 (air), 전자기, RF 링크들 등과 같은 송신 매체를 통해 전파할 수 있는 임의의 신호를 포함할 수도 있다. 코드 세그먼트들은 인터넷 또는 인트라넷과 같은 컴퓨터 네트워크들을 통해 다운로드될 수도 있다. 어느 경우에나, 본 개시물의 범위는 이러한 실시형태들에 의해 제한되는 것으로 해석되어서는 안된다.

여기에 설명된 방법들의 태스크들의 각각은 직접 하드웨어로, 프로세서에 의해 실행된 소프트웨어 모듈로, 또는 이 둘의 조합으로 구현될 수 있다. 여기에 개시된 바와 같은 방법의 일 구현의 통상적인 애플리케이션에서는, 로직 엘리먼트들 (예를 들어, 로직 게이트들) 의 어레이가 그 방법의 다양한 태스크들 중 하나, 2 개 이상, 또는 심지어 전체를 수행하도록 구성된다. 태스크들 증 하나 이상 (가능하다면 전부) 은 일 어레이의 로직 엘리먼트들을 포함하는 머신 (예를 들어, 컴퓨터) (예를 들어, 프로세서, 마이크로프로세서, 마이크로제어기, 또는 다른 유한 상태 머신) 에 의해 판독가능한 및/또는 실행가능한 컴퓨터 프로그램 제품 (예를 들어, 디스크들, 플래시 또는 다른 비휘발성 메모리 카드들, 반도체 메모리 칩들 등과 같은 하나 이상의 데이터 저장 매체들) 에 수록된 코드 (예컨대, 하나 이상의 세트들의 명령들) 로서 구현될 수도 있다. 여기에 개시된 방법의 일 구현의 태스크들은 또한 하나보다 많은 이러한 어레이 또는 머신에 의해 수행될 수도 있다. 이러한 또는 다른 구현들에서, 태스크들은 셀룰러 전화기 또는 이러한 통신 능력을 갖는 다른 디바이스와 같은 무선 통신용 디바이스 내에서 수행될 수도 있다. 이러한 디바이스는 (예컨대, VoIP와 같은 하나 이상의 프로토콜들을 이용하여) 회로 교환 및/또는 패킷 교환 네트워크들과 통신하도록 구성될 수도 있다. 예를 들어, 이러한 디바이스는 인코딩된 프레임들을 수신하고 및/또는 송신하도록 구성된 RF 회로를 포함할 수도 있다.

여기에 개시된 다양한 방법들은 핸드셋, 헤드셋, 또는 개인 휴대 정보 단말기 (PDA) 와 같은 휴대용 통신 디바이스에 의해 수행될 수도 있고, 여기에 개시된 다양한 장치는 이러한 디바이스 내에 포함될 수도 있다는 것이 명확히 개시된다. 통상의 실시간 (예를 들어, 온라인) 애플리케이션은 이러한 모바일 디바이스를 이용하여 행해지는 전화 대화이다.

하나 이상의 예시적인 실시형태들에서, 여기에 설명된 동작들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되었다면, 이러한 동작들은 컴퓨터 판독가능 매체를 통해 하나 이상의 명령들 또는 코드로서 저장되거나 송신될 수도 있다. 용어 "컴퓨터 판독가능 매체" 는 컴퓨터 판독가능 저장 매체들 및 통신 (예를 들어, 송신) 매체들 양자를 포함한다. 비제한적인 예로서, 컴퓨터 판독가능 저장 매체들은, 일 어레이의 저장 엘리먼트들, 이를 테면 반도체 메모리 (이는 동적 또는 정적 RAM, ROM, EEPROM, 및/또는 플래시 RAM 을 비제한적으로 포함할 수도 있음), 또는 강유전성, 자기저항성, 오보닉 (ovonic), 고분자성 또는 상 변화 메모리; CD-ROM 또는 다른 광학 디스크 저장장치; 및/또는 자기 디스크 저장 또는 다른 자기 저장 디바이스들을 포함할 수 있다. 이러한 저장 매체들은 컴퓨터에 의해 액세스될 수 있는 명령들 또는 데이터 구조들의 형태로 정보를 저장할 수도 있다. 통신 매체들은, 하나의 장소에서 또 다른 장소로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는, 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 운반하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 매체를 포함할 수도 있다. 또한, 임의의 접속들이 컴퓨터 판독가능 매체라 적절히 불리게 된다. 예를 들어, 소프트웨어가 동축 케이블, 섬유광 케이블, 연선, 디지털 가입자 회선 (DSL), 또는 적외선, 무선, 및/또는 마이크로파와 같은 무선 기술을 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신된다면, 매체의 정의에는, 동축 케이블, 섬유광 케이블, 연선, DSL, 또는 적외선, 무선, 및/또는 마이크로파와 같은 무선 기술이 포함된다. 디스크 (disk) 및 디스크 (disc) 는 여기에 사용한 바와 같이, 콤팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크 및 Blu-ray DiscTM (캘리포니아주, 유니버셜시, 블루레이 디스크 협회) 를 포함하며, 여기서 디스크 (disk) 들은 보통 데이터를 자기적으로 재생시키는 한편, 디스크 (disc) 들은 레이저를 이용하여 데이터를 광학적으로 재생시킨다. 상기한 것들의 조합들도 컴퓨터 판독가능 매체들의 범위 내에 포함되어야 한다.

여기에 설명한 바와 같이 음향 신호 프로세싱 장치는 소정의 동작들을 제어하기 위해 스피치 입력을 수용하는 전자 디바이스 내에 통합될 수 있거나, 또는 통신 디바이스들과 같이, 배경 잡음들로부터의 원하는 잡음들의 분리로부터 이익을 얻을 수도 있다. 많은 애플리케이션들은 다수의 방향들로부터 생기는 배경 사운드로부터 클리어한 원하는 사운드를 향상시키거나 분리하는 것으로부터 이익을 얻을 수도 있다. 이러한 애플리케이션들은 휴먼-머신 인터페이스들을 보이스 인식 및 검출, 스피치 향상 및 분리, 보이스 기동 (voice-activated) 제어 등과 같은 능력들을 통합하는 전자 또는 컴퓨팅 디바이스들에 포함할 수도 있다. 이러한 음향 신호 프로세싱 장치를 제한된 프로세싱 능력들만을 제공하는 디바이스들에 적합하게 되도록 구현하는 것이 바람직할 수도 있다.

여기에 설명된 모듈들, 엘리먼트들, 및 디바이스들의 다양한 구현들의 엘리먼트들은 전자 및/또는 광학 디바이스들로서 예를 들어, 동일한 칩 상에 또는 칩셋 내의 2 개 이상의 칩들 사이에 제작될 수도 있다. 이러한 디바이스의 하나의 예는 트랜지스터들 또는 게이트들과 같은 로직 엘리먼트들의 고정된 또는 프로그램가능 어레이이다. 여기에 설명된 장치의 다양한 구현들의 하나 이상의 엘리먼트들은 마이크로프로세서들, 임베딩된 프로세서들, IP 코어들, 디지털 신호 프로세서들, FPGA들, ASSP들, 및 ASIC들과 같은, 로직 엘리먼트들의 하나 이상의 고정된 또는 프로그램가능 어레이들 상에서 실행하도록 배열된 하나 이상의 세트들의 명령들로서 완전히 또는 부분적으로 구현될 수도 있다.

여기에 설명한 바와 같은 장치의 일 구현의 하나 이상의 엘리먼트들은 이 장치가 임베딩되는 디바이스 또는 시스템의 다른 동작에 관한 태스크와 같이, 장치의 동작에 직접적으로 관련되지는 않는 다른 세트들의 명령들을 실행하거나 태스크들을 수행하는데 사용되는 것이 가능하다. 이러한 장치의 일 구현의 하나 이상의 엘리먼트들은 공통의 구조 (예를 들어, 상이한 엘리먼트들에 대응하는 코드의 부분들을 상이한 시간들에 실행하는데 사용되는 프로세서, 상이한 엘리먼트들에 대응하는 태스크들을 상이한 시간들에 수행하도록 실행되는 일 세트의 명령들, 또는 상이한 엘리먼트들을 위한 동작들을 상이한 시간들에 수행하는 전자 및/또는 광학 디바이스들의 어레인지먼트) 를 갖는 것도 가능하다.

Claims (48)

  1. 오디오 신호 프로세싱의 방법으로서,
    주파수 도메인에서, 기준 오디오 신호 내의 복수의 피크들을 로케이팅하는 단계;
    하모닉 모델의 기본 주파수에 대한 후보들의 개수 Nf 를 선택하는 단계로서, 각각은 상기 주파수 도메인에서의 상기 복수의 피크들 중 대응하는 피크의 로케이션에 기초하는, 상기 개수 Nf 를 선택하는 단계;
    상기 주파수 도메인에서의 상기 복수의 피크들 중 적어도 2 개의 피크들의 로케이션들에 기초하여, 상기 하모닉 모델의 하모닉들 사이의 스페이싱에 대한 후보들의 개수 Nd 를 계산하는 단계;
    상기 기본 주파수와 하모닉 스페이싱의 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하는 단계로서, 상기 세트 내의 각각의 서브대역의 상기 주파수 도메인에서의 로케이션은 후보들의 쌍에 기초하는, 상기 일 세트의 적어도 하나의 서브대역을 선택하는 단계;
    상기 후보들의 복수의 상이한 쌍들 각각에 대해, 상기 타겟 오디오 신호의 대응하는 세트의 적어도 하나의 서브대역으로부터 에너지 값을 계산하는 단계; 및
    적어도 복수의 계산된 상기 에너지 값들에 기초하여, 상기 후보들의 복수의 상이한 쌍들 중에서 후보들의 쌍을 선택하는 단계를 포함하며,
    상기 개수 Nf 및 상기 개수 Nd 중에서 적어도 하나의 개수는 1 보다 큰 값을 갖는, 오디오 신호 프로세싱 방법.

  2. 제 1 항에 있어서,
    상기 타겟 오디오 신호는 상기 기준 오디오 신호인, 오디오 신호 프로세싱 방법.

  3. 제 1 항에 있어서,
    상기 기준 오디오 신호는 오디오 신호의 제 1 주파수 범위를 표현하며,
    상기 타겟 오디오 신호는 상기 제 1 주파수 범위와는 다른 상기 오디오 신호의 제 2 주파수 범위를 표현하는, 오디오 신호 프로세싱 방법.

  4. 제 3 항에 있어서,
    상기 오디오 신호 프로세싱 방법은, 기본 주파수 후보들의 상기 개수 Nf 를 상기 제 2 주파수 범위에 맵핑시키는 단계를 포함하는, 오디오 신호 프로세싱 방법.

  5. 제 1 항에 있어서,
    상기 오디오 신호 프로세싱 방법은, 선택된 상기 후보들의 쌍에 의해 나타내진 상기 세트의 적어도 하나의 서브대역에 대해 이득 형상 벡터 양자화 연산을 수행하는 단계를 포함하는, 오디오 신호 프로세싱 방법.

  6. 제 1 항에 있어서,
    상기 적어도 하나의 서브대역을 선택하는 단계는, 일 세트의 서브대역들을 선택하는 단계를 포함하며,
    상기 대응하는 세트의 서브대역들로부터 에너지 값을 계산하는 단계는, 서브대역당 평균 에너지를 계산하는 단계를 포함하는, 오디오 신호 프로세싱 방법.

  7. 제 1 항에 있어서,
    상기 대응하는 세트의 서브대역들로부터 에너지 값을 계산하는 단계는, 상기 세트의 적어도 하나의 서브대역에 의해 캡처된 총 에너지를 계산하는 단계를 포함하는, 오디오 신호 프로세싱 방법.

  8. 제 1 항에 있어서,
    상기 타겟 오디오 신호는 선형 예측 코딩 잔여물 (linear prediction coding residual) 에 기초하는, 오디오 신호 프로세싱 방법.

  9. 제 1 항에 있어서,
    상기 타겟 오디오 신호는 복수의 변형 이산 코사인 변환 계수들인, 오디오 신호 프로세싱 방법.

  10. 제 1 항에 있어서,
    상기 일 세트의 적어도 하나의 서브대역을 선택하는 단계는, 상기 세트의 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 상기 서브대역에 대한 로케이션을, 상기 서브대역에 의해 캡처된 에너지가 최대인 기준 로케이션의 특정 범위 내에서 발견하는 단계를 포함하며,
    상기 기준 로케이션은 후보 쌍에 기초하는, 오디오 신호 프로세싱 방법.

  11. 제 1 항에 있어서,
    상기 일 세트의 적어도 하나의 서브대역을 선택하는 단계는, 상기 세트의 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 상기 서브대역에 대한 로케이션을, 상기 서브대역 내의 최대 값을 갖는 샘플이 상기 서브대역 내에 센터링되는 기준 로케이션의 특정 범위 내에서 발견하는 단계를 포함하며,
    상기 기준 로케이션은 후보 쌍에 기초하는, 오디오 신호 프로세싱 방법.

  12. 제 1 항에 있어서,
    상기 후보들의 복수의 상이한 쌍들 중 적어도 하나에 대해, 상기 일 세트의 적어도 하나의 서브대역을 선택하는 단계는, 상기 적어도 하나의 서브대역의 적어도 하나의 각각에 대해 :
    후보 쌍에 기초하여, 상기 서브대역이 로케이팅된 피크들 중 특정 로케이팅된 피크를 배제시키도록 상기 서브대역에 대한 제 1 로케이션을 계산하는 단계로서, 상기 제 1 로케이션은 주파수-도메인 축 상의 상기 특정 로케이팅된 피크의 한쪽에 있는, 상기 제 1 로케이션을 계산하는 단계;
    상기 후보 쌍에 기초하여, 상기 서브대역이 상기 특정 로케이팅된 피크를 배제시키도록 상기 서브대역에 대한 제 2 로케이션을 계산하는 단계로서, 상기 제 2 로케이션은 상기 주파수-도메인 축 상의 상기 특정 로케이팅된 피크의 다른 쪽에 있는, 상기 제 2 로케이션을 계산하는 단계; 및
    상기 제 1 로케이션 및 상기 제 2 로케이션 중에서, 상기 서브대역이 가장 낮은 에너지를 갖는 로케이션을 식별하는 단계를 포함하는, 오디오 신호 프로세싱 방법.

  13. 제 1 항에 있어서,
    상기 오디오 신호 프로세싱 방법은, 선택된 상기 후보들의 쌍의 값들 및 대응하는 선택된 세트의 적어도 하나의 서브대역의 각각의 서브대역의 컨텐트들을 나타내는 인코딩된 신호를 생성하는 단계를 포함하는, 오디오 신호 프로세싱 방법.

  14. 제 1 항에 있어서,
    상기 적어도 하나의 서브대역을 선택하는 단계는 일 세트의 서브대역들을 선택하는 단계를 포함하며,
    상기 오디오 신호 프로세싱 방법은 :
    선택된 상기 후보들의 쌍에 대응하는 선택된 상기 세트의 서브대역들을 양자화하는 단계;
    양자화된 상기 세트의 서브대역들을 역양자화하여 역양자화된 세트의 서브대역들을 획득하는 단계; 및
    역양자화된 상기 서브대역들을 선택된 상기 후보들의 쌍에 기초하는 대응하는 로케이션들에 배치함으로써 디코딩된 신호를 구성하는 단계를 포함하며,
    상기 디코딩된 신호 내의 역양자화된 상기 서브대역들의 로케이션들은, 상기 타겟 오디오 신호 내의, 선택된 상기 후보들의 쌍에 대응하는 선택된 상기 세트의 대응하는 서브대역들의 로케이션들과는 다른, 오디오 신호 프로세싱 방법.

  15. 디코딩된 오디오 프레임을 구성하는 방법으로서,
    기본 주파수 값에 따라 복수의 디코딩된 서브대역 벡터들 중 제 1 디코딩된 서브대역 벡터를 배치하는 단계;
    상기 기본 주파수 값 및 하모닉 스페이싱 값에 따라 상기 복수의 디코딩된 서브대역 벡터들의 나머지를 배치하는 단계; 및
    상기 복수의 디코딩된 서브대역 벡터들에 의해 점유되지 않은 프레임의 로케이션들에 디코딩된 잔여 신호를 삽입하는 단계를 포함하는, 디코딩된 오디오 프레임의 구성 방법.

  16. 제 15 항에 있어서,
    상기 복수의 디코딩된 서브대역 벡터들의 각각의 인접한 쌍에 대해, 상기 서브대역 벡터들의 센터들 사이의 거리가 상기 하모닉 스페이싱 값과 동일한, 디코딩된 오디오 프레임의 구성 방법.

  17. 제 15 항에 있어서,
    상기 디코딩된 오디오 프레임의 구성 방법은, 상기 복수의 디코딩된 서브대역 벡터들의 가능한 로케이션들에 대응하는 상기 디코딩된 잔여 신호의 부분들을 없애는 단계를 포함하는, 디코딩된 오디오 프레임의 구성 방법.

  18. 제 15 항에 있어서,
    상기 디코딩된 잔여 신호를 삽입하는 단계는, 증가하는 주파수의 순서로의 상기 프레임의 점유되지 않은 로케이션들에, 상기 디코딩된 잔여 신호의 제 1 값으로부터 상기 디코딩된 잔여 신호의 마지막 값으로의 순서로, 상기 디코딩된 잔여 신호의 값들을 삽입하는 단계를 포함하는, 디코딩된 오디오 프레임의 구성 방법.

  19. 제 15 항에 있어서,
    상기 디코딩된 잔여 신호를 삽입하는 단계는, 상기 디코딩된 잔여 신호의 일부를 주파수-도메인 축에 대하여 랩핑하여 상기 복수의 디코딩된 서브대역 벡터들 중에서 인접한 디코딩된 서브대역 벡터들 사이에 피팅하는 단계를 포함하는, 디코딩된 오디오 프레임의 구성 방법.

  20. 오디오 신호 프로세싱을 위한 장치로서,
    주파수 도메인에서, 기준 오디오 신호 내의 복수의 피크들을 로케이팅하는 수단;
    하모닉 모델의 기본 주파수에 대한 후보들의 개수 Nf 를 선택하는 수단으로서, 각각은 상기 주파수 도메인에서의 상기 복수의 피크들 중 대응하는 피크의 로케이션에 기초하는, 상기 개수 Nf 를 선택하는 수단;
    상기 주파수 도메인에서의 상기 복수의 피크들 중 적어도 2 개의 피크들의 로케이션들에 기초하여, 상기 하모닉 모델의 하모닉들 사이의 스페이싱에 대한 후보들의 개수 Nd 를 계산하는 수단;
    상기 기본 주파수와 하모닉 스페이싱의 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하는 수단으로서, 상기 세트 내의 각각의 서브대역의 상기 주파수 도메인에서의 로케이션은 후보들의 쌍에 기초하는, 상기 일 세트의 적어도 하나의 서브대역을 선택하는 수단;
    상기 후보들의 복수의 상이한 쌍들 각각에 대해, 상기 타겟 오디오 신호의 대응하는 세트의 적어도 하나의 서브대역으로부터 에너지 값을 계산하는 수단; 및
    적어도 복수의 계산된 상기 에너지 값들에 기초하여, 상기 후보들의 복수의 상이한 쌍들 중에서 후보들의 쌍을 선택하는 수단을 포함하며,
    상기 개수 Nf 및 상기 개수 Nd 중에서 적어도 하나의 개수는 1 보다 큰 값을 갖는, 오디오 신호 프로세싱을 위한 장치.

  21. 제 20 항에 있어서,
    상기 타겟 오디오 신호는 상기 기준 오디오 신호인, 오디오 신호 프로세싱을 위한 장치.

  22. 제 20 항에 있어서,
    상기 기준 오디오 신호는 오디오 신호의 제 1 주파수 범위를 표현하며,
    상기 타겟 오디오 신호는 상기 제 1 주파수 범위와는 다른 상기 오디오 신호의 제 2 주파수 범위를 표현하는, 오디오 신호 프로세싱을 위한 장치.

  23. 제 22 항에 있어서,
    상기 오디오 신호 프로세싱을 위한 장치는, 기본 주파수 후보들의 상기 개수 Nf 를 상기 제 2 주파수 범위에 맵핑시키는 수단을 포함하는, 오디오 신호 프로세싱을 위한 장치.

  24. 제 20 항에 있어서,
    상기 오디오 신호 프로세싱을 위한 장치는, 선택된 상기 후보들의 쌍에 의해 나타내진 상기 세트의 적어도 하나의 서브대역에 대해 이득 형상 벡터 양자화 연산을 수행하는 수단을 포함하는, 오디오 신호 프로세싱을 위한 장치.

  25. 제 20 항에 있어서,
    상기 일 세트의 적어도 하나의 서브대역을 선택하는 수단은, 상기 후보들의 복수의 상이한 쌍들 각각에 대해, 일 세트의 서브대역들을 선택하도록 구성되며,
    상기 대응하는 세트의 서브대역들로부터 에너지 값을 계산하는 수단은, 서브대역당 평균 에너지를 계산하는 수단을 포함하는, 오디오 신호 프로세싱을 위한 장치.

  26. 제 20 항에 있어서,
    상기 대응하는 세트의 서브대역들로부터 에너지 값을 계산하는 수단은, 상기 세트의 적어도 하나의 서브대역에 의해 캡처된 총 에너지를 계산하는 수단을 포함하는, 오디오 신호 프로세싱을 위한 장치.

  27. 제 20 항에 있어서,
    상기 타겟 오디오 신호는 선형 예측 코딩 잔여물 (linear prediction coding residual) 에 기초하는, 오디오 신호 프로세싱을 위한 장치.

  28. 제 20 항에 있어서,
    상기 타겟 오디오 신호는 복수의 변형 이산 코사인 변환 계수들인, 오디오 신호 프로세싱을 위한 장치.

  29. 제 20 항에 있어서,
    상기 일 세트의 적어도 하나의 서브대역을 선택하는 수단은, 상기 세트의 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 상기 서브대역에 대한 로케이션을, 상기 서브대역에 의해 캡처된 에너지가 최대인 기준 로케이션의 특정 범위 내에서 발견하는 수단을 포함하며,
    상기 기준 로케이션은 후보 쌍에 기초하는, 오디오 신호 프로세싱을 위한 장치.

  30. 제 20 항에 있어서,
    상기 일 세트의 적어도 하나의 서브대역을 선택하는 수단은, 상기 세트의 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 상기 서브대역에 대한 로케이션을, 상기 서브대역 내의 최대 값을 갖는 샘플이 상기 서브대역 내에 센터링되는 기준 로케이션의 특정 범위 내에서 발견하는 수단을 포함하며,
    상기 기준 로케이션은 후보 쌍에 기초하는, 오디오 신호 프로세싱을 위한 장치.

  31. 제 20 항에 있어서,
    상기 후보들의 복수의 상이한 쌍들 중 적어도 하나에 대해, 상기 일 세트의 적어도 하나의 서브대역을 선택하는 수단은 :
    상기 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 그리고 후보 쌍에 기초하여, (A) 상기 서브대역이 로케이팅된 피크들 중 특정 로케이팅된 피크를 배제시키도록 한 상기 서브대역에 대한 제 1 로케이션으로서, 상기 제 1 로케이션은 주파수-도메인 축 상의 상기 특정 로케이팅된 피크의 한쪽에 있는, 상기 제 1 로케이션, 및 (B) 상기 서브대역이 상기 특정 로케이팅된 피크를 배제시키도록 한 상기 서브대역에 대한 제 2 로케이션으로서, 상기 제 2 로케이션은 상기 주파수-도메인 축 상의 상기 특정 로케이팅된 피크의 다른 쪽에 있는, 상기 제 2 로케이션을 계산하는 수단; 및
    상기 적어도 하나의 서브대역의 상기 적어도 하나의 각각에 대해, 상기 제 1 로케이션 및 상기 제 2 로케이션 중에서, 상기 서브대역이 가장 낮은 에너지를 갖는 로케이션을 식별하는 수단을 포함하는, 오디오 신호 프로세싱을 위한 장치.

  32. 제 20 항에 있어서,
    상기 오디오 신호 프로세싱을 위한 장치는, 선택된 상기 후보들의 쌍의 값들 및 대응하는 선택된 세트의 적어도 하나의 서브대역의 각각의 서브대역의 컨텐트들을 나타내는 인코딩된 신호를 생성하는 수단을 포함하는, 오디오 신호 프로세싱을 위한 장치.

  33. 제 20 항에 있어서,
    상기 일 세트의 적어도 하나의 서브대역을 선택하는 수단은, 상기 후보들의 복수의 상이한 쌍들 각각에 대해, 일 세트의 서브대역들을 선택하도록 구성되며,
    상기 오디오 신호 프로세싱을 위한 장치는 :
    선택된 상기 후보들의 쌍에 대응하는 선택된 상기 세트의 서브대역들을 양자화하는 수단;
    양자화된 상기 세트의 서브대역들을 역양자화하여 역양자화된 세트의 서브대역들을 획득하는 수단; 및
    역양자화된 상기 서브대역들을 선택된 상기 후보들의 쌍에 기초하는 대응하는 로케이션들에 배치함으로써 디코딩된 신호를 구성하는 수단을 포함하며,
    상기 디코딩된 신호 내의 역양자화된 상기 서브대역들의 로케이션들은, 상기 타겟 오디오 신호 내의, 선택된 상기 후보들의 쌍에 대응하는 선택된 상기 세트의 대응하는 서브대역들의 로케이션들과 다른, 오디오 신호 프로세싱을 위한 장치.

  34. 오디오 신호 프로세싱을 위한 장치로서,
    주파수 도메인에서, 기준 오디오 신호 내의 복수의 피크들을 로케이팅하도록 구성된 주파수-도메인 피크 로케이터;
    하모닉 모델의 기본 주파수에 대한 후보들의 개수 Nf 를 선택하도록 구성된 기본 주파수 후보 선택기로서, 각각은 상기 주파수 도메인에서의 상기 복수의 피크들 중 대응하는 피크의 로케이션에 기초하는, 상기 기본 주파수 후보 선택기;
    상기 주파수 도메인에서의 상기 복수의 피크들 중 적어도 2 개의 피크들의 로케이션들에 기초하여, 상기 하모닉 모델의 하모닉들 사이의 스페이싱에 대한 후보들의 개수 Nd 를 계산하도록 구성된 거리 계산기;
    상기 기본 주파수와 하모닉 스페이싱의 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하도록 구성된 서브대역 배치 선택기로서, 상기 세트 내의 각각의 서브대역의 상기 주파수 도메인에서의 로케이션은 후보들의 쌍에 기초하는, 상기 서브대역 배치 선택기;
    상기 후보들의 복수의 상이한 쌍들 각각에 대해, 상기 타겟 오디오 신호의 대응하는 세트의 적어도 하나의 서브대역으로부터 에너지 값을 계산하도록 구성된 에너지 계산기; 및
    적어도 복수의 계산된 상기 에너지 값들에 기초하여, 상기 후보들의 복수의 상이한 쌍들 중에서 후보들의 쌍을 선택하도록 구성된 후보 쌍 선택기를 포함하며,
    상기 개수 Nf 및 상기 개수 Nd 중에서 적어도 하나의 개수는 1 보다 큰 값을 갖는, 오디오 신호 프로세싱을 위한 장치.

  35. 제 34 항에 있어서,
    상기 타겟 오디오 신호는 상기 기준 오디오 신호인, 오디오 신호 프로세싱을 위한 장치.

  36. 제 34 항에 있어서,
    상기 기준 오디오 신호는 오디오 신호의 제 1 주파수 범위를 표현하며,
    상기 타겟 오디오 신호는 상기 제 1 주파수 범위와는 다른 상기 오디오 신호의 제 2 주파수 범위를 표현하는, 오디오 신호 프로세싱을 위한 장치.

  37. 제 36 항에 있어서,
    상기 서브대역 배치 선택기는 기본 주파수 후보들의 상기 개수 Nf 를 상기 제 2 주파수 범위에 맵핑시키도록 구성되는, 오디오 신호 프로세싱을 위한 장치.

  38. 제 34 항에 있어서,
    상기 오디오 신호 프로세싱을 위한 장치는, 선택된 상기 후보들의 쌍에 의해 나타내진 상기 세트의 적어도 하나의 서브대역에 대해 이득 형상 벡터 양자화 연산을 수행하도록 구성된 양자화기를 포함하는, 오디오 신호 프로세싱을 위한 장치.

  39. 제 34 항에 있어서,
    상기 서브대역 배치 선택기는, 상기 후보들의 복수의 상이한 쌍들 각각에 대해, 일 세트의 서브대역을 선택하도록 구성되며,
    상기 에너지 계산기는, 상기 후보들의 복수의 상이한 쌍들 각각에 대해, 서브대역당 평균 에너지를 계산하도록 구성되는, 오디오 신호 프로세싱을 위한 장치.

  40. 제 34 항에 있어서,
    상기 에너지 계산기는, 상기 후보들의 복수의 상이한 쌍들 각각에 대해, 상기 세트의 적어도 하나의 서브대역에 의해 캡처된 총 에너지를 계산하도록 구성되는, 오디오 신호 프로세싱을 위한 장치.

  41. 제 34 항에 있어서,
    상기 타겟 오디오 신호는 선형 예측 코딩 잔여물 (linear prediction coding residual) 에 기초하는, 오디오 신호 프로세싱을 위한 장치.

  42. 제 34 항에 있어서,
    상기 타겟 오디오 신호는 복수의 변형 이산 코사인 변환 계수들인, 오디오 신호 프로세싱을 위한 장치.

  43. 제 34 항에 있어서,
    상기 서브대역 배치 선택기는, 상기 세트의 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 상기 서브대역에 대한 로케이션을, 상기 서브대역에 의해 캡처된 에너지가 최대인 기준 로케이션의 특정 범위 내에서 발견하도록 구성되며,
    상기 기준 로케이션은 후보 쌍에 기초하는, 오디오 신호 프로세싱을 위한 장치.

  44. 제 34 항에 있어서,
    상기 서브대역 배치 선택기는, 상기 세트의 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 상기 서브대역에 대한 로케이션을, 상기 서브대역 내의 최대 값을 갖는 샘플이 상기 서브대역 내에 센터링되는 기준 로케이션의 특정 범위 내에서 발견하도록 구성되며,
    상기 기준 로케이션은 후보 쌍에 기초하는, 오디오 신호 프로세싱을 위한 장치.

  45. 제 34 항에 있어서,
    상기 후보들의 복수의 상이한 쌍들 중 적어도 하나에 대해, 상기 서브대역 배치 선택기는 :
    상기 적어도 하나의 서브대역의 적어도 하나의 각각에 대해, 그리고 후보 쌍에 기초하여, (A) 상기 서브대역이 로케이팅된 피크들 중 특정 로케이팅된 피크를 배제시키도록 한 상기 서브대역에 대한 제 1 로케이션으로서, 상기 제 1 로케이션은 주파수-도메인 축 상의 상기 특정 로케이팅된 피크의 한쪽에 있는, 상기 제 1 로케이션, 및 (B) 상기 서브대역이 상기 특정 로케이팅된 피크를 배제시키도록 한 상기 서브대역에 대한 제 2 로케이션으로서, 상기 제 2 로케이션은 상기 주파수-도메인 축 상의 상기 특정 로케이팅된 피크의 다른 쪽에 있는, 상기 제 2 로케이션을 계산하고; 상기 적어도 하나의 서브대역의 상기 적어도 하나의 각각에 대해, 상기 제 1 로케이션 및 상기 제 2 로케이션 중에서, 상기 서브대역이 가장 낮은 에너지를 갖는 로케이션을 식별하도록 구성되는, 오디오 신호 프로세싱을 위한 장치.

  46. 제 34 항에 있어서,
    상기 오디오 신호 프로세싱을 위한 장치는, 선택된 상기 후보들의 쌍의 값들 및 대응하는 선택된 세트의 적어도 하나의 서브대역의 각각의 서브대역의 컨텐트들을 나타내는 인코딩된 신호를 생성하도록 구성된 비트 팩커를 포함하는, 오디오 신호 프로세싱을 위한 장치.

  47. 제 34 항에 있어서,
    상기 서브대역 배치 선택기는, 상기 후보들의 복수의 상이한 쌍들 각각에 대해, 일 세트의 서브대역을 선택하도록 구성되며,
    상기 오디오 신호 프로세싱을 위한 장치는 :
    선택된 상기 후보들의 쌍에 대응하는 선택된 상기 세트의 서브대역들을 양자화하도록 구성된 양자화기;
    양자화된 상기 세트의 서브대역들을 역양자화하여 역양자화된 세트의 서브대역들을 획득하도록 구성된 역양자화기; 및
    역양자화된 상기 서브대역들을 선택된 상기 후보들의 쌍에 기초하는 대응하는 로케이션들에 배치함으로써 디코딩된 신호를 구성하도록 구성된 서브대역 배치 로직을 포함하며,
    상기 디코딩된 신호 내의 역양자화된 상기 서브대역들의 로케이션들은, 상기 타겟 오디오 신호 내의, 선택된 상기 후보들의 쌍에 대응하는 선택된 상기 세트의 대응하는 서브대역들의 로케이션들과는 다른, 오디오 신호 프로세싱을 위한 장치.

  48. 유형의 피처들을 갖는 비일시적 컴퓨터 판독가능 저장 매체로서,
    상기 유형의 피처들은, 머신에 의해 판독될 때, 상기 머신으로 하여금 :
    주파수 도메인에서, 기준 오디오 신호 내의 복수의 피크들을 로케이팅하도록 하고;
    하모닉 모델의 기본 주파수에 대한 후보들의 개수 Nf 를 선택하도록 하는 것으로서, 각각은 상기 주파수 도메인에서의 상기 복수의 피크들 중 대응하는 피크의 로케이션에 기초하는, 상기 개수 Nf 를 선택하도록 하고;
    상기 주파수 도메인에서의 상기 복수의 피크들 중 적어도 2 개의 피크들의 로케이션들에 기초하여, 상기 하모닉 모델의 하모닉들 사이의 스페이싱에 대한 후보들의 개수 Nd 를 계산하도록 하고;
    상기 기본 주파수와 하모닉 스페이싱의 후보들의 복수의 상이한 쌍들 각각에 대해, 타겟 오디오 신호의 일 세트의 적어도 하나의 서브대역을 선택하도록 하는 것으로서, 상기 세트 내의 각각의 서브대역의 상기 주파수 도메인에서의 로케이션은 후보들의 쌍에 기초하는, 상기 일 세트의 적어도 하나의 서브대역을 선택하도록 하고;
    상기 후보들의 복수의 상이한 쌍들 각각에 대해, 상기 타겟 오디오 신호의 대응하는 세트의 적어도 하나의 서브대역으로부터 에너지 값을 계산하도록 하며;
    적어도 복수의 계산된 상기 에너지 값들에 기초하여, 상기 후보들의 복수의 상이한 쌍들 중에서 후보들의 쌍을 선택하도록 하며,
    상기 개수 Nf 및 상기 개수 Nd 중에서 적어도 하나의 개수는 1 보다 큰 값을 갖는, 비일시적 컴퓨터 판독가능 저장 매체.

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

Applications Claiming Priority (15)

Application NumberPriority DateFiling DateTitle
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/192,956 US8924222B2 (en) 2010-07-30 2011-07-28 Systems, methods, apparatus, and computer-readable media for coding of harmonic signals
US13/192,956 2011-07-28
PCT/US2011/045837 WO2012016110A2 (en) 2010-07-30 2011-07-29 Systems, methods, apparatus, and computer-readable media for coding of harmonic signals

Publications (2)

Publication NumberPublication Date
KR20130036364A true KR20130036364A (ko) 2013-04-11
KR101445510B1 KR101445510B1 (ko) 2014-09-26

Family

ID=45527629

Family Applications (4)

Application NumberTitlePriority DateFiling Date
KR1020137005405A KR20130069756A (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 하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들
KR1020137005152A KR101445509B1 (ko) 2010-07-30 2011-07-29 동적 비트 할당을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체

Family Applications Before (2)

Application NumberTitlePriority DateFiling Date
KR1020137005405A KR20130069756A (ko) 2010-07-30 2011-07-29 오디오 신호들의 종속-모드 코딩을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
KR1020137005131A KR101442997B1 (ko) 2010-07-30 2011-07-29 멀티-스테이지 형상 벡터 양자화를 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체

Family Applications After (1)

Application NumberTitlePriority DateFiling Date
KR1020137005152A KR101445509B1 (ko) 2010-07-30 2011-07-29 동적 비트 할당을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체

Country Status (10)

CountryLink
US (4) US20120029926A1 (ko)
EP (5) EP2599081B1 (ko)
JP (4) JP5587501B2 (ko)
KR (4) KR20130069756A (ko)
CN (4) CN103038820A (ko)
BR (1) BR112013002166B1 (ko)
ES (1) ES2611664T3 (ko)
HU (1) HUE032264T2 (ko)
TW (1) TW201214416A (ko)
WO (4) WO2012016122A2 (ko)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
AT490454T (de) * 2005-07-22 2010-12-15 France Telecom Verfahren zum umschalten der raten- und bandbreitenskalierbaren audiodecodierungsrate
CA2803272A1 (en) * 2010-07-05 2012-01-12 Nippon Telegraph And Telephone Corporation Encoding method, decoding method, device, program, and recording medium
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
ES2558508T3 (es) * 2011-01-25 2016-02-04 Nippon Telegraph And Telephone Corporation Método de codificación, codificador, método de determinación de la cantidad de una característica periódica, aparato de determinación de la cantidad de una característica periódica, programa y medio de grabación
WO2012122303A1 (en) 2011-03-07 2012-09-13 Xiph. Org 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
US9009036B2 (en) * 2011-03-07 2015-04-14 Xiph.org Foundation Methods and systems for bit allocation and partitioning in gain-shape vector quantization for audio coding
ES2914499T3 (es) * 2011-10-28 2022-06-13 Fraunhofer Ges Forschung Aparato de codificación y procedimiento de codificación
RU2505921C2 (ru) * 2012-02-02 2014-01-27 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ и устройство кодирования и декодирования аудиосигналов (варианты)
PL3220390T3 (pl) * 2012-03-29 2019-02-28 Telefonaktiebolaget Lm Ericsson (Publ) Kodowanie/dekodowanie transformatowe harmonicznych sygnałów audio
DE202013005408U1 (de) * 2012-06-25 2013-10-11 Lg Electronics Inc. Mikrophonbefestigungsanordnung eines mobilen Endgerätes
CN103516440B (zh) 2012-06-29 2015-07-08 华为技术有限公司 语音频信号处理方法和编码装置
JP6096896B2 (ja) * 2012-07-12 2017-03-15 ノキア テクノロジーズ オーユー ベクトル量子化
EP2685448B1 (en) * 2012-07-12 2018-09-05 Harman Becker Automotive Systems GmbH Engine sound synthesis
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
US9679576B2 (en) 2012-11-05 2017-06-13 Panasonic Intellectual Property Corporation Of America Speech audio encoding device, speech audio decoding device, speech audio encoding method, and speech audio decoding method
JP6535466B2 (ja) * 2012-12-13 2019-06-26 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 音声音響符号化装置、音声音響復号装置、音声音響符号化方法及び音声音響復号方法
US9577618B2 (en) 2012-12-20 2017-02-21 Advanced Micro Devices, Inc. Reducing power needed to send signals over wires
MX342822B (es) 2013-01-08 2016-10-13 Dolby Int Ab Prediccion basada en modelo en un banco de filtros de muestreo critico.
EP3451334B1 (en) * 2013-01-29 2020-04-01 FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. Noise filling concept
US9489959B2 (en) 2013-06-11 2016-11-08 Panasonic Intellectual Property Corporation Of America Device and method for bandwidth extension for audio signals
CN104282308B (zh) * 2013-07-04 2017-07-14 华为技术有限公司 频域包络的矢量量化方法和装置
EP2830061A1 (en) 2013-07-22 2015-01-28 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding and decoding an encoded audio signal using temporal noise/patch shaping
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 音響信号符号化装置、音響信号復号装置、端末装置、基地局装置、音響信号符号化方法及び復号方法
CA2927877C (en) * 2013-10-18 2017-06-13 Telefonaktiebolaget Lm Ericsson (Publ) Coding and decoding of spectral peak positions
CN105659320B (zh) 2013-10-21 2019-07-12 杜比国际公司 音频编码器和解码器
MX352106B (es) * 2013-11-12 2017-11-09 Ericsson Telefon Ab L M Codificación de vector de ganancia y forma dividida.
US20150149157A1 (en) * 2013-11-22 2015-05-28 Qualcomm Incorporated Frequency domain gain shape estimation
EP3518237B1 (en) 2014-03-14 2022-09-07 Telefonaktiebolaget LM 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
JP6717746B2 (ja) 2014-07-25 2020-07-01 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 音響信号符号化装置、音響信号復号装置、音響信号符号化方法および音響信号復号方法
US9672838B2 (en) 2014-08-15 2017-06-06 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US9620136B2 (en) 2014-08-15 2017-04-11 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
US9905240B2 (en) 2014-10-20 2018-02-27 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
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
KR20200055726A (ko) * 2017-09-20 2020-05-21 보이세지 코포레이션 씨이엘피 코덱에 있어서 비트-예산을 효율적으로 분배하는 방법 및 디바이스
CN108153189B (zh) * 2017-12-20 2020-07-10 中国航空工业集团公司洛阳电光设备研究所 一种民机显示控制器的电源控制电路及方法
US11367452B2 (en) 2018-03-02 2022-06-21 Intel Corporation Adaptive bitrate coding for spatial audio streaming
CN112154502A (zh) * 2018-04-05 2020-12-29 瑞典爱立信有限公司 支持生成舒适噪声
CN110704024B (zh) * 2019-09-28 2022-03-08 中昊芯英(杭州)科技有限公司 一种矩阵处理装置、方法及处理设备

Family Cites Families (115)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
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 (en) 1986-07-29 1988-02-13 Sharp Corp Gain/shape vector quantizer
US4899384A (en) 1986-08-25 1990-02-06 Ibm Corporation Table controlled dynamic bit allocation in a variable rate sub-band speech coder
JPH01205200A (en) 1988-02-12 1989-08-17 Nippon Telegr & Teleph Corp <Ntt> Sound encoding system
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 ソニー株式会社 ベクトル量子化方法、音声符号化方法及び装置
DE69712539T2 (de) 1996-11-07 2002-08-29 Matsushita Electric Ind Co Ltd Verfahren und Vorrichtung zur Erzeugung eines Vektorquantisierungs-Codebuchs
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
CN1231050A (zh) 1997-07-11 1999-10-06 皇家菲利浦电子有限公司 具有改进谐波语音编码器的发射机
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
EP1175670B2 (en) 1999-04-16 2007-09-19 Dolby Laboratories Licensing Corporation Using gain-adaptive quantization and non-uniform symbol lengths for 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 ソニー株式会社 信号符号化装置及び方法、並びに信号復号装置及び方法
CN1244904C (zh) 2001-05-08 2006-03-08 皇家菲利浦电子有限公司 声频信号编码方法和设备
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
BR0306434A (pt) * 2002-09-19 2004-10-26 Nec Corp Aparelho e método de decodificação de áudio
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
EP2752849B1 (en) 2004-11-05 2020-06-03 Panasonic Intellectual Property Management Co., Ltd. Encoder and encoding method
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
CN101297356B (zh) 2005-11-04 2011-11-09 诺基亚公司 用于音频压缩的方法和设备
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 カシオ計算機株式会社 音声符号化装置、音声符号化方法、及び、プログラム
EP2458588A3 (en) 2006-10-10 2012-07-04 Qualcomm Incorporated Method and apparatus for encoding and decoding audio signals
US20080097757A1 (en) * 2006-10-24 2008-04-24 Nokia Corporation Audio coding
KR100862662B1 (ko) 2006-11-28 2008-10-10 삼성전자주식회사 프레임 오류 은닉 방법 및 장치, 이를 이용한 오디오 신호복호화 방법 및 장치
WO2008072670A1 (ja) 2006-12-13 2008-06-19 Panasonic Corporation 符号化装置、復号装置、およびこれらの方法
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.
DE602007004943D1 (de) 2007-03-23 2010-04-08 Honda Res Inst Europe Gmbh Tonhöhenextraktion mit Hemmung der Harmonischen und Subharmonischen der Grundfrequenz
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
KR101505825B1 (ko) 2007-06-21 2015-03-25 코닌클리케 필립스 엔.브이. 벡터들을 인코딩하기 위한 방법
US7885819B2 (en) 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
ES2704286T3 (es) 2007-08-27 2019-03-15 Ericsson Telefon Ab L M Método y dispositivo para la descodificación espectral perceptual de una señal de audio, que incluyen el llenado de huecos espectrales
JP5264913B2 (ja) 2007-09-11 2013-08-14 ヴォイスエイジ・コーポレーション 話声およびオーディオの符号化における、代数符号帳の高速検索のための方法および装置
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
MY178597A (en) 2008-07-11 2020-10-16 Fraunhofer Ges Forschung Audio encoder, audio decoder, methods for encoding and decoding an audio signal, and a computer program
KR101360456B1 (ko) 2008-07-11 2014-02-07 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 시간 워프 활성 신호의 제공 및 이를 이용한 오디오 신호의 인코딩
US8300616B2 (en) 2008-08-26 2012-10-30 Futurewei Technologies, Inc. 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
EP2380172B1 (en) 2009-01-16 2013-07-24 Dolby International AB Cross product enhanced harmonic transposition
US8493244B2 (en) 2009-02-13 2013-07-23 Panasonic Corporation Vector quantization device, vector inverse-quantization device, and methods of same
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
ES2461183T3 (es) * 2010-03-10 2014-05-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V Decodificador de señales de audio, codificador de señales de audio, procedimiento para decodificar una señal de audio, método para codificar una señal de audio y programa de ordenador que utilizan una adaptación dependiente de la frecuencia de un contexto de codificación
WO2011141772A1 (en) * 2010-05-12 2011-11-17 Nokia Corporation 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
  • 2011
    • 2011-07-28 US US13/193,542 patent/US20120029926A1/en not_active Abandoned
    • 2011-07-28 US US13/192,956 patent/US8924222B2/en active Active
    • 2011-07-28 US US13/193,476 patent/US8831933B2/en active Active
    • 2011-07-28 US US13/193,529 patent/US9236063B2/en active Active
    • 2011-07-29 JP JP2013523223A patent/JP5587501B2/ja active Active
    • 2011-07-29 CN CN2011800371913A patent/CN103038820A/zh active Pending
    • 2011-07-29 ES ES11755462.6T patent/ES2611664T3/es active Active
    • 2011-07-29 EP EP11744159.2A patent/EP2599081B1/en active Active
    • 2011-07-29 EP EP15201425.4A patent/EP3021322B1/en active Active
    • 2011-07-29 TW TW100127114A patent/TW201214416A/zh unknown
    • 2011-07-29 WO PCT/US2011/045858 patent/WO2012016122A2/en active Application Filing
    • 2011-07-29 JP JP2013523225A patent/JP5694532B2/ja active Active
    • 2011-07-29 EP EP11745634.3A patent/EP2599082B1/en active Active
    • 2011-07-29 BR BR112013002166-7A patent/BR112013002166B1/pt active IP Right Grant
    • 2011-07-29 HU HUE11755462A patent/HUE032264T2/en unknown
    • 2011-07-29 WO PCT/US2011/045837 patent/WO2012016110A2/en active Application Filing
    • 2011-07-29 WO PCT/US2011/045862 patent/WO2012016126A2/en active Application Filing
    • 2011-07-29 CN CN201180037426.9A patent/CN103038821B/zh active Active
    • 2011-07-29 KR KR1020137005405A patent/KR20130069756A/ko active IP Right Grant
    • 2011-07-29 KR KR1020137005131A patent/KR101442997B1/ko active IP Right Grant
    • 2011-07-29 JP JP2013523227A patent/JP2013537647A/ja not_active Ceased
    • 2011-07-29 EP EP20216563.5A patent/EP3852104A1/en active Pending
    • 2011-07-29 KR KR1020137005161A patent/KR101445510B1/ko active IP Right Grant
    • 2011-07-29 CN CN201180037495.XA patent/CN103038822B/zh active Active
    • 2011-07-29 KR KR1020137005152A patent/KR101445509B1/ko active IP Right Grant
    • 2011-07-29 CN CN201180037521.9A patent/CN103052984B/zh active Active
    • 2011-07-29 EP EP11755462.6A patent/EP2599080B1/en active Active
    • 2011-07-29 JP JP2013523220A patent/JP5694531B2/ja active Active
    • 2011-07-29 WO PCT/US2011/045865 patent/WO2012016128A2/en active Application Filing

Also Published As

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

Similar Documents

PublicationPublication DateTitle
KR101445510B1 (ko) 2014-09-26 하모닉 신호들의 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 판독가능 매체들
KR101445512B1 (ko) 2014-09-26 잡음 주입을 위한 시스템, 방법, 장치, 및 컴퓨터 판독가능 매체
(ko)
CN104937662B (zh) 2018-11-06 用于线性预测译码中的自适应共振峰锐化的系统、方法、设备和计算机可读媒体
ES2653799T3 (es) 2018-02-08 Sistemas, procedimientos, aparatos y medios legibles por ordenador para la decodificación de señales armónicas
EP2599079A2 (en) 2013-06-05 Systems, methods, apparatus, and computer-readable media for dependent-mode coding of audio signals
DateCodeTitleDescription
2013-02-27 A201 Request for examination
2014-02-14 E902 Notification of reason for refusal
2014-07-15 E701 Decision to grant or registration of patent right
2014-09-22 GRNT Written decision to grant
2018-06-28 FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 5

2019-06-24 FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 6