KR101034453B1 - 비활성 프레임들의 광대역 인코딩 및 디코딩을 위한 시스템, 방법, 및 장치 - Google Patents

비활성 프레임들의 광대역 인코딩 및 디코딩을 위한 시스템, 방법, 및 장치 Download PDF

Info

Publication number
KR101034453B1
KR101034453B1 KR1020097004008A KR20097004008A KR101034453B1 KR 101034453 B1 KR101034453 B1 KR 101034453B1 KR 1020097004008 A KR1020097004008 A KR 1020097004008A KR 20097004008 A KR20097004008 A KR 20097004008A KR 101034453 B1 KR101034453 B1 KR 101034453B1
Authority
KR
South Korea
Prior art keywords
frame
encoded
description
frequency band
speech signal
Prior art date
Application number
KR1020097004008A
Other languages
English (en)
Other versions
KR20090035719A (ko
Inventor
비베크 라젠드란
아난타파드마나브한 에이 칸드하다이
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20090035719A publication Critical patent/KR20090035719A/ko
Application granted granted Critical
Publication of KR101034453B1 publication Critical patent/KR101034453B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques

Landscapes

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

Abstract

상이한 레이트로 비활성 프레임들을 인코딩하는 스피치 인코더 및 스피치 인코딩 방법이 개시된다. 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하는 인코딩된 스피치 신호를 프로세싱하기 위한 장치 및 방법이 개시되며, 여기서, 제 1 주파수 대역에 대한 디스크립션은 대응하는 인코딩된 프레임으로부터의 정보에 기초하고, 제 2 주파수 대역에 대한 디스크립션은 적어도 하나의 이전의 인코딩된 프레임으로부터의 정보에 기초한다. 또한, 디코딩된 프레임의 계산은, 적어도 하나의 이전의 인코딩된 프레임으로부터의 정보에 기초한 제 2 주파수 대역에 대한 시간 정보의 디스크립션에 기초할 수도 있다.
비활성 프레임, 광대역 인코딩, 디스크립션

Description

비활성 프레임들의 광대역 인코딩 및 디코딩을 위한 시스템, 방법, 및 장치{SYSTEMS, METHODS, AND APPARATUS FOR WIDEBAND ENCODING AND DECODING OF INACTIVE FRAMES}
관련 출원
본 특허 출원은, 발명의 명칭이 "UPPER BAND DTX SCHEME" 으로 2006년 7월 31일자로 출원된 미국 가 특허 출원 제 60/834,688 호를 우선권 주장한다.
기술분야
본 발명은 스피치 신호들의 프로세싱에 관한 것이다.
배경
디지털 기술에 의한 음성의 송신은, 특히, 장거리 전화통신, IP를 통한 음성 (또한, VoIP 로 지칭되며, 여기서, IP는 인터넷 프로토콜을 지칭함) 과 같은 패킷-스위칭 전화통신, 및 셀룰러 전화통신과 같은 디지털 무선 전화통신에서 광범위하게 확산되고 있다. 그러한 확산은, 복원된 스피치의 지각된 품질을 유지하면서, 송신 채널을 통해 음성 통신을 전달하는데 사용되는 정보의 양을 감소시키는데에 관심을 나타낸다.
사람의 스피치 생성의 모델에 관련된 파라미터들을 추출함으로써 스피치를 압축하도록 구성된 디바이스들은 "스피치 코더" 로서 지칭된다. 일반적으로, 스피치 코더는 인코더 및 디코더를 포함한다. 통상적으로, 인코더는 인커밍 스 피치 신호 (오디오 정보를 나타내는 디지털 신호) 를 "프레임" 으로 지칭되는 시간의 세그먼트들로 분할하고, 특정한 관련 파라미터들을 추출하기 위해 각각의 프레임을 분석하며, 인코딩된 프레임으로 그 파라미터들을 양자화한다. 인코딩된 프레임들은 송신 채널 (즉, 유선 또는 무선 네트워크 접속) 을 통해 디코더를 포함하는 수신기로 송신된다. 디코더는 인코딩된 프레임들을 수신 및 프로세싱하고, 그들을 역양자화하여 파라미터들을 생성하며, 그 역양자화된 파라미터들을 사용하여 스피치 프레임들을 재생한다.
통상적인 대화에서, 각각의 스피커는 시간의 약 60% 동안 사일런스 (silent) 이다. 일반적으로, 스피치 인코더들은, 사일런스 또는 배경 잡음 ("비활성 프레임") 만을 포함하는 스피치 신호의 프레임들로부터 스피치 ("활성 프레임) 를 포함하는 스피치 신호의 프레임들을 구별하도록 구성된다. 그러한 일 인코더는, 상이한 코딩 모드 및/또는 레이트를 사용하여 활성 및 비활성 프레임들을 인코딩하도록 구성될 수도 있다. 예를 들어, 통상적으로 스피치 인코더들은, 활성 프레임을 인코딩하는 것보다 비활성 프레임을 인코딩하는데 더 적은 비트들을 사용하도록 구성된다. 스피치 코더는, 품질의 지각된 손실이 거의 없이 더 낮은 평균 비트 레이트에서의 스피치 신호의 전달을 지원하기 위하여, 비활성 프레임들에 대해 더 낮은 비트 레이트를 사용할 수도 있다.
도 1은, 활성 프레임과 비활성 프레임 사이에서의 전이를 포함하는 스피치 신호의 영역을 인코딩한 결과를 도시한다. 도면의 각각의 바는 대응하는 프레임을 나타내고, 그 바의 높이는 그 프레임이 인코딩되는 비트 레이트를 나타내며, 수평축은 시간을 나타낸다. 이러한 경우, 활성 프레임들은 더 높은 비트 레이트 rH 로 인코딩되고, 비활성 프레임들은 더 낮은 비트 레이트 rL 로 인코딩된다.
비트 레이트 rH 의 예들은, 프레임 당 171비트, 프레임 당 80비트, 및 프레임 당 40비트를 포함하며, 비트 레이트 rL의 예들은 프레임 당 16비트를 포함한다. 셀룰러 전화통신 시스템 (특히, 버지니아 알링턴 소재의 전화통신 산업 협회에 의해 공표된 IS (Interim Standard)-95 또는 유사한 산업 표준에 따르는 시스템) 의 콘텍스트에서, 이들 4개의 비트 레이트들은, 각각, "풀 (full) 레이트", "하프 (half) 레이트", "쿼터 레이트", 및 "1/8 레이트" 로서 또한 지칭된다. 도 1에 도시된 결과의 일 특정 예에서, 레이트 rH 는 풀 레이트이고 레이트 rL 은 1/8 레이트이다.
종래에는, 공중 스위칭 전화 네트워크 (PSTN) 를 통한 음성 통신은 대역폭이 300 내지 3400 킬로헤르츠 (kHz) 의 주파수 범위에 제한되어 있다. 셀룰러 전화 및/또는 VoIP를 사용하는 네트워크와 같은 음성 통신을 위한 더 최근의 네트워크들은 동일한 대역폭 제한을 갖지 않을 수도 있으며, 그러한 네트워크들을 사용하는 장치가 광대역 주파수 범위를 포함한 음성 통신을 송신 및 수신하는 능력을 갖는 것이 바람직할 수도 있다. 예를 들어, 그러한 장치가, 최소 50Hz 및/또는 최대 7 또는 8kHz 의 범위에 걸쳐있는 오디오 주파수 범위를 지원하는 것이 바람직할 수도 있다. 또한, 그러한 장치가 고-품질 오디오 또는 오디오/비디오 화상회의와 같은 다른 애플리케이션들, 종래의 PSTN 제한 외부의 범위에서 오디오 스피치 콘텐츠를 가질 수도 있는 음악 및/또는 텔레비전과 같은 멀티미디어 서비스들의 전달 등을 지원하는 것이 바람직할 수도 있다.
스피치 코더에 의해 지원된 범위의 더 높은 주파수로의 확장은 명료도 (intelligibility) 를 개선시킬 수도 있다. 예를 들어, 's' 및 'f' 와 같은 마찰음 (fricative) 을 구별하는 스피치 신호의 정보는 고주파수에 많이 존재한다. 또한, 고대역 확장은 프레즌스 (presence) 와 같은 디코딩된 스피치 신호의 다른 품질을 개선시킬 수도 있다. 예를 들어, 심지어 음성 모음도 PSTN 주파수 범위보다 훨씬 높은 스펙트럼 에너지를 가질 수도 있다.
스피치 코더가 광대역 주파수 범위를 지원하는 것이 바람직할 수도 있지만, 또한, 송신 채널을 통해 음성 통신을 전달하는데 사용되는 정보의 양을 제한하는 것이 바람직하다. 스피치 코더는, 예를 들어, 디스크립션 (description) 이 스피치 신호의 모든 비활성 프레임들보다 적은 비활성 프레임 동안 송신되기 위해, 불연속 송신 (DTX) 을 수행하도록 구성될 수도 있다.
요약
일 구성에 따라 스피치 신호의 프레임들을 인코딩하는 방법은, 0-아닌 양의 정수인 p 비트의 길이를 갖고 그 스피치 신호의 제 1 프레임에 기초한 제 1 인코딩된 프레임을 생성하는 단계; p와는 상이한 0-아닌 양의 정수인 q 비트의 길이를 갖고 스피치 신호의 제 2 프레임에 기초한 제 2 인코딩된 프레임을 생성하는 단계; 및 q 보다 작은 0-아닌 양의 정수인 r 비트의 길이를 갖고 스피치 신호의 제 3 프레임에 기초한 제 3 인코딩된 프레임을 생성하는 단계를 포함한다. 이러한 방법에서, 제 2 프레임은 스피치 신호에서 제 1 프레임에 후속하는 비활성 프레임이 고, 제 3 프레임은 스피치 신호에서 제 2 프레임에 후속하는 비활성 프레임이며, 제 1 프레임과 제 3 프레임 사이의 스피치 신호의 모든 프레임들은 비활성이다.
또 다른 구성에 따라 스피치 신호의 프레임들을 인코딩하는 방법은, 0-아닌 양의 정수인 q 비트의 길이를 갖고 스피치 신호의 제 1 프레임에 기초한 제 1 인코딩된 프레임을 생성하는 단계를 포함한다. 또한, 이러한 방법은, q 보다 작은 0-아닌 양의 정수인 r 비트의 길이를 갖고 스피치 신호의 제 2 프레임에 기초한 제 2 인코딩된 프레임을 생성하는 단계를 포함한다. 이러한 방법에서, 제 1 및 제 2 프레임은 비활성 프레임이다. 이러한 방법에서, 제 1 인코딩된 프레임은, (A) 제 1 주파수 대역상에서, 제 1 프레임을 포함하는 스피치 신호의 일부의 스펙트럼 포락선의 디스크립션, 및 (B) 그 제 1 주파수 대역과는 상이한 제 2 주파수 대역상에서, 제 1 프레임을 포함하는 스피치 신호의 일부의 스펙트럼 포락선의 디스크립션을 포함하고, 제 2 인코딩된 프레임은, (A) 제 1 주파수 대역상에서, 제 2 프레임을 포함하는 스피치 신호의 일부의 스펙트럼 포락선의 디스크립션을 포함하지만, (B) 제 2 주파수 대역상에서 스펙트럼 포락선의 디스크립션을 포함하지 않는다. 또한, 그러한 동작들을 수행하는 수단은 명백히 고려되고 여기에 개시된다. 또한, 적어도 하나의 컴퓨터로 하여금 그러한 동작들을 수행하게 하는 코드를 포함한 컴퓨터-판독가능 매체를 포함하는 컴퓨터 프로그램 제품이 명백히 고려되고 여기에 개시된다. 또한, 그러한 동작들을 수행하도록 구성되는 스피치 활성도 검출기, 코딩 방식 선택기, 및 스피치 인코더를 포함하는 장치가 명백히 고려되고 여기에 개시된다.
또 다른 구성에 따라 스피치 신호의 프레임들을 인코딩하는 장치는, 스피치 신호의 제 1 프레임에 기초하여, 0-아닌 양의 정수인 p 비트의 길이를 갖는 제 1 인코딩된 프레임을 생성하는 수단; 스피치 신호의 제 2 프레임에 기초하여, p 와는 상이한 0-아닌 양의 정수인 q 비트의 길이를 갖는 제 2 인코딩된 프레임을 생성하는 수단; 및 스피치 신호의 제 3 프레임에 기초하여, q 보다 작은 0-아닌 양의 정수인 r 비트의 길이를 갖는 제 3 인코딩된 프레임을 생성하는 수단을 포함한다. 이러한 장치에서, 제 2 프레임은 스피치 신호에서 제 1 프레임에 후속하는 비활성 프레임이고, 제 3 프레임은 스피치 신호에서 제 2 프레임에 후속하는 비활성 프레임이며, 제 1 프레임과 제 3 프레임 사이의 스피치 신호의 모든 프레임들은 비활성이다.
또 다른 구성에 따른 컴퓨터 프로그램 제품은 컴퓨터-판독가능 매체를 포함한다. 그 매체는, 적어도 하나의 컴퓨터로 하여금, 0-아닌 양의 정수인 p 비트의 길이를 갖고 스피치 신호의 제 1 프레임에 기초한 제 1 인코딩된 프레임을 생성하게 하는 코드; 적어도 하나의 컴퓨터로 하여금, p 와는 상이한 0-아닌 양의 정수인 q 비트의 길이를 갖고 스피치 신호의 제 2 프레임에 기초한 제 2 인코딩된 프레임을 생성하게 하는 코드; 및 q 보다 작은 0-아닌 양의 정수인 r 비트의 길이를 갖고 스피치 신호의 제 3 프레임에 기초한 제 3 인코딩된 프레임을 생성하게 하는 코드를 포함한다. 이러한 제품에서, 제 2 프레임은 스피치 신호에서 제 1 프레임에 후속하는 비활성 프레임이고, 제 3 프레임은 스피치 신호에서 제 2 프레임에 후속하는 비활성 프레임이며, 제 1 프레임과 제 3 프레임 사이의 스피치 신호의 모든 프레임들은 비활성이다.
또 다른 구성에 따라 스피치 신호의 프레임들을 인코딩하는 장치는, 스피치 신호의 복수의 프레임들 각각에 대하여, 그 프레임이 활성 또는 비활성인지의 여부를 나타내도록 구성되는 스피치 활성도 검출기; 코딩 방식 선택기; 및 스피치 인코더를 포함한다. 코딩 방식 선택기는, (A) 스피치 신호의 제 1 프레임에 대한 스피치 활성도 검출기의 표시에 응답하여 제 1 코딩 방식을 선택하고, (B) 스피치 신호에서 제 1 프레임에 후속하는 연속한 일련의 비활성 프레임들 중 하나의 비활성 프레임인 제 2 프레임에 대해, 및 그 제 2 프레임이 비활성이라는 스피치 활성도 검출기의 표시에 응답하여 제 2 코딩 방식을 선택하며, 그리고, (C) 스피치 신호에서 제 2 프레임에 후속하고 스피치 신호에서 제 1 프레임에 후속하는 연속한 일련의 비활성 프레임들 중 또 다른 하나의 비활성 프레임인 제 3 프레임에 대해, 및 그 제 3 프레임이 비활성이라는 스피치 활성도 검출기의 표시에 응답하여 제 3 코딩 방식을 선택하도록 구성된다. 스피치 인코더는, (D) 제 1 코딩 방식에 따라, 0-아닌 양의 정수인 p 비트의 길이를 갖고 제 1 프레임에 기초한 제 1 인코딩된 프레임을 생성하고, (E) 제 2 코딩 방식에 따라, p 와는 상이한 0-아닌 양의 정수인 q 비트의 길이를 갖고 제 2 프레임에 기초한 제 2 인코딩된 프레임을 생성하며, 그리고, (F) 제 3 코딩 방식에 따라, q 보다 작은 0-아닌 양의 정수인 r 비트의 길이를 갖고 제 3 프레임에 기초한 제 3 인코딩된 프레임을 생성하도록 구성된다.
인코딩된 스피치 신호를 일 구성에 따라 프로세싱하는 방법은, 인코딩된 스 피치 신호의 제 1 인코딩된 프레임으로부터의 정보에 기초하여, (A) 제 1 주파수 대역 및 (B) 제 1 주파수 대역과는 상이한 제 2 주파수 대역상에서 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계를 포함한다. 또한, 이러한 방법은, 인코딩된 스피치 신호의 제 2 프레임으로부터의 정보에 기초하여, 제 1 주파수 대역상에서 스피치 신호의 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계를 포함한다. 또한, 이러한 방법은, 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 제 2 주파수 대역상에서 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계를 포함한다.
인코딩된 스피치 신호를 또 다른 구성에 따라 프로세싱하는 장치는, 인코딩된 스피치 신호의 제 1 인코딩된 프레임으로부터의 정보에 기초하여, (A) 제 1 주파수 대역 및 (B) 제 1 주파수 대역과는 상이한 제 2 주파수 대역상에서 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단을 포함한다. 또한, 이러한 장치는, 인코딩된 스피치 신호의 제 2 인코딩된 프레임으로부터의 정보에 기초하여, 제 1 주파수 대역상에서 스피치 신호의 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단을 포함한다. 또한, 이러한 장치는, 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 제 2 주파수 대역상에서 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단을 포함한다.
또 다른 구성에 따른 컴퓨터 프로그램 제품은 컴퓨터-판독가능 매체를 포함한다. 그 매체는 적어도 하나의 컴퓨터로 하여금, 인코딩된 스피치 신호의 제 1 인코딩된 프레임으로부터의 정보에 기초하여, (A) 제 1 주파수 대역 및 (B) 제 1 주파수 대역과는 상이한 제 2 주파수 대역상에서 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드를 포함한다. 또한, 이러한 매체는 적어도 하나의 컴퓨터로 하여금, 인코딩된 스피치 신호의 제 2 인코딩된 프레임으로부터의 정보에 기초하여, 제 1 주파수 대역상에서 스피치 신호의 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드를 포함한다. 또한, 이러한 매체는 적어도 하나의 컴퓨터로 하여금, 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 제 2 주파수 대역상에서 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드를 포함한다.
인코딩된 스피치 신호를 또 다른 구성에 따라 프로세싱하는 장치는, 인코딩된 스피치 신호의 인코딩된 프레임들의 코딩 인덱스들에 기초한 값들의 시퀀스를 포함하는 제어 신호를 생성하도록 구성된 제어 로직을 포함하며, 그 시퀀스의 각각의 값은 인코딩된 스피치 신호의 인코딩된 프레임에 대응한다. 또한, 이러한 장치는 제 1 상태를 갖는 제어 신호의 값에 응답하여 제 1 및 제 2 주파수 대역상에서 스펙트럼 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하도록 구성된 스피치 디코더를 포함하며, 그 디스크립션은 대응하는 인코딩된 프레임으로부터의 정보에 기초한다. 또한, 스피치 디코더는 제 1 상태와는 상이한 제 2 상태를 갖는 제어 신호의 값에 응답하여, (1) 대응하는 인코딩된 프레임으로부터의 정보에 기초한, 제 1 주파수 대역상의 스펙트럼 포락선의 디스크립션, 및 (2) 그 대응하는 인코딩된 프레임 이전에 인코딩된 스피치 신호에서 발생하는 적어도 하나의 인코딩된 프레임으로부터의 정보에 기초한, 제 2 주파수 대역상의 스펙트럼 포 락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하도록 구성된다.
도면의 간단한 설명
도 1은 활성 프레임들과 비활성 프레임들 사이의 전이들을 포함하는 스피치 신호의 영역을 인코딩한 결과를 도시한다.
도 2는 스피치 인코더 또는 스피치 인코딩의 방법이 비트 레이트를 선택하는데 사용할 수도 있는 판정 트리의 일 예를 도시한다.
도 3은 4개의 프레임들의 행오버 (hangover) 를 포함하는 스피치 신호의 영역을 인코딩한 결과를 도시한다.
도 4a는 이득 쉐이프 값 (gain shape value) 을 계산하는데 사용될 수도 있는 사다리꼴 윈도우잉 함수의 도면을 도시한다.
도 4b는 프레임의 5개의 서브프레임들 각각에 대한 도 4a의 윈도우잉 함수의 적용을 도시한다.
도 5a는 광대역 스피치 콘텐츠를 인코딩하기 위하여 스플릿트-대역 인코더에 의해 사용될 수도 있는 비중첩 주파수 대역 방식의 일 예를 도시한다.
도 5b는 광대역 스피치 콘텐츠를 인코딩하기 위하여 스플릿트-대역 인코더에 의해 사용될 수도 있는 중첩 주파수 대역 방식의 일 예를 도시한다.
도 6a, 6b, 7a, 7b, 8a 및 8b는 수 개의 상이한 접근법들을 사용하여 스피치 신호에서 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과들을 도시한다.
도 9는 일반적인 구성에 따른 방법 M100 을 사용하여 스피치 신호의 3개의 연속하는 프레임들을 인코딩하는 동작을 도시한다.
도 10a, 10b, 11a, 11b, 12a 및 12b는 방법 M100 의 상이한 구현들을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과들을 도시한다.
도 13a는 방법 M100 의 또 다른 구현에 따라 프레임들의 시퀀스를 인코딩한 결과를 도시한다.
도 13b는 방법 M100 의 또 다른 구현을 사용하여 일련의 비활성 프레임들을 인코딩한 결과를 도시한다.
도 14는 방법 M100 의 일 구현 M110 의 애플리케이션을 도시한다.
도 15는 방법 M110 의 일 구현 M120 의 애플리케이션을 도시한다.
도 16은 방법 M120 의 일 구현 M130 의 애플리케이션을 도시한다.
도 17a는 방법 M130 의 일 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다.
도 17b는 방법 M130 의 또 다른 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다.
도 18a는, 스피치 인코더가 도 17b에 도시된 바와 같은 결과를 생성하는데 사용할 수도 있는 3개의 상이한 코딩 방식들의 일 세트를 도시한 테이블이다.
도 18b는 일반적인 구성에 따른 방법 M300 을 사용하여 스피치 신호의 2개의 연속하는 프레임들을 인코딩하는 동작을 도시한다.
도 18c는 방법 M300 의 일 구현 M310 의 애플리케이션을 도시한다.
도 19a는 일반적인 구성에 따른 장치 (100) 의 블록도를 도시한다.
도 19b는 스피치 인코더 (130) 의 일 구현 (132) 의 블록도를 도시한다.
도 19c는 스펙트럼 포락선 디스크립션 계산기 (140) 의 일 구현 (142) 의 블록도를 도시한다.
도 20a는 코딩 방식 선택기 (120) 의 일 구현에 의해 수행될 수도 있는 테스트들의 흐름도를 도시한다.
도 20b는 코딩 방식 선택기 (120) 의 또 다른 구현이 동작하도록 구성될 수도 있는 상태도를 도시한다.
도 21a, 21b, 및 21c는 코딩 방식 선택기 (120) 의 또 다른 구현이 동작하도록 구성될 수도 있는 상태도들을 도시한다.
도 22a는 스피치 인코더 (132) 의 일 구현 (134) 의 블록도를 도시한다.
도 22b는 시간 정보 디스크립션 계산기 (152) 의 일 구현 (154) 의 블록도를 도시한다.
도 23a는 스플릿트-대역 코딩 방식에 따라 광대역 스피치 신호를 인코딩하도록 구성되는 장치 (100) 의 일 구현 (102) 의 블록도를 도시한다.
도 23b는 스피치 인코더 (136) 의 일 구현 (138) 의 블록도를 도시한다.
도 24a는 광대역 스피치 인코더 (136) 의 일 구현 (139) 의 블록도를 도시한다.
도 24b는 시간 디스크립션 계산기 (156) 의 일 구현 (158) 의 블록도를 도시한다.
도 25a는 인코딩된 스피치 신호를 일반적인 구성에 따라 프로세싱하는 방법 M200 의 흐름도를 도시한다.
도 25b는 방법 M200 의 일 구현 M210 의 흐름도를 도시한다.
도 25c는 방법 M210 의 일 구현 M220 의 흐름도를 도시한다.
도 26은 방법 M200 의 애플리케이션을 도시한다.
도 27a는 방법 M100 과 방법 M200 사이의 관계를 도시한다.
도 27b는 방법 M300 과 방법 M200 사이의 관계를 도시한다.
도 28은 방법 M210 의 애플리케이션을 도시한다.
도 29는 방법 M220 의 애플리케이션을 도시한다.
도 30a는 태스크 T230 의 일 구현을 반복한 결과를 도시한다.
도 30b는 태스크 T230 의 또 다른 구현을 반복한 결과를 도시한다.
도 30c는 태스크 T230 의 또 다른 구현을 반복한 결과를 도시한다.
도 31은 방법 M200 의 일 구현을 수행하도록 구성된 스피치 디코더에 대한 상태도의 일부를 도시한다.
도 32a는 인코딩된 스피치 신호를 일반적인 구성에 따라 프로세싱하는 장치 (200) 의 블록도를 도시한다.
도 32b는 장치 (200) 의 일 구현 (202) 의 블록도를 도시한다.
도 32c는 장치 (200) 의 일 구현 (204) 의 블록도를 도시한다.
도 33a는 제 1 모듈 (230) 의 일 구현 (232) 의 블록도를 도시한다.
도 33b는 스펙트럼 포락선 디스크립션 디코더 (270) 의 일 구현 (272) 의 블록도를 도시한다.
도 34a는 제 2 모듈 (240) 의 일 구현 (242) 의 블록도를 도시한다.
도 34b는 제 2 모듈 (240) 의 일 구현 (244) 의 블록도를 도시한다.
도 34c는 제 2 모듈 (242) 의 일 구현 (246) 의 블록도를 도시한다.
도 35a는 제어 로직 (210) 의 일 구현이 동작하도록 구성될 수도 있는 상태도를 도시한다.
도 35b는 DTX와 방법 M100 을 결합한 일 예의 결과를 도시한다.
도면 및 첨부한 설명에서, 동일한 참조 라벨은 동일하거나 유사한 엘리먼트들 또는 신호들을 지칭한다.
상세한 설명
여기에 설명된 구성들은, 활성 프레임보다 비활성 프레임에 대해 더 낮은 비트 레이트의 사용을 지원하기 위해, 및/또는 전달된 스피치 신호의 지각적인 품질을 개선시키기 위해 광대역 스피치 코딩 시스템에 적용될 수도 있다. 그러한 구성들이, 패킷-스위칭 (예를 들어, VoIP 와 같은 프로토콜에 따라 음성 송신을 운반하도록 배열된 유선 및/또는 무선 네트워크) 및/또는 서킷-스위칭 네트워크에서의 사용을 위해 구성될 수도 있다는 것은 명백히 고려되고 그에 의해 개시된다.
그의 콘텍스트에 의해 명백히 제한되지 않는다면, "계산" 이라는 용어는, 컴퓨팅, 평가, 생성, 및/또는 값들의 세트로부터의 선택과 같은, 그의 본래의 의미들 중 임의의 의미를 나타내기 위해 여기에 사용된다. 그의 콘텍스트에 의해 명백히 제한되지 않는다면, "획득" 이라는 용어는, 계산, 유도, (예를 들어, 외부 디바이스로부터의) 수신, 및/또는 (예를 들어, 저장 엘리먼트들의 어레이로부터의) 검 색과 같은, 그 본래의 의미들 중 임의의 의미를 나타내기 위해 사용된다. "구비하는 (comprising)" 이라는 용어가 본 발명의 설명 및 청구항에서 사용되지만, 그것은 다른 엘리먼트들 또는 동작들을 배제하지는 않는다. "A는 B에 기초한다" 라는 어구는, (i) "A는 적어도 B에 기초한다" 및 (ii) (특정 콘텍스트에서 적절하다면) "A는 B와 동일하다" 의 경우들을 포함하는 그의 본래의 의미들 중 임의의 의미를 나타내기 위해 사용된다.
그렇지 않다고 나타내지 않는다면, 특정한 특성을 갖는 스피치 인코더의 임의의 개시물은 또한 유사한 특성을 갖는 스피치 인코딩 방법을 개시하기 위해 명백히 의도되며 (및 그 역도 가능), 특정한 구성에 따른 스피치 인코더의 임의의 개시물은 또한 유사한 일 구성에 따른 스피치 인코딩 방법을 개시하기 위해 명백히 의도된다 (및 그 역도 가능). 그렇지 않다고 나타내지 않는다면, 특정한 특성을 갖는 스피치 디코더의 임의의 개시물은 또한 유사한 특성을 갖는 스피치 디코딩 방법을 개시하기 위해 명백히 의도되며 (및 그 역도 가능), 특정한 구성에 따른 스피치 디코더의 임의의 개시물은 또한 유사한 일 구성에 따른 스피치 디코딩 방법을 개시하기 위해 명백히 의도된다 (및 그 역도 가능).
통상적으로, 스피치 신호의 프레임들은, 그 신호의 스펙트럼 포락선이 프레임에 걸쳐 비교적 정적으로 유지되도록 기대될 수도 있기에 충분히 짧다. 일 통상적인 프레임 길이는 20 밀리초이지만, 특정 애플리케이션에 적절하다고 고려된 임의의 프레임 길이가 사용될 수도 있다. 20 밀리초의 프레임 길이는 7 킬로헤르츠 (kHz) 의 샘플링 레이트에서는 140 샘플들, 8kHz의 샘플링 레이트에서는 160 샘플들, 및 16kHz의 샘플링 레이트에서는 320 샘플들에 대응하지만, 특정 애플리케이션에 적절하다고 고려된 임의의 샘플링 레이트가 사용될 수도 있다. 스피치 코딩에 대해 사용될 수도 있는 샘플링 레이트의 또 다른 예는 12.8kHz이며, 또 다른 예들은 12.8kHz로부터 38.4kHz 까지의 범위의 다른 레이트들을 포함한다.
통상적으로, 모든 프레임들은 동일한 길이를 가지며, 여기에 설명된 특정 예들에서 균일한 프레임 길이가 가정된다. 그러나, 균일하지 않은 프레임 길이들이 사용될 수도 있다는 것이 또한 명백히 고려되고, 그에 의해 개시된다. 예를 들어, 활성 및 비활성 프레임들 및/또는 음성 및 묵음 프레임들에 대해 상이한 프레임 길이를 이용하는 애플리케이션에서 방법 M100 및 방법 M200 의 구현들이 또한 사용될 수도 있다.
몇몇 애플리케이션에서는 프레임들이 중첩하지 않지만, 다른 애플리케이션에서는 중첩 프레임 방식이 사용된다. 예를 들어, 스피치 코더가 인코더에서는 중첩 프레임 방식을 사용하고 디코더에서는 비중첩 프레임 방식을 사용하는 것이 일반적이다. 또한, 인코더가 상이한 태스크에 대해 상이한 프레임 방식을 사용하는 것이 가능하다. 예를 들어, 스피치 인코더 또는 스피치 인코딩 방법은, 일 프레임의 스펙트럼 포락선의 디스크립션을 인코딩하기 위해 하나의 중첩 프레임 방식, 및 그 일 프레임의 시간 정보의 디스크립션을 인코딩하기 위해 다른 중첩 프레임 방식을 사용할 수도 있다.
상술된 바와 같이, 활성 프레임들 및 비활성 프레임들을 인코딩하기 위해 상이한 코딩 모드 및/또는 레이트를 사용하도록 스피치 인코더를 구성하는 것이 바람 직할 수도 있다. 비활성 프레임들로부터 활성 프레임들을 구별하기 위해, 통상적으로, 스피치 인코더는 스피치 활성도 검출기를 포함할 수도 있거나, 스피치 활성도를 검출하는 방법을 수행한다. 그러한 검출기 또는 방법은, 프레임 에너지, 신호-대-잡음비, 주기성, 및 제로-크로싱 (zero-crossing) 레이트와 같은 하나 이상의 인자들에 기초하여, 프레임을 활성 또는 비활성으로 분류하도록 구성될 수도 있다. 그러한 분류는 그러한 인자의 값 또는 크기를 임계값과 비교하는 것 및/또는 그러한 인자에서의 변화의 크기를 임계값과 비교하는 것을 포함할 수도 있다.
또한, 스피치 활성도 검출기 또는 스피치 활성도를 검출하는 방법은, 음성형 (예를 들어, 모음 소리를 나타냄), 묵음형 (예를 들어, 마찰음 소리를 나타냄), 또는 전이형 (예를 들어, 단어의 시작 또는 끝을 나타냄) 과 같은 2개 이상의 상이한 타입들 중 하나의 타입으로 활성 프레임을 분류하도록 구성될 수도 있다. 스피치 인코더가 활성 프레임들의 상이한 타입들을 인코딩하기 위해 상이한 비트 레이트들을 사용하는 것이 바람직할 수도 있다. 일련의 활성 프레임들 모두가 동일한 비트 레이트로 인코딩되었다는 것을 도 1의 특정한 예가 나타내지만, 여기에 설명된 방법 및 장치가 상이한 비트 레이트로 활성 프레임들을 인코딩하도록 구성된 스피치 인코더들 및 스피치 인코딩 방법에서 또한 사용될 수도 있다는 것을 당업자는 인식할 것이다.
도 2는, 프레임이 포함한 스피치의 타입에 따라 특정 프레임을 인코딩하는 비트 레이트를 선택하기 위해 스피치 인코더 또는 스피치 인코딩 방법이 사용할 수 도 있는 판정 트리의 일 예를 도시한다. 다른 경우, 특정 프레임에 대해 선택된 비트 레이트는, 원하는 평균 비트 레이트, (원하는 평균 비트 레이트를 지원하는데 사용될 수도 있는) 일련의 프레임들에 걸친 비트 레이트의 원하는 패턴, 및/또는 이전의 프레임에 대해 선택된 비트 레이트와 같은 기준에 또한 의존할 수도 있다.
상이한 타입의 스피치 프레임들을 인코딩하기 위해 상이한 코딩 모드들을 사용하는 것이 바람직할 수도 있다. 음성 스피치의 프레임들은 롱-텀 (long-term) 이고 (즉, 2 이상의 프레임 주기 동안 연속하고) 피치 (pitch) 에 관련된 주기적인 구조를 갖는 경향이 있으며, 통상적으로, 이러한 롱-텀 스펙트럼 특성의 디스크립션을 인코딩하는 코딩 모드를 사용하여 음성 프레임 (또는 음성 프레임들의 시퀀스) 를 인코딩하는 것이 더 효율적이다. 그러한 코딩 모드들의 예는 코드-여기 선형 예측 (CELP) 및 프로토타입 피치 주기 (PPP) 를 포함한다. 한편, 묵음 프레임들 및 비활성 프레임들은 일반적으로 임의의 현저한 롱-텀 스펙트럼 특성이 부족하며, 스피치 인코더는 그러한 특성을 디스크립션하길 시도하지 않는 코딩 모드를 사용하여 이들 프레임들을 인코딩하도록 구성될 수도 있다. 잡음-여기 선형 예측 (NELP) 은 그러한 코딩 모드의 일 예이다.
스피치 인코더 또는 스피치 인코딩 방법은, 비트 레이트 및 코딩 모드 (또한 "코딩 방식" 으로 지칭됨) 의 상이한 조합들 중에서 선택하도록 구성될 수도 있다. 예를 들어, 방법 M100 의 일 구현을 수행하도록 구성된 스피치 인코더는, 음성 스피치를 포함하는 프레임들 및 전이 프레임들에 대해 풀-레이트 CELP 방식, 묵음 스피치를 포함하는 프레임들에 대해 하프-레이트 NELP 방식, 및 비활성 프레임들에 대해 1/8-레이트 NELP 방식을 사용할 수도 있다. 그러한 스피치 인코더의 다른 예들은, 풀-레이트 및 하프-레이트 CELP 방식 및/또는 풀-레이트 및 쿼터-레이트 PPP 방식과 같은 하나 이상의 코딩 방식들에 대해 다수의 코딩 레이트들을 지원한다.
통상적으로, 활성 스피치로부터 비활성 스피치로의 전이는 수 개의 프레임들의 주기에 걸쳐 발생한다. 결과로서, 활성 프레임들로부터 비활성 프레임들로의 전이 이후의 스피치 신호의 첫번째 수 개의 프레임들은, 나머지 음성 (voicing remnant) 과 같은 활성 스피치의 나머지들을 포함할 수도 있다. 스피치 인코더가 비활성 프레임들에 대해 의도된 코딩 방식을 사용하여 그러한 나머지들을 갖는 프레임을 인코딩하면, 인코딩된 결과는 본래의 프레임을 정확하게 나타내지 못할 수도 있다. 따라서, 활성 프레임들로부터 비활성 프레임들로의 전이에 후속하는 프레임들 중 하나 이상에 대해 더 높은 비트 레이트 및/또는 활성 코딩 모드를 계속하는 것이 바람직할 수도 있다.
도 3은, 더 높은 비트 레이트 rH 가 활성 프레임들로부터 비활성 프레임들로의 전이 이후에 수 개의 프레임 동안 계속되는 스피치 신호의 영역을 인코딩한 결과를 도시한다. 이러한 계속 (또한 "행오버" 로 지칭됨) 의 길이는 전이의 기대된 길이에 따라 선택될 수도 있으며, 고정 또는 가변일 수도 있다. 예를 들어, 행오버의 길이는, 전이에 선행하는 활성 프레임들 중 하나 이상의, 신호-대-잡음비와 같은 하나 이상의 특성에 기초할 수도 있다. 도 3은 4개의 프레임들의 행오버를 도시한다.
통상적으로, 인코딩된 프레임은 스피치 신호의 대응하는 프레임이 복원될 수도 있는 스피치 파라미터들의 세트를 포함한다. 통상적으로, 스피치 파라미터들의 이러한 세트는, 주파수 스펙트럼에 걸친 프레임내의 에너지 분포의 디스크립션과 같은 스펙트럼 정보를 포함한다. 또한, 그러한 에너지 분포는 프레임의 "스펙트럼 포락선" 또는 "주파수 포락선" 으로 지칭된다. 통상적으로, 스피치 인코더는 프레임의 스펙트럼 포락선의 디스크립션을 순서화된 시퀀스의 값들로서 계산하도록 구성된다. 몇몇 경우에서, 스피치 인코더는, 대응하는 주파수에서의 또는 대응하는 스펙트럼 영역에 걸친 신호의 진폭 또는 크기를 각각의 값이 나타내기 위해, 그 순서화된 시퀀스를 계산하도록 구성된다. 그러한 디스크립션의 일 예는 푸리에 변환 계수들의 순서화된 시퀀스이다.
다른 경우, 스피치 인코더는, 선형 예측 코딩 (LPC) 분석의 계수값들의 세트와 같은 코딩 모델의 파라미터 값들의 순서화된 시퀀스로서 스펙트럼 포락선의 디스크립션을 계산하도록 구성된다. 통상적으로, LPC 계수값들의 순서화된 시퀀스는 하나 이상의 벡터들로서 배열되며, 스피치 인코더는 필터 계수들 또는 반사 계수들로서 이들 값들을 계산하도록 구현될 수도 있다. 또한, 그 세트에서의 계수값들의 수는 LPC 분석의 "차수" 로 지칭되며, (셀룰러 전화기와 같은) 통신 디바이스의 스피치 인코더에 의해 수행되는 바와 같은 LPC 분석의 통상적인 차수의 예는 4, 6, 8, 10, 12, 16, 20, 24, 28, 및 32 를 포함한다.
통상적으로, 스피치 코더는, 송신 채널을 통해 스펙트럼 포락선의 디스크립 션을 양자화된 형태로 (예를 들어, 대응하는 룩업 테이블 또는 "코드북" 으로의 하나 이상의 인덱스들로서) 송신하도록 구성된다. 따라서, 스피치 인코더가, 라인 스펙트럼 쌍 (LSP), 라인 스펙트럼 주파수 (LSF), 이미던스 스펙트럼 쌍 (ISP), 이미던스 스펙트럼 주파수 (ISF), 켑스트럼 (cepstral) 계수, 또는 로그 영역비의 값들의 세트와 같은 LPC 계수값들의 세트를, 효율적으로 양자화될 수도 있는 형태로 계산하는 것이 바람직할 수도 있다. 또한, 스피치 인코더는, 변환 및/또는 양자화 이전에 값들의 순서화된 시퀀스에 대해 지각적인 가중과 같은 다른 동작들을 수행하도록 구성될 수도 있다.
몇몇의 경우, 프레임의 스펙트럼 포락선의 디스크립션은 프레임의 시간 정보의 디스크립션을 (예를 들어, 푸리에 변환 계수들의 순서화된 시퀀스로서) 또한 포함한다. 다른 경우, 인코딩된 프레임의 스피치 파라미터들의 세트는 프레임의 시간 정보의 디스크립션을 또한 포함할 수도 있다. 시간 정보의 디스크립션의 형태는 프레임을 인코딩하는데 사용되는 특정한 코딩 모드에 의존할 수도 있다. 몇몇 코딩 모드에 있어서 (예를 들어, CELP 코딩 모드에 있어서), 시간 정보의 디스크립션은, (예를 들어, 스펙트럼 포락선의 디스크립션에 의해 정의되는 바와 같은) LPC 모델을 여기시키기 위해 스피치 디코더에 의해 사용될 여기 신호의 디스크립션을 포함할 수도 있다. 통상적으로, 여기 신호의 디스크립션은 인코딩된 프레임에서 양자화된 형태로 (예를 들어, 대응하는 코드북으로의 하나 이상의 인덱스로서) 나타낸다. 또한, 시간 정보의 디스크립션은 여기 신호의 피치 컴포넌트에 관한 정보를 포함할 수도 있다. 예를 들어, PPP 코딩 모드에 있어서, 인코 딩된 시간 정보는 여기 신호의 피치 컴포넌트를 재생하기 위하여 스피치 디코더에 의해 사용될 프로토타입의 디스크립션을 포함할 수도 있다. 통상적으로, 피치 컴포넌트에 관한 정보의 디스크립션은 인코딩된 프레임에서 양자화된 형태로 (예를 들어, 대응하는 코드북으로의 하나 이상의 인덱스로서) 나타난다.
다른 코딩 모드에 있어서 (예를 들어, NELP 코딩 모드에 있어서), 시간 정보의 디스크립션은 (또한, 프레임의 "에너지 포락선" 또는 "이득 포락선" 으로 지칭되는) 프레임의 시간 포락선의 디스크립션을 포함할 수도 있다. 시간 포락선의 디스크립션은 프레임의 평균 에너지에 기초한 값을 포함할 수도 있다. 통상적으로, 그러한 값은 디코딩 동안 프레임에 적용될 이득값으로서 제공되며, 또한, "이득 프레임" 으로 지칭된다. 몇몇 경우, 이득 프레임은, (A) 본래의 프레임의 에너지 Eorig 와 (B) (예를 들어, 스펙트럼 포락선의 디스크립션을 포함하는) 인코딩된 프레임의 다른 파라미터들로부터 합성된 프레임의 에너지 Esynth 사이의 비율에 기초한 정규화 인자이다. 예를 들어, 이득 프레임은 Eorig/Esynth 또는 Eorig/Esynth 의 제곱근으로서 표현될 수도 있다. 예를 들어, 이득 프레임들 및 시간 포락선들의 다른 양태는, 2006년 12월 14일자로 공개된 미국 특허 출원 공개 공보 제 2006/0282262 호 (Vos 등) "SYSTEMS, METHODS, AND APPARATUS FOR GAIN FACTOR ATTENUATION" 에 상세히 설명되어 있다.
다른 방법으로 또는 부가적으로, 시간 포락선의 디스크립션은 프레임의 다수의 서브프레임들 각각에 대한 상대적인 에너지 값들을 포함할 수도 있다. 통상 적으로, 그러한 값들은 디코딩 동안 각각의 서브프레임들에 적용될 이득값들로서 제공되며, 총괄하여 "이득 프로파일" 또는 "이득 쉐이프" 으로 지칭된다. 몇몇 경우, 이득 쉐이프 값들은 정규화 인자들이며, 그 인자들 각각은, (A) 본래의 서브프레임 i 의 에너지 Eorig.i 와 (B) (예를 들어, 스펙트럼 포락선의 디스크립션을 포함하는) 인코딩된 프레임의 다른 파라미터들로부터 합성된 프레임의 대응하는 서브프레임 i 의 에너지 Esynth.i 사이의 비율에 기초한다. 그러한 경우, 에너지 Esynth.i 는 에너지 Eorig.i 를 정규화하는데 사용될 수도 있다. 예를 들어, 이득 쉐이프 값은 Eorig.i/Esynth.i 또는 Eorig.i/Esynth.i 의 제곱근으로서 표현될 수도 있다. 시간 포락선의 디스크립션의 일 예는 이득 프레임 및 이득 쉐이프를 포함하며, 여기서, 그 이득 쉐이프는 20-밀리초 프레임의 5개의 4-밀리초 서브프레임들 각각에 대한 값을 포함한다. 이득값들은 선형 스케일 또는 로그 (예를 들어, 데시벨) 스케일로 표현될 수도 있다. 예를 들어, 그러한 특성들은 상술된 미국 특허 출원 공개 공보 제 2006/0282262 호에 상세히 설명되어 있다.
이득 프레임의 값 (또는 이득 쉐이프의 값들) 을 계산할 경우, 인접 프레임들 (또는 서브프레임들) 을 중첩하는 윈도우잉 함수를 적용하는 것이 바람직할 수도 있다. 통상적으로, 이러한 방식으로 생성된 이득값들은, 프레임들과 서브프레임들 사이의 불연속을 감소 또는 회피하는데 도움을 줄 수도 있는 스피치 디코더에서 중첩-부가 방식으로 적용된다. 도 4a는 이득 쉐이프 값들 각각을 계산하는데 사용될 수도 있는 사다리꼴 윈도우잉 함수의 도면을 도시한다. 이러한 예 에서, 윈도우는 2개의 인접 서브프레임들 각각에 1 밀리초만큼 중첩한다. 도 4b는 20-밀리초 프레임의 5개의 서브프레임들 각각에 대한 이러한 윈도우잉 함수의 적용을 도시한다. 윈도우잉 함수들의 다른 예는, 상이한 중첩 주기 및/또는 대칭 또는 비대칭일 수도 있는 상이한 윈도우 형상 (예를 들어, 직사각형 또는 헤밍 (Hamming)) 을 갖는 함수들을 포함한다. 또한, 상이한 윈도우잉 함수들을 상이한 서브프레임들에 적용하고 및/또는 상이한 길이의 서브프레임에 걸쳐 이득 쉐이프의 상이한 값들을 계산함으로써 이득 쉐이프의 값들을 계산하는 것이 가능하다.
통상적으로, 시간 포락선의 디스크립션을 포함하는 인코딩된 프레임은 대응하는 코드북으로의 하나 이상의 인덱스로서 그러한 디스크립션을 양자화된 형태로 포함하지만, 몇몇 경우, 코드북을 사용하지 않고 이득 프레임 및/또는 이득 쉐이프를 양자화 및/또는 역양자화하기 위해 알고리즘이 사용될 수도 있다. 시간 포락선의 디스크립션의 일 예는, 프레임에 대한 5개의 이득 쉐이프 값들을 특정하는 8 내지 12비트 (예를 들어, 5개의 연속하는 서브프레임들 각각에 대해 일 비트)의 양자화된 인덱스를 포함한다. 또한, 그러한 디스크립션은 프레임에 대해 이득 프레임 값을 특정하는 또 다른 양자화된 인덱스를 포함할 수도 있다.
상술된 바와 같이, 300 내지 3400kHz의 PSTN 주파수 범위를 초과하는 주파수 범위를 갖는 스피치 신호를 송신 및 수신하는 것이 바람직할 수도 있다. 그러한 신호를 코딩하는 일 접근법은, 단일 주파수 대역으로서 확장된 전체 주파수 범위를 인코딩하는 것이다. 그러한 일 접근법은, 0 내지 8kHz와 같은 광대역 주파수 범위를 커버링하기 위하여 협대역 스피치 코딩 기술 (예를 들어, 0 내지 4kHz 또는 300 내지 3400Hz와 같은 PSTN-품질 주파수 범위를 인코딩하도록 구성된 기술) 을 스케일링함으로써 구현될 수도 있다. 예를 들어, 그러한 일 접근법은, (A) 고주파수에서의 컴포넌트들을 포함하기 위해 더 높은 레이트로 스피치 신호를 샘플링하는 것, 및 (B) 원하는 정도의 정확도로 이러한 광대역 신호를 나타내기 위해 협대역 코딩 기술을 재구성하는 것을 포함할 수도 있다. 협대역 코딩 기술을 재구성하는 그러한 일 방법은, 더 높은-차수의 LPC 분석을 사용하는 것이다 (즉, 더 많은 값들을 갖는 계수 벡터를 생성하는 것이다). 또한, 단일 주파수 대역으로서 광대역 신호를 인코딩하는 광대역 스피치 코더는 "풀-대역" 코더로 지칭된다.
인코딩된 신호를 트랜스코딩 또는 현저하게 변형시킬 필요없이, 인코딩된 신호의 적어도 협대역 부분이 (PSTN 채널과 같은) 협대역 채널을 통해 전송될 수도 있도록 광대역 스피치 코더를 구현하는 것이 바람직할 수도 있다. 그러한 특성은 협대역 신호들만을 인식하는 네트워크 및/또는 장치와의 역방향 호환성 (backward compatibility) 을 용이하게 할 수도 있다. 또한, 스피치 신호의 상이한 주파수 대역들에 대해 상이한 코딩 모드들 및/또는 레이트들을 사용하는 광대역 스피치 코더를 구현하는 것이 바람직할 수도 있다. 그러한 특성은 증가된 코딩 효율도 및/또는 지각적인 품질을 지원하는데 사용될 수도 있다. 광대역 스피치 신호의 상이한 주파수 대역들을 나타내는 부분들 (예를 들어, 각각의 세트가 광대역 스피치 신호의 상이한 주파수 대역을 나타내는 스피치 파라미터들의 별개의 세트들) 을 갖는 인코딩된 프레임들을 생성하도록 구성되는 광대역 스피치 코 더는 또한 "스플릿트-대역" 코더로 지칭된다.
도 5a는, 0Hz 로부터 8kHz 까지의 범위에 걸쳐 광대역 스피치 콘텐츠를 인코딩하기 위하여 스플릿트-대역 인코더에 의해 사용될 수도 있는 비중첩 주파수 대역 방식의 일 예를 도시한다. 이러한 방식은, 0Hz 로부터 4kHz 까지 확장한 제 1 주파수 대역 (또한 협대역 범위로 지칭됨) 및 4kHz 로부터 8kHz 까지 확장한 제 2 주파수 대역 (또한 확장된, 상부, 또는 고대역 범위로 지칭됨) 을 포함한다. 도 5b는, 0Hz 로부터 7kHz 까지의 범위에 걸쳐 광대역 스피치 콘텐츠를 인코딩하기 위하여 스플릿트-대역 인코더에 의해 사용될 수도 있는 중첩 주파수 대역 방식의 일 예를 도시한다. 이러한 방식은, 0Hz 로부터 4kHz 까지 확장한 제 1 주파수 대역 (협대역 범위) 및 3.5kHz 로부터 7kHz 까지 확장한 제 2 주파수 대역 (확장된, 상부, 또는 고대역 범위) 을 포함한다.
스플릿트-대역 인코더의 특정한 일 예는, 협대역 범위에 대해 10차 LPC 분석, 및 고대역 범위에 대해 6차 LPC 분석을 수행하도록 구성된다. 주파수 대역 방식들의 다른 예는, 협대역 범위가 약 300Hz 아래로만 확장하는 주파수 대역을 포함한다. 또한, 그러한 방식은 약 0 또는 50Hz 로부터 최대 약 300 또는 350Hz 까지의 저대역 범위를 커버링하는 또 다른 주파수 대역을 포함할 수도 있다.
광대역 스피치 신호를 인코딩하는데 사용되는 평균 비트 레이트를 감소시키는 것이 바람직할 수도 있다. 예를 들어, 특정한 서비스를 지원하는데 필요한 평균 비트 레이트를 감소시키는 것은, 네트워크가 한번에 서빙할 수 있는 사용자 수에서의 증가를 허용할 수도 있다. 그러나, 대응하는 디코딩된 스피치 신호의 지각적인 품질을 과도하게 열화시키지 않고도 그러한 감소를 달성하는 것이 또한 바람직하다.
광대역 스피치 신호의 평균 비트 레이트를 감소시키는 가능한 일 접근법은, 풀-대역 광대역 코딩 방식을 사용하여 비활성 프레임들을 낮은 비트 레이트로 인코딩하는 것이다. 도 6a는 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시하며, 여기서, 그 활성 프레임들은 더 높은 비트 레이트 rH 로 인코딩되고 그 비활성 프레임들은 더 낮은 비트 레이트 rL 로 인코딩된다. 라벨 F는 풀-대역 광대역 코딩 방식을 사용하여 인코딩된 프레임을 나타낸다.
평균 비트 레이트에서의 충분한 감소를 달성하기 위해, 매우 낮은 비트 레이트를 사용하여 비활성 프레임들을 인코딩하는 것이 바람직할 수도 있다. 예를 들어, 프레임 당 16비트 ("1/8 레이트") 와 같이, 협대역 코더에서 비활성 프레임들을 인코딩하는데 사용되는 레이트와 비교가능한 비트 레이트를 사용하는 것이 바람직할 수도 있다. 불운하게도, 그러한 작은 수의 비트는 통상적으로 광대역 범위에 걸쳐 광대역 신호의 비활성 프레임일지라도 수용가능한 정도의 지각적인 품질로 인코딩하는데 불충분하며, 그러한 레이트로 비활성 프레임들을 인코딩하는 풀-대역 광대역 코더는 그 비활성 프레임들 동안 열악한 사운드 품질을 갖는 디코딩된 신호를 생성할 수도 있다. 그러한 신호는, 예를 들어, 비활성 프레임 동안 그 지각된 소리 크기 (loudness) 에서 평활도가 부족할 수도 있고, 및/또는 디코딩된 신호의 스펙트럼 분포는 일 프레임으로부터 다음 프레임까지 과도하게 변할 수도 있다. 통상적으로, 평활도는 디코딩된 배경 잡음에 대해 지각적으로 중요하 다.
도 6b는 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 또 다른 결과를 도시한다. 이러한 경우, 스플릿트-대역 광대역 코딩 방식은 더 높은 비트 레이트로 활성 프레임들을 인코딩하는데 사용되고, 풀-대역 광대역 코딩 방식은 더 낮은 비트 레이트로 비활성 프레임들을 인코딩하는데 사용된다. 라벨 H 및 N 은, 각각, 고대역 코딩 방식 및 협대역 코딩 방식을 사용하여 인코딩된 스플릿트-대역-인코딩된 프레임의 일부를 나타낸다. 상술된 바와 같이, 풀-대역 광대역 코딩 방식 및 낮은 비트 레이트를 사용하여 비활성 프레임들을 인코딩하는 것은, 그 비활성 프레임 동안 열악한 사운드 품질을 갖는 디코딩된 신호를 생성할 수도 있다. 또한, 스플릿트-코딩 방식과 풀-대역 코딩 방식을 혼합하는 것은 코더 복잡도를 증가시킬 수도 있지만, 그러한 복잡도는 결과적인 구현의 실용성에 영향을 줄 수도 있거나 주지 않을 수도 있다. 또한, 과거의 프레임들로부터의 이력 정보가 (특히 음성 프레임들을 코딩하기 위한) 코딩 효율도를 현저하게 증가시키는데 종종 사용되지만, 풀-대역 코딩 방식의 동작 동안 스플릿트-대역 코딩 방식에 의해 생성된 이력 정보를 적용하는 것이 가능하지 않을 수도 있으며, 그 역도 가능하지 않을 수도 있다.
광대역 신호의 평균 비트 레이트를 감소시키는 또 다른 가능한 접근법은, 스플릿트-대역 광대역 코딩 방식을 사용하여 낮은 비트 레이트로 비활성 프레임들을 인코딩하는 것이다. 도 7a는 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시하며, 풀-대역 광대역 코딩 방식이 그 활성 프레임들을 더 높 은 비트 레이트 rH 로 인코딩하는데 사용되고 스플릿트-대역 광대역 코딩 방식이 그 비활성 프레임들을 더 낮은 비트 레이트 rL 로 인코딩하는데 사용된다. 도 7b는 스플릿트-대역 광대역 코딩 방식이 활성 프레임들을 인코딩하기 위해 사용되는 관련 예를 도시한다. 도 6a 및 도 6b를 참조하여 상술된 바와 같이, 프레임 당 16비트 ("1/8 레이트") 와 같이, 협대역 코더에서 비활성 프레임들을 인코딩하는데 사용되는 비트 레이트와 비교가능한 비트 레이트를 사용하여 비활성 프레임들을 인코딩하는 것이 바람직할 수도 있다. 불운하게도, 그러한 작은 수의 비트는, 수용가능한 품질의 디코딩된 광대역 신호가 달성될 수도 있도록 스플릿트-대역 코딩 방식이 상이한 주파수 대역 사이에 할당하는데 통상적으로 불충분하다.
광대역 신호의 평균 비트 레이트를 감소시키는 또 다른 가능한 접근법은, 협대역으로서 비활성 프레임들을 낮은 비트 레이트로 인코딩하는 것이다. 도 8a 및 도 8b는 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시하며, 광대역 코딩 방식이 그 활성 프레임들을 더 높은 비트 레이트 rH 로 인코딩하는데 사용되고, 협대역 코딩 방식이 그 비활성 프레임들을 더 낮은 비트 레이트 rL 로 인코딩하는데 사용된다. 도 8a의 예에서는 풀-대역 광대역 코딩 방식이 활성 프레임들을 인코딩하는데 사용되지만, 도 8b의 예에서는 스플릿트-대역 광대역 코딩 방식이 활성 프레임들을 인코딩하는데 사용된다.
통상적으로, 높은-비트-레이트 광대역 코딩 방식을 사용하여 활성 프레임을 인코딩하는 것은, 잘-코딩된 광대역 배경 잡음을 포함하는 인코딩된 프레임을 생성한다. 그러나, 도 8a 및 도 8b의 예에서와 같이, 협대역 코딩 방식만을 사용하 여 비활성 프레임을 인코딩하는 것은 확장된 주파수가 부족한 인코딩된 프레임을 생성한다. 따라서, 디코딩된 광대역 활성 프레임으로부터 디코딩된 협대역 비활성 프레임으로의 전이는 매우 가청이지만 불쾌할 수도 있으며, 또한, 이러한 제 3 의 가능한 접근법은 차선의 결과를 생성할 수도 있다.
도 9는 일반적인 구성에 따른 방법 M100 을 사용하여 스피치 신호의 3개의 연속하는 프레임들을 인코딩하는 동작을 도시한다. 태스크 (T110) 는 활성 또는 비활성일 수도 있는 3개의 프레임들 중 제 1 프레임을 제 1 비트 레이트 r1 (프레임 당 p비트) 으로 인코딩한다. 태스크 (T120) 는, 제 1 프레임에 후속하고 비활성 프레임인 제 2 프레임을 r1 과는 상이한 제 2 비트 레이트 r2 (프레임 당 q비트) 로 인코딩한다. 태스크 (T130) 는, 제 2 프레임에 바로 후속하고 또한 비활성인 제 3 프레임을 r2 보다 작은 제 3 비트 레이트 r3 (프레임 당 r비트) 로 인코딩한다. 통상적으로, 방법 M100 은 스피치 인코딩의 더 큰 방법의 일부로서 수행되며, 방법 M100 을 수행하도록 구성된 스피치 인코더들 및 스피치 인코딩 방법들이 명백히 고려되고 그에 의해 개시된다.
대응하는 스피치 디코더는, 제 2 인코딩된 프레임으로부터의 정보를 사용하여 제 3 인코딩된 프레임으로부터의 비활성 프레임의 디코딩을 보충하도록 구성될 수도 있다. 본 명세서의 다른 곳에서, 하나 이상의 후속 비활성 프레임들을 디코딩할 시에 제 2 인코딩된 프레임으로부터의 정보를 사용하는, 스피치 디코더들 및 스피치 신호의 프레임들을 디코딩하는 방법이 개시된다.
도 9에 도시된 특정 예에서, 스피치 신호에서 제 2 프레임은 제 1 프레임에 바로 후속하고, 스피치 신호에서 제 3 프레임은 제 2 프레임에 바로 후속한다. 방법 M100 의 다른 애플리케이션에서, 스피치 신호에서 제 1 및 제 2 프레임은 하나 이상의 비활성 프레임들에 의해 분리될 수도 있으며, 스피치 신호에서 제 2 및 제 3 프레임은 하나 이상의 비활성 프레임들에 의해 분리될 수도 있다. 도 9에 도시된 특정 예에서, p는 q보다 크다. 또한, 방법 M100 은 p가 q보다 작도록 구현될 수도 있다. 도 10a 내지 도 12b에 도시된 특정 예들에서, 비트 레이트 rH, rM, 및 rL 은, 각각, 비트 레이트 r1, r2, 및 r3 에 대응한다.
도 10a는 상술된 바와 같은 방법 M100 의 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다. 이러한 예에서, 그 전이 이전의 최종 활성 프레임은 더 높은 비트 레이트 rH 로 인코딩되어 3개의 인코딩된 프레임들 중 제 1 인코딩된 프레임을 생성하고, 그 전이 이후의 첫번째 비활성 프레임은 중간 비트 레이트 rM 으로 인코딩되어 3개의 인코딩된 프레임들 중 제 2 인코딩된 프레임을 생성하며, 그 다음의 비활성 프레임은 더 낮은 비트 레이트 rL 로 인코딩되어 3개의 인코딩된 프레임들 중 최종 인코딩된 프레임을 생성한다. 이러한 예의 특정한 일 예에서, 비트 레이트 rH, rM, 및 rL 은, 각각, 풀 레이트, 하프 레이트, 및 1/8 레이트이다.
상술된 바와 같이, 활성 스피치로부터 비활성 스피치로의 전이는 통상적으로 수 개의 프레임들의 주기에 걸쳐 발생하며, 활성 프레임들로부터 비활성 프레임들로의 전이 이후의 첫번째 수 개의 프레임들은 나머지 음성과 같은 활성 스피치의 나머지들을 포함할 수도 있다. 스피치 인코더가 비활성 프레임들에 대해 의도 된 코딩 방식을 사용하여 그러한 나머지들을 갖는 프레임을 인코딩하면, 인코딩된 결과는 본래의 프레임을 정확하게 나타내지 못할 수도 있다. 따라서, 그러한 나머지들을 갖는 프레임을 제 2 인코딩된 프레임으로서 인코딩하는 것을 회피하기 위해 방법 M100 을 구현하는 것이 바람직할 수도 있다.
도 10b는 행오버를 포함하는 방법 M100 의 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다. 방법 M100 의 이러한 특정 예는 그 전이 이후의 첫번째 3개의 비활성 프레임들에 대해 비트 레이트 rH 를 계속 사용한다. 일반적으로, (예를 들어, 하나 또는 2개의 프레임으로부터 5개 또는 10개의 프레임까지의 범위에서) 임의의 원하는 길이의 행오버가 사용될 수도 있다. 행오버의 길이는 기대된 길이의 전이에 따라 선택될 수도 있으며, 고정 또는 가변일 수도 있다. 예를 들어, 행오버의 길이는, 신호-대-잡음비와 같은, 전이 이전의 활성 프레임들 중 하나 이상의 활성 프레임들 및/또는 그 행오버내의 프레임들 중 하나 이상의 프레임들의 하나 이상의 특성들에 기초할 수도 있다. 일반적으로, 라벨 "제 1 인코딩된 프레임" 은 전이 이전의 최종 활성 프레임에 적용될 수도 있거나, 행오버 동안의 임의의 비활성 프레임에 적용될 수도 있다.
일련의 2개 이상의 연속하는 비활성 프레임들에 걸쳐 비트 레이트 r2 를 사용하기 위해 방법 M100 을 구현하는 것이 바람직할 수도 있다. 도 11a는 방법 M100 의 그러한 일 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다. 이러한 예에서, 3개의 인코딩된 프레임들 중 제 1 및 최종 인코딩된 프레임은, 제 2 인코딩된 프레임이 그 제 1 인코딩된 프레임에 바로 후속하지 않도록, 비트 레이트 rM 을 사용하여 인코딩된 2개 이상의 프레임에 의해 분리된다. 대응하는 스피치 디코더는 제 2 인코딩된 프레임으로부터의 정보를 사용하여, 제 3 인코딩된 프레임을 디코딩 (및 가급적 하나 이상의 후속 비활성 프레임들을 디코딩) 하도록 구성될 수도 있다.
스피치 디코더가 2개 이상의 인코딩된 프레임으로부터의 정보를 사용하여 후속 비활성 프레임을 디코딩하는 것이 바람직할 수도 있다. 예를 들어, 도 11a에 도시된 바와 같은 시리즈를 참조하여, 대응하는 스피치 디코더는, 비트 레이트 rM 으로 인코딩된 비활성 프레임들 양자로부터의 정보를 사용하여 제 3 인코딩된 프레임을 디코딩 (및 가급적 하나 이상의 후속 비활성 프레임들을 디코딩) 하도록 구성될 수도 있다.
일반적으로, 제 2 인코딩된 프레임이 비활성 프레임들을 나타내는 것이 바람직할 수도 있다. 따라서, 방법 M100 은 스피치 신호의 2개 이상의 비활성 프레임으로부터의 스펙트럼 정보에 기초하여 제 2 인코딩된 프레임을 생성하도록 구현될 수도 있다. 도 11b는 방법 M100 의 그러한 일 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다. 이러한 예에서, 제 2 인코딩된 프레임은 스피치 신호의 2개의 프레임들의 윈도우에 걸쳐 평균화된 정보를 포함한다. 다른 경우, 평균 윈도우는 2개의 프레임으로부터 약 6개 또는 8개의 프레임까지의 범위의 길이를 가질 수도 있다. 제 2 인코딩된 프레임은, 윈도우내의 프레임들 (이러한 경우, 스피치 신호의 대응하는 비활성 프레 임 및 그에 선행하는 비활성 프레임) 의 스펙트럼 포락선의 디스크립션 평균인 스펙트럼 포락선의 디스크립션을 포함할 수도 있다. 제 2 인코딩된 프레임은, 스피치 신호의 대응하는 프레임에 주로 또는 배타적으로 기초하는 시간 정보의 디스크립션을 포함할 수도 있다. 다른 방법으로, 방법 M100 은, 윈도우내의 프레임들의 시간 정보의 디스크립션 평균인 시간 정보의 디스크립션을 제 2 인코딩된 프레임이 포함하도록 구성될 수도 있다.
도 12a는 방법 M100 의 또 다른 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다. 이러한 예에서, 제 2 인코딩된 프레임은 3개의 프레임들의 윈도우에 걸쳐 평균화된 정보를 포함하며, 그 제 2 인코딩된 프레임은 비트 레이트 rM 으로 인코딩되고 선행하는 2개의 비활성 프레임들은 다른 비트 레이트 rH 로 인코딩된다. 이러한 특정 예에서, 평균 윈도우는 3개의-프레임 사후-전이 행오버에 후속한다. 또 다른 예에서, 방법 M100 은 그러한 행오버없이 구현될 수도 있거나, 다른 방법으로, 그 평균 윈도우에 중첩하는 행오버로 구현될 수도 있다. 일반적으로, 라벨 "제 1 인코딩된 프레임" 은 전이 이전의 최종 활성 프레임에 적용될 수도 있거나, 행오버 동안 비활성 프레임에 적용될 수도 있거나, 제 2 인코딩된 프레임과는 상이한 비트 레이트로 인코딩된 윈도우에서의 임의의 프레임에 적용될 수도 있다.
몇몇 경우, 비활성 프레임이 연속하는 활성 프레임들의 시퀀스 (또한, "토크 스퍼트 (talk spurt)" 로 지칭됨) 에 후속할 경우에만 그 비활성 프레임을 인코딩하도록 방법 M100 의 일 구현이 비트 레이트 r2 를 사용하는 것이 바람직할 수도 있다. 도 12b는 방법 M100 의 그러한 일 구현을 사용하여 스피치 신호의 영역을 인코딩한 결과를 도시한다. 이러한 예에서, 선행하는 토크 스퍼트가 적어도 3개의 프레임의 길이를 갖는 경우에만, 활성 프레임들로부터 비활성 프레임들로의 전이 이후의 첫번째 비활성 프레임을 인코딩하기 위해 비트 레이트 rM 을 사용하도록 방법 M100 이 구현된다. 그러한 경우, 최소 토크 스퍼트 길이는 고정 또는 가변일 수도 있다. 예를 들어, 그 길이는 신호-대-잡음비와 같은, 전이 이전의 활성 프레임들 중 하나 이상의 활성 프레임들의 특성들에 기초할 수도 있다. 또한, 방법 M100 의 또 다른 그러한 구현은, 상술된 바와 같은 평균 윈도우 및/또는 행오버를 적용하도록 구성될 수도 있다.
도 10a 내지 도 12b는, 제 1 인코딩된 프레임을 인코딩하는데 사용되는 비트 레이트 r1 이 제 2 인코딩된 프레임을 인코딩하는데 사용되는 비트 레이트 r2 보다 큰 방법 M100 의 구현들의 애플리케이션을 도시한다. 그러나, 방법 M100 의 구현들의 범위는 비트 레이트 r1 이 비트 레이트 r2 보다 작은 방법을 또한 포함한다. 예를 들어, 이러한 경우, 음성 프레임과 같은 활성 프레임은 이전 활성 프레임을 크게 리던던트할 수도 있으며, r2 보다 작은 비트 레이트를 사용하여 그러한 프레임을 인코딩하는 것이 바람직할 수도 있다. 도 13a는 방법 M100 의 그러한 일 구현에 따라 프레임들의 시퀀스를 인코딩한 결과를 도시하며, 활성 프레임은 더 낮은 비트 레이트로 인코딩되어 3개의 인코딩된 프레임들의 세트 중 제 1 인코딩된 프레임을 생성한다.
방법 M100 의 잠재적인 애플리케이션은, 활성 프레임들로부터 비활성 프레임 들로의 전이를 포함하는 스피치 신호의 영역에 제한되지 않는다. 이러한 경우, 몇몇 일정 간격에 따라 방법 M100 을 수행하는 것이 바람직할 수도 있다. 예를 들어, 일련의 연속하는 비활성 프레임들에서 매 n-번째 프레임을 더 높은 비트 레이트 r2 로 인코딩하는 것이 바람직할 수도 있으며, 여기서, n의 통상적인 값은 8, 16, 및 32를 포함한다. 다른 경우, 방법 M100 은 이벤트에 응답하여 개시될 수도 있다. 그러한 이벤트의 일 예는 배경 잡음의 품질에서의 변화이며, 그 변화는 제 1 반사 계수의 값과 같이, 스펙트럼 틸트에 관한 파라미터에서의 변화에 의해 나타낼 수도 있다. 도 13b는 방법 M100 의 그러한 일 구현을 사용하여 일련의 비활성 프레임들을 인코딩한 결과를 도시한다.
상술된 바와 같이, 광대역 프레임은 풀-대역 코딩 방식 또는 스플릿트-대역 코딩 방식을 사용하여 인코딩될 수도 있다. 풀-대역으로서 인코딩된 프레임은 전체 광대역 주파수 범위에 걸쳐 확장하는 단일 스펙트럼 포락선의 디스크립션을 포함하지만, 스플릿트-대역으로서 인코딩된 프레임은 광대역 스피치 신호의 상이한 주파수 대역 (예를 들어, 협대역 범위 및 고대역 범위) 에서의 정보를 나타내는 2개 이상의 별개의 부분들을 갖는다. 예를 들어, 통상적으로 스플릿트-대역-인코딩된 프레임의 이들 별개의 부분들 각각은 대응하는 주파수 대역에 걸친 스피치 신호의 스펙트럼 포락선의 디스크립션을 포함한다. 스플릿트-대역-인코딩된 프레임은 전체 광대역 주파수 범위에 대하여 프레임에 대한 시간 정보의 하나의 디스크립션을 포함할 수도 있거나, 인코딩된 프레임의 별개의 부분들 각각은 대응하는 주파수 대역에 대해 스피치 신호의 시간 정보의 디스크립션을 포함할 수도 있다.
도 14는 방법 M100 의 일 구현 M110 의 애플리케이션을 도시한다. 방법 M110 은, 스피치 신호의 3개의 프레임들 중 제 1 프레임에 기초하여 제 1 인코딩된 프레임을 생성하는 태스크 (T110) 의 일 구현 (T112) 을 포함한다. 제 1 프레임은 활성 또는 비활성일 수도 있으며, 제 1 인코딩된 프레임은 p비트의 길이를 갖는다. 도 14에 도시된 바와 같이, 태스크 (T112) 는, 제 1 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함할 제 1 인코딩된 프레임을 생성하도록 구성된다. 이러한 디스크립션은 양 주파수 대역에 걸쳐 확장하는 단일 디스크립션일 수도 있거나, 그 주파수 대역들의 각각의 주파수 대역에 걸쳐 각각 확장하는 별개의 디스크립션들을 포함할 수도 있다. 또한, 태스크 (T112) 는 제 1 및 제 2 주파수 대역에 대한 (예를 들어, 시간 포락선의) 시간 정보의 디스크립션을 포함할 제 1 인코딩된 프레임을 생성하도록 구성될 수도 있다. 이러한 디스크립션은 양 주파수 대역에 걸쳐 확장하는 단일 디스크립션일 수도 있거나, 그 주파수 대역들의 각각의 주파수 대역에 걸쳐 각각 확장하는 별개의 디스크립션들을 포함할 수도 있다.
또한, 방법 M110 은 3개의 프레임들 중 제 2 프레임에 기초하여 제 2 인코딩된 프레임을 생성하는 태스크 (T120) 의 일 구현 (T122) 을 포함한다. 제 2 프레임은 비활성 프레임이며, 제 2 인코딩된 프레임은 q비트의 길이를 갖는다 (여기서, p 및 q는 동일하지 않다). 도 14에 도시된 바와 같이, 태스크 (T122) 는, 제 1 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함할 제 2 인코딩된 프레임을 생성하도록 구성된다. 이러한 디스크립션은 양 주파수 대역에 걸쳐 확장하는 단일 디스크립션일 수도 있거나, 그 주파수 대역들의 각각의 주파수 대역에 걸쳐 각각 확장하는 별개의 디스크립션들을 포함할 수도 있다. 이러한 특정 예에서, 제 2 인코딩된 프레임내에 포함된 스펙트럼 포락선 디스크립션의 비트 단위 길이는, 제 1 인코딩된 프레임내에 포함된 스펙트럼 포락선 디스크립션의 비트 단위 길이보다 작다. 또한, 태스크 (T122) 는 제 1 및 제 2 주파수 대역에 대한 (예를 들어, 시간 포락선의) 시간 정보의 디스크립션을 포함할 제 2 인코딩된 프레임을 생성하도록 구성될 수도 있다. 이러한 디스크립션은 양 주파수 대역에 걸쳐 확장하는 단일 디스크립션일 수도 있거나, 그 주파수 대역들의 각각의 주파수 대역에 걸쳐 각각 확장하는 별개의 디스크립션들을 포함할 수도 있다.
또한, 방법 M100 은 3개의 프레임들 중 최종 프레임에 기초하여 제 3 인코딩된 프레임을 생성하는 태스크 (T130) 의 일 구현 (T132) 을 포함한다. 제 3 프레임은 비활성 프레임이며, 제 3 인코딩된 프레임은 r비트의 길이를 갖는다 (여기서, r은 q보다 작다). 도 14에 도시된 바와 같이, 태스크 (T132) 는 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함할 제 3 인코딩된 프레임을 생성하도록 구성된다. 이러한 특정 예에서, 제 3 인코딩된 프레임내에 포함된 스펙트럼 포락선 디스크립션의 길이 (비트 단위) 는, 제 2 인코딩된 프레임내에 포함된 스펙트럼 포락선 디스크립션의 길이 (비트 단위) 보다 작다. 또한, 태스크 (T132) 는 제 1 주파수 대역에 걸친 (예를 들어, 시간 포락선의) 시간 정보의 디스크립션을 포함할 제 3 인코딩된 프레임을 생성하도록 구성될 수도 있다.
제 2 주파수 대역은 제 1 주파수 대역과는 상이하지만, 방법 M110 은 그 2개 의 주파수 대역들이 중첩하도록 구성될 수도 있다. 제 1 주파수 대역에 대한 하한의 예는 0, 50, 100, 300, 및 500Hz 를 포함하고, 제 1 주파수 대역에 대한 상한의 예는 3, 3.5, 4, 4.5, 및 5kHz 를 포함한다. 제 2 주파수 대역에 대한 하한의 예는 2.5, 3, 3.5, 4, 및 4.5kHz 를 포함하고, 제 2 주파수 대역에 대한 상한의 예는 7, 7.5, 8, 및 8.5kHz 를 포함한다. 상기 경계들의 모든 500개의 가능한 조합들이 명백히 고려되고 그에 의해 개시되며, 또한, 방법 M110 의 임의의 구현에 대한 임의의 그러한 조합의 애플리케이션이 명백히 고려되고 그에 의해 개시된다. 특정한 일 예에서, 제 1 주파수 대역은 약 50Hz 내지 약 4kHz 의 범위를 포함하고, 제 2 주파수 대역은 약 4kHz 내지 약 7kHz 의 범위를 포함한다. 또 다른 특정 예에서, 제 1 주파수 대역은 약 100Hz 내지 약 4kHz 의 범위를 포함하고, 제 2 주파수 대역은 약 3.5kHz 내지 약 7kHz 의 범위를 포함한다. 또 다른 특정 예에서, 제 1 주파수 대역은 약 300Hz 내지 약 4kHz 의 범위를 포함하고, 제 2 주파수 대역은 약 3.5kHz 내지 약 7kHz 의 범위를 포함한다. 이들 예에서, "약" 이라는 용어는 플러스 또는 마이너스 5% 를 표시하고, 다양한 주파수 대역들의 경계들은 각각 3dB 포인트에 의해 표시된다.
상술된 바와 같이, 광대역 애플리케이션에 있어서, 스플릿트-대역 코딩 방식은 풀-대역 코딩 방식에 비해, 증가된 코딩 효율도 및 역방향 호환성에 대한 지원은 같은 이점을 가질 수도 있다. 도 15는 제 2 인코딩된 프레임을 생성하기 위해 스플릿트-대역 코딩 방식을 사용하는 방법 M110 의 일 구현 M120 의 애플리케이션을 도시한다. 방법 M120 은 2개의 서브태스크 (T126a 및 T126b) 를 갖는 태 스크 (T122) 의 일 구현 (T124) 을 포함한다. 태스크 (T126a) 는 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 계산하도록 구성되고, 태스크 (T126b) 는 제 2 주파수 대역에 걸친 스펙트럼 포락선의 별개의 디스크립션을 계산하도록 구성된다. (예를 들어, 후술될 바와 같은) 대응하는 스피치 디코더는, 태스크들 (T126b 및 T132) 에 의해 계산된 스펙트럼 포락선 디스크립션들로부터의 정보에 기초하여, 디코딩된 광대역 프레임을 계산하도록 구성될 수도 있다.
태스크 (T126a 및 T132) 는 동일한 길이를 갖는 제 1 주파수 대역에 걸친 스펙트럼 포락선들의 디스크립션들을 계산하도록 구성될 수도 있거나, 태스크들 (T126a 및 T132) 중 하나의 태스크는 다른 태스크에 의해 계산된 디스크립션보다 더 긴 디스크립션을 계산하도록 구성될 수도 있다. 또한, 태스크들 (T126a 및 T126b) 은 2개의 주파수 대역에 걸친 시간 정보의 별개의 디스크립션을 계산하도록 구성될 수도 있다.
태스크 (T132) 는, 제 3 인코딩된 프레임이 제 2 주파수 대역에 걸친 스펙트럼 포락선의 임의의 디스크립션을 포함하지 않도록 구성될 수도 있다. 다른 방법으로, 태스크 (T132) 는, 제 3 인코딩된 프레임이 제 2 주파수 대역에 걸친 스펙트럼 포락선의 단축된 디스크립션을 포함하도록 구성될 수도 있다. 예를 들어, 태스크 (T132) 는, 제 3 인코딩된 프레임이 제 1 주파수 대역에 걸친 제 3 프레임의 스펙트럼 포락선의 디스크립션보다 실질적으로 더 적은 비트를 갖는 (예를 들어, 그 길이가 절반을 넘지는 않는) 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하도록 구성될 수도 있다. 또 다른 예에서, 태스크 (T132) 는, 제 3 인코딩된 프레임이 태스크 (T126b) 에 의해 계산된 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션보다 실질적으로 더 적은 비트를 갖는 (예를 들어, 그 길이가 절반을 넘지는 않는) 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하도록 구성된다. 그러한 일 예에서, 태스크 (T132) 는, 스펙트럼 틸트값 (예를 들어, 정규화된 제 1 반사 계수) 만을 포함하는 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함할 제 3 인코딩된 프레임을 생성하도록 구성된다.
풀-대역 코딩 방식보다는 스플릿트-대역 코딩 방식을 사용하여 제 1 인코딩된 프레임을 생성하기 위해 방법 M110 을 구현하는 것이 바람직할 수도 있다. 도 16은, 제 1 인코딩된 프레임을 생성하기 위해 스플릿트-대역 코딩 방식을 사용하는 방법 M120 의 일 구현 M130 의 애플리케이션을 도시한다. 방법 M130 은 2개의 서브태스크들 (T116a 및 T116b) 을 포함하는 태스크 (T110) 의 일 구현 (T114) 을 포함한다. 태스크 (T116a) 는 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 계산하도록 구성되고, 태스크 (T116b) 는 제 2 주파수 대역에 걸친 스펙트럼 포락선의 별개의 디스크립션을 계산하도록 구성된다.
태스크들 (T116a 및 T126a) 은 동일한 길이를 갖는 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 계산하도록 구성될 수도 있거나, 태스크들 (T116a 및 T126a) 중 하나의 태스크는 다른 태스크에 의해 계산된 디스크립션보다 더 긴 디스크립션을 계산하도록 구성될 수도 있다. 태스크들 (116b 및 126b) 은 동일한 길이를 갖는 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 계산하 도록 구성될 수도 있거나, 태스크들 (116b 및 126b) 중 하나의 태스크는 다른 태스크에 의해 계산된 디스크립션보다 더 긴 디스크립션을 계산하도록 구성될 수도 있다. 또한, 태스크들 (116a 및 116b) 은 2개의 주파수 대역에 걸친 시간 정보의 별개의 디스크립션을 계산하도록 구성될 수도 있다.
도 17a는 방법 M130 의 일 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다. 이러한 특정 예에서, 제 2 주파수 대역을 나타내는 제 1 및 제 2 인코딩된 프레임들의 일부는 동일한 길이를 갖고, 제 1 주파수 대역을 나타내는 제 2 및 제 3 인코딩된 프레임들의 일부는 동일한 길이를 갖는다.
제 2 주파수 대역을 나타내는 제 2 인코딩된 프레임의 일부가 제 1 인코딩된 프레임의 대응하는 일부보다 더 큰 길이를 갖는 것이 바람직할 수도 있다. 활성 프레임의 저-주파수 및 고-주파수 범위는, (특히 프레임이 음성형일 경우) 배경 잡음을 포함하는 비활성 프레임의 저-주파수 및 고-주파수 범위보다 서로 상관될 가능성이 더 높다. 따라서, 비활성 프레임의 고-주파수 범위는 활성 프레임의 고-주파수 범위와 비교하여 프레임의 비교적 더 많은 정보를 운반할 수도 있으며, 비활성 프레임의 고-주파수 범위를 인코딩하기 위해 더 많은 수의 비트를 사용하는 것이 바람직할 수도 있다.
도 17b는 방법 M130 의 또 다른 구현을 사용하여 활성 프레임들로부터 비활성 프레임들로의 전이를 인코딩한 결과를 도시한다. 이러한 경우, 제 2 주파수 대역을 나타내는 제 2 인코딩된 프레임의 일부는 제 1 인코딩된 프레임의 대응하는 일부보다 더 길다 (즉, 더 많은 비트를 갖는다). 또한, 이러한 특정 예는 제 1 주파수 대역을 나타내는 제 2 인코딩된 프레임의 일부가 제 3 인코딩된 프레임의 대응하는 부분보다 더 긴 경우를 나타내지만, (예를 들어, 도 17a에 도시된 바와 같이) 이들 2개의 부분들이 동일한 길이를 갖게 하기 위해 프레임들을 인코딩하도록 방법 M130 의 또 다른 구현이 구성될 수도 있다.
방법 M100 의 통상적인 예는, (도 14에 도시된 바와 같은 풀-대역, 또는 도 15 및 도 16에 도시된 바와 같은 스플릿트-대역일 수도 있는) 광대역 NELP 모드를 사용하여 제 2 프레임을 인코딩하고, 협대역 NELP 모드를 사용하여 제 3 프레임을 인코딩하도록 구성된다. 도 18a의 테이블은, 스피치 인코더가 도 17b에 도시된 바와 같은 결과를 생성하기 위해 사용할 수도 있는 3개의 상이한 코딩 방식들의 일 세트를 도시한다. 이러한 예에서, 풀-레이트 광대역 CELP 코딩 방식 ("코딩 방식 1") 은 음성 프레임들을 인코딩하는데 사용된다. 이러한 코딩 방식은 프레임의 협대역 부분을 인코딩하는데 153비트, 및 고대역 부분을 인코딩하는데 16비트를 사용한다. 협대역에 있어서, 코딩 방식 1은 (예를 들어, 하나 이상의 양자화된 LSP 벡터들로서) 스펙트럼 포락선의 디스크립션을 인코딩하기 위해 28비트, 및 여기 신호의 디스크립션을 인코딩하기 위해 125비트를 사용한다. 고대역에 있어서, 코딩 방식 1은 (예를 들어, 하나 이상의 양자화된 LSP 벡터들로서) 스펙트럼 포락선을 인코딩하기 위해 8비트, 및 시간 포락선의 디스크립션을 인코딩하기 위해 8비트를 사용한다.
인코딩된 프레임의 비트가 고대역 여기 신호를 운반하는데 필요하지 않게 하 기 위해, 협대역 여기 신호로부터 고대역 여기 신호를 유도하도록 코딩 방식 1을 구성하는 것이 바람직할 수도 있다. 또한, (예를 들어, 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하는) 인코딩된 프레임의 다른 파라미터들로부터 합성된 바와 같은 고대역 신호의 시간 포락선에 관해 고대역 시간 포락선을 계산하도록 코딩 방식 1을 구성하는 것이 바람직할 수도 있다. 그러한 특성들은, 예를 들어, 상술된 미국 특허 출원 공개 공보 제 2006/0282262 호에 상세히 설명되어 있다.
음성 스피치 신호와 비교할 경우, 통상적으로, 묵음 스피치 신호는 고대역에서 스피치 이해에 중요한 더 많은 정보를 포함한다. 따라서, 더 높은 전체 비트 레이트를 사용하여 음성 프레임이 인코딩되는 경우라도, 음성 프레임의 고대역 부분을 인코딩하는 것보다 묵음 프레임의 고대역 부분을 인코딩하기 위해 더 많은 비트를 사용하는 것이 바람직할 수도 있다. 도 18a의 테이블에 따른 예에서, 하프-레이트 광대역 NELP 코딩 방식 ("코딩 방식 2") 이 묵음 프레임을 인코딩하는데 사용된다. 음성 프레임의 고대역 부분을 인코딩하기 위하여 코딩 방식 1에 의해 사용되는 16비트 대신에, 이러한 코딩 방식은 프레임의 고대역 부분을 인코딩하기 위해 27비트를 사용하며, 즉, (예를 들어, 하나 이상의 양자화된 LSP 벡터들로서) 스펙트럼 포락선의 디스크립션을 인코딩하기 위해 12비트가 사용되고, (예를 들어, 양자화된 이득 프레임 및/또는 이득 쉐이프로서) 시간 포락선의 디스크립션을 인코딩하기 위해 15비트가 사용된다. 협대역 부분을 인코딩하기 위해, 코딩 방식 2는 47비트를 사용하며, 즉, (예를 들어, 하나 이상의 양자화된 LSP 벡터들로 서) 스펙트럼 포락선의 디스크립션을 인코딩하기 위해 28비트가 사용되고, (예를 들어, 양자화된 이득 프레임 및/또는 이득 쉐이프로서) 시간 포락선의 디스크립션을 인코딩하기 위해 19비트가 사용된다.
도 18a에 설명된 방식은 프레임 당 16비트의 레이트로 비활성 프레임들을 인코딩하기 위해 1/8-레이트 협대역 NELP 코딩 방식 ("코딩 방식 3") 을 사용하며, (예를 들어, 하나 이상의 양자화된 LSP 벡터들로서) 스펙트럼 포락선의 디스크립션을 인코딩하기 위해 10비트가 사용되고, (예를 들어, 양자화된 이득 프레임 및/또는 이득 쉐이프로서) 시간 포락선의 디스크립션을 인코딩하기 위해 5비트가 사용된다. 코딩 방식 3의 또 다른 예는, 스펙트럼 포락선의 디스크립션을 인코딩하기 위해 8비트를 사용하고, 시간 포락선의 디스크립션을 인코딩하기 위해 6비트를 사용한다.
스피치 인코더 또는 스피치 인코딩 방법은, 방법 M130 의 일 구현을 수행하기 위해 도 18a에 도시된 바와 같은 코딩 방식들의 세트를 사용하도록 구성될 수도 있다. 예를 들어, 그러한 인코더 또는 방법은, 제 2 인코딩된 프레임을 생성하기 위해 코딩 방식 3 보다는 코딩 방식 2를 사용하도록 구성될 수도 있다. 그러한 인코더 또는 방법의 다양한 구현들은, 비트 레이트 rH 가 표시되는 코딩 방식 1, 비트 레이트 rM 이 표시되는 코딩 방식 2, 및 비트 레이트 rL 이 표시되는 코딩 방식 3을 사용함으로써 도 10a 내지 도 13b에 도시된 바와 같은 결과들을 생성하도록 구성될 수도 있다.
도 18a에 도시된 바와 같은 코딩 방식들의 세트가 방법 M130 의 일 구현을 수행하기 위해 사용되는 경우에 있어서, 인코더 또는 방법은, 제 2 인코딩된 프레임을 생성하고 인코딩된 묵음 프레임들을 생성하기 위해 동일한 코딩 방식 (방식 2) 을 사용하도록 구성된다. 다른 경우, 방법 M100 의 일 구현을 수행하도록 구성되는 인코더 또는 방법은, 전용 코딩 방식 (즉, 그 인코더 또는 방법이 활성 프레임들을 인코딩하기 위해 또한 사용하지 않는 코딩 방식) 을 사용하여 제 2 프레임을 인코딩하도록 구성될 수도 있다.
도 18a에 도시된 바와 같은 코딩 방식들의 세트를 사용하는 방법 M130 의 일 구현은 제 2 및 제 3 인코딩된 프레임을 생성하기 위해 동일한 코딩 모드 (즉, NELP) 를 사용하도록 구성되지만, 그 2개의 인코딩된 프레임들을 생성하기 위해 (예를 들어, 이득들이 계산되는 방법의 관점에서) 상이한 코딩 모드의 버전들을 사용하는 것이 가능하다. 상이한 코딩 모드들을 사용하여 (예를 들어, 제 2 인코딩된 프레임을 생성하기 위해 CELP 모드를 대신 사용하여) 제 2 및 제 3 인코딩된 프레임들이 생성되는 방법 M100 의 다른 구성들이 또한 명백히 고려되고 그에 의해 개시된다. 상이한 주파수 대역들에 대해 상이한 코딩 모드들 (예를 들어, 더 낮은 대역에 대해 CELP 및 더 높은 대역에 대해 NELP, 또는 더 낮은 대역에 대해 NELP 및 더 높은 대역에 대해 CELP) 을 사용하는 스플릿트-대역 광대역 모드를 사용하여 제 2 인코딩된 프레임이 생성되는 방법 M100 의 또 다른 구성들이 또한 명백히 고려되고 그에 의해 개시된다. 방법 M100 의 그러한 구현들을 수행하도록 구성되는 스피치 인코더 및 스피치 인코딩 방법이 또한 명백히 고려되고 그에 의해 개시된다.
방법 M100 의 일 구현의 통상적인 애플리케이션에서, 로직 엘리먼트들 (예를 들어, 로직 게이트) 의 어레이는 그 방법의 다양한 태스크들 중 하나, 2개 이상, 또는 심지어 모든 태스크를 수행하도록 구성된다. 또한, 그 태스크들 중 하나 이상의 (가급적 모든) 태스크는, 로직 엘리먼트들 (예를 들어, 프로세서, 마이크로프로세서, 마이크로제어기, 또는 다른 유한 상태 머신) 의 어레이를 포함하는 머신 (예를 들어, 컴퓨터) 에 의해 판독가능 및/또는 실행가능한 컴퓨터 프로그램 제품 (예를 들어, 디스크, 플래시 또는 다른 비휘발성 메모리 카드, 반도체 메모리 칩 등과 같은 하나 이상의 데이터 저장 매체) 에 수록된 코드 (예를 들어, 명령어들의 하나 이상의 세트들) 로서 구현될 수도 있다. 또한, 방법 M100 의 일 구현의 태스크들은 2개 이상의 그러한 어레이 또는 머신에 의해 수행될 수도 있다. 이들 또는 다른 구현들에서, 그 태스크들은 셀룰러 전화기 또는 그러한 통신 능력을 갖는 다른 디바이스와 같은 무선 통신용 디바이스내에서 수행될 수도 있다. 그러한 디바이스는 서킷-스위칭 및/또는 (예를 들어, VoIP와 같은 하나 이상의 프로토콜을 사용하여) 패킷-스위칭 네트워크와 통신하도록 구성될 수도 있다. 예를 들어, 그러한 디바이스는 인코딩된 프레임들을 송신하도록 구성된 RF 회로를 포함할 수도 있다.
도 18b는, 여기에 설명된 바와 같은 태스크들 (T120 및 T130) 을 포함하는 일반적인 구성에 따라 방법 M300 을 사용하여 스피치 신호의 2개의 연속하는 프레임들을 인코딩하는 동작을 도시한다. (방법 M300 의 이러한 구현이 2개의 프레임들만을 프로세싱하지만, 편의를 위해 "제 2 프레임" 및 "제 3 프레임" 이라는 라 벨의 사용을 계속한다.) 도 18b에 도시된 특정 예에서, 제 3 프레임은 제 2 프레임에 바로 후속한다. 방법 M300 의 다른 애플리케이션에서, 제 2 및 제 3 프레임은, 비활성 프레임 또는 연속하는 일련의 2개 이상의 비활성 프레임들에 의해 스피치 신호에서 분리될 수도 있다. 방법 M300 의 또 다른 애플리케이션에서, 제 3 프레임은 제 2 프레임이 아닌 스피치 신호의 임의의 비활성 프레임일 수도 있다. 방법 M300 의 또 다른 일반적인 애플리케이션에서, 제 2 프레임은 활성 또는 비활성일 수도 있다. 방법 M300 의 또 다른 일반적인 애플리케이션에서, 제 2 프레임은 활성 또는 비활성일 수도 있고, 제 3 프레임은 활성 또는 비활성일 수도 있다. 도 18c는, 상술된 바와 같이, 태스크들 (T120 및 T130) 이 각각 태스크들 (T122 및 T132) 로서 구현되는 방법 M300 의 일 구현 M310 의 애플리케이션을 도시한다. 방법 M300 의 또 다른 구현에서, 태스크 (T120) 는 여기에 설명된 바와 같이 태스크 (T124) 로서 구현된다. 제 3 인코딩된 프레임이 제 2 주파수 대역에 걸친 스펙트럼 포락선의 임의의 디스크립션을 포함하지 않도록 태스크 (T132) 를 구성하는 것이 바람직할 수도 있다.
도 19a는, 여기에 설명된 바와 같은 방법 M100 의 일 구현 및/또는 여기에 설명된 바와 같은 방법 M300 의 일 구현을 포함하는 스피치 인코딩 방법을 수행하도록 구성된 장치 (100) 의 블록도를 도시한다. 장치 (100) 는, 스피치 활성도 검출기 (110), 코딩 방식 선택기 (120), 및 스피치 인코더 (130) 를 포함한다. 스피치 활성도 검출기 (110) 는, 스피치 신호의 프레임들을 수신하고, 인코딩될 각각의 프레임에 대해 그 프레임이 활성 또는 비활성인지의 여부를 나타내도록 구성 된다. 코딩 방식 선택기 (120) 는, 스피치 활성도 검출기 (110) 의 표시에 응답하여, 인코딩될 각각의 프레임에 대해 코딩 방식을 선택하도록 구성된다. 스피치 인코더 (130) 는, 선택된 코딩 방식에 따라, 스피치 신호의 프레임들에 기초한 인코딩된 프레임들을 생성하도록 구성된다. 장치 (100) 를 포함하는 셀룰러 전화기와 같은 통신 디바이스는, 그 인코딩된 프레임들을 유선, 무선, 또는 광 송신 채널로 송신하기 전에, 에러-정정 및/또는 리던던시 코딩과 같은 추가적인 프로세싱 동작들을 그 인코딩된 프레임들에 대해 수행하도록 구성될 수도 있다.
스피치 활성도 검출기 (110) 는, 인코딩될 각각의 프레임이 활성 또는 비활성인지의 여부를 나타내도록 구성된다. 이러한 표시는 바이너리 신호일 수도 있으며, 그 신호의 일 상태는 프레임이 활성이라는 것을 나타내고 다른 상태는 프레임이 비활성이라는 것을 나타낸다. 다른 방법으로, 그 표시는 3개 이상의 상태를 갖는 신호일 수도 있으며, 그 신호는 활성 및/또는 비활성 프레임의 2개 이상의 타입을 나타낼 수도 있다. 예를 들어, 활성 프레임이 음성 또는 묵음인지의 여부를 나타내거나, 전이형, 음성형, 또는 묵음형으로 활성 프레임을 분류하거나, 심지어 가능하다면 업-과도형 (up-transient) 또는 다운-과도형 (down-transient) 으로서 전이 프레임들을 분류하도록 검출기 (110) 를 구성하는 것이 바람직할 수도 있다. 코딩 방식 선택기 (120) 의 대응하는 구현은, 이들 표시들에 응답하여, 인코딩될 각각의 프레임에 대해 코딩 방식을 선택하도록 구성된다.
스피치 활성도 검출기 (110) 는, 에너지, 신호-대-잡음비, 주기성, 제로-크로싱 레이트, (예를 들어, 하나 이상의 LSF, LSP, 및/또는 반사 계수를 사용하여 평가되는) 스펙트럼 분포 등과 같은 프레임의 하나 이상의 특성들에 기초하여 그 프레임이 활성 또는 비활성인지의 여부를 나타내도록 구성될 수도 있다. 그 표시를 생성하기 위해, 검출기 (110) 는 그러한 특성들 중 하나 이상의 특성들 각각에 대해, 그러한 특성의 크기 또는 값을 임계값과 비교하는 것 및/또는 그러한 특성의 크기 또는 값에서의 변화의 크기를 임계값과 비교하는 것과 같은 동작을 수행하도록 구성될 수도 있으며, 여기서, 그 임계값은 고정 또는 적응성일 수도 있다.
스피치 활성도 검출기 (110) 의 일 구현은, 현재 프레임의 에너지를 평가하고, 그 에너지 값이 임계값보다 작은 (다른 방법으로, 크기 않은) 경우 프레임이 비활성이라는 것을 나타내도록 구성될 수도 있다. 그러한 검출기는, 프레임 샘플들의 제곱의 합으로서 프레임 에너지를 계산하도록 구성될 수도 있다. 스피치 활성도 검출기 (110) 의 또 다른 구현은, 저-주파수 대역 및 고-주파수 대역 각각에서 현재 프레임의 에너지를 평가하고, 각각의 대역에 대한 에너지 값이 각각의 임계값보다 작은 (다른 방법으로, 크지 않은) 경우 그 프레임이 비활성이라는 것을 나타내도록 구성된다. 그러한 검출기는, 대역통과 필터를 그 프레임에 적용하고 필터링된 프레임의 샘플들의 제곱의 합을 계산함으로써, 일 대역에서 프레임 에너지를 계산하도록 구성될 수도 있다.
상술된 바와 같이, 스피치 활성도 검출기 (110) 의 일 구현은 하나 이상의 임계값들을 사용하도록 구성될 수도 있다. 이들 값들의 각각은 고정 또는 적응성일 수도 있다. 적응성 임계값은, 프레임 또는 대역의 잡음 레벨, 프레임 또는 대역의 신호-대-잡음비, 원하는 인코딩 레이트 등과 같은 하나 이상의 인자들에 기초할 수도 있다. 일 예에서, 저-주파수 대역 (예를 들어, 300Hz 내지 2kHz) 및 고-주파수 대역 (예를 들어, 2kHz 내지 4kHz) 각각에 대해 사용되는 임계값들은, 이전 프레임에 대한 그 대역에서의 배경 잡음 레벨의 추정치, 이전 프레임에 대한 그 대역에서의 신호-대-잡음비, 및 원하는 평균 데이터 레이트에 기초한다.
코딩 방식 선택기 (120) 는, 스피치 활성도 검출기 (110) 의 표시들에 응답하여, 인코딩될 각각의 프레임에 대해 코딩 방식을 선택하도록 구성된다. 그 코딩 방식 선택은, 현재의 프레임에 대한 스피치 활성도 검출기 (110) 로부터의 표시 및/또는 하나 이상의 이전 프레임들 각각에 대한 스피치 활성도 검출기 (110) 로부터의 표시에 기초할 수도 있다. 몇몇 경우, 코딩 방식 선택은, 하나 이상의 후속 프레임들 각각에 대한 스피치 활성도 검출기 (110) 로부터의 표시에 또한 기초한다.
도 20a는, 도 10a에 도시된 바와 같은 결과를 획득하기 위하여 코딩 방식 선택기 (120) 의 일 구현에 의해 수행될 수도 있는 테스트들의 흐름도를 도시한다. 이러한 예에서, 선택기 (120) 는, 음성 프레임들에 대해 더 높은-레이트 코딩 방식 1, 비활성 프레임들에 대해 더 낮은-레이트 코딩 방식 3, 및 묵음 프레임들 및 활성 프레임들로부터 비활성 프레임들로의 전이 이후의 제 1 비활성 프레임에 대해 중간-레이트 코딩 방식 2를 선택하도록 구성된다. 그러한 애플리케이션에서, 코딩 방식 1 내지 3은 도 18a에 도시된 3개의 방식과 일치할 수도 있다.
코딩 방식 선택기 (120) 의 또 다른 구현은, 동등한 결과를 획득하기 위해 도 20b의 상태도에 따라 동작하도록 구성될 수도 있다. 이러한 도면에서, 라벨 "A" 는 활성 프레임에 응답한 상태 전이를 나타내고, 라벨 "I" 는 비활성 프레임에 응답한 상태 전이를 나타내며, 다양한 상태들의 라벨들은 현재의 프레임에 대해 선택된 코딩 방식을 나타낸다. 이러한 경우, 상태 라벨 "방식 1/2" 는, 현재의 활성 프레임이 음성 또는 묵음인지의 여부에 의존하여, 코딩 방식 1 또는 코딩 방식 2 중 어느 하나가 그 현재의 활성 프레임에 대해 선택된다는 것을 나타낸다. 또 다른 구현에서, 코딩 방식 선택기가 활성 프레임들에 대해 하나의 코딩 방식 (예를 들어, 코딩 방식 1) 만을 지원하도록 이러한 상태가 구성될 수도 있다는 것을 당업자는 인식할 것이다. 또 다른 구현에서, 이러한 상태는, 코딩 방식 선택기가 활성 프레임들에 대한 3개 이상의 상이한 코딩 방식들 중에서 선택 (예를 들어, 음성, 묵음, 및 전이 프레임들에 대해 상이한 코딩 방식들을 선택) 하도록 구성될 수도 있다.
도 12b를 참조하여 상술된 바와 같이, 가장 최근의 활성 프레임이 적어도 최소의 길이를 갖는 토크 스퍼트의 일부인 경우에만 스피치 인코더가 비활성 프레임을 더 높은 비트 레이트 r2 로 인코딩하는 것이 바람직할 수도 있다. 코딩 방식 선택기 (120) 의 일 구현은, 도 12b에 도시된 바와 같은 결과를 획득하기 위해 도 21a의 상태도에 따라 동작하도록 구성될 수도 있다. 이러한 특정 예에서, 선택기는, 적어도 3개의 프레임들의 길이를 갖는 연속하는 활성 프레임들의 스트링에 비활성 프레임이 바로 후속할 경우에만 그 비활성 프레임에 대해 코딩 방식 2를 선택하도록 구성된다. 이러한 경우, 상태 라벨 "방식 1/2" 는, 현재의 활성 프레임이 음성 또는 묵음인지의 여부에 의존하여, 코딩 방식 1 또는 코딩 방식 2 중 어느 하나가 그 현재의 활성 프레임에 대해 선택된다는 것을 나타낸다. 또 다른 구현에서, 코딩 방식 선택기가 활성 프레임들에 대해 하나의 코딩 방식 (예를 들어, 코딩 방식 1) 만을 지원하도록 이들 상태들이 구성될 수도 있다는 것을 당업자는 인식할 것이다. 또 다른 구현에서, 이들 상태들은, 코딩 방식 선택기가 활성 프레임들에 대한 3개 이상의 상이한 코딩 방식들 중에서 선택 (예를 들어, 음성, 묵음, 및 전이 프레임들에 대해 상이한 코딩 방식들을 선택) 하도록 구성될 수도 있다.
도 10b 및 도 12a를 참조하여 상술된 바와 같이, 스피치 인코더가 행오버를 적용하는 것이 (즉, 활성 프레임들로부터 비활성 프레임들로의 전이 이후 하나 이상의 비활성 프레임들에 대한 더 높은 비트 레이트의 사용을 계속하는 것이) 바람직할 수도 있다. 코딩 방식 선택기 (120) 의 일 구현은 3개의 프레임들의 길이를 갖는 행오버를 적용하기 위해 도 21b의 상태도에 따라 동작하도록 구성될 수도 있다. 이러한 도면에서, 가장 최근의 활성 프레임에 대해 선택된 방식에 의존하여, 코딩 방식 1 또는 코딩 방식 2 중 어느 하나가 현재의 비활성 프레임에 대해 표시된다는 것을 나타내기 위해 행오버 상태들이 "방식 1(2)" 로 라벨링된다. 또 다른 구현에서, 코딩 방식 선택기가 활성 프레임들에 대해 하나의 코딩 방식 (예를 들어, 코딩 방식 1) 만을 지원할 수도 있다는 것을 당업자는 인식할 것이다. 또 다른 구현에서, 행오버 상태들은 (예를 들어, 상이한 방식들이 음성, 묵음, 및 전이 프레임들에 대해 지원되는 경우에 있어서) 3개 이상의 상이한 코딩 방식들 중 하나를 계속 나타내도록 구성될 수도 있다. 또 다른 구현에서, 행오버 상태 들 중 하나 이상의 상태들은, 상이한 방식 (예를 들어, 방식 2) 이 가장 최근의 활성 프레임에 대해 선택되었더라도 고정된 상태 (예를 들어, 방식 1) 를 나타내도록 구성될 수도 있다.
도 11b 및 도 12a를 참조하여 상술된 바와 같이, 스피치 인코더가 스피치 신호의 2개 이상의 비활성 프레임에 걸쳐 평균화된 정보에 기초하여 제 2 인코딩된 프레임을 생성하는 것이 바람직할 수도 있다. 코딩 방식 선택기 (120) 의 일 구현은, 그러한 결과를 지원하기 위해 도 21c의 상태도에 따라 동작하도록 구성될 수도 있다. 이러한 특정 예에서, 선택기는 인코더로 하여금 3개의 비활성 프레임들에 걸쳐 평균화된 정보에 기초하여 제 2 인코딩된 프레임을 생성하게 하도록 구성된다. "방식 2 (시작 avg)" 로 라벨링된 상태는, 현재의 프레임이 방식 2로 인코딩되고, 또한, 신규한 평균 (예를 들어, 스펙트럼 포락선의 디스크립션 평균) 을 계산하는데 사용된다는 것을 인코더에게 나타낸다. "방식 2 (for avg)" 로 라벨링된 상태는, 현재의 프레임이 방식 2로 인코딩되고, 또한, 평균을 계속 계산하는데 사용된다는 것을 인코더에게 나타낸다. "전송 avg, 방식 2" 로 라벨링된 상태는, 현재의 프레임이 평균을 완료하는데 사용되고, 그 후, 그 평균은 방식 2를 사용하여 전송된다는 것을 인코더에게 나타낸다. 코딩 방식 선택기 (120) 의 또 다른 구현이 상이한 방식 할당을 사용하고 및/또는 상이한 수의 비활성 프레임들에 걸친 정보의 평균화를 나타내도록 구성될 수도 있다.
도 19b는, 스펙트럼 포락선 디스크립션 계산기 (140), 시간 정보 디스크립션 계산기 (150), 및 포매터 (formatter; 160) 를 포함하는 스피치 인코더 (130) 의 일 구현 (132) 의 블록도를 도시한다. 스펙트럼 포락선 디스크립션 계산기 (140) 는 인코딩될 각각의 프레임에 대한 스펙트럼 포락선의 디스크립션을 계산하도록 구성된다. 시간 정보 디스크립션 계산기 (150) 는 인코딩될 각각의 프레임에 대한 시간 정보의 디스크립션을 계산하도록 구성된다. 포매터 (160) 는, 스펙트럼 포락선의 계산된 디스크립션 및 시간 정보의 계산된 디스크립션을 포함하는 인코딩된 프레임을 생성하도록 구성된다. 포매터 (160) 는, 가급적 상이한 코딩 방식들에 대해 상이한 포맷들을 사용하여, 원하는 패킷 포맷에 따라 그 인코딩된 프레임을 생성하도록 구성될 수도 있다. 포매터 (160) 는, 프레임이 인코딩되는 코딩 방식, 또는 코딩 레이트 또는 모드를 식별하는 하나 이상의 비트의 세트 (또한, "코딩 인덱스" 로 지칭됨) 와 같은 부가적인 정보를 포함할 인코딩된 프레임을 생성하도록 구성될 수도 있다.
스펙트럼 포락선 디스크립션 계산기 (140) 는, 코딩 방식 선택기 (120) 에 의해 표시되는 코딩 방식에 따라, 코딩될 각각의 프레임에 대한 스펙트럼 포락선의 디스크립션을 계산하도록 구성된다. 그 디스크립션은 현재의 프레임에 기초하며, 또한, 하나 이상의 다른 프레임들의 적어도 일부에 기초할 수도 있다. 예를 들어, 계산기 (140) 는 하나 이상의 인접 프레임들로 확장하는 윈도우를 적용하고 및/또는 2개 이상의 프레임들의 디스크립션들 (예를 들어, LSP 벡터들의 평균) 의 평균을 계산하도록 구성될 수도 있다.
계산기 (140) 는, LPC 분석과 같은 스펙트럼 분석을 수행함으로써 프레임에 대한 스펙트럼 포락선의 디스크립션을 계산하도록 구성될 수도 있다. 도 19c는 LPC 분석 모듈 (170), 변환 블록 (180), 및 양자화기 (190) 를 포함하는 스펙트럼 포락선 디스크립션 계산기 (140) 의 일 구현 (142) 의 블록도를 도시한다. 분석 모듈 (170) 은 프레임의 LPC 분석을 수행하고 모델 파라미터들의 대응하는 세트를 생성하도록 구성된다. 예를 들어, 분석 모듈 (170) 은, 필터 계수들 또는 반사 계수들과 같은 LPC 계수들의 벡터를 생성하도록 구성될 수도 있다. 분석 모듈 (170) 은, 하나 이상의 이웃 프레임들의 일부를 포함하는 윈도우에 걸쳐 분석을 수행하도록 구성될 수도 있다. 몇몇 경우, 분석 모듈 (170) 은, 분석의 차수 (예를 들어, 계수 벡터에서의 엘리먼트들의 수) 가 코딩 방식 선택기 (120) 에 의해 표시되는 코딩 방식에 따라 선택되도록 구성된다.
변환 블록 (180) 은, 양자화에 더 효율적인 형태로 모델 파라미터들의 세트를 변환하도록 구성된다. 예를 들어, 변환 블록 (180) 은 LPC 계수 벡터를 LSP 의 세트로 변환하도록 구성될 수도 있다. 몇몇 경우, 변환 블록 (180) 은, 코딩 방식 선택기 (120) 에 의해 표시되는 코딩 방식에 따라 특정 형태로 LPC 계수들의 세트를 변환하도록 구성된다.
양자화기 (190) 는, 모델 파라미터들의 변환된 세트를 양자화함으로써 양자화된 형태로 스펙트럼 포락선의 디스크립션을 생성하도록 구성된다. 양자화기 (190) 는, 변환된 세트의 엘리먼트들의 끝을 절단시키고 및/또는 변환된 세트를 나타내는 하나 이상의 양자화 테이블 인덱스를 선택함으로써, 변환된 세트를 양자화하도록 구성될 수도 있다. 몇몇 경우, 양자화기 (190) 는, (예를 들어, 도 18a를 참조하여 상술된 바와 같이) 코딩 방식 선택기 (120) 에 의해 표시된 코딩 방식 에 따라 특정 형태 및/또는 길이로 변환된 세트를 양자화하도록 구성된다.
시간 정보 디스크립션 계산기 (150) 는 프레임의 시간 정보의 디스크립션을 계산하도록 구성된다. 또한, 그 디스크립션은 하나 이상의 다른 프레임들의 적어도 일부의 시간 정보에 기초할 수도 있다. 예를 들어, 계산기 (150) 는 하나 이상의 인접 프레임들로 확장하는 윈도우에 걸쳐 디스크립션을 계산하고 및/또는 2개 이상의 프레임들의 디스크립션 평균을 계산하도록 구성될 수도 있다.
시간 정보 디스크립션 계산기 (150) 는, 코딩 방식 선택기 (120) 에 의해 표시되는 코딩 방식에 따라 특정 형태 및/또는 길이를 갖는 시간 정보의 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 계산기 (150) 는, (A) 프레임의 시간 포락선 및 (B) 피치 컴포넌트 (예를 들어, 피치 래그 (lag) (또한 딜레이로 지칭됨), 피치 이득, 및/또는 프로토타입의 디스크립션) 의 디스크립션을 포함할 수도 있는 프레임의 여기 신호 중 하나 또는 양자를 포함하는 시간 정보의 디스크립션을, 선택된 코딩 방식에 따라 계산하도록 구성될 수도 있다.
계산기 (150) 는, 프레임의 시간 포락선 (예를 들어, 이득 프레임 값 및/또는 이득 쉐이프 값) 을 포함하는 시간 정보의 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 계산기 (150) 는, NELP 코딩 방식의 표시에 응답하여 그러한 디스크립션을 출력하도록 구성될 수도 있다. 여기에 설명된 바와 같이, 그러한 디스크립션을 계산하는 것은, 프레임 또는 서브프레임에 걸쳐 신호 에너지를 신호 샘플들의 제곱의 합으로서 계산하는 것, 다른 프레임들 및/또는 서브프레임들의 일부를 포함하는 윈도우에 걸쳐 신호 에너지를 계산하는 것, 및/또는 계산 된 시간 포락선을 양자화하는 것을 포함할 수도 있다.
계산기 (150) 는, 프레임의 피치 또는 주기성에 관한 정보를 포함하는 프레임의 시간 정보의 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 계산기 (150) 는, CELP 코딩 방식의 표시에 응답하여 피치 래그 및/또는 피치 이득과 같은 프레임의 피치 정보를 포함한 디스크립션을 출력하도록 구성될 수도 있다. 다른 방법으로 또는 부가적으로, 계산기 (150) 는, PPP 코딩 방식의 표시에 응답하여 주기적인 파형 (또한, "프로토타입" 으로 지칭됨) 을 포함한 디스크립션을 출력하도록 구성될 수도 있다. 통상적으로, 피치 및/또는 프로토타입 정보를 계산하는 것은 LPC 나머지로부터 그러한 정보를 추출하는 것을 포함하며, 또한, 하나 이상의 이전 프레임들로부터의 그러한 정보와 현재의 프레임으로부터의 피치 및/또는 프로토타입 정보를 결합하는 것을 포함할 수도 있다. 또한, 계산기 (150) 는 시간 정보의 그러한 디스크립션을 (예를 들어, 하나 이상의 테이블 인덱스로서) 양자화하도록 구성될 수도 있다.
계산기 (150) 는, 여기 신호를 포함하는 프레임의 시간 정보의 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 계산기 (150) 는, CELP 코딩 방식의 표시에 응답하여 여기 신호를 포함하는 디스크립션을 출력하도록 구성될 수도 있다. 통상적으로, 여기 신호를 계산하는 것은 LPC 나머지로부터 그러한 신호를 유도하는 것을 포함하며, 또한, 하나 이상의 이전 프레임들로부터의 그러한 정보와 현재의 프레임으로부터의 여기 정보를 결합하는 것을 포함할 수도 있다. 또한, 계산기 (150) 는 시간 정보의 그러한 디스크립션을 (예를 들어, 하나 이상의 테이 블 인덱스로서) 양자화하도록 구성될 수도 있다. 스피치 인코더 (132) 가 완화된 CELP (RCELP) 코딩 방식을 지원하는 경우에 있어서, 계산기 (150) 는 여기 신호를 규칙화하도록 구성될 수도 있다.
도 22a는, 시간 정보 디스크립션 계산기 (150) 의 일 구현 (152) 을 포함하는 스피치 인코더 (132) 의 일 구현 (134) 의 블록도를 도시한다. 계산기 (152) 는, 스펙트럼 포락선 디스크립션 계산기 (140) 에 의해 계산된 바와 같은 프레임의 스펙트럼 포락선의 디스크립션에 기초한 프레임에 대한 시간 정보 (예를 들어, 여기 신호, 피치 및/또는 프로토타입 정보) 의 디스크립션을 계산하도록 구성된다.
도 22b는, 프레임에 대한 LPC 나머지에 기초하여 시간 정보의 디스크립션을 계산하도록 구성되는 시간 정보 디스크립션 계산기 (152) 의 일 구현 (154) 의 블록도를 도시한다. 이러한 예에서, 계산기 (154) 는, 스펙트럼 포락선 디스크립션 계산기 (142) 에 의해 계산되는 바와 같은 프레임의 스펙트럼 포락선의 디스크립션을 수신하도록 배열된다. 역양자화기 (A10) 는 그 디스크립션을 역양자화하도록 구성되고, 역변환 블록 (A20) 은 그 역양자화된 디스크립션에 역변환을 적용하여 LPC 계수들의 세트를 획득하도록 구성된다. 백색화 필터 (whitening filter; A30) 는 그 LPC 계수들의 세트에 따라 구성되며, 스피치 신호를 필터링하여 LPC 나머지를 생성하도록 배열된다. 양자화기 (A40) 는, LPC 나머지에 기초하고, 프레임에 대한 피치 정보 및/또는 하나 이상의 이전 프레임들로부터의 시간 정보에 가급적 기초한 프레임에 대한 시간 정보의 디스크립션을 (예를 들어, 하나 이상의 테이블 인덱스로서) 양자화하도록 구성된다.
스플릿트-대역 코딩 방식에 따라 광대역 스피치 신호의 프레임들을 인코딩하기 위해 스피치 인코더 (132) 의 일 구현을 사용하는 것이 바람직할 수도 있다. 그러한 경우, 스펙트럼 포락선 디스크립션 계산기 (140) 는, 가급적 상이한 코딩 모드 및/또는 레이트에 따라 각각의 주파수 대역들에 걸친 프레임의 스펙트럼 포락선들의 다양한 디스크립션들을 직렬로 및/또는 병렬로 계산하도록 구성될 수도 있다. 또한, 시간 정보 디스크립션 계산기 (150) 는, 가급적 상이한 코딩 모드 및/또는 레이트에 따라 다양한 주파수 대역들에 걸친 프레임의 시간 정보의 디스크립션들을 직렬로 및/또는 병렬로 계산하도록 구성될 수도 있다.
도 23a는, 스플릿트-대역 코딩 방식에 따라 광대역 스피치 신호를 인코딩하도록 구성되는 장치 (100) 의 일 구현 (102) 의 블록도를 도시한다. 장치 (102) 는, 제 1 주파수 대역에 걸친 스피치 신호의 콘텐츠를 포함하는 서브대역 신호 (예를 들어, 협대역 신호) 및 제 2 주파수 대역에 걸친 스피치 신호의 콘텐츠를 포함하는 서브대역 신호 (예를 들어, 고대역 신호) 를 생성하기 위해 스피치 신호를 필터링하도록 구성된 필터 뱅크 (A50) 를 포함한다. 그러한 필터 뱅크들의 특정 예는, 명칭이 "SYSTEMS, METHODS, AND APPARATUS FOR SPEECH SIGNAL FILTERING" 인 2007년 4월 19일자로 공개된 미국 특허 출원 공개 공보 제 2007/088558 호 (Vos 등) 에 설명되어 있다. 예를 들어, 필터 뱅크 (A50) 는, 협대역 신호를 생성하기 위해 스피치 신호를 필터링하도록 구성된 저대역 통과 필터, 및 고대역 신호를 생성하기 위해 스피치 신호를 필터링하도록 구성된 고대역 통과 필터를 포함할 수도 있다. 또한, 필터 뱅크 (A50) 는, 예를 들어, 미국 특허 출원 공개 공보 제 2007/088558 호 (Vos 등) 에 설명된 바와 같이, 원하는 각각의 데시메이션 (decimation) 인자에 따라 협대역 신호 및/또는 고대역 신호의 샘플링 레이트를 감소시키도록 구성된 다운샘플러를 포함할 수도 있다. 또한, 장치 (102) 는, 명칭이 "SYSTEMS, METHODS, AND APPARATUS FOR HIGHBAND BURST SUPPRESSION" 인 2007년 4월 19일자로 공개된 미국 특허 출원 공개 공보 제 2007/088541 호 (Vos 등) 에 설명된 바와 같은 고대역 버스트 억제 동작과 같이, 적어도 고대역 신호에 대한 잡음 억제 동작을 수행하도록 구성될 수도 있다.
또한, 장치 (102) 는, 코딩 방식 선택기 (120) 에 의해 선택된 코딩 방식에 따라 별개의 서브대역 신호들을 인코딩하도록 구성된 스피치 인코더 (130) 의 일 구현 (136) 을 포함한다. 도 23b는 스피치 인코더 (136) 의 일 구현 (138) 의 블록도를 도시한다. 인코더 (138) 는, 선택된 코딩 방식에 따라 필터 뱅크 (A50) 에 의해 생성된 협대역 신호에 기초하여, 각각, 스펙트럼 포락선의 디스크립션 및 시간 정보의 디스크립션을 계산하도록 구성된 스펙트럼 포락선 계산기 (140a; 예를 들어, 계산기 (142) 의 일 예) 및 시간 정보 계산기 (150a; 예를 들어, 계산기 (152 또는 154) 의 일 예) 를 포함한다. 또한, 인코더 (138) 는, 선택된 코딩 방식에 따라 필터 뱅크 (A50) 에 의해 생성된 고대역 신호에 기초하여, 각각, 스펙트럼 포락선의 디스크립션 및 시간 정보의 디스크립션을 생성하도록 구성된 스펙트럼 포락선 계산기 (140b; 예를 들어, 계산기 (142) 의 일 예) 및 시간 정보 계산기 (150b; 예를 들어, 계산기 (152 또는 154) 의 일 예) 를 포함한다. 또한, 인코더 (138) 는, 스펙트럼 포락선 및 시간 정보의 계산된 디스크립션들을 포함하는 인코딩된 프레임을 생성하도록 구성되는 포매터 (160) 의 일 구현 (162) 을 포함한다.
상술된 바와 같이, 광대역 스피치 신호의 고대역 부분에 대한 시간 정보의 디스크립션은, 그 신호의 협대역 부분에 대한 시간 정보의 디스크립션에 기초할 수도 있다. 도 24a는 광대역 스피치 인코더 (136) 의 대응하는 구현 (139) 의 블록도를 도시한다. 상술된 스피치 인코더 (138) 와 유사하게, 인코더 (139) 는 스펙트럼 포락선들의 각각의 디스크립션들을 계산하도록 배열된 스펙트럼 포락선 디스크립션 계산기들 (140a 및 140b) 을 포함한다. 또한, 스피치 인코더 (139) 는, 협대역 신호에 대한 스펙트럼 포락선의 계산된 디스크립션에 기초하여 시간 정보의 디스크립션을 계산하도록 배열된 시간 정보 디스크립션 계산기 (152) 의 일 예 (152a; 예를 들어, 계산기 (154)) 를 포함한다. 또한, 스피치 인코더 (139) 는 시간 정보 디스크립션 계산기 (150) 의 일 구현 (156) 을 포함한다. 계산기 (156) 는, 협대역 신호에 대한 시간 정보의 디스크립션에 기초한 고대역 신호에 대한 시간 정보의 디스크립션을 계산하도록 구성된다.
도 24b는 시간 디스크립션 계산기 (156) 의 일 구현 (158) 의 블록도를 도시한다. 계산기 (158) 는, 계산기 (152a) 에 의해 생성된 바와 같은 협대역 여기 신호에 기초하여 고대역 여기 신호를 생성하도록 구성되는 고대역 여기 신호 생성기 (A60) 를 포함한다. 예를 들어, 생성기 (A60) 는, 협대역 여기 신호 (또는 그의 하나 이상의 컴포넌트들) 에 대한 스펙트럼 확장, 하모닉 (harmonic) 확장, 비선형 확장, 스펙트럼 폴딩 (folding), 및/또는 스펙트럼 변환과 같은 동작을 수행하여 고대역 여기 신호를 생성하도록 구성될 수도 있다. 부가적으로 또는 다른 방법으로, 생성기 (A60) 는, 랜덤 잡음 (예를 들어, 의사랜덤 가우시안 잡음 신호) 의 스펙트럼 및/또는 진폭 쉐이핑을 수행하여 고대역 여기 신호를 생성하도록 구성될 수도 있다. 생성기 (A60) 가 의사랜덤 잡음 신호를 사용하는 경우에 있어서, 인코더 및 디코더에 의한 이러한 신호의 생성을 동기화시키는 것이 바람직할 수도 있다. 예를 들어, 고대역 여기 신호 생성을 위한 그러한 방법 및 장치는, 명칭이 "SYSTEMS, METHODS, AND APPARATUS FOR WIDEBAND SPEECH CODING" 이고 2007년 4월 19일자로 공개된 미국 특허 출원 공개 공보 제 2007/0088542 호 (Vos 등) 에 상세히 설명되어 있다. 도 24b의 예에서, 생성기 (A60) 는 양자화된 협대역 여기 신호를 수신하도록 배열된다. 또 다른 예에서, 생성기 (A60) 는 또 다른 형태 (예를 들어, 사전-양자화된 또는 역양자화된 형태) 로 협대역 여기 신호를 수신하도록 배열된다.
또한, 계산기 (158) 는, (예를 들어, 계산기 (140b) 에 의해 생성된 바와 같은) 고대역 신호의 스펙트럼 포락선의 디스크립션 및 고대역 여기 신호에 기초한 동기화된 고대역 신호를 생성하도록 구성된 합성 필터 (A70) 를 포함한다. 통상적으로, 필터 (A70) 는, 고대역 여기 신호에 응답하여 합성된 고대역 신호를 생성하기 위해 고대역 신호의 스펙트럼 포락선의 디스크립션내의 값들의 세트 (예를 들어, 하나 이상의 LSP 또는 LPC 계수 벡터들) 에 따라 구성된다. 도 24b의 예에서, 합성 필터 (A70) 는 고대역 신호의 스펙트럼 포락선의 양자화된 디스크립션 을 수신하도록 배열되며, 따라서, 역양자화기 및 가급적 역변환 블록을 포함하도록 구성될 수도 있다. 또 다른 예에서, 필터 (A70) 는 또 다른 형태 (예를 들어, 사전-양자화 또는 역양자화된 형태) 로 고대역 신호의 스펙트럼 포락선의 디스크립션을 수신하도록 배열된다.
또한, 계산기 (150) 는, 합성된 고대역 신호의 시간 포락선에 기초하여 고대역 신호의 시간 포락선의 디스크립션을 계산하도록 구성된 고대역 이득 인자 계산기 (A80) 를 포함한다. 계산기 (A80) 는, 고대역 신호의 시간 포락선과 합성된 고대역 신호의 시간 포락선 사이의 하나 이상의 거리를 포함할 이러한 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 계산기 (A80) 는 이득 프레임 값 (예를 들어, 2개의 신호들의 대응하는 프레임들의 에너지 측정치들 사이의 비율, 또는 그러한 비율의 제곱근) 으로서 그러한 거리를 계산하도록 구성될 수도 있다. 부가적으로 또는 다른 방법으로, 계산기 (A80) 는 이득 쉐이프 값들 (예를 들어, 2개의 신호들의 대응하는 서브프레임들의 에너지 측정치들 사이의 비율들, 또는 그러한 비율들의 제곱근들) 로서 다수의 그러한 거리들을 계산하도록 구성될 수도 있다. 도 24b의 예에서, 계산기 (158) 는 시간 포락선의 계산된 디스크립션을 (예를 들어, 하나 이상의 코드북 인덱스로서) 양자화하도록 구성된 양자화기 (A90) 를 또한 포함한다. 예를 들어, 계산기 (158) 의 엘리먼트들의 다양한 특성들 및 구현들은, 상술된 미국 특허 출원 공개 공보 제 2007/0088542 호 (Vos 등) 에 설명되어 있다.
장치 (100) 의 구현의 다양한 엘리먼트들은, 하드웨어, 소프트웨어, 및/또는 의도된 애플리케이션에 적합하다고 생각되는 펌웨어의 임의의 조합으로 구현될 수도 있다. 예를 들어, 그러한 엘리먼트들은, 예를 들어, 칩셋에서의 동일한 칩 또는 2개 이상의 칩들 사이에 상주하는 전자 및/또는 광 디바이스로서 제조될 수도 있다. 그러한 디바이스의 일 예는 트랜지스터 또는 로직 게이트와 같은 로직 엘리먼트들의 프로그래밍가능한 또는 고정형 어레이이며, 이들 엘리먼트들 중 임의의 엘리먼트는 하나 이상의 그러한 어레이들로서 구현될 수도 있다. 이들 엘리먼트들 중 임의의 2개 이상의 엘리먼트 또는 심지어 모든 엘리먼트는 동일한 어레이 또는 어레이들내에서 구현될 수도 있다. 그러한 어레이 또는 어레이들은, 하나 이상의 칩들 (예를 들어, 2개 이상의 칩들을 포함하는 칩셋) 내에 구현될 수도 있다.
또한 여기에 설명된 바와 같은 장치 (100) 의 다양한 구현들의 하나 이상의 엘리먼트들은, 마이크로프로세서, 임베디드 프로세서, IP 코어, 디지털 신호 프로세서, FPGA (field-programmable gate array), ASSP (application-specific standard product), 및 ASIC (application-specific integrated circuit) 와 같은 로직 엘리먼트들의 하나 이상의 고정형 또는 프로그래밍가능한 어레이 상에서 실행하도록 배열되는 명령어들의 하나 이상의 세트로서 일부 또는 전부 구현될 수도 있다. 또한, 장치 (100) 의 일 구현의 다양한 엘리먼트들 중 임의의 엘리먼트는 하나 이상의 컴퓨터들 (예를 들어, 명령어들의 하나 이상의 세트 또는 시퀀스를 실행하도록 프로그래밍되는 하나 이상의 어레이들을 포함하며, 또한, "프로세서" 로서 지칭되는 머신들) 로서 구현될 수도 있으며, 이들 엘리먼트들 중 임의의 2개 이 상의 엘리먼트 또는 심지어 모든 엘리먼트는 동일한 그 컴퓨터 또는 컴퓨터들내에 구현될 수도 있다.
장치 (100) 의 일 구현의 다양한 엘리먼트들은, 셀룰러 전화기 또는 그러한 통신 능력을 갖는 다른 디바이스와 같은 무선 통신용 디바이스내에 포함될 수도 있다. 그러한 디바이스는, 서킷-스위칭 및/또는 (예를 들어, VoIP와 같은 하나 이상의 프로토콜을 사용하여) 패킷-스위칭 네트워크와 통신하도록 구성될 수도 있다. 그러한 디바이스는, 인터리빙, 펑처링, 콘볼루션 코딩, 에러 정정 코딩, 네트워크 프로토콜 (예를 들어, 이더넷, TCP/IP, cdma2000) 의 하나 이상의 레이어들의 코딩, 무선-주파수 (RF) 변조, 및/또는 RF 송신과 같은, 인코딩된 프레임들을 운반하는 신호에 대해 동작들을 수행하도록 구성될 수도 있다.
장치 (100) 의 일 구현의 하나 이상의 엘리먼트들이, 그 장치가 포함된 디바이스 또는 시스템의 또 다른 동작에 관한 태스크와 같이, 그 장치의 동작에 직접 관련되지 않은 명령어들의 다른 세트를 실행하거나 태스크를 수행하는데 사용되는 것이 가능하다. 또한, 장치 (100) 의 일 구현의 하나 이상의 엘리먼트들이 공통적인 구조 (예를 들어, 상이한 시간에 상이한 엘리먼트들에 대응하는 코드의 일부를 실행하는데 사용되는 프로세서, 상이한 시간에 상이한 엘리먼트들에 대응하는 태스크를 수행하도록 실행되는 명령어들의 세트, 또는 상이한 시간에 상이한 엘리먼트들에 대해 동작들을 수행하는 전자 및/또는 광 디바이스들의 배열) 를 갖는 것이 가능하다. 그러한 일 예에서, 스피치 활성도 검출기 (110), 코딩 방식 선택기 (120), 및 스피치 인코더 (130) 는 동일한 프로세서 상에서 실행하도록 배열된 명령어들의 세트로서 구현된다. 또 다른 그러한 예에서, 스펙트럼 포락선 디스크립션 계산기들 (140a 및 140b) 은 상이한 시간에 실행하는 명령어들의 동일한 세트로서 구현된다.
도 25a는, 인코딩된 스피치 신호를 일반적인 구성에 따라 프로세싱하는 방법 M200 의 흐름도를 도시한다. 방법 M200 은, 2개의 인코딩된 프레임들로부터 정보를 수신하고, 스피치 신호의 2개의 대응하는 프레임들의 스펙트럼 포락선들의 디스크립션들을 생성하도록 구성된다. 제 1 인코딩된 프레임 (또한, "기준" 인코딩된 프레임으로 지칭됨) 으로부터의 정보에 기초하여, 태스크 (T210) 는 제 1 및 제 2 주파수 대역에 걸친 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 제 2 인코딩된 프레임으로부터의 정보에 기초하여, 태스크 (T220) 는 제 1 주파수 대역에 걸친 스피치 신호의 제 2 프레임 (또한, "타겟" 프레임으로 지칭됨) 의 스펙트럼 포락선의 디스크립션을 획득한다. 기준 인코딩된 프레임으로부터의 정보에 기초하여, 태스크 (T230) 는 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득한다.
도 26은 2개의 인코딩된 프레임들로부터 정보를 수신하고, 스피치 신호의 2개의 대응하는 비활성 프레임들의 스펙트럼 포락선의 디스크립션을 생성하는 방법 M200 의 애플리케이션을 도시한다. 기준 인코딩된 프레임으로부터의 정보에 기초하여, 태스크 (T210) 는 제 1 및 제 2 주파수 대역에 걸친 제 1 비활성 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 이러한 디스크립션은 양 주파수 대역에 걸쳐 확장하는 단일 디스크립션일 수도 있거나, 주파수 대역들 각각의 주파수 대역에 걸쳐 각각 확장하는 별개의 디스크립션들을 포함할 수도 있다. 제 2 인코딩된 프레임으로부터의 정보에 기초하여, 태스크 (T220) 는 제 1 주파수 대역에 걸친 (예를 들어, 협대역 범위에 걸친) 타겟 비활성 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 기준 인코딩된 프레임으로부터의 정보에 기초하여, 태스크 (T230) 는 제 2 주파수 대역에 걸친 (예를 들어, 고대역 범위에 걸친) 타겟 비활성 프레임의 스펙트럼 포락선의 디스크립션을 획득한다.
도 26은, 스펙트럼 포락선들의 디스크립션들이 LPC 차수를 갖고, 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수가 제 1 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수보다 작은 예를 도시한다. 다른 예는, 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수가 제 1 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수의 적어도 50%, 적어도 60%, 75%보다 크지 않은, 80%보다 크지 않은, 동일 및 그 LPC 차수보다 큰 경우들을 포함한다. 특정 예에서, 제 1 및 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수는, 각각, 10 및 6이다. 또한, 도 26은, 제 1 및 제 2 주파수 대역에 걸친 제 1 비활성 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수가 제 1 및 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수들의 합과 동일한 예를 도시한다. 또 다른 예에서, 제 1 및 제 2 주파수 대역에 걸친 제 1 비활성 프레임의 스펙트럼 포락선의 디스크립션의 LPC 차수는, 제 1 및 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크 립션의 LPC 차수의 합산보다 크거나 작을 수도 있다.
태스크들 (T210 및 T220) 각각은 다음의 2개의 동작들, 즉, 스펙트럼 포락선의 양자화된 디스크립션을 추출하기 위하여 인코딩된 프레임을 파싱하는 동작, 및 그 프레임에 대한 코딩 모델의 파라미터들의 세트를 획득하기 위해 스펙트럼 포락선의 양자화된 디스크립션을 역양자화하는 동작 중 하나 또는 모두를 포함하도록 구성될 수도 있다. 태스크들 (T210 및 T220) 의 통상적인 구현은, 각각의 태스크가 모델 파라미터들의 세트의 형태 (예를 들어, 하나 이상의 LSF, LSP, ISF, ISP, 및/또는 LPC 계수 벡터들) 로 스펙트럼 포락선의 디스크립션을 생성하기 위해 각각의 인코딩된 프레임을 프로세싱하도록 이들 동작들 양자를 포함한다. 일 특정 예에서, 기준 인코딩된 프레임은 80비트의 길이를 갖고, 제 2 인코딩된 프레임은 16비트의 길이를 갖는다. 다른 예에서, 제 2 인코딩된 프레임의 길이는 기준 인코딩된 프레임의 길이의 20, 25, 30, 40, 50, 또는 60% 보다 크지 않다.
기준 인코딩된 프레임은 제 1 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 양자화된 디스크립션을 포함할 수도 있고, 제 2 인코딩된 프레임은 제 1 주파수 대역에 걸친 스펙트럼 포락선의 양자화된 디스크립션을 포함할 수도 있다. 일 특정 예에서, 기준 인코딩된 프레임에 포함된 제 1 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 양자화된 디스크립션은 40비트의 길이를 가지며, 제 2 인코딩된 프레임에 포함된 제 1 주파수 대역에 걸친 스펙트럼 포락선의 양자화된 디스크립션은 10비트의 길이를 갖는다. 다른 예에서, 제 2 인코딩된 프레임에 포함된 제 1 주파수 대역에 걸친 스펙트럼 포락선의 양자화된 디스크립션의 길이는, 기준 인 코딩된 프레임에 포함된 제 1 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 양자화된 디스크립션의 길이의 25, 30, 40, 50, 또는 60% 보다 크지 않다.
또한, 태스크들 (T210 및 T220) 은 각각의 인코딩된 프레임들로부터의 정보에 기초하여 시간 정보의 디스크립션들을 생성하도록 구현될 수도 있다. 예를 들어, 이들 태스크들 중 하나 또는 양자는, 각각의 인코딩된 프레임으로부터의 정보에 기초하여, 시간 포락선의 디스크립션, 여기 신호의 디스크립션, 및/또는 피치 정보의 디스크립션을 획득하도록 구성될 수도 있다. 스펙트럼 포락선의 디스크립션을 획득할 경우, 그러한 태스크는 인코딩된 프레임으로부터의 시간 정보의 양자화된 디스크립션을 파싱하는 단계 및/또는 시간 정보의 양자화된 디스크립션을 역양자화하는 단계를 포함할 수도 있다. 또한, 방법 M200 의 구현들은, 태스크 (T210) 및/또는 태스크 (T220) 가, 하나 이상의 이전의 인코딩된 프레임들로부터의 정보와 같은 하나 이상의 다른 인코딩된 프레임들로부터의 정보에 또한 기초하여 스펙트럼 포락선의 디스크립션 및/또는 시간 정보의 디스크립션을 획득하도록 구성될 수도 있다. 예를 들어, 여기 신호의 디스크립션 및/또는 프레임의 피치 정보는 통상적으로 이전 프레임들로부터의 정보에 기초한다.
기준 인코딩된 프레임은 제 1 및 제 2 주파수 대역에 대한 시간 정보의 양자화된 디스크립션을 포함할 수도 있고, 제 2 인코딩된 프레임은 제 1 주파수 대역에 대한 시간 정보의 양자화된 디스크립션을 포함할 수도 있다. 일 특정 예에서, 기준 인코딩된 프레임에 포함된 제 1 및 제 2 주파수 대역에 대한 시간 정보의 양자화된 디스크립션은 34비트의 길이를 갖고, 제 2 인코딩된 프레임에 포함된 제 1 주파수 대역에 대한 시간 정보의 양자화된 디스크립션은 5비트의 길이를 갖는다. 다른 예에서, 제 2 인코딩된 프레임에 포함된 제 1 주파수 대역에 대한 시간 정보의 양자화된 디스크립션의 길이는, 기준 인코딩된 프레임에 포함된 제 1 및 제 2 주파수 대역에 대한 시간 정보의 양자화된 디스크립션의 길이의 15, 20, 25, 30, 40, 50, 또는 60% 보다 크지 않다.
통상적으로, 방법 M200 은 스피치 디코딩의 더 큰 방법의 일부로서 수행되며, 방법 M200 을 수행하도록 구성된 스피치 디코더 및 스피치 디코딩 방법이 명백히 고려되고 그에 의해 개시된다. 스피치 코더는 인코더에서 방법 M100 의 일 구현을 수행하고, 디코더에서 방법 M200 의 일 구현을 수행하도록 구성될 수도 있다. 그러한 경우, 태스크 (T120) 에 의해 인코딩되는 바와 같은 "제 2 프레임" 은, 태스크 (T210 및 T230) 에 의해 프로세싱되는 정보를 공급하는 기준 인코딩된 프레임에 대응하며, 태스크 (T130) 에 의해 인코딩되는 바와 같은 "제 3 프레임" 은, 태스크 (T220) 에 의해 프로세싱되는 정보를 공급하는 인코딩된 프레임에 대응한다. 도 27a는, 방법 M100 을 사용하여 인코딩되고 방법 M200 을 사용하여 디코딩되는 일련의 연속하는 프레임들의 예를 사용하여 방법 M100 과 방법 M200 사이의 이러한 관계를 도시한다. 다른 방법으로, 스피치 코더는, 인코더에서 방법 M300 의 일 구현을 수행하고, 디코더에서 방법 M200 의 일 구현을 수행하도록 구성될 수도 있다. 도 27b는, 방법 M300 을 사용하여 인코딩되고 방법 M200 을 사용하여 디코딩되는 연속하는 프레임들의 쌍의 예를 사용하여 방법 M300 과 방법 M200 사이의 이러한 관계를 도시한다.
그러나, 방법 M200 이 연속하지 않는 인코딩된 프레임들로부터의 정보를 프로세싱하기 위해 또한 적용될 수도 있음을 유의한다. 예를 들어, 방법 M200 은, 태스크들 (T220 및 T230) 이 연속하지 않는 각각의 인코딩된 프레임들로부터의 정보를 프로세싱하도록 적용될 수도 있다. 통상적으로, 방법 M200 은, 태스크 (T230) 가 기준 인코딩된 프레임에 관해 반복하고, 태스크 (T220) 가 대응하는 일련의 연속 타겟 프레임들을 생성하기 위해 기준 인코딩된 프레임에 후속하는 일련의 연속하는 인코딩된 비활성 프레임들에 걸쳐 반복하도록 구현된다. 예를 들어, 그러한 반복은, 신규한 기준 인코딩된 프레임이 수신될 때까지, 인코딩된 활성 프레임이 수신될 때까지, 및/또는 타겟 프레임들의 최대 수가 생성될 때까지 계속될 수도 있다.
태스크 (T220) 는, 제 2 인코딩된 프레임으로부터의 정보에 적어도 주로 기초하여, 제 1 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득하도록 구성된다. 예를 들어, 태스크 (T220) 는, 제 2 인코딩된 프레임으로부터의 정보에 전부 기초하여 제 1 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득하도록 구성될 수도 있다. 다른 방법으로, 태스크 (T220) 는, 하나 이상의 이전의 인코딩된 프레임들로부터의 정보와 같은 다른 정보에 또한 기초하여, 제 1 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득하도록 구성될 수도 있다. 이러한 경우, 태스크 (T220) 는, 그 다른 정보보다는 그 제 2 인코딩된 프레임으로부터의 정보를 더 많이 가중하도록 구성된다. 예를 들어, 태스크 (T220) 의 그러한 구현은, 제 1 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 이전의 인코딩된 프레임으로부터의 정보와 제 2 인코딩된 프레임으로부터의 정보의 평균으로서 계산하도록 구성될 수도 있으며, 여기서, 그 제 2 인코딩된 프레임으로부터의 정보는 그 이전의 인코딩된 프레임으로부터의 정보보다 더 많이 가중된다. 유사하게, 태스크 (T220) 는, 제 2 인코딩된 프레임으로부터의 정보에 적어도 주로 기초하여, 제 1 주파수 대역에 대한 타겟 프레임의 시간 정보의 디스크립션을 획득하도록 구성될 수도 있다.
기준 인코딩된 프레임으로부터의 정보 (또한, 여기에서 "기준 스펙트럼 정보" 로 지칭됨) 에 기초하여, 태스크 (T230) 는 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 도 25b는, 태스크 (T230) 의 일 구현 (T232) 을 포함하는 방법 M200 의 일 구현 M210 의 흐름도를 도시한다. 태스크 (T230) 의 일 구현으로서, 태스크 (T232) 는, 기준 스펙트럼 정보에 기초하여, 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 이러한 경우, 기준 스펙트럼 정보는 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션내에 포함된다. 도 28은, 2개의 인코딩된 프레임들로부터의 정보를 수신하고, 스피치 신호의 2개의 대응하는 비활성 프레임들의 스펙트럼 포락선들의 디스크립션들을 생성하는 방법 M210 의 애플리케이션을 도시한다.
태스크 (T230) 는, 기준 스펙트럼 정보에 적어도 주로 기초하여, 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득하도록 구성된 다. 예를 들어, 태스크 (T230) 는, 기준 스펙트럼 정보에 전부 기초하여, 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득하도록 구성될 수도 있다. 다른 방법으로, 태스크 (T230) 는, (A) 기준 스펙트럼 정보에 기초한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션, 및 (B) 제 2 인코딩된 프레임으로부터의 정보에 기초한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션에 기초하여, 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득하도록 구성될 수도 있다.
그러한 경우, 태스크 (T230) 는, 제 2 인코딩된 프레임으로부터의 정보에 기초한 디스크립션보다는 기준 스펙트럼 정보에 기초한 디스크립션에 더 많이 가중하도록 구성될 수도 있다. 예를 들어, 태스크 (T230) 의 그러한 구현은, 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 제 2 인코딩된 프레임으로부터의 정보 및 기준 스펙트럼 정보에 기초한 디스크립션들의 평균으로서 계산하도록 구성될 수도 있으며, 여기서, 기준 스펙트럼 정보에 기초한 디스크립션은 제 2 인코딩된 프레임으로부터의 정보에 기초한 디스크립션보다 더 많이 가중된다. 또 다른 경우, 기준 스펙트럼 정보에 기초한 디스크립션의 LPC 차수는, 제 2 인코딩된 프레임으로부터의 정보에 기초한 디스크립션의 LPC 차수보다 더 클 수도 있다. 예를 들어, 제 2 인코딩된 프레임으로부터의 정보에 기초한 디스크립션의 LPC 차수는 1 (예를 들어, 스펙트럼 틸트값) 일 수도 있다. 유사하게, 태스크 (T230) 는, 기준 시간 정보에 적어도 주로 기초하여 (예를 들어, 기준 시간 정보에 전부 기초하거나, 제 2 인코딩된 프레임으로부터의 정보에 보다 덜 부 분적으로 또한 기초하여), 제 2 주파수 대역에 대한 타겟 프레임의 시간 정보의 디스크립션을 획득하도록 구성될 수도 있다.
태스크 (T210) 는, 제 1 및 제 2 주파수 대역들 양자에 걸친 단일 풀-대역 표현인 스펙트럼 포락선의 디스크립션을 기준 인코딩된 프레임으로부터 획득하도록 구현될 수도 있다. 그러나, 제 1 주파수 대역 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 별개의 디스크립션들로서 이러한 디스크립션을 획득하기 위해 태스크 (T210) 를 구현하는 것이 더 통상적이다. 예를 들어, 태스크 (T210) 는, 상술된 바와 같은 스플릿트-대역 코딩 방식 (예를 들어, 코딩 방식 2) 을 사용하여 인코딩되는 기준 인코딩된 프레임으로부터의 별개의 디스크립션들을 획득하도록 구성될 수도 있다.
도 25c는, 태스크 (T210) 가 2개의 태스크들 (T212a 및 T212b) 로서 구현되는 방법 M210 의 일 구현 M220 의 흐름도를 도시한다. 기준 인코딩된 프레임으로부터의 정보에 기초하여, 태스크 (T212a) 는 제 1 주파수 대역에 걸친 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 기준 인코딩된 프레임으로부터의 정보에 기초하여, 태스크 (T212b) 는 제 2 주파수 대역에 걸친 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 태스크들 (T212a 및 T212b) 각각은, 각각의 인코딩된 프레임으로부터의 스펙트럼 포락선의 양자화된 디스크립션을 파싱하는 단계 및/또는 스펙트럼 포락선의 양자화된 디스크립션을 역양자화하는 단계를 포함할 수도 있다. 도 29는, 2개의 인코딩된 프레임들로부터 정보를 수신하고, 스피치 신호의 2개의 대응하는 비활성 프레임들의 스펙트럼 포락선들의 디스 크립션을 생성하는 방법 M220 의 애플리케이션을 도시한다.
또한, 방법 M220 은 태스크 (T232) 의 일 구현 (T234) 을 포함한다. 태스크 (T230) 의 일 구현으로서, 태스크 (T234) 는, 기준 스펙트럼 정보에 기초한 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션을 획득한다. 태스크 (T232) 에서와 같이, 기준 스펙트럼 정보는 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션내에 포함된다. 태스크 (T234) 의 특정한 경우에서, 기준 스펙트럼 정보는 제 2 주파수 대역에 걸친 제 1 프레임의 스펙트럼 포락선의 디스크립션내에 포함된다 (및 가급적 동일하다).
도 29는, 스펙트럼 포락선들의 디스크립션들이 LPC 차수를 갖고, 제 1 및 제 2 주파수 대역에 걸친 제 1 비활성 프레임의 스펙트럼 포락선들의 디스크립션들의 LPC 차수들이 각각의 주파수 대역들에 걸친 타겟 비활성 프레임의 스펙트럼 포락선들의 디스크립션들의 LPC 차수들과 동일한 예를 도시한다. 다른 예들은, 제 1 및 제 2 주파수 대역에 걸친 제 1 비활성 프레임의 스펙트럼 포락선들의 디스크립션들 중 하나 또는 양자가, 그 각각의 주파수 대역에 걸친 타겟 비활성 프레임의 스펙트럼 포락선의 대응하는 디스크립션보다 더 큰 경우들을 포함한다.
기준 인코딩된 프레임은, 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션, 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션을 포함할 수도 있다. 일 특정 예에서, 기준 인코딩된 프레임에 포함된 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션은 28비트의 길이를 갖고, 기준 인코딩된 프레임에 포함된 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션은 12비트의 길이를 갖는다. 다른 예에서, 기준 인코딩된 프레임에 포함된 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션의 길이는, 기준 인코딩된 프레임에 포함된 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션의 길이의 45, 50, 60 또는 70% 보다 크지 않다.
기준 인코딩된 프레임은, 제 1 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션, 및 제 2 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션을 포함할 수도 있다. 일 특정 예에서, 기준 인코딩된 프레임에 포함된 제 2 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션은 15비트의 길이를 갖고, 기준 인코딩된 프레임에 포함된 제 1 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션은 19비트의 길이를 갖는다. 다른 예에서, 기준 인코딩된 프레임에 포함된 제 2 주파수 대역에 대한 시간 정보의 양자화된 디스크립션의 길이는, 기준 인코딩된 프레임에 포함된 제 1 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션의 길이의 80 또는 90% 보다 크지 않다.
제 2 인코딩된 프레임은, 제 1 주파수 대역에 걸친 스펙트럼 포락선의 양자화된 디스크립션 및/또는 제 1 주파수 대역에 대한 시간 정보의 양자화된 디스크립션을 포함할 수도 있다. 일 특정 예에서, 제 2 인코딩된 프레임에 포함된 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션은 10비트의 길이를 갖는다. 다른 예에서, 제 2 인코딩된 프레임에 포함된 제 1 주파 수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션의 길이는, 기준 인코딩된 프레임에 포함된 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 양자화된 디스크립션의 길이의 40, 50, 60, 70, 또는 75% 보다 크지 않다. 일 특정 예에서, 제 2 인코딩된 프레임에 포함된 제 1 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션은 5비트의 길이를 갖는다. 다른 예에서, 제 2 인코딩된 프레임에 포함된 제 1 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션의 길이는, 기준 인코딩된 프레임에 포함된 제 1 주파수 대역에 대한 시간 정보의 디스크립션의 양자화된 디스크립션의 길이의 30, 40, 50, 60, 또는 70% 보다 크지 않다.
방법 M200 의 통상적인 구현에서, 기준 스펙트럼 정보는 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션이다. 이러한 디스크립션은, 하나 이상의 LSP, LSF, ISP, ISF, 또는 LPC 계수 벡터들과 같은 모델 파라미터들의 세트를 포함할 수도 있다. 일반적으로, 이러한 디스크립션은, 태스크 (T210) 에 의해 기준 인코딩된 프레임으로부터 획득되는 바와 같은 제 2 주파수 대역에 걸친 제 1 비활성 프레임의 스펙트럼 포락선의 디스크립션이다. 또한, 기준 스펙트럼 정보가 제 1 주파수 대역 및/또는 또 다른 주파수 대역에 걸친 (예를 들어, 제 1 비활성 프레임의) 스펙트럼 포락선의 디스크립션을 포함하는 것이 가능하다.
통상적으로, 태스크 (T230) 는, 반도체 메모리 (또한, 여기에서 "버퍼" 로 지칭됨) 와 같은 저장 엘리먼트들의 어레이로부터 기준 스펙트럼 정보를 검색하기 위한 동작을 포함한다. 기준 스펙트럼 정보가 제 2 주파수 대역에 걸친 스펙트 럼 포락선의 디스크립션을 포함하는 경우에 있어서, 기준 스펙트럼 정보를 검색하는 액트 (act) 는 태스크 (T230) 를 완료하는데 충분할 수도 있다. 그러나, 그러한 경우일지라도, 단순히 제 2 주파수 대역에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션 (또한, 여기에서 "타겟 스펙트럼 디스크립션" 으로 지칭됨) 을 검색하기보다는, 그 타겟 스펙트럼 디스크립션을 계산하도록 태스크 (T230) 를 구성하는 것이 바람직할 수도 있다. 예를 들어, 태스크 (T230) 는, 기준 스펙트럼 정보에 랜덤 잡음을 부가함으로써 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있다. 다른 방법으로 또는 부가적으로, 태스크 (T230) 는 하나 이상의 부가적인 인코딩된 프레임들로부터의 스펙트럼 정보에 기초하여 (예를 들어, 2개 이상의 기준 인코딩된 프레임으로부터의 정보에 기초하여) 그 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 태스크 (T230) 는, 2개 이상의 기준 인코딩된 프레임으로부터 제 2 주파수 대역에 걸친 스펙트럼 포락선들의 디스크립션들의 평균으로서 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있으며, 그러한 계산은 계산된 평균에 랜덤 잡음을 부가하는 것을 포함할 수도 있다.
태스크 (T230) 는, 기준 스펙트럼 정보로부터 시간적으로 외삽하거나 2개 이상의 기준 인코딩된 프레임들로부터 제 2 주파수 대역에 걸친 스펙트럼 포락선들의 디스크립션 사이에서 시간적으로 보간함으로써 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있다. 다른 방법으로 또는 부가적으로, 태스크 (T230) 는, 또 다른 주파수 대역 (예를 들어, 제 1 주파수 대역) 에 걸친 타겟 프레임의 스펙트럼 포락선의 디스크립션으로부터 주파수적으로 외삽함으로써 및/또는 다른 주파 수 대역에 걸친 스펙트럼 포락선들의 디스크립션들 사이에서 주파수적으로 보간함으로써 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있다.
통상적으로, 기준 스펙트럼 정보 및 타겟 스펙트럼 디스크립션은 스펙트럼 파라미터 값들의 벡터 (또는 "스펙트럼 벡터") 이다. 그러한 일 예에서, 타겟 및 기준 스펙트럼 벡터 양자는 LSP 벡터이다. 또 다른 예에서, 타겟 및 기준 스펙트럼 벡터는 LPC 계수 벡터이다. 또 다른 예에서, 타겟 및 기준 스펙트럼 벡터는 반사 계수 벡터이다. 태스크 (T230) 는,
Figure 112009011934270-pct00001
와 같은 식에 따라 기준 스펙트럼 정보로부터 타겟 스펙트럼 디스크립션을 카피하도록 구성될 수도 있으며, 여기서, st는 타겟 스펙트럼 벡터이고, sr은 기준 스펙트럼 벡터 (그의 값들은 통상적으로 -1 로부터 +1 까지의 범위에 존재한다) 이고, i는 벡터 엘리먼트 인덱스이며, n은 벡터 st의 길이이다. 이러한 동작의 변형에서, 태스크 (T230) 는 가중 인자 (또는 가중 인자들의 벡터) 를 기준 스펙트럼 벡터에 적용하도록 구성된다. 이러한 동작의 또 다른 변형에서, 태스크 (T230) 는
Figure 112009011934270-pct00002
와 같은 식에 따라 기준 스펙트럼 벡터에 랜덤 잡음을 부가함으로써 타겟 스펙트럼 벡터를 계산하도록 구성되며, 여기서, z는 랜덤 값들의 벡터이다. 그러한 경우, z의 각각의 엘리먼트는 랜덤 변수일 수도 있으며, 그 랜덤 변수의 값들은 원하는 범위에 걸쳐 (예를 들어, 균일하게) 분포된다.
타겟 스펙트럼 디스크립션의 값들이 (예를 들어, -1 로부터 +1 까지의 범위내에) 제한된다는 것을 보장하는 것이 바람직할 수도 있다. 그러한 경우, 태스 크 (T230) 는
Figure 112009011934270-pct00003
와 같은 식에 따라 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있으며, 여기서, ω는 0과 1 사이 (예를 들어, 0.3 으로부터 0.9 까지의 범위) 의 값을 갖고, z의 각각의 엘리먼트의 값들은 -(1-ω) 로부터 +(1-ω) 까지의 범위에 걸쳐 (예를 들어, 균일하게) 분포된다.
또 다른 예에서, 태스크 (T230) 는, 2개 이상의 기준 인코딩된 프레임 각각 (예를 들어, 2개의 가장 최근의 기준 인코딩된 프레임들 각각) 으로부터 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션에 기초하여 타겟 스펙트럼 디스크립션을 계산하도록 구성된다. 그러한 일 예에서, 태스크 (T230) 는
Figure 112009011934270-pct00004
와 같은 식에 따라 기준 인코딩된 프레임들로부터의 정보의 평균으로서 타겟 스펙트럼 디스크립션을 계산하도록 구성되며, 여기서, sr1은 가장 최근의 기준 인코딩된 프레임으로부터의 스펙트럼 벡터를 나타내고, sr2는 다음의 가장 최근의 기준 인코딩된 프레임으로부터의 스펙트럼 벡터를 나타낸다. 관련 예에서, 기준 스펙트럼 벡터들은 서로 상이하게 가중된다 (예를 들어, 더 최근의 기준 인코딩된 프레임으로부터의 벡터가 더 많이 가중될 수도 있다).
또 다른 예에서, 태스크 (T230) 는, 2개 이상의 기준 인코딩된 프레임들로부터의 정보에 기초하여, 일 범위에 걸친 랜덤값들의 세트로서 타겟 스펙트럼 디스크립션을 생성하도록 구성된다. 예를 들어, 태스크 (T230) 는,
Figure 112009011934270-pct00005
와 같은 식에 따라 2개의 가장 최근의 기준 인코딩된 프레임들로부터의 스펙트럼 벡터들의 랜덤화된 평균으로서 타겟 스펙트럼 벡터 st를 계산하도록 구성될 수도 있으며, 여기서, z의 각각의 엘리먼트의 값들은 -1 로부터 +1 까지의 범위에 걸쳐 (예를 들어, 균일하게) 분포된다. 도 30a는 일련의 연속하는 타겟 프레임들 각각에 대한 태스크 (T230) 의 그러한 구현을 (i의 n개의 값들 중 하나에 대해) 반복한 결과를 도시하며, 랜덤 벡터 z는 각각의 반복에 대해 재평가되고, 여기서, 비어있는 원 (open circle) 은 값 sti을 나타낸다.
태스크 (T230) 는, 2개의 가장 최근의 기준 프레임들로부터 제 2 주파수 대역에 걸친 스펙트럼 포락선들의 디스크립션들 사이에 보간함으로써 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 태스크 (T230) 는 일련의 p개의 타겟 프레임들에 걸쳐 선형 보간을 수행하도록 구성될 수도 있으며, 여기서, p는 튜닝가능한 파라미터이다. 그러한 경우, 태스크 (T230) 는,
Figure 112009011934270-pct00006
와 같은 식에 따라 그 시리즈에서의 j-번째 타겟 프레임에 대한 타겟 스펙트럼 벡터를 계산하도록 구성될 수도 있다. 도 30b는 일련의 연속하는 타겟 프레임들에 걸쳐 태스크 (T230) 의 그러한 구현을 (i의 n개의 값들 중 하나에 대해) 반복한 결과를 도시하며, 여기서, p는 8이고, 각각의 비어있는 원은 대응하는 타겟 프레임에 대한 값 sti을 나타낸다. p의 값들의 다른 예는, 4, 16, 및 32를 포함한다. 보간된 디스크립션에 랜덤 잡음을 부가하도록 태스크 (T230) 의 그러한 구현을 구성하는 것이 바람직할 수도 있다.
또한, 도 30b는 (예를 들어, 신규한 기준 인코딩된 프레임 또는 다음의 활성 프레임이 수신될 때까지) p보다 더 긴 시리즈에서의 각각의 후속 타겟 프레임에 대해 기준 벡터 sr1을 타겟 벡터 st로 복사하도록 구성되는 일 예를 도시한다. 관련 예에서, 일련의 타겟 프레임들은 길이 mp를 가지며, 여기서, m은 1보다 큰 정수 (예를 들어, 2 또는 3) 이고, p개의 계산된 벡터들 각각은 그 시리즈에서의 m개의 대응하는 연속 타겟 프레임들 각각에 대한 타겟 스펙트럼 디스크립션으로서 사용된다.
태스크 (T230) 는, 2개의 가장 최근의 기준 프레임들로부터 제 2 주파수 대역에 걸친 스펙트럼 포락선들의 디스크립션들 사이에서 보간을 수행하기 위해 많은 상이한 방식으로 구현될 수도 있다. 또 다른 예에서, 태스크 (T230) 는,
0<j≤q 인 모든 정수 j에 대해,
Figure 112009011934270-pct00007
q<j≤p 인 모든 정수 j에 대해,
Figure 112009011934270-pct00008
와 같은 식의 쌍에 따라 그 시리즈에서의 j-번째 타겟 프레임에 대한 타겟 벡터를 계산함으로써 일련의 p개의 타겟 프레임들에 걸쳐 선형 보간을 수행하도록 구성된 다. 도 30c는 일련의 연속하는 타겟 프레임들 각각에 대한 태스크 (T230) 의 그러한 구현을 (i의 n개의 값들 중 하나에 대해) 반복한 결과를 도시하며, 여기서, q는 4의 값을 갖고 p는 8의 값을 갖는다. 그러한 구현은 도 30b에 도시된 결과보다 제 1 타겟 프레임으로의 더 평활한 전이를 제공할 수도 있다.
태스크 (T230) 는 임의의 양의 정수값들 q 및 p에 대해 유사한 방식으로 구현될 수도 있으며, 즉, 사용될 수도 있는 (q, p) 의 값들의 특정한 예는 (4, 8), (4, 12), (4, 16), (8, 16), (8, 24), (8, 32), 및 (16, 32) 를 포함한다. 상술된 바와 같은 관련 예에서, p개의 계산된 벡터들 각각은 일련의 mp개의 타겟 프레임들에서 m개의 대응하는 연속 타겟 프레임들 각각에 대한 타겟 스펙트럼 디스크립션으로서 사용된다. 보간된 디스크립션에 랜덤 잡음을 부가하도록 태스크 (T230) 의 그러한 구현을 구성하는 것이 바람직할 수도 있다. 또한, 도 30c는, 태스크 (T230) 가 (예를 들어, 신규한 기준 인코딩된 프레임 또는 다음의 활성 프레임이 수신될 때까지) p보다 더 긴 시리즈에서의 각각의 후속 타겟 프레임에 대해 기준 벡터 sr1을 타겟 벡터 st에 카피하도록 구성된 일 예를 도시한다.
또한, 태스크 (T230) 는, 기준 스펙트럼 정보 이외에, 또 다른 주파수 대역에 걸친 하나 이상의 프레임들의 스펙트럼 포락선에 기초하여 타겟 스펙트럼 디스크립션을 계산하도록 구현될 수도 있다. 예를 들어, 태스크 (T230) 의 그러한 구현은, 또 다른 주파수 대역 (예를 들어, 제 1 주파수 대역) 에 걸친 현재의 프레임 및/또는 하나 이상의 이전 프레임들의 스펙트럼 포락선으로부터 주파수적으로 외삽함으로써 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있다.
또한, 태스크 (T230) 는, 기준 인코딩된 프레임으로부터의 정보에 기초하여, 제 2 주파수 대역에 걸친 타겟 비활성 프레임의 시간 정보 (또한, 여기에서 "기준 시간 정보" 로 지칭됨) 의 디스크립션을 획득하도록 구성될 수도 있다. 통상적으로, 기준 시간 정보는 제 2 주파수 대역에 걸친 시간 정보의 디스크립션이다. 이러한 디스크립션은 하나 이상의 이득 프레임 값들, 이득 프로파일 값들, 피치 파라미터 값들, 및/또는 코드북 인덱스들을 포함할 수도 있다. 일반적으로, 이러한 디스크립션은, 태스크 (T210) 에 의해 기준 인코딩된 프레임으로부터 획득되는 바와 같은 제 2 주파수 대역에 걸친 제 1 비활성 프레임의 시간 정보의 디스크립션이다. 또한, 기준 시간 정보가 제 1 주파수 대역 및/또는 또 다른 주파수 대역에 걸친 (예를 들어, 제 1 비활성 프레임의) 시간 정보의 디스크립션을 포함하는 것이 가능하다.
태스크 (T230) 는, 기준 시간 정보를 카피함으로써, 제 2 주파수 대역에 걸친 타겟 프레임의 시간 정보 (또한, 여기에서 "타겟 시간 디스크립션" 으로 지칭됨) 의 디스크립션을 획득하도록 구성될 수도 있다. 다른 방법으로, 기준 시간 정보에 기초하여 타겟 시간 디스크립션을 계산함으로써 그 타겟 시간 디스크립션을 획득하도록 태스크 (T230) 를 구성하는 것이 바람직할 수도 있다. 예를 들어, 태스크 (T230) 는 기준 시간 정보에 랜덤 잡음을 부가함으로써 타겟 시간 디스크립션을 계산하도록 구성될 수도 있다. 또한, 태스크 (T230) 는 2개 이상의 기준 인코딩된 프레임으로부터의 정보에 기초하여 타겟 시간 디스크립션을 계산하도록 구성될 수도 있다. 예를 들어, 태스크 (T230) 는, 2개 이상의 기준 인코딩된 프레임들로부터 제 2 주파수 대역에 걸친 시간 정보의 디스크립션들의 평균으로서 타겟 시간 디스크립션을 계산하도록 구성될 수도 있으며, 그러한 계산은 그 계산된 평균에 랜덤 잡음을 부가하는 것을 포함할 수도 있다.
타겟 시간 디스크립션 및 기준 시간 정보는 각각 시간 포락선의 디스크립션을 포함할 수도 있다. 상술된 바와 같이, 시간 포락선의 디스크립션은 이득 프레임 값 및/또는 이득 쉐이프 값들의 세트를 포함할 수도 있다. 다른 방법으로 또는 부가적으로, 타겟 시간 디스크립션 및 기준 시간 정보는 각각 여기 신호의 디스크립션을 포함할 수도 있다. 여기 신호의 디스크립션은 피치 컴포넌트 (예를 들어, 피치 래그, 피치 이득, 및/또는 프로토타입의 디스크립션) 의 디스크립션을 포함할 수도 있다.
통상적으로, 태스크 (T230) 는 타겟 시간 디스크립션의 이득 쉐이프를 평탄하게 설정하도록 구성된다. 예를 들어, 태스크 (T230) 는 타겟 시간 디스크립션의 이득 쉐이프 값들을 서로 동일하게 설정하도록 구성될 수도 있다. 태스크 (T230) 의 그러한 일 구현은 모든 이득 쉐이프 값들을 1의 인자 (예를 들어, 0dB) 로 설정하도록 구성된다. 태스크 (T230) 의 그러한 또 다른 예는 모든 이득 쉐이프 값들을 1/n의 인자로 설정하도록 구성되며, 여기서, n은 타겟 시간 디스크립션에서의 이득 쉐이프 값들의 수이다.
태스크 (T230) 는 일련의 타겟 프레임들 각각에 대한 타겟 시간 디스크립션을 계산하기 위해 반복될 수도 있다. 예를 들어, 태스크 (T230) 는, 가장 최근 의 기준 인코딩된 프레임으로부터의 이득 프레임 값에 기초하여 일련의 연속하는 타겟 프레임들 각각에 대한 이득 프레임 값들을 계산하도록 구성될 수도 있다. 그러한 경우, 일련의 시간 포락선들이 비정상적으로 평활한 것으로서 지각될 수도 있으므로, 각각의 타겟 프레임에 대한 이득 프레임 값에 랜덤 잡음을 부가하도록 (다른 방법으로, 그 시리즈에서의 첫번째 타겟 프레임 이후의 각각의 타겟 프레임에 대한 이득 프레임 값에 랜덤 잡음을 부가하도록) 태스크 (T230) 를 구성하는 것이 바람직할 수도 있다. 태스크 (T230) 의 그러한 구현은
Figure 112009011934270-pct00009
또는
Figure 112009011934270-pct00010
와 같은 식에 따라 그 시리즈에서의 각각의 타겟 프레임에 대한 이득 프레임 값 gt를 계산하도록 구성될 수도 있으며, 여기서, gr은 기준 인코딩된 프레임으로부터의 이득 프레임 값이고, z는 일련의 타겟 프레임들 각각에 대해 재평가된 랜덤값이며, w는 가중 인자이다. z의 값들에 대한 통상적인 범위는, 0 내지 1 및 -1 내지 +1 을 포함한다. w에 대한 값들의 통상적인 범위는 0.5 (또는 0.6) 내지 0.9 (또는 1.0) 를 포함한다.
태스크 (T230) 는, 2 또는 3개의 가장 최근의 기준 인코딩된 프레임들로부터의 이득 프레임 값들에 기초하여, 타겟 프레임에 대한 이득 프레임 값을 계산하도록 구성될 수도 있다. 그러한 일 예에서, 태스크 (T230) 는
Figure 112009011934270-pct00011
와 같은 식에 따라 평균으로서 타겟 프레임에 대한 이득 프레임 값을 계산하도록 구성되며, 여기서, gr1은 가장 최근의 기준 인코딩된 프레임으로부터의 이득 프레임 값 이고, gr2는 다음의 가장 최근의 기준 인코딩된 프레임으로부터의 이득 프레임 값이다. 관련 예에서, 기준 이득 프레임 값들은 서로 상이하게 가중된다 (예를 들어, 더 최근의 값이 더 많이 가중될 수도 있다). 그러한 평균에 기초하여, 일련의 타겟 프레임들에서 각각에 대한 이득 프레임 값을 계산하도록 태스크 (T230) 를 구현하는 것이 바람직할 수도 있다. 예를 들어, 태스크 (T230) 의 그러한 구현은, 상이한 랜덤 잡음값을 그 계산된 평균 이득 프레임 값에 부가함으로써, 그 시리즈에서의 각각의 타겟 프레임에 대한 (다른 방법으로, 그 시리즈에서의 첫번째 타겟 프레임 이후의 각각의 타겟 프레임에 대한) 이득 프레임 값을 계산하도록 구성될 수도 있다.
또 다른 예에서, 태스크 (T230) 는, 연속하는 기준 인코딩된 프레임들로부터의 이득 프레임 값들의 이동 평균 (running average) 으로서 타겟 프레임에 대한 이득 프레임 값을 계산하도록 구성된다. 태스크 (T230) 의 그러한 구현은
Figure 112009011934270-pct00012
와 같은 자기 회귀 (autoregressive; AR) 식에 따라 이동 평균 이득 프레임 값의 현재값으로서 타겟 이득 프레임 값을 계산하도록 구성될 수도 있으며, 여기서, gcur 및 gprev는, 각각, 이동 평균의 현재값 및 이전값이다. 평활 인자 α에 있어서, 0.8 또는 0.9와 같이, 0.5 또는 0.75와 1 사이의 값을 사용하는 것이 바람직할 수도 있다. 그러한 이동 평균에 기초하여 일련의 타겟 프레임들에서 각각에 대한 값 gt를 계산하도록 태스크 (T230) 를 구현하는 것이 바람직할 수도 있다. 예를 들어, 태스크 (T230) 의 그러한 구현은, 이동 평균 이 득 프레임 값 gcur에 상이한 랜덤 잡음값을 부가함으로써, 그 시리즈에서의 각각의 타겟 프레임에 대한 (다른 방법으로, 그 시리즈에서의 첫번째 타겟 프레임 이후의 각각의 타겟 프레임에 대한) 값 gt를 계산하도록 구성될 수도 있다.
또 다른 예에서, 태스크 (T230) 는 기준 시간 정보로부터의 기여도에 감쇠 인자를 적용하도록 구성된다. 예를 들어, 태스크 (T230) 는
Figure 112009011934270-pct00013
와 같은 식에 따라 이동 평균 이득 프레임 값을 계산하도록 구성될 수도 있으며, 여기서, 감쇠 인자 β는 0.5 내지 0.9 (예를 들어, 0.6) 의 범위의 값과 같이 1보다 작은 값을 갖는 튜닝가능한 파라미터이다. 그러한 이동 평균에 기초하여 일련의 타겟 프레임들에서의 각각에 대한 값 gt를 계산하도록 태스크 (T230) 를 구현하는 것이 바람직할 수도 있다. 예를 들어, 태스크 (T230) 의 그러한 구현은, 이동 평균 이득 프레임 값 gcur에 상이한 랜덤 잡음값을 부가함으로써, 그 시리즈에서의 각각의 타겟 프레임에 대한 (다른 방법으로, 그 시리즈에서의 첫번째 타겟 프레임 이후의 각각의 타겟 프레임에 대한) 값 gt를 계산하도록 구현될 수도 있다.
일련의 타겟 프레임들 각각에 대한 타겟 스펙트럼 및 시간 디스크립션을 계산하도록 태스크 (T230) 를 반복하는 것이 바람직할 수도 있다. 그러한 경우, 태스크 (T230) 는 그 타겟 스펙트럼 및 시간 디스크립션을 상이한 레이트로 업데이트하도록 구성될 수도 있다. 예를 들어, 태스크 (T230) 의 그러한 구현은, 각 각의 타겟 프레임에 대한 상이한 타겟 스펙트럼 디스크립션들을 계산하지만 2개 이상의 연속하는 타겟 프레임에 대해 동일한 타겟 시간 디스크립션을 사용하도록 구성될 수도 있다.
통상적으로, (방법 M210 및 방법 M220 을 포함하는) 방법 M200 의 구현들은 기준 스펙트럼 정보를 버퍼에 저장하는 동작을 포함하도록 구성된다. 또한, 방법 M200 의 그러한 구현은 기준 시간 정보를 버퍼에 저장하는 동작을 포함할 수도 있다. 다른 방법으로, 방법 M200 의 그러한 구현은 기준 스펙트럼 정보 및 기준 시간 정보 양자를 버퍼에 저장하는 동작을 포함할 수도 있다.
방법 M200 의 상이한 구현들은, 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장할지의 여부를 판정할 시에 상이한 기준을 사용할 수도 있다. 통상적으로, 기준 스펙트럼 정보를 저장하기 위한 판정은 인코딩된 프레임의 코딩 방식에 기초하며, 또한, 하나 이상의 이전 및/또는 후속 인코딩된 프레임들의 코딩 방식에 기초할 수도 있다. 방법 M200 의 그러한 구현은, 기준 시간 정보를 저장할지의 여부를 판정할 시에 동일한 또는 상이한 기준을 사용하도록 구성될 수도 있다.
저장된 기준 스펙트럼 정보가 2개 이상의 기준 인코딩된 프레임에 대해 동시에 이용가능하도록 방법 M200 을 구현하는 것이 바람직할 수도 있다. 예를 들어, 태스크 (T230) 는 2개 이상의 기준 프레임으로부터의 정보에 기초한 타겟 스펙트럼 디스크립션을 계산하도록 구성될 수도 있다. 그러한 경우, 방법 M200 은, 가장 최근의 기준 인코딩된 프레임으로부터의 기준 스펙트럼 정보, 두번째의 가장 최근의 기준 인코딩된 프레임으로부터의 정보, 및 또한 가급적 하나 이상의 덜 최근의 기준 인코딩된 프레임들로부터의 정보를 임의의 일 시간에 저장부에서 보유하도록 구성될 수도 있다. 또한, 그러한 방법은, 기준 시간 정보에 대한 동일한 이력, 또는 상이한 이력을 보유하도록 구성될 수도 있다. 예를 들어, 방법 M200 은, 2개의 가장 최근의 기준 인코딩된 프레임들 각각으로부터의 스펙트럼 포락선의 디스크립션, 및 단지 하나의 가장 최근의 기준 인코딩된 프레임만으로부터의 시간 정보의 디스크립션을 보유하도록 구성될 수도 있다.
상술된 바와 같이, 인코딩된 프레임들 각각은, 그 프레임이 인코딩되는, 코딩 방식, 또는 코딩 레이트 또는 모드를 식별하는 코딩 인덱스를 포함할 수도 있다. 다른 방법으로, 스피치 디코더는 인코딩된 프레임으로부터 코딩 인덱스의 적어도 일부를 결정하도록 구성될 수도 있다. 예를 들어, 스피치 디코더는, 프레임 에너지와 같은 하나 이상의 파라미터들로부터 인코딩된 프레임의 비트 레이트를 결정하도록 구성될 수도 있다. 유사하게, 특정 코딩 레이트에 대한 2개 이상의 코딩 모드를 지원하는 코더에 있어서, 스피치 디코더는 인코딩된 프레임의 포맷으로부터 적절한 코딩 모드를 결정하도록 구성될 수도 있다.
인코딩된 스피치 신호에서의 인코딩된 프레임들 모두가 기준 인코딩된 프레임이라는 자격이 부여되지는 않을 것이다. 예를 들어, 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지 않는 인코딩된 프레임은, 일반적으로 기준 인코딩된 프레임으로서의 사용에 적합하지 않을 것이다. 몇몇 애플리케이션에서, 기준 인코딩된 프레임인 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스 크립션을 포함하는 임의의 인코딩된 프레임을 고려하는 것이 바람직할 수도 있다.
방법 M200 의 대응하는 구현은, 현재의 인코딩된 프레임이 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함한다면, 그 현재의 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하도록 구성될 수도 있다. 예를 들어, 도 18에 도시된 바와 같은 코딩 방식들의 세트의 콘텍스트에서, 방법 M200 의 그러한 구현은, 프레임의 코딩 인덱스가 (즉, 코딩 방식 3 보다는) 코딩 방식 1 및 코딩 방식 2 중 어느 하나를 나타내면, 기준 스펙트럼 정보를 저장하도록 구성될 수도 있다. 더 일반적으로, 방법 M200 의 그러한 구현은, 프레임의 코딩 인덱스가 협대역 코딩 방식보다는 광대역 코딩 방식을 나타내면, 기준 스펙트럼 정보를 저장하도록 구성될 수도 있다.
비활성인 타겟 프레임들에 대해서만 타겟 스펙트럼 디스크립션들을 획득하도록 (즉, 태스크 (T230) 를 수행하도록) 방법 M200 을 구현하는 것이 바람직할 수도 있다. 그러한 경우에서, 기준 스펙트럼 정보가 인코딩된 활성 프레임들이 아니라 인코딩된 비활성 프레임들에 기초하는 것이 바람직할 수도 있다. 활성 프레임들이 배경 잡음을 포함하지만, 인코딩된 활성 프레임에 기초한 기준 스펙트럼 정보는 또한 타겟 스펙트럼 디스크립션을 손상시키는 스피치 컴포넌트들에 관한 정보를 포함할 수도 있다.
방법 M200 의 그러한 구현은, 프레임의 코딩 인덱스가 특정 코딩 모드 (예를 들어, NELP) 를 나타내면, 현재의 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하도록 구성될 수도 있다. 방법 M200 의 다른 구현은, 프레임의 코딩 인덱스가 특정 코딩 레이트 (예를 들어, 하프-레이트) 를 나타내면, 현재의 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하도록 구성된다. 방법 M200 의 다른 구현은, 그러한 기준의 조합에 따라, 예를 들어, 프레임의 코딩 인덱스가 그 프레임이 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함한다는 것을 나타내고, 또한, 특정 코딩 모드 및/또는 레이트를 나타내면, 현재의 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하도록 구성된다. 방법 M200 의 또 다른 구현은, 프레임의 코딩 인덱스가 특정 코딩 방식 (예를 들어, 도 18a에 따른 예에서 코딩 방식 2 또는 또 다른 예에서 비활성 프레임들에 의한 사용을 위해 예약된 광대역 코딩 방식) 을 나타내면, 현재의 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하도록 구성된다.
프레임이 활성 또는 비활성인지의 여부를 그의 코딩 인덱스만으로부터 결정하는 것이 바람직할 수도 있다. 예를 들어, 도 18a에 도시된 코딩 방식들의 세트에서, 코딩 방식 2가 활성 프레임 및 비활성 프레임 양자에 대해 사용된다. 그러한 경우, 하나 이상의 후속 프레임들의 코딩 인덱스는 인코딩된 프레임이 비활성인지의 여부를 나타내는 것을 보조할 수도 있다. 예를 들어, 상기 디스크립션은, 후속 프레임이 코딩 방식 3을 사용하여 인코딩된 경우, 코딩 방식 2를 사용하여 인코딩된 프레임이 비활성인 스피치 인코딩 방법을 개시한다. 방법 M200 의 대응하는 구현은, 프레임의 코딩 인덱스가 방식 2를 나타내고 다음의 인코딩된 프레임의 코딩 인덱스가 코딩 방식 3을 나타내면, 현재의 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하도록 구성될 수도 있다. 관련 예에 서, 방법 M200 의 일 구현은, 프레임이 하프-레이트로 인코딩되고 다음의 프레임이 1/8-레이트로 인코딩되면, 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하도록 구성된다.
인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장하는지에 대한 판정이 후속 인코딩된 프레임으로부터의 정보에 의존하는 경우에 있어서, 방법 M200 은 2개의 부분에 기준 스펙트럼 정보를 저장하는 동작을 수행하도록 구성될 수도 있다. 저장 동작의 제 1 부분은 인코딩된 프레임에 기초한 정보를 일시적으로 저장한다. 방법 M200 의 그러한 구현은, 모든 프레임들 또는 몇몇 소정의 기준을 충족하는 모든 프레임들 (예를 들어, 특정 코딩 레이트, 모드, 또는 방식을 갖는 모든 프레임들) 에 대한 정보를 일시적으로 저장하도록 구성될 수도 있다. 그러한 기준의 3개의 상이한 예는, (1) 그의 코딩 인덱스가 NELP 코딩 모드를 나타내는 프레임들, (2) 그의 코딩 인덱스가 하프-레이트를 나타내는 프레임들, 및 (3) 그의 코딩 인덱스가 (예를 들어, 도 18a에 따른 코딩 방식들의 세트의 애플리케이션에서) 코딩 방식 2 를 나타내는 프레임들이다.
저장 동작의 제 2 부분은, 소정의 조건이 충족되면, 일시적으로 저장된 정보를 기준 스펙트럼 정보로 저장한다. 방법 M200 의 그러한 구현은, 하나 이상의 후속 프레임들이 수신될 때까지 (예를 들어, 다음의 인코딩된 프레임의 코딩 모드, 레이트 또는 방식이 공지될 때까지) 그 동작의 이러한 부분을 연기하도록 구성될 수도 있다. 그러한 조건의 3개의 상이한 예는, (1) 다음의 인코딩된 프레임의 코딩 인덱스가 1/8-레이트를 나타내는 것, (2) 다음의 인코딩된 프레임의 코딩 인 덱스가 비활성 프레임들에 대해서만 사용된 코딩 모드를 나타내는 것, 및 (3) 다음의 인코딩된 프레임의 코딩 인덱스가 (도 18a에 따른 코딩 방식들의 세트의 애플리케이션에서) 코딩 방식 3을 나타내는 것이다. 저장 동작의 제 2 부분에 대한 조건이 충족되지 않으면, 일시적으로 저장된 정보는 폐기되거나 오버라이트 (overwrite) 될 수도 있다.
기준 스펙트럼 정보를 저장하기 위한 2개-부분 동작 중 제 2 부분은 임의의 수개의 상이한 구성들에 따라 구현될 수도 있다. 일 예에서, 그 저장 동작의 제 2 부분은, 일시적으로 저장된 정보를 보유하는 저장 위치와 관련된 플래그 상태를 (예를 들어, "일시적" 을 나타내는 상태로부터 "기준" 을 나타내는 상태로) 변경하도록 구성된다. 또 다른 예에서, 그 저장 동작의 제 2 부분은, 기준 스펙트럼 정보의 저장을 위해 예약된 버퍼에 그 일시적으로 저장된 정보를 전달하도록 구성된다. 또 다른 예에서, 그 저장 동작의 제 2 부분은, 일시적으로 저장된 기준 스펙트럼 정보를 보유하는 버퍼 (예를 들어, 원형 버퍼 (circular buffer)) 로 하나 이상의 포인터들을 업데이트하도록 구성된다. 이러한 경우, 그 포인터들은, 가장 최근의 기준 인코딩된 프레임으로부터의 기준 스펙트럼 정보의 위치를 나타내는 판독 포인터 및/또는 일시적으로 저장된 정보를 저장할 위치를 나타내는 기입 포인터를 포함할 수도 있다.
도 31은, 후속 인코딩된 프레임의 코딩 방식이 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 정보로서 저장할지의 여부를 판정하는데 사용되는 방법 M200 의 일 구현을 수행하도록 구성된 스피치 디코더에 대한 상태도의 대응부를 도시한 다. 이러한 다이어그램에서, 경로 라벨들은 현재의 프레임의 코딩 방식과 관련된 프레임 타입을 나타내며, 여기서, A는 활성 프레임들에 대해서만 사용된 코딩 방식을 나타내고, I는 비활성 프레임들에 대해서만 사용된 코딩 방식을 나타내며, ("혼합된" 에 대한) M은 활성 프레임들 및 비활성 프레임들에 대해 사용된 코딩 방식을 나타낸다. 예를 들어, 그러한 디코더는 도 18a에 도시된 바와 같은 코딩 방식들의 세트를 사용하는 코딩 시스템에 포함될 수도 있으며, 여기서, 방식 1, 방식 2 및 방식 3은, 각각, 경로 라벨 A, M, 및 I에 대응한다. 도 31에 도시된 바와 같이, "혼합된" 코딩 방식을 나타내는 코딩 인덱스를 갖는 모든 인코딩된 프레임들에 대해 정보가 일시적으로 저장된다. 다음의 프레임의 코딩 인덱스가 그 프레임이 비활성이라는 것을 나타내면, 기준 스펙트럼 정보로서의 이전에 저장된 정보의 저장이 완료된다. 그렇지 않으면, 이전에 저장된 정보는 폐기되거나 오버라이트될 수도 있다.
또한, 기준 스펙트럼 정보의 선택적인 저장 및 일시적인 저장에 관한 상기 설명, 및 도 31의 첨부한 상태도가 그러한 정보를 저장하도록 구성되는 방법 M200 의 구현들에서 기준 시간 정보의 저장에 적용가능하다는 것을 명백히 알 수 있다.
방법 M200 의 일 구현의 통상적인 애플리케이션에서, 로직 엘리먼트들 (예를 들어, 로직 게이트들) 의 어레이는 그 방법의 다양한 태스크들 중 하나, 2개 이상, 또는 심지어 모든 태스크를 수행하도록 구성된다. 또한, 그 태스크들 중 하나 이상의 태스크들 (가급적 모든 태스크들) 은, 로직 엘리먼트들 (예를 들어, 프로세서, 마이크로프로세서, 마이크로제어기, 또는 다른 유한 상태 머신) 의 어레이를 포함하는 머신 (예를 들어, 컴퓨터) 에 의해 판독가능 및/또는 실행가능한 컴퓨터 프로그램 제품 (예를 들어, 디스크, 플래시 또는 다른 비휘발성 메모리 카드, 반도체 메모리 칩 등과 같은 하나 이상의 데이터 저장 매체) 에 수록된 코드 (예를 들어, 명령어들의 하나 이상의 세트들) 로서 구현될 수도 있다. 또한, 방법 M200 의 일 구현의 태스크들은 2개 이상의 그러한 어레이 또는 머신에 의해 수행될 수도 있다. 이들 또는 다른 구현들에서, 태스크들은 셀룰러 전화기 또는 그러한 통신 능력을 갖는 다른 디바이스와 같은 무선 통신용 디바이스내에서 수행될 수도 있다. 그러한 디바이스는, 서킷-스위칭 및/또는 (예를 들어, VoIP와 같은 하나 이상의 프로토콜들을 사용하여) 패킷-스위칭 네트워크와 통신하도록 구성될 수도 있다. 예를 들어, 그러한 디바이스는 인코딩된 프레임들을 수신하도록 구성된 RF 회로를 포함할 수도 있다.
도 32a는 인코딩된 스피치 신호를 일반적인 구성에 따라 프로세싱하는 장치 (200) 의 블록도를 도시한다. 예를 들어, 장치 (200) 는, 여기에 설명된 바와 같은 방법 M200 의 일 구현을 포함하는 스피치 디코딩 방법을 수행하도록 구성될 수도 있다. 장치 (200) 는, 값들의 시퀀스를 갖는 제어 신호를 생성하도록 구성된 제어 로직 (210) 을 포함한다. 또한, 장치 (200) 는, 제어 신호의 값들 및 인코딩된 스피치 신호의 대응하는 인코딩된 프레임들에 기초하여, 스피치 신호의 디코딩된 프레임들을 계산하도록 구성된 스피치 디코더 (220) 를 포함한다.
셀룰러 전화기와 같은 장치 (200) 를 포함한 통신 디바이스는, 유선, 무선, 또는 광 송신 채널로부터 인코딩된 스피치 신호를 수신하도록 구성될 수도 있다. 그러한 디바이스는, 인코딩된 스피치 신호에 대해 에러-정정 및/또는 리던던시 코드의 디코딩과 같은 사전 프로세싱 동작들을 수행하도록 구성될 수도 있다. 또한, 그러한 디바이스는 (예를 들어, 트랜시버에서) 장치 (100) 및 장치 (200) 양자의 구현들을 포함할 수도 있다.
제어 로직 (210) 은, 인코딩된 스피치 신호의 인코딩된 프레임들의 코딩 인덱스에 기초한 값들의 시퀀스를 포함하는 제어 신호를 생성하도록 구성된다. 그 시퀀스의 각각의 값은 (후술될 바와 같이, 소거된 프레임의 경우를 제외하고) 인코딩된 스피치 신호의 인코딩된 프레임에 대응하며, 복수의 상태들 중 하나의 상태를 갖는다. 후술될 바와 같은 장치 (200) 의 몇몇 구현에서, 시퀀스는 바이너리-값이다 (즉, 하이 (high) 및 로우 (low) 값의 시퀀스). 후술될 바와 같은 장치 (200) 의 다른 구현에서, 그 시퀀스의 값들은 2개 이상의 상태들을 가질 수도 있다.
제어 로직 (210) 은 각각의 인코딩된 프레임에 대한 코딩 인덱스를 결정하도록 구성될 수도 있다. 예를 들어, 제어 로직 (210) 은, 인코딩된 프레임으로부터의 코딩 인덱스의 적어도 일부를 판독하고, 프레임 에너지와 같은 하나 이상의 파라미터들로부터 인코딩된 프레임의 비트 레이트를 결정하며, 및/또는 인코딩된 프레임의 포맷으로부터 적절한 코딩 모드를 결정하도록 구성될 수도 있다. 다른 방법으로, 장치 (200) 는, 각각의 인코딩된 프레임에 대한 코딩 인덱스를 결정하고 그것을 제어 로직 (210) 에 제공하도록 구성된 또 다른 엘리먼트를 포함하도록 구현될 수도 있거나, 장치 (200) 는 그 장치 (200) 를 포함한 디바이스의 또 다 른 모듈로부터 코딩 인덱스를 수신하도록 구성될 수도 있다.
기대된 바와 같이 수신되지 않거나 복원되기에 너무 많은 에러를 갖고 수신되는 인코딩된 프레임은 프레임 소거로 지칭된다. 장치 (200) 는, 제 2 주파수 대역에 대한 스펙트럼 및 시간 정보를 운반하는 인코딩된 프레임의 부분의 부재와 같은 프레임 소거 또는 부분 프레임 소거를 나타내기 위해 코딩 인덱스의 하나 이상의 상태들이 사용되도록 구성될 수도 있다. 예를 들어, 장치 (200) 는, 코딩 방식 2를 사용하여 인코딩되는 인코딩된 프레임에 대한 코딩 인덱스가 프레임의 고대역 부분의 소거를 나타내도록 구성될 수도 있다.
스피치 디코더 (220) 는, 인코딩된 스피치 신호의 대응하는 인코딩된 프레임들 및 제어 신호의 값들에 기초하여 디코딩된 프레임들을 계산하도록 구성된다. 제어 신호의 값이 제 1 상태를 갖는 경우, 디코더 (220) 는 제 1 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하며, 여기서, 그 디스크립션은 대응하는 인코딩된 프레임으로부터의 정보에 기초한다. 제어 신호의 값이 제 2 상태를 갖는 경우, 디코더 (220) 는 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 검색하고, 그 검색된 디스크립션 및 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하며, 여기서, 그 제 1 주파수 대역에 걸친 디스크립션은 대응하는 인코딩된 프레임으로부터의 정보에 기초한다.
도 32b는 장치 (200) 의 일 구현 (202) 의 블록도를 도시한다. 장치 (202) 는, 제 1 모듈 (230) 및 제 2 모듈 (240) 을 포함한 스피치 디코더 (220) 의 일 구현 (222) 을 포함한다. 모듈들 (230 및 240) 은 디코딩된 프레임들 각각의 서브대역 부분들을 계산하도록 구성된다. 상세하게, 제 1 모듈 (230) 은 제 1 주파수 대역 (예를 들어, 협대역 신호) 에 걸친 프레임의 디코딩된 부분을 계산하도록 구성되고, 제 2 모듈 (240) 은 제어 신호의 값에 기초하여 제 2 주파수 대역 (예를 들어, 고대역 신호) 에 걸친 프레임의 디코딩된 부분을 계산하도록 구성된다.
도 32c는 장치 (200) 의 일 구현 (204) 의 블록도를 도시한다. 파서 (250) 는, 코딩 인덱스를 제어 로직 (210) 에 제공하고 스펙트럼 포락선의 적어도 하나의 디스크립션을 스피치 디코더 (220) 에 제공하기 위해, 인코딩된 프레임의 비트들을 파싱 (parse) 하도록 구성된다. 이러한 예에서, 또한, 장치 (204) 는, 파서 (250) 가 (이용가능할 경우) 각각의 주파수 대역에 걸친 스펙트럼 포락선들의 디스크립션들을 모듈들 (230 및 240) 에 제공하도록 구성되게 하는 장치 (202) 의 일 구현이다. 또한, 파서 (250) 는 시간 정보의 적어도 하나의 디스크립션을 스피치 디코더 (220) 에 제공하도록 구성될 수도 있다. 예를 들어, 파서 (250) 는, (이용가능할 경우) 각각의 주파수 대역에 대한 시간 정보의 디스크립션들을 모듈들 (230 및 240) 에 제공하도록 구현될 수도 있다.
또한, 장치 (204) 는, 제 1 및 제 2 주파수 대역에 걸친 프레임들의 디코딩된 부분들을 결합하여 광대역 스피치 신호를 생성하도록 구성된 필터 뱅크 (260) 를 포함한다. 예를 들어, 그러한 필터 뱅크들의 특정 예는, 명칭이 "SYSTEMS, METHODS, AND APPARATUS FOR SPEECH SIGNAL FILTERING" 인 2007년 4월 19일자로 공 개된 미국 특허 출원 공개 공보 제 2007/088558 호 (Vos 등) 에 설명되어 있다. 예를 들어, 필터 뱅크 (260) 는, 협대역 신호를 필터링하여 제 1 통과대역 신호를 생성하도록 구성된 저대역 통과 필터, 및 고대역 신호를 필터링하여 제 2 통과대역 신호를 생성하도록 구성된 고대역 통과 필터를 포함할 수도 있다. 또한, 필터 뱅크 (260) 는, 예를 들어, 미국 특허 출원 공개 공보 제 2007/088558 호 (Vos 등) 에 설명된 바와 같이, 원하는 대응하는 보간 인자에 따라 협대역 신호 및/또는 고대역 신호의 샘플링 레이트를 증가시키도록 구성된 업샘플러를 포함할 수도 있다.
도 33a는, 스펙트럼 포락선 디스크립션 디코더 (270) 의 예시 (270a) 및 시간 정보 디스크립션 디코더 (280) 의 예시 (280a) 를 포함하는 제 1 모듈 (230) 의 일 구현 (232) 의 블록도를 도시한다. 스펙트럼 포락선 디스크립션 디코더 (270a) 는, (예를 들어, 파서 (250) 에 의해 수신되는 바와 같은) 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 디코딩하도록 구성된다. 시간 정보 디스크립션 디코더 (280a) 는, (파서 (250) 에 의해 수신되는 바와 같은) 제 1 주파수 대역에 대한 시간 정보의 디스크립션을 디코딩하도록 구성된다. 예를 들어, 시간 정보 디스크립션 디코더 (280a) 는 제 1 주파수 대역에 대한 여기 신호를 디코딩하도록 구성될 수도 있다. 합성 필터 (290) 의 일 예시 (290a) 는, 스펙트럼 포락선 및 시간 정보의 디코딩된 디스크립션에 기초한 제 1 주파수 대역 (예를 들어, 협대역 신호) 에 걸친 프레임의 디코딩된 부분을 생성하도록 구성된다. 예를 들어, 합성 필터 (290a) 는, 제 1 주파수 대역에 대한 여기 신호에 응답하여, 디코딩된 부분을 생성하기 위해 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션 내의 값들의 세트 (예를 들어, 하나 이상의 LSP 또는 LPC 계수 벡터들) 에 따라 구성될 수도 있다.
도 33b는 스펙트럼 포락선 디스크립션 디코더 (270) 의 일 구현 (272) 의 블록도를 도시한다. 역양자화기 (310) 는 디스크립션을 역양자화하도록 구성되며, 역변환 블록 (320) 은 그 역양자화된 디스크립션에 역변환을 적용하여 LPC 계수들의 세트를 획득하도록 구성된다. 통상적으로, 시간 정보 디스크립션 디코더 (280) 는 역양자화기를 포함하도록 또한 구성된다.
도 34a는 제 2 모듈 (240) 의 일 구현 (242) 의 블록도를 도시한다. 제 2 모듈 (242) 은, 스펙트럼 포락선 디스크립션 디코더 (270) 의 일 예시 (270b), 버퍼 (300), 및 선택기 (340) 를 포함한다. 스펙트럼 포락선 디스크립션 디코더 (270b) 는 (예를 들어, 파서 (250) 로부터 수신되는 바와 같은) 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 디코딩하도록 구성된다. 버퍼 (300) 는 제 2 주파수 대역에 걸친 스펙트럼 포락선의 하나 이상의 디스크립션들을 기준 스펙트럼 정보로서 저장하도록 구성되고, 선택기 (340) 는, 제어 로직 (210) 에 의해 생성된 제어 신호의 대응하는 값의 상태에 따라, (A) 버퍼 (300) 또는 (B) 디코더 (270b) 중 어느 하나로부터 스펙트럼 포락선의 디코딩된 디스크립션을 선택하도록 구성된다.
또한, 제 2 모듈 (242) 은 고대역 여기 신호 생성기 (330), 및 선택기 (340) 를 통해 수신된 스펙트럼 포락선의 디코딩된 디스크립션에 기초하여 제 2 주파수 대역 (예를 들어, 고대역 신호) 에 걸친 프레임의 디코딩된 부분을 생성하도록 구 성되는 합성 필터 (290) 의 일 예시 (290b) 를 포함한다. 고대역 여기 신호 생성기 (330) 는, (예를 들어, 시간 정보 디스크립션 디코더 (280a) 에 의해 생성되는 바와 같은) 제 1 주파수 대역에 대한 여기 신호에 기초하여, 제 2 주파수 대역에 대한 여기 신호를 생성하도록 구성된다. 부가적으로 또는 다른 방법으로, 생성기 (330) 는, 고대역 여기 신호를 생성하기 위해 랜덤 잡음의 스펙트럼 및/또는 진폭 쉐이핑을 수행하도록 구성될 수도 있다. 생성기 (330) 는, 상술된 바와 같은 고대역 여기 신호 생성기 (A60) 의 일 예시로서 구현될 수도 있다. 합성 필터 (290b) 는, 고대역 여기 신호에 응답하여 제 2 주파수 대역에 걸친 프레임의 디코딩된 부분을 생성하기 위해, 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션내의 값들의 세트 (예를 들어, 하나 이상의 LSP 또는 LPC 계수 벡터들) 에 따라 구성된다.
제 2 모듈 (240) 의 일 구현 (242) 을 포함하는 장치 (202) 의 일 구현의 일 예에서, 제어 로직 (210) 은, 시퀀스의 각각의 값이 상태 A 또는 상태 B를 갖도록 바이너리 신호를 선택기 (340) 로 출력하도록 구성된다. 이러한 경우, 현재 프레임의 코딩 인덱스가 그 현재의 프레임이 비활성이라고 나타내면, 제어 로직 (210) 은, 선택기 (340) 로 하여금 버퍼 (300) 의 출력을 선택하게 하는 상태 A를 갖는 값 (즉, 선택 A) 을 생성한다. 그렇지 않으면, 제어 로직 (210) 은, 선택기 (340) 로 하여금 디코더 (270b) 의 출력을 선택하게 하는 상태 B를 갖는 값 (즉, 선택 B) 을 생성한다.
장치 (202) 는, 제어 로직 (210) 이 버퍼 (300) 의 동작을 제어하도록 배열 될 수도 있다. 예를 들어, 버퍼 (300) 는, 상태 B를 갖는 제어 신호의 값이 버퍼 (300) 로 하여금 디코더 (270b) 의 대응하는 출력을 저장하게 하도록 배열될 수도 있다. 그러한 제어는, 버퍼 (300) 의 기입 인에이블 입력에 그 제어 신호를 적용함으로써 구현될 수도 있으며, 여기서, 그 이력은 상태 B가 그의 활성 상태에 대응하도록 구성된다. 다른 방법으로, 제어 로직 (210) 은, 인코딩된 스피치 신호의 인코딩된 프레임들의 코딩 인덱스에 기초한 값들의 시퀀스를 또한 포함하는 제 2 제어 신호를 생성하여, 버퍼 (300) 의 동작을 제어하도록 구현될 수도 있다.
도 34b는 제 2 모듈 (240) 의 일 구현 (244) 의 블록도를 도시한다. 제 2 모듈 (244) 은, 스펙트럼 포락선 디스크립션 디코더 (270b), 및 (예를 들어, 파서 (250) 로부터 수신된 바와 같은) 제 2 주파수 대역에 대한 시간 정보의 디스크립션을 인코딩하도록 구성된 시간 정보 디스크립션 디코더 (280) 의 일 예시 (280b) 를 포함한다. 또한, 제 2 모듈 (244) 은, 제 2 주파수 대역에 걸친 시간 정보의 하나 이상의 디스크립션들을 기준 시간 정보로서 저장하도록 또한 구성되는 버퍼 (300) 의 일 구현 (302) 을 포함한다.
제 2 모듈 (244) 은, 제어 로직 (210) 에 의해 생성된 제어 신호의 대응하는 값의 상태에 따라, (A) 버퍼 (302) 또는 (B) 디코더들 (270b, 280b) 중 어느 하나로부터의 디코딩된 디스크립션 및 스펙트럼 포락선의 디코딩된 디스크립션을 선택하도록 구성된 선택기 (340) 의 일 구현 (342) 을 포함한다. 합성 필터 (290) 의 일 예시 (290b) 는, 선택기 (342) 를 통해 수신된 시간 정보 및 스펙트럼 포락선의 디코딩된 디스크립션들에 기초한 제 2 주파수 대역 (예를 들어, 고대역 신호) 에 걸친 프레임의 디코딩된 부분을 생성하도록 구성된다. 제 2 모듈 (244) 을 포함하는 장치 (202) 의 통상적인 구현에서, 시간 정보 디스크립션 디코더 (280b) 는 제 2 주파수 대역에 대한 여기 신호를 포함한 시간 정보의 디코딩된 디스크립션을 생성하도록 구성되며, 합성 필터 (290b) 는, 여기 신호에 응답하여 제 2 주파수 대역에 걸친 프레임의 디코딩된 부분을 생성하기 위해, 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션내의 값들의 세트 (예를 들어, 하나 이상의 LSP 또는 LPC 계수 벡터들) 에 따라 구성된다.
도 34c는 버퍼 (302) 및 선택기 (342) 를 포함하는 제 2 모듈 (242) 의 일 구현 (246) 의 블록도를 도시한다. 또한, 제 2 모듈 (246) 은, 제 2 주파수 대역에 대한 시간 포락선의 디스크립션을 디코딩하도록 구성된 시간 정보 디스크립션 디코더 (280) 의 일 예시 (280c), 및 선택기 (342) 를 통해 수신된 시간 포락선의 디스크립션을 제 2 주파수 대역에 걸친 프레임의 디코딩된 부분에 적용하도록 구성된 이득 제어 엘리먼트 (350; 예를 들어, 승산기 또는 증폭기) 를 포함한다. 시간 포락선의 디코딩된 디스크립션이 이득 쉐이프 값들을 포함하는 경우에 있어서, 이득 제어 엘리먼트 (350) 는 디코딩된 부분 각각의 서브프레임들에 이득 쉐이프 값들을 적용하도록 구성된 로직을 포함할 수도 있다.
도 34a 내지 도 34c는, 버퍼 (300) 가 스펙트럼 포락선 (및, 몇몇 경우에서는 시간 정보) 의 완전히 디코딩된 디스크립션들을 수신하는 제 2 모듈 (240) 의 구현들을 도시한다. 버퍼 (300) 가 완전히 디코딩되지 않은 디스크립션들을 수신하도록 유사한 구현들이 배열될 수도 있다. 예를 들어, (예를 들어, 파서 (250) 로부터 수신되는 바와 같은) 디스크립션을 양자화된 형태로 저장함으로써 저장 요건을 감소시키는 것이 바람직할 수도 있다. 그러한 경우, 버퍼 (300) 로부터 선택기 (340) 로의 신호 경로는, 역양자화기 및/또는 역변환 블록과 같은 디코딩 로직을 포함하도록 구성될 수도 있다.
도 35a는, 제어 로직 (210) 의 일 구현이 동작하도록 구성될 수도 있는 상태도를 도시한다. 이러한 다이어그램에서, 경로 라벨들은 현재의 프레임의 코딩 방식과 관련된 프레임 타입을 나타내며, 여기서 A는 활성 프레임들에 대해서만 사용된 코딩 방식을 나타내고, I는 비활성 프레임들에 대해서만 사용된 코딩 방식을 나타내며, ("혼합된" 에 대한) M은 활성 프레임들 및 비활성 프레임들에 대해 사용된 코딩 방식을 나타낸다. 그러한 디코더는 도 18a에 도시된 바와 같은 코딩 방식들의 세트를 사용하는 코딩 시스템에 포함될 수도 있으며, 여기서, 방식 1, 방식 2, 및 방식 3은, 각각, 경로 라벨 A, M, 및 I에 대응한다. 도 35a에서의 상태 라벨들은, 제어 신호(들)의 대응하는 값(들)의 상태를 나타낸다.
상술된 바와 같이, 장치 (202) 는, 제어 로직 (210) 이 버퍼 (300) 의 동작을 제어하도록 배열될 수도 있다. 장치 (202) 가 2개의 부분에 기준 스펙트럼 정보를 저장하는 동작을 수행하도록 구성되는 경우에 있어서, 제어 로직 (210) 은 3개의 상이한 태스크들, 즉, (1) 인코딩된 프레임에 기초한 정보를 일시적으로 저장하는 태스크, (2) 일시적으로 저장된 정보의 저장을 기준 스펙트럼 및/또는 시간 정보로서 완료하는 태스크, 및 (3) 저장된 기준 스펙트럼 및/또는 시간 정보를 출력하는 태스크 중 선택된 태스크를 수행하기 위해 버퍼 (300) 를 제어하도록 구성 될 수도 있다.
그러한 일 예에서, 제어 로직 (210) 은, 제어 신호의 값들이 적어도 4개의 가능한 상태를 갖는 그 제어 신호를 생성하도록 구현되며, 각각의 상태는 선택기 (340) 및 버퍼 (300) 의 동작을 제어하는 도 35a에 도시된 다이어그램의 각각의 상태에 대응한다. 또 다른 그러한 예에서, 제어 로직 (210) 은, (1) 선택기 (340) 의 동작을 제어하기 위해 그의 값들이 적어도 2개의 가능한 상태를 갖는 제어 신호 및 (2) 인코딩된 스피치 신호의 인코딩된 프레임들의 코딩 인덱스에 기초한 값들의 시퀀스를 포함하고, 그의 값들이 버퍼 (300) 의 동작을 제어하기 위해 적어도 3개의 가능한 상태들을 갖는 제 2 제어 신호를 생성하도록 구현된다.
일시적으로 저장된 정보의 저장을 완료하는 동작이 선택되는 프레임의 프로세싱 동안, 선택기 (340) 가 그 정보를 선택하는데 그 일시적으로 저장된 정보가 또한 이용가능하도록 버퍼 (300) 를 구성하는 것이 바람직할 수도 있다. 그러한 경우, 제어 로직 (210) 은, 약간 상이한 시간에 선택기 (340) 및 버퍼 (300) 를 제어하기 위해 신호들의 현재값들을 출력하도록 구성될 수도 있다. 예를 들어, 제어 로직 (210) 은, 선택기 (340) 가 일시적으로 저장된 정보를 선택하기 위하여 버퍼 (300) 가 정시에 그 정보를 출력하는 프레임 주기에서 충분하게 판독 포인터를 초기에 이동시키기 위해 버퍼 (300) 를 제어하도록 구성될 수도 있다.
도 13b를 참조하여 상술된 바와 같이, 방법 M100 의 일 구현을 수행하는 스피치 인코더가 다른 비활성 프레임들에 의해 둘러싸인 비활성 프레임을 인코딩하기 위해 더 높은 비트 레이트를 사용하는 것이 종종 바람직할 수도 있다. 그러한 경우, 대응하는 스피치 인코더가 그 인코딩된 프레임에 기초한 정보를 기준 스펙트럼 및/또는 시간 정보로서 저장하여, 그 정보가 그 시리즈의 장래의 비활성 프레임들을 디코딩할 시에 사용될 수도 있는 것이 바람직할 수도 있다.
장치 (200) 의 일 구현의 다양한 엘리먼트들은, 의도된 애플리케이션에 대해 적절한 것으로 간주되는 하드웨어, 소프트웨어, 및/또는 펌웨어의 임의의 조합으로 구현될 수도 있다. 예를 들어, 그러한 엘리먼트들은, 예를 들어, 동일한 칩 또는 칩셋의 2개 이상의 칩들 사이에 상주하는 전자 및/또는 광 디바이스로서 제조될 수도 있다. 그러한 디바이스의 일 예는 트랜지스터 또는 로직 게이트와 같은 로직 엘리먼트들의 고정형 또는 프로그래밍가능한 어레이이며, 이들 엘리먼트들 중 임의의 엘리먼트는 하나 이상의 그러한 어레이들로서 구현될 수도 있다. 이들 엘리먼트들 중 임의의 2개 이상, 또는 심지어 모든 엘리먼트들은 동일한 어레이 또는 어레이들 내에 구현될 수도 있다. 그러한 어레이 또는 어레이들은 하나 이상의 칩들 (예를 들어, 2개 이상의 칩들을 포함하는 칩셋) 내에 구현될 수도 있다.
또한, 여기에 설명된 바와 같은 장치 (200) 의 다양한 구현들의 하나 이상의 엘리먼트들은, 마이크로프로세서, 임베디드 프로세서, IP 코어, 디지털 신호 프로세서, FPGA (field-programmable gate array), ASSP (application-specific standard product), 및 ASIC (application-specific integrated circuit) 와 같은 로직 엘리먼트들의 하나 이상의 고정형 또는 프로그래밍가능한 어레이 상에서 실행하도록 배열되는 명령어들의 하나 이상의 세트로서 일부 또는 전부 구현될 수도 있다. 또한, 장치 (200) 의 일 구현의 다양한 엘리먼트들 중 임의의 엘리먼트는 하나 이상의 컴퓨터들 (예를 들어, 명령어들의 하나 이상의 세트 또는 시퀀스를 실행하도록 프로그래밍되는 하나 이상의 어레이들을 포함하며, 또한, "프로세서" 로서 지칭되는 머신들) 로서 구현될 수도 있으며, 이들 엘리먼트들 중 임의의 2개 이상의 엘리먼트 또는 심지어 모든 엘리먼트는 동일한 그 컴퓨터 또는 컴퓨터들내에 구현될 수도 있다.
장치 (200) 의 일 구현의 다양한 엘리먼트들은, 셀룰러 전화기 또는 그러한 통신 능력을 갖는 다른 디바이스와 같은 무선 통신용 디바이스내에 포함될 수도 있다. 그러한 디바이스는, 서킷-스위칭 및/또는 (예를 들어, VoIP와 같은 하나 이상의 프로토콜을 사용하여) 패킷-스위칭 네트워크와 통신하도록 구성될 수도 있다. 그러한 디바이스는, 디-인터리빙, 디-펑처링, 하나 이상의 콘볼루션 코드들의 디코딩, 하나 이상의 에러 정정 코드들의 디코딩, 네트워크 프로토콜 (예를 들어, 이더넷, TCP/IP, cdma2000) 의 하나 이상의 레이어들의 디코딩, 무선-주파수 (RF) 복조, 및/또는 RF 수신과 같은, 인코딩된 프레임들을 운반하는 신호에 대해 동작들을 수행하도록 구성될 수도 있다.
장치 (200) 의 일 구현의 하나 이상의 엘리먼트들이, 그 장치가 포함된 디바이스 또는 시스템의 또 다른 동작에 관한 태스크와 같이, 그 장치의 동작에 직접 관련되지 않은 명령어들의 다른 세트를 실행하거나 태스크를 수행하는데 사용되는 것이 가능하다. 또한, 장치 (200) 의 일 구현의 하나 이상의 엘리먼트들이 공통적인 구조 (예를 들어, 상이한 시간에 상이한 엘리먼트들에 대응하는 코드의 일부를 실행하는데 사용되는 프로세서, 상이한 시간에 상이한 엘리먼트들에 대응하는 태스크를 수행하도록 실행되는 명령어들의 세트, 또는 상이한 시간에 상이한 엘리먼트들에 대해 동작들을 수행하는 전자 및/또는 광 디바이스들의 배열) 를 갖는 것이 가능하다. 그러한 일 예에서, 제어 로직 (210), 제 1 모듈 (230), 및 제 2 모듈 (240) 은 동일한 프로세서 상에서 실행하도록 배열된 명령어들의 세트로서 구현된다. 또 다른 그러한 예에서, 스펙트럼 포락선 디스크립션 디코더들 (270a 및 270b) 은 상이한 시간에 실행하는 명령어들의 동일한 세트로서 구현된다.
셀룰러 전화기 또는 그러한 통신 능력을 갖는 다른 디바이스와 같은 무선 통신용 디바이스는, 장치 (100) 및 장치 (200) 양자의 구현들을 포함하도록 구성될 수도 있다. 그러한 경우, 장치 (100) 및 장치 (200) 가 공통적인 구조를 갖는 것이 가능하다. 그러한 일 예에서, 장치 (100) 및 장치 (200) 는, 동일한 프로세서 상에서 실행하도록 배열되는 명령어들의 세트를 포함하도록 구현된다.
풀 듀플렉스 전화 통신 동안 임의의 시간에서, 스피치 인코더들 중 적어도 하나의 스피치 인코더로의 입력이 비활성 프레임일 것이 기대될 수도 있다. 일련의 비활성 프레임들에서 모든 프레임들보다는 더 적은 프레임 동안, 인코딩된 프레임들을 송신하도록 스피치 인코더를 구성하는 것이 바람직할 수도 있다. 또한, 그러한 동작은 불연속 송신 (DTX) 로 지칭된다. 일 예에서, 스피치 인코더는, n개의 연속하는 비활성 프레임들 각각의 스트링에 대해 하나의 인코딩된 프레임 (또한, "사일런스 디스크립터" 또는 SID로 지칭됨) 을 송신함으로써 DTX를 수행하며, 여기서, n은 32이다. 대응하는 디코더는, 비활성 프레임들을 합성하기 위해 컴포트 (comfort) 잡음 생성 알고리즘에 의하여 사용된 잡음 생성 모델을 업 데이트하기 위해 SID에서의 정보를 적용한다. n의 다른 통상적인 값은 8 및 16을 포함한다. SID를 나타내기 위해 당업계에서 사용되는 다른 명칭들은, "사일런스 디스크립션에 대한 업데이트", 사일런스 삽입 디스크립션", "사일런스 삽입 디스크립터", "컴포트 잡음 디스크립터 프레임". 및 "컴포트 잡음 파라미터" 를 포함한다.
방법 M200 의 일 구현에서, 기준 인코딩된 프레임은, 그들이 스피치 신호의 고대역 부분에 대한 사일런스 디스크립션에 임시 업데이트를 제공한다는 점에서 SID와 유사하다는 것을 인식할 수도 있다. DTX의 잠재적인 이점들이 서킷-스위칭 네트워크보다 패킷-스위칭 네트워크에서 통상적으로 더 크지만, 방법 M100 및 방법 M200 이 서킷-스위칭 및 패킷-스위칭 네트워크 양자에 적용가능하다는 것을 명백히 알 수 있다.
방법 M100 의 일 구현은, 인코딩된 프레임들이 모든 비활성 프레임들보다 더 적은 비활성 프레임 동안 송신되도록 (예를 들어, 패킷-스위칭 네트워크에서) DTX와 조합될 수도 있다. 그러한 방법을 수행하는 스피치 인코더는, 종종, 몇몇 일정한 간격 (예를 들어, 일련의 비활성 프레임들에서의 매 8번째, 16번째, 또는 32번째 프레임) 에서 또는 몇몇 이벤트시에 SID를 송신하도록 구성될 수도 있다. 도 35b는 SID가 매 6번째 프레임에서 송신되는 일 예를 도시한다. 이러한 경우, SID는 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함한다.
방법 M200 의 대응하는 구현은, 비활성 프레임에 후속하는 프레임 주기 동안 인코딩된 프레임의 수신 실패에 응답하여, 기준 스펙트럼 정보에 기초한 프레임을 생성하도록 구성될 수도 있다. 도 35b에 도시된 바와 같이, 방법 M200 의 그러한 구현은, 하나 이상의 수신 SID들로부터의 정보에 기초하여, 각각의 개재 (intervening) 비활성 프레임 동안 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 획득하도록 구성될 수도 있다. 예를 들어, 그러한 동작은, 도 30a 내지 도 30c에 도시된 예에서와 같이, 2개의 가장 최근의 SID들로부터의 스펙트럼 포락선들의 디스크립션들 사이에서의 보간을 포함할 수도 있다. 제 2 주파수 대역에 있어서, 그 방법은, (예를 들어, 여기에 설명된 예들 중 임의의 예에 따라) 하나 이상의 최근의 기준 인코딩된 프레임들로부터의 정보에 기초하여 각각의 개재 비활성 프레임 동안 스펙트럼 포락선의 디스크립션 (및 가급적 시간 포락선의 디스크립션) 을 획득하도록 구성될 수도 있다. 또한, 그러한 방법은, 하나 이상의 최근의 SID들로부터 제 1 주파수 대역에 대한 여기 신호에 기초한 제 2 주파수 대역에 대한 여기 신호를 생성하도록 구성될 수도 있다.
설명된 구성들에 대한 상기 표현은 당업자가 여기에 개시된 방법들 및 다른 구조들을 수행 또는 사용할 수 있도록 제공된다. 여기에 개시되고 도시된 흐름도, 블록도, 상태도, 및 다른 구조는 단지 예일 뿐이며, 이들 구조들의 다른 변형들 또한 본 발명의 범위내에 있다. 이들 구성들에 대한 다양한 변형들이 가능하며, 여기에서 제공된 일반적인 원리들이 또한 다른 구성들에 적용될 수도 있다. 예를 들어, 다른 방법으로 또는 부가적으로 및 아날로그 방식으로, 스피치 신호의 협대역 부분의 범위 위의 주파수를 포함하는 스피치 신호의 고대역 부분을 프로세싱하는 여기에 설명된 다양한 엘리먼트들 및 태스크들은, 스피치 신호의 협대역 부분의 범위 아래의 주파수를 포함하는 스피치 신호의 협대역 부분을 프로세싱하기 위해 적용될 수도 있다. 그러한 경우, 협대역 여기 신호로부터 고대역 여기 신호를 유도하기 위한 개시된 기술들 및 구조들은, 협대역 여기 신호로부터 저대역 여기 신호를 유도하기 위해 사용될 수도 있다. 따라서, 본 발명은 상술된 구성에 제한하려고 의도되는 것이 아니라, 오히려 여기에서 임의의 방식으로 개시된 원리들 및 신규한 특성들에 부합하는 최광의 범위를 부여하려는 것이며, 그 원리들 및 신규한 특성들은, 본 출원의 일부를 형성하고 출원된 바와 같은 첨부된 청구항내에 포함된다.
여기에 설명된 바와 같은 스피치 인코더, 스피치 인코딩 방법, 스피치 디코더, 및/또는 스피치 디코딩 방법과 함께 사용되거나 그와 함께 사용하도록 구성될 수도 있는 코덱들의 예는, 3GPP2 C.S0014-C 버전 1.0, "Enhanced Variable Rate Codec, Speech Service Options 3, 68, and 70 for Wideband Spread Spectrum Digital System" (2007년 1월 VA, Arlington, Third Generation Partnership Project 2) 문서에 설명된 바와 같은 EVRC (Enhanced Variable Rate Codec); ETSI TS 126 092 V6.0.0 (2004년 12월, FR, Sophia Antipolis Cedex) 문서에 설명된 바와 같은 AMR (Adaptive Multi Rate) 스피치 코덱; 및 ETSI TS 126 192 V6.0.0 (2004년 12월, ETSI) 문서에 설명된 바와 같은 AMR 광대역 스피치 코덱을 포함한다.
당업자는, 정보 및 신호들이 임의의 다양하고 상이한 기술들 및 기법들을 사용하여 표현될 수도 있음을 이해할 것이다. 예를 들어, 본 명세서 전반에 걸쳐 참조될 수도 있는 데이터, 명령어, 명령, 정보, 신호, 비트 및 심볼은, 전압, 전류, 전자기파, 자기장 또는 입자, 광학 필드 또는 입자, 또는 이들의 임의의 조합에 의해 표현될 수도 있다. 인코딩된 프레임들이 유도되는 신호가 "스피치 신호" 로 지칭되지만, 이러한 신호가 활성 프레임 동안 음악 또는 비-스피치 정보 콘텐츠를 운반할 수도 있다는 것이 또한 고려되고 그에 의해 개시된다.
또한, 당업자는, 여기에 개시된 구성들과 함께 설명된 다양한 예시적인 로직 블록, 모듈, 회로, 및 동작이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로서 구현될 수도 있다는 것을 인식할 것이다. 그러한 로직 블록, 모듈, 회로 및 동작은, 범용 프로세서, 디지털 신호 프로세서 (DSP), ASIC, FPGA 또는 다른 프로그래밍가능한 로직 디바이스, 별도의 게이트 또는 트랜지스터 로직, 별도의 하드웨어 컴포넌트, 또는 여기에 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 다른 방법으로, 그 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는, 컴퓨팅 디바이스들의 조합, 예를 들어, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다.
여기에 설명된 방법들 및 알고리즘들의 태스크들은 직접 하드웨어로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이들의 조합으로 구현될 수도 있다. 소프트웨어 모듈은, RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 공지된 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는, 프로세서가 그 저장 매체로부터 정보를 판독할 수 있고 그 저장 매체에 정보를 기입할 수 있도록 그 프로세서에 커플링된다. 다른 방법으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC에 상주할 수도 있다. ASIC는 사용자 단말기에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기에서 별도의 컴포넌트들로서 상주할 수도 있다.
여기에 설명된 구성들 각각은 하드-와이어된 회로로서, 주문형 집적 회로로 제조된 회로 구성으로서, 또는 비-휘발성 저장부로 로딩된 펌웨어 프로그램 또는 머신-판독가능 코드로서 데이터 저장 매체로부터 또는 데이터 저장 매체에 로딩된 소프트웨어 프로그램으로서 적어도 부분적으로 구현될 수도 있으며, 그러한 코드는 마이크로프로세서 또는 다른 디지털 신호 프로세싱 유닛과 같은 로직 엘리먼트들의 어레이에 의해 실행가능한 명령어들이다. 데이터 저장 매체는, (동적 또는 정적 RAM (랜덤-액세스 메모리), ROM (판독-전용 메모리), 및/또는 플래시 RAM을 제한없이 포함할 수도 있는) 반도체 메모리, 강유전, 자기저항, 오브닉 (ovonic), 중합성, 또는 위상-변화 메모리; 또는 자성 또는 광 디스크와 같은 디스크 매체와 같은 저장 엘리먼트들의 어레이일 수도 있다. "소프트웨어" 라는 용어는, 소스 코드, 어셈블리어 코드, 머신 코드, 바이너리 코드, 펌웨어, 매크로코드, 마이크로코드, 로직 엘리먼트들의 어레이에 의해 실행가능한 명령어들의 임의의 하나 이상의 세트 또는 시퀀스, 및 그러한 예들의 임의의 조합을 포함하는 것으로 이해되어 야 한다.

Claims (74)

  1. 스피치 신호의 프레임들을 인코딩하는 방법으로서,
    상기 스피치 신호의 제 1 프레임에 기초하고, p비트의 길이를 갖는 제 1 인코딩된 프레임을 생성하는 단계로서, 상기 p는 0-아닌 양의 정수인, 상기 제 1 인코딩된 프레임의 생성 단계;
    상기 스피치 신호의 제 2 프레임에 기초하고, q비트의 길이를 갖는 제 2 인코딩된 프레임을 생성하는 단계로서, 상기 q는 상기 p와는 상이한 0-아닌 양의 정수인, 상기 제 2 인코딩된 프레임의 생성 단계; 및
    상기 스피치 신호의 제 3 프레임에 기초하고, r비트의 길이를 갖는 제 3 인코딩된 프레임을 생성하는 단계로서, 상기 r은 상기 q보다 작은 0-아닌 양의 정수인, 상기 제 3 인코딩된 프레임의 생성 단계를 포함하며,
    상기 제 2 프레임은 상기 제 1 프레임 이후에 발생하는 비활성 프레임이고, 상기 제 3 프레임은 상기 제 2 프레임 이후에 발생하는 비활성 프레임이며, 상기 제 1 프레임과 상기 제 3 프레임 사이에서 상기 스피치 신호의 모든 프레임들은 비활성이고,
    상기 제 2 인코딩된 프레임은, (A) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션 (description), 및 (B) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하는, 스피치 신호 프레임 인코딩 방법.
  2. 제 1 항에 있어서,
    상기 q는 상기 p보다 작은, 스피치 신호 프레임 인코딩 방법.
  3. 제 1 항에 있어서,
    상기 스피치 신호에서, 적어도 하나의 프레임이 상기 제 1 프레임과 상기 제 2 프레임 사이에서 발생하는, 스피치 신호 프레임 인코딩 방법.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 제 2 주파수 대역의 적어도 일부는 상기 제 1 주파수 대역보다 높은, 스피치 신호 프레임 인코딩 방법.
  6. 제 5 항에 있어서,
    상기 제 1 주파수 대역과 상기 제 2 주파수 대역은 적어도 200 헤르츠만큼 중첩하는, 스피치 신호 프레임 인코딩 방법.
  7. 제 1 항에 있어서,
    상기 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션 및 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션 중 적어도 하나는, 상기 스피치 신호의 대응하는 부분들의 스펙트럼 포락선들의 적어도 2개의 디스크립션들의 평균에 기초하며, 상기 대응하는 부분들 각각은 상기 스피치 신호의 비활성 프레임을 포함하는, 스피치 신호 프레임 인코딩 방법.
  8. 제 1 항에 있어서,
    상기 제 2 인코딩된 프레임은 상기 스피치 신호의 적어도 2개의 비활성 프레임들로부터의 정보에 기초하는, 스피치 신호 프레임 인코딩 방법.
  9. 제 1 항에 있어서,
    상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션의 길이는 u비트이고, 상기 u는 0-아닌 양의 정수이며,
    상기 제 1 인코딩된 프레임은, 상기 제 1 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하고, 상기 디스크립션의 길이는 v비트이고, 상기 v는 상기 u보다 크지 않은 0-아닌 양의 정수인, 스피치 신호 프레임 인코딩 방법.
  10. 제 9 항에 있어서,
    상기 v는 상기 u보다 작은, 스피치 신호 프레임 인코딩 방법.
  11. 제 1 항에 있어서,
    상기 제 3 인코딩된 프레임은 상기 제 3 프레임을 포함하는 상기 스피치 신호의 일부의 스펙트럼 포락선의 디스크립션을 포함하는, 스피치 신호 프레임 인코딩 방법.
  12. 제 1 항에 있어서,
    상기 제 3 인코딩된 프레임은, (A) 상기 제 3 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지만, (B) 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지 않는, 스피치 신호 프레임 인코딩 방법.
  13. 제 1 항에 있어서,
    상기 제 2 인코딩된 프레임은, 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의 시간 포락선의 디스크립션을 포함하며,
    상기 제 3 인코딩된 프레임은, 상기 제 3 프레임을 포함하는 상기 스피치 신호의 일부의 시간 포락선의 디스크립션을 포함하는, 스피치 신호 프레임 인코딩 방법.
  14. 제 1 항에 있어서,
    상기 제 2 인코딩된 프레임은, (A) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 제 1 주파수 대역에 대한 시간 포락선의 디스크립션, 및 (B) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 대한 시간 포락선의 디스크립션을 포함하며,
    상기 제 3 인코딩된 프레임은 상기 제 2 주파수 대역에 대한 시간 포락선의 디스크립션을 포함하지 않는, 스피치 신호 프레임 인코딩 방법.
  15. 제 1 항에 있어서,
    상기 제 2 프레임에 대한 연속하는 활성 프레임들의 가장 최근의 시퀀스의 길이는, 소정의 임계값과 적어도 동일한, 스피치 신호 프레임 인코딩 방법.
  16. 제 1 항에 있어서,
    상기 q는 상기 p보다 작으며,
    상기 제 1 프레임과 상기 제 2 프레임 사이의 상기 스피치 신호의 적어도 하나의 비활성 프레임 각각에 대하여, p비트의 길이를 갖는 대응하는 인코딩된 프레임을 생성하는 단계를 포함하는, 스피치 신호 프레임 인코딩 방법.
  17. 스피치 신호의 프레임들을 인코딩하는 방법으로서,
    상기 스피치 신호의 제 1 프레임에 기초하고, q비트의 길이를 갖는 제 1 인코딩된 프레임을 생성하는 단계로서, 상기 q는 0-아닌 양의 정수인, 상기 제 1 인코딩된 프레임의 생성 단계; 및
    상기 스피치 신호의 제 2 프레임에 기초하고, r비트의 길이를 갖는 제 2 인코딩된 프레임을 생성하는 단계로서, 상기 r은 상기 q보다 작은 0-아닌 양의 정수인, 상기 제 2 인코딩된 프레임의 생성 단계를 포함하며,
    상기 제 1 인코딩된 프레임은, (A) 상기 제 1 프레임을 포함하는 상기 스피치 신호의 일부의, 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션, 및 (B) 상기 제 1 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하고,
    상기 제 2 인코딩된 프레임은, (A) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지만, (B) 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지 않는, 스피치 신호 프레임 인코딩 방법.
  18. 제 17 항에 있어서,
    상기 제 2 프레임은 상기 스피치 신호에서 상기 제 1 프레임에 바로 후속하는, 스피치 신호 프레임 인코딩 방법.
  19. 제 17 항에 있어서,
    상기 제 1 프레임과 상기 제 2 프레임 사이에서 상기 스피치 신호의 모든 프레임들은 비활성인, 스피치 신호 프레임 인코딩 방법.
  20. 제 17 항에 있어서,
    상기 제 2 주파수 대역의 적어도 일부는 상기 제 1 주파수 대역보다 높은, 스피치 신호 프레임 인코딩 방법.
  21. 제 20 항에 있어서,
    상기 제 1 주파수 대역과 상기 제 2 주파수 대역은 적어도 200 헤르츠만큼 중첩하는, 스피치 신호 프레임 인코딩 방법.
  22. 스피치 신호의 프레임들을 인코딩하는 장치로서,
    상기 스피치 신호의 제 1 프레임에 기초하여, p비트의 길이를 갖는 제 1 인코딩된 프레임을 생성하는 수단으로서, 상기 p는 0-아닌 양의 정수인, 상기 제 1 인코딩된 프레임의 생성 수단;
    상기 스피치 신호의 제 2 프레임에 기초하여, q비트의 길이를 갖는 제 2 인코딩된 프레임을 생성하는 수단으로서, 상기 q는 상기 p와는 상이한 0-아닌 양의 정수인, 상기 제 2 인코딩된 프레임의 생성 수단; 및
    상기 스피치 신호의 제 3 프레임에 기초하여, r비트의 길이를 갖는 제 3 인코딩된 프레임을 생성하는 수단으로서, 상기 r은 상기 q보다 작은 0-아닌 양의 정수인, 상기 제 3 인코딩된 프레임의 생성 수단을 포함하며,
    상기 제 2 프레임은 상기 제 1 프레임 이후에 발생하는 비활성 프레임이고, 상기 제 3 프레임은 상기 제 2 프레임 이후에 발생하는 비활성 프레임이며, 상기 제 1 프레임과 상기 제 3 프레임 사이에서 상기 스피치 신호의 모든 프레임들은 비활성이고,
    상기 제 2 인코딩된 프레임을 생성하는 수단은, (A) 상기 제 2 프레임을 포함하는 상기 스피치 신호 일부의, 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션, 및 (B) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하는 상기 제 2 인코딩된 프레임을 생성하도록 구성되는, 스피치 신호 프레임 인코딩 장치.
  23. 제 22 항에 있어서,
    상기 제 1 프레임 및 상기 제 3 프레임 그리고 상기 제 1 프레임과 상기 제 3 프레임 사이의 프레임들의 각각의 프레임에 대하여, 프레임이 활성인지 또는 비활성인지의 여부를 표시하는 수단;
    상기 제 1 프레임에 대해 표시하는 수단의 표시에 응답하여, 제 1 코딩 방식을 선택하는 수단;
    상기 제 2 프레임이 비활성이고 상기 제 1 프레임과 상기 제 2 프레임 사이의 임의의 프레임들이 비활성이라는 것을 표시하는 수단의 표시에 응답하여, 상기 제 2 프레임에 대해 제 2 코딩 방식을 선택하는 수단; 및
    상기 제 3 프레임이, 상기 제 1 프레임 이후에 발생한 연속하는 일련의 비활성 프레임들 중 하나의 프레임이라는 것을 표시하는 수단의 표시에 응답하여, 상기 제 3 프레임에 대해 제 3 코딩 방식을 선택하는 수단을 포함하며,
    상기 제 1 인코딩된 프레임을 생성하는 상기 수단은 상기 제 1 코딩 방식에 따라 상기 제 1 인코딩된 프레임을 생성하도록 구성되고,
    상기 제 2 인코딩된 프레임을 생성하는 상기 수단은 상기 제 2 코딩 방식에 따라 상기 제 2 인코딩된 프레임을 생성하도록 구성되며,
    상기 제 3 인코딩된 프레임을 생성하는 상기 수단은 상기 제 3 코딩 방식에 따라 상기 제 3 인코딩된 프레임을 생성하도록 구성되는, 스피치 신호 프레임 인코딩 장치.
  24. 제 22 항에 있어서,
    상기 스피치 신호에서, 적어도 하나의 프레임이 상기 제 1 프레임과 상기 제 2 프레임 사이에서 발생하는, 스피치 신호 프레임 인코딩 장치.
  25. 삭제
  26. 제 22 항에 있어서,
    상기 제 3 인코딩된 프레임을 생성하는 수단은, (A) 상기 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지만, (B) 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지 않는, 상기 제 3 인코딩된 프레임을 생성하도록 구성되는, 스피치 신호 프레임 인코딩 장치.
  27. 제 22 항에 있어서,
    상기 제 3 인코딩된 프레임을 생성하는 수단은, 상기 제 3 프레임을 포함하는 상기 스피치 신호의 일부의 스펙트럼 포락선의 디스크립션을 포함하는 상기 제 3 인코딩된 프레임을 생성하도록 구성되는, 스피치 신호 프레임 인코딩 장치.
  28. 컴퓨터-판독가능 매체로서,
    적어도 하나의 컴퓨터로 하여금, 스피치 신호의 제 1 프레임에 기초하고, p비트의 길이를 갖는 제 1 인코딩된 프레임을 생성하게 하는 코드로서, 상기 p는 0-아닌 양의 정수인, 상기 제 1 인코딩된 프레임을 생성하게 하는 코드;
    상기 적어도 하나의 컴퓨터로 하여금, 상기 스피치 신호의 제 2 프레임에 기초하고, q비트의 길이를 갖는 제 2 인코딩된 프레임을 생성하게 하는 코드로서, 상기 q는 상기 p와는 상이한 0-아닌 양의 정수인, 상기 제 2 인코딩된 프레임을 생성하게 하는 코드; 및
    상기 적어도 하나의 컴퓨터로 하여금, 상기 스피치 신호의 제 3 프레임에 기초하고, r비트의 길이를 갖는 제 3 인코딩된 프레임을 생성하게 하는 코드로서, 상기 r은 상기 q보다 작은 0-아닌 양의 정수인, 상기 제 3 인코딩된 프레임을 생성하게 하는 코드를 포함하며,
    상기 제 2 프레임은 상기 제 1 프레임 이후에 발생하는 비활성 프레임이고, 상기 제 3 프레임은 상기 제 2 프레임 이후에 발생하는 비활성 프레임이며, 상기 제 1 프레임과 상기 제 3 프레임 사이에서 상기 스피치 신호의 모든 프레임들은 비활성이고,
    상기 적어도 하나의 컴퓨터로 하여금 상기 제 2 인코딩된 프레임을 생성하게 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금, (A) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션, 및 (B) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하는 상기 제 2 인코딩된 프레임을 생성하게 하도록 구성되는, 컴퓨터-판독가능 매체.
  29. 제 28 항에 있어서,
    상기 스피치 신호에서, 적어도 하나의 프레임이 상기 제 1 프레임과 상기 제 2 프레임 사이에서 발생하는, 컴퓨터-판독가능 매체.
  30. 삭제
  31. 제 28 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 상기 제 3 인코딩된 프레임을 생성하게 하는 코드는 상기 적어도 하나의 컴퓨터로 하여금, (A) 상기 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지만, (B) 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지 않는 상기 제 3 인코딩된 프레임을 생성하게 하도록 구성되는, 컴퓨터-판독가능 매체.
  32. 제 28 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 상기 제 3 인코딩된 프레임을 생성하게 하는 코드는 상기 적어도 하나의 컴퓨터로 하여금, 상기 제 3 프레임을 포함하는 상기 스피치 신호의 일부의 스펙트럼 포락선의 디스크립션을 포함하는 상기 제 3 인코딩된 프레임을 생성하게 하도록 구성되는, 컴퓨터-판독가능 매체.
  33. 스피치 신호의 프레임들을 인코딩하는 장치로서,
    상기 스피치 신호의 복수의 프레임들 각각의 프레임에 대해, 프레임이 활성인지 또는 비활성인지의 여부를 표시하도록 구성되는 스피치 활성도 검출기;
    (A) 상기 스피치 신호의 제 1 프레임에 대한 상기 스피치 활성도 검출기의 표시에 응답하여, 제 1 코딩 방식을 선택하고, (B) 상기 제 1 프레임 이후에 발생한 연속하는 일련의 비활성 프레임들 중 하나의 비활성 프레임인 제 2 프레임에 대하여, 상기 제 2 프레임이 비활성이라는 상기 스피치 활성도 검출기의 표시에 응답하여, 제 2 코딩 방식을 선택하며, 그리고, (C) 상기 스피치 신호에서 상기 제 2 프레임에 후속하며, 상기 제 1 프레임 이후에 발생한 연속하는 일련의 비활성 프레임들 중 또 다른 비활성 프레임인 제 3 프레임에 대하여, 상기 제 3 프레임이 비활성이라는 상기 스피치 활성도 검출기의 표시에 응답하여, 제 3 코딩 방식을 선택하도록 구성되는 코딩 방식 선택기; 및
    (D) 상기 제 1 프레임에 기초하고, p비트의 길이를 갖는 제 1 인코딩된 프레임을 상기 제 1 코딩 방식에 따라 생성하고, (E) 상기 제 2 프레임에 기초하고, q비트의 길이를 갖는 제 2 인코딩된 프레임을 상기 제 2 코딩 방식에 따라 생성하며, 그리고, (F) 상기 제 3 프레임에 기초하고, r비트의 길이를 갖는 제 3 인코딩된 프레임을 상기 제 3 코딩 방식에 따라 생성하도록 구성되는 스피치 인코더를 포함하며,
    상기 p는 0-아닌 양의 정수이고, 상기 q는 상기 p와는 상이한 0-아닌 양의 정수이며, 상기 r은 상기 q보다 작은 0-아닌 양의 정수이고,
    상기 스피치 인코더는, (A) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션, 및 (B) 상기 제 2 프레임을 포함하는 상기 스피치 신호의 일부의, 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하는 상기 제 2 인코딩된 프레임을 생성하도록 구성되는, 스피치 신호 프레임 인코딩 장치.
  34. 제 33 항에 있어서,
    상기 스피치 신호에서, 적어도 하나의 프레임이 상기 제 1 프레임과 상기 제 2 프레임 사이에서 발생하는, 스피치 신호 프레임 인코딩 장치.
  35. 삭제
  36. 제 33 항에 있어서,
    상기 스피치 인코더는, (A) 상기 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지만 (B) 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션을 포함하지 않는 상기 제 3 인코딩된 프레임을 생성하도록 구성되는, 스피치 신호 프레임 인코딩 장치.
  37. 제 33 항에 있어서,
    상기 스피치 인코더는, 상기 제 3 프레임을 포함하는 상기 스피치 신호의 일부의 스펙트럼 포락선의 디스크립션을 포함하는 상기 제 3 인코딩된 프레임을 생성하도록 구성되는, 스피치 신호 프레임 인코딩 장치.
  38. 인코딩된 스피치 신호를 프로세싱하는 방법으로서,
    상기 인코딩된 스피치 신호의 제 1 인코딩된 프레임으로부터의 정보에 기초하여, (A) 제 1 주파수 대역 및 (B) 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계;
    상기 인코딩된 스피치 신호의 제 2 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 1 주파수 대역에 걸친 스피치 신호의 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계; 및
    상기 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  39. 제 38 항에 있어서,
    상기 제 1 주파수 대역에 걸친 상기 스피치 신호의 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 단계는, 상기 제 2 인코딩된 프레임으로부터의 정보에 기초하는, 인코딩된 스피치 신호 프로세싱 방법.
  40. 제 38 항에 있어서,
    상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 단계는, 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하는, 인코딩된 스피치 신호 프로세싱 방법.
  41. 제 38 항에 있어서,
    상기 제 1 프레임의 스펙트럼 포락선의 디스크립션은, 상기 제 1 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션 및 상기 제 2 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션을 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  42. 제 38 항에 있어서,
    상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 단계가 기초하는 상기 정보는, 상기 제 2 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션을 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  43. 제 38 항에 있어서,
    상기 제 1 인코딩된 프레임은 광대역 코딩 방식에 따라 인코딩되고, 상기 제 2 인코딩된 프레임은 협대역 코딩 방식에 따라 인코딩되는, 인코딩된 스피치 신호 프로세싱 방법.
  44. 제 38 항에 있어서,
    상기 제 1 인코딩된 프레임의 비트 단위 길이는, 상기 제 2 인코딩된 프레임의 비트 단위 길이의 적어도 2배인, 인코딩된 스피치 신호 프로세싱 방법.
  45. 제 38 항에 있어서,
    상기 제 1 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션, 및 랜덤 잡음 신호에 기초한 여기 신호에 기초하여, 상기 제 2 프레임을 계산하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  46. 제 38 항에 있어서,
    상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 단계는 상기 인코딩된 스피치 신호의 제 3 인코딩된 프레 임으로부터의 정보에 기초하며,
    상기 제 1 인코딩된 프레임 및 상기 제 3 인코딩된 프레임 양자는 상기 제 2 인코딩된 프레임 이전에 상기 인코딩된 스피치 신호에서 발생하는, 인코딩된 스피치 신호 프로세싱 방법.
  47. 제 46 항에 있어서,
    상기 제 3 인코딩된 프레임으로부터의 정보는, 상기 제 2 주파수 대역에 걸친 스피치 신호의 제 3 프레임의 스펙트럼 포락선의 디스크립션을 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  48. 제 46 항에 있어서,
    상기 제 2 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션은 스펙트럼 파라미터 값들의 벡터를 포함하고,
    상기 제 2 주파수 대역에 걸친 상기 제 3 프레임의 스펙트럼 포락선의 디스크립션은 스펙트럼 파라미터 값들의 벡터를 포함하며,
    상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 단계는, 상기 제 1 프레임의 스펙트럼 파라미터 값들의 벡터 및 상기 제 3 프레임의 스펙트럼 파라미터 값들의 벡터의 함수로서 상기 제 2 프레임의 스펙트럼 파라미터 값들의 벡터를 계산하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  49. 제 46 항에 있어서,
    상기 제 1 인코딩된 프레임의 코딩 인덱스가 적어도 하나의 소정 기준을 충족한다는 것을 검출하는 것에 응답하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 단계가 기초하는 상기 제 1 인코딩된 프레임으로부터의 정보를 저장하는 단계;
    상기 제 3 인코딩된 프레임의 코딩 인덱스가 적어도 하나의 소정 기준을 충족한다는 것을 검출하는 것에 응답하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 단계가 기초하는 상기 제 3 인코딩된 프레임으로부터의 정보를 저장하는 단계; 및
    상기 제 2 인코딩된 프레임의 코딩 인덱스가 적어도 하나의 소정 기준을 충족한다는 것을 검출하는 것에 응답하여, 상기 제 1 인코딩된 프레임으로부터의 상기 저장된 정보 및 상기 제 3 인코딩된 프레임으로부터의 상기 저장된 정보를 검색하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  50. 제 38 항에 있어서,
    상기 제 2 프레임에 후속하는 상기 스피치 신호의 복수의 프레임들의 각각의 프레임에 대하여,
    상기 제 1 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  51. 제 38 항에 있어서,
    상기 제 2 프레임에 후속하는 상기 스피치 신호의 복수의 프레임들의 각각의 프레임에 대하여,
    (C) 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계, 및
    (D) 상기 제 2 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 1 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  52. 제 38 항에 있어서,
    상기 제 1 주파수 대역에 걸친 상기 제 2 프레임의 여기 신호에 기초하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 여기 신호를 획득하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  53. 제 38 항에 있어서,
    상기 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 2 주파수 대역에 대한 상기 제 2 프레임의 시간 정보의 디스크립션을 획득하는 단계를 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  54. 제 38 항에 있어서,
    상기 제 2 프레임의 시간 정보의 상기 디스크립션은 상기 제 2 주파수 대역에 대한 상기 제 2 프레임의 시간 포락선의 디스크립션을 포함하는, 인코딩된 스피치 신호 프로세싱 방법.
  55. 인코딩된 스피치 신호를 프로세싱하는 장치로서,
    상기 인코딩된 스피치 신호의 제 1 인코딩된 프레임으로부터의 정보에 기초하여, (A) 제 1 주파수 대역 및 (B) 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단;
    상기 인코딩된 스피치 신호의 제 2 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 1 주파수 대역에 걸친 스피치 신호의 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단; 및
    상기 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단을 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  56. 제 55 항에 있어서,
    상기 제 1 프레임의 스펙트럼 포락선의 디스크립션은, 상기 제 1 주파수 대 역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션 및 상기 제 2 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션을 포함하며,
    상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 수단이 그 디스크립션을 획득하도록 구성되는데 기초하는 상기 정보는, 상기 제 2 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션을 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  57. 제 55 항에 있어서,
    상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 상기 수단은, 상기 인코딩된 스피치 신호의 제 3 인코딩된 프레임으로부터의 정보에 기초하여 그 디스크립션을 획득하도록 구성되며,
    상기 제 1 인코딩된 프레임 및 상기 제 3 인코딩된 프레임 양자는 상기 제 2 인코딩된 프레임 이전에 상기 인코딩된 스피치 신호에서 발생하고,
    상기 제 3 인코딩된 프레임으로부터의 정보는 상기 제 2 주파수 대역에 걸친 스피치 신호의 제 3 프레임의 스펙트럼 포락선의 디스크립션을 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  58. 제 55 항에 있어서,
    상기 제 2 프레임에 후속하는 상기 스피치 신호의 복수의 프레임들의 각각의 프레임에 대해, 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단을 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  59. 제 55 항에 있어서,
    상기 제 2 프레임에 후속하는 상기 스피치 신호의 복수의 프레임들의 각각의 프레임에 대해, 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단; 및
    상기 복수의 프레임들의 각각의 프레임에 대해, 상기 제 2 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 1 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하는 수단을 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  60. 제 55 항에 있어서,
    상기 제 1 주파수 대역에 걸친 상기 제 2 프레임의 여기 신호에 기초하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 여기 신호를 획득하는 수단을 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  61. 제 55 항에 있어서,
    상기 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 2 주파수 대역에 대한 상기 제 2 프레임의 시간 정보의 디스크립션을 획득하는 수단을 포함 하며,
    상기 제 2 프레임의 시간 정보의 상기 디스크립션은 상기 제 2 주파수 대역에 대한 상기 제 2 프레임의 시간 포락선의 디스크립션을 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  62. 컴퓨터-판독가능 매체로서,
    적어도 하나의 컴퓨터로 하여금, 인코딩된 스피치 신호의 제 1 인코딩된 프레임으로부터의 정보에 기초하여, (A) 제 1 주파수 대역 및 (B) 상기 제 1 주파수 대역과는 상이한 제 2 주파수 대역에 걸친 스피치 신호의 제 1 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드;
    상기 적어도 하나의 컴퓨터로 하여금, 상기 인코딩된 스피치 신호의 제 2 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 1 주파수 대역에 걸친 스피치 신호의 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드; 및
    상기 적어도 하나의 컴퓨터로 하여금, 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드를 포함하는, 컴퓨터-판독가능 매체.
  63. 제 62 항에 있어서,
    상기 제 1 프레임의 스펙트럼 포락선의 디스크립션은, 상기 제 1 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션 및 상기 제 2 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션을 포함하며,
    상기 적어도 하나의 컴퓨터로 하여금, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 상기 코드가 그 디스크립션을 획득하도록 구성되는데 기초하는 상기 정보는, 상기 제 2 주파수 대역에 걸친 상기 제 1 프레임의 스펙트럼 포락선의 디스크립션을 포함하는, 컴퓨터-판독가능 매체.
  64. 제 62 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 상기 코드는, 상기 인코딩된 스피치 신호의 제 3 인코딩된 프레임으로부터의 정보에 기초하여 그 디스크립션을 획득하도록 구성되며,
    상기 제 1 인코딩된 프레임 및 상기 제 3 인코딩된 프레임 양자는 상기 제 2 인코딩된 프레임 이전에 상기 인코딩된 스피치 신호에서 발생하고,
    상기 제 3 인코딩된 프레임으로부터의 정보는 상기 제 2 주파수 대역에 걸친 스피치 신호의 제 3 프레임의 스펙트럼 포락선의 디스크립션을 포함하는, 컴퓨터-판독가능 매체.
  65. 제 62 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금, 상기 제 2 프레임에 후속하는 상기 스피치 신호의 복수의 프레임들의 각각의 프레임에 대해, 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드를 포함하는, 컴퓨터-판독가능 매체.
  66. 제 62 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금, 상기 제 2 프레임에 후속하는 상기 스피치 신호의 복수의 프레임들의 각각의 프레임에 대해, 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드; 및
    상기 적어도 하나의 컴퓨터로 하여금, 상기 복수의 프레임들의 각각의 프레임에 대해, 상기 제 2 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 1 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션을 획득하게 하는 코드를 포함하는, 컴퓨터-판독가능 매체.
  67. 제 62 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금, 상기 제 1 주파수 대역에 걸친 상기 제 2 프레임의 여기 신호에 기초하여, 상기 제 2 주파수 대역에 걸친 상기 제 2 프레임의 여기 신호를 획득하게 하는 코드를 포함하는, 컴퓨터-판독가능 매체.
  68. 제 62 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금, 상기 제 1 인코딩된 프레임으로부터의 정보에 기초하여, 상기 제 2 주파수 대역에 대한 상기 제 2 프레임의 시간 정보의 디스크립션을 획득하게 하는 코드를 포함하며,
    상기 제 2 프레임의 시간 정보의 상기 디스크립션은 상기 제 2 주파수 대역에 대한 상기 제 2 프레임의 시간 포락선의 디스크립션을 포함하는, 컴퓨터-판독가능 매체.
  69. 인코딩된 스피치 신호를 프로세싱하는 장치로서,
    상기 인코딩된 스피치 신호의 인코딩된 프레임들의 코딩 인덱스들에 기초한 시퀀스 값들을 포함하는 제어 신호를 생성하도록 구성되는 제어 로직으로서, 상기 시퀀스 값들 각각은 상기 인코딩된 스피치 신호의 인코딩된 프레임에 대응하는, 상기 제어 로직; 및
    (A) 제 1 상태를 갖는 제어 신호의 값에 응답하여, 상기 대응하는 인코딩된 프레임으로부터의 정보에 기초하는, 제 1 주파수 대역 및 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하고, (B) 상기 제 1 상태와는 상이한 제 2 상태를 갖는 제어 신호의 값에 응답하여, (1) 상기 대 응하는 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 1 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션, 및 (2) 상기 대응하는 인코딩된 프레임 이전에 상기 인코딩된 스피치 신호에서 발생하는 적어도 하나의 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하도록 구성되는 스피치 디코더를 포함하는, 인코딩된 스피치 신호 프로세싱 장치.
  70. 제 69 항에 있어서,
    상기 스피치 디코더가 상기 제 2 상태를 갖는 제어 신호의 값에 응답하여 디코딩된 프레임을 계산하도록 구성되는 상기 제 2 주파수 대역에 걸친 스펙트럼 포락선의 상기 디스크립션은, 상기 대응하는 인코딩된 프레임 이전에 상기 인코딩된 스피치 신호에서 발생하는 적어도 2개의 인코딩된 프레임들 각각으로부터의 정보에 기초하는, 인코딩된 스피치 신호 프로세싱 장치.
  71. 제 69 항에 있어서,
    상기 제어 로직은 대응하는 프레임 주기 동안, 인코딩된 프레임의 수신 실패에 응답하여, 상기 제 1 상태 및 상기 제 2 상태와는 상이한 제 3 상태를 갖는 제어 신호의 값을 생성하도록 구성되며,
    상기 스피치 디코더는, (C) 상기 제 3 상태를 갖는 제어 신호의 값에 응답하여, (1) 가장 최근에 수신된 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 1 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션, 및 (2) 상기 가장 최근에 수신된 인코딩된 프레임 이전에 상기 인코딩된 스피치에서 발생하는 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 걸친 프레임의 스펙트럼 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하도록 구성되는, 인코딩된 스피치 신호 프로세싱 장치.
  72. 제 69 항에 있어서,
    상기 스피치 디코더는, 상기 제 2 상태를 갖는 제어 신호의 값에 응답하여, 그리고, 상기 제 1 주파수 대역에 걸친 상기 디코딩된 프레임의 여기 신호에 기초하여, 상기 제 2 주파수 대역에 걸친 상기 디코딩된 프레임의 여기 신호를 계산하도록 구성되는, 인코딩된 스피치 신호 프로세싱 장치.
  73. 제 69 항에 있어서,
    상기 스피치 디코더는, 상기 제 2 상태를 갖는 제어 신호의 값에 응답하여, 상기 대응하는 인코딩된 프레임 이전에 상기 인코딩된 스피치 신호에서 발생하는 적어도 하나의 인코딩된 프레임으로부터의 정보에 기초하는, 상기 제 2 주파수 대역에 대한 시간 포락선의 디스크립션에 기초하여, 디코딩된 프레임을 계산하도록 구성되는, 인코딩된 스피치 신호 프로세싱 장치.
  74. 제 69 항에 있어서,
    상기 스피치 디코더는, 상기 제 2 상태를 갖는 제어 신호의 값에 대응하여, 랜덤 잡음 신호에 기초한 여기 신호에 기초하여, 디코딩된 프레임을 계산하도록 구성되는, 인코딩된 스피치 신호 프로세싱 장치.
KR1020097004008A 2006-07-31 2007-07-31 비활성 프레임들의 광대역 인코딩 및 디코딩을 위한 시스템, 방법, 및 장치 KR101034453B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US83468806P 2006-07-31 2006-07-31
US60/834,688 2006-07-31
US11/830,812 2007-07-30
US11/830,812 US8260609B2 (en) 2006-07-31 2007-07-30 Systems, methods, and apparatus for wideband encoding and decoding of inactive frames

Publications (2)

Publication Number Publication Date
KR20090035719A KR20090035719A (ko) 2009-04-10
KR101034453B1 true KR101034453B1 (ko) 2011-05-17

Family

ID=38692069

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097004008A KR101034453B1 (ko) 2006-07-31 2007-07-31 비활성 프레임들의 광대역 인코딩 및 디코딩을 위한 시스템, 방법, 및 장치

Country Status (11)

Country Link
US (2) US8260609B2 (ko)
EP (1) EP2047465B1 (ko)
JP (3) JP2009545778A (ko)
KR (1) KR101034453B1 (ko)
CN (2) CN101496100B (ko)
BR (1) BRPI0715064B1 (ko)
CA (2) CA2657412C (ko)
ES (1) ES2406681T3 (ko)
HK (1) HK1184589A1 (ko)
RU (1) RU2428747C2 (ko)
WO (1) WO2008016935A2 (ko)

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8260609B2 (en) * 2006-07-31 2012-09-04 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of inactive frames
US8639500B2 (en) * 2006-11-17 2014-01-28 Samsung Electronics Co., Ltd. Method, medium, and apparatus with bandwidth extension encoding and/or decoding
KR101565919B1 (ko) * 2006-11-17 2015-11-05 삼성전자주식회사 고주파수 신호 부호화 및 복호화 방법 및 장치
KR20080059881A (ko) * 2006-12-26 2008-07-01 삼성전자주식회사 음성 신호의 전처리 장치 및 방법
KR101379263B1 (ko) 2007-01-12 2014-03-28 삼성전자주식회사 대역폭 확장 복호화 방법 및 장치
US8392198B1 (en) * 2007-04-03 2013-03-05 Arizona Board Of Regents For And On Behalf Of Arizona State University Split-band speech compression based on loudness estimation
US8064390B2 (en) 2007-04-27 2011-11-22 Research In Motion Limited Uplink scheduling and resource allocation with fast indication
CA2697920C (en) * 2007-08-27 2018-01-02 Telefonaktiebolaget L M Ericsson (Publ) Transient detector and method for supporting encoding of an audio signal
CN100524462C (zh) * 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
CN100555414C (zh) * 2007-11-02 2009-10-28 华为技术有限公司 一种dtx判决方法和装置
JP2011504250A (ja) * 2007-11-21 2011-02-03 エルジー エレクトロニクス インコーポレイティド 信号処理方法及び装置
US8688441B2 (en) * 2007-11-29 2014-04-01 Motorola Mobility Llc Method and apparatus to facilitate provision and use of an energy value to determine a spectral envelope shape for out-of-signal bandwidth content
US20090168673A1 (en) * 2007-12-31 2009-07-02 Lampros Kalampoukas Method and apparatus for detecting and suppressing echo in packet networks
US8433582B2 (en) * 2008-02-01 2013-04-30 Motorola Mobility Llc Method and apparatus for estimating high-band energy in a bandwidth extension system
US20090201983A1 (en) * 2008-02-07 2009-08-13 Motorola, Inc. Method and apparatus for estimating high-band energy in a bandwidth extension system
DE102008009718A1 (de) * 2008-02-19 2009-08-20 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Mittel zur Enkodierung von Hintergrundrauschinformationen
DE102008009719A1 (de) 2008-02-19 2009-08-20 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Mittel zur Enkodierung von Hintergrundrauschinformationen
DE102008009720A1 (de) * 2008-02-19 2009-08-20 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Mittel zur Dekodierung von Hintergrundrauschinformationen
CN101335000B (zh) 2008-03-26 2010-04-21 华为技术有限公司 编码的方法及装置
TWI395976B (zh) * 2008-06-13 2013-05-11 Teco Image Sys Co Ltd 掃描模組之光源投射裝置及其光源排列方法
US8768690B2 (en) * 2008-06-20 2014-07-01 Qualcomm Incorporated Coding scheme selection for low-bit-rate applications
US20090319263A1 (en) * 2008-06-20 2009-12-24 Qualcomm Incorporated Coding of transitional speech frames for low-bit-rate applications
BRPI0904958B1 (pt) * 2008-07-11 2020-03-03 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Aparelho e método para calcular dados de extensão de largura de banda usando um quadro controlado por inclinação espectral
US8463412B2 (en) * 2008-08-21 2013-06-11 Motorola Mobility Llc Method and apparatus to facilitate determining signal bounding frequencies
CN101751926B (zh) 2008-12-10 2012-07-04 华为技术有限公司 信号编码、解码方法及装置、编解码系统
KR101622950B1 (ko) * 2009-01-28 2016-05-23 삼성전자주식회사 오디오 신호의 부호화 및 복호화 방법 및 그 장치
US8463599B2 (en) * 2009-02-04 2013-06-11 Motorola Mobility Llc Bandwidth extension method and apparatus for a modified discrete cosine transform audio coder
JP5754899B2 (ja) 2009-10-07 2015-07-29 ソニー株式会社 復号装置および方法、並びにプログラム
KR101137652B1 (ko) * 2009-10-14 2012-04-23 광운대학교 산학협력단 천이 구간에 기초하여 윈도우의 오버랩 영역을 조절하는 통합 음성/오디오 부호화/복호화 장치 및 방법
US8428209B2 (en) * 2010-03-02 2013-04-23 Vt Idirect, Inc. System, apparatus, and method of frequency offset estimation and correction for mobile remotes in a communication network
JP5719922B2 (ja) * 2010-04-13 2015-05-20 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン サンプルごとに正確なオーディオ信号表現のための方法、エンコーダ及びデコーダ
JP5609737B2 (ja) 2010-04-13 2014-10-22 ソニー株式会社 信号処理装置および方法、符号化装置および方法、復号装置および方法、並びにプログラム
JP5850216B2 (ja) 2010-04-13 2016-02-03 ソニー株式会社 信号処理装置および方法、符号化装置および方法、復号装置および方法、並びにプログラム
EP2561508A1 (en) 2010-04-22 2013-02-27 Qualcomm Incorporated Voice activity detection
US8600737B2 (en) 2010-06-01 2013-12-03 Qualcomm Incorporated Systems, methods, apparatus, and computer program products for wideband speech coding
JP6075743B2 (ja) 2010-08-03 2017-02-08 ソニー株式会社 信号処理装置および方法、並びにプログラム
US8990094B2 (en) * 2010-09-13 2015-03-24 Qualcomm Incorporated Coding and decoding a transient frame
KR101826331B1 (ko) * 2010-09-15 2018-03-22 삼성전자주식회사 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법
JP5707842B2 (ja) 2010-10-15 2015-04-30 ソニー株式会社 符号化装置および方法、復号装置および方法、並びにプログラム
US8898058B2 (en) * 2010-10-25 2014-11-25 Qualcomm Incorporated Systems, methods, and apparatus for voice activity detection
EP3252771B1 (en) * 2010-12-24 2019-05-01 Huawei Technologies Co., Ltd. A method and an apparatus for performing a voice activity detection
US8751223B2 (en) * 2011-05-24 2014-06-10 Alcatel Lucent Encoded packet selection from a first voice stream to create a second voice stream
CN102800317B (zh) * 2011-05-25 2014-09-17 华为技术有限公司 信号分类方法及设备、编解码方法及设备
US8994882B2 (en) * 2011-12-09 2015-03-31 Intel Corporation Control of video processing algorithms based on measured perceptual quality characteristics
CN103187065B (zh) * 2011-12-30 2015-12-16 华为技术有限公司 音频数据的处理方法、装置和系统
US9208798B2 (en) 2012-04-09 2015-12-08 Board Of Regents, The University Of Texas System Dynamic control of voice codec data rate
JP6200034B2 (ja) * 2012-04-27 2017-09-20 株式会社Nttドコモ 音声復号装置
JP5997592B2 (ja) * 2012-04-27 2016-09-28 株式会社Nttドコモ 音声復号装置
CN102723968B (zh) * 2012-05-30 2017-01-18 中兴通讯股份有限公司 一种提升空口容量的方法及装置
EP2951825B1 (en) * 2013-01-29 2021-11-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for generating a frequency enhanced signal using temporal smoothing of subbands
MY185176A (en) * 2013-01-29 2021-04-30 Fraunhofer Ges Forschung Audio encoder, audio decoder, method for providing an encoded audio information, method for providing a decoded audio information, computer program and encoded representation using a signal-adaptive bandwidth extension
US9336789B2 (en) * 2013-02-21 2016-05-10 Qualcomm Incorporated Systems and methods for determining an interpolation factor set for synthesizing a speech signal
PL3550562T3 (pl) * 2013-02-22 2021-05-31 Telefonaktiebolaget Lm Ericsson (Publ) Sposoby i urządzenia dla zawieszenia DTX w kodowaniu audio
FR3008533A1 (fr) 2013-07-12 2015-01-16 Orange Facteur d'echelle optimise pour l'extension de bande de frequence dans un decodeur de signaux audiofrequences
EP2830055A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Context-based entropy coding of sample values of a spectral envelope
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
GB201316575D0 (en) * 2013-09-18 2013-10-30 Hellosoft Inc Voice data transmission with adaptive redundancy
JP6531649B2 (ja) 2013-09-19 2019-06-19 ソニー株式会社 符号化装置および方法、復号化装置および方法、並びにプログラム
JP5981408B2 (ja) * 2013-10-29 2016-08-31 株式会社Nttドコモ 音声信号処理装置、音声信号処理方法、及び音声信号処理プログラム
US20150149157A1 (en) * 2013-11-22 2015-05-28 Qualcomm Incorporated Frequency domain gain shape estimation
CN105849801B (zh) 2013-12-27 2020-02-14 索尼公司 解码设备和方法以及程序
JP6035270B2 (ja) * 2014-03-24 2016-11-30 株式会社Nttドコモ 音声復号装置、音声符号化装置、音声復号方法、音声符号化方法、音声復号プログラム、および音声符号化プログラム
US9697843B2 (en) * 2014-04-30 2017-07-04 Qualcomm Incorporated High band excitation signal generation
EP2950474B1 (en) * 2014-05-30 2018-01-31 Alcatel Lucent Method and devices for controlling signal transmission during a change of data rate
CN105336336B (zh) * 2014-06-12 2016-12-28 华为技术有限公司 一种音频信号的时域包络处理方法及装置、编码器
EP3614382B1 (en) * 2014-07-28 2020-10-07 Nippon Telegraph And Telephone Corporation Coding of a sound signal
EP2980797A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder, method and computer program using a zero-input-response to obtain a smooth transition
US10847170B2 (en) 2015-06-18 2020-11-24 Qualcomm Incorporated Device and method for generating a high-band signal from non-linearly processed sub-ranges
US9837089B2 (en) * 2015-06-18 2017-12-05 Qualcomm Incorporated High-band signal generation
JP2017150146A (ja) * 2016-02-22 2017-08-31 積水化学工業株式会社 対象物を補強または補修する方法
CN106067847B (zh) * 2016-05-25 2019-10-22 腾讯科技(深圳)有限公司 一种语音数据传输方法及装置
US10573326B2 (en) * 2017-04-05 2020-02-25 Qualcomm Incorporated Inter-channel bandwidth extension
KR20210005164A (ko) 2018-04-25 2021-01-13 돌비 인터네셔널 에이비 고주파 오디오 재구성 기술의 통합
CA3238615A1 (en) * 2018-04-25 2019-10-31 Dolby International Ab Integration of high frequency reconstruction techniques with reduced post-processing delay
TWI740655B (zh) * 2020-09-21 2021-09-21 友達光電股份有限公司 顯示裝置的驅動方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010007416A (ko) * 1999-06-18 2001-01-26 이데이 노부유끼 음성부호화장치 및 방법, 입력신호 판정방법,음성복호장치 및 방법 및 프로그램 제공매체

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511073A (en) 1990-06-25 1996-04-23 Qualcomm Incorporated Method and apparatus for the formatting of data for transmission
ES2225321T3 (es) 1991-06-11 2005-03-16 Qualcomm Incorporated Aparaato y procedimiento para el enmascaramiento de errores en tramas de datos.
JP2779886B2 (ja) 1992-10-05 1998-07-23 日本電信電話株式会社 広帯域音声信号復元方法
GB2294614B (en) * 1994-10-28 1999-07-14 Int Maritime Satellite Organiz Communication method and apparatus
US5704003A (en) 1995-09-19 1997-12-30 Lucent Technologies Inc. RCELP coder
US6049537A (en) 1997-09-05 2000-04-11 Motorola, Inc. Method and system for controlling speech encoding in a communication system
JP3352406B2 (ja) * 1998-09-17 2002-12-03 松下電器産業株式会社 オーディオ信号の符号化及び復号方法及び装置
AU1524300A (en) 1998-11-13 2000-06-05 Qualcomm Incorporated Closed-loop variable-rate multimode predictive speech coder
US6456964B2 (en) * 1998-12-21 2002-09-24 Qualcomm, Incorporated Encoding of periodic speech using prototype waveforms
US6691084B2 (en) 1998-12-21 2004-02-10 Qualcomm Incorporated Multiple mode variable rate speech coding
US6973140B2 (en) 1999-03-05 2005-12-06 Ipr Licensing, Inc. Maximizing data rate by adjusting codes and code rates in CDMA system
KR100297875B1 (ko) 1999-03-08 2001-09-26 윤종용 가변 속도 보코더를 사용하는 코드 분할 다중 접속 시스템의 음질 향상을 위한 방법
US6330532B1 (en) 1999-07-19 2001-12-11 Qualcomm Incorporated Method and apparatus for maintaining a target bit rate in a speech coder
FI115329B (fi) 2000-05-08 2005-04-15 Nokia Corp Menetelmä ja järjestely lähdesignaalin kaistanleveyden vaihtamiseksi tietoliikenneyhteydessä, jossa on valmiudet useisiin kaistanleveyksiin
EP1290681A1 (en) 2000-05-26 2003-03-12 Cellon France SAS Transmitter for transmitting a signal encoded in a narrow band, and receiver for extending the band of the encoded signal at the receiving end, and corresponding transmission and receiving methods, and system
US6807525B1 (en) 2000-10-31 2004-10-19 Telogy Networks, Inc. SID frame detection with human auditory perception compensation
US6879955B2 (en) 2001-06-29 2005-04-12 Microsoft Corporation Signal modification based on continuous time warping for low bit rate CELP coding
US20050004803A1 (en) * 2001-11-23 2005-01-06 Jo Smeets Audio signal bandwidth extension
CA2365203A1 (en) * 2001-12-14 2003-06-14 Voiceage Corporation A signal modification method for efficient coding of speech signals
JP4272897B2 (ja) 2002-01-30 2009-06-03 パナソニック株式会社 符号化装置、復号化装置およびその方法
DE60323331D1 (de) 2002-01-30 2008-10-16 Matsushita Electric Ind Co Ltd Verfahren und vorrichtung zur audio-kodierung und -dekodierung
CA2392640A1 (en) 2002-07-05 2004-01-05 Voiceage Corporation A method and device for efficient in-based dim-and-burst signaling and half-rate max operation in variable bit-rate wideband speech coding for cdma wireless systems
RU2331933C2 (ru) 2002-10-11 2008-08-20 Нокиа Корпорейшн Способы и устройства управляемого источником широкополосного кодирования речи с переменной скоростью в битах
US20040098255A1 (en) 2002-11-14 2004-05-20 France Telecom Generalized analysis-by-synthesis speech coding method, and coder implementing such method
KR100524065B1 (ko) 2002-12-23 2005-10-26 삼성전자주식회사 시간-주파수 상관성을 이용한 개선된 오디오 부호화및/또는 복호화 방법과 그 장치
US20050091044A1 (en) 2003-10-23 2005-04-28 Nokia Corporation Method and system for pitch contour quantization in audio coding
KR100587953B1 (ko) * 2003-12-26 2006-06-08 한국전자통신연구원 대역-분할 광대역 음성 코덱에서의 고대역 오류 은닉 장치 및 그를 이용한 비트스트림 복호화 시스템
FI119533B (fi) 2004-04-15 2008-12-15 Nokia Corp Audiosignaalien koodaus
TWI246256B (en) 2004-07-02 2005-12-21 Univ Nat Central Apparatus for audio compression using mixed wavelet packets and discrete cosine transformation
WO2006028009A1 (ja) 2004-09-06 2006-03-16 Matsushita Electric Industrial Co., Ltd. スケーラブル復号化装置および信号消失補償方法
JP4977472B2 (ja) 2004-11-05 2012-07-18 パナソニック株式会社 スケーラブル復号化装置
KR20070085982A (ko) 2004-12-10 2007-08-27 마츠시타 덴끼 산교 가부시키가이샤 광대역 부호화 장치, 광대역 lsp 예측 장치, 대역스케일러블 부호화 장치 및 광대역 부호화 방법
US8102872B2 (en) 2005-02-01 2012-01-24 Qualcomm Incorporated Method for discontinuous transmission and accurate reproduction of background noise information
NZ562182A (en) 2005-04-01 2010-03-26 Qualcomm Inc Method and apparatus for anti-sparseness filtering of a bandwidth extended speech prediction excitation signal
DK1875463T3 (en) 2005-04-22 2019-01-28 Qualcomm Inc SYSTEMS, PROCEDURES AND APPARATUS FOR AMPLIFIER FACTOR GLOSSARY
US8032369B2 (en) 2006-01-20 2011-10-04 Qualcomm Incorporated Arbitrary average data rates for variable rate coders
JP4649351B2 (ja) 2006-03-09 2011-03-09 シャープ株式会社 デジタルデータ復号化装置
US8532984B2 (en) * 2006-07-31 2013-09-10 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of active frames
US8260609B2 (en) * 2006-07-31 2012-09-04 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of inactive frames

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010007416A (ko) * 1999-06-18 2001-01-26 이데이 노부유끼 음성부호화장치 및 방법, 입력신호 판정방법,음성복호장치 및 방법 및 프로그램 제공매체

Also Published As

Publication number Publication date
BRPI0715064B1 (pt) 2019-12-10
JP5596189B2 (ja) 2014-09-24
CN101496100A (zh) 2009-07-29
US20080027717A1 (en) 2008-01-31
JP2009545778A (ja) 2009-12-24
JP2013137557A (ja) 2013-07-11
EP2047465B1 (en) 2013-04-10
KR20090035719A (ko) 2009-04-10
BRPI0715064A2 (pt) 2013-05-28
US9324333B2 (en) 2016-04-26
US20120296641A1 (en) 2012-11-22
CA2778790A1 (en) 2008-02-07
CA2657412C (en) 2014-06-10
RU2428747C2 (ru) 2011-09-10
ES2406681T3 (es) 2013-06-07
CA2657412A1 (en) 2008-02-07
CN101496100B (zh) 2013-09-04
CA2778790C (en) 2015-12-15
JP5237428B2 (ja) 2013-07-17
EP2047465A2 (en) 2009-04-15
JP2012098735A (ja) 2012-05-24
CN103151048B (zh) 2016-02-24
HK1184589A1 (zh) 2014-01-24
RU2009107043A (ru) 2010-09-10
CN103151048A (zh) 2013-06-12
WO2008016935A3 (en) 2008-06-12
WO2008016935A2 (en) 2008-02-07
US8260609B2 (en) 2012-09-04

Similar Documents

Publication Publication Date Title
KR101034453B1 (ko) 비활성 프레임들의 광대역 인코딩 및 디코딩을 위한 시스템, 방법, 및 장치
US8532984B2 (en) Systems, methods, and apparatus for wideband encoding and decoding of active frames
KR101078625B1 (ko) 이득 계수 제한을 위한 시스템, 방법 및 장치
EP1869670B1 (en) Method and apparatus for vector quantizing of a spectral envelope representation
RU2419167C2 (ru) Система, способы и устройство для восстановления при стирании кадра
US9653088B2 (en) Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
US20080027716A1 (en) Systems, methods, and apparatus for signal change detection

Legal Events

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

Payment date: 20140430

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190327

Year of fee payment: 9