KR19990028181A - How to improve the performance of your voice compressor - Google Patents

How to improve the performance of your voice compressor Download PDF

Info

Publication number
KR19990028181A
KR19990028181A KR1019970065487A KR19970065487A KR19990028181A KR 19990028181 A KR19990028181 A KR 19990028181A KR 1019970065487 A KR1019970065487 A KR 1019970065487A KR 19970065487 A KR19970065487 A KR 19970065487A KR 19990028181 A KR19990028181 A KR 19990028181A
Authority
KR
South Korea
Prior art keywords
codebook
subframe
signal
optimal
candidate
Prior art date
Application number
KR1019970065487A
Other languages
Korean (ko)
Other versions
KR100277096B1 (en
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 US09/150,362 priority Critical patent/US6108624A/en
Priority to CN98119216A priority patent/CN1124590C/en
Priority to EP98307345A priority patent/EP0902421B1/en
Priority to DE69821068T priority patent/DE69821068T2/en
Priority to CA002246901A priority patent/CA2246901C/en
Priority to JP25626298A priority patent/JP3335929B2/en
Publication of KR19990028181A publication Critical patent/KR19990028181A/en
Application granted granted Critical
Publication of KR100277096B1 publication Critical patent/KR100277096B1/en

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 하나의 부프레임에 대한 코드북 검색을 수행하였던 종래 기술의 문제점을 해결하기 위하여, 두 개의 부프레임을 포함하는 검색창에 대한 코드북 검색을 수행함으로써, 미래 음성 신호에 대한 정보를 검색에 포함시켜 음성의 품질을 높이기 위한 음성 압축기의 성능 향상 방법에 대한 것으로서,In order to solve the problems of the prior art in which a codebook search for one subframe has been performed, a codebook search for a search box including two subframes is performed to include information about a future voice signal in a search. To improve the performance of the voice compressor to improve the quality of the voice,

검색창에 대한 목표 신호를 계산하는 제 1 과정과; 상기 검색창에 대한 목표 신호와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 첫 번째 부프레임에 대한 K개의 최적 코드북 후보 및 최적 코드북 이득 후보를 구하는 제 2 과정; 상기 검색창에 대한 목표 신호와 첫 번째 부프레임에 대한 최적 코드북 후보 및 최적 코드북 이득 후보로부터, 두 번째 부프레임에 대한 K개의 목표 신호를 계산하는 제 3 과정; 상기 두 번째 부프레임에 대한 목표 신호와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 두 번째 부프레임에 대한 L개의 최적 코드북 후보 및 최적 코드북 이득 후보를 구하는 제 4 과정; 상기 검색창에 대한 목표 신호와 상기 첫 번째 부프레임에 대한 최적 코드북과 이득 후보, 가능한 모든 양자화된 이득 및 상기 두 번째 부프레임에 대한 최적 코드북 후보 및 가능한 모든 양자화된 이득 후보로부터, 두 부프레임에 대한 각각의 최적 코드북과 양자화된 이득을 최종 선택하는 제 5 과정을 포함한다.Calculating a target signal for the search box; A second process of obtaining K optimal codebook candidates and optimal codebook gain candidates for the first subframe from a target signal for the search box and all codebook indexes and codebook optimal gains; A third step of calculating K target signals for a second subframe from a target signal for the search box, an optimal codebook candidate for the first subframe, and an optimal codebook gain candidate; A fourth step of obtaining L optimal codebook candidates and optimal codebook gain candidates for the second subframe from the target signal for the second subframe and all codebook indices and codebook optimal gains; From the target signal for the search box and the optimal codebook and gain candidate for the first subframe, all possible quantized gains and the best codebook candidate and all possible quantized gain candidates for the second subframe, And a fifth process of finally selecting each optimal codebook for the quantized gain.

Description

음성 압축기의 성능 향상 방법How to improve the performance of your voice compressor

본 발명은 음성 압축기(Speech Coder)의 성능 향상 방법에 관한 것으로서, 특히 CELP(Code Excited Linear Prediction) 구조의 음성 압축기의 성능을 향상시키기 위한 새로운 코드북(Codebook) 검색 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method of improving the performance of a speech coder, and more particularly, to a new codebook search method for improving the performance of a speech compressor having a Code Excited Linear Prediction (CELP) structure.

음성 압축기란 입력되는 음성 신호 중에서 과거 정보에 의하여 예측(Prediction) 가능한 부분은 전달하지 않고, 과거의 정보로부터 예측된 신호 값과 실제 입력 신호의 차이인 잔여 신호(Residual Signal)만을 전달함으로써 데이터의 양을 줄이기 위한 것이다.The voice compressor does not transmit a portion of the input voice signal that can be predicted by the past information, and transmits only the residual signal, which is a difference between the signal value predicted from the past information and the actual input signal. Is to reduce.

입력 음성 신호를 s(n)이라고 할 때, 이 음성 신호는 과거의 음성 신호 s(n-1), s(n-2),... 등에 의하여 예측될 수 있다.When the input speech signal is referred to as s (n), this speech signal can be predicted by past speech signals s (n-1), s (n-2), ... and so on.

그러면 과거의 음성 신호에 의하여 예측된 음성 신호 s′(n) 은 수학식 1 과 같이 나타낼 수 있다.Then the speech signal predicted by the speech signal of the past s ′ (n) May be represented as in Equation 1.

s′(n)=a1s(n-1)+a2s(n-2)+a3s(n-3)+...+a10s(n-10)s ′ (n) = a 1 s (n-1) + a 2 s (n-2) + a 3 s (n-3) + ... + a 10 s (n-10)

그러므로 모든 음성 신호를 전송하지 않고 상기의 차수들, 즉 a1,a2,...a10 들만을 전송함으로써 s'(n)을 구해낼 수 있다.Therefore, the above orders, i.e., without transmitting all speech signals, a 1 , a 2 , ... a 10 By sending only these, s' (n) can be obtained.

상기의 차수를 얻기 위하여 LPC(Linear Predictive Coding) 필터를 사용하게 된다. LPC 필터는 스펙트럼 필터라고도 하며, 보통 10차의 차수를 갖는 LPC 계수를 얻기 위하여 자기 상관 방법을 사용하게 된다. 그러나 상기와 같이 구해진 s'(n)은 원래의 신호와 완전히 같지는 않고, 음성의 피치(Pitch) 부분을 예측할 수는 없다.In order to obtain the above order, an LPC (Linear Predictive Coding) filter is used. LPC filters, also known as spectral filters, usually use an autocorrelation method to obtain LPC coefficients of order 10. However, the s' (n) obtained as described above is not exactly the same as the original signal, and the pitch portion of the speech cannot be predicted.

피치 분석은 음성 신호의 장기 상관(Long-term correlation)에 해당하는 피치 주기에 관한 정보를 얻어내는 과정이다. 음성의 피치는 몇 가지의 일정한 형태를 가지고 있으므로 이 피치를 하나의 코드북화 하여 저장해 놓으면, 인덱스만을 전송함으로써 해당 피치를 코드북에서 검색할 수 있다.Pitch analysis is a process of obtaining information about a pitch period corresponding to long-term correlation of a speech signal. Since the pitch of voice has several constant shapes, if the pitch is stored as one codebook, the pitch can be searched in the codebook by transmitting only an index.

상기 LPC 필터를 통과한 잔여 신호를 피치(Pitch) 필터를 통과 시켜 유성음의 피치 주기에 의한 상관성을 제거한다. 따라서 피치 필터를 통과하여 얻어진 최종 잔여 신호와 LPC 필터, 피치 필터의 계수값만 있다면 음성을 다시 복원시킬 수 있다. 상기 LPC 필터와 피치 필터의 계수값은 입력된 음성 신호를 이용하여, 가장 적은 오차 신호를 나타내는 경우에 대한 계수값을 계산함으로써 얻어낼 수 있다.The residual signal passing through the LPC filter is passed through a pitch filter to remove correlation due to the pitch period of the voiced sound. Therefore, if only the final residual signal obtained through the pitch filter, the coefficient value of the LPC filter, and the pitch filter can restore the voice again. The coefficient values of the LPC filter and the pitch filter can be obtained by calculating the coefficient values for the case of showing the least error signal using the input voice signal.

구해낸 각 필터의 계수 값과 잔여 신호를 디지털로 전달하기 위해서 양자화(Quantization)를 수행해야 한다. 잔여 신호를 양자화 하는 방법에 따라 음성 압축기의 구조를 구별할 수 있다.Quantization must be performed to digitally deliver the coefficient values of each filter and the residual signal. The structure of the voice compressor can be distinguished according to the method of quantizing the residual signal.

CELP 구조의 음성 압축기는 코드북을 이용하여 잔여 신호를 양자화한다. 즉, 이미 준비된 코드북 중에서 현재 구해진 잔여 신호와 가장 비슷한 신호를 찾고 이것의 인덱스를 수신측으로 전달한다. 수신측에서는 같은 코드북을 사용하여 전달된 인덱스를 통해 양자화된 잔여 신호를 얻을 수 있다.The voice compressor of the CELP structure quantizes the residual signal using a codebook. In other words, it finds the signal most similar to the currently obtained residual signal among the already prepared codebooks and delivers the index thereof to the receiver. The receiving side can use the same codebook to obtain the quantized residual signal through the transmitted index.

CELP 압축기는 코드북 내에 저장된 입력 여기 신호열을, 이미 구하여진 피치 필터 및 LPC 필터라는 두 개의 시변 선형 회귀(Time-varing Linear Recursive) 필터를 통과시킴으로써 얻은 신호 중, 주어진 충실도 판정을 최적화 시키는 것을 선택하도록 구성되어 있다. 보통 두 신호에 대한 평균 제곱 오차를 이용하여 비교함으로써, 충실도를 판정한다.The CELP compressor is configured to choose to optimize the given fidelity determination among the signals obtained by passing the input excitation signal sequence stored in the codebook through two time-varing linear recursive filters, a previously obtained pitch filter and an LPC filter. It is. Fidelity is usually determined by comparing using the mean squared error for two signals.

이러한 CELP 압축기는 입력으로 얻어진 음성 신호를 분석하여 필요한 파라미터를 추출하고, 이를 이용, 음성 신호를 합성하여 입력된 음성 신호와 비교하는, 소위 "합성에 의한 분석"(Analysis-by-Synthesis) 방법을 사용함으로써 음질이 매우 우수하다.The CELP compressor uses a so-called "Analysis-by-Synthesis" method, which analyzes a speech signal obtained as an input, extracts necessary parameters, and synthesizes the speech signal with the input speech signal. The sound quality is very good by using.

상기 "합성에 의한 분석" 방법이란 가능한 모든 코드북에 대하여 복원 과정을 거쳐 복원 음성 신호를 계산하고, 복원후의 음성이 원래의 입력 신호와 가장 비슷하도록 하는 코드북을 최종 선택한다.The "analyze by synthesis" method calculates a reconstructed speech signal through a reconstruction process for all possible codebooks, and finally selects a codebook in which the reconstructed speech is most similar to the original input signal.

최적의 코드북을 선택하기 위해서는 보통 입력 신호를 짧은 시간의 부프레임(Subframe)으로 나누고 매 부프레임마다 하나의 최적 코드북을 선택한다. 하나의 부프레임은 보통 20샘플(하나의 샘플은 0.125ms)로 구성된다.To select an optimal codebook, the input signal is usually divided into short time subframes and one optimal codebook is selected for every subframe. One subframe usually consists of 20 samples (0.125 ms for one sample).

상기 코드북에서 얻어지는 것은 합성음을 얻기 위한 코드워드 외에, 여기 신호의 구성을 위하여 필요한 양자화된 코드북 이득이다. 그러므로 실제로 피치 필터의 입력 신호를 얻기 위해서는 인덱스에 의해 선택된 코드워드에, 역시 인덱스에 의해 선택된 양자화된 코드북 이득을 곱해야 한다.What is obtained from the codebook is the quantized codebook gain necessary for the construction of the excitation signal, in addition to the codeword for obtaining the synthesized sound. Therefore, to actually obtain the input signal of the pitch filter, the codeword selected by the index must be multiplied by the quantized codebook gain, which is also selected by the index.

상기와 같이 동작되는 음성 압축기를 사용하여 음성 신호를 압축함에 있어서 가장 중요한 기능은, 각 필터에 대한 특성 함수를 구하는 방법과 전송되는 코드북 및 코드북 이득을 검색하는 방법에 대한 것이다. 그 중에서 코드북과 코드북 이득의 검색은 각각의 음성 신호에 대하여 필터링하는 작업을 매번 반복해야만 하므로 매우 많은 계산량을 필요로 한다.The most important function in compressing a speech signal using a speech compressor operating as described above is a method for obtaining a characteristic function for each filter and a method for retrieving the transmitted codebook and codebook gain. Among them, retrieval of the codebook and the codebook gain requires a very large amount of computation since the filtering operation for each voice signal must be repeated each time.

도 1 은 종래 기술에 의한 코드북 검색 방법을 나타낸 블럭도이다. 코드북을 선택하기 전에 최적 LPC 필터의 특성 함수 1/A(z), 피치 필터의 특성 함수 1/P(z), 가중치 필터(Weighting Filter)의 특성 함수 1/W(z)는 이미 구하여 졌다고 가정한다.1 is a block diagram showing a codebook search method according to the prior art. Before selecting the codebook, it is assumed that the characteristic function 1 / A (z) of the optimal LPC filter, the characteristic function 1 / P (z) of the pitch filter, and the characteristic function 1 / W (z) of the weighting filter have already been obtained. do.

도 1 에 도시된 바와 같이, 0 입력에 대한 응답(Zero-Input Response)을 출력하는 피치 필터(110)와; 상기 피치 필터(110)의 출력을 받아 음성 신호를 예측하는 LPC 필터(120)와; 입력된 음성 신호로부터 상기 LPC 필터(120)로부터 예측된 음성신호를 뺀 신호를 입력으로 하는 가중치 필터(130); 모든 코드북 인덱스로부터 구해진 코드북과 모든 양자화된 이득의 곱을 입력으로 하는 LPC 필터(150); 상기 가중치 필터(130)의 출력인 목표신호(Target Signal)(1)로부터 상기 LPC 필터(150)의 출력을 뺀 신호에 대하여 최적의 코드북과 양자화된 이득을 선택하는 최소 평균 제곱 오차 선택기(160)로 구성되어 있다.1, a pitch filter 110 for outputting a zero-response response; An LPC filter 120 for predicting a speech signal by receiving the output of the pitch filter 110; A weight filter 130 for inputting a signal obtained by subtracting the speech signal predicted from the LPC filter 120 from the input speech signal; An LPC filter 150 which inputs a product of a codebook obtained from all codebook indices and all quantized gains; Minimum mean square error selector 160 for selecting an optimal codebook and quantized gain for a signal obtained by subtracting the output of the LPC filter 150 from a target signal 1 that is the output of the weight filter 130. Consists of

먼저, 주어진 상기 피치 필터(110)에 의하여 0 입력에 대한 피치 필터(110)의 응답을 구하고, 이를 LPC 필터(120)의 입력으로 하여 LPC 필터(120)의 출력값을 구한다. 상기 LPC 필터(120)의 출력 값을 입력된 음성 신호에서 빼낸 다음, 이를 가중 필터(130)를 통과시켜 목표 신호(1)를 얻는다.First, the response of the pitch filter 110 to the 0 input is obtained by the given pitch filter 110, and the output value of the LPC filter 120 is obtained using the input of the LPC filter 120 as the input. The output value of the LPC filter 120 is subtracted from the input voice signal, and then passed through the weighting filter 130 to obtain the target signal 1.

그 다음 코드북 인덱스로부터 모든 가능한 코드북과 가능한 모든 양자화된 이득을 LPC 필터(150)를 통과시켜 출력 신호(2)를 얻는다. 상기 목표 신호(1)와 출력 신호(2)의 차이가 평균 제곱 오차(Mean Square Error) 관점에서 가장 작을 때의 코드북 및 양자화 이득을 선택한다.Then all possible codebooks and all possible quantized gains from the codebook index are passed through LPC filter 150 to obtain output signal 2. The codebook and the quantization gain are selected when the difference between the target signal 1 and the output signal 2 is the smallest in terms of mean square error.

상기와 같은 과정은 매 부프레임마다 독립적으로 실행되며, 최적화 과정은 부프레임 내에서 구해진 목표 신호(1)와 출력 신호(2)의 차이만을 가지고 이루어진다. 그 결과 매 부프레임마다 하나씩의 최적 코드북과 양자화된 이득을 구해야 한다는 필요성이 발생한다.The above process is performed independently for every subframe, and the optimization process is performed only with the difference between the target signal 1 and the output signal 2 obtained in the subframe. As a result, there is a need to obtain one optimal codebook and quantized gain for every subframe.

상기와 같이, 코드북은 매 부프레임 내에서 최적화를 통하여 부프레임 별로 독립적으로 구해진다. 이때 현재 부프레임의 입력 음성 신호가 주어지고 과거의 모든 정보는 각 필터의 초기값으로 주어져서 코드북 검색에 영향을 준다.As described above, the codebook is independently obtained for each subframe through optimization in every subframe. At this time, the input voice signal of the current subframe is given, and all past information is given as the initial value of each filter, thereby affecting the codebook search.

그러나 앞으로 입력될 신호에 대하여는 아무 정보가 없이 코드북 검색이 이루어진다. 따라서 음성의 특성 변화가 많은 구간, 특히 음성의 천이 구간(Transient Region)에서는, 짧은 구간의 부프레임 내에서만 최적화를 시키면 전체적으로 볼 때 최적의 코드북을 선택할 수 없다.However, the codebook search is performed without any information about the signal to be input in the future. Therefore, in a section with a large change in speech characteristics, especially in a transition region of the speech, the optimal codebook cannot be selected as a whole if optimization is performed only within a subframe of a short section.

또한 매 부프레임에 대하여 독립적인 최적화를 수행하게 되므로 부프레임 경계에 있는 신호의 특성은 최적화 과정에 덜 반영된다는 문제점이 있다. 특히 부프레임의 길이가 짧을수록 이와 같은 부프레임 경계는 더 큰 문제를 발생시킨다.In addition, since the independent optimization is performed for every subframe, there is a problem that the characteristics of the signal at the subframe boundary are less reflected in the optimization process. In particular, the shorter the subframe length, the larger the subframe boundary.

통신 시스템에서 사용되고 있는 종래 기술에 의한 CELP 구조의 표준 음성 압축기는, 상기와 같은 이유 때문에 합성하는 음성의 음질이 떨어지고 그 결과 통신 시스템의 전체 서비스 품질이 양호하지 못하다.The standard voice compressor of the CELP structure according to the prior art used in the communication system has a poor sound quality of synthesized voice for the above reason, and as a result, the overall service quality of the communication system is not good.

그러나 상기와 같은 짧은 구간내의 부프레임 내에서의 독립적인 코드북 검색으로 인한 문제점을 해결하기 위하여 새로운 음성 압축기를 표준으로 정하여 설치하는데는 많은 비용과 시간이 소요된다.However, in order to solve the problems caused by the independent codebook search in the subframe within the short interval, it is very expensive and time-consuming to set up and install a new voice compressor as a standard.

이것은 이미 많은 단말기와 기지국 시스템이 기존의 표준 음성 압축기를 사용하여 설치되어 이동 통신 서비스에 이용되고 있기 때문이다.This is because many terminal and base station systems are already installed using existing standard voice compressors and used for mobile communication services.

1One

따라서, 본 발명은 상기된 바와 같은 문제점을 해결하기 위하여,Therefore, in order to solve the problems as described above,

기존의 CELP 구조 표준 음성 압축기와 호환성을 유지하면서 음질을 향상시키기 위해 종래에 설치된 음성 압축기의 소프트 웨어만을 변경하여, 미래의 입력 정보를 미리 가지고 코드북을 검색하고 두 연속된 부프레임에서 동시에 최적화를 시켜 부프레임 경계 문제를 해결하기 위한 방법을 제공하는 것을 목적으로 한다.In order to improve the sound quality while maintaining compatibility with the existing CELP structure standard voice compressor, only the software of the conventional voice compressor is changed, and the codebook is searched with future input information in advance and optimized simultaneously in two consecutive subframes. An object of the present invention is to provide a method for solving a subframe boundary problem.

도 1 은 종래 기술에 의한 코드북 검색 방법을 나타낸 블럭도.1 is a block diagram showing a codebook search method according to the prior art.

도 2 는 본 발명에 의한 코드북 검색 방법을 나타낸 블럭도.2 is a block diagram showing a codebook searching method according to the present invention;

도 3 은 본 발명에 의해 첫 번째 부프레임에 대한 최적 코드북의 검색 방법을 나타낸 블럭도.3 is a block diagram illustrating a method for searching an optimal codebook for a first subframe according to the present invention.

도 4 는 본 발명에 의한 두 번째 부프레임의 목표 신호 계산 방법을 나타낸 블럭도.4 is a block diagram showing a target signal calculation method of a second subframe according to the present invention;

도 5 는 본 발명에 의한 두 번째 부프레임의 최적 코드북 검색 방법을 나타낸 블럭도.5 is a block diagram showing a method for searching an optimal codebook of a second subframe according to the present invention.

도 6 은 본 발명에 의한 최적 코드북과 양자화된 이득 검색 방법을 나타낸 블럭도.6 is a block diagram illustrating an optimal codebook and a quantized gain search method according to the present invention.

상기와 같은 목적을 달성하기 위하여 창안된 본 발명의 바람직한 일 실시예는,One preferred embodiment of the present invention created to achieve the above object,

검색창에 대한 목표 신호를 계산하는 제 1 과정과; 상기 검색창에 대한 목표 신호와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 첫 번째 부프레임에 대한 K개의 최적 코드북 후보 및 최적 코드북 이득 후보를 구하는 제 2 과정; 상기 검색창에 대한 목표 신호와 첫 번째 부프레임에 대한 최적 코드북 후보 및 최적 코드북 이득 후보로부터, 두 번째 부프레임에 대한 K개의 목표 신호를 계산하는 제 3 과정; 상기 두 번째 부프레임에 대한 목표 신호와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 두 번째 부프레임에 대한 L개의 최적 코드북 후보 및 최적 코드북 이득 후보를 구하는 제 4 과정; 상기 검색창에 대한 목표 신호와 상기 첫 번째 부프레임에 대한 최적 코드북 후보, 최적 이득 후보, 가능한 모든 양자화된 이득 및 상기 두 번째 부프레임에 대한 최적 코드북 후보, 최적 코드북 이득 후보 및 가능한 모든 양자화된 이득으로부터, 두 부프레임에 대한 각각의 최적 코드북과 코드북 이득을 최종 선택하는 제 5 과정을 포함한다.Calculating a target signal for the search box; A second process of obtaining K optimal codebook candidates and optimal codebook gain candidates for the first subframe from a target signal for the search box and all codebook indexes and codebook optimal gains; A third step of calculating K target signals for a second subframe from a target signal for the search box, an optimal codebook candidate for the first subframe, and an optimal codebook gain candidate; A fourth step of obtaining L optimal codebook candidates and optimal codebook gain candidates for the second subframe from the target signal for the second subframe and all codebook indices and codebook optimal gains; An optimal codebook candidate, an optimal gain candidate, all possible quantized gains, and an optimal codebook candidate, an optimal codebook gain candidate, and all possible quantized gains for the first subframe and the target signal for the search box. From the fifth step of finally selecting each optimal codebook and codebook gain for the two subframes.

본 발명에 있어서, 상기 K 및 L은 가변되는 것이 바람직하며,In the present invention, the K and L is preferably variable,

상기 제 2 과정은, 모든 가능한 코드북과 양자화되지 않은 코드북 최적 이득을 입력으로 하여 LPC 필터를 통과시켜 출력 신호를 얻는 제 1 단계와; 상기 단계의 출력 신호와 상기 과정(210)에서 구해진 검색창에 대한 목표 신호의 차이를 구하여, 평균 제곱의 관점에서 오차가 가장 작을 때의 코드북 후보와 양자화되지 않은 최적 이득 후보를 K쌍 선택하는 제 2 단계를 포함하는 것이 바람직하며, 상기 제 2 단계는, 첫 번째 부프레임에 대한 최적화가 첫 번째 부프레임 안에서만 이루어지는 것이 바람직하며,The second process includes a first step of inputting all possible codebooks and unquantized codebook optimal gains and passing an LPC filter to obtain an output signal; Obtaining the difference between the output signal of the step and the target signal for the search window obtained in the process 210, and selecting K pairs of the codebook candidate and the unquantized optimal gain candidate when the error is smallest in terms of the mean square. Preferably, the second step includes the second step, wherein the optimization for the first subframe is performed only within the first subframe.

상기 제 3 과정은, 상기의 제 2 과정에서 선택된 첫 번째 부프레임에 대한 코드북 후보 각각에서, 두 번째 부프레임에 해당하는 시간축 Lc, Lc+1, ... , 2Lc-1 위치를 제로 패딩하는 제 1 단계와; 상기 제로 패딩된 신호를 피치 필터와 LPC 필터로 통과시켜 출력 신호를 얻는 제 2 단계와; 상기 출력 신호에 상기 첫 번째 부프레임에 대한 최적 이득 후보를 곱한 신호를, 목표 신호로부터 뺌으로서 두 번째 부프레임에 해당하는 목표 신호를 얻는 제 3 단계를 포함하는 것이 바람직하며, 상기 제 2 단계는, 상기 피치 필터와 LPC 필터의 초기값은 모두 0으로 하고 필터링을 수행하는 것이 바람직하며,In the third process, in each of the codebook candidates for the first subframe selected in the second process, zero-padding positions Lc, Lc + 1, ..., 2Lc-1 corresponding to the second subframe may be used. A first step; Passing the zero padded signal through a pitch filter and an LPC filter to obtain an output signal; And a third step of obtaining a target signal corresponding to a second subframe by subtracting a signal obtained by multiplying the output signal by an optimum gain candidate for the first subframe, from the target signal. Preferably, the initial values of the pitch filter and the LPC filter are all set to 0, and filtering is performed.

상기 제 4 과정은, 모든 가능한 코드북과 코드북 최적 이득을 입력으로 하여 LPC 필터를 통과시켜 출력 신호를 얻는 제 1 단계와; 상기 제 1 단계에서 얻어진 출력 신호와 상기 두 번째 부프레임에 대한 목표 신호의 차이를 구하여, 평균 제곱의 관점에서 오차가 가장 작을 때의 코드북 후보와 양자화되지 않은 최적 이득 후보를 선택하는 제 2 단계를 포함하는 것이 바람직하며, 상기 제 2 단계에서 얻어진 코드북 후보(41)에서 첫 번째 부프레임에 해당하는 부분, 즉 시간축에서 0, 1, ... , Lc-1 위치는 모두 0으로 하는 것이 바람직하며,The fourth process includes a first step of inputting all possible codebooks and codebook optimum gains and passing an LPC filter to obtain an output signal; Obtaining a difference between the output signal obtained in the first step and the target signal for the second subframe, and selecting a codebook candidate when the error is the smallest in terms of mean square and an optimal gain candidate that is not quantized Preferably, the portion corresponding to the first subframe in the codebook candidate 41 obtained in the second step, that is, the positions 0, 1, ..., Lc-1 in the time axis are all set to 0. ,

상기 제 5 과정은, 상기 두 번째 부프레임의 코드북 후보를 피치 필터와 LPC 필터로 통과시킨 신호에, 가능한 모든 양자화된 코드북 이득 Gq2b를 곱한 출력 신호를 구하는 제 1 단계와; 상기 제 3 과정에서 구해진 출력 신호에, 가능한 모든 양자화된 이득 Gq1a를 곱하고, 이 신호에 상기 신호를 합한 출력 신호를 얻는 제 2 단계와; 상기 검색창에 대한 목표 신호와 상기 출력 신호의 차이를 구하여, 평균 제곱의 관점에서 오차를 최소화시키는 코드북과 코드북 이득을 최종 선택하는 제 3 단계를 포함하는 것이 바람직하며, 상기 제 3 단계는, n이 0∼2Lc-1 까지 변화하는 시간축이고, x(n) 이 검색창에 대한 목표 신호이고, Uk(n) 이 첫 번째 부프레임의 k번째 최적화 코드북 후보에 대한 신호이고, Zkj(n) 이 첫 번째 부프레임의 k번째 코드북에 대한 두 번째 부프레임의 j번째 최적화 코드북 후보에 대한 신호이고, Gq1a 이 첫 번째 부프레임의 a번째 양자화된 코드북 이득 후보이고, Gq2b 이 두 번째 부프레임의 b번째 양자화된 코드북 이득 후보일 때, 를 최소로 하는 j, k, a, b를 구함으로써 수행되는 것이 바람직하며, 상기 각 k와 j에 대한 모든 Gq1a , Gq2b 를 검색하지 않고, 각 부프레임에 대한 코드북의 최적 이득 후보와 같은 부호를 가지는 양자화된 이득만을 검색하는 것이 바람직하다.The fifth process includes: a first step of obtaining an output signal obtained by multiplying all signals of the quantized codebook gain Gq2 b by a signal passing the codebook candidate of the second subframe through a pitch filter and an LPC filter; A second step of multiplying all the possible quantized gains Gq1 a by the output signal obtained in the third step, and obtaining an output signal obtained by adding the signal to this signal; And obtaining a difference between a target signal for the search box and the output signal, and finally selecting a codebook and a codebook gain that minimize errors in terms of mean squares, wherein the third step includes: n this 0 to 2 L c -1 Is the time base that changes x (n) Is the goal signal for this search box, U k (n) Is the signal for the kth optimization codebook candidate of this first subframe, Z kj (n) The signal for the jth optimization codebook candidate of the second subframe for the kth codebook of this first subframe, Gq1 a Is the a-th quantized codebook gain candidate of this first subframe, Gq2 b When it is the b th quantized codebook gain candidate of this second subframe, Is preferably performed by finding j, k, a, and b to minimize Gq1 a , Gq2 b It is preferable to search only the quantized gains having the same sign as the best gain candidate of the codebook for each subframe without searching for.

본 발명은 미래의 입력 정보를 미리 가지고 코드북을 검색하고 두 연속된 부프레임에서 동시에 최적화를 시켜 부프레임 경계 문제를 해결한다. 따라서, 보다 넓은 구간의 음성 특성을 이용하여 코드북을 검색하여 전체적인 최적 코드북을 선택할 수 있으며, 합성음의 음질을 향상시킬 수 있다.The present invention solves the subframe boundary problem by searching the codebook with future input information in advance and optimizing at two consecutive subframes simultaneously. Therefore, the codebook may be searched using a wider voice characteristic to select an overall optimal codebook, and the sound quality of the synthesized sound may be improved.

또한 본 발명은, 많은 계산량이 필요한 두 부프레임에서의 동시 최적화를 위해 계산량을 줄이는 방법과, 전체 계산량을 가변적으로 조정할 수 있는 방법을 제공한다.In addition, the present invention provides a method for reducing the amount of computation for simultaneous optimization in two subframes requiring a large amount of computation and a method for variably adjusting the total amount of computation.

본 발명은 코드북의 검색을 수행함에 있어서, 연속된 두 부프레임에 걸쳐서 동시에 검색하는 구조로 되어 있다. 그러기 위하여 매 2개의 부프레임씩을 하나의 기본 검색 창(Window)으로 한다.The present invention has a structure of simultaneously searching over two consecutive subframes in performing a codebook search. To do this, make every two subframes one default search window.

부프레임 하나의 시간 간격을 Lc라고 할 때, 검색 창의 시간축 인덱스는 0, 1, ... , 2Lc-1이 된다. 여기서 첫 번째 부프레임은 0, 1, ... , Lc-1 이고, 두 번째 부프레임은 Lc, Lc+1, ... , 2Lc-1 에 해당한다.When the time interval of one subframe is Lc, the time axis indexes of the search window are 0, 1, ..., 2Lc-1. Here, the first subframe is 0, 1, ..., Lc-1, and the second subframe corresponds to Lc, Lc + 1, ..., 2Lc-1.

각 검색창에 대하여 첫 번째 부프레임에서의 최적 코드북의 후보를 K개 찾고, 찾아낸 K개의 코드북 후보 각각에 대하여 두 번째 부프레임에서 최적 코드북 후보를 L개 찾는다. 그러면 K × L 개의 코드북 조합이 구해진다.For each search box, K candidates for the optimal codebook in the first subframe are found, and L optimum codebook candidates are found in the second subframe for each of the found K codebook candidates. The K × L codebook combinations are then obtained.

구해진 모든 K × L 개의 코드북 조합들에 대하여 가능한 모든 양자화된 코드북 이득을 검색창 단위로 검색하여, 최적의 코드북 조합 하나와 이에 해당하는 양자화된 이득을 찾는다.All possible quantized codebook gains are searched for each K × L codebook combinations found in search box units to find an optimal codebook combination and a corresponding quantized gain.

도 2 는 본 발명에 의한 코드북 검색 방법을 나타낸 블럭도이다. 도시된 바와 같이, 검색창에 대한 목표 신호(11)를 계산하는 과정(210)과; 상기 검색창에 대한 목표 신호(11)와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 첫 번째 부프레임에 대한 K개의 최적 코드북 후보(21) 및 최적 코드북 이득 후보(22)를 구하는 과정(220); 상기 검색창에 대한 목표 신호(11)와 첫 번째 부프레임에 대한 최적 코드북 후보(21) 및 최적 코드북 이득 후보(22)로부터, 두 번째 부프레임에 대한 K개의 목표 신호(31)를 계산하는 과정(230); 상기 두 번째 부프레임에 대한 목표 신호(31)와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 두 번째 부프레임에 대한 L개의 최적 코드북 후보(41) 및 최적 코드북 이득 후보(42)를 구하는 과정(240); 상기 검색창에 대한 목표 신호(11)와 상기 첫 번째 부프레임에 대한 최적 코드북 후보(21)와 이득 후보(22), 가능한 모든 양자화된 이득 및 상기 두 번째 부프레임에 대한 최적 코드북 후보(41) 및 모든 양자화된 이득 후보로부터, 두 부프레임에 대한 각각의 최적 코드북(51)(53)과 코드북 이득(52)(54)을 최종 선택하는 과정(250)으로 구성되어 있다.2 is a block diagram showing a codebook searching method according to the present invention. As shown, step 210 of calculating a target signal 11 for the search box; Obtaining (220) K optimal codebook candidates (21) and optimal codebook gain candidates (22) for the first subframe from the target signal (11) for the search box and all codebook indices and codebook optimal gains; Computing the K target signals 31 for the second subframe from the target signal 11 for the search box, the optimal codebook candidate 21 for the first subframe and the optimal codebook gain candidate 22. 230; Obtaining L Optimal Codebook Candidates 41 and Optimal Codebook Gain Candidates 42 for the Second Subframe From the Target Signal 31 and All Codebook Indexes and Codebook Optimal Gains for the Second Subframe (240) ; A target signal 11 for the search box and an optimal codebook candidate 21 and a gain candidate 22 for the first subframe, all possible quantized gains and an optimal codebook candidate 41 for the second subframe. And a process 250 for finally selecting respective optimal codebooks 51, 53 and codebook gains 52, 54 for two subframes from all quantized gain candidates.

이하 도면을 참조하여 본 발명에 의한 코드북 검색 방법을 설명하면 다음과 같다.Referring to the codebook search method according to the present invention with reference to the drawings as follows.

먼저 종래 기술과 같이, 주어진 피치 필터에 의하여 0 입력에 대한 피치 필터의 응답을 구하고, 이를 LPC 필터의 입력으로 하여 LPC 필터의 출력값을 구한다.First, as in the prior art, the pitch filter's response to the zero input is obtained by the given pitch filter, and the output value of the LPC filter is obtained using the input of the LPC filter.

상기 LPC 필터의 출력 값을 입력된 두 개의 부프레임 만큼에 해당하는 음성 신호에서 빼낸 다음, 이를 가중 필터를 통과시켜 검색창에 대한 목표 신호(11)를 얻는다. 다음 상기 검색차에 대한 목표 신호(11)를 이용하여 첫 번째 부프레임에 대한 최적 코드북을 검색한다.The output value of the LPC filter is subtracted from the speech signal corresponding to the input two subframes, and then passed through the weighting filter to obtain the target signal 11 for the search box. Next, the optimal codebook for the first subframe is searched using the target signal 11 for the search difference.

도 3 은 본 발명에 의해 첫 번째 부프레임에 대한 최적 코드북의 검색 방법을 나타낸 블럭도이다. 도시된 바와 같이, 우선 모든 가능한 코드북과 양자화되지 않은 코드북 최적 이득을 입력으로 하여 LPC 필터를 통과시켜 출력 신호를 얻는다.3 is a block diagram illustrating a method for searching an optimal codebook for a first subframe according to the present invention. As shown, the output signal is first passed through an LPC filter with all possible codebooks and unquantized codebook optimum gains as inputs.

이 출력 신호와 검색창에 대한 목표 신호(11)의 차이를 구하여, 평균 제곱의 관점에서 오차가 가장 작을 때의 코드북 후보(21)와 양자화되지 않은 최적 이득 후보(22)를 선택한다. 이때, 최적화는 첫 번째 부프레임 안에서만 이루어진다. 상기의 과정을 통하여, 최적의 코드북 후보(21) K개와 각각에 해당하는 최적의 코드북 이득 후보(22) K개를 구한다.The difference between the output signal and the target signal 11 with respect to the search window is obtained to select the codebook candidate 21 and the best gain candidate unquantized 22 when the error is the smallest in terms of the mean square. At this time, optimization takes place only within the first subframe. Through the above process, K best codebook candidates 21 and K best codebook gain candidates 22 corresponding to each are obtained.

다음에는 선택된 K쌍의 코드북 후보(21) 및 코드북 이득 후보(22)에 대하여 각각의 두 번째 부프레임에 해당하는 부분에 대한 목표 신호(31)를 계산한다.Next, the target signal 31 for the portion corresponding to each second subframe is calculated for the selected K-pair codebook candidate 21 and the codebook gain candidate 22.

도 4 는 본 발명에 의한 두 번째 부프레임의 목표 신호 계산 방법을 나타낸 블럭도이다. 도시된 바와 같이, 상기의 과정(220)에서 선택된 첫 번째 부프레임에 대한 코드북 후보(21) 각각에서, 두 번째 부프레임에 해당하는 시간축 Lc, Lc+1, ... , 2Lc-1 위치를 제로 패딩(Zero Padding)하고, 이를 피치 필터와 LPC 필터를 통과시켜 출력 신호(32)를 얻는다. 이때, 상기 피치 필터와 LPC 필터의 초기값은 모두 0으로 하고 필터링한다.4 is a block diagram illustrating a method of calculating a target signal of a second subframe according to the present invention. As shown, in each of the codebook candidates 21 for the first subframe selected in the above process 220, the positions of time axes Lc, Lc + 1, ..., 2Lc-1 corresponding to the second subframe are determined. Zero padding, which is passed through a pitch filter and an LPC filter to obtain an output signal 32. At this time, the initial values of the pitch filter and the LPC filter are all set to 0 and filtered.

상기 출력 신호(32)에 상기 첫 번째 부프레임에 대한 최적 이득 후보(22)를 곱한 신호를, 목표 신호(11)로부터 빼면 두 번째 부프레임에 해당하는 목표 신호(31)를 얻을 수 있다. 상기와 같은 과정을 통해 두 번째 부프레임에 해당하는 K개의 목표 신호(31)를 구한다.When the signal obtained by multiplying the output signal 32 by the optimum gain candidate 22 for the first subframe is subtracted from the target signal 11, the target signal 31 corresponding to the second subframe may be obtained. Through the above process, K target signals 31 corresponding to the second subframe are obtained.

구해진 두 번째 부프레임에 대한 목표 신호(31)를 통하여, 두 번째 부프레임에 해당하는 최적의 코드북 및 최적 이득을 구한다.Through the target signal 31 for the obtained second subframe, an optimal codebook and an optimum gain corresponding to the second subframe are obtained.

도 5 는 본 발명에 의한 두 번째 부프레임의 최적 코드북 검색 방법을 나타낸 블럭도이다. 도시된 바와 같이, 우선 모든 가능한 코드북과 코드북 최적 이득을 입력으로 하여 LPC 필터를 통과시켜 출력 신호를 얻는다.5 is a block diagram illustrating an optimal codebook search method of a second subframe according to the present invention. As shown, the output signal is first passed through an LPC filter with all possible codebooks and codebook optimum gains as inputs.

이 출력 신호와 상기 두 번째 부프레임에 대한 목표 신호(31)의 차이를 구하여, 평균 제곱의 관점에서 오차가 가장 작을 때의 코드북 후보(41)와 양자화되지 않은 이득 후보(42)를 선택한다.The difference between this output signal and the target signal 31 for the second subframe is obtained, and the codebook candidate 41 and the unquantized gain candidate 42 when the error is the smallest in terms of the mean square are selected.

이때 코드북 후보(41)에서 첫 번째 부프레임에 해당하는 부분, 즉 시간축에서 0, 1, ... , Lc-1 위치는 모두 0으로 한다.At this time, the portion corresponding to the first subframe in the codebook candidate 41, that is, 0, 1, ..., Lc-1 positions on the time axis are all zero.

마지막으로 상기의 두 번째 부프레임에 대한 코드북 후보(41), 최적 코드북 이득 후보(42) 및 기타 정보를 통하여, 두 개의 부프레임에 해당하는 최적 코드북(51)(53)과 양자화된 이득(52)(54)을 검색한다.Finally, through the codebook candidate 41, the optimal codebook gain candidate 42, and other information for the second subframe, the optimal codebook 51 and 53 corresponding to the two subframes and the quantized gain 52 (54).

도 6 은 본 발명에 의한 최적 코드북과 양자화된 이득 검색 방법을 나타낸 블럭도이다. 도시된 바와 같이, 두 번째 부프레임의 코드북 후보(41)를 피치 필터와 LPC 필터로 통과시킨 신호(55)에, 두 번째 부프레임에 대한 가능한 모든 양자화된 코드북 이득 Gq2b를 곱한 출력 신호(56)를 구한다.6 is a block diagram illustrating an optimal codebook and a quantized gain search method according to the present invention. As shown, the signal 55 which has passed the codebook candidate 41 of the second subframe to the pitch filter and the LPC filter is multiplied by the output signal 56 multiplied by all possible quantized codebook gains Gq2 b for the second subframe. )

다음에 상기 과정(230)에서 구해진 출력 신호(32)에, 첫 번째 부프레임에 대한 가능한 모든 양자화된 이득 Gq1a를 곱하고, 이 신호에 상기 신호(56)를 합한 출력 신호(57)를 얻는다.Next, the output signal 32 obtained in the process 230 is multiplied by all possible quantized gains Gq1 a for the first subframe, and the output signal 57 obtained by adding this signal 56 to this signal is obtained.

마지막으로, 검색창에 대한 목표 신호(11)와 상기 출력 신호(57)의 차이를 구하여, 평균 제곱의 관점에서 오차를 최소화시키는 코드북(51)(53)과 이득(52)(54)을 최종 선택하게 된다.Finally, the difference between the target signal 11 and the output signal 57 for the search box is obtained, and the codebooks 51, 53 and gains 52, 54 that minimize the error in terms of mean squares are finally obtained. Will be chosen.

이때 최종적으로 코드북과 이득을 선택하기 위해서는 수학식 2를 최소화시키는 k, j, a, b 값을 구한다.At this time, in order to select a codebook and a gain, k, j, a, and b values that minimize Equation 2 are obtained.

상기 수학식 2에서 사용된 각 기호의 의미는 다음과 같다.The meaning of each symbol used in Equation 2 is as follows.

n : 0 ~ 2Lc-1까지 변화하는 시간축.n: Time axis that varies from 0 to 2Lc-1.

x(n) : 검색창에 대한 목표 신호(11). x (n) : Target signal 11 for search box.

Uk(n) : 첫 번째 부프레임의 k번째 최적화 코드북 후보에 대한 신호(32). U k (n) : Signal 32 for the kth optimization codebook candidate of the first subframe.

Zkj(n ) : 첫 번째 부프레임의 k번째 코드북에 대한 두 번째 부프레임의 j번째 최적화 코드북 후보에 대한 신호(55). Z kj (n) : Signal 55 for the j th optimization codebook candidate of the second subframe for the k th codebook of the first subframe.

Gq 1a : 첫 번째 부프레임의 양자화된 최적화 코드북 이득 후보. Gq 1 a : Quantized optimization codebook gain candidate of the first subframe.

Gq 2b : 두 번째 부프레임의 양자화된 최적화 코드북 이득 후보. Gq 2 b : Quantized optimization codebook gain candidate of the second subframe.

본 발명은 코드북 부프레임 별로 이루어지도록 되어 있는 코드북 이득의 양자화를 각 코드북 부프레임 별로 하지 않고, 두 개가 부프레임을 하나의 최적화 검색창으로 하여 두 개의 이득을 동시에 양자화하게 된다.The present invention does not quantize the codebook gains that are to be made for each codebook subframe, but for each codebook subframe, two quantize the two gains simultaneously as one optimization search window.

두 부프레임을 동시에 최적화 하는데는 계산량이 매우 많아지므로, 이를 줄이기 위하여는, 수학식 2를 최소화하는 과정에서 모든 가능한 양자화된 이득을 검색하지 않고, 즉 각 k와 j에 대하여 모든 a와 b를 검색하지 않고, 각 코드북의 최적 이득 후보인 (22) 및 (42)와 같은 부호를 가지는 양자화된 이득만을 검색한다.Optimizing two subframes simultaneously requires a lot of computation, so to reduce this, we do not search for all possible quantized gains in the process of minimizing Equation 2, i.e., search for all a and b for each k and j. Instead, only the quantized gains having the same codes as (22) and (42), which are optimal gain candidates of each codebook, are searched.

예를 들어, 첫 번째 부프레임의 특정 코드북에 대한 최적 이득의 부호가 양(+)이면, Gq2a 모두를 검색하지 않고 양수인 것만을 검색한다. 상기와 같은 과정은 모든 최적 이득을 검색하는 것에 비하여 검색 시간을 1/4로 줄이게 된다.For example, if the sign of the optimal gain for a particular codebook of the first subframe is positive, Gq2 a Search only positive numbers, not all. This process reduces the search time by a quarter compared to searching for all the optimum gains.

본 발명은 상기와 같은 과정을 통하여, 각 부프레임 별로 K개와 L개의 코드북을 먼저 구하고, 나중에 검색창에서 K×L개의 조합에 대한 하나의 최적 조합을 구한다. 따라서 검색 시간이 K와 L값에 따라 변하므로, 이 값을 가변적으로 하면 프레임 별로 검색 시간을 조절할 수가 있게 된다.Through the above-described process, the present invention first obtains K and L codebooks for each subframe, and then finds one optimal combination for K × L combinations in the search box. Therefore, since the search time varies depending on the K and L values, changing the value allows the search time to be adjusted for each frame.

미래의 정보를 사용하지만 추가되는 압축기 동작 지연(Algorithmic Delay)은 전혀 없으며, 기존의 표준 음성 압축기에 적용하여 호환성을 유지하면서도 음질의 향상을 가져올 수 있다.It uses the information of the future, but there are no additional compressor delays, and it can be applied to existing standard voice compressors to improve sound quality while maintaining compatibility.

Claims (11)

검색창에 대한 목표 신호(11)를 계산하는 제 1 과정과;Calculating a target signal 11 for the search box; 상기 검색창에 대한 목표 신호(11)와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 첫 번째 부프레임에 대한 K개의 최적 코드북 후보(21) 및 최적 코드북 이득 후보(22)를 구하는 제 2 과정;A second step of obtaining K optimal codebook candidates (21) and optimal codebook gain candidates (22) for the first subframe from the target signal (11) for the search box and all codebook indices and codebook optimal gains; 상기 검색창에 대한 목표 신호(11)와 첫 번째 부프레임에 대한 최적 코드북 후보(21) 및 최적 코드북 이득 후보(22)로부터, 두 번째 부프레임에 대한 K개의 목표 신호(31)를 계산하는 제 3 과정;A K-signal 31 for the second subframe is calculated from the target signal 11 for the search box and the optimal codebook candidate 21 and the optimal codebook gain candidate 22 for the first subframe. 3 courses; 상기 두 번째 부프레임에 대한 목표 신호(31)와 모든 코드북 인덱스 및 코드북 최적 이득으로부터, 두 번째 부프레임에 대한 L개의 최적 코드북 후보(41) 및 최적 코드북 이득 후보(42)를 구하는 제 4 과정;A fourth step of obtaining L optimal codebook candidates (41) and optimal codebook gain candidates (42) for the second subframe from the target signal (31) and all codebook indices and codebook optimum gains for the second subframe; 상기 검색창에 대한 목표 신호(11)와 상기 첫 번째 부프레임에 대한 최적 코드북 후보(21), 최적 이득 후보(22), 가능한 모든 양자화된 이득 및 상기 두 번째 부프레임에 대한 최적 코드북 후보(41), 최적 코드북 이득 후보(42) 및 가능한 모든 양자화된 이득으로부터, 두 부프레임에 대한 각각의 최적 코드북(51)(53)과 코드북 이득(52)(54)을 최종 선택하는 제 5 과정을 포함하는, 음성 압축기의 성능 향상 방법.The target signal 11 for the search box and the best codebook candidate 21 for the first subframe, the best gain candidate 22, all possible quantized gains and the best codebook candidate 41 for the second subframe. ), A fifth process of finally selecting respective optimal codebooks 51 and 53 and codebook gains 52 and 54 for two subframes, from the optimal codebook gain candidate 42 and all possible quantized gains. To improve the performance of the voice compressor. 제 1 항에 있어서, 상기 K 및 L은 가변되는, 음성 압축기의 성능 향상 방법.The method of claim 1, wherein K and L are variable. 제 1 항에 있어서, 상기 제 2 과정은,The method of claim 1, wherein the second process comprises: 모든 가능한 코드북과 양자화되지 않은 코드북 최적 이득을 입력으로 하여 LPC 필터를 통과시켜 출력 신호를 얻는 제 1 단계와;A first step of inputting all possible codebooks and unquantized codebook optimum gains and passing an LPC filter to obtain an output signal; 상기 단계의 출력 신호와 상기 과정(210)에서 구해진 검색창에 대한 목표 신호(11)의 차이를 구하여, 평균 제곱의 관점에서 오차가 가장 작을 때의 코드북 후보(21)와 양자화되지 않은 최적 이득 후보(22)를 K쌍 선택하는 제 2 단계를 포함하는, 음성 압축기의 성능 향상 방법.The difference between the output signal of the step and the target signal 11 with respect to the search window obtained in the process 210 is obtained, and the codebook candidate 21 and the optimal gain candidate that are not quantized when the error is smallest in terms of the mean square. And a second step of selecting (22) K pairs. 제 3 항에 있어서, 상기 제 2 단계는,The method of claim 3, wherein the second step, 첫 번째 부프레임에 대한 최적화가 첫 번째 부프레임 안에서만 이루어지는, 음성 압축기의 성능 향상 방법.A method of improving the performance of a speech compressor, in which the optimization for the first subframe is made only within the first subframe. 제 1 항에 있어서, 상기 제 3 과정은,The method of claim 1, wherein the third process comprises: 상기의 과정(220)에서 선택된 첫 번째 부프레임에 대한 코드북 후보(21) 각각에서, 두 번째 부프레임에 해당하는 시간축 Lc, Lc+1, ... , 2Lc-1 위치를 제로 패딩하는 제 1 단계와;In each of the codebook candidates 21 for the first subframe selected in the above process 220, the first padding zero-pads the positions Lc, Lc + 1, ..., 2Lc-1 corresponding to the second subframe. Steps; 상기 제로 패딩된 신호를 피치 필터와 LPC 필터로 통과시켜 출력 신호(32)를 얻는 제 2 단계와;Passing the zero padded signal through a pitch filter and an LPC filter to obtain an output signal (32); 상기 출력 신호(32)에 상기 첫 번째 부프레임에 대한 최적 이득 후보(22)를 곱한 신호를, 목표 신호(11)로부터 뺌으로서 두 번째 부프레임에 해당하는 목표 신호(31)를 얻는 제 3 단계를 포함하는, 음성 압축기의 성능 향상 방법.A third step of obtaining the target signal 31 corresponding to the second subframe by subtracting the signal obtained by multiplying the output signal 32 by the optimal gain candidate 22 for the first subframe from the target signal 11 Including, the method of improving the performance of the voice compressor. 제 5 항에 있어서, 상기 제 2 단계는, 상기 피치 필터와 LPC 필터의 초기값은 모두 0으로 하고 필터링을 수행하는, 음성 압축기의 성능 향상 방법.6. The method of claim 5, wherein the second step performs filtering by setting both initial values of the pitch filter and the LPC filter to zero. 제 1 항에 있어서, 상기 제 4 과정은,The method of claim 1, wherein the fourth process, 모든 가능한 코드북과 코드북 최적 이득을 입력으로 하여 LPC 필터를 통과시켜 출력 신호를 얻는 제 1 단계와;A first step of inputting all possible codebooks and codebook optimum gains to pass an LPC filter to obtain an output signal; 상기 제 1 단계에서 얻어진 출력 신호와 상기 두 번째 부프레임에 대한 목표 신호(31)의 차이를 구하여, 평균 제곱의 관점에서 오차가 가장 작을 때의 코드북 후보(41)와 양자화되지 않은 최적 이득 후보(42)를 선택하는 제 2 단계를 포함하는, 음성 압축기의 성능 향상 방법.The difference between the output signal obtained in the first step and the target signal 31 for the second subframe is obtained, so that the codebook candidate 41 and the unquantized optimal gain candidate when the error is smallest in terms of mean squares ( A second step of selecting 42). 제 7 항에 있어서, 상기 제 2 단계에서 얻어진 코드북 후보(41)에서 첫 번째 부프레임에 해당하는 부분, 즉 시간축에서 0, 1, ... , Lc-1 위치는 모두 0으로 하는, 음성 압축기의 성능 향상 방법.8. The voice compressor according to claim 7, wherein the positions corresponding to the first subframe in the codebook candidate 41 obtained in the second step, that is, 0, 1, ..., Lc-1 positions in the time axis are all zero. To improve performance. 제 1 항에 있어서, 상기 제 5 과정은,The method of claim 1, wherein the fifth process comprises: 상기 두 번째 부프레임의 코드북 후보(41)를 피치 필터와 LPC 필터로 통과시킨 신호(55)에, 가능한 모든 양자화된 코드북 이득 Gq2b를 곱한 출력 신호(56)를 구하는 제 1 단계와;A first step of obtaining an output signal 56 obtained by multiplying all of the possible quantized codebook gains Gq2 b by a signal 55 passing the codebook candidate 41 of the second subframe through a pitch filter and an LPC filter; 상기 과정(230)에서 구해진 출력 신호(32)에, 가능한 모든 양자화된 이득 Gq1a를 곱하고, 이 신호에 상기 신호(56)를 합한 출력 신호(57)를 얻는 제 2 단계와;A second step of multiplying the output signal (32) obtained in the process (230) by all possible quantized gains Gq1 a and obtaining the output signal (57) by adding the signal (56) to this signal; 상기 검색창에 대한 목표 신호(11)와 상기 출력 신호(57)의 차이를 구하여, 평균 제곱의 관점에서 오차를 최소화시키는 코드북(51)(53)과 이득(52)(54)을 최종 선택하는 제 3 단계를 포함하는, 음성 압축기의 성능 향상 방법.The difference between the target signal 11 and the output signal 57 for the search box is obtained, and final selection of the codebooks 51, 53 and gains 52, 54 that minimizes the error in terms of mean squares is performed. And a third step. 제 9 항에 있어서, 상기 제 3 단계는,The method of claim 9, wherein the third step, n이 0∼2Lc-1 까지 변화하는 시간축이고, x(n) 이 검색창에 대한 목표 신호(11)이고, Uk(n) 이 첫 번째 부프레임의 k번째 최적화 코드북 후보에 대한 신호(32)이고, Zkj(n) 이 첫 번째 부프레임의 k번째 코드북에 대한 두 번째 부프레임의 j번째 최적화 코드북 후보에 대한 신호(55)이고, Gq1a 이 첫 번째 부프레임의 a번째 양자화된 코드북 이득 후보이고, Gq2b 이 두 번째 부프레임의 b번째 양자화된 코드북 이득 후보일 때,n is 0 to 2 L c -1 Is the time base that changes x (n) Is the target signal (11) for this search box, U k (n) Signal 32 for the kth optimization codebook candidate of this first subframe, Z kj (n) Signal 55 for the j th optimization codebook candidate of the second subframe for the k th codebook of this first subframe, Gq1 a Is the a-th quantized codebook gain candidate of this first subframe, Gq2 b When it is the b th quantized codebook gain candidate of this second subframe, 를 최소로 하는 j, k, a, b를 구함으로써 수행되는, 음성 압축기의 성능 향상 방법. A method of improving the performance of a speech compressor, which is performed by finding j, k, a, and b to minimize. 제 10 항에 있어서, 각 k와 j에 대한 모든 Gq1a , Gq2b 를 검색하지 않고, 각 부프레임에 대한 코드북의 최적 이득 후보(22)(42)와 같은 부호를 가지는 양자화된 이득만을 검색하는, 음성 압축기의 성능 향상 방법.11. The method of claim 10, wherein all for each k and j Gq1 a , Gq2 b A method of improving the performance of a speech compressor, searching for only the quantized gains having the same sign as the optimal gain candidates (22) (42) of the codebook for each subframe without searching.
KR1019970065487A 1997-09-10 1997-12-03 A method for selecting codeword and quantized gain for speech coding KR100277096B1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
US09/150,362 US6108624A (en) 1997-09-10 1998-09-09 Method for improving performance of a voice coder
CN98119216A CN1124590C (en) 1997-09-10 1998-09-09 Method for improving performance of voice coder
EP98307345A EP0902421B1 (en) 1997-09-10 1998-09-10 Voice coder and method
DE69821068T DE69821068T2 (en) 1997-09-10 1998-09-10 Device and method for speech coding
CA002246901A CA2246901C (en) 1997-09-10 1998-09-10 A method for improving performance of a voice coder
JP25626298A JP3335929B2 (en) 1997-09-10 1998-09-10 How to improve audio compressor performance

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR19970046506 1997-09-10
KR1019970046506 1997-09-10
KR101997046506 1997-09-10

Publications (2)

Publication Number Publication Date
KR19990028181A true KR19990028181A (en) 1999-04-15
KR100277096B1 KR100277096B1 (en) 2001-01-15

Family

ID=66094554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970065487A KR100277096B1 (en) 1997-09-10 1997-12-03 A method for selecting codeword and quantized gain for speech coding

Country Status (1)

Country Link
KR (1) KR100277096B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100416363B1 (en) * 1998-09-16 2004-01-31 텔레폰아크티에볼라게트 엘엠 에릭슨 Linear predictive analysis-by-synthesis encoding method and encoder

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100416363B1 (en) * 1998-09-16 2004-01-31 텔레폰아크티에볼라게트 엘엠 에릭슨 Linear predictive analysis-by-synthesis encoding method and encoder

Also Published As

Publication number Publication date
KR100277096B1 (en) 2001-01-15

Similar Documents

Publication Publication Date Title
CA2061832C (en) Speech parameter coding method and apparatus
EP0696026B1 (en) Speech coding device
EP0443548B1 (en) Speech coder
US5737484A (en) Multistage low bit-rate CELP speech coder with switching code books depending on degree of pitch periodicity
US5271089A (en) Speech parameter encoding method capable of transmitting a spectrum parameter at a reduced number of bits
US5675702A (en) Multi-segment vector quantizer for a speech coder suitable for use in a radiotelephone
US6023672A (en) Speech coder
CA2061830C (en) Speech coding system
US6094630A (en) Sequential searching speech coding device
US5526464A (en) Reducing search complexity for code-excited linear prediction (CELP) coding
EP0578436B1 (en) Selective application of speech coding techniques
US5873060A (en) Signal coder for wide-band signals
US6622120B1 (en) Fast search method for LSP quantization
CA2177226C (en) Method of and apparatus for coding speech signal
CA2246901C (en) A method for improving performance of a voice coder
KR19990028181A (en) How to improve the performance of your voice compressor
EP0483882B1 (en) Speech parameter encoding method capable of transmitting a spectrum parameter with a reduced number of bits
US5978758A (en) Vector quantizer with first quantization using input and base vectors and second quantization using input vector and first quantization output
EP0755047B1 (en) Speech parameter encoding method capable of transmitting a spectrum parameter at a reduced number of bits
EP0910063B1 (en) Speech parameter coding method
KR19980031894A (en) Quantization of Line Spectral Pair Coefficients in Speech Coding

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

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee