KR20020081352A - 유사주기 신호의 위상을 추적하는 방법 및 장치 - Google Patents

유사주기 신호의 위상을 추적하는 방법 및 장치 Download PDF

Info

Publication number
KR20020081352A
KR20020081352A KR1020027011075A KR20027011075A KR20020081352A KR 20020081352 A KR20020081352 A KR 20020081352A KR 1020027011075 A KR1020027011075 A KR 1020027011075A KR 20027011075 A KR20027011075 A KR 20027011075A KR 20020081352 A KR20020081352 A KR 20020081352A
Authority
KR
South Korea
Prior art keywords
phase
signal
previous frame
periodic
frames
Prior art date
Application number
KR1020027011075A
Other languages
English (en)
Other versions
KR100711040B1 (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 KR20020081352A publication Critical patent/KR20020081352A/ko
Application granted granted Critical
Publication of KR100711040B1 publication Critical patent/KR100711040B1/ko

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • 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

Abstract

유사 주기 신호의 위상을 추적하는 방법으로서, 그 신호가 주기적인 프레임에 대해서 신호의 위상을 추정하는 단계; 그 추정된 위상의 품질을 폐쇄 루프 성능 척도로 모니터하는 단계; 및 그 신호가 주기적이고 그 추정된 위상의 품질이 소정의 문턱값 아래로 떨어지는 프레임들에 대해서 그 신호의 위상을 측정하는 단계를 포함한다. 위상을 추정할 때, 그 이전의 프레임이 주기적이었을 경우 그 이전 프레임의 추정된 최종 위상값과 동일하게 초기 위상값을 세팅한다. 그 이전 프레임이 비주기적이었을 경우나, 그 이전 프레임이 주기적이었고 그 이전 프레임의 추정된 위상 품질이 그 소정의 문턱값 아래로 떨어졌을 경우에는, 그 초기 위상을 그 이전 프레임의 측정된 위상값과 동일하게 세팅한다. 신호가 비주기적인 프레임들에 대해서는, 그 신호의 위상을 측정한다. 주어진 프레임에 대해 그 신호가 주기적인지를 결정하는데에는, 개방 루프 주기성 결정을 사용할 수 있다.

Description

유사주기 신호의 위상을 추적하는 방법 및 장치 {METHOD AND APPARATUS FOR TRACKING THE PHASE OF A QUASI-PERIODIC SIGNAL}
발명의 배경
Ⅰ. 발명의 분야
본 발명은 일반적으로는 음성 처리 분야에 관한 것으로, 좀더 구체적으로는 유사주기 신호의 위상을 추적하는 방법 및 장치에 관한 것이다.
Ⅱ. 배경
디지털 기술에 의한 음성 송신이 보편화 되었으며, 특히 장거리 및 디지털 무선 전화기 애플리케이션 분야에서 보편화되었다. 이에 따라, 재구성되는 음성의 인지 품질 (perceived quality) 은 유지하면서, 한 채널을 통해 송신할 수 있는 최소량의 정보를 결정하는데 관심이 쏠리게 되었다. 음성을 샘플링 (sampling) 과 디지타이징 (digitizing) 만을 통해 송신하는 경우, 종래의 아날로그 전화기의 음성 품질을 달성하는 데, 대략 초당 64 킬로비트 (kbps) 의 데이터 레이트가 필요하다. 그러나, 음성을 분석한 후 적절히 코딩하고 송신하여 수신기측에서 재합성하면, 데이터 레이트를 현저히 감소시킬 수 있다.
인간의 음성 발생 모델에 관한 파라미터들을 추출하여 음성을 압축하는데 이용되는 장치들을 음성 코더 (speech coder) 라고 부른다. 음성 코더는, 착신되는 음성 신호를 시간 블록이나 분석 프레임들로 분할한다. 통상적으로, 음성코더는, 인코더와 디코더를 구비한다. 인코더는, 착신되는 음성 프레임을 분석하여, 소정의 관련 파라미터들을 추출한 후, 그 파라미터들을 2 진 표현, 즉 일 세트의 비트들이나 2 진 데이터 패킷으로 양자화한다. 이 데이터 패킷들은 통신 채널을 통해 수신기나 디코더로 송신된다. 디코더는 그 데이터 패킷들을 처리하고 역양자화 (unquantize) 하여 파라미터들을 생성한 후, 그 역양자화된 파라미터들을 사용하여 음성 프레임들을 재합성한다.
음성 코더의 기능은, 음성 특유의 모든 고유 리던던시 (natural redundancy) 를 제거하여 디지타이징된 음성 신호를 낮은 비트 레이트의 신호로 압축하는 것이다. 디지털 압축은, 입력 음성 프레임을 일 세트의 파라미터들로 표현한 후 양자화하여 그 파라미터들을 일 세트의 비트들로 표현함으로써 이루어진다. 입력 음성 프레임이 Ni개의 비트를 가지며 음성 코더에 의해 생성되는 데이터 패킷은 No개의 비트를 갖는 경우, 그 음성 코더에 의해 달성되는 압축비 (compression factor) 는 Cr= Ni/No가 된다. 문제는, 소기의 (target) 압축비를 달성하면서 디코드된 음성을 높은 음성 품질로 유지하는 것이다. 음성 코더의 성능은, (1) 음성 모델링 또는 상술한 조합의 분석과 합성 처리를 수행하는 정도, 및 (2) 프레임당 No비트의 소기의 비트 레이트로 파라미터 양자화 처리를 수행하는 정도에 달려있다. 따라서, 음성 모델링의 목적은, 음성 신호의 필수성분만을 캡쳐 (capture) 하거나, 각각의 프레임에 대하여 적은 크기의 파라미터 세트를 갖는 소기의 음성 품질을 얻는 것이다.
음성 코더는, 높은 시간 해상도 (time-resolution) 의 프로세싱을 사용하여 작은 음성 세크먼트들 (통상적으로 5 밀리초 (ms) 의 서브프레임들) 을 한 번에 인코딩함으로써 시간 영역 음성 파형을 캡쳐 (capture) 하는 시간 영역 코더로 구현할 수 있다. 각각의 서브 프레임에 대하여, 당업계에 공지된 다양한 탐색 알고리즘을 사용하여, 코드북 공간 (codebook space) 으로부터 고정밀도의 표본 (representative) 를 탐색한다. 다른 방법으로는, 일 세트의 파라미터들을 갖는 입력 음성 프레임의 단기 (short-term) 음성 스펙트럼을 캡쳐하고 (분석), 해당하는 합성 처리법을 이용하여 그 주파수 파라미터들로부터 음성 파형을 재생하는 주파수 영역 코더로 음성 코더를 구현할 수도 있다. 파라미터 양자화기 (quantizer) 는, A. Gersho & R.M. Gray,Vector Quantization and Signal Compression(1992) 에 설명되어 있는 공지된 양자화 기술들에 따라 저장된 코드 벡터들의 표현들로 파라미터들을 표현함으로써 그 파라미터들을 유지한다.
잘 알려진 시간 영역 음성 코더로는, L.B. Rabiner & R.W. Schafer,Digital Processing of Speech Signals396-453 (1978) 에 설명되어 있는 CELP (Code Excited Linear Predictive) 코더가 있다. CELP 코더에서는, LP (linear prediction) 분석법으로 음성 신호 내에 있는 단기의 상관관계나 리던던시를 제거하고, 단기 포먼트 필터 (short-term formant filter) 의 계수들을 구한다. 착신되는 음성 프레임을 단기 예측 필터에 인가하여 LP 잔여 신호 (residue signal) 를 생성하면, 이 신호를 장기 (long-term) 예측 필터 파라미터들과 후속의 확률 코드북으로 모델링하고 양자화한다. 따라서, CELP 코딩법에서는, 시간 영역 음성파형을 인코딩하는 작업을, LP 단기 필터 계수들의 인코딩 작업과 LP 잔여의 인코딩 작업으로 분할한다. 시간 영역 코딩은 고정된 레이트로 (즉, 각각의 프레임에 대하여 동일한 개수의 비트 No를 사용) 수행하거나, 가변적 레이트로 (상이한 유형의 프레임 내용에 대하여 상이한 비트 레이트를 사용) 수행할 수 있다. 가변 레이트 코더는, 소기의 품질을 얻는데 적절한 수준으로 코덱 (codec) 파라미터들을 인코딩하는데 필요한 만큼의 비트수만 사용한다. 가변 레이트 CELP 코더의 일례가, 본 발명의 양수인에게 양도되고 여기서는 인용만 하는 미국특허 제 5,414,796 호에 설명되어 있다.
CELP 코더와 같은 시간 영역 코더는, 시간 영역 음성 파형의 정확도를 유지하기 위해 프레임당 다수의 비트들, No,에 의존하는 것이 통상적이다. 통상적으로, 그런 시간 영역 코더는, 프레임당 비트수, No, 가 비교적으로 큰 경우에는 (예를 들어, 8 kbps 이상), 우수한 음성 품질을 제공한다. 그러나, 비트 레이트가 낮은 경우에는 (4 kbps 이하), 이용가능한 비트수가 제한되기 때문에, 시간 영역 코더가 고품질과 로버스트한 (robust) 성능을 유지할 수 없다. 비트 레이트가 낮은 경우에는, 코드북 공간이 제한됨으로 인해, 높은 레이트의 상업용 용도에서는 성공적으로 이용되던 종래의 시간 영역 코더의 파형 매칭 (waveform-matching) 능력이 제한된다.
현재, 중간의 비트 레이트 내지 낮은 비트 레이트에서 (즉, 2.4 kbps 내지 4 kbps 및 그 이하의 범위) 동작하는 고품질 음성 코더를 개발하고자 하는 학술적 관심과 상업적 필요성이 지대하다. 그 응용범위로는, 무선 텔레포니 (telephony), 위성 통신, 인터넷 텔레포니, 다양한 멀티미디어 및 음성 스트리밍 (voice-streaming) 애플리케이션, 음성 메일, 및 기타 음성 저장 시스템을 포함한다. 고용량에 대한 필요성 및 패킷이 손실되는 상황에서의 로버스트한 성능에 대한 요구에 의해 추진되고 있다. 낮은 레이트의 음성 코딩 알고리즘의 연구 개발을 추진하게 하는 또 다른 직접적인 추진력으로는, 다양한 최신 음성 코딩 표준화 노력이 있다. 낮은 레이트의 음성 코더에 의해서, 허용되는 애플리케이션 대역폭에 대해 더욱 많은 채널들이나 사용자들이 생성되며, 낮은 레이트의 음성 코더가 적절한 채널 코딩의 부가적 계층 (layer) 과 결합되면, 코더 사양 (specifications) 의 전체 비트 한계량 (overal bit-budget) 에 맞출 수 있게 되어 채널 오류가 발생하는 상황에서 로버스트한 성능을 제공할 수 있게 된다.
낮은 비트 레이트로 코딩하기 위해, 스펙트럼 또는 주파수 영역에서 음성을 코딩하는 다양한 방법들이 개발되었으며, 여기서 음성 신호는 스펙트럼들의 시변적 전개 (time-varying evolution) 로서 분석된다. 예를 들어, R.J. McAulay & T.F. Quatieri,Sinusoidal Coding,in Speech Coding and Synthesisch. 4 (W.B. Kleijn & K.K. Paliwal eds., 1995) 를 참조한다. 스펙트럼 코더에서는, 시변적 음성 파형을 정확히 모방하기보다는, 일 세트의 주파수 파라미터들을 갖는 각각의 입력 음성 프레임의 단기 음성 스펙트럼을 모델링하거나 예측하는데 그 목적이 있다. 그 후, 주파수 파라미터들을 인코딩하고, 디코딩된 파라미터들로 출력 음성 프레임을 생성한다. 이렇게 생성되는 합성 음성은 원래의 입력 음성 파형과 매치되지는 않지만, 유사한 인지 품질을 제공할 수는 있다. 당업계에 잘 알려진 주파수 영역 코더의 예로는, MBE (multiband excitation coder), STC (sinusoidal transform coder), 및 HC (harmonic coder) 를 포함한다. 이러한 주파수 영역 코더는, 낮은 비트 레이트에서 얻어지는 적은 개수의 비트들을 가지고도 정확히 양자화될 수 있는 컴팩트한 세트의 파라미터들을 갖는 고품질의 파라미터 모델을 제공한다.
그러나, 낮은 비트 레이트로 코딩하면, 제한된 코딩 해상도 (resolution) 또는 제한된 코드북 공간에 심각한 제약을 주기 때문에, 단일 코딩 메커니즘의 효율성을 제한하여, 코더가 다양한 배경 (background) 조건들 하에서 다양한 형태의 음성 세그먼트들을 동일한 정확도로 표현할 수 없게 된다. 예를 들면, 종래의 낮은 비트 레이트의 주파수 영역 코더는, 음성 프레임들에 대한 위상 정보를 송신하지 않는다. 그 대신, 임의의 인위적으로 생성된 초기 위상값과 선형 인터폴레이션 기술들을 사용하여 위상 정보를 재구성한다. 예를 들어, 29Electronic Letters856-57 (1993년 5월) 에 있는 H.Yang 외에 의한Quadratic Phase Interpolation for Voiced Speech Synthesis in the MBE Model을 참조한다. 위상 정보가 인위적으로 생성되기 때문에, 양자화-역양자화에 의해 사인곡선들의 진폭이 완벽하게 보존된다 하더라도, 주파수 코더에 의해 생성되는 출력 음성은 원래의 입력 음성과 일치하지 않는다 (즉, 주요 (major) 펄스들이 동기되지 않는다). 따라서, 주파수 영역 코더에서는, 예를 들어, SNR (signal-to-noise ratio) 또는 지각적 (perceptual) SNR 과 같은 폐쇄 루프 성능 척도 (measure) 를 사용하기에곤란하다는 것이 입증되었다.
개방 루프 모드 결정 프로세스 (process) 와 관련하여 음성 코딩을 낮은 레이트로 수행하기 위해 다중모드 (multimode) 코딩 기술들이 사용되어 왔다. 그런 다중모드 코딩 기술의 일례가,Speech Coding and Synthesisch. 7 (W.B. Kleijn & K.K. Paliwal eds., 1995) 에 있는 Amitava Das 외에 의한Multimode and Variable-Rate Coding of Speech에 설명되어 있다. 종래의 다중모드 코더에서는, 상이한 유형의 입력 음성 프레임에는 상이한 모드 (mode) 나 인코딩-디코딩 알고리즘이 적용된다. 각각의 모드나 인코딩-디코딩 프로세스는, 예를 들어, 유성음 (voiced speech), 무성음 (unvoiced speech), 또는 배경 잡음 (비음성) 과 같은 특정 유형의 음성 세그먼트를 가장 효율적으로 나타내도록 개별화 (customize) 된다. 외부의 개방 루프 모드 결정 메커니즘은, 입력 음성 프레임을 검사하여, 그 프레임에 어떤 모드를 적용할지에 대해 결정한다. 통상적으로, 개방 루프 모드 결정은, 입력 프레임으로부터 다수의 파라미터들을 추출하고, 이 파라미터들을 특정 시간 특성 및 스펙트럼 특성에 따라 평가한 후, 이 평가결과 (evaluation) 에 기초하여 모드 결정이 이루어지도록 함으로써 수행된다. 따라서, 모드 결정은, 출력 음성의 정확한 상태, 즉 음성 품질이나 기타 성능 척도의 측면에서 출력 음성이 입력 음성에 얼마나 근접한지를 사전에 알지 못하는 상태에서 이루어진다.
상술한 바에 따르면, 위상 정보를 보다 정확히 추정하는 낮은 비트 레이트 주파수 영역 코더를 제공하는 것이 바람직하다. 또한, 프레임의 음성 내용에 따라, 어떤 음성 프레임은 시간 영역 인코딩하고 어떤 음성 프레임은 주파수 영역인코딩하는 다중모드 혼합 영역 코더를 제공하는 것이 바람직하다. 또한, 폐쇄 루프 코딩 모드 결정 메커니즘에 따라, 어떤 음성 프레임은 시간 영역 인코딩하고 어떤 음성 프레임은 주파수 영역 인코딩하는 혼합 영역 코더를 제공하는 것이 바람직하다. 또한, 코더에 의해 생성되는 출력 음성과 그 코더로 입력되는 원래의 음성 간의 시간동기 (time-synchrony) 를 확실히 보장하는 폐쇄 루프 다중모드 혼합 영역 음성 코더를 제공하는 것도 바람직하다. 이러한 음성 코더가, 본 발명의 양수인에게 양도되고 여기서는 인용만 하는 발명의 명칭이 "CLOSED-LOOP MULTIMODE MIXED-DOMAIN LINEAR PREDICTION (MDLP) SPEECH CODER" 인, 본 명세서와 함께 출원된 관련 출원 명세서에 설명되어 있다.
또한, 코더에 의해 생성되는 출력 음성과 그 코더로 입력되는 원래의 음성 간의 시간 동기를 확실히 보장하는 방법을 제공하는 것도 바람직하다. 따라서, 유사 주기 신호의 위상을 정확히 추적하는 방법이 필요하다.
발명의 요약
본 발명은 유사 주기 신호의 위상을 정확히 추적하는 방법에 관한 것이다. 따라서, 본 발명의 일 양태에서는, 어떤 프레임에서는 주기적이며 어떤 프레임에서는 비주기적인 신호의 위상을 추적하는 장치로서,
신호가 주기적인 프레임들에 대해서 신호의 위상을 추정하도록 구성되는 로직; 추정된 위상의 품질 (performance) 을 폐쇄 루프 성능 척도로 모니터하도록 구성되는 로직; 및 신호가 주기적이고 추정된 위상의 품질 (performance) 이 소정의 문턱 레벨 이하로 떨어지는 프레임들에 대해서 신호의 위상을 측정하도록 구성되는로직을 포함하는 장치인 것이 바람직하다.
본 발명의 또 다른 양태에서, 어떤 프레임에서는 주기적이며 어떤 프레임에서는 비주기적인 신호의 위상을 추적하는 방법으로서,
신호가 주기적인 프레임들에 대해서 신호의 위상을 추정하는 단계; 추정된 위상의 품질을 폐쇄 루프 성능 척도로 모니터하는 단계; 및 신호가 주기적이고 추정된 위상의 품질이 소정의 문턱 레벨 이하로 떨어지는 프레임들에 대해서 신호의 위상을 측정하는 단계를 포함하는 방법인 것이 바람직하다.
본 발명의 또 다른 양태에서, 어떤 프레임에서는 주기적이 어떤 프레임에서는 비주기적인 신호의 위상을 추적하는 장치로서,
신호가 주기적인 프레임들에 대해서 신호의 위상을 추정하는 수단; 추정된 위상의 품질을 폐쇄 루프 성능 척도로 모니터하는 수단; 및 신호가 주기적이고 추정된 위상의 품질이 소정의 문턱 레벨 이하로 떨어지는 프레임들에 대해서 신호의 위상을 측정하는 수단을 포함하는 장치인 것이 바람직하다.
도면의 간단한 설명
도 1 은 음성 코더에 의해 각각의 단부에서 종단되는 통신 채널의 블록도이다.
도 2 는 다중모드 MDLP (mixed-domain linear prediction) 음성 코더에 사용될 수 있는 인코더의 블록도이다.
도 3 은 다중모드 MDLP 음성 코더에 사용될 수 있는 디코더의 블록도이다.
도 4 는 도 2 의 인코더에 사용될 수 있는 MDLP 인코더에 의해 수행되는MDLP 인코딩 단계를 나타내는 흐름도이다.
도 5 는 음성 코딩 결정 프로세스를 나타내는 흐름도이다.
도 6 은 폐쇄 루프 다중 모드 MDLP 음성 코더의 블록도이다.
도 7 은 도 6 의 코더나 도 2 의 인코더에 사용될 수 있는 스펙트럼 코더의 블록도이다.
도 8 은 고조파 (harmonic) 코더에서 사인곡선들의 진폭을 나타내는 주파수 대 진폭의 그래프이다.
도 9 는 다중모드 MDLP 음성 코더에서의 모드 결정 프로세스를 나타내는 흐름도이다.
도 10a 는 음성 신호의 시간 대 진폭의 그래프이며, 도 10b 는 LP (linear prediction) 잔여 (residue) 의 시간 대 진폭의 그래프이다.
도 11a 는 폐쇄 루프 인코딩 결정을 사용시 프레임 인덱스 대 레이트/모드의 그래프이고, 도 11b 는 폐쇄 루프 결정을 사용시 프레임 인덱스 대 PSNR (perceptual signal-to-noise ratio) 의 그래프이며, 도 11c 는 폐쇄 루프 인코딩 결정의 부재시 프레임 인덱스 대 레이트/모드 및 PSNR 의 그래프이다.
도 12 는 유사 주기 신호의 위상을 추적하는 장치의 블록도이다.
바람직한 실시예들의 상세한 설명
도 1 에서, 제 1 인코더 (10) 는 디지털화된 음성 샘플들 s(n) 을 수신하고, 이 샘플들 s(n) 을 인코딩하여 송신 매체 (12) 또는 통신 채널 (12) 을 통해 제 1 디코더 (14) 로 송신한다. 디코더 (14) 는 그 인코딩된 음성 샘플들을 디코딩하여 출력 음성 신호 sSYNTH(n) 를 합성한다. 반대 방향으로 송신하기 위해, 제 2 인코더 (16) 가 디지털화된 음성 샘플들 s(n) 을 인코딩하여, 통신 채널 (18) 을 통해 송신한다. 제 2 디코더 (20) 는 그 인코딩된 음성 샘플들을 수신하고 디코딩하여 합성된 출력 음성 신호 sSYNTH(n) 를 생성한다.
음성 샘플들 s(n) 은, 예를 들어, PCM (pulse code modulation), 신장 (companded) μ-법칙 또는 A-법칙을 포함하는 당업계에 공지된 다양한 방법에 따라 디지털화되고 양자화된 음성 신호들을 나타낸다. 당업계에 공지된 바와 같이, 음성 샘플들 s(n) 은 입력 데이터 프레임들로 조직되며, 각각의 프레임은 소정의 개수의 디지털 음성 샘플들 s(n) 을 포함한다. 예시적인 실시예에서는, 8kHz 의 샘플링 레이트가 사용되며, 20ms 프레임 각각은 160 개의 샘플을 포함한다. 바람직하게, 이하에서 설명하는 실시예들에서는, 데이터 송신 레이트가 프레임별로 8 kbps (최대 레이트) 에서부터 4 kbps (1/2 레이트), 2 kbps (1/4 레이트), 1 kbps (1/8 레이트) 까지 가변된다. 다른 방법으로는, 그 밖의 다른 데이터 레이트가 사용될 수도 있다. 여기에서 사용되는 용어 "최대 레이트" 또는 "높은 레이트" 는 통상적으로 8 kbps 이상의 데이터 레이트를 지칭하며, "1/2 레이트" 또는 "낮은 레이트" 는 통상적으로 4 kbps 이하의 데이터 레이트를 지칭한다. 상대적으로 적은 음성 정보를 포함하고 있는 프레임들에 대해서는 더 낮은 비트 레이트가 선택적으로 사용될 수 있기 때문에, 데이터 레이트를 가변시키는 것이 바람직하다. 그 밖의 다른 샘플링 레이트, 프레임 사이즈 및 데이터 송신 레이트가사용될 수도 있다.
제 1 인코더 (10) 와 제 2 디코더 (20) 가 모여 제 1 음성 코더 또는 음성 코덱 (codec) 을 구성한다. 마찬가지로, 제 2 인코더 (16) 와 제 1 디코더 (14) 가 모여 제 2 음성 코더를 구성한다. 음성 코더는, DSP (digital signal processor), ASIC (application-specific integrated circuit), 개별 게이트 로직, 펌웨어 (firmware), 또는 종래의 모든 프로그램가능 소프트웨어 모듈 및 마이크로프로세서로 구현할 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래쉬 메모리, 레지스터 또는 당업계에 공지된 다른 모든 형태의 기록가능 저장 매체 내에 상주할 수 있다. 다른 방법으로는, 마이크로프로세서를 종래의 모든 프로세서, 콘트롤러 또는 상태 기계로 대체할 수도 있다. 음성 코딩 용으로 특별히 설계된 ASIC 의 예가, 본 발명의 양수인에게 양도되고 여기서는 인용만 하는 미국특허 제 5,727,123 호 및 1994년 2월 16일 출원되고 발명의 명칭이 "VOCODER ASIC" 인 미국특허출원 제 08/197,417 호에 설명되어 있다.
도 2 에 나타낸 바와 같이, 일 실시예에 따르면, 음성 코더에서 사용될 수 있는 다중모드 MDLP (mixed-domain linear prediction) 인코더 (100) 가, 모드 결정 모듈 (102), 피치 (pitch) 추정 모듈 (104), LP (linear prediction) 분석 모듈 (106), LP 분석 필터 (108), LP 양자화 모듈 (110), 및 MDLP 잔여 (residue) 인코더 (112) 를 포함한다. 입력 음성 프레임 s(n) 은, 모드 결정 모듈 (102), 피치 추정 모듈 (104), LP 분석 모듈 (106), 및 LP 분석 필터 (108) 에 제공된다. 모드 결정 모듈 (102) 은, 각각의 입력 음성 프레임 s(n) 의 에너지, 스펙트럼 틸트 (spectral tilt), 부호 변환 레이트 (zero crossing rate) 등과 같은 추출된 파라미터들, 및 주기성 (periodicity) 에 기초하여, 모드 인덱스 IM과 모드 M 을 생성한다. 주기성에 따라 음성 프레임들을 분류하는 다양한 방법들이, 본 발명의 양수인에게 양도되고 여기서는 인용만 하는 1997년 3월 11일 출원된 발명의 명칭이 "METHOD AND APPARATUS FOR PERFORMING REDUCED RATE VARIABLE RATE VOCODING" 인 미국특허출원 제 08/815,354 호에 설명되어 있다. 그러한 방법들은, 미국 통신 산업 협회 (TIA) 의 산업 잠정 표준 (Industry Interim Standards) TIA/EIA IS-127 및 TIA/EIA IS-733 에도 포함되어 있다.
피치 추정 모듈 (104) 은, 각각의 입력 음성 프레임 s(n) 에 기초하여 피치 인덱스 IP및 지연값 P0를 생성한다. LP 분석 모듈 (106) 은, 각각의 입력 음성 프레임 s(n) 에 기초해 선형 예측 분석을 수행하여, LP 파라미터 a 를 생성한다. LP 파라미터 a 는 LP 양자화 모듈 (110) 에 제공된다. LP 양자화 모듈 (110) 은 모드 M 도 수신하여, 모드 종속적 (mode-dependent) 방법으로 양자화 프로세스를 수행한다. LP 양자화 모듈 (110) 은 LP 인덱스 ILP및 양자화된 LP 파라미터를 생성한다. LP 분석 필터 (108) 는, 입력 음성 프레임 s(n) 외에도 양자화된 LP 파라미터를 수신한다. LP 분석 필터 (108) 는, 양자화된 선형 예측 파라미터에 기초하여 재구성된 음성과 입력 음성 프레임 s(n) 간의 오차를 나타내는 LP 잔여 신호 R[n] 을 생성한다. LP 잔여 R[n], 모드 M, 및 양자화된 LP 파라미터는 MDLP 잔여 인코더 (112) 에 제공된다. MDLP 잔여 인코더 (112) 는, 그 값들에 기초하여, 도 4 를 참조하여 후술되는 단계에 따라 잔여 인덱스 IR및 양자화된 잔여 신호를 생성한다.
도 3 에서는, 음성 코더에 사용될 수 있는 디코더 (200) 가, LP 파라미터 디코딩 모듈 (202), 잔여 디코딩 모듈 (204), 모드 디코딩 모듈 (206) 및 LP 합성 필터 (208) 를 포함하고 있다. 모드 디코딩 모듈 (206) 은, 모드 인덱스 IM을 수신하고 디코딩하여, 모드 M 을 생성한다. LP 파라미터 디코딩 모듈 (202) 은 모드 M 과 LP 인덱스 ILP를 수신한다. LP 파라미터 디코딩 모듈 (202) 은 수신값들을 디코딩하여, 양자화된 LP 파라미터를 생성한다. 잔여 디코딩 모듈 (204) 은 잔여 인덱스 IR, 피치 인덱스 IP및 모드 인덱스 IM를 수신한다. 잔여 디코딩 모듈 (204) 은 수신값들을 디코딩하여, 양자화된 잔여 신호를 생성한다. 양자화된 잔여 신호와 양자화된 LP 파라미터는 LP 합성 필터 (208) 에 제공되어, 디코딩된 출력 음성 신호로 합성된다.
MDLP 잔여 인코더 (112) 를 제외하고, 도 3 의 디코더 (200) 와 도 2 의 인코더 (100) 의 여러 모듈들의 구현과 동작은, 당업계에 잘 알려져 있으며 전술한 미국특허 제 5,414,796 호와 L.B. Rabiner & R.W. Schafer 의 Digital Processing of Speech Signals 396-453 (1978) 에도 설명되어 있다.
일 실시예에 따르면, MDLP 인코더 (미도시함) 는 도 4 의 흐름도에 나타낸 단계들을 수행한다. MDLP 인코더는 도 2 의 MDLP 잔여 인코더 (112) 일 수도있다. 단계 300 에서, MDLP 인코더는, 모드 M 이 FR (full rate), QR (quarter rate) 또는 ER (eighth rate) 인지를 체크한다. 모드 M 이 FR, QR 또는 ER 이면, MDLP 인코더는 단계 302 로 넘어간다. 단계 302 에서, MDLP 인코더는 해당하는 레이트를 (M 값에 따라 FR, QR, 또는 ER) 잔여 인덱스 IR에 적용한다. FR 모드에 대하여 고정밀도의 높은 레이트 코딩으로서 바람직하기로는 CELP 코딩일 수 있는 시간 영역 코딩을 LP 잔여 프레임에 적용하거나, 다른 방법으로는, 음성 프레임에 적용한다. 그 후, (디지털-아날로그 변환과 변조를 포함해 신호 처리를 더 거친 후) 프레임을 송신한다. 일 실시예에서, 프레임은 예측 오차를 나타내는 LP 잔여 프레임이다. 다른 실시예에서는, 프레임이 음성 샘플들을 나타내는 음성 프레임이다.
다른 한편, 단계 300 에서, 모드 M 이 FR, QR 또는 ER 이 아닌 경우에는 (즉, 모드 M 이 HR (half rate) 인 경우), MDLP 인코더는 단계 304 로 넘어간다. 단계 304 에서는, 바람직하기로는 고조파 코딩인 스펙트럼 코딩을 1/2 레이트로 LP 잔여에 적용하거나, 다른 방법으로는, 음성 신호에 적용한다. 그 후, MDLP 인코더는 단계 306 으로 넘어간다. 단계 306 에서는, 인코딩된 음성을 디코딩한 후 원래의 입력 프레임과 비교하여, 왜곡 척도 (distortion measure) D 를 구한다. 그 후, MDLP 인코더는 단계 308 로 넘어간다. 단계 308 에서는, 왜곡 척도 D 와 소정의 문턱값 T 를 비교한다. 왜곡 척도 D 가 문턱값 T 보다 크면, 1/2 레이트로 스펙트럼 인코딩된 프레임에 해당하는 양자화된 파라미터를 변조하여 송신한다. 다른 한편, 왜곡 척도 D 가 문턱값 T 보다 크지 않은 경우에는, MDLP 인코더가 단계 310 으로 넘어간다. 단계 310 에서는, 디코딩된 프레임을 시간 영역에서 최대 레이트로 재인코딩한다. 바람직하기로는 CELP 코딩과 같이, 종래의 모든 높은 레이트의 고정밀도 코딩 알고리즘을 사용할 수 있다. 그 후, 그 프레임에 관련된 FR 모드의 양자화된 파라미터들을 변조하여 송신한다.
도 5 의 흐름도에 나타낸 바와 같이, 일 실시예에 따른 폐쇄 루프 다중모드 MDLP 음성 코더는, 송신될 음성 샘플들을 처리할 때 일 세트의 단계들을 거친다. 단계 400 에서, 음성 코더는 연속적인 프레임들 내에 있는 음성 신호의 디지털 샘플들을 수신한다. 주어진 프레임을 수신하면, 음성 코더는 단계 402 로 넘어간다. 단계 402 에서, 음성 코더는 그 프레임의 에너지를 검출한다. 에너지는, 그 프레임의 음성 활동상태 (activity) 에 대한 척도이다. 음성 검출은, 디지털화된 음성 샘플들의 진폭을 제곱한 후 가산해서 얻어지는 에너지를 문턱값과 비교함으로써 수행된다. 일 실시예에서, 문턱값은 배경 잡음의 변화 정도에 기초하여 적절히 가변된다. 가변 문턱값 음성 활동상태 검출기의 일례가, 전술한 미국특허 제 5,414,796 호에 설명되어 있다. 일부 무성음 (unvoiced speech sound) 은 극도로 낮은 에너지를 갖는 샘플들일 수 있으므로, 배경 잡음으로 잘못 인코딩될 수 있다. 이를 방지하기 위해, 전술한 미국특허 제 5,414,796 호에 설명된 바와 같이, 저에너지 샘플들의 스펙트럼 틸트를 사용해서 무성음과 배경 잡음을 구별한다.
프레임의 에너지를 검출하면, 음성 코더는 단계 404 로 넘어간다. 단계404 에서, 음성 코더는, 그 프레임이 음성 정보를 포함하고 있는 것으로 분류할 수 있을 정도로 그 검출된 프레임 에너지가 충분한지를 판단한다. 검출된 프레임 에너지가 소정의 문턱 레벨 이하로 내려가면, 음성 코더는 단계 406 으로 넘어간다. 단계 406 에서, 음성 코더는 프레임을 배경 잡음 (즉, 비음성 (nonspeech) 또는 묵음 (silence)) 으로서 인코딩한다. 일 실시예에서, 배경 잡음 프레임은 1/8 레이트 또는 1 kbps 로 시간 영역 인코딩된다. 단계 404 에서, 그 검출된 프레임 에너지가 소정의 문턱 레벨을 충족하거나 초과하면, 그 프레임은 음성으로서 분류되고, 음성 코더는 단계 408 로 넘어간다.
단계 408 에서, 음성 코더는, 프레임이 주기적인지를 판단한다. 주기성을 판단하는 여러 공지된 방법들로는, 예를 들면, 부호 변환 (zero crossing) 을 사용하는 방법과 정규화된 자기상관 함수 (NACF; normalized autocorrelation function) 를 사용하는 방법이 있다. 구체적으로 말해서, 부호 변환과 NACF 를 사용하여 주기성을 검출하는 방법은, 본 발명의 양수인에게 양도되고 여기서는 인용만 하는, 1997년 3월 11일 출원된 발명의 명칭이 "METHOD AND APPARATUS FOR PERFORMING REDUCED RATE VARIABLE RATE VOCODING" 인 미국특허출원 제 08/815,354 호에 설명되어 있다. 또한, 유성음과 무성음을 구별하기 위해 사용되는 상기의 방법들은, 미국 통신 산업 협회 (TIA) 의 산업 잠정 표준 TIA/EIA IS-127 과 TIA/EIA IS-733 에서 찾아볼 수 있다. 단계 408 에서, 프레임이 주기적인 것으로 판단되지 않으면, 음성 코더는 단계 410 으로 넘어간다. 단계 410 에서, 음성 코더는 프레임을 무성음으로서 인코딩한다. 일 실시예에서는, 무성음 프레임이 1/4 레이트 또는 2 kbps 로 시간 영역 인코딩된다. 단계 408 에서, 프레임이 주기적인 것으로 판단되면, 음성 코더는 단계 412 로 넘어간다.
단계 412 에서, 음성 코더는, 예를 들어, 전술한 미국특허출원 제 08/815,354 호에 설명된 바와 같이, 당업계에 공지된 주기성 검출 방법을 사용하여, 프레임이 충분한 주기성을 가지고 있는지를 판단한다. 프레임이 충분한 주기성을 가지고 있는 것으로 판단되지 않으면, 음성 코더는 단계 414 로 넘어간다. 단계 414 에서, 프레임은 천이 (transition) 음성 (즉, 무성음에서 유성음으로의 천이) 으로서 시간 영역 인코딩된다. 일 실시예에서, 천이 음성 프레임은 최대 레이트 또는 8 kbps 로 시간 영역 인코딩된다.
단계 412 에서, 음성 코더가 프레임이 충분한 주기성을 가지고 있다고 판단하면, 음성 코더는 단계 416 으로 넘어간다. 단계 416 에서, 음성 코더는 프레임을 유성음으로서 인코딩한다. 일 실시예에서, 유성음 프레임은 1/2 레이트 또는 4 kbps 로 스펙트럼 인코딩된다. 도 7 을 참조하여 후술하는 바와 같이, 유성음 프레임은 고조파 코더로 스펙트럼 인코딩하는 것이 바람직하다. 다른 방법으로는, 예를 들어, 사인 변환 (sinusoidal transform) 코더나 다중대역 여기 (multiband excitation) 코더와 같이 당업계에 알려진 다른 스펙트럼 코더를 사용할 수도 있다. 그 후, 음성 코더는 단계 418 로 넘어간다. 단계 418 에서, 음성 코더는 인코딩된 유성음 프레임을 디코딩한다. 그 후, 음성 코더는 단계 420 으로 넘어간다. 단계 420 에서는, 디코딩된 유성음 프레임과 그 프레임에 해당하는 입력 음성 샘플들을 비교하여, 합성된 음성의 왜곡정도 (distortion) 을측정하여 1/2 레이트의 유성음 스펙트럼 코딩 모델이 허용 범위 내에서 동작하는지를 판단한다. 그 후, 음성 코더는 단계 422 로 넘어간다.
단계 422 에서, 음성 코더는, 디코딩된 유성음 프레임과 그 프레임에 대응하는 입력 음성 샘플들 간의 오차가 소정의 문턱값보다 낮은 지를 판단한다. 일 실시예에 따르면, 그러한 판단은 도 6 을 참조하여 후술하는 방식으로 이루어진다. 인코딩 왜곡정도가 소정의 문턱값보다 낮으면, 음성 코더는 단계 426 으로 넘어간다. 단계 426 에서, 음성 코더는, 단계 416 의 파라미터들을 사용하여 프레임을 유성음으로서 송신한다. 단계 422 에서, 인코딩 왜곡정도가 소정의 문턱값을 충족하거나 초과하면, 음성 코더는 단계 414 로 넘어가서, 단계 400 에서 수신한 디지털화된 음성 샘플들의 프레임을 천이 음성으로서 최대 레이트로 시간 영역 인코딩한다.
단계 400-410 은 개방 루프 인코딩 결정 모드를 구성한다. 다른 한편, 단계 412-426 은 폐쇄 루프 인코딩 결정 모드를 구성한다.
도 6 에 나타낸 일 실시예에서는, 폐쇄 루프 다중모드 MDLP 음성 코더가, A/D (analog-to-digital) 컨버터 (500) 와 이에 접속되는 프레임 버퍼 (502), 및 이에 접속되는 제어 처리기 (504) 를 포함한다. 제어 처리기 (504) 에는, 에너지 계산기 (506), 유성음 검출기 (508), 배경 잡음 인코더 (510), 높은 레이트의 시간 영역 인코더 (512) 및 낮은 레이트의 스펙트럼 인코더 (514) 가 접속된다. 스펙트럼 인코더 (514) 에는 스펙트럼 디코더 (516) 가 접속되며, 스펙트럼 디코더 (516) 와 제어 처리기 (504) 에는 오차 계산기 (518) 가 접속된다. 오차 계산기 (518) 와 제어 처리기 (504) 에는 문턱값 비교기 (520) 가 접속된다. 문턱값 비교기 (520), 스펙트럼 인코더 (514) 및 스펙트럼 디코더 (516) 에는 버퍼 (522) 가 접속된다.
도 6 의 일 실시예에서, 음성 코더의 구성요소들은, 바람직하기로는 DSP 또는 ASIC 내에 그 자체로서 상주하는 음성 코더 내의 펌웨어나 기타 소프트웨어 피구동 (software-driven) 모듈들로서 구현하는 것이 바람직하다. 음성 코더 구성요소들은, 공지된 수많은 다른 방법에 의해서도 등가적으로 잘 구현할 수 있다. 제어 처리기 (504) 는 마이크로프로세서로 구현하는 것이 바람직하나, 다른 방법으로는, 콘트롤러, 상태 기계 또는 개별 로직으로도 구현할 수 있다.
도 6 의 다중모드 코더에서, 음성 신호들은 A/D (500) 로 제공된다. A/D (500) 는 아날로그 신호를 디지털화된 음성 샘플들, S(n), 의 프레임으로 변환한다. 디지털화된 음성 샘플들은 프레임 버퍼 (502) 에 제공된다. 제어 처리기 (504) 는 프레임 버퍼 (502) 로부터 디지털화된 음성 샘플들을 가져와서 에너지 계산기 (506) 에 제공한다. 에너지 계산기 (506) 는, 음성 샘플들의 에너지, E, 를 다음과 같은 식에 따라 계산한다.
이 식에서, 프레임의 길이는 20 ms 이고, 샘플링 레이트는 8 kHz 이다. 계산된 에너지, E, 는 제어 처리기 (504) 로 다시 보내진다.
제어 처리기 (504) 는 그 계산된 음성 에너지와 음성 활동상태 문턱값을 비교한다. 계산된 에너지가 음성 활동상태 문턱값보다 낮으면, 제어 처리기 (504) 는, 그 디지털화된 음성 샘플들을 프레임 버퍼 (502) 로부터 배경 잡음 인코더 (510) 로 보낸다. 배경 잡음 인코더 (510) 는, 배경 잡음의 추정량 (estimate) 을 보존하는데 필요한 최소 개수의 비트만을 사용하여 프레임을 인코딩한다.
계산된 에너지가 음성 활동상태 문턱값 이상이면, 제어 처리기 (504) 는, 그 디지털화된 음성 샘플들을 프레임 버퍼 (502) 로부터 유성음 검출기 (508) 로 보낸다. 유성음 검출기 (508) 는, 음성 프레임의 주기성에 의하여 낮은 비트 레이트의 스펙트럼 인코딩을 사용해 효율적으로 코딩될 수 있는지를 판단한다. 음성 프레임의 주기성 정도 (level) 를 결정하는 방법들은 당업계에 잘 알려져 있으며, 예를 들면, 정규화된 자기상관 함수 (NACF) 및 부호 변환을 사용하는 방법이 있다. 이런 방법들과 그 외의 다른 방법들은, 전술한 미국특허출원 제 08/815,354 호에 설명되어 있다.
유성음 검출기 (508) 는, 음성 프레임이 충분한 주기성을 갖는 음성을 포함하고 있어 스펙트럼 인코더 (514) 에 의해 효율적으로 인코딩될 수 있음을 나타내는 신호를 제어 처리기 (504) 에 제공한다. 유성음 검출기 (508) 가 그 음성 프레임에 충분한 주기성이 없다라고 판단하여, 제어 처리기 (504) 는 그 디지털화된 음성 샘플들을 높은 레이트의 인코더 (512) 로 보내면, 인코더 (512) 는 음성을 소정의 최대 데이터 레이트로 시간 영역 인코딩한다. 일 실시예에서, 그 소정의 최대 데이터 레이트는 8 kbps 이며, 그 높은 레이트의 인코더 (512) 는 CELP 인코더이다.
유성음 검출기 (508) 가, 음성 신호에 충분한 주기성을 있어서 스펙트럼 인코더 (514) 에 의해 효율적으로 인코딩될 수 있다라고 판단하면, 제어 처리기 (504) 는 디지털화된 음성 샘플들을 프레임 버퍼 (502) 로부터 스펙트럼 인코더 (514) 로 보낸다. 스펙트럼 인코더의 일례는 도 7 을 참조하여 이하 상세히 설명한다.
스펙트럼 인코더 (514) 는 추정된 피치 주파수 F0, 이 피치 주파수의 고조파들 (harmonics) 의 진폭, AI, 및 음성 정보 VC를 추출한다. 스펙트럼 인코더 (514) 는 그러한 파라미터들을 버퍼 (522) 와 스펙트럼 디코더 (516) 에 제공한다. 스펙트럼 디코더 (516) 는 종래의 CELP 인코더의 디코더와 유사한 디코더인 것이 바람직하다. 스펙트럼 디코더 (516) 는 스펙트럼 디코딩 포맷에 따라 합성 음성 샘플들,, 을 생성하여, 그 합성 음성 샘플들을 오차 계산기 (518) 에 제공한다. 제어 처리기 (504) 는 그 음성 샘플들, S(n), 을 오차 계산기 (518) 로 보낸다.
오차 계산기 (518) 는, 각각의 음성 샘플, S(n), 과 이에 대응하는 각각의 합성된 음성 샘플,, 간의 MSE (mean square error) 를 다음 식에 따라 계산한다.
이렇게 계산된 MSE 가 문턱값 비교기 (520) 에 제공되면, 문턱값 비교기 (520) 는 왜곡 레벨이 허용 범위 내에 있는지, 즉 왜곡 레벨이 소정의 문턱값 보다 낮은지를 판단한다.
그 계산된 MSE 가 허용 범위 내에 있으면, 문턱값 비교기 (520) 가 버퍼 (502) 에 신호를 제공하여, 음성 코더로부터 스펙트럼 인코딩된 데이터가 출력된다. 다른 한편, MSE 가 허용 범위 내에 있지 않으면, 문턱값 비교기 (520) 는 제어 처리기 (504) 에 신호를 제공하고, 차례로, 제어 처리기 (504) 는 디지털화된 샘플들을 프레임 버퍼 (502) 로부터 높은 레이트의 시간 영역 인코더 (512) 로 보낸다. 시간 영역 인코더 (512) 는 소정의 최대 레이트로 프레임들을 인코딩하고, 버퍼 (522) 의 내용은 소거된다.
도 6 의 실시예에서 사용된 스펙트럼 코딩의 형태는, 도 7 을 참조하여 이하 설명하는 바와 같이, 고조파 코딩이지만, 다른 방법으로는, 예를 들면, 사인 변환 코딩이나 다중대역 여기 코딩과 같은 모든 스펙트럼 코딩이 될 수가 있다. 다중대역 여기 코딩의 사용예는, 미국특허 제 5,196,166 호에 설명되어 있으며, 사인 변환 코딩의 사용예는, 미국특허 제 4,865,068 호에 설명되어 있다.
도 6 의 다중모드 코더는, 천이 프레임들과, 위상 왜곡 문턱값이 주기성 파라미터 이하인 음성 프레임들에 대해서, 높은 레이트의 시간 영역 인코더 (512) 로 최대 레이트 또는 8 kbps 로 CELP 코딩을 사용하는 것이 바람직하다. 다른 방법으로는, 그러한 프레임들에 대해서 공지된 모든 형태의 높은 레이트 시간 영역 코딩을 사용할 수도 있다. 따라서, 천이 프레임들 (및 충분한 주기성을 갖는않는 음성 프레임들) 이 고정밀도로 코딩되므로, 입력측 파형과 출력측 파형이 잘 매치되어, 위상 정보가 잘 보존된다. 일 실시예에서는, 문턱값이 주기성 척도를 초과하는 연속적인 음성 프레임들이 소정의 개수만큼 처리되면, 다중모드 코더는, 문턱값 비교기 (520) 의 결정에 무관하게, 한 프레임에 대해서 1/2 레이트 스펙트럼 코딩에서 최대 레이트 CELP 코딩으로 전환한다.
에너지 계산기 (506) 및 유성음 검출기 (508) 는, 제어 처리기 (504) 와 공동으로, 개방 루프 인코딩 결정부를 구성한다. 한편, 스펙트럼 인코더 (514), 스펙트럼 디코더 (516), 오차 계산기 (518), 문턱값 비교기 (520) 및 버퍼 (522) 는, 제어 처리기 (504) 와 공동으로, 폐쇄 루프 인코딩 결정부를 구성한다.
도 7 을 참조하여 설명되는 일 실시예에서는, 스펙트럼 코딩과 바람직하기로는 고조파 코딩을 사용하여, 낮은 비트 레이트로 충분한 주기성을 갖는 유성음 프레임들을 인코딩한다. 통상적으로, 스펙트럼 코더는, 주파수 영역에서 각각의 음성 프레임을 모델링하고 인코딩함으로써, 지각적으로 의미있게 음성 스펙트럼 특성의 시간적 전개 (time-evolution) 를 유지하고자 하는 알고리즘으로서 정의된다. 그런 알고리즘의 필수적 요소들로는, (1) 스펙트럼 분석이나 파라미터 추정; (2) 파라미터 양자화; 및 (3) 디코드된 파라미터에 의한 출력 음성 파형의 합성이 있다. 따라서, 일 세트의 스펙트럼 파라미터들로 단기 음성 스펙트럼의 중요 특성들을 유지하고, 그 파라미터들을 인코딩한 후, 디코딩된 스펙트럼 파라미터들을 사용하여 출력 음성을 합성하는데 그 목적이 있다. 통상적으로, 출력 음성은 사인곡선들의 가중된 합으로서 합성된다. 그 사인곡선들의 진폭, 주파수 및 위상이, 분석중에 추정되는 스펙트럼 파라미터들이다.
"합성에 의한 분석 (analysis by synthesis) " 기법은 CELP 코딩에서는 잘 알려진 기법이지만, 스펙트럼 코딩에서는 이용되지 않는 기법이다. 스펙트럼 코더에 합성에 의한 분석 기법이 적용되지 않는 주된 이유는, 음성 모델이 지각적 측면에서는 적절히 기능하더라도, 초기 위상 정보의 손실로 인해 합성된 음성의 MSE (mean square energy) 는 높아질 수 있기 때문이다. 따라서, 초기 위상을 정확하게 생성하는 것은, 결과적으로 음성 샘플들과 재구성된 음성을 직접 비교할 수 있기 때문에 음성 모델이 음성 프레임들을 정확하게 인코딩하고 있는지를 판단할 수 있다는 또 다른 이점이 있다.
스펙트럼 코딩에서, 출력 음성 프레임은
로서 합성되며, 이 식에서 N 은 프레임당 샘플 개수이고, SV와 SUV는 각각 유성음 성분과 무성음 성분이다. 사인곡선 합 (sum-of-sinusoid) 합성 프로세스는 다음과 같은 유성음 성분을 생성한다.
이식에서, L 은 사인 곡선의 총 개수, fK는 단기 스펙트럼에서 대상이 되는 주파수, A(k,n) 은 사인 곡선들의 진폭,은 사인 곡선들의 위상이다. 진폭, 주파수 및 위상 파라미터들은, 스펙트럼 분석 프로세스에 의해 입력 프레임의단기 스펙트럼으로부터 추정된다. 무성음 성분은 단일 사인곡선 합 합성시 유성음 부분과 함께 생성되거나, 전용의 무성음 합성 프로세스에 의해 따로 계산된 후 Sv에 다시 가산될 수 있다.
도 7 의 실시예에서는, 고조파 코더라 불리는 특정 유형의 스펙트럼 코더를 사용하여, 충분한 주기성을 갖는 유성음 프레임들을 낮은 비트 레이트로 스펙트럼 인코딩한다. 고조파 코더는, 프레임의 작은 세그먼트들을 분석하여, 프레임을 사인 곡선들의 합으로서 특징지운다. 사인 곡선들의 합에서 각각의 사인 곡선은, 프레임의 피치, Fo, 의 정수배의 주파수를 갖는다. 고조파 코더가 아닌 특정 유형의 스펙트럼 코더를 사용하는 다른 실시예에서는, 각각의 프레임에 대한 사인 주파수가 0 과 2π사이의 실수집합으로부터 선택된다. 도 7 의 실시예에서, 사인 곡선들의 합에서 각각의 사인 곡선의 진폭과 위상은, 도 8 의 그래프에 나타낸 바와 같이, 그 사인 곡선들의 합과 한 주기에 걸친 신호가 가장 잘 매치되도록 선택되는 것이 바람직하다. 고조파 코더는, 각각의 입력 음성 프레임을 유성음이나 무성음으로 표시하는 외부적 분류를 사용하는 것이 통상적이다. 유성음 프레임에 대해서, 사인 곡선들의 주파수는 추정된 피치 (Fo) 의 고조파, 즉, fk= kFo로 제한된다. 무성음에 대해서는, 단기 스펙트럼의 정점 (peak) 들을 사용하여 사인곡선들을 결정한다. 진폭들과 위상들은, 그 프레임에 걸친 그 진폭과위상의 전개 (evolution) 를 모방하기 위해 다음과 같이 인터폴레이팅된다.
이 식에서, 계수 [Ci(k), Bi(k)] 는, 윈도우된 (windowed) 입력 음성 프레임의 STFT (short-term Fourier Transform) 값들 중에서 특정 주파수 위치 fk(=kfo) 에서의 진폭들, 주파수들 및 위상들의 순간값들로부터 추정한다. 하나의 사인 곡선에 대해 전송되는 파라미터들은 진폭과 주파수이다. 위상은 전송되지 않는 대신에, 예를 들어, 2 차 위상 (quadratic phase) 모델법이나, 종래의 모든 위상의 다항식 표현법 (polynomial representation) 을 포함한 공지된 다수의 기술에 따라 모델링된다.
도 7 에 나타낸 바와 같이, 고조파 코더는, 피치 추출기 (600), 이에 접속되는 윈도우잉 (windowing) 로직 (602) 과 DFT (Discrete Fourier Transform) 및 고조파 분석 로직 (604) 을 포함한다. 피치 추출기 (600) 는 입력으로서 음성 샘플들 S(n) 을 수신하며, 또한 DFT 및 고조파 분석 로직 (604) 에도 접속되어 있다. DFT 및 고조파 분석 로직 (604) 은 잔여 인코더 (606) 에 접속된다. 피치 추출기 (600), DFT 및 고조파 분석 로직 (604) 그리고 잔여 인코더 (606) 각각은, 파라미터 양자화기 (608) 에 접속된다. 파라미터 양자화기 (608) 는 채널 인코더 (610) 에 접속되며, 채널 인코더 (610) 는 송신기 (612) 에 접속된다. 송신기 (612) 는, 예를 들어, CDMA (code division multiple access) 와 같은 표준무선 주파수 (RF) 인터페이스에 의해서 무선 인터페이스를 통해 수신기 (614) 에 접속된다. 수신기 (614) 는 채널 디코더 (616) 에 접속되며, 채널 디코더 (616) 는 역양자화기 (618) 에 접속된다. 역양자화기 (618) 는 사인곡선 합 음성 합성기 (620) 에 접속된다. 또한, 사인곡선 합 음성 합성기 (620) 에는 위상 추정기 (622) 도 접속되며, 위상 추정기 (622) 는 입력으로서 이전의 프레임 정보를 수신한다. 사인곡선 합 음성 합성기 (620) 는 합성된 음성 출력, SSYNTH(n) 을 생성하도록 구성된다.
피치 추출기 (600), 윈도우잉 로직 (602), DFT 및 고조파 분석 로직 (604), 잔여 인코더 (606), 파라미터 양자화기 (608), 채널 인코더 (610), 채널 디코더 (616), 역양자화기 (618), 사인곡선 합 음성 합성기 (620) 및 위상 추정기 (622) 는, 예를 들어 펌웨어나 소프트웨어 모듈들을 포함해서, 당업자에게 알려진 다양하고 상이한 방법들로 구현할 수 있다. 송신기 (612) 및 수신기 (614) 는 당업자에게 알려진 모든 등가의 표준 RF 구성요소들로 구현할 수도 있다.
도 7 의 고조파 코더에서, 입력 샘플들, S(n), 이 피치 추출기 (600) 에 의해 수신되면, 피치 추출기 (600) 는 피치 주파수 정보 Fo를 추출한다. 그 후, 윈도우잉 로직 (602) 에 의해 그 샘플들에 적절한 윈도우잉 함수가 곱해져서, 음성 프레임의 작은 세그먼트들을 분석할 수 있게 된다. DFT 및 고조파 분석 로직 (604) 이, 피치 추출기 (600) 에 의해 제공되는 피치 정보를 사용해 그 샘플들의 DFT 를 계산하여 복소 스펙트럼 점 (point) 들을 생성하면, 이들 복소 스펙트럼 점들로부터, 도 8 의 그래프에 나타낸 바와 같이, 고조파 진폭들, AI, 가 추출되며, 이 그래프에서 L 은 고조파의 총 개수를 나타낸다. 그 DFT 가 잔여 인코더 (606) 에 제공되면, 잔여 인코더 (606) 는 유성음 정보, Vc를 추출한다.
Vc파라미터는, 도 8 에 나타낸 바와 같이, 주파수축 상의 한 점을 나타내는 것으로, 이 점을 초과하면 스펙트럼이 무성음 신호 특성을 가지며 더 이상 고조파가 아니다. 반대로, 점 Vc 미만에서는, 스펙트럼이 고조파로서 유성음의 특성을 갖는다.
AI, Fo, 및 Vc성분은 파라미터 양자화기 (608) 에 제공되어, 정보가 양자화된다. 양자화된 정보가 패킷의 형태로 채널 인코더 (610) 에 제공되면, 채널 인코더 (610) 는 그 패킷들을, 예를 들어, 1/2 레이트 또는 4 kbps 의 낮은 레이트로 양자화한다. 이 패킷들이 송신기 (612) 로 제공되면, 송신기 (612) 는 그 패킷들을 변조하여 그 변조된 신호를 무선으로 수신기 (614) 에 송신한다. 수신기 (614) 는 그 신호를 수신하고 복조하여, 그 인코딩된 패킷들을 채널 디코더 (616) 로 전달한다. 채널 디코더 (616) 는 그 패킷들을 디코딩하여, 그 디코딩된 패킷들을 역양자화기 (618) 에 제공한다. 역양자화기 (618) 는 그 정보를 역양자화한다. 그 정보는 사인곡선 합 음성 합성기 (620) 로 제공된다.
사인곡선 합 음성 합성기 (620) 는, 상기의 식 S[n] 에 따라, 단기 음성 스펙트럼을 모델링하는 복수의 사인곡선들을 합성하도록 구성된다. 사인곡선들의주파수들, fk, 는, 유사 주기 (즉, 천이) 유성음 세그먼트들에 대한 피치 주기성의 주파수인 기본 주파수, Fo, 의 정수배들이거나 고조파들이다.
또한, 사인곡선 합 음성 합성기 (620) 는 위상 추정기 (622) 로부터 위상 정보도 수신한다. 위상 추정기 (622) 는, 바로 직전의 프레임에 대한 이전 프레임 정보, 즉, AI, Fo, 및 Vc파라미터들을 수신한다. 또한, 위상 추정기 (622) 는 이전 프레임의 재구성된 N 개 샘플들도 수신하며, 여기서 N 은 프레임 길이이다 (즉, N 은 프레임당 샘플수이다). 위상 추정기 (622) 는 이전 프레임에 대한 정보에 기초하여 프레임에 대한 초기 위상을 결정한다. 이렇게 결정된 초기 위상은 사인곡선 합 음성 합성기 (620) 에 제공된다. 과거의 프레임 정보에 기초하여 위상 추정기 (622) 에 의해 수행되는 초기 위상 계산값과 현재의 프레임에 대한 정보에 기초하여, 사인곡선 합 음성 합성기 (620) 는, 상술한 바와 같이, 합성 음성 프레임들을 생성한다.
상술한 바와 같이, 고조파 코더는, 이전 프레임의 정보를 사용하고 위상이 프레임에서 프레임으로 선형 변화함을 예측하여, 음성 프레임들을 합성하거나 재구성한다. 보통 2 차 위상 모델 (quadratic phase model) 로도 불리는 상술한 합성 모델에서, 계수 B3(k) 는 현재 합성중인 유성음 프레임에 대한 초기 위상을 나타낸다. 종래의 고조파 코더는, 위상을 결정할 때, 초기 위상을 제로로 세트하거나, 초기 위상값을 무작위적으로 또는 특정의 의사 랜덤 (pseudo-random) 생성 방법으로 생성한다. 위상을 좀더 정확히 예측하기 위하여, 위상 추정기 (622)는, 바로 직전의 프레임이 유성음 프레임 (즉, 충분한 주기성을 갖는 프레임) 으로 결정되었는지 또는 천이 음성 프레임으로 결정되었는지에 따라, 2 가지의 초기화 위상 결정 방법 중 하나를 사용한다. 이전의 프레임이 유성음 프레임이었으면, 그 프레임의 최종 추정 위상값을 현재 프레임의 초기 위상값으로서 사용한다. 다른 한편, 이전의 프레임이 천이 프레임으로서 분류되었다면, 현재 프레임의 초기 위상값은, 이전 프레임의 디코더 출력에 DFT를 수행해서 구하는 이전 프레임의 스펙트럼으로부터 구한다. 따라서, (천이 프레임인 이전 프레임은 최대 레이트로 처리되었기 때문에) 위상 추정기 (622) 는 이미 이용가능해진 정확한 위상 정보를 사용한다.
일 실시예에서, 폐쇄 루프 다중모드 MDLP 음성 코더는, 도 9 의 흐름도에 나타낸 음성 처리 단계들을 따른다. 음성 코더는, 가장 적절한 인코딩 모드를 선택하여, 각각의 입력 음성 프레임의 LP 잔여를 인코딩한다. 어떤 모드에서는, LP 잔여나 음성 잔여를 시간 영역에서 인코딩하고, 어떤 모드에서는 LP 잔여나 음성 잔여를 주파수 영역에서 나타낸다. 모드의 세트로는, 천이 프레임들을 위한 최대 레이트의 시간 영역 모드 (T 모드); 유성음 프레임들을 위한 1/2 레이트의 주파수 영역 모드 (V 모드); 무성음 프레임들을 위한 1/4 레이트의 시간 영역 모드 (U 모드); 및 잡음 프레임들을 위한 1/8 레이트의 시간 영역 모드 (N 모드) 가 있다.
음성 신호나 그에 해당하는 LP 잔여는 도 9 에 나타낸 단계들에 따라 인코딩될 수 있음을 당업자는 알 수 있다. 잡음, 무성음, 천이, 및 유성음의 파형 특성은, 도 10a 의 그래프에서 시간의 함수로 간주할 수 있다. 잡음, 무성음, 천이, 및 무성음 LP 잔여의 파형 특성은 도 10b 의 그래프에서 시간의 함수로 간주할 수 있다.
단계 700 에서는, 입력 음성 잔여, S(n) 에 4 개의 모드 (T,V,U 또는 N) 중 어떤 모드를 적용할지에 대해 개방 루프 모드 결정이 이루어진다. T 모드를 적용해야 하는 경우, 음성 잔여는, 단계 702 에서 T 모드 즉, 최대 레이트로 시간 영역에서 처리된다. U 모드를 적용해야 하는 경우, 음성 잔여는, 단계 704 에서 U 모드 즉, 1/4 레이트로 시간 영역에서 처리된다. N 모드를 적용해야 하는 경우, 음성 잔여는, 단계 706 에서 N 모드 즉, 1/8 레이트로 시간 영역에서 처리된다. V 모드를 적용해야 하는 경우, 음성 잔여는, 단계 708 에서 V 모드 즉, 1/2 레이트로 주파수 영역에서 처리된다.
단계 710 에서는, 단계 708 에서 인코딩된 음성을 디코딩하고 입력 음성 잔여, S(n) 와 비교하여, 품질 척도 (performance measure) D 를 계산한다. 단계 712 에서는, 품질 척도 D 와 소정의 문턱값 T 를 비교한다. 품질 척도 D 가 그 소정의 문턱값 T 보다 크거나 같으면, 단계 708 의 스펙트럼 인코딩된 음성 잔여의 송신을 단계 714 에서 허가한다. 다른 한편, 품질 척도 D 가 문턱값 T 보다 작으면, 입력 음성 잔여 S(n) 은, 단계 716 에서 T 모드로 처리된다. 다른 실시예에서는, 품질 척도를 계산하지 않으며, 문턱값도 정의되지 않는다. 그 대신, 소정 개수의 음성 잔여 프레임을 V 모드로 처리하면, 다음 프레임은 T 모드로 처리한다.
바람직하기로는, 도 9 의 결정 단계들에 의해, 낮은 비트 레이트의 V 모드로 유성음 세그먼트들의 주기성을 이용하고, V 모드가 적절히 수행되지 않을 때에는 최대 레이트로 전환하여 품질의 저하를 막으면서, 필요한 경우에만 높은 레이트의 T 모드를 사용할 수 있는 것이다. 따라서, 최대 레이트보다 현저히 낮은 평균적인 레이트로, 최대 레이트의 음성 품질에 근접하는 극도로 높은 음성 품질을 생성할 수 있다. 또한, 품질 척도와 문턱값을 선택함으로써, 소기의 음성 품질을 제어할 수 있다.
또한, T 모드로 갱신 (update) 하면, 모델 위상 궤도 (track) 가 입력 음성의 위상 궤도에 가깝게 유지됨으로써 다음에 적용하는 V 모드의 성능이 향상된다. V 모드의 성능이 부적합하면, 단계 710 과 712 의 폐쇄 루프 성능 체크 단계가 T 모드로 전환되어, 초기 위상값을 "갱신 (refresh)" 함으로써 모델 위상 궤적을 원래의 입력 음성 위상 궤적에 다시 근접시켜, 후속의 V 모드 처리 성능을 향상시킨다. 예를 들면, 도 11a 내지 도 11c 에 나타낸 바와 같이, 시작점으로부터 5 번째 프레임은, PSNR 왜곡 척도를 사용함으로써 밝혀진 바와 같이, V 모드에서 적절히 기능하지 않고 있다. 따라서, 폐쇄 루프 결정 및 갱신이 없다면, 모델 위상 궤적이 원래의 입력 음성 위상 궤적으로부터 크게 이탈하게 되어, 도 11c 에 나타낸 바와 같이, PSNR 의 열화가 심각해진다. 또한, V 모드로 다음에 처리될 프레임에 대한 성능이 열화된다. 그러나, 폐쇄 루프 결정 단계에서, 도 11a 에 나타낸 바와 같이, 5 번째 프레임이 T 모드 처리단계로 전환된다. 도 11b 에서, PSNR 의 향상으로부터 알 수 있는 바와 같이, 갱신에 의해서 그 5 번째 프레임의 품질 (performance) 이 현저히 향상된다. 또한, V 모드에서 처리되는 후속하는 프레임들의 품질 (performance) 도 향상된다.
도 9 에 나타낸 결정 단계들은, 극도로 정확한 초기 위상 추정값을 제공함으로써 V 모드 표현 (representation) 의 품질 (quality) 을 향상시켜, 얻어지는 V 모드 합성 음성 잔여 신호를 원래의 입력 음성 잔여, S(n) 에 정확하게 시간 정렬시킬 수 있게 한다. 가장 먼저 V 모드 처리되는 음성 잔여 세그먼트에 대한 초기 위상은, 바로 직전에 디코딩된 프레임으로부터 다음과 같은 방식으로 유도한다. 각각의 고조파에 대해서, 초기 위상은, 이전 프레임이 V 모드로 처리되었다면 그 이전 프레임의 최종적 추정 위상과 동일하게 세팅한다. 각각의 고조파에 대해서, 그 이전 프레임이 T 모드로 처리되었다면, 초기 위상은 그 이전 프레임의 실제 고조파 위상과 동일하게 세팅한다. 이전 프레임의 실제 고조파 위상은, 이전 프레임 전체를 사용하여 과거에 디코딩된 잔여에 DFT 를 취함으로써 유도할 수 있다. 다른 방법으로는, 이전 프레임의 다양한 피치 주기들을 처리함으로써 피치 동기 방식으로 과거에 디코딩된 프레임에 DFT 를 취하여 이전 프레임의 실제 고조파 위상을 유도할 수도 있다.
도 12 를 참조하여 설명하면, 일 실시예에서, 유사 주기 신호 S 의 연속적인 프레임들이 분석 로직 (800) 에 입력된다. 이 유사 주기 신호 S 는, 예를 들어, 음성 신호일 수 있다. 그 신호의 어떤 프레임들은 주기적이고, 그 신호의 어떤 프레임들은 비주기적이다. 분석 로직 (800) 은 그 신호의 진폭을 측정하여, 그 측정된 진폭 A 을 출력한다. 또한, 분석 로직 (800) 은 그 신호의 위상도 측정하여, 그 측정된 위상 P 를 출력한다. 진폭 A 는 합성 로직 (802) 에 제공된다. 또한, 합성 로직 (802) 에는 위상값 POUT도 제공된다. 위상값 POUT는 그 측정된 위상값 P 일 수도 있고, 다른 방법에서는, 후술하는 바와 같은, 추정된 위상값 PEST일 수도 있다. 합성 로직 (802) 은, 신호를 합성하여 합성된 신호 SSYNTH를 출력한다.
또한, 유사 주기 신호 S 는 분류 로직 (804) 에도 제공되어, 분류 로직 (804) 에 의해 주기 신호나 비주기 신호로서 분류된다. 그 신호의 비주기적 프레임들에 대해서, 합성 로직 (802) 에 제공되는 위상 POUT는 측정된 위상 P 와 동일하게 세팅된다. 그 신호의 주기적인 프레임들은 폐쇄 루프 위상 추정 로직 (806) 에 제공된다. 또한, 유사 주기 신호 S 는 폐쇄 루프 위상 추정 로직 (806) 에도 제공된다. 폐쇄 루프 위상 추정 로직 (806) 은 위상을 추정하여 추정된 위상 PEST를 출력한다. 이렇게 추정된 위상은, 폐쇄 루프 위상 추정 로직 (806) 에 입력되는 초기 위상값 PINIT에 기초한다. 이 초기 위상값은, 분류 로직 (804) 에 의해 이전 프레임이 주기적 프레임으로 분류되었다면, 그 신호의 이전 프레임의 최종적으로 추정된 위상값이다. 그 이전 프레임이 분류 로직 (804) 에 의해 비주기적인 것으로 분류되었다면, 초기 위상값은 이전 프레임의 측정된 위상값 P 이다.
추정된 위상 PEST는 오차 계산 로직 (808) 에 제공된다. 또한, 유사 주기 신호 S 는 오차 계산 로직 (808) 에도 제공된다. 오차 계산 로직 (808) 에는 그 측정된 위상 P 도 제공된다. 또한, 오차 계산 로직 (808) 은, 합성 로직 (802) 에 의해 합성된 합성 신호 SSYNTH' 도 수신한다. 합성된 신호 SSYNTH' 는, 합성 로직 (802) 로 입력되는 위상 POUT이 추정된 위상 PEST와 동일한 경우에 합성 로직 (802) 에 의해 합성된 합성 신호 SSYNTH이다. 오차 계산 로직 (808) 은, 그 측정된 위상과 그 추정된 위상값을 비교함으로써, 왜곡 척도 또는 오차 척도 E 를 계산한다. 다른 실시예에서는, 오차 계산 로직 (808) 이, 그 유사 주기 신호의 입력 프레임과 그 유사 주기 신호의 합성된 프레임을 비교함으로써, 왜곡 척도 또는 오차 척도 E 를 계산한다.
이렇게 계산된 왜곡 척도 E 는 비교 로직 (810) 에 제공된다. 비교 로직 (810) 은 왜곡 척도 E 와 소정의 문턱값 T 를 비교한다. 왜곡 척도 E 가 그 소정의 문턱값 T 보다 크면, 합성 로직 (802) 에 제공되는 위상값 POUT는 그 측정된 위상 P 와 동일하게 세팅된다. 한편, 왜곡 척도 E 가 그 소정의 문턱값 T 보다 크지 않으면, 합성 로직 (802) 에 제공되는 위상값 POUT는 그 추정된 위상 PEST와 동일하게 세팅된다.
이상, 유사 주기 신호의 위상을 추적하는 신규의 방법 및 장치를 설명하였다. 당업자는, 여기서 개시한 실시예들과 관련하여 설명한 다양한 예시적 로직 블록들 및 알고리즘 단계들은, DSP (digital signal processor), ASIC(application specific integrated circuit), 개별 게이트나 트랜지스터 로직, 예를 들어 레지스터나 FIFO 와 같은 개별 하드웨어 콤포넌트들, 일 세트의 펌웨어 명령어들을 실행하는 프로세서, 또는 종래의 모든 프로그램가능 소프트웨어 모듈 및 프로세서로 구현되거나 수행될 수 있음을 알 수 있다. 프로세서는 마이크로 프로세서인 것이 바람직할 수 있으나, 다른 방법으로는, 종래의 모든 프로세서, 콘트롤러, 마이크로 콘트롤러, 또는 상태 기계일 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래쉬 메모리, 레지스터들, 또는 당업계에 공지된 다른 모든 형태의 기록가능 저장 매체에 상주할 수 있다. 또한, 당업자는, 이상의 설명 전체를 통해 언급한 데이터, 명령어, 정보, 신호, 비트, 심볼, 및 칩은, 전압, 전류, 전자기파, 자기장 또는 자기 입자, 광 필드 (field) 또는 광 입자, 또는 이들의 모든 조합으로 표현될 수 있음을 알 수 있다.
이상으로, 본 발명의 바람직한 실시예들을 도시하고 설명하였다. 그러나, 당업자는 본 발명의 사상과 범위에서 벗어나지 않고 여기서 개시한 실시예들을 수없이 변형할 수 있음을 알 수 있다. 따라서, 본 발명은 다음의 청구범위에 의해서만 제한된다.

Claims (27)

  1. 어떤 프레임들에서는 주기적이고 어떤 프레임들에서는 비주기적인 신호의 위상을 추적하는 방법으로서,
    상기 신호가 주기적인 프레임들에 대해서 상기 신호의 위상을 추정하는 단계;
    그 추정된 위상의 품질 (performance) 을 폐쇄 루프 성능 척도로 모니터하는 단계; 및
    상기 신호가 주기적이고 상기 추정된 위상의 품질이 소정의 문턱값 아래로 떨어지는 프레임들에 대해서 상기 신호의 위상을 측정하는 단계를 포함하는 것을 특징으로 하는 위상 추적 방법.
  2. 제 1 항에 있어서,
    상기 신호가 비주기적인 프레임들에 대해서 상기 신호의 위상을 측정하는 단계를 더 포함하는 것을 특징으로 하는 위상 추적 방법.
  3. 제 1 항에 있어서,
    주어진 프레임에 대해서 상기 신호가 주기적인지 비주기적인지를 개방 루프 주기성 결정으로 판단하는 단계를 더 포함하는 것을 특징으로 하는 위상 추적 방법.
  4. 제 1 항에 있어서,
    상기 추정 단계는, 고조파 모델에 따라 상기 위상의 다항식 표현 (polynomial representation) 을 구성하는 단계를 포함하는 것을 특징으로 하는 위상 추적 방법.
  5. 제 1 항에 있어서,
    상기 추정 단계는, 그 이전의 프레임이 주기적이었을 경우 상기 이전 프레임의 추정된 최종 위상값과 동일하게 초기 위상값을 세팅하는 단계를 포함하는 것을 특징으로 하는 위상 추적 방법.
  6. 제 1 항에 있어서,
    상기 추정 단계는, 그 이전의 프레임이 비주기적이었을 경우 상기 이전 프레임의 측정된 위상값과 동일하게 초기 위상값을 세팅하는 단계를 포함하는 것을 특징으로 하는 위상 추적 방법.
  7. 제 6 항에 있어서,
    상기 측정된 위상값은 상기 이전 프레임의 DFT (discrete Fourier transform) 로부터 구해지는 것을 특징으로 하는 위상 추적 방법.
  8. 제 1 항에 있어서,
    상기 추정 단계는, 그 이전 프레임이 주기적이었고 상기 이전 프레임에 대해 추정된 위상의 품질이 상기 소정의 문턱값 아래로 떨어졌을 경우, 상기 이전 프레임의 측정된 위상값과 동일하게 초기 위상값을 세팅하는 단계를 포함하는 것을 특징으로 하는 위상 추적 방법.
  9. 제 8 항에 있어서,
    상기 측정된 위상값은 상기 이전 프레임의 DFT 로부터 구해지는 것을 특징으로 하는 위상 추적 방법.
  10. 어떤 프레임들에서는 주기적이고 어떤 프레임들에서는 비주기적인 신호의 위상을 추적하는 장치로서,
    상기 신호가 주기적인 프레임들에 대해서 상기 신호의 위상을 추정하는 수단;
    그 추정된 위상의 품질을 폐쇄 루프 성능 척도로 모니터하는 수단; 및
    상기 신호가 주기적이고 상기 추정된 위상의 품질이 소정의 문턱값 아래로 떨어지는 프레임들에 대해서 상기 신호의 위상을 측정하는 수단을 구비하는 것을 특징으로 하는 위상 추적 장치.
  11. 제 10 항에 있어서,
    상기 신호가 비주기적인 프레임들에 대해서 상기 신호의 위상을 측정하는 수단을 더 구비하는 것을 특징으로 하는 위상 추적 장치.
  12. 제 10 항에 있어서,
    주어진 프레임에 대해서 상기 신호가 주기적인지 비주기적인지를 개방 루프 주기성 결정으로 판단하는 수단을 더 구비하는 것을 특징으로 하는 위상 추적 장치.
  13. 제 10 항에 있어서,
    상기 추정 수단은, 고조파 모델에 따라 상기 위상의 다항식 표현을 구성하는 수단을 구비하는 것을 특징으로 하는 위상 추적 장치.
  14. 제 10 항에 있어서,
    상기 추정 수단은, 그 이전의 프레임이 주기적이었을 경우 상기 이전 프레임의 추정된 최종 위상값과 동일하게 초기 위상값을 세팅하는 수단을 구비하는 것을 특징으로 하는 위상 추적 장치.
  15. 제 10 항에 있어서,
    상기 추정 수단은, 그 이전의 프레임이 비주기적이었을 경우 상기 이전 프레임의 측정된 위상값과 동일하게 초기 위상값을 세팅하는 수단을 구비하는 것을 특징으로 하는 위상 추적 장치.
  16. 제 15 항에 있어서,
    상기 측정된 위상값은 상기 이전 프레임의 DFT 로부터 구해지는 것을 특징으로하는 위상 추적 장치.
  17. 제 10 항에 있어서,
    상기 추정 수단은, 그 이전의 프레임이 주기적이었고 상기 이전 프레임에 대해 추정된 위상의 품질이 상기 소정의 문턱값 아래로 떨어졌을 경우, 상기 이전 프레임의 측정된 위상값과 동일하게 초기 위상값을 세팅하는 수단을 구비하는 것을 특징으로 하는 위상 추적 장치.
  18. 제 17 항에 있어서,
    상기 측정된 위상값은 상기 이전 프레임의 DFT 로부터 구해지는 것을 특징으로 하는 위상 추적 장치.
  19. 어떤 프레임들에서는 주기적이고 어떤 프레임들에서는 비주기적인 신호의 위상을 추적하는 장치로서,
    상기 신호가 주기적인 프레임들에 대해서 상기 신호의 위상을 추정하도록 구성되는 로직;
    그 추정된 위상의 품질을 폐쇄 루프 성능 척도로 모니터하도록 구성되는 로직; 및
    상기 신호가 주기적이고 상기 추정된 위상의 품질이 소정의 문턱값 아래로 떨어지는 프레임들에 대해서 상기 신호의 위상을 측정하도록 구성되는 로직을 구비하는 것을 특징으로 하는 위상 추적 장치.
  20. 제 19 항에 있어서,
    상기 신호가 비주기적인 프레임들에 대해서 상기 신호의 위상을 측정하도록 구성되는 로직을 더 구비하는 것을 특징으로 하는 위상 추적 장치.
  21. 제 19 항에 있어서,
    주어진 프레임에 대해서 상기 신호가 주기적인지 비주기적인지를 개방 루프 주기성 결정으로 판단하도록 구성되는 로직을 더 구비하는 것을 특징으로 하는 위상 추적 장치.
  22. 제 19 항에 있어서,
    상기 신호가 주기적인 프레임들에 대해서 상기 신호의 위상을 추정하도록 구성되는 상기 로직은, 고조파 모델에 따라 상기 위상의 다항식 표현을 구성하도록 구성되는 로직을 구비하는 것을 특징으로 하는 위상 추적 장치.
  23. 제 19 항에 있어서,
    상기 신호가 주기적인 프레임들에 대해서 상기 신호의 위상을 추정하도록 구성되는 상기 로직은, 그 이전의 프레임이 주기적이었을 경우 상기 이전 프레임의 추정된 최종 위상값과 동일하게 초기 위상값을 세팅하도록 구성되는 로직을 구비하는 것을 특징으로 하는 위상 추적 장치.
  24. 제 19 항에 있어서,
    상기 신호가 주기적인 프레임들에 대해서 상기 신호의 위상을 추정하도록 구성되는 상기 로직은, 그 이전의 프레임의 비주기적이었을 경우 상기 이전 프레임의 측정된 위상값과 동일하게 초기 위상값을 세팅하도록 구성되는 로직을 구비하는 것을 특징으로 하는 위상 추적 장치.
  25. 제 24 항에 있어서,
    상기 측정된 위상값은 상기 이전 프레임의 DFT 로부터 구해지는 것을 특징으로 하는 위상 추적 장치.
  26. 제 19 항에 있어서,
    상기 신호가 주기적인 프레임들에 대해서 상기 신호의 위상을 추정하도록 구성되는 상기 로직은, 그 이전의 프레임이 주기적이었고 상기 이전 프레임에 대해 추정된 위상의 품질이 상기 소정의 문턱값 아래로 떨어졌을 경우, 상기 이전 프레임의 측정된 위상값과 동일하게 초기 위상값을 세팅하도록 구성되는 로직을 구비하는 것을 특징으로 하는 위상 추적 장치.
  27. 제 26 항에 있어서,
    상기 측정된 위상값은 상기 이전 프레임의 DFT 로부터 구해지는 것을 특징으로 하는 위상 추적 장치.
KR1020027011075A 2000-02-29 2000-02-29 유사주기 신호의 위상을 추적하는 방법 및 장치 KR100711040B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2000/005141 WO2002003381A1 (en) 2000-02-29 2000-02-29 Method and apparatus for tracking the phase of a quasi-periodic signal

Publications (2)

Publication Number Publication Date
KR20020081352A true KR20020081352A (ko) 2002-10-26
KR100711040B1 KR100711040B1 (ko) 2007-04-24

Family

ID=21741099

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027011075A KR100711040B1 (ko) 2000-02-29 2000-02-29 유사주기 신호의 위상을 추적하는 방법 및 장치

Country Status (8)

Country Link
EP (1) EP1259955B1 (ko)
JP (1) JP4567289B2 (ko)
KR (1) KR100711040B1 (ko)
CN (1) CN1262991C (ko)
AU (1) AU2000233852A1 (ko)
DE (1) DE60025471T2 (ko)
HK (1) HK1055834A1 (ko)
WO (1) WO2002003381A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103811011B (zh) * 2012-11-02 2017-05-17 富士通株式会社 音频弦波检测方法和装置
CN104347082B (zh) * 2013-07-24 2017-10-24 富士通株式会社 弦波帧检测方法和设备以及音频编码方法和设备
EP2963645A1 (en) 2014-07-01 2016-01-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Calculator and method for determining phase correction data for an audio signal
CN108776319B (zh) * 2018-04-25 2022-11-08 中国电力科学研究院有限公司 一种光纤电流互感器数据准确性自诊断方法与系统
CN109917360A (zh) * 2019-03-01 2019-06-21 吉林大学 一种混叠脉冲的参差pri估计方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1986005617A1 (en) * 1985-03-18 1986-09-25 Massachusetts Institute Of Technology Processing of acoustic waveforms
CA1332982C (en) * 1987-04-02 1994-11-08 Robert J. Mcauley Coding of acoustic waveforms
US5023910A (en) * 1988-04-08 1991-06-11 At&T Bell Laboratories Vector quantization in a harmonic speech coding arrangement
JPH02288739A (ja) * 1989-04-28 1990-11-28 Fujitsu Ltd 音声符号復号化伝送方式
US5765127A (en) * 1992-03-18 1998-06-09 Sony Corp High efficiency encoding method
US5787387A (en) 1994-07-11 1998-07-28 Voxware, Inc. Harmonic adaptive speech coding method and system
JP3680374B2 (ja) * 1995-09-28 2005-08-10 ソニー株式会社 音声合成方法
JPH10214100A (ja) * 1997-01-31 1998-08-11 Sony Corp 音声合成方法
US6233550B1 (en) * 1997-08-29 2001-05-15 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
JPH11224099A (ja) * 1998-02-06 1999-08-17 Sony Corp 位相量子化装置及び方法

Also Published As

Publication number Publication date
JP4567289B2 (ja) 2010-10-20
CN1262991C (zh) 2006-07-05
CN1437746A (zh) 2003-08-20
DE60025471T2 (de) 2006-08-24
EP1259955B1 (en) 2006-01-11
AU2000233852A1 (en) 2002-01-14
DE60025471D1 (de) 2006-04-06
HK1055834A1 (en) 2004-01-21
KR100711040B1 (ko) 2007-04-24
EP1259955A1 (en) 2002-11-27
WO2002003381A1 (en) 2002-01-10
JP2004502203A (ja) 2004-01-22

Similar Documents

Publication Publication Date Title
US6640209B1 (en) Closed-loop multimode mixed-domain linear prediction (MDLP) speech coder
JP4907826B2 (ja) 閉ループのマルチモードの混合領域の線形予測音声コーダ
KR100895589B1 (ko) 로버스트한 음성 분류를 위한 방법 및 장치
US6584438B1 (en) Frame erasure compensation method in a variable rate speech coder
EP1279167B1 (en) Method and apparatus for predictively quantizing voiced speech
US20070219787A1 (en) Selection of encoding modes and/or encoding rates for speech compression with open loop re-decision
KR100804888B1 (ko) 프레임 에러에 대한 민감도를 감소시키기 위하여 코딩 방식선택 패턴을 사용하는 예측 음성 코더
EP1181687B1 (en) Multipulse interpolative coding of transition speech frames
EP1617416B1 (en) Method and apparatus for subsampling phase spectrum information
US6449592B1 (en) Method and apparatus for tracking the phase of a quasi-periodic signal
KR100711040B1 (ko) 유사주기 신호의 위상을 추적하는 방법 및 장치
JP2011090311A (ja) 閉ループのマルチモードの混合領域の線形予測音声コーダ

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

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130329

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190327

Year of fee payment: 13