KR20020012509A - 입력 신호의 보코딩 장치 및 방법 - Google Patents
입력 신호의 보코딩 장치 및 방법 Download PDFInfo
- Publication number
- KR20020012509A KR20020012509A KR1020010047214A KR20010047214A KR20020012509A KR 20020012509 A KR20020012509 A KR 20020012509A KR 1020010047214 A KR1020010047214 A KR 1020010047214A KR 20010047214 A KR20010047214 A KR 20010047214A KR 20020012509 A KR20020012509 A KR 20020012509A
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- pulse
- track
- vocoding
- input
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 29
- 230000005284 excitation Effects 0.000 claims abstract description 8
- 230000005540 biological transmission Effects 0.000 claims abstract description 4
- 238000001914 filtration Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 claims 4
- 238000004891 communication Methods 0.000 description 19
- 230000003044 adaptive effect Effects 0.000 description 15
- 230000007774 longterm Effects 0.000 description 12
- 238000003786 synthesis reaction Methods 0.000 description 12
- 230000015572 biosynthetic process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000007906 compression Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 230000004308 accommodation Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/10—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
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)
- Magnetic Resonance Imaging Apparatus (AREA)
Abstract
본 발명은, 입력 신호의 수신에 응답해서 제 1 신호 펄스 및 제 2 신호 펄스가 포함된 여과 신호를 생성하는 선형 예측 필터와, 복수의 트랙 위치가 포함된 룩업 테이블을 구비하는 프로세서를 포함하는 입력 신호의 보코딩 장치 및 방법에 관한 것이다. 제 1 신호 펄스는 제 1 트랙 위치에 연관되고, 제 2 신호 펄스는 제 1 신호 펄스에 관련된 제 2 트랙 위치에 연관되어, 복수의 여기 파라미터를 생성한다. 또한, 본 발명에 따른 장치는 프로세서로부터의 복수의 여기 파라미터에 응답해서 송신 신호에 복수의 여기 파라미터를 전송하는 송신기를 구비한다.
Description
본 발명은 음성 압축에 관한 것으로서, 보다 구체적으로는, CELP(code excited linear prediction)형 보코딩에 관한 것이다.
음성 인코더/디코더(보코더(vocoder))는, 통신 채널에서 요구되는 전송 대역을 줄이기 위해서 음성 신호를 압축한다. 호당 요구되는 전송 대역을 감소시킴으로써, 동일 통신 채널당 처리할 수 있는 호의 수를 증가시킬 수 있다. LPC(linear predictive coding) 기법과 같은 초기 음성 코딩 기법은, 필터를 사용해서 잉여 신호를 제거하여 음성 신호를 압축한다. LPC 필터는 사람의 음성을 표본화하기 위한 스펙트럼 포락(spectral envelope)을 재생한다. 또한, LPC 필터는, 무성음에 대해서 잡음성 신호(noise-like)를 수신하여 여기되는 반면, 비음 및 모음에 대해서는 준주기 입력(quasi periodic input)을 수신하여 여기된다.
CELP(code excited linear prediction)형 보코더로 알려진 보코더 클래스가 있다. 대개, CELP형 보코딩은 4-8kbps에서 다른 32kbps 음성 코딩 기법에 필적하는 음성 품질을 얻을 수 있는 음성 데이터 압축 기법이다. CELP형 보코더는 초기 LPC 기법에 비해 2가지가 개선되었다. 첫째, CELP형 보코더는 피치 예측기를 이용하여 피치 정보를 추출함으로써 보다 상세한 음성의 포착을 도모한다. 둘째, CELP형 보코더는 실제 음성 파형으로부터 생성된 잔차 신호(residual signal)로부터 파생된 잡음성 신호로 LPC 필터를 여기시킨다.
CELP형 보코더는, ①단기 예측 필터(short term predictive filter), ②장기 예측 필터(long term predictive filter) 및 ③고정 코드북의 세가지 주요 구성요소를 포함한다. 여기서 장기 예측 필터는 피치 예측기 또는 적응 코드북이라고도 한다. 원래 음성 신호를 나타내는데 사용되는 비트수보다 적은 소정 비트수를 각 구성요소에 대해 할당함으로써 압축이 이루어진다. 제 1 구성 요소는 선형 예측기를 사용하여 음성 신호 내의 단기 잉여 신호를 제거한다. 단기 예측기로부터 얻어진 오류 또는 잔차 신호는 장기 예측기의 대상 신호이다.
유성음(voiced spedch)은 준주기성(quasi-periodic nature)을 가지며, 장기 예측기는 잔차 신호로부터 피치 주기를 추출하여 이전 주기로부터 예측될 수 있는 정보를 제거한다.
장기 예측 필터 및 단기 예측 필터 이후에, 최종 잔차 신호는 주로 잡음성신호이다. 합성 분석법(analysis-by-synthesis)을 이용하면, 고정 코드북 탐색기는 잡음성 잔차 신호를 그의 벡터 내장 함수로부터의 엔트리로 재배치하기 위한 최적 매칭을 발견한다. 최적 매칭 벡터를 나타내는 코드가 잡음 잔차 신호 대신에 전송된다. ACELP(algebraic CELP)형 보코더에 있어서, 고정 코드북은 몇몇 비제로(non-zero) 펄스로 구성되고, 펄스의 위치 및 기호(예를 들어, +1 또는 -1)에 의해서 표시된다.
전형적인 구현에 있어서, CELP형 보코더는 입력 음성 신호를 프레임으로 블록화 또는 분할할 것이며, 그 프레임당 한번씩 단기 예측기의 LPC 계수가 갱신된다. 그 다음, LPC 잔차 신호는 장기 예측기 및 고정 코드북 탐색기용 서브 프레임으로 분할된다. 예를 들어, 입력 음성은 단기 예측기용 160개 샘플 프레임으로 블록화될 수도 있다. 그 다음 최종 프레임은 53개 샘플, 53개 샘플 및 54개 샘플의 서브 프레임으로 분할된다. 그 다음, 각 서브 프레임은 장기 예측기 및 고정 코드북 탐색기에 의해서 처리된다.
도 1을 참조하면, 음성 신호(100)의 단일 프레임의 예가 도시되어 있다. 음성 신호(100)는 상이한 계수의 유성음 신호 및 무성음 신호로 이루어져 있다. 음성 신호(100)는 LPC 필터를 구비하는 CELP형 보코더에 의해서 수신된다. CELP형 보코더는 먼저 음성 신호의 단기 잉여 신호를 제거한다. 단기 잉여 신호가 제거된 최종 신호는 도 2의 잔차 음성 신호(200)이다.
LPC 필터가 모든 잉여 정보 및 잔여 준주기 피크를 제거할 수는 없으며, 여과 음성 신호(200)의 골짜기는 피치 펄스라고 부른다. 그 다음, 단기 예측 필터는음성 신호(200)를 제공하여 도 3의 단기 여과 신호(300)를 생성한다. 장기 예측기 필터는 도 3의 잔차 음성 신호(300)로부터 준주기 피치 펄스를 제거하여, 고정 코드북 탐색기용 대상 신호가 되는 도 4의 잡음성 신호(400)를 생성한다. 도 4는 3개의 서브프레임(354, 356, 358)으로 분할된 고정 코드북 대상 신호(350)의 160개 샘플 프레임의 플롯(plot)이다. 그 다음, 코드값은 통신 네트워크를 경유하여 전송된다.
도 5에는 서브프레임 내의 펄스의 위치를 매핑하는 룩업 테이블(470)이 도시되어 있다. 서브프레임 내의 펄스는 룩업 테이블 내의 16개의 예상 위치(402) 중 하나에 수용된다. 각 트랙(404)은 16개의 예상 위치(402)를 구비하기 때문에, 각 펄스 위치를 식별하는 데 단지 4비트만이 요구된다. 각 펄스 매핑은 개별적인 트랙(404)에서 이루어진다. 따라서, 두 트랙(406, 408)은 서브 프레임으로부터의 두 신호 펄스의 펄스 위치를 매핑할 수 있도록 한다.
본 실시예에 있어서, 도 4의 서브프레임(354)은 위치 0-52만을 유일한 유효 위치로 만드는 여기(excitation)에 53개의 샘플만을 구비한다. 그로 인해, 도 5의 트랙(406, 408)은 각 트랙에 존재하는 원래 여기의 길이를 초과하는 위치로 분할된다. 트랙 1의 위치(56, 60) 및 트랙 2의 위치(57, 61)는 무효이며 사용되지 않는다. 도 4의 두 제 1 펄스(310, 312)의 위치는 샘플 12 및 샘플 17에 대응한다. 도 5의 테이블(470)을 이용함으로써, 제 1 트랙(406)의 위치 3(410)에 샘플 12가 배치된다고 판정된다. 제 2 펄스는 샘플 17에 있고, 위치 4(412)에서 제 2 트랙(408)에 배치된다. 따라서, 펄스는 각기 개별적으로 4비트로 표시 및 전송될수 있다. 코드북이 단지 두 트랙만을 갖기 때문에, 도 4의 서브프레임(354)의 다른 펄스(314, 316, 318, 320, 322)는 무시된다.
펄스 위치는 트랙의 절대 펄스 위치에 의해서 수용된다. CELP형 보코더는 트랙의 인접 위치에 펄스를 배치하는 경향이 있는데, 이것은 효과적이지 않다. 트랙의 인접 위치에 펄스를 배치함으로써, 발음이 보다 균형있게 인코딩되는 것이 아니라 음성의 선두(start)가 인코딩된다. 또한, 보코더용 비트율이 감소하여 보다 적은 펄스가 사용되므로, 음성 품질은 펄스의 트랙으로의 비능률적인 배치로 인하여 악영향을 받는다. 인접 트랙 위치에 배치되는 펄스의 발생을 감소시키기 위한 방법이 요구된다.
제 1 트랙 내의 신호 펄스의 위치와 연관시켜 제 2 트랙 내의 신호 펄스를 배치함으로써, 절대 트랙 위치 배치의 비능률이 해소된다. 신호 펄스의 인코딩 중에 N+1 트랙 내의 N+1 신호 펄스를 적절히 배치함으로써, 디코딩된 신호의 신호 품질이 증가된다. 트랙 내의 펄스를 보다 정확히 배치하여 트랙 내의 신호 펄스 위치의 인접한 배치의 발생을 감소시킴으로써, 신호 품질이 증가된다.
도 1은 음성 신호의 단일 프레임을 도시한 도면,
도 2는 단구간 주기(short term periodic) 여과 단일 음성 프레임을 도시한 도면,
도 3은 적응 코드북 여과 단일 음성 프레임을 도시한 도면,
도 4는 160개의 샘플 음성 프레임을 세 개의 서브 프레임으로 분할하는 주지된 구성 방법을 도시한 도면,
도 5는 16개의 예상 펄스 위치중 하나에 수용된 신호 펄스를 구비하는 주지된 CELP 보코더 코드북 룩업 테이블의 블록도,
도 6은 본 발명의 일 실시예에 따른 상대 수용 펄스 위치를 구비하는 CELP형 보코더 코드북의 블록도,
도 7은 본 발명의 일 실시예에 따른 CELP형 보코딩을 이용하는 송신기 및 수신기를 구비한 통신 시스템의 블록도,
도 8은 본 발명의 일 실시예에 따라서 음성 신호를 인코딩하는 CELP형 보코더를 구비한 송신기의 블록도,
도 9는 본 발명의 일 실시예에 따른 CELP형 보코더를 구비한 수신기의 블록도,
도 10은 본 발명의 일 실시예에 따른 음성 신호의 보코딩 방법을 도시한 흐름도.
도면의 주요 부분에 대한 부호의 설명
600 : 통신 시스템 602 : 송신기
604 : 수신기 618, 628 : 보코더
상술한 본 발명의 목적 및 유리한 특징을 보다 상세히 설명하며, 첨부된 몇몇 도면을 참조한 본 발명의 상세한 설명으로부터 다른 것들이 보다 명확해질 것이다.
도 6에는 상대 수용 펄스 위치를 갖춘 2 트랙 코드북 테이블이 도시되어 있다. 테이블(500)에는 각 트랙에 대해 16개의 예상 신호 펄스 위치(506)를 식별하는 2개의 펄스 위치 트랙(502, 504)(일반적으로 "트랙"이라고 부름)이 포함된다. 고정 코드북은 예상 유효 펄스 위치인 트랙 1(502) 및 트랙 2(504)에 0 내지 13(508)을 등록한다. 코드북의 펄스 테이블 위치 14(510) 및 15(512)는 두 트랙 모두에 사용되지 않는다. 또한, 제 1 트랙 내의 제 1 예상 펄스 위치는 4로 나눌 수 있는 펄스 위치에 놓이도록 수용된다. 제 2 트랙 내의 제 2 펄스 위치는 제 1 트랙 내의 제 1 신호 펄스의 인덱스 위치(506)에 연관된다.
인접 트랙 위치의 신호 펄스를 인코딩하는 것이 아니라, 제 2 신호 펄스를 상대 배치한다. 트랙에서 인코딩된 인접 신호 펄스를 보다 적게 구비함으로써, 신호 펄스는, 보코더에 의해서 디코딩된 신호의 음성 품질을 개선할 수 있는 버스트 에너지를 보다 잘 재생할 수 있다. 단일 신호 펄스는 본 실시예의 두 트랙(502, 504) 각각에 인코딩된다. 제 1 트랙 내의 제 1 신호 펄스에 관해 제 2 트랙 내의 제 2 펄스를 배치함으로써, 디코딩된 발성의 품질이 향상된다. 다른 실시예에 있어서, 코드북 테이블은 두 개를 초과하는 트랙을 포함하고, 트랙 내의 추가 신호 펄스는 보다 빠른 신호 펄스의 보다 빠른 트랙 위치에 연관된다.
본 발명의 다른 실시예에 있어서, 제 2 트랙 내의 제 2 신호 펄스의 상대 위치는 제 1 트랙 내의 제 1 신호 펄스이다. 다른 실시예에 있어서, 제 2 트랙 내의 제 2 신호 펄스의 상대 위치는 제 1 신호 펄스 샘플 위치에 연관된다. 또 다른 실시예에 있어서, 제 2 트랙 내의 신호 펄스 위치는 불연속적인 순서로(즉, 1, -1, 7, -7, 2, -2, 6, -6, 3, -3, 5, -5, 4, -4) 그룹화 될 수도 있다.
도 7을 참조하면, 송신기(602) 및 수신기(604)를 구비한 통신 시스템(600)이 도시되어 있다. 송신기(602) 및 수신기(604)는 통신 경로(606)에 의해서 서로 연결된다. 통신 경로(606)는 유선 기반 네트워크(예를 들어 근거리 통신망, 광역 통신망, 인터넷, ATM망, 또는 공중 전화망 등) 또는 무선 네트워크(예를 들어, 셀룰러망, 초단파망 또는 위성망 등)가 선택될 수 있다. 통신 경로(606)에 대해서 요구되는 주요한 사항은 송신기(602)와 수신기(604) 사이의 디지털 데이터 전송 능력이다.
각 장치(602, 604)는 개별 신호 입출력 장치(608, 610)를 구비한다. 장치(608, 610)는 송신기(602) 및 수신기(604)로/로부터 아날로그 음성 신호를 전송하는 전화기로 도시되어 있다. 신호 입출력 장치(608)는 2선식 통신 경로(612)에 의해서 송신기(602)에 연결된다. 마찬가지로, 다른 신호 입출력 장치(610)는 다른 2선식 통신 경로(614)를 통해서 수신기(604)에 연결된다. 다른 실시예에 있어서, 신호 입력 장치는 송수신기에 통합되거나(즉, 송수신기에 설치된 스피커 및 마이크) 무선 통신 경로(즉, 무선 전화)를 통해서 통신한다.
송신기(602)에는 2선식 통신 경로(612)에 연결된 아날로그 신호 포트(616), CELP형 보코더(618) 및 컨트롤러(620)가 포함된다. 컨트롤러(620)는 아날로그 신호 포트(616), 보코더(618) 및 네트워크 인터페이스(622)에 연결된다. 또한, 네트워크 인터페이스(622)는 보코더(618), 컨트롤러(620) 및 통신 경로(606)에 연결된다.
마찬가지로, 수신기(604)는 다른 컨트롤러(626), 통신 경로(606) 및 다른 보코더(628)에 연결된 다른 네트워크 인터페이스(624)를 구비한다. 다른 컨트롤러(626)는 다른 보코더(628), 다른 네트워크 인터페이스(624) 및 다른 아날로그 신호 포트(630)에 연결된다. 또한, 다른 아날로그 신호 포트(630)는 다른 2선식 통신 경로(614)에 연결된다.
음성 신호는 신호 입력 장치(608)로부터 아날로그 포트(616)에서 수신된다. 컨트롤러(620)는 송신기(602)용 제어 신호 및 타이밍 신호를 제공하여 아날로그 포트(616)가 수신 신호를 신호 압축용 보코더(618)로 전송할 수 있도록 한다. 보코더(618)는 도 6에 도시된 수신 신호 압축용 데이터 구조를 갖는 고정 코드북을 구비한다. 도 6의 데이터 구조(500)는 여과 신호로부터의 제 1 신호 펄스를 제 1 트랙 내의 펄스 위치로 연관시킨다. 또한, 제 2 신호 펄스는 제 2 신호 펄스 위치와 연관되고, 제 1 트랙 내의 제 1 신호 펄스의 제 1 펄스 위치와 연관되어 판정된다.
제 1 신호 펄스와 연관된 제 2 신호 펄스 위치의 할당에 의해서 두 신호 펄스가 트랙에서 인접하여 할당되는 것을 방지한다. 제 1 신호 펄스는 인코딩되어 제 1 트랙(502)에 할당되고, 제 2 트랙(504) 내의 제 2 신호 펄스의 펄스 위치는 제 1 트랙(502)에 연관하여 인코딩된다. 그와 같이 연관된 제 2 신호 펄스의 인코딩에 의해 제 1 신호 펄스가 제 2 신호 펄스에 인접하지 않을 가능성이 보다 높은 압축 신호가 생성된다. 그 다음, 압축 신호는 도 7의 보코더(618)로부터 네트워크 인터페이스(622)로 전송된다. 네트워크 인터페이스(622)는 통신 경로(606)를 경유하여 압축 신호를 수신기(604)로 전송한다.
수신기(604)에 배치된 다른 네트워크 인터페이스(624)는 압축 신호를 수신한다. 수신기 컨트롤러(626)는 수신된 압축 신호가 수신기 보코더(628)로 전송될 수 있도록 한다. 수신기 보코더(628)는 도 6의 룩업 테이블(500)을 이용하여 압축 신호를 디코딩한다. 도 7의 보코더(628)는 도 6의 룩업 테이블(500)을 이용하여 수신된 압축 신호로부터 아날로그 신호를 재생성한다. 룩업 테이블은 고정 코드북 기여(fixed codebook contribution)를 재생한 후 장기 예측기 및 단기 예측기로 필터링한다. 아날로그 신호는 도 7의 수신기 아날로그 신호 포트(630)를 통해서 수신기 신호 입출력 장치(610)로 전송된다.
도 8을 참조하면, 송신기(602)에 의한 아날로그 음성 신호의 신호 처리가 도시되어 있다. 프리 프로세서(preprocessor, 710)는 아날로그 수신용 입력 단자를 구비하고, LP 분석 필터(714), 신호 결합기(712)에 연결된다. 신호 결합기(712)는 프리 프로세서(710) 및 합성 필터(synthesis filter)(716)로부터의 신호를 결합한다. 신호 결합기(712)의 출력은 지각 가중 프로세서(perceptional weighting processor)(718)에 연결된다. 합성 필터(716)는 LP 분석 필터(714), 신호 결합기(712), 다른 신호 결합기(720), 적응 코드북(732) 및 피치 분석기(pitch analyzer)(722)에 연결된다. 피치 분석기(722)는 지각 가중 프로세서(718), 고정 코드북 탐색기(734), 적응 코드북(732), 합성 필터(716), 다른 신호 결합기(720) 및 파라미터 인코더(724)에 연결된다. 파라미터 인코더(724)는 송신기(728), 고정 코드북 탐색기(734), 고정 코드북(730), LP 필터(714) 및 피치 분석기(722)에 연결된다.
아날로그 신호는 도 7의 아날로그 장치(608)로부터 프리 프로세서(710)에서 수신된다. 도 8의 프리 프로세서(710)는 신호를 처리하여 이득 및 다른 신호 특성을 조절한다. 그 다음, 프리 프로세서(710)로부터의 신호는 LP 분석 필터(714) 및 신호 결합기(712) 양쪽에 분배된다. LP 분석 필터(714)에 의해서 생성된 계수 정보는 합성 필터(716), 지각 가중치 필터(718) 및 파라미터 인코더(724)로 전송된다. 합성 필터(716)는 LP 분석 필터(714)로부터의 LP 계수 정보와 다른 신호 결합기(720)로부터의 신호를 수신한다. 음성의 거친 단기 스펙트럼 형상을 만드는 합성 필터(716)는, 신호 결합기(712)에 의해서 프리 프로세서(710)의 출력과 결합되는 신호를 생성한다. 신호 결합기(712)로부터의 최종 신호는, 지각 가중 프로세서(718)에 의해서 여과된다. 또한, 지각 가중 프로세서(718)는 LP 분석 필터(714)로부터 LP 계수 정보를 수신한다. 지각 가중 프로세서(718)는 높은 음성 에너지를 포함하는 주파수에서 신호 스펙트럼들(spectra)을 증폭하여 코딩 왜곡을 효과적으로 "차폐(mask)하는" 후단 필터(post-filter)이다.
지각 가중 프로세서(718)의 출력은 고정 코드북 탐색기(734) 및 피치 분석기(722)에 전송된다. 고정 코드북 탐색기(734)는 파라미터 인코더(724) 및 고정 코드북(730)으로 전송되는 코드값을 생성한다. 고정 코드북 탐색기(734)는 고정 코드북(730)으로부터 분리된 것으로 도시되어 있지만, 그 대신에 고정 코드북(730)에 포함될 수도 있고, 분리되어 있어야만 하는 것은 아니다. 또한, 고정 코드북 탐색기는 도 6의 룩업 테이블(500)의 데이터 구조에 액세스하여, 제 1펄스 위치와 연관된 제 2 신호 펄스 위치의 판정에 의해서 인코딩될 펄스 신호 정보를 보다 정확히 할 수 있어, 인접 펄스를 인코딩하는 코드북의 발생을 감소시킨다.
도 8의 피치 분석기(722)는 파라미터 인코더(724) 및 적응 코드북(732)에 전송될 피치 데이터를 생성한다. 적응 코드북(732)은 피치 분석기(722)로부터의 피치 데이터와 신호 결합기(720)로부터의 피드백 신호를 수신하여, 음성 신호의 장기(또는 주기적) 성분을 만든다. 적응 코드북(732)의 출력은 신호 결합기(720)에 의해서 고정 코드북(730)의 출력과 결합된다.
고정 코드북(730)은 고정 코드북 탐색기(734)에 의해서 생성된 코드값을 수신하여 신호를 재생성한다. 생성된 신호는 신호 결합기(720)에 의해서 적응 코드북(732)으로부터의 신호와 결합된다. 그 다음, 최종 결합 신호는 합성 필터(716)에 의해서 이용되어 음성 신호의 단기 스펙트럼 형상을 만들고, 적응 코드북(732)으로 피드백된다.
파라미터 인코더(724)는 고정 코드북 탐색기(734), 피치 분석기(722) 및 LP 필터(714)로부터 파라미터를 수신한다. 파라미터 인코더(724)는 수신된 파라미터를 이용하여 압축 신호를 생성한다. 그 다음, 압축 신호는 송신기(728)에 의해서 네트워크를 통해 전송된다.
상술한 시스템의 다른 실시예에 있어서, 보코더의 인코더 부분과 디코더 부분은 디지털 응답기와 같이 동일 장치에 마련된다. 그러한 실시예의 통신 경로는 압축 신호가 메모리로에 저장 및 검색될 수 있도록 하는 데이터 버스이다.
도 9에는 본 발명의 일 실시예에 따른 CELP형 보코더를 구비하는 수신기의 블록도가 도시되어 있다. 그 수신기(604)는 수신기(802)에 연결된 네트워크 인터페이스(616)를 구비한다. 고정 코드북(804)은 수신기(802) 및 이득 계수 "c"(812)와 연결된다. 신호 결합기(806)는 합성 필터(808), 이득 계수 "p"(811) 및 이득 계수 "c"(812)에 연결된다. 적응 코드북(810)은 이득 계수 "p"(811) 및 신호 결합기(806)의 출력에 연결된다. 합성 필터(808)는 신호 결합기(806)의 출력 및 지각 후단 필터(814)에 연결된다. 지각 후단 필터(814)는 다른 아날로그 포트(630) 및 합성 필터(808)에 연결된다.
압축 신호는 수신기(604)에 의해서 네트워크 인터페이스(616)에서 수신된다. 수신기(802)는 네트워크 인터페이스(616)에서 수신된 압축 신호로부터 데이터를 언패키징한다(unpack). 그 데이터는 고정 코드북 인덱스, 고정 코드북 이득, 적응 코드북 인덱스, 적응 코드북 이득 및 LP 계수용 인덱스로 구성된다. 고정 코드북(804)은 데이터 구조인 도 6의 룩업 테이블(500)을 포함한다. 도 9의 고정 코드북(804)은 신호 결합기(806)에 의해서 적응 코드북(810)으로부터의 신호 및 이득 계수(812)와 결합되는 신호를 생성한다. 그 다음, 신호 결합기(806)로부터의 결합 신호는 합성 필터(808)에서 수신되고, 적응 코드북(810)으로 피드백된다. 합성 필터(808)는 결합 신호를 이용하여 음성 신호를 재생성한다. 재생성된 음성 신호는 음성 신호를 조절하는 지각 후단 필터(814)를 통해서 전달된다. 그 다음, 음성 신호는 아날로그 포트(630)에 의해서 유사한 코드북을 구비한 수신기로 전송된다.
도 10을 참조하면, 이전 펄스 위치와 연관된 N+1 트랙의 펄스 위치를 구비하는 룩업 테이블 또는 코드북을 이용하는 보코딩 방법을 나타내는 흐름도가 도시되어 있다. 단계 (902)에서, 입력 신호(예를 들어, 아날로그 음성 신호)는 도 7의 수신기(604)에서 수신된다. 그 입력 신호는 도 10의 단계 (903)에서, 이산 신호(discrete signal) 부분이 처리될 수 있도록 신호 프레임으로 분할된다. 각 신호 프레임은 도 10의 단계 (904)에서 도 8의 필터(714)에 의해 처리되어 잔여 신호(residual signal)라고 불리우는 여과 입력 신호를 생성한다.
여과 잔여 신호는 도 10의 단계 (906)에서, 장기 필터 및 도 8의 적응 코드북(732)에 의해서도 여과되어, 신호 펄스를 갖는 여과 입력 신호로부터 장기 신호 잉여를 변형하거나 제거한다. 도 10의 단계 (908)에서 고정 코드북 인덱스는 제 1 트랙 내의 제 1 신호 펄스의 위치를 식별한다. 도 8의 고정 코드북(730)은 도 6의 룩업 테이블(500)을 포함하며, 그 룩업 테이블(500)은 제 2 트랙의 제 2 신호 펄스를 제 1 트랙의 제 1 펄스 위치로 상대적 매핑시킨 것이다. 단계 (909)에서, 제 2 펄스 위치의 오프셋은 제 1 펄스 위치에 관해 판정되어, 제 2 펄스를 보다 정확히 배치하도록 한다.
룩업 테이블(500)은 도 8의 고정 코드북(730)에 의해서 사용되어, 신호로부터 잔여 펄스 신호를 나타내는 2진 패턴을 생성한다. 그 다음, 2진 패턴은 도 10의 단계 (910)에서 펄스 위치의 인덱스를 포함하는 신호로 인코딩된다. 그 다음, 인코딩된 신호는 단계 (912)에서 통신 경로를 거쳐 전송된다.
소프트웨어로 구성된 CELP형 보코더를 만들기 위해서, 현재 기술 수준은 범용 디지털 신호 처리기를 다른 전기적 소자와 결합할 수 있다. 따라서, 컴퓨터 판독 가능 신호 저장 매체에 소프트웨어 코드를 포함시켜, 코드북의 펄스 위치를 한정하기 위한 부가 수용을 갖는 보코더를 구현할 수도 있다.
본 발명은 특정 실시예를 참조하여 자세히 도시 및 설명되었지만, 당업자라면 본 발명의 사상 및 범주로부터 벗어나지 않고 형식 및 세부 사항을 다양하게 변형할 수도 있음을 알 수 있을 것이며, 그와 같은 모든 변형은 첨부된 특허청구범위의 범주내에 있다.
본 발명에 따르면, 신호 품질을 향상할 수 있다.
Claims (16)
- 입력 신호를 보코딩하는 방법에 있어서,입력 신호를 필터링하여 제 1 신호 펄스 및 제 2 신호 펄스를 구비하는 여과 신호를 생성하는 필터링 단계와,상기 제 1 신호 펄스를 데이터 구조의 제 1 트랙 내의 제 1 펄스 위치와 연관지어 제 1 신호 펄스를 인코딩 하는 단계와,상기 제 2 신호 펄스를 상기 데이터 구조의 제 2 트랙 내의 제 1 펄스 위치와 연관된 제 2 펄스 위치에 할당하는 단계를 포함하는 입력 신호의 보코딩 방법.
- 제 1 항에 있어서,상기 필터링 단계는,선형 예측 필터로 신호 처리하는 단계를 더 포함하는 입력 신호의 보코딩 방법.
- 제 1 항에 있어서,상기 신호를 복수의 신호 프레임으로 분할하는 단계를 더 포함하는 입력 신호의 보코딩 방법.
- 제 3 항에 있어서,상기 분할 단계는,아날로그 신호를 수신하는 단계를 더 포함하는 입력 신호의 보코딩 방법.
- 제 3 항에 있어서,상기 분할 단계는,디지털 신호를 수신하는 단계를 더 포함하는 입력 신호의 보코딩 방법.
- 제 1 항에 있어서,상기 할당 단계는,상기 제 1 신호 펄스로부터 상기 제 2 신호 펄스의 오프셋을 식별하는 단계를 더 포함하는 입력 신호의 보코딩 방법.
- 제 6 항에 있어서,상기 식별 단계는,제 2 신호 펄스 위치로부터 상기 제 1 신호 펄스 위치의 오프셋을 산출하는 단계를 더 포함하는 입력 신호의 보코딩 방법.
- 입력 신호를 보코딩하는 장치에 있어서,입력 신호의 수신에 응답해서 적어도 제 1 신호 펄스 및 제 2 신호 펄스를 구비하는 여과 신호를 생성하는 선형 예측 필터와,상기 제 1 신호 펄스가 할당되는 복수의 상기 제 1 트랙 위치 내의 제 1 트랙 위치와, 상기 제 2 신호 펄스가 할당되는 복수의 상기 제 2 펄스 위치 내의 제 2 트랙 위치―상기 제 2 펄스 위치는 상기 제 1 신호 펄스의 상기 제 1 트랙 위치와 연관됨―의 복수의 트랙 위치를 갖는 룩업 테이블을 구비하여 복수의 여기 파라미터를 생성하는 프로세서와,상기 프로세서로부터의 상기 복수의 여기 파라미터 수신에 응답하여 전송 신호에 상기 복수의 여기 파라미터를 전송하는 송신기를 포함하는 입력 신호의 보코딩 장치.
- 제 8 항에 있어서,입력 포트의 입력 포트 수신에 응답해서 상기 입력 신호를 입력 신호 프레임들로 분할하기 위해 메모리 버퍼를 구비하는 입력 포트를 더 구비하는 입력 신호의 보코딩 장치.
- 제 8 항에 있어서,상기 프로세서는,상기 여과 신호의 상기 제 1 신호 펄스로부터 상기 제 2 신호 펄스의 오프셋을 판정하는 입력 신호의 보코딩 장치.
- 제 8 항에 있어서,상기 프로세서는,상기 제 1 트랙 위치로부터 상기 제 2 신호 펄스의 오프셋을 판정하는 입력 신호의 보코딩 장치.
- 제 8 항에 있어서,상기 입력 신호는,입력 아날로그 신호인 입력 신호의 보코딩 장치.
- 제 8 항에 있어서,상기 입력 신호는,디지털 신호인 입력 신호의 보코딩 장치.
- 제조품에 있어서,신호를 보코딩하기 위해서 채용되는 컴퓨터 판독 가능 프로그램 코드 수단을 구비하는 컴퓨터 판독 가능 신호 기록 매체(a computer-readable signal bearing medium)를 구비하되,상기 제조품의 컴퓨터 판독 가능 코드 수단은,상기 입력 신호를 필터링하여 제 1 신호 펄스 및 제 2 신호 펄스를 구비하는 여과 신호를 생성하기 위한 제 1 컴퓨터 판독 가능 프로그램 코드를 구비하는 수단과,상기 제 1 신호 펄스를 데이터 구조의 제 1 트랙 내의 제 1 펄스 위치와 연관지어 제 1 신호 펄스를 인코딩하기 위한 제 2 컴퓨터 판독 가능 프로그램 코드를 구비하는 수단과,데이터 구조의 제 2 트랙 내의 상기 제 1 펄스 위치와 관련된 제 2 펄스 위치로 상기 제 2 신호 펄스를 할당하기 위한 제 3 컴퓨터 판독 가능 프로그램 코드를 구비하는 수단을 포함하는 제조품.
- 제 14 항에 있어서,상기 제조품의 상기 제 3 컴퓨터 판독 가능 프로그램 코드 수단은,상기 제 1 신호 펄스로부터 상기 제 2 신호 펄스의 오프셋을 식별하기 위한 컴퓨터 판독 가능 프로그램 코드 수단을 더 포함하는 제조품.
- 제 15 항에 있어서,상기 제조품의 상기 제 3 컴퓨터 판독 가능 프로그램 부호화 수단은,제 2 신호 펄스 위치로부터 상기 제 1 신호 펄스 위치의 오프셋을 산출하기 위한 컴퓨터 판독 가능 부호화 수단을 더 포함하는 제조품.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/633,465 | 2000-08-07 | ||
US09/633,465 US6728669B1 (en) | 2000-08-07 | 2000-08-07 | Relative pulse position in celp vocoding |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20020012509A true KR20020012509A (ko) | 2002-02-16 |
Family
ID=24539732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010047214A KR20020012509A (ko) | 2000-08-07 | 2001-08-06 | 입력 신호의 보코딩 장치 및 방법 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6728669B1 (ko) |
EP (1) | EP1184842B1 (ko) |
JP (1) | JP5027966B2 (ko) |
KR (1) | KR20020012509A (ko) |
CN (1) | CN1200404C (ko) |
BR (1) | BR0106825A (ko) |
CA (1) | CA2350353A1 (ko) |
DE (1) | DE60101827T2 (ko) |
TW (1) | TW521265B (ko) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6980948B2 (en) * | 2000-09-15 | 2005-12-27 | Mindspeed Technologies, Inc. | System of dynamic pulse position tracks for pulse-like excitation in speech coding |
US6847929B2 (en) * | 2000-10-12 | 2005-01-25 | Texas Instruments Incorporated | Algebraic codebook system and method |
KR100503414B1 (ko) * | 2002-11-14 | 2005-07-22 | 한국전자통신연구원 | 고정 코드북의 집중 검색 방법 및 장치 |
US20040208169A1 (en) * | 2003-04-18 | 2004-10-21 | Reznik Yuriy A. | Digital audio signal compression method and apparatus |
US7742926B2 (en) * | 2003-04-18 | 2010-06-22 | Realnetworks, Inc. | Digital audio signal compression method and apparatus |
ATE368921T1 (de) * | 2003-09-29 | 2007-08-15 | Koninkl Philips Electronics Nv | Codierung von audiosignalen |
US8502706B2 (en) * | 2003-12-18 | 2013-08-06 | Intel Corporation | Bit allocation for encoding track information |
KR100723400B1 (ko) | 2004-05-12 | 2007-05-30 | 삼성전자주식회사 | 복수의 룩업테이블을 이용한 디지털 신호 부호화 방법 및장치 |
SG123639A1 (en) * | 2004-12-31 | 2006-07-26 | St Microelectronics Asia | A system and method for supporting dual speech codecs |
US7224295B2 (en) * | 2005-07-11 | 2007-05-29 | Mediatek Inc. | System and method for modulation and demodulation using code subset conversion |
KR100900438B1 (ko) * | 2006-04-25 | 2009-06-01 | 삼성전자주식회사 | 음성 패킷 복구 장치 및 방법 |
US8688437B2 (en) | 2006-12-26 | 2014-04-01 | Huawei Technologies Co., Ltd. | Packet loss concealment for speech coding |
CN101286321B (zh) * | 2006-12-26 | 2013-01-09 | 华为技术有限公司 | 双脉冲激励的线性测编码 |
CN102623012B (zh) * | 2011-01-26 | 2014-08-20 | 华为技术有限公司 | 矢量联合编解码方法及编解码器 |
CN103098128B (zh) * | 2011-06-15 | 2014-06-18 | 松下电器产业株式会社 | 脉冲位置搜索装置、码本搜索装置及其方法 |
US9546924B2 (en) * | 2011-06-30 | 2017-01-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Transform audio codec and methods for encoding and decoding a time segment of an audio signal |
WO2013048171A2 (ko) * | 2011-09-28 | 2013-04-04 | 엘지전자 주식회사 | 음성 신호 부호화 방법 및 음성 신호 복호화 방법 그리고 이를 이용하는 장치 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4625286A (en) * | 1982-05-03 | 1986-11-25 | Texas Instruments Incorporated | Time encoding of LPC roots |
NL8500843A (nl) | 1985-03-22 | 1986-10-16 | Koninkl Philips Electronics Nv | Multipuls-excitatie lineair-predictieve spraakcoder. |
US5754976A (en) | 1990-02-23 | 1998-05-19 | Universite De Sherbrooke | Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech |
ATE477571T1 (de) * | 1991-06-11 | 2010-08-15 | Qualcomm Inc | Vocoder mit veränderlicher bitrate |
US5704003A (en) * | 1995-09-19 | 1997-12-30 | Lucent Technologies Inc. | RCELP coder |
JP4063911B2 (ja) * | 1996-02-21 | 2008-03-19 | 松下電器産業株式会社 | 音声符号化装置 |
US5708757A (en) * | 1996-04-22 | 1998-01-13 | France Telecom | Method of determining parameters of a pitch synthesis filter in a speech coder, and speech coder implementing such method |
US5924062A (en) * | 1997-07-01 | 1999-07-13 | Nokia Mobile Phones | ACLEP codec with modified autocorrelation matrix storage and search |
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 |
US5963897A (en) | 1998-02-27 | 1999-10-05 | Lernout & Hauspie Speech Products N.V. | Apparatus and method for hybrid excited linear prediction speech encoding |
US6067511A (en) * | 1998-07-13 | 2000-05-23 | Lockheed Martin Corp. | LPC speech synthesis using harmonic excitation generator with phase modulator for voiced speech |
US6138092A (en) * | 1998-07-13 | 2000-10-24 | Lockheed Martin Corporation | CELP speech synthesizer with epoch-adaptive harmonic generator for pitch harmonics below voicing cutoff frequency |
US6119082A (en) * | 1998-07-13 | 2000-09-12 | Lockheed Martin Corporation | Speech coding system and method including harmonic generator having an adaptive phase off-setter |
US6094629A (en) * | 1998-07-13 | 2000-07-25 | Lockheed Martin Corp. | Speech coding system and method including spectral quantizer |
JP4308345B2 (ja) * | 1998-08-21 | 2009-08-05 | パナソニック株式会社 | マルチモード音声符号化装置及び復号化装置 |
US6240386B1 (en) * | 1998-08-24 | 2001-05-29 | Conexant Systems, Inc. | Speech codec employing noise classification for noise compensation |
US6311154B1 (en) * | 1998-12-30 | 2001-10-30 | Nokia Mobile Phones Limited | Adaptive windows for analysis-by-synthesis CELP-type speech coding |
US6539349B1 (en) * | 2000-02-15 | 2003-03-25 | Lucent Technologies Inc. | Constraining pulse positions in CELP vocoding |
-
2000
- 2000-08-07 US US09/633,465 patent/US6728669B1/en not_active Expired - Lifetime
-
2001
- 2001-06-13 CA CA002350353A patent/CA2350353A1/en not_active Abandoned
- 2001-07-02 EP EP01305719A patent/EP1184842B1/en not_active Expired - Lifetime
- 2001-07-02 DE DE60101827T patent/DE60101827T2/de not_active Expired - Lifetime
- 2001-07-31 BR BR0106825-3A patent/BR0106825A/pt not_active Application Discontinuation
- 2001-08-02 TW TW090118919A patent/TW521265B/zh active
- 2001-08-06 KR KR1020010047214A patent/KR20020012509A/ko not_active Application Discontinuation
- 2001-08-06 CN CNB011245921A patent/CN1200404C/zh not_active Expired - Fee Related
- 2001-08-07 JP JP2001239069A patent/JP5027966B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE60101827T2 (de) | 2004-12-02 |
CA2350353A1 (en) | 2002-02-07 |
US6728669B1 (en) | 2004-04-27 |
EP1184842A2 (en) | 2002-03-06 |
TW521265B (en) | 2003-02-21 |
DE60101827D1 (de) | 2004-02-26 |
EP1184842A3 (en) | 2002-05-15 |
JP2002108400A (ja) | 2002-04-10 |
JP5027966B2 (ja) | 2012-09-19 |
BR0106825A (pt) | 2002-06-04 |
CN1337671A (zh) | 2002-02-27 |
CN1200404C (zh) | 2005-05-04 |
EP1184842B1 (en) | 2004-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4213243B2 (ja) | 音声符号化方法及び該方法を実施する装置 | |
CA2185746C (en) | Perceptual noise masking measure based on synthesis filter frequency response | |
EP0764941B1 (en) | Speech signal quantization using human auditory models in predictive coding systems | |
JP3566652B2 (ja) | 広帯域信号の効率的な符号化のための聴覚重み付け装置および方法 | |
EP0764939B1 (en) | Synthesis of speech signals in the absence of coded parameters | |
KR20020012509A (ko) | 입력 신호의 보코딩 장치 및 방법 | |
KR20010024935A (ko) | 음성 코딩 | |
KR20020077389A (ko) | 광대역 신호의 코딩을 위한 대수적 코드북에서의 펄스위치 및 부호의 인덱싱 | |
FI118704B (fi) | Menetelmä ja laite lähdekoodauksen tekemiseksi | |
JPH02168729A (ja) | 音声符号化・復号化方式 | |
US6539349B1 (en) | Constraining pulse positions in CELP vocoding | |
US6980948B2 (en) | System of dynamic pulse position tracks for pulse-like excitation in speech coding | |
AU6672094A (en) | Use of an auditory model to improve quality or lower the bit rate of speech synthesis systems | |
JP2586043B2 (ja) | マルチパルス符号化装置 | |
WO1997031367A1 (en) | Multi-stage speech coder with transform coding of prediction residual signals with quantization by auditory models | |
US6385574B1 (en) | Reusing invalid pulse positions in CELP vocoding | |
EP1397655A1 (en) | Method and device for coding speech in analysis-by-synthesis speech coders | |
US7133823B2 (en) | System for an adaptive excitation pattern for speech coding | |
JP3065638B2 (ja) | 音声符号化方式 | |
JP3092436B2 (ja) | 音声符号化装置 | |
JPH08160996A (ja) | 音声符号化装置 | |
KR100389898B1 (ko) | 음성부호화에 있어서 선스펙트럼쌍 계수의 양자화 방법 | |
JPH0473700A (ja) | 音声符号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |