KR100563016B1 - 가변비트레이트음성전송시스템 - Google Patents

가변비트레이트음성전송시스템 Download PDF

Info

Publication number
KR100563016B1
KR100563016B1 KR1019980709891A KR19980709891A KR100563016B1 KR 100563016 B1 KR100563016 B1 KR 100563016B1 KR 1019980709891 A KR1019980709891 A KR 1019980709891A KR 19980709891 A KR19980709891 A KR 19980709891A KR 100563016 B1 KR100563016 B1 KR 100563016B1
Authority
KR
South Korea
Prior art keywords
bit rate
data frames
signal
speech
frames
Prior art date
Application number
KR1019980709891A
Other languages
English (en)
Other versions
KR20000016318A (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 코닌클리케 필립스 일렉트로닉스 엔.브이.
Priority to KR1019980709891A priority Critical patent/KR100563016B1/ko
Publication of KR20000016318A publication Critical patent/KR20000016318A/ko
Application granted granted Critical
Publication of KR100563016B1 publication Critical patent/KR100563016B1/ko

Links

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/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques

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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

가변 비트 레이트 음성 인코더(4)에서, 프레임 수단(20)에 의해 입력 음성 신호로부터 음성 샘플의 프레임을 얻는다. 상기 음성 샘플의 프레임으로부터, LPC 파라미터와 같은 LPC 분석 파라미터는 분석 수단(22)에 의해 결정되고, 코드북 인덱스 및 코드북 이득에 의해 나타내는 여기 신호는 음성 수단(36)에 의해 결정된다. 상기 LPC 계수들 및 여기 파라미터는 프레임으로 수신기(12)에 전송된다. 설정한 비트 레이트(R)에 따라 상기 음성 인코더의 비트 레이트를 가변하기 위해, 상기 음성 인코더(4)에는, LPC 계수들을 전달하는 전송된 프레임들의 프랙션을 결정하는 제어 수단(30)이 구비되고, 상기 프랙션은 0.5 내지 1로 가변할 수 있다. 상기 나머지 프레임들의 LPC 계수들은 상기 수신기(12)의 보간기(85)에 의한 보간으로 결정된다. 본 발명의 실시예에 따르면, 주변 값들로부터 보간된 값과 가장 다른 상기 LPC 계수들이 상기 수신기(12)에 전송된다.

Description

가변 비트 레이트 음성 전송 시스템
본 발명은 음성 인코더를 구비한 전송기를 포함하는 전송 시스템에 관한 것으로서, 상기 음성 인코더는 입력 음성 신호로부터 분석 계수들(analysis coefficients)을 결정하는 분석 수단을 포함하고, 상기 전송기는 음성 신호를 나타내는 데이터 프레임들을 전송 매체를 통해 수신기에 전송하며, 상기 프레임들의 프랙션(fraction)은 상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하고, 상기 수신기는 음성 신호를 나타내는 데이터 프레임들로부터 재구성된 음성 신호를 도출하는 음성 디코더를 포함한다.
본 발명은 또한 전송기, 음성 인코더 및 음성 코딩 방법에 관한 것이다.
서문에 따른 전송 시스템은 미국 특허 제 4,379,949 호로부터 공지되어 있다.
이러한 전송 시스템들은, 음성 신호들이 전송 매체를 통해 제한된 전송 용량으로 전송되어야 하거나, 저장 매체들 상에 제한된 저장 용량으로 저장되어야 하는 응용들에 이용된다. 상기 응용들의 예로는, 인터넷을 통한 음성 신호들의 전송, 이동 전화로부터 기지국으로 또는 그 역으로의 음성 신호 전송, 및 하드 디스크 드라이브 상 또는 고형 메모리의 CD-ROM 상의 음성 신호들의 저장 등을 들 수 있다.
음성 인코더에서, 음성 신호는, 프레임으로도 알려진 음성 샘플의 블록에 대한 복수의 분석 계수들을 결정하는 분석 수단에 의해 분석된다. 이들 분석 계수들의 그룹은 음성 신호의 단시간 스펙트럼을 나타낸다(describe). 분석 계수의 다른 실시예는 음성 신호의 피치(pitch)를 나타내는 계수이다. 분석 계수들은 전송 매체를 통해 수신기로 전송되며, 이들 분석 계수들은 합성 필터에 대한 계수들로서 이용된다.
분석 파라미터들 외에도, 음성 인코더는 음성 샘플들의 프레임 당 다수의 여기 시퀀스들(excitation sequences)(예를 들어, 4)을 결정한다. 여기 시퀀스에 의해 걸쳐진 시간 간격을 서브 프레임이라 한다. 음성 인코더는, 합성 필터가 상기 언급한 분석 계수를 이용하여 상기 여기 시퀀스들로 여기될 때, 최상의 음성 품질을 유발하는 여기 신호를 찾도록 배열된다. 상기 여기 시퀀스들의 표시는 전송 채널을 통해 수신기에 전송된다. 수신기에서, 여기 시퀀스들은 수신된 신호로부터 복구되어, 합성 필터의 입력에 인가된다. 합성 필터의 출력에서 합성 음성 신호를 얻을 수 있다.
특정 품질을 갖는 음성 신호를 나타내는데 필요한 비트 레이트는 음성 컨텐트에 의존한다. 분석 계수들이 연장된 시간 기간에 걸쳐 실질적으로 일정한 경우, 분석 계수들을 전송하는데 필요한 비트 레이트는 감소될 수 있다. 상기 언급된 미국 특허에 따른 전송 시스템에서 이러한 가능성이 이용된다. 상기 특허는, 분석 계수들이 매 프레임마다 전송되지 않는 음성 인코더를 구비한 전송 시스템을 개시하고 있다. 분석 계수들은, 프레임 내의 실제 분석 계수들(actual analysis coefficients) 중 적어도 하나와, 주변 프레임들로부터의 분석 계수들의 보간(interpolation)에 의해 얻어진 대응하는 분석 계수 사이의 차가 미리 결정된 임계값을 초과할 때만 전송된다. 이는 음성 신호의 전송에 필요한 비트 레이트의 감소를 유발한다. 공지된 전송 시스템에서, 비트 레이트는 임계값을 증가 또는 감소시킴으로써 비트 레이트의 감소 또는 증가를 유발하는 임의의 값으로 설정될 수 있다. 그러나 평균 비트 레이트는 여전히 음성 컨텐트에 강하게 의존한다.
도 1은 본 발명이 이용될 수 있는 전송 시스템.
도 2는 본 발명에 따른 음성 인코더(4)의 실시예.
도 3은 도 2에 따른 비트 레이트 제어기(30)의 제 1 실시예.
도 4는 도 2에 따른 비트 레이트 제어기(30)의 제 2 실시예.
도 5는 도 1의 음성 디코더(18)의 실시예.
본 발명의 목적은, 음성 컨텐트와 실질적으로 무관한 비트 레이트를 임의의 값들로 설정할 수 있는 서문에 따른 전송 시스템을 제공하는 것이다.
이를 위해 본 발명에 따른 전송 시스템은, 음성 인코더가, 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 프레임들의 프랙션을, 설정한 비트 레이트에 따라 제어하는 제어 수단을 포함하는 것을 특징으로 한다. 설정한 비트 레이트를 지정하고, 상기 설정한 비트 레이트에 응답하여 분석 계수들에 관한 정보를 전달하는 프레임들의 실제 프랙션(actual fraction)을 제어함으로써, 음성 컨텐트와 실질적으로 무관한 평균 비트 레이트를 얻는 것이 가능하다. 설정한 비트 레이트를 변경함으로써 실행 시간 동안 평균 비트 레이트를 변경하는 것도 가능하다.
실제 프랙션은 상이한 방법들로 제어될 수 있다. 첫 번째 방법은, 각 프레임에 대해 단계들 N으로 증가되는 모듈로-M 카운터를 이용하는 것이다. 카운터가 오버플로할 때마다, 상기 분석 계수들은 프레임 내에 포함된다. 따라서 분석 계수들 을 전달하는 프레임들의 프랙션은 N/M이 된다.
본 발명의 실시예는, 제어 수단이, 실제 비트 레이트에 대한 측정(measure) 과 설정한 비트 레이트에 대한 측정을 비교하는 비교 수단을 포함하고, 실제 비트 레이트에 대한 측정이 설정한 비트 레이트에 대한 측정보다 더 작으면, 상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 프레임들의 실제 프랙션을 증가시키고, 실제 비트 레이트에 대한 측정이 설정한 비트 레이트에 대한 측정보다 더 크면, 상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들 보다 더 많이 전달하는 프레임들의 실제 프랙션을 감소시키도록 배열되는 것을 특징으로 한다.
이 실시예에 따르면, 코딩된 음성 신호의 평균 비트 레이트가 설정한 비트 레이트와 실질적으로 동일함이 항상 보증된다.
본 발명의 또 다른 실시예는, 제어 수단이, 임계값을 초과하는 주변 프레임들 내에 전송된 분석 파라미터들로부터 보간된 값들로부터의 거리 측정을 갖는 분석 파라미터들을 나타내도록 배열되며, 실제 비트 레이트에 대한 측정이 설정한 비트 레이트에 대한 측정보다 더 작으면 임계값을 감소시키고, 실제 비트 레이트에 대한 측정이 설정한 비트 레이트에 대한 측정보다 더 크면 임계값을 증가시키도록 배열되는 것을 특징으로 한다.
상기 실시예에서, 보간된 값들과 가장 다른 분석 파라미터들이 전송된다. 실제 비트 레이트가 설정한 비트 레이트보다 더 크면 임계값을 증가시키고, 그렇지 않으면 임계값을 감소시킴으로써, 평균 비트 레이트는 설정한 비트 레이트와 실질적으로 동일하게 된다.
본 발명의 또 다른 실시예는, 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 프레임들의 프랙션이 0.5보다 크거나 같고 1보다 작거나 같은 것을 특징으로 한다.
실험에 따르면, 0.5와 1 사이의 기준 프랙션들은 코딩 품질에서 실질적인 손상 없이 충분한 제어 범위를 유발한다.
본 발명의 또 다른 실시예는, 음성 인코더는, 설정한 비정밀 비트 레이트(coarse bitrare setting)에 응답하여, 복수의 프레임 길이들 중 하나의 프레임 길이와, 복수의 프레임 당 여기 서브 프레임들 중 하나의 프레임 당 여기 서브 프레임들을 선택하도록 배열되는 것을 특징으로 한다.
설정한 비트 레이트에 응답하여 복수의 가능한 값들 중 프레임 길이 및 서브 프레임들의 수를 선택함으로써, 비트 레이트의 범위가 실질적으로 증가하는 연속적인 가변 비트 레이트를 얻을 수 있는 것이 가능하다.
본 발명의 또 다른 실시예는, 10ms의 프레임 길이에 대한 복수의 여기 서브프레임들은 적어도 값 4를 포함하고, 15ms의 프레임 길이에 대한 복수의 여기 서브프레임들은 적어도 값들 6, 8 및 10을 포함하는 것을 특징으로 한다.
상기 언급한 파라미터들을 이용하면, 13.6kbit/s 내지 21.8kbit/s로 가변될 수 있는 연속적인 가변 비트 레이트를 갖는 음성 인코더를 얻는 것이 가능하다.
도 1에 따른 전송 시스템에서, 인코딩될 음성 신호가 전송기(2)에서 음성 인코더(4)의 입력에 인가된다. 분석 계수들을 나타내는 출력 신호 LPC를 전달하는 음성 인코더(4)의 제 1 출력은 멀티플렉서(6)의 제 1 입력에 접속된다. 출력 신호 F를 전달하는 음성 인코더(4)의 제 2 출력은 멀티플렉서(6)의 제 2 입력에 접속된다. 신호 F는 신호 LPC가 전송되어야 하는지의 여부를 나타내는 플래그를 나타낸다. 신호 EX를 전달하는 음성 인코더(4)의 제 3 출력은 멀티플렉서(6)의 제 3 입력에 접속된다. 신호 EX는 음성 디코더의 합성 필터에 대한 여기 신호를 나타낸다. 비트 레이트 제어 신호 R은 음성 인코더(4)의 제 2 입력에 인가된다.
멀티플렉서(6)의 출력은 전송 수단(8)의 입력에 접속된다. 전송 수단(8)의 출력은 전송 매체(10)를 통해 수신기(12)의 입력에 접속된다.
수신기(12)에서, 전송 매체(10)의 출력은 수신 수단(14)의 입력에 접속된다. 수신 수단(14)의 출력은 디멀티플렉서(16)의 입력에 접속된다. 신호 LPC를 전달하는 디멀티플렉서(16)의 제 1 출력은 음성 디코딩 수단(18)의 제 1 입력에 접속되고, 신호 EX를 전달하는 디멀티플렉서(16)의 제 2 출력은 음성 디코딩 수단(18)의 제 2 입력에 접속된다. 음성 디코딩 수단(18)의 출력에서 재구성된 음성 신호를 얻을 수 있다. 디멀티플렉서(16)와 음성 디코딩 수단(18)의 조합이 본 발명의 개념에 따른 음성 디코더를 구성한다.
CELP 유형의 음성 인코더가 이용한다는 가정 하에서 본 발명에 따른 전송 시스템의 동작이 설명하지만, 본 발명의 범위가 이에 한정되는 것은 아니다.
음성 인코더(4)는 음성 신호의 샘플들의 프레임들로부터 인코딩된 음성 신호를 도출하도록 배열된다. 음성 인코더는, 예를 들면 음성 신호들의 샘플들의 프레임들로부터 음성 신호의 단기간 스펙트럼을 나타내는 분석 계수를 도출한다. 일반적으로 LPC 계수들 또는 변환된 표시가 이용된다. 유용한 표시들로는, 로그 영역 비율들(LARs : Log Area Ratios), 반사 계수의 아크사인, 또는 라인 스펙트럼 쌍들(LSPs : Line Spectral Pairs)이라고도 불리는 라인 스펙트럼 주파수들(LSFs : Line Spectral Frequencies) 등이 있다. 분석 계수들의 표시는 음성 인코더(4)의 제 1 출력에서의 신호 LPC로서 이용 가능하다.
음성 인코더(4)에서, 여기 신호는, 하나 또는 그 이상의 고정적 코드북들(fixed codebooks) 및 하나의 적응적 코드북(adaptive codebook)의 가중된 출력 신호들의 합과 같다. 고정적 코드북의 출력 신호들은 고정적 코드북 인덱스로 표시되고, 고정적 코드북에 대한 가중 인자는 고정적 코드북 이득(fixed codebook gain)에 의해 표시된다. 적응적 코드북의 출력 신호들은 적응적 코드북 인덱스에 의해 표시되고, 적응적 코드북에 대한 가중 인자는 적응적 코드북 이득(adaptive codebook gain)에 의해 표시된다.
코드북 인덱스들 및 이득들은 합성 방법에 의한 분석에 의해 결정되는데, 즉, 코드북 인덱스들 및 이득들이 원 음성 신호와 여기 계수들 및 분석 계수들에 기초하여 합성된 음성 신호 사이의 차 측정(difference measure)이 최소값을 갖도록 결정된다. 신호 F는 음성 신호 샘플들의 현재의 프레임에 대응하는 분석 파라미터들이 전송되는지의 여부를 표시한다. 이들 계수들은 현재의 데이터 프레임 또는 더 초기의 데이터 프레임에서 전송될 수 있다.
멀티플렉서(6)는 헤더를 가진 데이터 프레임들과 음성 신호를 나타내는 데이터를 어셈블링한다. 헤더는 현재의 데이터 프레임이 불완전한 데이터 프레임인지의 여부를 표시하는 제 1 표시기(플래그 F)를 포함한다. 헤더는 현재의 데이터 프레임이 분석 파라미터들을 전달하는지 여부를 표시하는 제 2 표시기를 포함할 수도 있다. 프레임은 복수의 서브 프레임들에 대한 여기 파라미터들을 더 포함한다. 서브프레임들의 수는 음성 인코더(4)의 제어 입력에서의 신호 R에 의해 선택된 비트 레이트에 의존한다. 프레임 당 서브 프레임들의 수 및 프레임 길이는 프레임의 헤더에 인코딩될 수도 있지만, 프레임 당 서브 프레임들의 수 및 프레임 길이가 접속 셋업 동안 일치되는 것이 또한 가능하다. 멀티플렉서(6)의 출력에서, 음성 신호를 나타내는 완성된 프레임들을 얻을 수 있다.
전송 수단(8)에서, 멀티플렉서(6)의 출력에서의 프레임은 전송 매체(10)를 통해 전송될 수 있는 신호로 변환된다. 전송 수단에서 실행되는 동작들은 에러 보정 코딩, 인터리빙 및 변조를 관련시킨다.
수신기(12)는 전송 매체(10)로부터 전송기(2)에 의해 전송되는 신호를 수신한다. 수신 수단(14)은 복조, 디인터리빙 및 에러 보정 디코딩을 위해 배열된다. 디멀티플렉서는, 수신 수단(14)의 출력 신호로부터 신호들 LPC, F 및 EX를 추출한다. 필요하다면, 디멀티플렉서(16)는 잇달아 수신된 계수들의 두 세트들 사이에서 보간을 실행한다. 계수들 LPC 및 EX의 완성된 세트들은 음성 디코딩 수단(18)에 제공된다. 음성 디코딩 수단(18)의 출력에서, 재구성된 음성 신호를 얻을 수 있다.
도 2에 따른 음성 인코더에서, 입력 신호는 프레임 수단(20)의 입력에 인가된다. 출력 신호 SK+1을 전달하는 프레임 수단(20)의 출력은 본 실시예에서는 예측 선형 분석기(22)인 분석 수단의 입력에 및 지연 소자(28)의 입력에 접속된다. 신호αK+1을 전달하는 선형 예측 분석기(22)의 출력은 양자화기(24)의 입력에 접속된다. 출력 신호 CK+1을 전달하는 양자화기(24)의 제 1 출력은 지연 소자(26)의 입력에 및 음성 인코더(4)의 제 1 출력에 접속된다. 출력 신호 CK를 전달하는 지연 소자(26)의 출력은 음성 인코더의 제 2 출력에 접속된다.
신호 을 전달하는 양자화기(24)의 제 2 출력은 제어 수단(30)의 입력에 접속된다. 설정한 비트 레이트를 나타내는 입력 신호 R은 제어 수단(30)의 제 2 입력에 인가된다. 출력 신호 F를 전달하는 제어 수단(30)의 제 1 출력은 음성 인코더(4)의 출력에 접속된다.
출력 신호 α'K를 전달하는 제어 수단(30)의 제 3 출력은 보간기(32)에 접속된다. 출력 신호 α'K[m]을 전달하는 보간기(32)의 출력은 지각적 가중 필터(perceptual weighting filter)(34)의 제어 입력에 접속된다.
프레임 수단(20)의 출력은 지연 수단(28)의 입력에도 접속된다. 신호 SK를 전달하는 지연 수단(28)의 출력은 지각적 가중 필터(34)의 제 2 입력에 접속된다. 신호 rs[m]을 전달하는 지각적 가중 필터(34)의 출력은 여기 탐색 수단(36)의 입력에 접속된다. 여기 탐색 수단(36)의 출력에서, 고정적 코드북 인덱스, 고정적 코드북 이득, 적응적 코드북 인덱스 및 적응적 코드북 이득 포함하는 여기 신호 EX의 표시를 얻을 수 있다.
프레임 수단은 음성 인코더(4)의 입력 신호로부터 복수의 입력 샘플들을 포함하는 프레임들을 도출한다. 프레임 내의 샘플들의 수는 설정한 비트 레이트 R에 따라 가변될 수 있다. 선형 예측 분석기(22)는 입력 샘플들의 프레임들로부터, 예측 계수들 αK+1[p]를 포함하는 복수의 분석 계수를 도출한다. 이들 예측 계수들은 잘 알려진 레빈손-더빈 알고리즘(Levinson-Durbin algorithm)에 의해 구할 수 있다. 양자화기(24)는 계수들 αK+1[p]를 다른 표시로 변환하고, 그 변환된 예측 계수들을 양자화된 계수들 CK+1[p]로 양자화시키는데, 양자화된 계수들 CK+1[p]는 지연 소자(26)를 통해 계수들 CK[p]를 출력에 넘긴다. 지연 소자의 목적은 계수들 CK[p]와, 음성 입력 샘플들의 동일 프레임에 대응하는 여기 신호 EX가 동시에 멀티플렉서(6)로 제공되는 것을 보장한다. 양자화기(24)는 신호 을 제어 수단(30)에 제공한다. 신호 는 양자화된 계수들 CK+1의 역변환에 의해 얻어진다. 역변환은 수신기의 음성 디코더에서 실행되는 것과 동일하다. 수신기에서의 디코더에 이용할 수 있는 것과 동일한 계수들과의 정확한 국부적 합성을 음성 인코더에 제공하기 위해, 양자화된 계수들의 역변환이 음성 인코더에서 실행된다.
제어 수단(30)은 분석 계수들에 관한 정보가 다른 프레임들보다 더 많이 전송되는 프레임들의 프랙션을 도출하도록 배열된다. 본 실시예에 따른 음성 인코더(4)에서, 프레임들은 분석 계수들에 관한 완성된 정보를 전달하거나, 분석 계수들에 관한 정보를 전혀 전달하지 않는다. 제어 유닛(30)은 현재의 프레임에서 멀티플렉서(6)가 신호 LPC를 도입하는지의 여부를 나타내는 출력 신호 F를 제공한다. 그러나 각 프레임에 의해 전달되는 분석 파라미터들의 수가 가변할 수도 있음이 가능한 것으로 관측되었다.
제어 유닛(30)은 예측 계수들 α'K를 보간기(32)에 제공한다. α'K의 값은, 상기 현재의 프레임에 대한 LPC 계수들의 전송된다면, 가장 최근에 결정된(양자화된) 예측 계수들과 동일하다. 현재의 프레임에 대한 LPC 계수들이 전송되지 않는다면, α'K의 값은 α'K-1 및 α'K+1의 값을 보간함으로써 찾는다.
보간기(32)는 현재의 프레임의 각 서브 프레임들에 대해 α'K-1 및 α'K로부터 선형적으로 보간된 값들 α'K[m]을 제공한다. α'K[m]의 값들은 지각적 가중 필터(34)에 인가되어, 입력 신호(SK)의 현재 서브 프레임 m으로부터 "나머지 신호(residual signal)" rs[m]을 도출한다. 탐색 수단(36)은, "나머지 신호" rs[m]의 현재 서브 프레임 m과의 최적의 매칭을 제공하는 여기 신호를 유발하는 고정적 코드북 인덱스, 고정적 코드북 이득, 적응적 코드북 인덱스 및 적응적 코드북 이득을 찾기 위해 배열된다. 여기 파라미터들의 각 서브 프레임 m에 대해, 고정적 코드북 인덱스, 고정적 코드북 이득, 적응적 코드북 인덱스 및 적응적 코드북 이득을 음성 인코더(4)의 출력 EX에서 얻을 수 있다.
도 2에 따른 음성 인코더의 예는, 13.6kbit/s에서 24kbit/s까지 가변하는 비트 레이트를 이용하는 7kHz의 대역폭을 갖는 음성 신호들을 인코딩하기 위한 광대역 음성 인코더이다. 음성 인코더는 네 개의 소위 고정 비트 레이트들(anchor bitrates)에서 설정될 수 있다. 이들 고정 비트 레이트들은, 예측 파라미터들을 전달하는 프레임들의 프랙션을 감소시킴으로써 감소할 수 있는 비트 레이트로부터 시작하는 값들이다. 하기의 표에서, 네 개의 고정 비트 레이트들 및 프레임 지속 기간의 대응하는 값들, 프레임 내의 샘플들의 수 및 프레임 당 서브 프레임들의 수들이 제공된다.
[표 1]
LPC 계수들이 존재하는 프레임들의 수를 감소시킴으로써, 비트 레이트는 작은 단계들로 제어될 수 있다. LPC 계수들을 전달하는 프레임들의 프랙션이 0.5에서 1까지 가변하고, 하나의 프레임에 대한 LPC 계수들을 전송하는데 필요한 비트들의 수가 66이면, 최대의 얻을 수 있는 비트 레이트 감소가 계산될 수 있다. 프레임 크기가 10ms이면, LPC 계수들에 대한 비트 레이트는 3.3kbit/s에서 6.6kbit/s까지 가변할 수 있다. 프레임 크기가 15ms이면, LPC 계수들에 대한 비트 레이트는 2.2kbit/s에서 4.4kbit/s까지 가변할 수 있다. 하기의 표에, 네 개의 고정 비트 레이트들에 대한 최대 비트 레이트 감소 및 최소 비트 레이트 감소가 주어진다.
[표 2]
도 3에 따른 제어 수단(30)에서, 신호 을 전달하는 제 1 입력은 지연 소자(40)의 입력 및 변환기(44)의 입력에 접속된다. 신호 을 전달하는 지연 소자(40)의 출력은 지연 소자(42)의 입력 및 변환기(50)의 입력에 접속된다. 출력 신호 을 전달하는 지연 소자(42)의 출력은 변환기(46)의 입력에 접속된다. 출력 신호 iK+1을 전달하는 변환기(44)의 출력은 보간기(48)의 제 1 입력에 접속된다. 출력 신호 iK-1을 전달하는 변환기(46)의 출력은 보간기(48)의 제 2 입력에 접속된다. 출력 신호 을 전달하는 보간기(48)의 출력은 선택기(52)의 제 1 입력에 접속된다. 출력 신호 iK를 전달하는 변환기(50)의 출력은 선택기(52)의 제 2 입력에 접속된다. 선택기(52)의 출력에서, 신호 을 얻을 수 있다. 선택기(52)의 출력은 변환기(53)의 입력에 접속된다. 도 2의 보간기(32)에 의해 이용되는 신호 α'K 를 전달하는 변환기(53)의 출력은 제어 수단(30)의 출력에 접속된다.
신호 R을 전달하는 제어 수단(30)의 제 2 입력은 계산 수단(54)에 인가된다. 계산 수단(54)의 출력은 가산기(56)의 입력에 접속된다. 가산기(56)의 출력은 누산기(58)의 입력에 접속된다. 누산된 값을 전달하는 누산기(58)의 제 1 출력은 가산기(56)의 제 2 입력에 접속된다. 오버플로 신호를 전달하는 누산기(58)의 제 2 출력은 선택기(52)의 제어 입력에 접속된다. 제어 수단(30)에서, 계산기 수단은 신호R을 설정한 비트 레이트, 고정 비트 레이트 및 LPC 정보를 전달하는 프레임들의 프랙션으로부터 결정된다. 어떤 비트 레이트 R이 두 개의 서로 다른 고정 비트 레이트들로부터 시작이 성취될 수 있는 경우, 최상의 음성 품질을 유발하는 고정 비트 레이트가 선택된다. 고정 비트 레이트가 값을 표에서 신호 R의 함수로서 저장하는 것이 편리하다. 고정 비트 레이트가 선택되었다면, LPC 계수들을 전달하는 프레임들의 프랙션이 결정될 수 있다.
먼저, 프레임 당 비트들의 수들에 대한 최대값 및 최소값을 나타내는 값들 BMAX 및 BMIN이 다음과 같이 결정된다:
[수학식 1]
[수학식 2]
수학식 1 및 수학식 2에서, bHEADER는 프레임에서 헤더 비트들의 수이고, bEXCITATION은 여기 신호를 나타내는 비트들의 수이며, bLPC는 분석 계수들을 나타내는 비트들의 수이다. 신호 R이 요구된 비트 레이트 BREQ를 나타낸다면, LPC 파라미터들을 전달하는 프레임들의 프랙션 r은 다음과 같다:
[수학식 3]
실시예에서, r의 최소값은 0.5임을 알 수 있다.
LPC 파라미터들을 전달하는 프레임들의 프랙션을 나타내는 수 FR는, 가산기(56)에 인가된다. 가산기(56)는 프레임 간격마다 수 FR를 누산기(58)의 컨텐트에 부가하도록 배열된다. 수 FR 및 누산기(58)의 최대 컨텐트 A는 FR/A=r이 되도록 선택된다. 따라서 누산기는 프레임 간격들의 프랙션 r에 대해 오버플로한다. 도 2에 서의 멀티플렉서(6)를 제어하기 위해 누산기(58)의 오버플로 신호를 이용함으로써, 멀티플렉서(6)의 출력에서 프레임들의 프랙션 r이 LPC 계수들을 전달하는 것이 얻어진다.
지연 소자들(40 및 42)은 반사 계수들 의 세트로부터 지연된 반사 계수들 의 세트들을 제공한다. 변환기들(44, 50 및 46)은 계수들 , 보다 보간에 더 적합한 계수들 iK+1, iK 및 iK-1을 계산한다. 유용한 계수들은 로그 영역 비율들, 반사 계수의 아크사인, 또는 라인 스펙트럼 쌍들이다. 보간기(48)는 수학식 (iK+1[n]+iK-1[n])/2에 따라, iK+1[n] 및 iK-1[n]으로부터 보간된 값들인 [n]을 도출한다.
누산기(58)가 오버플로하면, LPC 계수들이 전송되고, 선택기(52)는 예측 계수들 iK을 변환기(53)에 넘겨주도록 배열될 것이다. LPC 계수들이 전송되지 않는다면, 선택기(52)는 보간된 값 을 변환기(53)로 넘겨주도록 배열될 것이다. 변환기(53)는 예측 계수를 의 세트를 필터(34)에 적합한 예측 계수들 α'K의 세트로 변환한다. 설명한 바와 같이, 음성 인코더(4)에서의 국부적 보간은 각 서브 프레임에 대해 인코더(4) 및 디코더(6)에서 정확히 동일한 예측 계수들을 얻기 위해 실행된다.
도 4에 따른 제어 수단(30)에서, 신호 을 전달하는 제 1 입력은 지연 소자(60)의 입력에 접속되고, 변환기(64)의 입력에 접속된다. 신호 을 전달하는 지연 소자(60)의 출력은 지연 소자(62)의 입력에 접속되고, 변환기(70)의 입력에 접속된다. 출력 신호 iK+1을 전달하는 변환기(64)의 출력은 보간기(68)의 제 1 입력에 접속된다. 출력 신호 iK-1을 전달하는 변환기(66)의 출력은 보간기(68)의 제 2 입력에 접속된다. 출력 신호 을 전달하는 보간기(68)의 출력은 거리 계산기(distance calculator)(72)의 제 1 입력에 접속되고, 선택기(80)의 제 1 입력에 접속된다. 출력 신호 iK를 전달하는 변환기(70)의 출력은 거리 계산기(72)의 제 2 입력에 접속되고, 선택기(80)의 제 2 입력에 접속된다.
제어 수단(30)의 입력 신호 R은 계산 수단(74)의 입력에 접속된다. 계산 수단(74)의 제 1 출력은 제어 유닛(76)에 접속된다. 계산 수단(74)의 제 1 출력에서의 신호는 LPC 파라미터들을 전달하는 프레임들의 프랙션 r을 나타낸다. 따라서 신호는 설정한 비트 레이트를 나타내는 신호이다. 계산 수단의 제 2 및 제 3 출력은 신호 R에 의존하여 설정된 고정 비트 레이트를 나타내는 신호를 전달한다. 임계값 신호 t를 전달하는 제어 유닛(76)의 출력은 비교기(78)의 제 1 입력에 접속된다. 거리 계산기(72)의 출력은 비교기(78)의 제 2 입력에 접속된다. 비교기(78)의 출력은 선택기(80)의 제어 입력, 제어 유닛(76)의 입력 및 제어 수단(30)의 출력에 접속된다.
도 3에 따른 제어 수단에서, 지연 소자들(60 및 62)은 반사 계수들 의 세트로부터 지연된 반사 계수들 의 세트들을 제공한다. 변환기들(64, 70 및 66)은 계수들 , 보다 보간에 더 적합한 계수들 iK+1, iK 및 iK-1을 계산한다. 보간기(68)는 값들 iK+1 및 iK-1로부터 보간된 값 을 도출한다.
거리 계산기(72)는 예측 파라미터들 iK의 세트와, iK+1 및 iK-1로부터 보간된 예측 파라미터들 의 세트 사이의 거리 측정 d를 결정한다. 적절한 거리(d)는 다음 수학식에 의해 얻어진다:
[수학식 4]
수학식 4에서, H(ω)는 계수들 iK에 의해 나타낸 스펙트럼이고, 는 계수들 에 의해 나타낸 스펙트럼이다. 측정 d는 통상적으로 이용되지만, 보다 쉽게 계산할 수 있는 L1 놈(norm)이 유사한 결과들을 제공하는 것으로 실험에서 보였다. L1 놈은 다음과 같다:
[수학식 5]
수학식 5에서, P는 분석 수단(22)에 의해 결정된 예측 계수들의 수이다. 거리 측정 d는 비교기(78)에 의해 임계값 t와 비교된다. 거리 d가 임계값 t보다 더 크면, 비교기(78)의 출력 신호 c는, 현재의 프레임의 LPC 계수들이 전송되는 것을 나타낸다. 거리 측정 d가 임계값 t보다 더 작으면, 비교기(78)의 출력 신호 c는 현재의 프레임의 LPC 계수들이 전송되지 않는 것을 나타낸다. 미리 결정된 시간 기간에 걸쳐(예를 들면, k 프레임들에 걸쳐, k는 전형적으로 100인 값을 가짐) 신호 c가 LPC 계수들의 전송을 나타내는 횟수들 a를 카운팅함으로써, LPC 파라미터들을 포함하는 프레임들의 실제 프랙션에 대한 측정 a가 얻어진다. 고정 비트 레이트에 대응하는 주어진 파라미터들이 선택되면, 이러한 측정 a는 또한 실제 비트 레이트에 대한 측정이다.
제어 수단(30)은 실제 비트 레이트에 대한 측정과 설정한 비트 레이트에 대한 측정을 비교하고, 필요하다면 실제 비트 레이트를 조정하도록 배열된다. 계산 수단(74)은 신호 R, 고정 비트 레이트 및 프랙션 r로부터 결정된다. 제어 유닛(76)은 프랙션 r과, LPC 파라미터를 전달하는 프레임들의 실제 프랙션 a 사이의 차를 결정한다. 설정한 비트 레이트 및 실제 비트 레이트 사이의 차에 따라 비트 레이트를 조정하기 위해, 임계값 t가 증가 또는 감소된다. 임계값 t가 증가되면, 거리 측정 d는 더 작은 수의 프레임들에서 상기 임계값을 초과하고, 실제 비트 레이트가 감소할 것이다. 임계값 t가 감소하면, 차 측정 d는 더 많은 수의 프레임들에서 임계값을 초과하고, 실제 비트 레이트는 증가할 것이다. 설정한 비트 레이트에 대한 측정 r과 실제 비트 레이트에 대한 측정 b에 따른 임계값 t의 갱신은, 다음 수학식에 따라 제어 유닛(76)에 의해 실행된다:
[수학식 6]
수학식(6)에서, t'는 임계값의 원래 값이고, c1, c2는 상수들이다.
도 5에 따른 디코딩 수단(18)에서, 신호 LPC를 전달하는 입력은 서브 프레임 보간기(87)의 입력에 접속된다. 서브 프레임 보간기(87)의 출력은 합성 필터(88)의 입력에 접속된다.
입력 신호 EX를 전달하는 음성 디코딩 수단(18)의 입력은 디멀티플렉서(89)의 입력에 접속된다. 고정적 코드북 인덱스를 나타내는 신호 FI를 전달하는 디멀티플렉서(89)의 제 1 출력은 고정적 코드북(90)의 입력에 접속된다. 고정적 코드북 (90)의 출력은 승산기(92)의 제 1 입력에 접속된다. 신호 FCBG(Fixed CodeBook Gain)를 전달하는 디멀티플렉서의 제 2 출력은 승산기(92)의 제 2 입력에 접속된다.
적응적 코드북 인덱스를 나타내는 신호 AI를 전달하는 멀티플렉서(89)의 제 3 출력은 적응적 코드북(91)의 입력에 접속된다. 적응적 코드북(91)의 출력은 승산기(93)의 제 1 입력에 접속된다. 신호 ACBG(Adaptive CodeBook Gain)를 전달하는 디멀티플렉서(89)의 제 2 출력은 승산기(93)의 제 2 입력에 접속된다. 승산기(92)의 출력은 가산기(94)의 제 1 입력에 접속되고, 승산기(93)의 출력은 가산기(94)의 제 2 입력에 접속된다. 가산기(94)의 출력은 적응적 코드북의 입력에 접속되고, 합성 필터(88)의 입력에 접속된다.
도 5에 따른 음성 디코딩 수단(18)에서, 서브 프레임 보간기(87)는 각 서브 프레임들에 대해 보간된 예측 계수들을 제공하고, 그 예측 계수를 합성 필터(88)에 넘겨준다.
합성 필터에 대한 여기 신호는 고정적 코드북(90)과 적응적 코드북(91)의 출력 신호들의 가중된 합과 동일하다. 가중은 승산기(92 및 93)에 의해 실행된다. 코드북 인덱스들 FI 및 AI는 디멀티플렉서(89)에 의해 신호 EX로부터 추출된다. 또한 가중 인자들 FCBG(Fixed CodeBook Gain) 및 ACBG(Adaptive CodeBook Gain)도 모두 디멀티플렉서(89)에 의해 신호 EX로부터 추출된다. 가산기(94)의 출력 신호는 적응을 제공하기 하기 위해 적응 코드북으로 시프트된다.

Claims (10)

  1. 입력 음성 신호로부터 분석 계수들을 결정하는 분석 수단(22); 및
    상기 입력 음성 신호를 나타내는 데이터 프레임들을 발생하는 발생 수단(20)을 포함하는 음성 인코더(speech encoder; 4)에 있어서:
    상기 음성 인코더(4)는, 상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 상기 데이터 프레임들의 프랙션(fraction)을, 설정한 비트 레이트로부터 계산하고, 상기 데이터 프레임들의 프랙션과 상기 나머지 데이터 프레임들의 전송을 제어하는 제어 수단(30)을 포함하는 것을 특징으로 하는, 음성 인코더(4).
  2. 제 1 항에 있어서,
    상기 제어 수단(30)은 실제 비트 레이트(actual bitrate)에 대한 측정을 상기 설정한 비트 레이트에 대한 측정과 비교하는 비교 수단(76)을 포함하고, 상기 제어 수단(30)은 상기 실제 비트 레이트에 대한 측정이 상기 설정한 비트 레이트에 대한 측정보다 더 작은 경우에, 상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 상기 프레임들의 실제 프랙션을 증가시키고, 상기 실제 비트 레이트에 대한 측정이 상기 설정한 비트 레이트에 대한 측정보다 더 큰 경우에, 상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 상기 프레임들의 실제 프랙션을 감소시키도록 배열되는, 음성 인코더(4).
  3. 제 2 항에 있어서,
    상기 제어 수단(30)은 임계값을 초과하는 주변 프레임들 내에 전송된 분석 파라미터들로부터 보간된 값들로부터의 거리 측정을 갖는 분석 파라미터들을 나타내고, 상기 실제 비트 레이트에 대한 측정이 상기 설정한 비트 레이트에 대한 측정보다 더 작은 경우에 상기 임계값을 감소시키고, 실제 비트 레이트에 대한 측정이 상기 설정한 비트 레이트에 대한 측정보다 더 큰 경우에 상기 임계값을 증가시키도록 배열되는, 음성 인코더(4).
  4. 제 1 항에 있어서,
    상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 상기 프레임들 프레임들의 프랙션은 0.5보다 크거나 같고 1보다 작은, 음성 인코더(4).
  5. 제 1 항에 있어서,
    상기 음성 인코더(4)는 설정한 비정밀 비트 레이트(coarse bitrate setting)에 응답하여, 복수의 프레임 길이들 중 하나의 프레임 길이와, 복수의 프레임 당 여기 서브 프레임들 중 하나의 프레임 당 여기 서브 프레임들을 선택하도록 배열되는, 음성 인코더(4).
  6. 제 5 항에 있어서,
    상기 선택된 프레임 길이는 10ms이고, 상기 프레임 당 여기 서브 프레임들의 선택된 수는 4인, 음성 인코더(4).
  7. 제 5 항에 있어서,
    상기 선택된 프레임 길이는 15ms이고, 상기 프레임 당 여기 서브 프레임들의 선택된 수는 6, 8, 또는 10인, 음성 인코더(4).
  8. 입력 음성 신호로부터 분석 계수들을 결정하는 단계; 및
    상기 입력 음성 신호를 나타내는 데이터 프레임들을 발생하는 단계를 포함하는 음성 인코딩 방법에 있어서:
    상기 분석 계수들에 관한 정보를 나머지 데이터 프레임들보다 더 많이 전달하는 상기 데이터 프레임들의 프랙션을, 설정한 비트 레이트로부터 계산하는 단계; 및
    상기 데이터 프레임들의 프랙션과 상기 나머지 데이터 프레임들의 전송을 제어하는 단계를 포함하는 것을 특징으로 하는, 음성 인코딩 방법.
  9. 음성 신호를 나타내는 데이터 프레임들을 전송하는 전송기(2)로서,
    입력 음성 신호로부터 상기 데이터 프레임들을 도출하기 위한 제 1 항 내지 제 7 항 중 어느 한 항에 청구된 음성 인코더(4)를 포함하는, 전송기(2).
  10. 전송 시스템에 있어서:
    제 9 항에 청구된 전송기(2); 및
    전송 매체(10)를 통해 상기 데이터 프레임들을 숫ㄴ하는 수신기(12)를 포함하고,
    상기 수신기(12)는 상기 데이터 프레임들로부터 재구성된 음성 신호를 도출하는 음성 디코더(18)를 포함하는, 전송 시스템.
KR1019980709891A 1997-04-07 1998-03-05 가변비트레이트음성전송시스템 KR100563016B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980709891A KR100563016B1 (ko) 1997-04-07 1998-03-05 가변비트레이트음성전송시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP97200998.9 1997-04-07
KR1019980709891A KR100563016B1 (ko) 1997-04-07 1998-03-05 가변비트레이트음성전송시스템

Publications (2)

Publication Number Publication Date
KR20000016318A KR20000016318A (ko) 2000-03-25
KR100563016B1 true KR100563016B1 (ko) 2006-09-20

Family

ID=41743815

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980709891A KR100563016B1 (ko) 1997-04-07 1998-03-05 가변비트레이트음성전송시스템

Country Status (1)

Country Link
KR (1) KR100563016B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703325B1 (ko) * 2005-01-14 2007-04-03 삼성전자주식회사 음성패킷 전송율 변환 장치 및 방법

Also Published As

Publication number Publication date
KR20000016318A (ko) 2000-03-25

Similar Documents

Publication Publication Date Title
US6594626B2 (en) Voice encoding and voice decoding using an adaptive codebook and an algebraic codebook
AU761131B2 (en) Split band linear prediction vocodor
KR100979090B1 (ko) 피치 지연 윤곽부 조절을 사용하여 정보 신호를 코딩하기위한 방법 및 장치
US6202046B1 (en) Background noise/speech classification method
US6334105B1 (en) Multimode speech encoder and decoder apparatuses
US7167828B2 (en) Multimode speech coding apparatus and decoding apparatus
WO1999062057A2 (en) Transmission system with improved speech encoder
US6012026A (en) Variable bitrate speech transmission system
KR19990007805A (ko) 복잡성이 감소된 신호 전송 시스템
EP0658875B1 (en) Speech decoder
EP1096476B1 (en) Speech signal decoding
US6804639B1 (en) Celp voice encoder
KR19990007817A (ko) 복잡성이 감소된 합성 필터가 있는 씨이엘피 스피치 코더
JP3168238B2 (ja) 再構成音声信号の周期性を増大させる方法および装置
KR100563016B1 (ko) 가변비트레이트음성전송시스템
KR100668247B1 (ko) 음성 전송 시스템
KR100587721B1 (ko) 음성전송시스템
JPH07239699A (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: 20090312

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee