KR101060533B1 - 신호 변화 검출을 위한 시스템, 방법 및 장치 - Google Patents

신호 변화 검출을 위한 시스템, 방법 및 장치 Download PDF

Info

Publication number
KR101060533B1
KR101060533B1 KR1020097001886A KR20097001886A KR101060533B1 KR 101060533 B1 KR101060533 B1 KR 101060533B1 KR 1020097001886 A KR1020097001886 A KR 1020097001886A KR 20097001886 A KR20097001886 A KR 20097001886A KR 101060533 B1 KR101060533 B1 KR 101060533B1
Authority
KR
South Korea
Prior art keywords
spectral tilt
sequence
inactive
values
frame
Prior art date
Application number
KR1020097001886A
Other languages
English (en)
Other versions
KR20090033461A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=38812761&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101060533(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20090033461A publication Critical patent/KR20090033461A/ko
Application granted granted Critical
Publication of KR101060533B1 publication Critical patent/KR101060533B1/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/012Comfort noise or silence coding
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L2025/783Detection of presence or absence of voice signals based on threshold decision
    • G10L2025/786Adaptive threshold

Landscapes

  • Engineering & Computer Science (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)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

개시된 구성물들은 스피치 신호의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하기 위해 마련된 시스템들, 방법들 및 장치들을 포함한다. 스피치 신호의 복수의 비활성 프레임들 각각에 대해, 송신 결정이 그 시퀀스의 적어도 2 개의 대응 값들 사이에서 계산된 변화에 따라 이루어진다. 송신 결정의 결과는 대응 비활성 프레임에 대해 침묵 디스크립션이 송신될지 여부를 판단한다.
스피치 신호, 비활성 프레임, 스펙트럼 틸트

Description

신호 변화 검출을 위한 시스템, 방법 및 장치{SYSTEMS, METHODS, AND APPARATUS FOR SIGNAL CHANGE DETECTION}
이 출원은 2006년 7월 31일자로 출원되고 대리인 문서 제061657P1호인, 발명의 명칭이 "DTX 스킴에 기초한 스펙트럼 틸트 (SPECTRAL TILT BASED DTX SCHEME)"인 미국 가출원 제60/834,689호의 이점을 청구한다.
이 개시물은 신호 처리에 관한 것이다.
특히, 장거리 전화통신, VoIP (Voice over IP) 와 같은 패킷-교환 전화통신, 및 셀룰러 전화통신과 같은 디지털 무선 전화통신에 있어서 디지털 기법들에 의한 음성의 송신이 널리 보급되고 있다. 이러한 확산은, 재구성된 스피치의 인지된 품질을 유지하면서 송신 채널을 통해 음성 통신을 전달하는데 사용되는 정보의 양을 감소시키는 것에 관심을 유발시켰다.
인간의 스피치 생성의 모델에 관련된 파라미터들을 추출함으로써 스피치를 압축하도록 구성된 디바이스들을 "스피치 코더 (speech coder)들" 이라 한다. 스피치 코더는 일반적으로 인코더 및 디코더를 포함한다. 인코더는 통상 입력 스피치 신호 (오디오 정보를 나타내는 디지털 신호) 를 "프레임들" 이라 불리는 시간 세그먼트들로 분할하고, 각 프레임을 분석하여 특정 관련 파라미터들을 추출하 고, 파라미터들을 이진 데이터 패킷 또는 비트 세트와 같은 이진 표현으로 양자화한다. 데이터 패킷들은 송신 채널 (즉, 유선 또는 무선 네트워크 접속) 을 통해 디코더를 포함하는 수신기에 송신된다. 디코더는 데이터 패킷들을 수신하여 처리하고, 그들을 역양자화하여 파라미터들을 작성하고, 이 역양자화된 파라미터들을 사용하여 스피치 프레임들을 재현한다.
통상적인 대화에서, 각 발성자 (speaker) 는 그 시간의 약 60 퍼센트 동안 침묵 (silent) 하고 있다. 스피치 인코더들은 일반적으로 스피치를 포함하는 스피치 신호의 프레임들 ("활성 프레임들") 과, 침묵 또는 배경 잡음만을 포함하는 스피치 신호의 프레임들 ("비활성 프레임들") 을 구분하도록 구성된다. 이러한 인코더는 활성 프레임 및 비활성 프레임을 인코딩하기 위해 상이한 코딩 모드들 및/또는 레이트들을 사용하도록 구성될 수도 있다. 예컨대, 스피치 인코더들은 통상 인코딩된 활성 프레임들보다는 인코딩된 비활성 프레임들 ("침묵 디스크립터들", "침묵 디스크립션들" 또는 SID들이라고도 함) 을 보다 낮은 비트 레이트로 송신하도록 구성된다.
풀 듀플렉스 전화 통신 동안의 임의의 시간에서, 스피치 인코더들 중 적어도 하나에 대한 입력이 비활성 프레임일 것이라는 것이 예상될 수도 있다. 인코더가 모든 비활성 프레임들보다 더 적은 비활성 프레임들에 대해 SID들을 송신하는 것이 바람직할 수도 있다. 이러한 동작을 불연속 송신 (DTX) 이라고도 한다. 일 예로서, 스피치 인코더는 32 개의 계속된 비활성 프레임들의 각 스트링에 대해 하나의 SID 를 송신함으로써 DTX 를 수행한다. 대응 디코더는 SID 에 정보 를 적용하여, 컴포트 잡음 (comfort noise) 생성 알고리즘에 의해 사용되는 잡음 생성 모델을 업데이트함으로써 비활성 프레임들을 합성한다.
일 구성에 따른 스피치 신호를 처리하는 방법은 상기 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계를 포함한다. 이 방법은 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하는 단계, 및 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 비활성 프레임에 대한 디스크립션 (description) 을 송신할지의 여부를 결정하는 단계를 포함한다. 이 방법에 있어서, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계는 상기 계산된 변화에 기초한다.
다른 구성에 따른 컴퓨터 프로그램 제품은 컴퓨터-판독가능 매체를 포함한다. 이 매체는 적어도 하나의 컴퓨터로 하여금 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 하는 코드를 포함한다. 이 매체는 적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하도록 하는 코드; 및 적어도 하나의 컴퓨터로 하여금 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 하는 코드를 포함한다.
또 다른 구성에 따른 스피치 신호를 처리하는 장치는 상기 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 구성된 시퀀스 생성기를 포함한다. 이 장치는 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하도록 구성된 계산기; 및 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 구성된 비교기를 포함한다.
또 다른 구성에 따른 스피치 신호를 처리하는 장치는 상기 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하는 수단을 포함한다. 이 장치는 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하는 수단; 및 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 수단을 포함한다.
도 1a 는 일 구성에 따른 방법 (M100) 의 플로우차트를 도시한다.
도 1b 는 일 구성에 따른 장치 (A100) 의 블록도를 도시한다.
도 1c 는 방법 (M100) 의 일 구현 (M101) 의 플로우차트를 도시한다.
도 1d 는 장치 (A100) 의 일 구현 (A101) 의 블록도를 도시한다.
도 2 는 평활기 (130) 의 일 구현 (132) 의 블록도를 도시한다.
도 3 은 각 원 (circle) 이 시간 경과에 따른 스피치 신호의 일련의 계속된 프레임들 중 하나를 나타내는 설명 예를 도시한다.
도 4 는 계산기 (140) 의 일 구현 (142) 의 블록도를 도시한다.
도 5 는 비교기 (150) 의 일 구현 (152) 의 블록도를 도시한다.
도 6 은 비교기 (150) 의 일 구현 (154) 의 블록도를 도시한다.
도 7a 는 장치 (A100) 의 일 구현 (A102) 의 블록도를 도시한다.
도 7b 는 몇몇 상이한 송신 표시들이 복합 송신 표시로 조합된 일 예를 도시한다.
도 8a 는 방법 (M100) 의 일 구현을 수행하도록 실행될 수도 있는 명령 세트에 대한 소스 코드 리스트를 도시한다.
도 8b 는 방법 (M100) 의 다른 구현을 수행하도록 실행될 수도 있는 명령 세트에 대한 소스 코드 리스트를 도시한다.
도 9 는 방법 (M101) 과 스피치 인코딩 방법의 조합을 포함하는 방법의 플로우차트를 도시한다.
도 10 은 장치 (A101) 와 스피치 인코더의 조합을 포함하는 장치의 블록도를 도시한다.
도 11a 는 방법 (M100) 의 일 구현 (M200) 의 플로우차트를 도시한다.
도 11b 는 장치 (A100) 의 일 구현 (A200) 의 블록도를 도시한다.
도 12a 는 방법 (M101) 의 일 구현 (M110) 의 플로우차트를 도시한다.
도 12b 는 방법 (M200) 의 일 구현 (M210) 의 플로우차트를 도시한다.
도 12c 는 방법 (M101) 의 일 구현 (M120) 의 플로우차트를 도시한다.
도 12d 는 방법 (M200) 의 일 구현 (M220) 의 플로우차트를 도시한다.
도 13a 및 도 13b 는 각각 행오버의 애플리케이션을 가지지 않는 평활화된 스펙트럼 틸트 윤곽 (contour) 및 행오버의 애플리케이션을 갖는 평활화된 스펙트럼 틸트 윤곽의 예들을 도시한다.
도 14 는 방법 (M100) 의 또 다른 구현을 수행하도록 실행될 수도 있는 명령 세트에 대한 소스 코드 리스트를 도시한다.
도 15 는 행오버 로직 회로의 일 예의 블록도를 도시한다.
도 16a 는 평활기 (132) 의 일 구현 (134) 의 블록도를 도시한다.
도 16b 는 평활기 (132) 의 일 구현 (136) 의 블록도를 도시한다.
도 17a 는 예측 이득에 기초하여 업데이트 제어 신호를 생성하도록 구성된 제어 신호 생성기 (60) 의 일 예 (62) 의 블록도를 도시한다.
도 17b 는 행오버를 적용하도록 구성된 제어 신호 생성기 (62) 의 일 예 (64) 의 블록도를 도시한다.
도 18 은 행오버 로직 회로 (52) 를 또한 포함하는 제어 신호 생성기 (64) 의 일 구현 (66) 의 블록도를 도시한다.
도 19a 는 송신 표시 제어 회로 (70) 의 일 예 (72) 의 블록도를 도시한다.
도 19b 는 비교기 (152) 의 일 구현 (156) 의 블록도를 도시한다.
도 20 은 업데이트 제어 신호를 생성하고 SID 송신 표시를 게이팅하도록 구성된 제어 회로 (80) 의 일 예 (82) 의 블록도를 도시한다.
도 21 은 방법 (M100) 의 또 다른 구현을 수행하도록 실행될 수도 있는 명령 세트에 대한 소스 코드 리스트를 도시한다.
본 명세서에 기재된 구성물들은 스피치 신호의 변화를 검출하기 위한 시스템들, 방법들 및 장치를 포함한다. 예컨대, 구성물들은 신호의 비활성 주기 동안 변화를 검출하고, 이러한 검출에 기초하여, 신호의 디스크립션에 대한 업데이트를 초기화하기 위해 개시된다. 이들 구성물들은 회선-교환 네트워크들에서의 사용이 또한 명백히 숙고되고 본 명세서에 개시되지만, 통상 패킷-교환 네트워크들 (예컨대, Voice over IP 또는 VoIP 와 같은 프로토콜들에 따라 음성 송신을 전달하도록 마련된 유선 및/또는 무선 네트워크들) 에 사용되도록 의도된다.
그 콘텍스트에 의해 명백히 한정되지 않는다면, 용어 "계산" 은 본 명세서에서 컴퓨팅, 평가, 평활화 및 복수의 값들로부터의 선택과 같은 그 통상적인 의미들 중 임의의 하나를 나타내도록 사용된다. 용어 "포함" 이 본 상세한 설명 및 청구범위에서 사용되는 경우, 다른 엘리먼트들 또는 동작들을 배제하지 않는다. 용어 "A 는 B 에 기초한다" 는 (i) "A 는 적어도 B 에 기초한다" 및 (ii) (특정 콘텍스트에서 적절히 사용되는 경우) "A 는 B 와 동등하다" 의 경우들을 포함하는 그 통상적인 의미들 중 임의의 하나를 나타내도록 사용된다.
DTX 를 실시하는 인코더는 블랭킹 스킴 (blanking scheme) 에 따라 대부분의 비활성 프레임들을 드롭 (또는 "블랭킹") 하도록 구성될 수도 있다. 블랭킹 스킴의 일 예는 규칙적인 간격으로 (예컨대, 매 16 번째 또는 32 번째 계속된 비활성 프레임 마다) 침묵 디스크립션에 대한 업데이트를 발행한다. 다른 블랭킹 스킴들 ("스마트 블랭킹" 스킴들이라고도 함) 은 배경 잡음의 변화를 나타낼 수도 있는 에너지 및/또는 스펙트럼 특징들의 변동을 검출할 때 침묵 디스크립션에 대한 업데이트를 발행하도록 구성된다.
에너지의 변동에만 의지하는 블랭킹 스킴은 때때로 배경 잡음에 있어서의 지각적으로 상당한 변화를 검출하는데 실패할 수도 있다. 몇몇 경우에 있어서, 지각적으로 상이한 비활성 프레임들이 (통상적으로 이득 값들로서 인코딩된) 유사한 에너지 특징들을 가질 것이다. 스트리트 (street) 에서의 배경 잡음 ("스트리트 잡음") 이, 예컨대 혼잡한 장소에서의 배경 잡음 ("배블 잡음 (babble noise)") 의 시간 경과에 따른 에너지 분포와 유사한 시간 경과에 따른 에너지 분포를 가질 수도 있지만, 이들 2 타입의 잡음은 일반적으로 매우 상이하게 인지될 것이다. 지각적으로 상이한 타입의 잡음을 구별하는데 실패한 블랭킹 스킴은 디코더에서 가청 아티팩트 (audible artifact) 들을 일으킬 수도 있다. 활성 프레임들이 또한 배경 잡음을 포함하기 때문에, 예컨대, 디코더가 디코딩된 활성 프레임으로부터 부적절한 SID에서 생성되는 컴포트 잡음으로 스위칭할 때 가청 중단이 발생될 수도 있다.
블랭킹 스킴이 지각적으로 현저할 수도 있는 배경 잡음의 변화들을 검출하는 것이 바람직하다. 예컨대, 블랭킹 스킴이 배경 잡음의 하나 이상의 스펙트럼 특징들 (예컨대, 스펙트럼 틸트) 의 돌연 변화를 검출하는 것이 바람직하다. 본 명세서에 기재된 방법 또는 장치는 이러한 블랭킹 스킴을 구현하기 위해 사용될 수도 있다. 대체안으로, 본 명세서에 기재된 방법 또는 장치는 다른 블랭킹 스킴을 보완하기 위해 사용될 수도 있다. 예컨대, 스피치 인코더 또는 스피치 인 코딩 방법은 본 명세서에 기재된 방법 또는 장치와, 미국 특허출원 공보 제2006/0171419호 (Spindola 등, 2006년 8월 3일 공개) 에 기재된 블랭킹 스킴 또는 라인 스펙트럼 쌍 벡터들 사이의 차이와 같은, 스피치 신호의 스펙트럼 특징의 변화 및/또는 프레임 에너지의 변화를 검출하도록 구성된 다른 블랭킹 스킴을 조합할 수도 있다.
도 1a 는 일반적인 구성에 따른 방법 (M100) 의 플로우차트를 도시한다. 스피치 신호의 복수의 비활성 프레임들에 기초하여, 태스크 T200 은 스펙트럼 틸트 값들의 시퀀스를 생성한다. 태스크 T400 은 스펙트럼 틸트 값들의 시퀀스 내에서의 변화 (예컨대, 시퀀스의 적어도 2 개의 값들 사이의 변화) 를 계산한다. 스피치 신호의 일 비활성 프레임에 대해, 태스크 T500 은 그 프레임에 대한 디스크립션을 송신할지의 여부를 결정하고, 여기서, 이 결정은 계산된 변화에 기초한다. 예컨대, 디스크립션을 송신할지의 여부의 결정은 (A) 계산된 변화의 크기와 (B) 임계값 사이의 관계에 기초할 수도 있다.
방법 (M100) 의 일반적인 구현에 있어서, 스펙트럼 틸트 값들의 시퀀스 중의 각각은 대응 비활성 프레임의 스펙트럼 틸트에 기초한다. 스피치 신호의 일 프레임의 스펙트럼 틸트는 주파수 범위에 걸쳐 그 프레임 내의 에너지의 분포를 기술하는 값이다. 일반적으로, 스펙트럼 틸트는 대응 프레임에 걸친 신호의 스펙트럼의 슬로프를 나타내고, 양 또는 음일 수도 있다. 스펙트럼 틸트 값들의 시퀀스의 다음 값을 생성하는 동작은 또한 시퀀스를 "업데이트한다"라고 불린다.
시퀀스의 연속된 값들이 시간 연속적인 신호의 세그먼트들에 대응하도록, 스 펙트럼 틸트 값들의 시퀀스의 값들은 통상 시간 순차적이도록 마련된다. 이런 방식으로 마련된 스펙트럼 틸트 값들의 시퀀스는 시간 경과에 따른 스피치 신호의 에너지 스펙트럼의 슬로프에서의 변화를 기술하는 윤곽 (즉, 스펙트럼 틸트 윤곽) 을 나타낸다고 말할 수도 있다.
태스크 T200 은 몇몇 상이한 방식 중 임의의 하나로 스펙트럼 틸트 값들의 시퀀스를 생성하도록 구현될 수도 있다. 예컨대, 태스크 T200 은, 저장 엘리먼트 또는 어레이 (예컨대, 반도체 메모리 유닛 또는 어레이) 로부터, 스피치 인코딩 방법과 같은 대규모 프로세스의 다른 태스크로부터, 또는 스피치 인코더와 같은 장치의 엘리먼트로부터 이러한 시퀀스를 수신하도록 구성될 수도 있다. 대체안으로, 태스크 T200 은 본 명세서에 기재된 이러한 시퀀스를 계산하도록 구성될 수도 있다.
태스크 T200 은 수신된 또는 계산된 시퀀스 (본 명세서에서 x 라고도 나타냄) 를 스펙트럼 틸트 값들의 생성된 시퀀스로서 출력하도록 구성될 수도 있다. 대체안으로, 태스크 T200 은 이 시퀀스 x 에 대해 하나 이상의 다른 연산들을 수행함으로써 스펙트럼 틸트 값들의 시퀀스 y 를 생성하도록 구성될 수도 있다. 이들 다른 연산들은 시퀀스 x 의 값들 중에서 다른 시퀀스를 선택하는 것: 예컨대, 매 n 번째 값을 선택하는 것 (여기서, n 은 2 이상의 정수임) 및/또는 비활성 프레임들에 대응되는 그들 값들만을 선택하는 것을 포함할 수도 있다. 이들 다른 연산들은 또한 본 명세서에 기재되는 바와 같이 수신된 시퀀스, 계산된 시퀀스, 또는 선택된 시퀀스를 평활화하는 것을 포함할 수도 있다.
스피치 신호의 각 시간 세그먼트 ("세그먼트" 또는 "프레임"이라고도 함) 의 지속기간은 통상적으로 신호의 스펙트럼 엔빌로프 (spectral envelope) 가 상대적으로 고정되어 유지된다고 예상될 수도 있게 충분히 짧게 선택된다. 특정 애플리케이션에 적합하다고 판단되는 샘플링 레이트 또는 임의의 프레임 길이가 사용될 수도 있지만, 예컨대, 하나의 통상적인 프레임 길이는 8 kHz 의 샘플링 레이트에서의 160 개의 샘플에 대응되는 20 밀리초이다. 몇몇 애플리케이션에서는 프레임들이 오버랩핑되지 않지만, 다른 애플리케이션에서는 오버랩핑 프레임 스킴이 사용된다. 예컨대, 스피치 코더는 인코더에서 오버랩핑 프레임 스킴을 사용하고 디코더에서 논오버랩핑 프레임 스킴을 사용하는 것이 일반적이다.
통상 애플리케이션에 있어서, 논리 게이트들의 어레이는 방법 (M100) 의 다양한 태스크들 중 하나, 둘 이상 또는 심지어 전부를 수행하도록 구성된다. 예컨대, 이러한 태스크 또는 태스크들은 프로세서와 같은 프로그래머블 어레이에 의해 실행되는 머신-실행가능 코드로서 구현될 수도 있다. 방법 (M100) 의 태스크들은 또한 2 개 이상의 이러한 어레이에 의해 수행될 수도 있다. 이들 또는 다른 구현들에 있어서, 태스크들은 셀룰러 전화기와 같은 무선 통신용 디바이스 또는 이러한 통신 능력을 갖는 다른 디바이스 내에서 수행될 수도 있다. 이러한 디바이스는 (예컨대, VoIP 와 같은 하나 이상의 프로토콜들을 사용하여) 회선-교환 및/또는 패킷-교환 네트워크들과 통신하도록 구성될 수도 있다. 예컨대, 이러한 디바이스는 인코딩된 활성 프레임들 및 SID들을 송신하도록 구성된 RF 회로를 포함할 수도 있다. 방법 (M100) 은 또한 컴퓨터 프로그램 제품 (예컨대, 디스 크들, 플래시 또는 다른 비휘발성 메모리 카드들, 반도체 메모리 칩들 등과 같은 하나 이상의 데이터 저장 미디어) 에 수록된 머신-판독가능 코드로서 구현될 수도 있다.
방법 (M100) 의 통상의 애플리케이션에 있어서, 태스크 T400 은 태스크 T200 에 의해 생성된 스펙트럼 틸트 값들의 시퀀스에 걸쳐 반복하여 스펙트럼 틸트 값들의 연속된 쌍들에 기초하여 일련의 변화들을 계산하고, 태스크 T500 은 일련의 변화들에 걸쳐 반복하여 일련의 송신 결정을 수행한다. 일반적으로, 태스크 T200 은 진행 프로세스로서 실행하고, 태스크 T400 및 태스크 T500 은 (예컨대, 아마도 하나 이상의 비활성 프레임들의 초기화 주기 후에) 스펙트럼 틸트 값과 대응 계산된 변화 및 송신 표시가 스피치 신호의 각 비활성 프레임에 대해 생성되도록, 직렬 또는 병렬로 반복한다. 태스크 T200 이 매 비활성 프레임 보다는 덜 자주 (예컨대, 매 2 번째 또는 3 번째 프레임에 대해) 스펙트럼 틸트 값을 생성하도록, 태스크 T400 이 태스크 T200 보다 자주 또는 덜 자주 (예컨대, 태스크 T200 의 매 2 번째 또는 3 번째 반복에 대해) 수행되도록, 및/또는 태스크 T500 이 태스크 T400 보다 자주 또는 덜 자주 (예컨대, 태스크 T400 의 매 2 번째 또는 3 번째 반복에 대해) 수행되도록 방법 (M100) 을 구현하는 것이 또한 가능하다.
도 1b 는 일반적 구성에 따른 장치 (A100) 의 블록도를 도시한다. 시퀀스 생성기 (120) 는 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 구성된다. 예컨대, 시퀀스 생성기 (120) 는 본 명세서에 기재된 태스크 T200 의 일 구현을 수행하도록 구성될 수도 있다. 계산기 (140) 는 스펙트럼 틸트 값들의 시퀀스의 적어도 2 개의 값들 사이의 변화를 계산하도록 구성된다. 예컨대, 계산기 (140) 는 본 명세서에 기재된 태스크 T400 의 일 구현을 수행하도록 구성될 수도 있다. 비교기 (150) 는 스피치 신호의 비활성 세그먼트에 대한 디스크립션을 송신할지의 여부를 결정하도록 구성되며, 여기서, 이 결정은 계산된 변화 (예컨대, (A) 계산된 변화의 크기와 (B) 임계값 사이의 관계) 에 기초한다. 예컨대, 비교기 (150) 는 본 명세서에 기재된 태스크 T500 의 일 구현을 수행하도록 구성될 수도 있다. 통상의 애플리케이션에 있어서, 장치 (A100) 의 일 구현은 스펙트럼 틸트 값들의 시퀀스를 처리하고 그 시퀀스에 기초하여 일련의 송신 결정을 행하도록 마련된다.
장치 (A100) 의 다양한 엘리먼트들은 의도된 애플리케이션에 적합하다고 판단되는 펌웨어, 소프트웨어 및/또는 하드웨어의 임의의 조합으로 구현될 수도 있다. 예컨대, 이들 엘리먼트들 중 임의의 하나가 로직 게이트들의 하나 이상의 어레이들로서 구현될 수도 있다. 이들 엘리먼트들 중 임의의 2 개 이상, 또는 심지어 전부가 동일한 어레이 또는 어레이들 내에서 구현될 수도 있다. 이러한 어레이 또는 어레이들은 하나 이상의 칩들 내에서 (예컨대, 2 개 이상의 칩들을 포함하는 칩세트 내에서) 구현될 수도 있다. 장치 (A100) 의 다양한 엘리먼트들 중 임의의 것이 또한 하나 이상의 컴퓨터들 (예컨대, 하나 이상의 세트들 또는 명령의 시퀀스들을 실행하도록 프로그래밍된 어레이들, "프로세서들" 이라고도 함) 로서 구현될 수도 있고, 이들 엘리먼트들 중 임의의 2 개 이상 또는 심지어 전부가 동일한 이러한 컴퓨터 또는 컴퓨터들 내에서 구현될 수도 있다. 장치 (A100) 의 다양한 엘리먼트들은 셀룰러 전화기와 같은 무선 통신용 디바이스 또는 이러한 통신 능력을 갖는 다른 디바이스 내에 포함될 수도 있다. 이러한 디바이스는 (예컨대, VoIP 와 같은 하나 이상의 프로토콜들을 사용하여) 회선-교환 및/또는 패킷-교환 네트워크들과 통신하도록 구성될 수도 있다. 예컨대, 이러한 디바이스는 인코딩된 활성 프레임들 및 SID들을 송신하도록 구성된 RF 회로 및/또는 대응 송신 결정들의 결과들에 따라 SID들을 송신하도록 구성된 스피치 인코더를 포함할 수도 있다.
파라미터 값이 일 프레임의 스펙트럼 틸트를 나타내도록 사용될 수도 있는 파라미터의 일 예로는 제 1 반사 계수 k0 이고, 다른 이러한 파라미터들에 대해서는 후술한다. 태스크 T200 은 스피치 인코딩 방법과 같은 대규모 절차의 다른 태스크로부터 스펙트럼 틸트 값들의 시퀀스를 수신하도록 마련될 수도 있다. 대체안으로, 태스크 T200 은 후술하는 값들을 계산하도록 구성된 태스크 T210 을 포함하여 구현될 수도 있다. 마찬가지로, 시퀀스 생성기 (120) 는 스피치 인코더 또는 통신 디바이스와 같은 대규모 장치의 다른 엘리먼트로부터 스펙트럼 틸트 값들의 시퀀스를 수신하도록 마련될 수도 있다. 대체안으로, 시퀀스 생성기 (120) 는 후술하는 값들을 계산하도록 구성된 계산기 (128) 를 포함하여 구현될 수도 있다.
태스크 T200 은 스펙트럼 틸트 값들의 시퀀스를 평활화하는 태스크 T300 을 포함하여 구현될 수도 있다. 태스크 T300 의 통상적인 구현은 무한 펄스 응답 (IIR) 필터와 같은 자기회귀 모델 (autoregressive model) 에 따라 스펙트럼 틸트 값들의 시퀀스를 필터링하도록 구성된다. 태스크 T300 의 특정 예로는, 스펙트럼 틸트 값들의 입력 시퀀스 x 의 현재 값과 평활화된 시퀀스 y 의 이전 값의 가중 평균으로서 평활화된 시퀀스 y 의 각 값을 계산하는 다음의 1 차 IIR 필터링 연산을 수행하는 것이다:
y[n] = αx[n] + (1-α)y[n-1] (1)
여기서, n 은 순차 인덱스를 나타낸다. 원하는 평활화의 정도에 따라, 이득 인자 α 가 0 에서 1 까지의 임의의 값을 가질 수도 있다. 일반적으로, 이득 인자 α 는 0.6 이하의 값을 가진다. 예컨대, 이득 인자 α 는 0.1 에서 (또는 0.15 에서) 0.4 까지 (또는 0.5 까지) 의 범위내의 값을 가질 수도 있다. 일 특정 예에 있어서, 시퀀스 x 는 제 1 반사 계수 k0 의 일련의 값들이고, 이득 인자 α 는 값 0.2 를 가진다. 도 1c 는 태스크 T200 이 태스크 T300 으로서 구현되는 방법 (M100) 의 일 구현 (M101) 의 플로우차트를 도시한다. 도 1d 는 시퀀스 생성기 (120) 가 태스크 T300 의 일 구현을 수행하도록 구성된 평활기 (130) 로서 구현된 장치 (A100) 의 일 구현 (A101) 의 블록도를 도시한다.
도 2 는 평활기 (130) 의 일 구현 (132) 의 일 예의 블록도를 도시한다. 평활기 (132) 는 스펙트럼 틸트 값들의 입력 시퀀스의 현재 값 x[n] 에 이득 인자 G10 을 적용하도록 마련된 제 1 멀티플렉서; 지연 엘리먼트 D 로부터 획득되는, 스펙트럼 틸트 값들의 평활화된 시퀀스의 이전 값 y[n-1] 에 이득 인자 G20 을 적용 하도록 마련된 제 2 멀티플렉서; 및 2 개의 프로덕트들의 합으로서 y[n] 을 출력하도록 마련된 가산기를 포함한다. 이득 인자 G10 은 태스크 T300 을 참조하여 상술한 값 α 를 가지고, 이득 인자 G20 은 값 (1-α) 를 가지는 것이 (예컨대, 안정성 면에서) 바람직할 수도 있다. 일 특정 예에 있어서, 시퀀스 x 는 제 1 반사 계수 k0 의 일련의 값들이고, 이득 인자 G10 은 값 0.2 를 가지고, 이득 인자 G20 은 값 0.8 을 가진다. 상술한 바와 같이, 평활기 (132) 는 의도된 애플리케이션에 적합하다고 판단되는 펌웨어, 소프트웨어 및/또는 하드웨어의 임의의 조합으로 구현될 수도 있다.
대체안으로 또는 추가적으로, 태스크 T300 은 스펙트럼 틸트 값들의 시퀀스 x 에 대해 (또는 시퀀스 x 에 대한 평활화 연산을 수행한 결과에 대해) 하나 이상의 다른 평균화, 적분, 및/또는 로우패스 필터링 연산을 수행함으로써 스펙트럼 틸트 값들의 평활화된 시퀀스 y 의 값을 계산하도록 구성될 수도 있다. 방법 (M100) 의 다른 구현에 있어서, 예컨대, 태스크 T300 은 유한 펄스 응답 (FIR) 필터와 같은 이동 평균 모델 (moving average model) 에 따라 시퀀스 x 를 필터링하도록 구성된다. 방법 (M100) 의 또 다른 구현에 있어서, 태스크 T300 은 자기회귀 이동 평균 (ARMA) 모델에 따라 시퀀스 x 를 필터링하도록 구성된다. 유사하게, 평활기 (130) 는 2 개 이상의 입력 값들에 기초하여 평활화된 값을 작성하도록 구성된 (FIR 또는 ARMA 필터와 같은) 다른 로우패스 필터 또는 적분기로서 구현될 수도 있다.
방법 (M100) 은 통상적으로 태스크 T300 에서 평활화된 스펙트럼 틸트 값들의 시퀀스 x 의 각 값이 스피치 신호의 복수의 연속된 프레임들 중 하나에 대응하도록 구현된다. 유사하게, 장치 (A100) 는 통상적으로 평활기 (130) 에 의해 평활화된 시퀀스 x 의 각 값이 스피치 신호의 복수의 연속된 프레임들 중 하나에 대응하도록 구현된다. 이후에 더욱 상세하게 설명되는 바와 같이, 이들 연속된 프레임들이 계속될 필요는 없다는 것에 유의한다.
스피치 신호는 통상적으로 비활성 프레임들뿐만 아니라 활성 프레임들도 포함할 것이다. 그러나, 활성 프레임 동안 에너지의 분포는 배경 잡음 이외의 요인들에 대해 주로 당연할 것이므로, 활성 프레임들로부터의 에너지 분포 값들은 배경 잡음의 변화에 관한 신뢰성 있는 정보를 제공할 가능성이 없다. 따라서, 스펙트럼 틸트 값들의 시퀀스 x 가 비활성 프레임들에 대응하는 값들만을 포함하는 것이 바람직할 수도 있다. 이러한 경우, 시퀀스 x 의 값들은 스피치 신호에 있어서 계속되지 않는 연속된 (비활성) 프레임들에 대응할 수도 있다.
이 원리를 설명하기 위해, 도 3 은 각 원이 시간 경과에 따른 스피치 신호의 일련의 계속된 프레임들 중 하나를 나타내는 일 예를 도시한다. 비활성 프레임들을 나타내는 원들은 각각 스펙트럼 틸트 값들의 시퀀스 x 에서의 대응 값의 인덱스 번호로 표기되어 있다. 이 예에 있어서, 값들 74 및 75 는 시퀀스에 있어서 계속된다. 값들 74 및 75 에 대응하는 비활성 프레임들이 스피치 신호에 있어서 연속되지만, 그들은 활성 프레임들의 블록에 의해 분리되므로, 서로 계속되지 않는다.
방법 (M100) 은 태스크 T300 이 비활성 프레임들에 대응하는 시퀀스 x 의 스펙트럼 틸트 값들만을 수신하도록 마련될 수도 있다. 대체안으로, 태스크 T300 은 계속된 프레임들에 대응되는 스펙트럼 틸트 값들의 시퀀스 가운데서 비활성 프레임들에 대응되는 값들만을 선택하도록 구현될 수도 있다. 예컨대, 태스크 T300 의 이러한 구현은 스피치 인코더로부터 수신된 음성 활성도 표시, 스피치 인코딩 방법, 또는 후술하는 음성 활성도 검출 태스크 T100 에 기초하여 비활성 프레임들에 대응되는 스펙트럼 틸트 값들을 선택하도록 (및/또는 활성 프레임들에 대응되는 값들을 거절하도록) 구성될 수도 있다.
마찬가지로, 장치 (A100) 는 평활기 (130) 가 비활성 프레임들에 대응되는 시퀀스 x 의 스펙트럼 틸트 값들만을 수신하도록 마련될 수도 있다. 대체안으로, 평활기 (130) 는 계속된 프레임들에 대응하는 스펙트럼 틸트 값들 가운데서 비활성 프레임들에 대응되는 값들만을 선택하도록 구현될 수도 있다. 예컨대, 평활기 (130) 의 이러한 구현은 스피치 인코더로부터 수신된 음성 활성도 표시, 스피치 인코딩 방법, 또는 후술하는 음성 활성도 검출기 (110) 에 기초하여 비활성 프레임들에 대응되는 스펙트럼 틸트 값들을 선택하도록 (및/또는 활성 프레임들에 대응되는 값들을 거절하도록) 구성될 수도 있다.
태스크 T400 은 태스크 T200 에 의해 생성된 스펙트럼 틸트 값들의 시퀀스의 적어도 2 개의 값들 사이의 변화를 계산한다. 예컨대, 태스크 T400 은 다음과 같은 표현식에 따라 평활화된 시퀀스 y 의 계속된 값들 사이의 차이 ("델타"라고도 함) 를 계산하도록 구성될 수도 있다:
z[n] = y[n] - by[n-1] (2)
여기서, z 는 출력을 나타내고, b 는 이득 인자를 나타낸다. 도 4 는 b 가 1 일 때 (즉, 1 차 FIR 하이패스 필터링 연산 z[n] = y[n] - y[n-1] 에 따라) 태스크 T400 의 이 예의 특정 경우를 수행하도록 사용될 수도 있는 계산기 (140) 의 일 구현 (142) 을 도시한다. 계산기 (140) 및/또는 태스크 T400 의 다른 구현들은 다른 b 값을 사용하여 이러한 필터링 연산을 적용하도록 구성될 수도 있다. 예컨대, b 값은 원하는 주파수 응답에 따라 선택될 수도 있다. 태스크 T200 이 시퀀스 x 를 생성하도록 구성된 경우에 대해, 계산기 (142) 또는 태스크 T400 의 이러한 구현은 z[n] = x[n] - x[n-1] 과 같은 표현식에 따라 차이를 계산하도록 마련될 수도 있다. 상술한 바와 같이, 계산기 (142) 는 의도된 애플리케이션에 적합하다고 판단되는 펌웨어, 소프트웨어 및/또는 하드웨어의 임의의 조합으로 구현될 수도 있다.
대체안으로 또는 추가적으로, 태스크 T400 은 상이한 하이패스 필터링 연산 (예컨대, 생성된 시퀀스에 1 차 IIR 하이패스 필터를 적용하는 것), 또는 그밖에 생성된 시퀀스의 값들 사이의 간격 또는 다른 변화를 계산하는 것과 같은, 스펙트럼 틸트 값들의 생성된 시퀀스에 대해 하나 이상의 다른 미분 연산을 수행하도록 구성될 수도 있다. 유사하게, 계산기 (140) 는 2 개 이상의 입력 값들 사이의 차이 또는 다른 간격이나 변화를 계산하도록 구성된 미분기, 차이 계산기, 또는 다른 하이패스 IIR 또는 FIR 필터로서 구현될 수도 있다.
태스크 T400 에 의해 계산된 변화는 스펙트럼 틸트 값들의 생성된 시퀀스의 변화의 레이트를 나타내도록 사용될 수도 있다. 예컨대, 상술한 z[n] 의 크기는 배경 잡음의 스펙트럼 틸트 윤곽이 일 비활성 프레임으로부터 다음 비활성 프레임으로 얼마나 많이 변화되었는지를 나타내기 위해 사용될 수도 있다. 태스크 T400 은, 통상적으로 그 크기들이 각각의 프레임 주기들에서 평활화된 윤곽의 변화의 레이트를 나타내는 일련의 간격들을 반복적으로 계산하도록 마련된다.
태스크 T500 은 스피치 신호의 비활성 세그먼트에 대한 디스크립션을 송신할지의 여부를 결정하며, 여기서, 이 결정은 태스크 T400 에 의해 계산된 대응 변화에 기초한다. 예컨대, 태스크 T500 은 계산된 변화의 크기와 임계값 T 를 비교하여 디스크립션을 송신할지의 여부를 결정하도록 구성될 수도 있다. 태스크 T500 의 이러한 구현은 이 비교의 결과에 따라 이진 플래그를 설정하도록 구성될 수도 있다:
Figure 112009005732943-pct00001
여기서, 플래그 p[n] 의 값은 송신 결정의 결과를 나타낸다. 이 경우, 1 또는 논리 TRUE 의 p[n] 값은 현재 프레임에 대해 침묵 디스크립션에 대한 업데이트를 송신해야만 한다는 것을 나타내는 포지티브 송신 표시 (즉, 포지티브 상태를 갖는 송신 표시, 송신 인에이블 표시, 송신한다는 결정의 표시) 이고; 0 또는 논리 FALSE 의 p[n] 값은 현재 프레임에 대해 침묵 디스크립션에 대한 업데이트를 송신하지 않아야 한다는 것을 나타내는 네거티브 송신 표시 (즉, 네거티브 상태를 갖는 송신 표시, 송신 디스에이블 표시, 송신하지 않는다는 결정의 표시) 이다. 일 예에 있어서, 임계치 T 는 0.2 의 값을 가진다. 보다 작은 임계값을 사용하여 스펙트럼 틸트 값들의 생성된 시퀀스에서의 변동에 대해 보다 큰 감도를 제공할 수도 있지만, 보다 큰 임계값을 사용하여 스펙트럼 틸트 값들의 생성된 시퀀스에서의 과도현상 (transients) 에 대한 보다 큰 거절을 제공할 수도 있다.
당업자는 방법 (M100) 의 또 다른 구현에 있어서, 태스크 T400 이 다음과 같은 표현식에 따른 크기로서 변화를 계산하도록 구성될 수도 있다는 것을 인식할 것이다:
Figure 112009005732943-pct00002
그리고 태스크 T500 은 다음과 같은 비교의 결과에 따라 이진 플래그를 설정하도록 구성될 수도 있다:
Figure 112009005732943-pct00003
방법 (M100) 은 또한 임계값과 계산된 변화들 중 2 개 이상의 평균 크기 (예컨대, 현재 프레임 및 이전 프레임에 대한 계산된 변화들의 평균 크기) 를 비교하는 일 구현과 같은 다른 변형의 태스크 T500 을 포함하여 구현될 수도 있다.
도 5 는 태스크 T500 의 일 구현을 수행하기 위해 사용될 수도 있는 비교기 (150) 의 일 구현 (152) 의 블록도를 도시한다. 이 예에 있어서, 비교기 (152) 는 계산된 변화의 크기를 계산하고 그 크기와 임계값 T10 을 비교함으로써 송신 결 정을 수행하도록 구성된다. 일 특정 예에 있어서, 임계값 T10 은 0.2 의 값을 가진다. 도 6 은 태스크 T500 의 일 구현을 수행하기 위해 사용될 수도 있는 비교기 (150) 의 다른 구현 (154) 의 블록도를 도시한다. 이 예에 있어서, 비교기 (154) 는 계산된 변화의 신호 값과 포지티브 임계값 T10 및 네거티브 임계값 T20 을 각각 비교하고, 계산된 변화가 임계값 T10 보다 크거나 (대체안으로서, 임계값 T10 이상) 또는 계산된 변화가 임계값 T20 보다 작은 (대체안으로서, 임계값 T20 이하) 경우에 포지티브 송신 표시를 발행하도록 구성된다. 일 예에 있어서, 임계값 T20 은 임계값 T10 의 네거티브인 값을 가지므로, 비교기들 (152, 154) 은 동일한 결과를 작성하도록 구성된다. 그러나, 비교기 (154) 는 또한 필요에 따라 임계값 T20 이 임계값 T10 과는 상이한 크기를 가지도록 구현될 수도 있다.
비교기 (150) 의 또 다른 구현은 계산기 (140) 로부터의 계산된 변화를 크기로서 수신하고 이 크기와 임계값 T10 을 비교하도록 마련된다. 상술한 바와 같이, 비교기 (150) 의 이러한 구현 (즉, 비교기들 (152, 154) 을 포함한 것) 은 의도된 애플리케이션에 대해 적합하다고 판단되는 펌웨어, 소프트웨어 및/또는 하드웨어의 임의의 조합으로 구현될 수도 있다. 도 7a 는 입력 신호 x[n] 에 대해 상술한 바와 같은 다양한 연산들을 수행하여 대응 송신 표시를 작성하도록 구성된 장치 (A100) 의 일 구현 (A102) 의 블록도를 도시한다.
도 8a 는 로직 엘리먼트들의 프로그래머블 어레이 또는 다른 상태 머신 (예컨대, 컴퓨터 또는 프로세서) 에 의해 실행되어 태스크 T300, 태스크 T400 및 태스크 T500 의 구현들을 포함하는 방법 (M101) 의 일 구현을 수행할 수도 있는 명령 세트에 대한 소스 코드 리스트의 일 예를 도시한다. 이 예에 있어서, 변수 k0 은 현재 프레임에 대한 스펙트럼 틸트 값 x[n] 을 유지하고, 변수 y_current 는 초기에 스펙트럼 틸트 값들의 평활화된 시퀀스 y 의 가장 최근 값을 유지하고, 플래그 p 는 송신 표시의 상태를 유지한다. Part 1 은 이득 인자 α 에 대한 0.2 의 값을 사용하여 상기 표현식 (1) 에 따라 평활화된 시퀀스 y 의 현재 값을 계산함으로써 태스크 T300 을 수행한다. Part 2 는 이득 인자 b 에 대한 1 의 값을 사용하여 상기 표현식 (2) 에 따라 평활화된 시퀀스 y 의 현재 값과 가장 최근 값 사이의 변화를 계산함으로써 태스크 T400 을 수행한다. Part 3 은 임계값 0.2를 사용하여, 계산된 변화와 임계값 사이의 비교 결과에 따라 플래그 p 를 설정함으로써 태스크 T500 을 수행한다. 통상의 애플리케이션에 있어서, (예컨대, 각 비활성 프레임에 대해) 명령 세트는 반복적으로 실행되므로, 각 반복에 대해 변수 y_current 의 초기 값이 이전 반복 동안 계산된 변수 y_current 의 최종 값이다.
상술한 바와 같이, 태스크 T300 은 스펙트럼 틸트 값들의 일 시퀀스 x 의 하나 이상의 지난 값들 및/또는 평활화된 시퀀스 y 의 하나 이상의 지난 값들에 기초하여 스펙트럼 틸트 값들의 평활화된 시퀀스 y 의 현재 값을 계산하도록 구성될 수도 있다. 그러나, 평활화된 시퀀스 y 의 초기 값에 대해, 시퀀스 x 및/또는 평활화된 시퀀스 y 의 지난 값이 존재하지 않을 수도 있다. 태스크 T300 이 지난 값 대신에 임의의 값 또는 0 값을 사용함으로써 평활화된 시퀀스 y 의 값을 계산할 경우, 그 결과로서 태스크 T400 이 부적합하게 큰 계산된 변화를 출력하게 할 수도 있고, 이는 차례로 태스크 T500 이 스펙트럼 틸트 윤곽이 실제로 일정한 경우에조 차도 포지티브 송신 표시를 출력하도록 유도할 수도 있다.
시퀀스 x 및/또는 평활화된 시퀀스 y 의 지난 값들을 유지하도록 구성된 하나 이상의 변수들 (예컨대, 데이터 저장 위치들) 을 초기화하는 것이 바람직할 수도 있다. 이러한 초기화는 태스크 T300 이 먼저 실행되기 전에 수행될 수도 있고 및/또는 태스크 T300 내에서 수행될 수도 있다. 예컨대, 하나 이상의 이러한 변수들은 시퀀스 x 의 현재 값으로 초기화될 수도 있다. 특정 예에 있어서, 평활화된 시퀀스의 지난 값 (상기 표현식 (1) 에서 y[n-1]) 을 저장하도록 구성된 변수가 입력 시퀀스의 현재 값 (상기 표현식 (1) 에서 x[n]) 으로 초기화된다. 태스크 T400 이 값들 x[n] 및 x[n-1] 에 기초하여 변화를 계산하도록 마련된 다른 예에 대해, 입력 시퀀스의 지난 값 x[n-1] 을 저장하도록 구성된 변수가 입력 시퀀스의 현재 값 x[n] 으로 초기화된다. 대체안으로 또는 추가적으로, 방법 (M100) 은 제 1 약간의 비활성 프레임들에 대해 포지티브 송신 표시들을 출력하는 것을 회피하도록 (예컨대, 태스크 T500 으로 하여금 이들 프레임들에 대해 네거티브 상태들을 갖는 송신 표시들을 출력하도록 강제함으로써) 구성될 수도 있다. 이러한 경우, (아마도 태스크 T300 을 포함하는) 태스크 T200 은 본 명세서에 기재된 바와 같이 이들 변수들을 초기화하는 대신에 하나 이상의 지난 값들 각각에 대해 임의의 값 또는 0 의 초기 값을 사용하도록 구성될 수도 있다.
도 8b 는 로직 엘리먼트들의 프로그래머블 어레이 또는 다른 상태 머신 (예컨대, 프로세서) 에 의해 실행되어, 태스크 T400 및 태스크 T500 의 구현들뿐만 아니라 태스크 T300 의 일 구현 T310 을 포함하는 방법 (M101) 의 일 구현을 수행할 수도 있는 명령 세트에 대한 소스 코드 리스트의 다른 예를 도시한다. 이 예에 있어서, 태스크 T310 은 그전에 명령 세트가 호출되었는지의 여부 및 그리하여 변수 y_current 에 저장된 값이 유효 (valid) 한지의 여부를 나타내는 변수 Y_VALID 를 사용하는 초기화 연산을 포함한다. 이 경우에, 호출 루틴 (예컨대, 스피치 인코딩 방법과 같은 대규모 절차) 은 명령 세트를 호출하기 전에 Y_VALID 의 값을 FALSE 로 초기화하도록 구성될 것이다. 명령 세트가 Y_VALID 의 값이 FALSE 임을 판정할 경우 (즉, 명령 세트가 제 1 시간 동안 실행되고 있을 경우), 변수 y_current 가 변수 k0 의 현재 값으로 초기화된다.
침묵 디스크립션 (SID) 은 통상적으로 프레임의 스펙트럼 엔빌로프의 디스크립션 및/또는 프레임의 에너지 엔빌로프의 디스크립션을 포함한다. 이들 디스크립션들은 현재 비활성 프레임으로부터 및/또는 하나 이상의 이전 비활성 프레임들로부터 도출될 수도 있다. SID 는 또한 "침묵 디스크립션에 대한 업데이트", "침묵 디스크립터", "침묵 삽입 디스크립터", "컴포트 잡음 디스크립터 프레임" 및 "컴포트 잡음 파라미터들" 과 같은 다른 명칭들로서 불릴 수도 있다. 문헌 3GPP2 C.S0014-C 버전 1.0, "Enhanced Variable Rate Codec, Speech Service Options 3, 68 and 70 for Wideband Spread Spectrum Digital Systems" 에 기재된 EVRC (Enhanced Variable Rate Codec) 의 특정 예에 있어서, SID들은 잡음-여기 선형 예측 (NELP; noise-excited linear prediction) 코딩 모드를 사용하여 8 번째 레이트 (프레임당 16 비트) 로 인코딩되는 한편, 활성 프레임들은 코드-여기 선형 예측 (CELP; code-excited linear prediction), 프로토타입 피치 주기 (PPP; prototype pitch period), 또는 NELP 코딩 모드들을 사용하여 풀 레이트 (프레임당 171 비트), 하프 레이트 (프레임당 80 비트), 또는 쿼터 레이트 (프레임당 40 비트) 로 인코딩된다.
스펙트럼 엔빌로프 디스크립션은 일반적으로 필터 계수들, 반사 계수들, 라인 스펙트럼 주파수 (LSF) 들, 라인 스펙트럼 쌍 (LSP) 들, 이미턴스 스펙트럼 주파수 (ISF) 들, 이미턴스 스펙트럼 쌍 (ISP) 들, 셉스트럴 계수 (cepstral coefficient) 들, 또는 로그 영역 비율들과 같은 코딩 파라미터 세트를 포함한다. 하나 이상의 벡터들로서 마련될 수도 있는 코딩 파라미터 세트는 통상적으로 대응 룩업 테이블들 또는 "코드북들" 을 나누는 하나 이상의 인덱스들로서 양자화된다.
SID 내의 스펙트럼 엔빌로프 디스크립션의 통상적인 길이는 현재 8 내지 28 비트이다. 상기 참조한 3GPP2 C.S0014-C 버전 1.0 에 기재된 EVRC 의 특정 예에 있어서, 각 16-비트 SID 는 스펙트럼 엔빌로프의 저주파 정보에 대한 코드북을 나누는 4-비트 인덱스 LSPIDX1 및 스펙트럼 엔빌로프의 고주파 정보에 대한 코드북을 나누는 4-비트 인덱스 LSPIDX2 를 포함한다. AMR (Adaptive Multi Rate) 스피치 코덱의 특정 예에 있어서, 문헌 ETSI TS 126 092 V6.0.0 (유럽 전기통신 표준 협회 (ETSI), Sophia Antipolis Cedex, FR, 2004년 12월) 에 기재된 바와 같이, 각 35-비트 SID 는 3 개의 LSF 서브벡터들 각각에 대한 8-비트-긴 또는 9-비트-긴 인덱스를 포함한다. AMR 광대역 스피치 코덱의 특정 예에 있어서, 문헌 ETSI TS 126 192 V6.0.0 (ETSI, 2004년 12월) 에 기재된 바와 같이, 각 35-비트 SID 는 5 개의 ISF 서브벡터들 각각에 대한 5-비트-긴 또는 6-비트-긴 인덱스를 포함한다.
에너지 엔빌로프 디스크립션은 프레임 ("이득 프레임"이라고도 함) 에 적용될 이득 값을 포함할 수도 있다. 대체안으로서 또는 추가적으로, 에너지 엔빌로프 디스크립션은 프레임의 다수의 서브프레임들 각각에 적용될 이득 값들 (집합적으로 "이득 프로파일"이라고도 함) 을 포함할 수도 있다. 통상적으로, 몇몇 경우에 있어서는 코드북을 사용하지 않고 알고리즘을 사용하여 이득 프레임 및/또는 이득 프로파일을 양자화 및/또는 역양자화할 수도 있지만, 이득 프레임 및/또는 이득 프로파일은 대응 코드북들을 나누는 하나 이상의 인덱스들로서 양자화된다. SID 내의 에너지 엔빌로프 디스크립션의 통상적인 길이는 현재 5 내지 8 비트이다. 상기 참조한 3GPP2 C.S0014-C v.1.0 에 기재된 EVRC 의 특정 예에 있어서, 각 16-비트 SID 는 8-비트 에너지 인덱스 FGIDX 를 포함한다. 상기 참조한 ETSI TS 126 092 V6.0.0 에 기재된 AMR 스피치 코덱 및 상기 참조한 ETSI TS 126 192 V6.0.0 에 기재된 AMR 광대역 스피치 코덱의 특정 예에 있어서, 각 35-비트 SID 는 6-비트 에너지 인덱스를 포함한다.
방법 (M100) 또는 장치 (A100) 가 DTX 를 지원하기 위해 블랭킹 스킴으로서 사용될 수도 있다. 예컨대, 방법 (M100) 을 포함하는 절차 또는 장치 (A100) 를 포함하는 디바이스는 태스크 T500 에 의해 작성된 송신 표시의 상태가 포지티브일 경우에만 SID 의 송신을 수행하도록 구성될 수도 있다. DTX 를 지원하기 위해 다른 블랭킹 스킴이 또한 사용될 수도 있다. 하나의 이러한 예는 가장 최근 SID 송신 이후에 발생된 계속된 비활성 프레임들의 개수가 임계값 DTX_MAX 에 도달 (대체안으로서, 초과) 할 때마다 포지티브 SID 송신 표시를 발행하는 방법 또는 장치이다. DTX_MAX 에 대한 통상적인 값들은 16 및 32 를 포함한다. 블랭킹 스킴의 또 다른 예는 가장 최근 활성 프레임 이후에 발생된 계속된 비활성 프레임들의 개수가 임계값에 도달 (대체안으로서, 초과) 할 때마다 포지티브 SID 송신 표시를 발행한다.
DTX 를 지원하기 위해 사용될 수도 있는 다른 블랭킹 스킴들은 스피치 신호의 에너지 및/또는 스펙트럼 엔빌로프 디스크립션들의 변화를 검출할 때 포지티브 SID 송신 표시를 발행하도록 구성된 스킴들을 포함한다. 예컨대, 이러한 스킴은, 마지막 송신된 SID 및 프레임의 스펙트럼 엔빌로프 디스크립션들 (예컨대, LSF, LSP, ISF 또는 ISP 벡터들) 사이의 간격이 임계값을 초과하는 (대체안으로서, 임계값 이상인) 것을 검출할 때, 현재 비활성 프레임에 대한 디스크립션을 송신하는 결정을 나타내는, 포지티브 SID 송신 표시를 발행하도록 구성될 수도 있다. 간격들을 계산하기 전에 스펙트럼 엔빌로프 디스크립션들을 필터링 (예컨대, 평활화) 하는 것이 바람직할 수도 있다. 이러한 스킴의 변형은, 마지막 송신된 SID 및 현재 비활성 프레임의 에너지 엔빌로프 디스크립션들 사이의 간격이 임계값을 초과한 (대체안으로서, 임계값 이상인) 것을 또한 검출할 경우에 포지티브 SID 송신 표시를 발행하도록 구성된다. 또 다른 변형은 이들 조건들 중 어느 하나가 만족되는 것을 검출할 경우에 포지티브 SID 송신 표시를 발행하도록 구성된다. 사용될 수도 있는 다른 블랭킹 스킴들로는 필터링 및/또는 가중될 수도 있는 값인, 프레임의 에너지 값 (예컨대, 샘플들의 제곱의 합) 또는 프레임의 평균 절대값과 같은 값과 임계값의 비교에 따라 포지티브 SID 송신 표시를 발행하도록 구성된 스킴들을 포함한다.
DTX 를 지원하기 위해 사용될 수도 있는 블랭킹 스킴의 또 다른 예는 마지막 송신된 SID 와 현재 비활성 프레임 사이의 이타쿠라 (Itakura) 간격이 임계값을 초과한 (대체안으로서, 임계값 이상인) 것을 검출할 때 포지티브 SID 송신 표시를 발행하도록 구성된다. 이러한 스킴의 변형은 마지막 송신된 SID (A) 와 현재 비활성 프레임의 평균 (B) 사이의 이타쿠라 간격이 임계값을 초과한 (대체안으로서, 임계값 이상인) 것을 검출할 때 포지티브 SID 송신 표시를 발행하도록 구성된다. 이타쿠라 간격은 자기회귀 및 잔여 에너지 값들에 기초한 스펙트럼 변화의 측정치이고, 이러한 스킴의 디스크립션은 ITU-T Recommendation G.729 Annex B (국제 전기통신 연합, 제네바, CH, 1996년 10월) 에서 발견될 수도 있다.
방법 (M100) 또는 장치 (A100) 의 일 구현은 상술한 것들 중 하나 이상과 같은 하나 이상의 다른 블랭킹 스킴들과 조합될 수도 있다. 예컨대, 이러한 구현을 수행하거나 또는 포함하는 장치는 그것의 블랭킹 스킴들 중 임의의 하나가 그 프레임에 대한 포지티브 SID 송신 표시를 발행할 경우에 SID 를 송신하도록 구성될 수도 있다. 도 7b 는 논리 OR 연산을 사용하여 몇몇 상이한 송신 표시들을 복합 송신 표시로 조합하는 예의 일 구현을 도시한다.
상술한 바와 같이, SID 는 하나 이상의 비활성 프레임들로부터 도출될 수도 있다. 예컨대, 장치 (A100) 를 포함하는 디바이스 또는 방법 (M100) 을 포함하는 절차는, 단일 인코딩된 비활성 프레임으로서 SID 를 송신하기 보다는 몇몇의 인 코딩된 비활성 프레임들의 평균을 나타내는 SID 를 계산하고 송신하는 것이 바람직할 수도 있다. 이러한 평균은 이상치 (outlier) 들을 폐기하거나 또는 이상치들을 메디안 값으로 대신하는 단계를 포함할 수도 있는, 메디안 필터링과 같은 통계학적 방법을 사용함으로써 및/또는 FIR 또는 IIR 필터링 연산을 사용하여 계산될 수도 있다. 예컨대, 상기 디바이스 또는 절차는 하나 이상의 이전 비활성 프레임들의 에너지 및 스펙트럼 엔빌로프 디스크립션들에 의해 현재 프레임의 에너지 및 스펙트럼 엔빌로프 디스크립션들을 통계학적으로 평활화함으로써 SID 를 계산하도록 구성될 수도 있으므로, 결과적인 SID 가 최근에 가장 자주 발생된 이득 및 주파수 값들을 포함한다.
평균이 계산된 프레임들의 수는 고정될 수도 있고 또는, 예컨대, 정적성 (stationarity) 의 측정에 따라 변화될 수도 있다. 이러한 측정의 일 예는 2 개의 상이한 프레임 세트들에 걸쳐 취해진 스펙트럼 평균들 사이의 간격 (예컨대, 이타쿠라 간격) 이다. 상기 참조한 G.729 Annex B 에 기재된 하나의 이러한 예에 있어서, 평균은 (현재 프레임을 포함하는) 6 개의 지난 프레임들에 걸쳐 및 2 개의 지난 프레임들에 걸쳐 계산된다. 이들 2 개의 평균들 사이의 간격이 임계값을 초과할 (대체안으로서, 임계값 이상일) 경우에, SID 는 2 개의 프레임들에 걸쳐 평균한 스펙트럼 디스크립션을 포함한다 (예컨대, 신호가 논리적으로 비정적이라고 가정된다). 그 밖에, SID 는 6 개의 프레임들에 걸쳐 평균한 스펙트럼 디스크립션을 포함한다 (예컨대, 신호가 논리적으로 정적이라고 가정된다). 상기 참조한 ETSI TS 126 192 V6.0.0 에 기재된 AMR 광대역 코덱의 특정 예에 있어서, SID 는 현재 프레임과 7 개의 이전 프레임들 사이의 스펙트럼 간격들의 합계에 따라 또는 현재 프레임의 에너지와 지난 프레임들에 걸친 평균 에너지 값 사이의 간격에 따라 그 상태가 설정되는 디더링 (dithering) 표시를 포함한다.
방법 (M100) 은 태스크 T200 이 스피치 인코딩 프로세스와 같은 다른 프로세서로부터 스펙트럼 틸트 값들의 시퀀스를 수신하도록 구현될 수도 있다. 예컨대, 방법 (M100) 의 일 구현을 실행하도록 구성된 디바이스 또는 시스템은 통상적으로 또한 스피치 신호에 대한 스피치 인코딩 방법을 수행하도록 구성될 것이다. 스피치 인코딩 방법은, 시간 t 에서 스피치 신호의 샘플을 t 이전의 시간들에서의 스피치 신호의 샘플들의 선형 조합으로서 모델링하는 계수 세트를 계산하는, 선형 예측 코딩 (LPC) 분석을 포함할 수도 있다. 통신 디바이스 (예컨대, 셀룰러 전화기) 의 스피치 인코더에 의해 수행되는 LPC 분석은 통상적으로 4, 6, 8, 10, 12, 16, 20, 24, 28 또는 32 의 차수를 가진다. 개별 LPC 분석들이 스피치 신호의 상이한 주파수 대역들에서 수행되는 경우에 대해, 태스크 T200 은 저주파 대역 (예컨대, 1 kHz 미만의 주파수를 포함하는) 또는 중간정도의 주파수 대역 (예컨대, 적어도 1 kHz 와 2 kHz 사이의 주파수들을 포함하는) 의 분석에 기초한 스펙트럼 틸트 값들의 시퀀스를 수신하도록 마련될 수도 있다.
태스크 T200 은 제 1 또는 제 2 반사 계수들의 시퀀스와 같은, 반사 계수들의 시퀀스로서 스펙트럼 틸트 값들의 시퀀스를 수신하도록 마련될 수도 있다. 본 명세서에 기재된 구성물들의 범위는 방법 (M100) 을 포함하는 스피치 인코딩 방법들뿐만 아니라 (예컨대, 도 9 에 도시된 바와 같은) 스피치 인코딩 방법과 방법 (M100) 의 조합을 포함하는 방법들을 포함한다.
장치 (A100) 는 시퀀스 생성기 (120) 가 스피치 인코더와 같은 다른 장치로부터 스펙트럼 틸트 값들의 시퀀스를 수신하도록 구현될 수도 있다. 예컨대, 장치 (A100) 의 일 구현을 포함하는 디바이스 또는 시스템은 통상적으로 또한 스피치 신호에 대한 LPC 분석을 수행하도록 구성될 수도 있는 스피치 인코더를 포함할 것이다. 이러한 경우, 시퀀스 생성기 (120) 는 반사 계수들의 시퀀스로서의 스펙트럼 틸트 값들의 시퀀스를 수신하도록 마련될 수도 있다. 본 명세서에 기재된 구성물들의 범위는 장치 (A100) 를 포함하는 스피치 인코더뿐만 아니라 (예컨대, 도 10 에 도시된 바와 같은) 스피치 인코더와 장치 (A100) 의 조합을 포함하는 장치를 포함한다.
대체안으로서, 태스크 T200 은 스피치 신호의 복수의 비활성 프레임들에 기초하여 스펙트럼 틸트 값들의 시퀀스를 계산하는 태스크 T210 을 포함하여 구현될 수도 있다. 태스크 T210 은, 예컨대, 후술하는 바와 같이 하나 이상의 몇몇 상이한 기법들에 따라 일련의 프레임들 각각에 걸쳐 신호의 스펙트럼 틸트를 평가하도록 구성될 수도 있다. 도 11a 는 태스크 T200 의 이러한 구현 T202 을 포함하는 방법 (M100) 의 일 구현 (M200) 의 플로우차트를 도시한다. 태스크 T210 은 또한 스피치 인코딩 방법과 같이, 대규모 프로세스의 다른 태스크들에 스펙트럼 틸트 값들의 계산된 시퀀스를 제공하도록 마련될 수도 있다. 방법 (M100) 은 또한 태스크 T200 이 태스크 T210 으로서 구현되도록 할 수도 있다.
도 11b 는 시퀀스 생성기 (120) 의 일 구현 (122) 을 포함하는 장치 (A100) 의 일 구현 (A200) 의 블록도를 도시한다. 시퀀스 생성기 (122) 는 스피치 신호의 복수의 비활성 프레임들에 기초하여 스펙트럼 틸트 값들의 시퀀스를 계산하도록 구성된 계산기 (128) 를 포함한다. 예컨대, 계산기 (128) 는 본 명세서에 기재된 바와 같이 태스크 T210 의 일 구현을 수행하도록 구성될 수도 있다. 장치 (A200) 의 다른 엘리먼트들과 마찬가지로, 계산기 (128) 는 의도된 애플리케이션에 적합하다고 판단되는 펌웨어, 소프트웨어 및/또는 하드웨어의 임의의 조합으로 구현될 수도 있다. 계산기 (128) 는 또한 스피치 인코더와 같은 대규모 장치의 다른 태스크들에 스펙트럼 틸트 값들의 계산된 시퀀스를 제공하도록 마련될 수도 있다. 장치 (A100) 는 또한 시퀀스 생성기 (120) 가 계산기 (128) 로서 구현되도록 할 수도 있다.
태스크 T210 의 통상적인 구현은 스피치 신호의 대응 프레임의 제 1 반사 계수로서의 스펙트럼 틸트를 계산하도록 구성된다. 프레임의 제 1 반사 계수 (통상 k0 로서 표시) 는 비율 R(1)/R(0) (즉, 프레임의 정규화된 제 1 자기상관 값) 로서 계산될 수도 있는데, 이는 -1 에서 +1 까지의 범위의 샘플 값들에 대해 -1 과 +1 사이의 스칼라 값을 가진다. 이 표현식에 있어서, R(1) 은 프레임의 제 1 자기상관 계수 (즉, 하나의 샘플의 래그 (lag) 에서의 프레임에 대한 자기상관 함수의 값) 를 지칭하고, R(0) 은 프레임의 제 0 자기상관 계수 (즉, 0 의 래그에서의 프레임에 대한 자기상관 함수의 값) 를 지칭한다.
다른 구현들에 있어서, 태스크 T210 은 스피치 신호의 대응 프레임의 제 2 반사 계수로서 스펙트럼 틸트를 계산하도록 구성된다. 프레임의 제 2 반사 계수 (통상 k1 로서 표시) 는 다음과 같이 계산될 수도 있다:
Figure 112009005732943-pct00004
여기서, R(2) 는 프레임의 제 2 자기상관 계수 (즉, 2 개의 샘플들의 래그에서의 프레임에 대한 자기상관 함수의 값) 를 지칭한다. 태스크 T210 은 또한 하나 이상의 LPC 필터 계수들과 같은, 하나 이상의 다른 파라미터들에 기초하여 대응 프레임의 하나 이상의 반사 계수들 (예컨대, 제 1 및/또는 제 2 반사 계수) 을 계산하도록 구현될 수도 있다.
태스크 T210 의 구현들의 범위는 반사 계수로서의 스펙트럼 틸트를 계산하는 것들에 한정되지 않는다. 대체안으로서 또는 추가적으로, 태스크 T210 은 하나 이상의 다른 스펙트럼 평가 기법들을 수행하여 일 프레임 또는 프레임들의 스펙트럼 틸트를 계산하도록 구성될 수도 있다. 이러한 스펙트럼 평가 기법들은 고주파 대역의 에너지와 저주파 대역의 에너지 사이의 비율로서 각 프레임에 대한 스펙트럼 틸트를 계산하는 것을 포함할 수도 있다. 이러한 계산은 세그먼트에 대해 이산 푸리에 변환 (DFT) 과 같은 주파수 변환을 수행하는 것을 포함할 수도 있다. 이러한 스펙트럼 평가 기법들은 각 세그먼트 내의 제로 크로싱 (zero crossing) 들의 수로서 스펙트럼 틸트를 계산하는 것을 포함할 수도 있다. 이러한 경우, 보다 큰 수의 제로 크로싱들은 보다 많은 양의 고주파 에너지를 나타내도록 취해질 수도 있다.
스펙트럼 틸트 값들의 시퀀스를 계산할 때, 태스크 T210 은 상술한 하나 이상의 반사 계수들을 계산하는 것과 같이, 자기상관 함수의 값들에 기초하여 계산을 수행하도록 구성될 수도 있다. 필터 또는 반사 계수들과 같은 LPC 모델 파라미터들을 계산하는 자기상관 방법은, Toeplitz 매트릭스를 포함하는 방정식을 해결하는 일련의 반복을 수행하는 것과 관련된다. 몇몇 구현들에 있어서, 태스크 T210 은 이러한 방식을 해결하기 위한 공지된 Levinson 및/또는 Durbin 의 재귀 알고리즘들 중 임의의 하나에 따라 자기상관 방법을 수행하도록 구성된다. 이러한 알고리즘은 통상적으로 LPC 필터 계수들의 세트를 제조하는 프로세스에 있어서 중간물들로서의 반사 계수들 (부분 상관 (PARCOR; partial correlation) 계수들, 네거티브 PARCOR 계수들 또는 Schur-Szego 파라미터들이라고도 함) 을 계산한다.
다른 구현들에 있어서, 태스크 T210 은 필터 계수들의 세트보다는 하나 이상의 반사 계수들을 계산하는 일련의 반복들을 수행하도록 구성된다. 예컨대, 태스크 T210 은 Leroux-Gueguen 알고리즘의 구현을 사용하여 하나 이상의 반사 계수들을 획득하도록 구성될 수도 있다. 대체안으로서, 태스크 T210 은 (유효한 병렬 산출을 위해 구성될 수도 있는) Schur 재귀 알고리즘 또는 Burg 재귀 알고리즘과 같이, 자기상관 값들로부터 하나 이상의 반사 계수들을 획득하는 다른 공지된 반복 방법의 일 구현을 사용하도록 구성될 수도 있다.
태스크 T210 은 스피치 신호의 대응 프레임에 대한 자기상관 함수의 하나 이상의 값들을 계산하도록 구성될 수도 있다. 예컨대, 태스크 T210 은 다음과 같 은 표현식에 따라 특정 래그 값 m (여기서, m 은 0 이상의 정수임) 에 대해 일 프레임의 자기상관 함수를 평가하도록 구성될 수도 있다:
Figure 112009005732943-pct00005
여기서, N 은 프레임 내의 샘플들의 수를 나타낸다. 대체안으로, 태스크 T210 은 (예컨대, 스피치 인코더 또는 다른 프로세서 또는 스피치 인코딩 방법으로부터) 자기상관 함수의 값들을 수신하도록 구성될 수도 있다.
스피치 인코더 또는 스피치 인코딩 방법은 LPC 모델의 파라미터들 (예컨대, 필터 및/또는 반사 계수들) 을 계산하는 것과 같은 코딩 연산에서의 자기상관 함수의 값들을 사용하도록 구성될 수도 있다. 이러한 스피치 인코더 또는 스피치 인코딩 방법이 자기상관 값들에 대한 하나 이상의 사전처리 연산들을 수행하는 것이 바람직할 수도 있다. 예컨대, 자기상관 값들 R(m) 은 다음과 같은 연산을 수행함으로써 스펙트럼 평활화될 수도 있다:
Figure 112009005732943-pct00006
이러한 콘텍스트에서, 태스크 T210 은 자기상관 값들에 대해 스펙트럼 평활화 또는 다른 사전처리 연산을 수행하고 및/또는 스펙트럼 평활화 또는 다른 방식으로 사전처리된 자기상관 값들을 사용하여 스펙트럼 틸트 파라미터의 값들을 계산하도록 구성될 수도 있다.
자기상관 함수가 (예컨대, 태스크 T210 또는 스피치 인코더 또는 스피치 인코딩 방법에 의해) 스피치 신호에 적용되기 전에, 신호에 윈도잉 함수 w[n] 를 적용하는 것이 바람직할 수도 있다. 자기상관 함수가 현재 적용되고 있는 프레임 외측의 스피치 신호를 제로로 하는 것이 바람직할 수도 있다. 몇몇 경우에 있어서, 윈도잉 함수 w[n] 은 직사각형 또는 삼각형이다. 윈도우의 각 엔드에서 낮은 샘플 중량들을 갖는 테이퍼된 (tapered) 윈도잉 함수를 사용하는 것이 바람직할 수도 있고, 이는 윈도우 외측의 컴포넌트들의 효과를 감소시키는 것을 도울 수도 있다. 예컨대, 다음의 해밍 (Hamming) 윈도우 함수와 같은 상승 코사인 윈도우 (raised cosine window) 를 사용하는 것이 바람직할 수도 있다:
Figure 112009005732943-pct00007
여기서, N 은 프레임 내의 샘플들의 수이다.
사용될 수도 있는 다른 테이퍼된 윈도우들로는 해닝 (Hanning), 블랙맨 (Blackman), 카이저 (Kaiser) 및 바틀렛 (Bartlett) 윈도우들을 포함한다. 윈도잉된 프레임 sW[n] 은 다음과 같은 표현식에 따라 계산될 수도 있다:
Figure 112009005732943-pct00008
윈도잉 함수는 대칭일 필요는 없으며, 윈도우의 하나의 절반이 다른 절반과는 다르게 가중될 수도 있다. 해밍-코사인 윈도우 또는 상이한 윈도우들 (예컨 대, 상이한 사이즈들의 2 개의 해밍 윈도우들) 의 2 개의 절반들을 갖는 윈도우와 같은, 하이브리드 윈도우가 또한 사용될 수도 있다. 지각 가중 (perceptual weighting) 과 같은 하나 이상의 다른 사전처리 연산들이, 자기상관 함수를 평가하기 위해 사용되기 전에 (예컨대, 태스크 T210 또는 스피치 인코더 또는 스피치 인코딩 방법에 의해) 샘플 값들 및/또는 윈도잉된 값들에 대해 수행될 수도 있다.
윈도잉 함수 w[n] 은 하나 이상의 인접 프레임들로부터의 샘플들뿐만 아니라 현재 프레임의 샘플들을 포함하도록 구성될 수도 있다. 몇몇 경우에 있어서, 윈도우는 현재 프레임 및 인접하는 이전 및 미래 프레임들 (예컨대, 20-밀리초 프레임의 직전 및 직후 5-밀리초를 포함하는 5-20-5 윈도우) 로부터의 샘플들을 포함한다. 다른 경우에 있어서, 윈도우는 오직 현재 프레임 및 인접하는 이전 프레임 (예컨대, 현재 20-밀리초 프레임과 선행 프레임의 마지막 10-밀리초를 포함하는 10-20 윈도우) 으로부터의 샘플들을 포함한다.
윈도잉 함수가 (예컨대, 태스크 T210 또는 스피치 인코더 또는 스피치 인코딩 방법에 의해) 스피치 신호에 적용되는 경우에 대해, 프레임의 자기상관 함수는 다음과 같은 표현식에 따라 계산될 수도 있다:
Figure 112009005732943-pct00009
상술한 바와 같이, 태스크 T300 또는 평활기 (130) 가 비활성 프레임들에 대응 값들만을 포함하는 시퀀스를 평활화하는 것이 바람직할 수도 있다. 이러한 경우에 있어서, 방법 (M100) 또는 장치 (A100) 는 (예컨대, 스피치 인코더 또는 스 피치 인코딩 방법으로부터) 프레임에서의 음성 활성도의 레벨의 표시를 수신하도록 마련될 수도 있다. 예컨대, 이러한 표시 ("음성 활성도 표시"라고도 함) 는 대응 프레임이 활성인지 또는 비활성인지의 여부를 나타내는 상태를 가진 플래그 또는 이진 변수의 형태를 가질 수도 있다.
음성 활성도 표시를 사용하여 평활화 태스크 T300 의 연산을 제어할 수도 있다. 예컨대, 음성 활성도 표시를 사용하여, 대응 비활성 프레임으로부터의 평활화된 스펙트럼 틸트 값의 생성을 허용하고 및/또는 대응 활성 프레임으로부터의 평활화된 스펙트럼 틸트 값의 생성을 방지할 수도 있다. 하나의 이러한 예에 있어서, 컴퓨터 또는 프로세서는 태스크 T300 을 제어하여 음성 활성도 표시가 대응 프레임이 비활성 프레임임을 나타내는 경우에만 스펙트럼 틸트 값을 평활화하도록 구성될 수도 있다. 대체안으로, 태스크 T300 은 대응 음성 활성도 검출 값에 따라, 스펙트럼 틸트 값을 수락할지 또는 거절할지의 여부, 또는 평활화된 스펙트럼 틸트 값을 생성할지의 여부를 결정하는 것을 포함할 수도 있다. 도 12a 는 태스크 T300 의 이러한 구현 T320 을 포함하는 방법 (M101) 의 일 구현 (M110) 의 플로우차트를 도시한다.
음성 활성도 표시를 사용하여 계산 태스크 T210 의 연산을 제어할 수도 있다. 예컨대, 음성 활성도 표시를 사용하여, 대응 활성 프레임에 대한 스펙트럼 틸트의 생성을 방지하고 및/또는 대응 비활성 프레임에 대한 스펙트럼 틸트의 생성을 허용할 수도 있다. 하나의 이러한 예에 있어서, 프로세서는 태스크 T210 을 제어하여 음성 활성도 표시가 현재 프레임이 비활성 프레임임을 나타내는 경우에만 스펙트럼 틸트를 계산하도록 구성된다. 대체안으로, 태스크 T210 은 대응 음성 활성도 표시 값에 따라, 그 입력 (예컨대, 프레임을 수락할지 또는 거절할지) 및/또는 그 출력 (예컨대, 스펙트럼 틸트 값을 발행할지 여부) 을 제어하도록 구성될 수도 있고, 또는 소정 프레임에 대한 스펙트럼 틸트를 생성할지 여부의 결정을 포함하도록 구성될 수도 있다. 도 12b 는 태스크 T202 의 일 구현 T204 를 포함하는 방법 (M200) 의 일 구현 (M210) 의 플로우차트를 도시하며, 여기서, 태스크 T204 는 태스크 T210 의 이러한 구현 T220 을 포함한다.
음성 활성도 표시를 수신하는 대체안으로서, 방법 (M100) 은, 프레임이 활성인지 또는 비활성인지의 여부를 나타내도록 구성된 태스크 T100 을 포함하여 구현될 수도 있다. 예컨대, 태스크 T100 은 상술한 바와 같이 음성 활성도 표시 (VAI) 를 계산하도록 구성될 수도 있다. 도 12c 는 태스크 T100 을 포함하는 방법 (M101) 의 일 구현 (M120) 의 플로우차트를 도시하며, 도 12d 는 태스크 T100 을 포함하는 방법 (M200) 의 일 구현 (M220) 의 플로우차트를 도시한다. 태스크 T100 은 전대역 에너지 (full-band energy), 저대역 에너지 (low-band energy), 고대역 에너지 (high-band energy), 스펙트럼 파라미터들 (예컨대, 하나 이상의 LSF 들 및/또는 반사 계수들), 주기성, 및 제로-크로싱 레이트와 같은 하나 이상의 인자들에 기초하여 프레임을 활성 또는 비활성으로서 분류하도록 구성될 수도 있다. 예컨대, 이러한 분류는 이러한 특징의 값과 고정된 또는 적응형 임계값을 비교하는 것, 및/또는 이러한 특징 값의 변화의 크기 (예컨대, 2 개의 값들 사이의 차이의 크기, 또는 일 값과 러닝 평균 (running average) 사이의 차이의 크기) 를 계산하고 그 크기와 고정된 또는 적응형 임계값을 비교하는 것을 포함할 수도 있다.
태스크 T100 은 저주파 대역 및 고주파 대역 각각에 있어서의 현재 프레임의 에너지를 평가하고, 각 대역에 있어서의 에너지가 각각의 임계값 미만 (대체안으로, 임계값 이상) 인 경우 그 프레임이 비활성임을 나타내도록 구성될 수도 있다. 이러한 임계값들은 고정되거나 또는 적응형일 수도 있다. 예컨대, 각 임계값은 원하는 인코딩 레이트에 기초할 수도 있다. 한 쌍의 적응형 임계값들의 일 예가 상기 참조한 C.S0014-C v.1.0 의 섹션 4.7 에 기재되어 있다. 이 예에 있어서, 각 대역에 대한 임계값은 (원하는 평균 데이터 레이트로부터 도출되는) 앵커 동작점, 이전 프레임에 대한 그 대역에서의 배경 잡음 레벨의 추정치, 및 이전 프레임에 대한 그 대역에서의 신호대 잡음비에 기초한다.
활성 스피치로부터 비활성 스피치로의 전이는 통상적으로 여러 프레임들의 일 주기에 걸쳐 발생되고, 활성 스피치로부터의 전이 후의 첫번째 여러 비활성 프레임들은 배경 잡음에 추가하여 발성의 잔재들 (remnants of voicing) 을 포함할 수도 있다. 발성 잔재들은 이들 전이-후 비활성 프레임들이 배경 잡음의 스펙트럼 틸트들과는 상이한 스펙트럼 틸트들을 가지도록 할 수도 있고, 이들 차이들은 태스크 T200 에 의해 생성된 스펙트럼 틸트 값들의 시퀀스를 개악시켜 불필요한 SID 송신을 일으킬 수도 있다.
상술한 바와 같이, 태스크 T200 이 비활성 프레임들에만 기초하는 시퀀스 x 의 값을 생성하는 것이 바람직할 수도 있다. 마찬가지로, 태스크 T300 이 비활 성 프레임들로부터의 하나 이상의 스펙트럼 틸트 값들에만 기초하는 평활화된 시퀀스 y 의 값을 생성하는 것이 바람직할 수도 있다. 또한, 방법 (M100) 의 일 구현이 하나 이상의 전이-후 프레임들로부터의 스펙트럼 틸트 값들을 사용하여 스펙트럼 틸트 윤곽을 업데이트하는 것을 회피하는 것이 바람직할 수도 있다. 이러한 제한은 결정 태스크 T500 에 의한 실패 포지티브들의 확률을 감소시키는 것을 도울 수도 있다.
태스크 T200 은 대응 비활성 프레임과 선행 활성 프레임 사이의 시간 간격에 따라 스펙트럼 틸트 값들의 생성된 시퀀스의 하나 이상의 값들을 생성하도록 구성될 수도 있다. 예컨대, 태스크 T200 또는 태스크 T300 의 이러한 구현은, 하나 이상의 비활성 프레임들에 대해, 활성 스피치로부터의 전이에 이은 스펙트럼 틸트 윤곽의 업데이트의 시작을 지연시키거나 또는 보류하도록 구성될 수도 있다. 도 13a 및 도 13b 는 각각 이러한 전이 및 이러한 지연 또는 보류의 영향들의 예들을 도시한다. 도 13a 는 전이-후 프레임들에 있어서 발성 잔재들에 의해 야기되는 평활화된 스펙트럼 틸트 윤곽의 진폭의 가파른 변화를 도시한다. 이러한 변화는 원치않는 포지티브 SID 송신 결정을 일으킬 수도 있다. 이 특정 예에 있어서, 발성 잔재들이 다른 스펙트럼 틸트 파라미터를 사용하는 경우 대신에 진폭의 가파른 감소를 일으킬 수도 있지만, 발성 잔재들이 평활화된 스펙트럼 틸트 윤곽의 진폭의 가파른 상승을 일으키도록, 스펙트럼 틸트 파라미터는 제 1 반사 계수 k0 이다. 비교를 위해, 도 13b 는 전이-후 프레임들 동안 평활화된 윤곽의 업데 이트를 디스에이블하기 위해 지연 ("행오버"라고도 함) 이 적용되는 예를 도시한다. 이 경우, 도 13a 에서 보여졌던 가파른 상승이 발생되지 않는다. 일 특정 예에 있어서, 활성 스피치로부터 비활성 스피치로의 전이 이후에 5 개의 프레임들의 행오버가 사용된다.
도 14 는 태스크들 T400 및 T500 의 구현들뿐만 아니라 태스크 T310 의 일 구현 T312 를 포함하는 방법 (M100) 의 일 구현을 수행하기 위해 로직 엘리먼트들의 프로그래머블 어레이 또는 다른 상태 머신 (예컨대, 프로세서) 에 의해 실행될 수도 있는 명령 세트에 대한 소스 코드 리스트의 일 예를 도시한다. 이 예에 있어서, 태스크 T312 는 음성 활성도 표시의 현재 상태를 저장하는 변수 FRAME_ACTIVE 를 판독한다. FRAME_ACTIVE 의 값이 현재 프레임이 활성임을 나타내는 TRUE 인 경우, 행오버 카운트가 변수 hangover_1 에 저장되고 명령 세트가 종료된다. 이 특정 예에 있어서, 임의의 다른 양의 정수 값이 사용될 수도 있지만, 행오버 카운트는 5 이다. FRAME_ACTIVE 의 값이 현재 프레임이 비활성임을 나타내는 FALSE 인 경우, 변수 hangover_1 의 값이 0 에 도달될 때까지 명령 세트의 각 후속 반복이 변수 hangover_1 의 값을 감소시키고 일찍 종료된다. 이 예에 있어서, 태스크 T400 및 T500 은 도 8b 를 참조하여 상술한 바와 같은 명령들을 사용하여 구현된다.
방법 (M100) 및 장치 (A100) 의 예들은 업데이트 제어 신호의 상태에 따라 스펙트럼 틸트 윤곽의 업데이트를 제어하도록 구성된 구현들을 포함한다. 이러한 신호는 상술한 바와 같은 음성 활성도 표시에 기초할 수도 있다. 도 14 에 도시된 변수 FRAME_ACTIVE 는 업데이트 제어 신호 (구체적으로, 업데이트 디스에이블 신호) 의 일 예이다. 행오버 로직 회로 (50) 는 음성 활성도 표시에 있어서 활성-비활성 전이를 지연시킴으로써 업데이트 제어 신호를 계산하기 위해 사용될 수도 있다. 도 15 는 업데이트 제어 신호 (구체적으로, 업데이트 인에이블 신호) 를 생성하도록 구성된 행오버 로직 회로 (50) 의 일 구현 (52) 을 도시한다. 이 도면에 있어서, 음성 활성도 표시의 상태는 비활성 프레임에 대해 로우 (low) 이고 활성 프레임에 대해 하이 (high) 이며, 3 개의 프레임들의 행오버를 구현하기 위해 3 개의 지연 엘리먼트들을 갖는 테이퍼된 지연 라인이 사용되고, 현재 및 지연된 음성 활성도 표시들을 조합하기 위해 논리 NOR 연산이 사용된다. 다른 예들에 있어서, 음성 활성도 표시의 상태는 비활성 프레임에 대해 하이이고 활성 프레임에 대해 로우이며, 이 경우에 있어서 현재 및 지연된 음성 활성도 표시들은 논리 AND 연산을 사용하여 조합될 수도 있다. 테이퍼된 지연 라인에 대해, 이 회로의 다른 예들은 원하는 행오버의 지속기간에 따라 임의의 수의 지연 엘리먼트들을 사용할 수도 있다. 대체안으로, 행오버 로직 회로 (50) 는 지연 카운터를 사용하여 활성-비활성 전이로부터의 카운트 다운 (또는 카운트 업) 하고 및/또는 업데이트 인에이블 신호 대신에 업데이트 디스에이블 신호를 계산하도록 구현될 수도 있다.
시퀀스 생성기 (120) 는 대응 비활성 프레임과 선행 활성 프레임 사이의 시간 간격에 따라 스펙트럼 틸트 값들의 생성된 시퀀스의 하나 이상의 값들을 생성하도록 구성될 수도 있다. 예컨대, 시퀀스 생성기 (120) 또는 평활기 (130) 는 원하는 행오버에 따라 활성-비활성 전이 이후에 스펙트럼 틸트 윤곽의 업데이트의 시작을 보류시키도록 구성될 수도 있다. 시퀀스 생성기 (120) 또는 평활기 (130) 의 이러한 구현은 상술한 바와 같이 행오버 로직 회로 (50) 의 일 구현을 포함하여 구성될 수도 있다. 도 16a 는 평활기 (132) 의 하나의 이러한 구현 (134) 을 도시한다. 이 예에 있어서, 선택기 (예컨대, 멀티플렉서) 는 업데이트 제어 신호의 상태에 따라 시퀀스의 현재 값 (즉, x[n]) 과 평활화된 스펙트럼 틸트 윤곽의 이전 값 (즉, y[n-1]) 사이에서 평활기의 입력을 스위칭한다. 대체안으로, 평활기 (110) 의 일 구현은 업데이트 제어 신호가 하이일 경우 x[n] 의 현재 값을 저장하고, 업데이트 제어 신호가 로우일 경우 입력에 대해 이 저장된 값을 사용하도록 구성될 수도 있다.
도 16b 는 상술한 바와 같은 행오버 로직 회로 (50) 의 일 구현을 포함하는 평활기 (132) 의 다른 구현 (136) 을 도시한다. 이 예는 업데이트 제어 신호의 상태에 따라 다른 이득 인자들을 출력하도록 구성된 2 개의 선택기들 (예컨대, 멀티플렉서들) 을 포함한다. 제 1 선택기는 x[n] 에 적용될 이득 인자를 출력한다. 업데이트 제어 신호의 상태가 하이인 경우, 이 선택기는 이득 인자 F10 을 출력하고, 업데이트 제어 신호의 상태가 로우인 경우, 이 선택기는 이득 인자 F12 를 출력한다. 제 2 선택기는 y[n-1] 에 적용될 이득 인자를 출력한다. 업데이트 제어 신호의 상태가 하이인 경우, 이 선택기는 이득 인자 F20 을 출력하고, 업데이트 제어 신호의 상태가 로우인 경우, 이 선택기는 이득 인자 F22 를 출력한다. 일 예에 있어서, 이득 인자들 F10 및 F12 는 각각 값들 0.2 및 0 을 가지 며, 이득 인자들 F20 및 F22 는 각각 값들 0.8 및 1.0 을 가진다.
평활기 (136) 의 또 다른 구현은 평활기의 보류된 연산으로부터 통상적 연산으로의 전이가 보다 점차적이도록 각 이득 인자에 대해 3 개 이상의 값들 중에서 선택하도록 구성될 수도 있다. 이진 제어 신호를 생성하는 행오버 로직 회로 대신에, 예컨대, 이러한 평활기는 3 개 이상의 상태들을 갖는 제어 신호를 생성하도록 구성된 행오버 로직 회로 (50) 의 일 구현을 포함할 수도 있다. 행오버 로직 회로 (50) 의 이러한 예는 활성-비활성 전이에 응답하여 c 개의 상태들을 통과하는 업데이트 제어 신호를 생성하도록 구성될 수도 있고, 여기서, c 는 3 이상의 정수이다. 이러한 경우에 있어서, 평활기 (136) 의 2 개의 선택기들은, 전이에 응답하여 그리고 일련의 c 개의 프레임들에 걸쳐서, x[n] 에 적용될 이득 인자가 최소에서부터 최대까지 (예컨대, 0.0 에서부터 0.2 까지) c 개의 값들을 통과하고, y[n-1] 에 적용될 이득 인자는 최대에서부터 최소까지 (예컨대, 1.0 에서부터 0.8 까지) c 개의 값들을 통과하도록 구성될 수도 있다.
코딩 이득의 측정치는 스피치 인코더 (또는 스피치 인코딩 방법) 에 의해 수신된 신호의 에너지와 대응 코딩 에러의 에너지 사이의 관계를 기술한다. 일반적으로, 스피치 인코더 또는 스피치 인코딩 방법은 비활성 프레임들보다 더 효율적으로 활성 프레임들을 코딩할 것이므로, 코딩 이득의 측정치가 비활성 프레임들에 대해서보다 활성 프레임들에 대해 더 높게 될 것이다. 일 프레임에 대한 코딩 이득의 측정치의 일 예는 코딩 잔류물의 에너지 Eerr 에 대한 초기 신호 에너지 Ein (예컨대, 윈도잉된 프레임의 에너지) 의 비율이다. 이러한 경우들에 있어서, 각 신호의 에너지는 일반적으로 샘플들의 크기들의 합으로서 계산된다. LPC 분석에 대한 코딩 이득의 다른 통상의 측정치는 모든 i≤j 에 대해 (대체안으로, 1<i≤j 인 모든 i 에 대해) (1-ki 2) 의 프로덕트의 역수로서 계산될 수도 있는 예측 이득이며, 여기서, j 는 LPC 분석의 차수이고 ki 는 제 i 반사 계수를 나타낸다.
스피치 인코더 또는 스피치 인코딩 방법에 의해 달성되는 코딩 이득의 정도는 신호 변화의 통계치들로서 프레임으로부터 프레임으로 변화하는 경향이 있다. 그러나, 일련의 비활성 프레임들 동안, 그 통계치들이 현저하게 변하지 않을 정도로 신호가 상대적으로 정적일 것이라고 예상할 수도 있다. 따라서, 코딩 이득의 측정치의 값 Gc 는 배경 잡음에 있어서의 지각적으로 현저한 변화들 동안에조차도 상대적으로 일정하게 유지되리라 예상될 수도 있다.
코딩 이득의 측정치의 값 Gc 에서의 큰 변화는 스피치 신호가 배경 잡음에서의 변화 이외의 요인으로 인해 변화된 것을 나타낼 수도 있다. 값 Gc 에서의 이러한 변화를 야기할 수도 있는 하나의 요인은, 인코더의 음성 활성도 검출기의 검출 임계값 미만인 음성 활성도이다. 이러한 경우에 있어서, 배경 잡음이 현저하게 변화하지 않은 경우에도, 큰 변화가 또한 스펙트럼 틸트 값에 발생되어, 태스크 T500 에 의한 포지티브 SID 송신 결정을 일으킬 수도 있다.
코딩 이득의 측정치의 값 Gc 에서의 변화와 관련된 스펙트럼 틸트의 변화를 설명하는 방법 (M100) 을 구현하는 것이 바람직할 수도 있다. 예컨대, 태스크 T200 의 일 구현 T230 또는 태스크 T300 의 일 구현 T330 은 코딩 이득의 측정치의 값 Gc 에서의 변동의 크기에 기초하여 윤곽 업데이트를 인에이블 또는 디스에이블하도록 구성될 수도 있다.
몇몇 경우들에 있어서, 코딩 이득의 측정치는 다음과 같은 표현식에서와 같이 일 코딩 에러에 의하여 계산될 수도 있다:
Figure 112009005732943-pct00010
마찬가지로, 예측 이득은 다음과 같은 표현식에서와 같이 일 예측 에러로서 계산될 수도 있다:
모든 i≤j 에 대해 (대체안으로, 모든 1<i≤j 에 대해),
Figure 112009005732943-pct00011
코딩 이득의 측정치는 또한, 예컨대, 인자 또는 항으로서, Ein 과 Eerr 사이의 비율 또는 다음의 프로덕트를 또한 포함하는 다른 표현식에 따라 계산될 수도 있다:
모든 i≤j 에 대해 (대체안으로, 모든 1<i≤j 에 대해),
Figure 112009005732943-pct00012
코딩 이득의 측정치는 선형 눈금 상에서, 또는 로그 눈금 상에서와 같은 다른 도메인으로 표현될 수도 있다. 이러한 표현식들의 예들은 다음을 포함한다:
Figure 112009005732943-pct00013
코딩 이득의 측정치는 통상적으로 각 프레임에 대해 평가되지만, 또한 덜 자주 (예컨대, 매 2 번째 또는 3 번째 프레임에 대해) 및/또는 보다 긴 간격에 걸쳐서 (예컨대, 프레임들의 쌍 또는 삼중항에 걸쳐서) 평가될 수도 있다.
일반적 방식에 있어서, 태스크 T230 또는 T330 은 값 Gc 가 임계량보다 많이 (대체안으로, 임계량 이상 만큼) 하나의 비활성 프레임으로부터 다음 비활성 프레임으로 변화할 경우 생성된 스펙트럼 틸트 윤곽의 업데이트를 디스에이블하도록 구성된다. 일 특정 예에 있어서, 태스크 T330 은 예측 이득의 값이 0.72 dB 보다 많이 이전 비활성 프레임으로부터 현재 비활성 프레임으로 변화한 경우에 평활화된 윤곽의 업데이트를 디스에이블하도록 구성된다. 태스크 T230 또는 태스크 T330 의 일 구현은 하나 이상의 후속 프레임들에 대한 이러한 디스에이블을 연장하기 위해 행오버를 적용하도록 구성될 수도 있다. 태스크 T230 또는 태스크 T330 의 또 다른 구현은 또한 상술한 바와 같이 활성 스피치로부터의 전이에 이어서 행오버를 적용하도록 구성될 수도 있다 (예컨대, 도 13a 내지 도 16b 참조).
(상술한 예들 중 하나와 같은) 코딩 이득의 측정치의 값 Gc 의 변화와 관련된 스펙트럼 틸트 윤곽의 변화를 설명하는 장치 (A100) 를 구현하는 것이 바람직할 수도 있다. 예컨대, 장치 (A100) 는 예측 이득의 변동 크기에 기초하는 상태를 갖는 업데이트 제어 신호를 생성하도록 구성된 제어 신호 생성기 (60) 를 포함하여 구현될 수도 있다. 도 17a 는 제어 신호 생성기 (60) 의 일 예 (62) 의 블록도를 도시한다. 제어 신호 생성기 (60) 는 또한 도 17b 에 도시된 제어 신호 생성기 (64) 의 예에서와 같이, 행오버를 적용하도록 구현될 수도 있다. 일 특정 예에 있어서, 임계값 T30 의 값은 0.72 dB 이다. 평활기 (134 또는 136) 의 일 구현은 음성 활성도 표시에 있어서의 활성-비활성 전이를 지연시키도록 구성된 회로 대신에, 또는 추가적으로 제어 신호 생성기 (60) 의 일 구현을 포함할 수도 있다. 예컨대, 이러한 구현은, 행오버 로직 회로 (62) 및 제어 신호 생성기 (64) 의 연산들을 조합하는, 도 18 에 도시된 바와 같은 제어 신호 생성기 (66) 를 포함할 수도 있다.
방법 (M100) 의 일 구현은 코딩 이득의 측정치의 값에 있어서의 변화에 따라 SID 송신 표시의 생성을 제어하도록 구성될 수도 있다. 예컨대, 방법 (M100) 의 일 구현은, 코딩 이득 (예컨대, 예측 이득) 의 측정치의 값이 임계량 보다 많이 (대체안으로, 임계량 이상으로) 하나의 비활성 프레임으로부터 다음 비활성 프레임으로 변화하는 경우에 제로의 간격을 출력하도록 구성된 태스크 T400 의 일 구현을 포함할 수도 있다. 추가적으로 또는 대체안으로, 방법 (M100) 의 일 구현은 예측 이득의 변동 크기에 따라 포지티브 SID 송신 표시의 생성을 인에이블 또는 디스에이블하도록 구성된 태스크 T500 의 일 구현을 포함할 수도 있다. 태스크 T500 의 하나의 이러한 구현 T510 은 예측 이득이 임계값 미만으로 (대체안으로, 임계값 이하로) 이전 비활성 프레임으로부터 현재 비활성 프레임으로 변화하지 않는 경우에 포지티브 SID 송신 표시의 생성을 디스에이블하도록 구성된다. 하나 의 이러한 특정 예에 있어서, 임계값은 0.65 dB 이다. 송신 표시의 생성의 제어는 스펙트럼 틸트 윤곽의 업데이트의 제어에 추가적으로 또는 대체안으로서 수행될 수도 있다.
장치 (A100) 의 일 구현은 코딩 이득의 측정치의 값 Gc 의 변화에 따라 SID 송신 표시의 생성을 제어하도록 구성될 수도 있다. 도 19a 는 임계값 T40 과 예측 이득의 변화 크기 사이의 관계에 따라 포지티브 SID 송신 표시를 게이팅하도록 구성된 송신 표시 제어 회로 (70) 의 일 예 (72) 의 블록도를 도시한다. 일 특정 예에 있어서, 임계값 T40 은 0.65 dB 이다. 도 19b 는 송신 표시 제어 회로 (72) 를 포함하는 비교기 (152) 의 일 구현 (156) 의 블록도를 도시한다.
장치 (A100) 의 일 구현은 코딩 이득의 측정치의 값 Gc 의 변화에 기초하여 업데이트 제어 신호 및 SID 송신 표시 모두의 생성을 제어하도록 구성될 수도 있다. 도 20 은 이들 연산들을 수행하도록 구성된 제어 회로 (80) 의 일 예 (82) 의 블록도를 도시한다. 이러한 회로는 비교기 (150) 로부터 SID 송신 표시를 수신하고 평활기 (130) 에 업데이트 제어 신호를 제공하도록 마련될 수도 있다. 이러한 회로는 또한 평활기 (130) 또는 비교기 (150) 내에서 구현될 수도 있다. 예컨대, 평활기 (134 또는 136) 에 있어서, 제어 회로 (82) 는 행오버 로직 회로 (52) 를 대신하고 예측 이득에 따라 비교기 (150) 로부터 SID 송신 표시를 게이팅하도록 마련될 수도 있다. 다른 예에 있어서, 제어 회로 (82) 는 예측 이득에 따라 SID 송신 표시를 게이팅하고 또한 업데이트 제어 신호를 평활기 (130) 에 제 공하도록 비교기 (152) 내에 마련될 수도 있다.
도 21 은 태스크들 T312 및 T330 의 일 구현 T332, 태스크 T500 의 일 구현 T510, 및 태스크 T400 의 일 구현을 포함하는 방법 (M100) 의 일 구현을 수행하기 위해 로직 엘리먼트들의 프로그래머블 어레이 또는 다른 상태 머신 (예컨대, 프로세서) 에 의해 실행될 수도 있는 명령 세트에 대한 소스 코드 리스트의 일 예를 도시한다. 이 예에 있어서, 변수 FRAME_ACTIVE 의 상태는 현재 프레임이 활성인지 또는 비활성인지의 여부를 나타내고, 변수 Y_VALID 의 상태는 이전에 명령 세트가 호출되었는지의 여부 (및 그리하여 변수 y_current 에 저장된 값이 유효한지의 여부) 를 나타내고, 변수 Gc 의 값은 현재 프레임에 대한 예측 이득을 나타낸다.
명령 세트가 Y_VALID 의 값이 FALSE 임을 판단할 경우 (즉, 명령 세트가 제 1 시간동안 실행되고 있는 경우), 변수 Gc_current 는 변수 Gc 의 현재 값으로 초기화된다. Gc 의 현재 값과 이전 값 사이의 절대 차이는 변수 Gc_diff 에 저장되고, 이 차이가 임계값보다 더 큰 경우, 2 개의 프레임들의 행오버가 적용된다. Part 3 에서, Gc_diff 의 값이 임계값 미만인 경우에만 플래그 p 가 설정된다.
본 명세서에 기재된 논리 구현들의 특정 예들은 본 개시물을 설명하기 위해 제시된 것으로 본 개시물을 한정하기 위한 것이 아니며, 당업자는 대안적인 논리 구현들이 이 개시물의 범위내에 포함된다는 것을 쉽게 이해할 것이다. 예컨대, 하나의 콘텍스트에서 모든 입력들이 하이인 경우에만 활성 하이 신호를 작성하도록 마련된 AND 게이트로서 구현된 선택 로직은, 다른 콘텍스트에서 모든 입력들이 로우인 경우에만 활성 로우 신호를 작성하도록 마련된 OR 게이트로서 구현될 수도 있 다. 제 1 값으로부터 제 2 값으로의 카운트다운은 또한 제 2 값으로부터 제 1 값으로의 카운트업으로서 구현될 수도 있고, 그 반대의 경우도 가능하다. 포지티브 또는 TRUE 표시는 일 콘텍스트에서 이진 하이 값을 사용하여 표현될 수도 있고, 다른 콘텍스트에서 이진 로우 값을 사용하여 표현될 수도 있다. 이들 및 다른 구현 동등물들이 이 개시물의 범위 내에 포함된다는 것이 숙고되고 이로써 개시된다.
상술한 예들에 있어서, 스펙트럼 틸트 값들의 시퀀스가 일련의 계속된 비활성 프레임들 각각에 대한 값을 포함한다고 가정된다. 그러나, 또한 방법 (M100) 및 장치 (A100) 는 스펙트럼 틸트 값들의 시퀀스가 일련의 계속된 비활성 프레임들 각각에 대해 일 보다 적은 값을 포함하여 구현될 수도 있다는 것이 숙고된다. 예컨대, 시퀀스는 상기 일련의 계속된 비활성 프레임들 중의 매 다른 프레임 (또는 매 3 번째 프레임 등) 에 대한 값을 포함할 수도 있다. 이러한 시퀀스는 이러한 프레임들로부터 중간 프레임들을 무시하거나 또는 값들을 폐기함으로써, 또는 프레임들의 각 쌍 (삼중항 등) 의 값들을 평균함으로써 획득될 수도 있다. 대체안으로 또는 추가적으로, 이러한 원리들이 코딩 이득의 측정값들의 시퀀스와 같은 다른 시퀀스들에 적용될 수도 있다.
당업자는 정보 및 신호들이 다양한 상이한 기술들 및 기법들 중 임의의 하나를 사용하여 표현될 수도 있다는 것을 이해할 것이다. 예컨대, 상기 설명을 통해 참조될 수도 있는 심볼들, 비트들, 신호들, 정보, 커맨드들, 명령들, 및 데이터는 전압들, 전류들, 전자파들, 자기 필드들 또는 입자들, 광학 필드들 또는 입자 들, 또는 그것의 임의의 조합에 의해 나타내질 수도 있다. 스펙트럼 틸트 값들의 생성된 시퀀스가 유도되는 신호를 "스피치 신호"라 부르지만, 또한 이 신호는 활성 프레임들 동안 음악 또는 다른 논-스피치 정보 내용을 전달할 수도 있다는 것이 숙고되고 이로써 개시된다.
본 명세서에 기재된 장치 (A100) 의 다양한 구현들의 엘리먼트들은 예컨대, 동일한 칩 상에 또는 칩세트 중의 2 개 이상의 칩들에 걸쳐서 상주하는 전자 및/또는 광학 디바이스들로서 제조될 수도 있다. 이러한 디바이스의 일 예는 트랜지스터들 또는 게이트들과 같은 로직 엘리먼트들의 고정형 또는 프로그래머블 어레이이다. 본 명세서에 기재된 장치 (A100) 의 다양한 구현들의 하나 이상의 엘리먼트들은, 마이크로프로세서들, 내장된 프로세서들, IP 코어들, 디지털 신호 프로세서들, FPGA (field-programmable gate array) 들, ASSP (application-specific standard product) 들, 및 ASIC (application-specific integrated circuit) 들과 같은, 로직 엘리먼트들의 하나 이상의 고정형 또는 프로그래머블 어레이들 상에서 실행되도록 마련된 하나 이상의 명령 세트들로서 전체적으로 또는 부분적으로 구현될 수도 있다.
사용되는 장치 (A100) 의 일 구현의 하나 이상의 엘리먼트들은 장치가 내장되는 디바이스 또는 시스템의 다른 연산에 관한 태스크와 같은, 장치의 연산에 직접 관련되지 않은 다른 명령 세트를 실행하거나 또는 태스크들을 수행하는 것이 가능하다. 또한, 장치 (A100) 의 일 구현의 하나 이상의 엘리먼트들이 공통의 구조를 가지는 것이 가능하다 (예컨대, 상이한 시간에 상이한 엘리먼트들에 대응되는 코드의 부분들을 실행하기 위해 사용되는 프로세서, 상이한 시간에 상이한 엘리먼트들에 대응되는 태스크들을 수행하기 위해 실행되는 명령 세트, 또는 상이한 시간에 상이한 엘리먼트들에 대한 동작들을 수행하는 전자 및/또는 광학 디바이스들의 배치). 하나의 이러한 예에 있어서, 평활기 (130), 계산기 (140) 및 비교기 (150) 는 동일한 프로세서 상에서 실행하도록 마련된 명령 세트로서 구현된다. 다른 이러한 예에 있어서, 시퀀스 생성기 (120) 또는 (장치 (A100) 를 포함할 수도 있는) 스피치 인코더조차도 그 프로세서 상에서 실행하도록 마련된 하나 이상의 명령 세트로서 구현된다.
설명된 구성물들의 상기 표현들은 당업자로 하여금 본 명세서에 기재된 방법들 및 다른 구조들을 제작 또는 사용할 수 있도록 하기 위해 제공된다. 본 명세서에 도시되고 설명된 플로우차트들 및 다른 구조들은 단지 예시들이며, 이들 구조들의 다른 변경물들이 또한 본 개시물의 범위 내에 있다. 이들 구성물들에 대한 다양한 변형들이 가능하며, 본 명세서에 제공된 일반적인 원리들은 다른 구성물들에도 역시 적용될 수도 있다.
본 명세서에 설명된 구성물들은 하드웨어 회로로서, 특정 용도의 집적회로로 제조된 회로 구성물로서, 또는 비휘발성 저장장치에 로딩된 펌웨어 프로그램 또는 머신-판독가능 코드로서 데이터 저장 매체로부터 또는 데이터 저장 매체로 로딩된 소프트웨어 프로그램으로서 부분적으로 또는 전체적으로 구현될 수도 있고, 이러한 코드는 마이크로프로세서 또는 다른 디지털 신호 프로세싱 유닛과 같은 로직 엘리먼트들의 어레이에 의해 실행가능한 명령들이다. 데이터 저장 매체는 (제한 없 이 동적 또는 정적 RAM (random-access memory), ROM (read-only memory) 반도체 메모리, 및/또는 플래시 RAM 을 포함할 수도 있는), 또는 강유전성, 자기 저항, 오브신스키 효과의, 중합체의, 또는 상변화 메모리와 같은 저장 엘리먼트들의 어레이; 또는 자기 또는 광학 디스크와 같은 디스크 매체일 수도 있다. 용어 "소프트웨어" 란, 소스 코드, 어셈블리 언어 코드, 머신 코드, 이진 코드, 펌웨어, 매크로코드, 마이크로코드, 로직 엘리먼트들의 어레이에 의해 실행가능한 명령들의 임의의 하나 이상의 세트들 또는 시퀀스들, 및 이러한 예들의 임의의 조합을 포함하는 것으로 이해해야만 한다.
본 명세서에 기재된 방법들은 또한 로직 엘리먼트들의 어레이 (예컨대, 프로세서, 마이크로프로세서, 마이크로제어기 또는 다른 유한 상태 머신) 를 포함하는 머신에 의해 실행가능한 및/또는 판독가능한 명령들의 하나 이상의 세트들로서 (예컨대, 상기 열거된 바와 같은 하나 이상의 데이터 저장 매체에) 명백하게 구현될 수도 있다. 따라서, 본 개시물은 상기 나타낸 구성물들에 한정되도록 의도되지 않으며, 오히려 원 개시물의 일부를 형성하는, 출원된 첨부한 청구범위들을 포함하는, 본 명세서에서 임의의 방식으로 개시된 새로운 특징들 및 원리들과 일치하는 가장 넓은 범위에 부합되도록 의도되었다.
당업자는 또한 본 명세서에 개시된 구성물들과 관련하여 기재된 다양한 예시적인 논리 블록들, 모듈들, 회로들 및 연산들은 전자 하드웨어, 컴퓨터 소프트웨어 또는 그 둘의 조합으로서 구현될 수도 있다는 것을 이해할 것이다. 이러한 논리 블록들, 모듈들, 회로들 및 연산들은 범용 프로세서, 디지털 신호 프로세서 (DSP), ASIC, FPGA, 또는 기타 프로그래머블 로직 디바이스, 별도의 게이트 또는 트랜지스터 로직, 별도의 하드웨어 컴포넌트들, 또는 본 명세서에 설명된 기능을 수행하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 다른 방법으로, 그 프로세서는 임의의 종래 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 조합, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 조합된 하나 이상의 마이크로프로세서들 또는 임의의 기타 다른 구성물로 구현될 수도 있다.
본 명세서에 개시된 방법들 또는 알고리즘들의 태스크들은 하드웨어, 프로세서에 의해 실행되는 소프트웨어 모듈, 또는 그 둘의 조합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되어 있어서, 그 프로세서는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 ASIC 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트들로서 상주할 수도 있다.

Claims (46)

  1. 스피치 신호를 처리하는 방법으로서:
    상기 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계로서, 상기 스펙트럼 틸트 값들의 시퀀스는 반사 계수들의 시퀀스를 포함하고, 상기 스펙트럼 틸트 값들의 각각은 상기 스피치 신호의 대응하는 비활성 프레임의 적어도 하나의 반사 계수에 기초하며, 상기 적어도 하나의 반사 계수는 상기 대응하는 비활성 프레임의 제 1 반사 계수 또는 상기 대응하는 비활성 프레임의 제 2 반사 계수 중 적어도 하나를 포함하는, 스펙트럼 틸트 값들의 시퀀스 생성 단계;
    상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 스펙트럼 틸트 값들 사이의 변화를 계산하는 단계; 및
    상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 비활성 프레임에 대한 디스크립션 (description) 을 송신할지의 여부를 결정하는 단계를 포함하고,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계는 상기 계산된 변화에 기초하는, 스피치 신호를 처리하는 방법.
  2. 제 1 항에 있어서,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계는 상기 스펙트럼 틸트 값들의 상기 시퀀스를 생성하기 위해 스펙트럼 틸트 값들의 다른 시퀀스를 평활화하는 단계를 포함하고,
    상기 다른 시퀀스의 상기 스펙트럼 틸트 값들 각각은 상기 복수의 비활성 프레임들 중 대응 비활성 프레임의 스펙트럼 틸트를 나타내는, 스피치 신호를 처리하는 방법.
  3. 삭제
  4. 제 1 항에 있어서,
    복수의 상기 스펙트럼 틸트 값들 각각은 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 다른 스펙트럼 틸트 값들 중 적어도 하나에 기초하는, 스피치 신호를 처리하는 방법.
  5. 제 1 항에 있어서,
    복수의 상기 스펙트럼 틸트 값들 각각은 (A) 상기 복수의 비활성 프레임들 중 대응 비활성 프레임의 스펙트럼 틸트 및 (B) 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 다른 스펙트럼 틸트 값들 중 적어도 하나에 기초하는, 스피치 신호를 처리하는 방법.
  6. 제 1 항에 있어서,
    상기 계산된 변화는 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 계속된 값들 사이의 차이에 기초하는, 스피치 신호를 처리하는 방법.
  7. 제 1 항에 있어서,
    상기 변화를 계산하는 단계는 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 인접하는 값들 사이의 간격을 계산하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  8. 제 1 항에 있어서,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계는 상기 계산된 변화와 임계값을 비교하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  9. 제 1 항에 있어서,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계의 결과는 (A) 상기 계산된 변화의 크기와 (B) 임계값 사이의 관계에 기초하는, 스피치 신호를 처리하는 방법.
  10. 제 1 항에 있어서,
    상기 스피치 신호를 처리하는 방법은,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계의 결과가 상기 비활성 프레임에 대한 디스크립션을 송신하는 결정인 경우,
    스펙트럼 엔빌로프 (envelope) 디스크립션 및 에너지 엔빌로프 디스크립션 중 적어도 하나를 포함하는 침묵 디스크립션 (silence description) 을 송신하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  11. 제 10 항에 있어서,
    상기 스피치 신호를 처리하는 방법은, (A) 상기 복수의 비활성 프레임들 각각의 스펙트럼 엔빌로프 디스크립션들 및 (B) 상기 복수의 비활성 프레임들 각각의 에너지 엔빌로프 디스크립션들 중 적어도 하나에 기초하여, 상기 침묵 디스크립션을 계산하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  12. 제 1 항에 있어서,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계는, (A) 상기 비활성 프레임의 스펙트럼 엔빌로프를 기술하는 벡터, (B) 상기 비활성 프레임의 잔여 에너지, (C) 비활성 프레임에 대한 디스크립션의 가장 최근의 송신에 대한 시간 간격, (D) 가장 최근의 활성 프레임에 대한 시간 간격, (E) 상기 비활성 프레임의 에너지 엔빌로프의 디스크립션, (F) 상기 비활성 프레임의 평균 절대값, 및 (G) 상기 비활성 프레임의 에너지값 중 적어도 하나에 기초하는, 스피치 신호를 처리하는 방법.
  13. 제 12 항에 있어서,
    상기 스피치 신호를 처리하는 방법은,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계의 결과가 상기 비활성 프레임에 대한 디스크립션을 송신하는 결정인 경우,
    스펙트럼 엔빌로프 디스크립션 및 에너지 엔빌로프 디스크립션 중 적어도 하나를 포함하는 침묵 디스크립션을 송신하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  14. 제 1 항에 있어서,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계는, 코딩 이득의 측정치의 변화가 임계값을 초과하는 것을 검출하는데 응답하여, 상기 비활성 프레임에 대한 디스크립션을 송신하지 않기로 결정하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  15. 제 14 항에 있어서,
    상기 코딩 이득의 측정치의 각 값은 상기 스피치 신호의 대응 비활성 프레임의 복수의 반사 계수들의 값들에 기초하는, 스피치 신호를 처리하는 방법.
  16. 제 1 항에 있어서,
    상기 스피치 신호를 처리하는 방법은,
    상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 복수의 상기 스펙트럼 틸트 값들 각각에 대해, 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 스펙트럼 틸트 값과 적어도 하나의 다른 스펙트럼 틸트 값 사이의 변화를 계산하는 단계를 포함하고,
    상기 스피치 신호를 처리하는 방법은,
    상기 스피치 신호의 다른 복수의 비활성 프레임들 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계를 포함하며,
    상기 다른 복수의 비활성 프레임들 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계의 결과는 상기 계산된 변화들 중 적어도 하나에 기초하는, 스피치 신호를 처리하는 방법.
  17. 제 16 항에 있어서,
    상기 다른 복수의 비활성 프레임들의 적어도 일부의 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계의 결과는 상기 비활성 프레임에 대한 디스크립션을 송신하지 않는 결정인, 스피치 신호를 처리하는 방법.
  18. 제 16 항에 있어서,
    상기 다른 복수의 비활성 프레임들 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계는, 코딩 이득의 측정치의 변화가 임계값을 초과하는 것을 검출하는데 응답하여, 상기 비활성 프레임에 대한 디스크립션을 송신하지 않기로 결정하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  19. 제 18 항에 있어서,
    상기 다른 복수의 비활성 프레임들 각각에 대해, 상기 코딩 이득의 측정치의 변화는 (A) 상기 비활성 프레임 보다 선행하는 상기 스피치 신호의 제 1 비활성 프레임에 대한 코딩 이득의 측정치에 대한 값 및 (B) 상기 비활성 프레임 보다 선행하며 상기 제 1 비활성 프레임과는 상이한 상기 스피치 신호의 제 2 비활성 프레임에 대한 코딩 이득의 측정치에 대한 값에 기초하는, 스피치 신호를 처리하는 방법.
  20. 제 1 항에 있어서,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계는, 상기 복수의 비활성 프레임들 중 적어도 일부의 각각에 대해, 상기 스피치 신호의 상기 비활성 프레임과 선행 활성 프레임 사이의 시간 간격에 따라 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 대응 스펙트럼 틸트 값을 생성하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  21. 제 20 항에 있어서,
    상기 스펙트럼 틸트 값들의 상기 시퀀스 중 대응 스펙트럼 틸트 값을 생성하는 단계는, 상기 스피치 신호의 상기 비활성 프레임과 선행 활성 프레임 사이의 시간 간격이 임계값 미만일 경우에 상기 스펙트럼 틸트 값을 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 이전 스펙트럼 틸트 값으로 설정하는 단계를 포함하는, 스피 치 신호를 처리하는 방법.
  22. 제 1 항에 있어서,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계는, 상기 복수의 비활성 프레임들 중 적어도 일부의 각각에 대해, 상기 비활성 프레임에 대한 코딩 이득의 측정치에 따라 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 대응 스펙트럼 틸트 값을 계산하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  23. 제 1 항에 있어서,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계는, 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 하나의 스펙트럼 틸트 값 각각에 대해, 코딩 이득의 측정치의 변화가 임계값을 초과하는 것을 검출하는데 응답하여 상기 스펙트럼 틸트 값을 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 이전 스펙트럼 틸트 값으로 설정하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
  24. 적어도 하나의 컴퓨터로 하여금 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 하는 코드로서, 상기 스펙트럼 틸트 값들의 시퀀스는 반사 계수들의 시퀀스를 포함하고, 상기 스펙트럼 틸트 값들의 각각은 상기 스피치 신호의 대응하는 비활성 프레임의 적어도 하나의 반사 계수에 기초하며, 상기 적어도 하나의 반사 계수는 상기 대응하는 비활성 프레임의 제 1 반사 계수 또는 상기 대응하는 비활성 프레임의 제 2 반사 계수 중 적어도 하나를 포함하는, 스펙트럼 틸트 값들의 시퀀스 생성 코드;
    적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하도록 하는 코드; 및
    적어도 하나의 컴퓨터로 하여금 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션 (description) 을 송신할지의 여부를 결정하도록 하는 코드를 포함하는, 컴퓨터-판독가능 매체.
  25. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 복수의 상기 스펙트럼 틸트 값들 각각을 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 다른 스펙트럼 틸트 값들 중 적어도 하나에 기초하여 생성하도록 구성된, 컴퓨터-판독가능 매체.
  26. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 계속된 값들 사이의 차이에 기초하여 상기 변화를 계산하도록 구성된, 컴퓨터-판독가능 매체.
  27. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 (A) 상기 계산된 변화의 크기와 (B) 임계값 사이의 관계에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 구성된, 컴퓨터-판독가능 매체.
  28. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 임계값을 초과하는 코딩 이득의 측정치의 변화에 응답하여, 상기 비활성 프레임에 대한 디스크립션을 송신하지 않기로 결정하도록 하는 코드를 포함하는, 컴퓨터-판독가능 매체.
  29. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 복수의 상기 스펙트럼 틸트 값들 각각에 대해, 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 스펙트럼 틸트 값과 적어도 하나의 다른 스펙트럼 틸트 값 사이의 변화를 계산하도록 구성되고,
    상기 적어도 하나의 컴퓨터로 하여금 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 하는 코드는, 상기 스피치 신호의 다른 복수의 비활성 프레임들 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 구성되며,
    상기 적어도 하나의 컴퓨터로 하여금 상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 하는 코드는, 상기 다른 복수의 비활성 프레임들 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부의 결정이 상기 계산된 변화들 중 적어도 하나에 기초하도록 구성된, 컴퓨터-판독가능 매체.
  30. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 상기 복수의 비활성 프레임들 중 적어도 일부의 각각에 대해, 상기 스피치 신호의 상기 비활성 프레임과 선행 활성 프레임 사이의 시간 간격에 따라 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 대응 스펙트럼 틸트 값을 생성하도록 하는 코드를 포함하는, 컴퓨터-판독가능 매체.
  31. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 하나의 스펙트럼 틸트 값 각각에 대해, 코딩 이득의 측정치의 변화가 임계값을 초과하는 것을 검출하는데 응답하여 상기 스펙트럼 틸트 값을 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 이전 스펙트럼 틸트 값으로 설정하도록 구성된, 컴퓨터-판독가능 매체.
  32. 제 24 항에 있어서,
    상기 적어도 하나의 컴퓨터로 하여금 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 하는 코드는, 상기 적어도 하나의 컴퓨터로 하여금 상기 스펙트럼 틸트 값들의 상기 시퀀스를 생성하기 위해 스펙트럼 틸트 값들의 다른 시퀀스를 평활화하도록 구성되고,
    상기 다른 시퀀스의 상기 스펙트럼 틸트 값들 각각은 상기 복수의 비활성 프레임들 중 대응 비활성 프레임의 스펙트럼 틸트를 나타내는, 컴퓨터-판독가능 매체.
  33. 스피치 신호를 처리하는 장치로서:
    상기 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하도록 구성된 시퀀스 생성기로서, 상기 스펙트럼 틸트 값들의 시퀀스는 반사 계수들의 시퀀스를 포함하고, 상기 스펙트럼 틸트 값들의 각각은 상기 스피치 신호의 대응하는 비활성 프레임의 적어도 하나의 반사 계수에 기초하며, 상기 적어도 하나의 반사 계수는 상기 대응하는 비활성 프레임의 제 1 반사 계수 또는 상기 대응하는 비활성 프레임의 제 2 반사 계수 중 적어도 하나를 포함하는, 상기 시퀀스 생성기;
    상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하도록 구성된 계산기; 및
    상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션 (description) 을 송신할지의 여부를 결정하도록 구성된 비교기를 포함하는, 스피치 신호를 처리하는 장치.
  34. 제 33 항에 있어서,
    상기 비교기는 (A) 상기 계산된 변화의 크기와 (B) 임계값 사이의 관계에 기초하여 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 구성된, 스피치 신호를 처리하는 장치.
  35. 제 33 항에 있어서,
    상기 스피치 신호를 처리하는 장치는 상기 시퀀스 생성기, 상기 계산기 및 상기 비교기를 구비하는 무선 통신용 디바이스를 포함하고,
    상기 무선 통신용 디바이스는 상기 비교기에 의한 상기 비활성 프레임에 대 한 디스크립션을 송신하는 결정에 응답하여, 스펙트럼 엔빌로프 디스크립션 및 에너지 엔빌로프 디스크립션 중 적어도 하나를 포함하는 침묵 디스크립션을 송신하도록 구성된, 스피치 신호를 처리하는 장치.
  36. 제 33 항에 있어서,
    상기 비교기는 임계값을 초과하는 코딩 이득의 측정치의 변화에 응답하여, 상기 비활성 프레임에 대한 디스크립션을 송신하지 않기로 결정하도록 구성된, 스피치 신호를 처리하는 장치.
  37. 제 33 항에 있어서,
    상기 계산기는 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 복수의 상기 스펙트럼 틸트 값들 각각에 대해, 상기 스펙트럼 틸트 값들의 상기 시퀀스에서의 스펙트럼 틸트 값과 적어도 하나의 다른 스펙트럼 틸트 값 사이의 변화를 계산하도록 구성되고,
    상기 비교기는 상기 스피치 신호의 다른 복수의 비활성 프레임들 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하도록 구성되며,
    상기 비교기는 상기 다른 복수의 비활성 프레임들 각각에 대해, 상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부의 결정이 상기 계산된 변화들 중 적어도 하나에 기초하도록 구성된, 스피치 신호를 처리하는 장치.
  38. 제 33 항에 있어서,
    상기 시퀀스 생성기는 상기 복수의 비활성 프레임들 중 적어도 일부의 각각에 대해, 상기 스피치 신호의 상기 비활성 프레임과 선행 활성 프레임 사이의 시간 간격에 따라 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 대응 스펙트럼 틸트 값을 생성하도록 구성된, 스피치 신호를 처리하는 장치.
  39. 제 33 항에 있어서,
    상기 시퀀스 생성기는 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 하나의 스펙트럼 틸트 값 각각에 대해, 코딩 이득의 측정치의 변화가 임계값을 초과하는 것을 검출하는데 응답하여 상기 스펙트럼 틸트 값을 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 이전 스펙트럼 틸트 값으로 설정하도록 구성된, 스피치 신호를 처리하는 장치.
  40. 제 33 항에 있어서,
    상기 시퀀스 생성기는 스펙트럼 틸트 값들의 다른 시퀀스를 평활화함으로써 상기 스펙트럼 틸트 값들의 상기 시퀀스를 생성하도록 구성되고,
    상기 다른 시퀀스의 상기 스펙트럼 틸트 값들 각각은 상기 복수의 비활성 프레임들 중 대응 비활성 프레임의 스펙트럼 틸트를 나타내는, 스피치 신호를 처리하는 장치.
  41. 스피치 신호를 처리하는 장치로서:
    상기 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하는 수단으로서, 상기 스펙트럼 틸트 값들의 시퀀스는 반사 계수들의 시퀀스를 포함하고, 상기 스펙트럼 틸트 값들의 각각은 상기 스피치 신호의 대응하는 비활성 프레임의 적어도 하나의 반사 계수에 기초하며, 상기 적어도 하나의 반사 계수는 상기 대응하는 비활성 프레임의 제 1 반사 계수 또는 상기 대응하는 비활성 프레임의 제 2 반사 계수 중 적어도 하나를 포함하는, 상기 스펙트럼 틸트 값들의 시퀀스 생성 수단;
    상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하는 수단; 및
    상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 계산된 변화에 기초하여 상기 비활성 프레임에 대한 디스크립션 (description) 을 송신할지의 여부를 결정하는 수단을 포함하는, 스피치 신호를 처리하는 장치.
  42. 제 41 항에 있어서,
    상기 스피치 신호를 처리하는 장치는, 상기 결정하는 수단에 의한 상기 비활성 프레임에 대한 디스크립션을 송신하는 결정에 응답하여, 스펙트럼 엔빌로프 디스크립션 및 에너지 엔빌로프 디스크립션 중 적어도 하나를 포함하는 침묵 디스크립션을 송신하는 수단을 포함하는, 스피치 신호를 처리하는 장치.
  43. 제 41 항에 있어서,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 수단은, 상기 복수의 비활성 프레임들 중 적어도 일부의 각각에 대해, 상기 스피치 신호의 상기 비활성 프레임과 선행 활성 프레임 사이의 시간 간격에 따라 상기 스펙트럼 틸트 값들의 상기 시 퀀스 중 대응 스펙트럼 틸트 값을 생성하도록 구성된, 스피치 신호를 처리하는 장치.
  44. 제 41 항에 있어서,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 수단은, 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 하나의 스펙트럼 틸트 값 각각에 대해, 코딩 이득의 측정치의 변화가 임계값을 초과하는 것을 검출하는데 응답하여 상기 스펙트럼 틸트 값을 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 이전 스펙트럼 틸트 값으로 설정하도록 구성된, 스피치 신호를 처리하는 장치.
  45. 제 41 항에 있어서,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 수단은, 스펙트럼 틸트 값들의 다른 시퀀스를 평활화함으로써 상기 스펙트럼 틸트 값들의 상기 시퀀스를 생성하도록 구성되고,
    상기 다른 시퀀스의 상기 스펙트럼 틸트 값들 각각은 상기 복수의 비활성 프레임들 중 대응 비활성 프레임의 스펙트럼 틸트를 나타내는, 스피치 신호를 처리하는 장치.
  46. 스피치 신호를 처리하는 방법으로서:
    상기 스피치 신호의 복수의 비활성 프레임들에 기초하는 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계로서, 상기 스펙트럼 틸트 값들의 시퀀스는 반사 계수들의 시퀀스를 포함하고, 상기 스펙트럼 틸트 값들의 각각은 상기 스피치 신호의 대응하는 비활성 프레임의 적어도 하나의 반사 계수에 기초하며, 상기 적어도 하나의 반사 계수는 상기 대응하는 비활성 프레임의 제 1 반사 계수 또는 상기 대응하는 비활성 프레임의 제 2 반사 계수 중 적어도 하나를 포함하는, 상기 스펙트럼 틸트 값들의 시퀀스 생성 단계;
    상기 스펙트럼 틸트 값들의 상기 시퀀스 중 적어도 2 개의 값들 사이의 변화를 계산하는 단계; 및
    상기 복수의 비활성 프레임들 중의 일 비활성 프레임에 대해, 상기 비활성 프레임에 대한 디스크립션 (description) 을 송신할지의 여부를 결정하는 단계를 포함하고,
    상기 비활성 프레임에 대한 디스크립션을 송신할지의 여부를 결정하는 단계는 상기 계산된 변화에 기초하며,
    상기 스펙트럼 틸트 값들의 시퀀스를 생성하는 단계는, 상기 복수의 비활성 프레임들 중 적어도 일부에 대해, 상기 스피치 신호의 상기 비활성 프레임과 선행 활성 프레임 사이의 시간 간격에 따라 상기 스펙트럼 틸트 값들의 상기 시퀀스 중 대응 스펙트럼 틸트 값을 생성하는 단계를 포함하는, 스피치 신호를 처리하는 방법.
KR1020097001886A 2006-07-31 2007-07-31 신호 변화 검출을 위한 시스템, 방법 및 장치 KR101060533B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US83468906P 2006-07-31 2006-07-31
US60/834,689 2006-07-31
US11/830,548 2007-07-30
US11/830,548 US8725499B2 (en) 2006-07-31 2007-07-30 Systems, methods, and apparatus for signal change detection
PCT/US2007/074895 WO2008016942A2 (en) 2006-07-31 2007-07-31 Systems, methods, and apparatus for signal change detection

Publications (2)

Publication Number Publication Date
KR20090033461A KR20090033461A (ko) 2009-04-03
KR101060533B1 true KR101060533B1 (ko) 2011-08-30

Family

ID=38812761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097001886A KR101060533B1 (ko) 2006-07-31 2007-07-31 신호 변화 검출을 위한 시스템, 방법 및 장치

Country Status (10)

Country Link
US (1) US8725499B2 (ko)
EP (1) EP2047457B1 (ko)
JP (1) JP4995913B2 (ko)
KR (1) KR101060533B1 (ko)
BR (1) BRPI0715063B1 (ko)
CA (1) CA2657420C (ko)
ES (1) ES2733099T3 (ko)
HU (1) HUE042959T2 (ko)
RU (1) RU2417456C2 (ko)
WO (1) WO2008016942A2 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101565919B1 (ko) * 2006-11-17 2015-11-05 삼성전자주식회사 고주파수 신호 부호화 및 복호화 방법 및 장치
CN101246688B (zh) * 2007-02-14 2011-01-12 华为技术有限公司 一种对背景噪声信号进行编解码的方法、系统和装置
US8032359B2 (en) * 2007-02-14 2011-10-04 Mindspeed Technologies, Inc. Embedded silence and background noise compression
CN101617363B (zh) * 2007-02-21 2012-09-05 艾利森电话股份有限公司 双端话音检测器
CN100555414C (zh) * 2007-11-02 2009-10-28 华为技术有限公司 一种dtx判决方法和装置
KR101235830B1 (ko) * 2007-12-06 2013-02-21 한국전자통신연구원 음성코덱의 품질향상장치 및 그 방법
KR101441897B1 (ko) * 2008-01-31 2014-09-23 삼성전자주식회사 잔차 신호 부호화 방법 및 장치와 잔차 신호 복호화 방법및 장치
DE102008009719A1 (de) * 2008-02-19 2009-08-20 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Mittel zur Enkodierung von Hintergrundrauschinformationen
DE102008009718A1 (de) * 2008-02-19 2009-08-20 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Mittel zur Enkodierung von Hintergrundrauschinformationen
US8463603B2 (en) * 2008-09-06 2013-06-11 Huawei Technologies Co., Ltd. Spectral envelope coding of energy attack signal
EP2347619B1 (en) * 2008-10-16 2013-04-03 Telefonaktiebolaget L M Ericsson (PUBL) Apparatus and method of controlling sporadic transmissions of silence insertion descriptor (sid)
JP5293817B2 (ja) * 2009-06-19 2013-09-18 富士通株式会社 音声信号処理装置及び音声信号処理方法
JP5870476B2 (ja) * 2010-08-04 2016-03-01 富士通株式会社 雑音推定装置、雑音推定方法および雑音推定プログラム
CN103187065B (zh) 2011-12-30 2015-12-16 华为技术有限公司 音频数据的处理方法、装置和系统
CN103325386B (zh) 2012-03-23 2016-12-21 杜比实验室特许公司 用于信号传输控制的方法和系统
JP6082126B2 (ja) 2013-01-29 2017-02-15 フラウンホーファーゲゼルシャフト ツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. 音声信号を合成するための装置及び方法、デコーダ、エンコーダ、システム及びコンピュータプログラム
EP3121813B1 (en) * 2013-01-29 2020-03-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Noise filling without side information for celp-like coders
US9741350B2 (en) 2013-02-08 2017-08-22 Qualcomm Incorporated Systems and methods of performing gain control
US9711156B2 (en) * 2013-02-08 2017-07-18 Qualcomm Incorporated Systems and methods of performing filtering for gain determination
US9179404B2 (en) 2013-03-25 2015-11-03 Qualcomm Incorporated Method and apparatus for UE-only discontinuous-TX smart blanking
US9263061B2 (en) * 2013-05-21 2016-02-16 Google Inc. Detection of chopped speech
CN106169297B (zh) 2013-05-30 2019-04-19 华为技术有限公司 信号编码方法及设备
US9570093B2 (en) * 2013-09-09 2017-02-14 Huawei Technologies Co., Ltd. Unvoiced/voiced decision for speech processing
US9479272B2 (en) 2014-05-14 2016-10-25 Samsung Electronics Co., Ltd Method and apparatus for processing a transmission signal in communication system
CN106533391A (zh) * 2016-11-16 2017-03-22 上海艾为电子技术股份有限公司 无限冲激响应滤波器及其控制方法
EP3382703A1 (en) 2017-03-31 2018-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and methods for processing an audio signal
BR112020026793A2 (pt) 2018-06-28 2021-03-30 Telefonaktiebolaget Lm Ericsson (Publ) Determinação de parâmetro de ruído de conforto adaptativo
JP7130878B2 (ja) * 2019-01-13 2022-09-05 華為技術有限公司 高分解能オーディオコーディング
CN117436712B (zh) * 2023-12-21 2024-04-12 山东铁鹰建设工程有限公司 一种施工挂篮运行风险实时监测方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999044191A1 (en) * 1998-02-27 1999-09-02 At & T Corp. System and method for noise threshold adaptation for voice activity detection in nonstationary noise environments

Family Cites Families (27)

* 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
US5341456A (en) * 1992-12-02 1994-08-23 Qualcomm Incorporated Method for determining speech encoding rate in a variable rate vocoder
US5704003A (en) 1995-09-19 1997-12-30 Lucent Technologies Inc. RCELP coder
JPH09152894A (ja) * 1995-11-30 1997-06-10 Denso Corp 有音無音判別器
US5960389A (en) * 1996-11-15 1999-09-28 Nokia Mobile Phones Limited Methods for generating comfort noise during discontinuous transmission
WO1999010719A1 (en) * 1997-08-29 1999-03-04 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
US6415252B1 (en) * 1998-05-28 2002-07-02 Motorola, Inc. Method and apparatus for coding and decoding speech
US7072832B1 (en) * 1998-08-24 2006-07-04 Mindspeed Technologies, Inc. System for speech encoding having an adaptive encoding arrangement
JP2002530706A (ja) 1998-11-13 2002-09-17 クゥアルコム・インコーポレイテッド 閉ループ可変速度マルチモード予測スピーチコーダ
US6691084B2 (en) 1998-12-21 2004-02-10 Qualcomm Incorporated Multiple mode variable rate speech coding
JP4438127B2 (ja) 1999-06-18 2010-03-24 ソニー株式会社 音声符号化装置及び方法、音声復号装置及び方法、並びに記録媒体
US6330532B1 (en) 1999-07-19 2001-12-11 Qualcomm Incorporated Method and apparatus for maintaining a target bit rate in a speech coder
US6687668B2 (en) * 1999-12-31 2004-02-03 C & S Technology Co., Ltd. Method for improvement of G.723.1 processing time and speech quality and for reduction of bit rate in CELP vocoder and CELP vococer using the same
WO2001052241A1 (en) * 2000-01-11 2001-07-19 Matsushita Electric Industrial Co., Ltd. Multi-mode voice encoding device and decoding device
US6889186B1 (en) * 2000-06-01 2005-05-03 Avaya Technology Corp. Method and apparatus for improving the intelligibility of digitally compressed speech
US6807525B1 (en) 2000-10-31 2004-10-19 Telogy Networks, Inc. SID frame detection with human auditory perception compensation
US7013269B1 (en) * 2001-02-13 2006-03-14 Hughes Electronics Corporation Voicing measure for a speech CODEC system
US20030028386A1 (en) * 2001-04-02 2003-02-06 Zinser Richard L. Compressed domain universal transcoder
US6879955B2 (en) 2001-06-29 2005-04-12 Microsoft Corporation Signal modification based on continuous time warping for low bit rate CELP coding
BR0315179A (pt) 2002-10-11 2005-08-23 Nokia Corp Método e dispositivo para codificar um sinal de fala amostrado compreendendo quadros de fala
US20040098255A1 (en) 2002-11-14 2004-05-20 France Telecom Generalized analysis-by-synthesis speech coding method, and coder implementing such method
KR20050049103A (ko) 2003-11-21 2005-05-25 삼성전자주식회사 포만트 대역을 이용한 다이얼로그 인핸싱 방법 및 장치
US8102872B2 (en) 2005-02-01 2012-01-24 Qualcomm Incorporated Method for discontinuous transmission and accurate reproduction of background noise information
US7231348B1 (en) * 2005-03-24 2007-06-12 Mindspeed Technologies, Inc. Tone detection algorithm for a voice activity detector
CA2603255C (en) 2005-04-01 2015-06-23 Qualcomm Incorporated Systems, methods, and apparatus for wideband speech coding
EP1875464B9 (en) 2005-04-22 2020-10-28 Qualcomm Incorporated Method, storage medium and apparatus for gain factor attenuation
US8032369B2 (en) 2006-01-20 2011-10-04 Qualcomm Incorporated Arbitrary average data rates for variable rate coders

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999044191A1 (en) * 1998-02-27 1999-09-02 At & T Corp. System and method for noise threshold adaptation for voice activity detection in nonstationary noise environments

Also Published As

Publication number Publication date
CA2657420A1 (en) 2008-02-07
US8725499B2 (en) 2014-05-13
US20080027716A1 (en) 2008-01-31
WO2008016942A3 (en) 2008-04-10
RU2009107181A (ru) 2010-09-10
HUE042959T2 (hu) 2019-07-29
ES2733099T3 (es) 2019-11-27
KR20090033461A (ko) 2009-04-03
JP4995913B2 (ja) 2012-08-08
EP2047457B1 (en) 2019-03-27
BRPI0715063A2 (pt) 2013-05-28
JP2009545779A (ja) 2009-12-24
EP2047457A2 (en) 2009-04-15
CA2657420C (en) 2015-12-15
RU2417456C2 (ru) 2011-04-27
BRPI0715063B1 (pt) 2019-12-24
WO2008016942A2 (en) 2008-02-07

Similar Documents

Publication Publication Date Title
KR101060533B1 (ko) 신호 변화 검출을 위한 시스템, 방법 및 장치
JP5265553B2 (ja) フレーム消去回復のシステム、方法、および装置
US9653088B2 (en) Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
KR100986957B1 (ko) 토널 컴포넌트들을 감지하는 시스템들, 방법들, 및 장치들
KR101034453B1 (ko) 비활성 프레임들의 광대역 인코딩 및 디코딩을 위한 시스템, 방법, 및 장치
US8990074B2 (en) Noise-robust speech coding mode classification
TWI467979B (zh) 用於信號改變偵測之系統、方法及裝置
RU2636685C2 (ru) Решение относительно наличия/отсутствия вокализации для обработки речи

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 9