KR100330761B1 - A fast search method for the fixed codebook of the speech coder - Google Patents

A fast search method for the fixed codebook of the speech coder Download PDF

Info

Publication number
KR100330761B1
KR100330761B1 KR1020000018838A KR20000018838A KR100330761B1 KR 100330761 B1 KR100330761 B1 KR 100330761B1 KR 1020000018838 A KR1020000018838 A KR 1020000018838A KR 20000018838 A KR20000018838 A KR 20000018838A KR 100330761 B1 KR100330761 B1 KR 100330761B1
Authority
KR
South Korea
Prior art keywords
pulse position
tracks
position index
track
value
Prior art date
Application number
KR1020000018838A
Other languages
Korean (ko)
Other versions
KR20010095585A (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 KR1020000018838A priority Critical patent/KR100330761B1/en
Priority to US09/749,782 priority patent/US7389227B2/en
Publication of KR20010095585A publication Critical patent/KR20010095585A/en
Application granted granted Critical
Publication of KR100330761B1 publication Critical patent/KR100330761B1/en

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D29/00Arrangement or mounting of control or safety devices
    • F25D29/008Alarm devices
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D11/00Self-contained movable devices, e.g. domestic refrigerators
    • F25D11/02Self-contained movable devices, e.g. domestic refrigerators with cooling compartments at different temperatures
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D2323/00General constructional features not provided for in other groups of this subclass
    • F25D2323/02Details of doors or covers not otherwise covered
    • F25D2323/021French doors
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D2400/00General features of, or devices for refrigerators, cold rooms, ice-boxes, or for cooling or freezing apparatus not covered by any other subclass
    • F25D2400/36Visual displays
    • F25D2400/361Interactive visual displays
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D2500/00Problems to be solved
    • F25D2500/06Stock management
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D2700/00Means for sensing or measuring; Sensors therefor
    • F25D2700/06Sensors detecting the presence of a product

Abstract

본 발명은 음성 부호화기의 고정코드북 고속탐색 방법에 관한 것으로, 특히, 멀티미디어 서비스용 음성 부호화기인 G.729의 고정코드북 탐색시 요구되는 계산량을 줄이면서, 동일한 음질 성능을 유지할 수 있도록 하는 음성 부호화기의 고정코드북 고속탐색 방법에 관한 것이다.The present invention relates to a fixed codebook fast search method of a speech coder, and more particularly, to fix a speech coder capable of maintaining the same sound quality while reducing the amount of computation required when searching a fixed codebook of a G.729 speech coder for multimedia services. A codebook fast search method.

본 발명은 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 결정하는 단계와, 트랙 0,1,2의 각 트랙에서 상기 상관도 값에 따라 펄스 위치 인덱스를 정렬하는 단계와, 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하는 단계와, 상기 연산 결과값이 문턱값보다 큰가를 확인하는 단계와, 상기 연산 결과값이 문턱값보다 큰 경우, 트랙 3을 탐색하는 단계와, 상기 트랙3에 대한 탐색 후, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대해 탐색을 완료하였는지를 확인하는 단계와, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대한 탐색이 완료되지 않은 경우, 트랙 0,1,2의 펄스 위치 인덱스를 증가시키는 단계와, 상기 연산 결과값이 문턱값과 같거나 작은 경우, 해당 부프레임에 대한 고정코드북 탐색을 종료하는 단계로 구성되어 진다.According to the present invention, there is provided a method of determining a correlation value for each pulse position index of tracks 0, 1 and 2, and aligning the pulse position index according to the correlation value in each track of tracks 0, 1 and 2; Calculating a sum of correlation values for each pulse position index of tracks 0, 1, and 2, checking whether the calculation result value is greater than a threshold value, and if the calculation result value is larger than a threshold value, Searching for track 3, after searching for track 3, confirming that the search has been completed for all pulse position index combinations of tracks 0, 1, and 2, and all pulse position indexes for tracks 0, 1, and 2 If the search for the combination is not completed, increasing the pulse position index of tracks 0, 1, 2; and if the calculation result value is less than or equal to the threshold, terminating the fixed codebook search for the corresponding subframe. It is composed of steps.

Description

음성 부호화기의 고정코드북 고속탐색 방법{A fast search method for the fixed codebook of the speech coder}Fast search method for the fixed codebook of the speech coder

저 전송율 음성 부호화기에서 고 음질의 음성 부호화를 위해서는 고정코드북의 효율적인 탐색방법이 매우 중요하다. G.729에서는 매 부 프레임(5msec)마다 고정코드북 탐색을 하게 되며, 고정코드북으로 17비트의 대수코드북이 이용되고, 탐색된 코드북의 펄스 위치 인덱스가 전송된다.An efficient search method of a fixed codebook is very important for high quality speech encoding in a low rate speech encoder. In G.729, a fixed codebook search is performed every frame (5 msec), a 17-bit algebra codebook is used as a fixed codebook, and the pulse position index of the searched codebook is transmitted.

도 1은 G.729 음성부호화기의 고정코드북 구조를 보이는 도표이다.1 is a diagram showing a fixed codebook structure of a G.729 speech encoder.

도 1에서 도시된 바와 같이, 트랙 0,1,2,3에 각각 펄스 i0, i1, i2, i3을 가지며, 각 펄스는 +1 혹은 -1의 크기를 갖는다.As shown in FIG. 1, the tracks 0 , 1 , 2 , 3 have pulses i 0 , i 1 , i 2 , i 3 , respectively, and each pulse has a magnitude of +1 or -1.

또한, 트랙 0에서 펄스 위치 인덱스는 0, 5, 10, ... , 35 이고, 트랙 1에서 펄스 위치 인덱스는 1, 6, 11, ... , 36이고, 트랙 2에서 펄스 위치 인덱스는 2, 7, 12, ... , 37이고, 트랙 3에서 펄스 위치 인덱스는 3, 8, 13, ... , 39이다.In addition, the pulse position index in track 0 is 0, 5, 10, ..., 35, the pulse position index in track 1 is 1, 6, 11, ..., 36, and the pulse position index in track 2 is 2 , 7, 12, ..., 37, and the pulse position indexes in track 3 are 3, 8, 13, ..., 39.

이 때, 고정코드북을 탐색한다는 것은 트랙 0,1,2,3의 트랙별 최적 펄스의 위치를 찾아내는 것이다.At this time, searching the fixed codebook is to find the position of the optimal pulse for each track of tracks 0, 1, 2, and 3.

도 2는 종래의 G.729 음성부호화기 고정코드북 탐색방법을 보이는 순서도이다.2 is a flowchart illustrating a conventional G.729 speech coder fixed codebook search method.

도 1을 참조하여, 도2의 각 단계를 설명하면 다음과 같다.Referring to Figure 1, each step of Figure 2 will be described as follows.

먼저, 트랙 0, 1, 2의 트랙별 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하고, 그 연산 결과값이 고정코드북 탐색 전에 미리 연산되어진 문턱값과 비교되어 진다.First, the sum of the correlation values for the track position pulses of tracks 0, 1, and 2 is calculated, and the result of the calculation is compared with a threshold calculated in advance before the fixed codebook search.

그리고, 상기 연산 결과값이 문턱값 보다 큰 경우는 트랙 3에 대한 탐색을 수행하고, 그러하지 않은 경우는 트랙 0, 1, 2에 대한 다음 펄스 위치 인덱스 조합을 얻기 위해 펄스 위치 인덱스를 증가시킨다.If the operation result value is larger than the threshold value, the search for track 3 is performed. If not, the pulse position index is increased to obtain the next pulse position index combination for tracks 0, 1, and 2. FIG.

또한, 상기 연산 결과값이 문턱값 보다 작은 경우는 트랙 3에 대한 탐색을 수행하지 않고, 트랙 0,1,2의 다음 펄스 위치 인덱스에 대한 조합을 선택한다.In addition, when the calculation result value is smaller than the threshold value, the search for the next pulse position index of the tracks 0, 1, and 2 is selected without performing the search for the track 3.

또한, 트랙3에 대한 탐색이 수행되면, 트랙 0, 1, 2의 모든 펄스 위치 인덱스 조합에 대한 탐색이 수행되었는지를 확인한 후, 탐색이 수행되지 않은 펄스 위치 인덱스 조합이 존재하면, 트랙 0,1,2에 대한 다음 순의 펄스 위치 인덱스 조합을 얻기 위해 펄스 위치 인덱스를 증가시킨다.Further, when the search for track 3 is performed, after confirming that the search has been performed for all pulse position index combinations of tracks 0, 1, and 2, and if there is a pulse position index combination for which no search is performed, track 0,1 Increment the pulse position index to obtain the next order pulse position index combination for, 2.

상기 과정을 도 1을 참조하여 부연하면 다음과 같다.The above process is further described with reference to FIG. 1.

도 1에서, 트랙 0, 1, 2에 대해 펄스 위치 인덱스는 0,1,2이고, 상기 각 펄스 위치 인덱스에 해당하는 상관도 값의 합, 즉,|d(0)| + |d(1)| + |d(2)|의 값과 고정코드북 탐색 전에 미리 결정되어진 문턱값을 서로 비교한 후, 트랙 3 탐색여부를 결정한다.In Fig. 1, for tracks 0, 1, and 2, the pulse position index is 0,1,2, and the sum of the correlation values corresponding to the respective pulse position indexes, that is, | d (0) | + | d (1 After comparing the value of) | + | d (2) | with a predetermined threshold value before the fixed codebook search, it is determined whether or not the track 3 is searched.

만약, 상기 상관도 벡터의 크기의 합이 문턱값 보다 작은 경우는 다음 순의 펄스 위치 인덱스 조합을 얻기위해 트랙 0,1,2중 트랙 2, 트랙 1, 트랙 0의 순으로펄스 위치 인덱스를 증가시키게 된다.If the sum of the magnitudes of the correlation vectors is smaller than the threshold value, the pulse position indexes are increased in order of track 2, track 1, and track 0 of tracks 0, 1, and 2 to obtain the next pulse position index combination. Let's go.

다시 말하면, 트랙 0,1,2 에 대한 펄스 위치 인덱스의 조합은 먼저, (0,1,2)가 선택되어지고, 펄스 위치 인덱스가 증가되면, (0,1,7)이 선택되어 진다.In other words, the combination of the pulse position indexes for the tracks 0, 1, 2 is first selected with (0, 1, 2), and when the pulse position index is increased, (0, 1, 7) is selected.

펄스 위치 인덱스 조합을 순서적으로 나열하면 다음과 같이 되는데, (0,1,2), (0,1,7) , (0,1,12), .... ,(0,6,2), (0,6,7) , (0,6,12) , ... , 와같이 8 x 8 x 8의 총 512개의 펄스 위치 인덱스 조합이 순차적으로 선택되어지면서 연산이 수행되게 된다.The order of pulse position index combinations is as follows: (0,1,2), (0,1,7), (0,1,12), ...., (0,6,2 ), (0,6,7), (0,6,12), ..., a total of 512 pulse position index combinations of 8 x 8 x 8 are sequentially selected and the operation is performed.

또한, 상기 상관도 값의 합이 문턱값 보다 큰 경우는 트랙 3에 탐색을 수행하게 되는데, 문턱값을 넘는 펄스 위치 인덱스 조합에 대해 트랙 3의 최적 펄스 위치를 탐색하는 것이다.In addition, when the sum of the correlation values is larger than the threshold value, the search is performed on track 3, which searches for the optimum pulse position of track 3 for a combination of pulse position indexes exceeding the threshold value.

그리고, 트랙 3에 대한 탐색이 수행된 후, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대한 연산이 수행되었으면 해당 부프레임의 고정코드북 탐색을 종료하고, 그러하지 않으면, 재차 펄스 위치 인덱스를 증가시켜서 계속 연산을 수행한다.After the search for track 3 is performed, if the calculation for all pulse position index combinations of tracks 0, 1, and 2 is performed, the fixed codebook search for the corresponding subframe is terminated. Otherwise, the pulse position index is increased again. To continue the operation.

이 때, 상기 문턱값은 고정코드북 탐색의 복잡성을 줄이는데, 큰 역활을 수행하는 것으로서, 가능한 모든 펄스 위치를 탐색하기 위해서는 트랙 0,1,2,3의 모든 펄스 위치 인덱스의 조합, 8 x 8 x 8 x 16 = 8192개의 조합을 모두 탐색하는 것이 요구되지만, 트랙 0,1,2 의 펄스 위치 인덱스 조합에 대한 상관도 값의 합과 문턱값을 비교하여, 문턱값을 넘는 트랙 0,1,2,의 펄스 위치 인덱스 조합에 대해서만, 트랙 3의 펄스 위치를 탐색하도록 한다. 즉, 트랙 3의 펄스 위치를 찾기 위한 모든 조합수 512개중 실험적인 데이터에 근거해서 가능성이 적은 일부의 후보를 제외시키는 것이다.At this time, the threshold reduces the complexity of the fixed codebook search, which plays a large role. In order to search for all possible pulse positions, the combination of all pulse position indices of tracks 0, 1, 2, and 3, 8 x 8 x It is required to search all 8 x 16 = 8192 combinations, but compare the threshold and the sum of the correlation values for the pulse position index combinations of tracks 0,1,2 to track 0,1,2 above the threshold. The pulse position of track 3 is searched only for the pulse position index combination of and. That is, some candidates with less likelihood are excluded based on experimental data among all 512 combinations for finding the track position of track 3.

그러나, 상기 종래의 음성부호화기 고정코드북 탐색 방법은 트랙 0,1,2의 펄스 위치 인덱스에 대한 모든 조합 512개에 대해 문턱값과 비교함으로써, 고정코드북 탐색 시간이 오래 걸리는 단점이 있다.However, the conventional speech coder fixed codebook search method has a disadvantage in that the fixed codebook search time is long by comparing the threshold values for all 512 combinations of the pulse position indexes of tracks 0, 1, and 2.

본 발명은 상기와 같은 문제점을 해결하기 위하여, 멀티미디어 서비스용 음성 부호화기인 G.729의 고정코드북 탐색시 요구되는 계산량을 줄이면서, 동일한 음질 성능을 유지할 수 있도록 하는 음성 부호화기의 고정코드북 고속탐색 방법을 제공하는데 있다.In order to solve the above problems, the present invention provides a fixed codebook fast search method of a speech coder that can maintain the same sound quality while reducing the amount of computation required when searching a fixed codebook of G.729, a speech coder for multimedia services. To provide.

상기 본 발명의 목적을 달성하기 위한 기술적 사상으로, 본 발명은 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 결정하는 단계와, 트랙 0,1,2의 각 트랙에서 상기 상관도 값에 따라 펄스 위치 인덱스를 정렬하는 단계와, 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하는 단계와, 상기 연산 결과값이 문턱값보다 큰가를 확인하는 단계와, 상기 연산 결과값이 문턱값보다 큰 경우, 트랙 3을 탐색하는 단계와, 상기 트랙3에 대한 탐색 후, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대해 탐색을 완료하였는지를 확인하는 단계와, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대한 탐색이 완료되지 않은 경우, 트랙 0,1,2의 펄스 위치 인덱스를 증가시키는 단계와, 상기 연산 결과값이 문턱값과 같거나 작은 경우, 해당 부프레임에 대한 고정코드북 탐색을 종료하는 단계로 구성되어 진다.In order to achieve the object of the present invention, the present invention is to determine the correlation value for each pulse position index of tracks 0, 1, 2, and the correlation in each track of tracks 0, 1, 2 Arranging the pulse position indices according to the degree values, calculating a sum of the correlation values for the respective pulse position indices of tracks 0, 1, and 2, and confirming whether the calculation result value is greater than a threshold value. And searching for track 3 when the calculation result value is larger than a threshold value, and checking whether the search is completed for all pulse position index combinations of tracks 0, 1, and 2 after the search for track 3. And, if the search for all pulse position index combinations of tracks 0, 1 and 2 is not completed, increasing the pulse position indexes of tracks 0, 1 and 2, and the operation result is less than or equal to the threshold value. If fixed for that subframe Deubuk is composed of terminating the search.

도 1은 G.729 음성부호화기의 고정코드북 구조를 보이는 도표이다.1 is a diagram showing a fixed codebook structure of a G.729 speech encoder.

도 2는 종래의 G.729 음성부호화기 고정코드북 탐색방법을 보이는 순서도이다.2 is a flowchart illustrating a conventional G.729 speech coder fixed codebook search method.

도 3은 본 발명의 음성부호화기의 고정코드북 탐색방법을 보이기 위한 순서도이다.3 is a flowchart illustrating a fixed codebook search method of the voice encoder of the present invention.

도 4는 특정 부프레임에서 트랙0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 보이는 일실시예에 대한 도표이다.4 is a diagram of one embodiment showing a correlation value for each pulse position index of tracks 0, 1, 2 in a particular subframe.

도 5는 특정 부프레임에서 트랙 0,1,2의 각 트랙에서 상관도 값에 따라 펄스 위치 인덱스를 내림차순으로 정렬하는 것에 대한 일실시예에 대한 도표이다.FIG. 5 is a diagram for one embodiment of sorting the pulse position index in descending order according to the correlation value in each track of tracks 0,1,2 in a particular subframe.

도 6은 특정 부프레임에서 트랙 0,1,2의 각 펄스 위치가 최적 펄스 위치로 채택되어질 확률 통계값을 보이는 도표이다.FIG. 6 is a chart showing probability statistics for each pulse position of tracks 0, 1, 2 to be adopted as an optimal pulse position in a specific subframe.

이하 본 발명의 실시예를 첨부한 도면을 참조하면서, 그 구성 및 작용에 대하여 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings an embodiment of the present invention, the configuration and operation will be described in detail.

각 고정코드북 벡터는 도1에 도시된 바와 같이, 지정된 위치 중에서 +1 또는 -1을 크기로 갖는 4개의 펄스를 가지며 다음과 수식과 같이 표현된다.As shown in FIG. 1, each fixed codebook vector has four pulses having a magnitude of +1 or -1 among designated positions, and is expressed as follows.

이 때, 상기 수학식 1에서 c(n)은 고정코드북 벡터, δ(n)은 단위펄스, si는 양수 및 음수 부호, mi는 i번째 펄스 위치를 나타낸다.In this equation, c (n) is a fixed codebook vector, δ (n) is a unit pulse, s i is a positive and negative sign, and m i is an i-th pulse position.

고정코드북의 탐색을 위한 대상신호 χ'(n)은 피치검색에서 사용된 대상신호 χ(n)에서 적응코드북에 의한 기여분을 제거함으로써 얻어지며 다음과 수식과 같이 표현된다.The target signal χ '(n) for searching the fixed codebook is obtained by removing the contribution by the adaptive codebook from the target signal χ (n) used in the pitch search and is expressed as follows.

이 때, gp는 적응코드북 이득이며, y(n)은 적응코드북 벡터이다.Where g p is the adaptive codebook gain and y (n) is the adaptive codebook vector.

또한, 트랙 0,1,2,3의 펄스 위치 인덱스 k의 코드북 벡터를 ck라고 하면, 최적화된 코드북벡터는 다음 수식을 최대화하는 코드북벡터로 선택되어 진다.Further, if the codebook vector of the pulse position index k of tracks 0, 1, 2, and 3 is c k , the optimized codebook vector is selected as the codebook vector maximizing the following equation.

이 때, d는 대상신호 χ'(n)과 합성필터의 임펄스 응답h(n) 간의 상관도 벡터, Φ는 h(n)의 상관도 행렬, dt및 ck t는 d 및 ck의 전치행렬인데, d 및 Φ는 각각 다음 수식으로 주어진다.Where d is the correlation vector between the target signal χ '(n) and the impulse response h (n) of the synthesis filter, Φ is the correlation matrix of h (n), and d t and c k t are d and c k A transpose matrix, where d and Φ are each given by

또한, 상기 수학식 3에서 분자는 다음 수식으로 주어진다.Further, in Equation 3, the molecule is given by the following equation.

이 때, 상기 수학식 6에 있어서, mi는 i번째 펄스 위치이며, si는 그 부호이다.At this time, in Equation 6, m i is the i-th pulse position, and s i is its sign.

또한, 상기 수학식 3에서 분모는 다음 수식과 같이 주어진다.In addition, the denominator in Equation 3 is given by the following equation.

상기 상관도 벡터 d(n)은 절대값인 d'(n) = |d(n)|과 그 부호로 분해된다.The correlation vector d (n) is decomposed into an absolute value d '(n) = | d (n) | and its sign.

그리고, 행렬 Φ는 앞에서 구한 부호값을 포함하기 위해 다음 수식과 같이 수정된다.The matrix Φ is modified as follows to include the sign value obtained earlier.

d'(n) = |d(n)|을 적용시키면, 수학식 6은 다음 수식으로 주어진다.When d '(n) = | d (n) | is applied, equation (6) is given by the following equation.

또한, 수학식 7은 상기 수학식 8을 적용시켜, 다음 수식으로 주어진다.In addition, equation (7) is given by the following equation by applying the equation (8).

또한, 문턱값 결정은 트랙 0,1,2의 최대 상관도 값과 평균 상관도 값의 함수로 구해진다. 트랙 0,1,2의 최대 상관도 값은 다음과 같다.In addition, the threshold determination is obtained as a function of the maximum correlation value and the average correlation value of the tracks 0, 1, 2. The maximum correlation values of tracks 0, 1 and 2 are as follows.

이 때, t0, t1, t2는 각각 트랙 0,1,2를 의미하고, Cmax는 트랙 0,1,2에서의 상관도 값의 절대값 d'(n)의 최대값들의 합, max[d'(ti)]는 세 트랙 t0, t1, t2에서의 상관도 값의 절대값의 최대값을 의미한다.Where t 0 , t 1 , and t 2 represent tracks 0 , 1 and 2 , respectively, and C max is the sum of the maximum values of the absolute values d '(n) of the correlation values in tracks 0 , 1 and 2 , respectively. , max [d '(t i )] means the maximum value of the absolute value of the correlation values at the three tracks t 0 , t 1 , t 2 .

또한, 트랙 t0, t1, t2에 근거한 평균 상관도 값은 다음 수식으로 주어진다.In addition, the average correlation value based on the tracks t 0 , t 1 , t 2 is given by the following equation.

이 때, 상기 평균 상관도 값 Cav및 최대 상관도 값 Cmax을 이용하면, 문턱값Cth은 다음 수식으로 주어진다.At this time, using the average correlation value C av and the maximum correlation value C max , the threshold value C th is given by the following equation.

이 때, αt값은 트랙 3, t3을 탐색할 수 있는 트랙 0,1,2의 펄스 위치 인덱스 조합 후보들의 수를 조절하는데, 512개의 모든 후보에 대해 트랙 3을 탐색하는 것과 동일하게 되기 위해서는 αt는 0.4로 설정하며, 이 값은 트랙 0,1,2의 펄스 위치 인덱스 조합 후보의 수를 평균 60개로 만들며, 단지 5% 만이 90을 넘기게 된다.At this time, the α t value adjusts the number of pulse position index combination candidates of tracks 0, 1, and 2 that can search tracks 3 and t 3 , which is the same as searching track 3 for all 512 candidates. Α t is set to 0.4, which makes the average number of pulse position index combination candidates of tracks 0, 1, and 2 average 60, with only 5% exceeding 90.

상기 문턱값은 고정코드북 탐색을 시작하기 전에 미리 결정되어지며, 상기 문턱값을 넘는 펄스 위치 인덱스 조합 후보만이 트랙 3의 탐색을 수행하게 된다.The threshold value is predetermined before starting the fixed codebook search, and only the pulse position index combination candidate above the threshold value performs the search of track 3.

도 3은 본 발명의 고정코드북 탐색방법을 보이기 위한 순서도이다.3 is a flowchart illustrating a method for searching a fixed codebook according to the present invention.

도 3에 도시된 바와 같이, 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 결정하는 단계(S100)와, 트랙 0,1,2의 각 트랙에서 상기 상관도 값에 따라 펄스 위치 인덱스를 정렬하는 단계(S110)와, 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하는 단계(S120)와, 상기 연산 결과값이 문턱값보다 큰가를 확인하는 단계(S130)와, 상기 연산 결과값이 문턱값보다 큰 경우, 트랙 3을 탐색하는 단계(S140)와, 상기 트랙3에 대한 탐색 후, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대해 탐색을 완료하였는지를 확인하는 단계(S150)와, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대한 탐색이 완료되지 않은 경우, 트랙 0,1,2의 펄스 위치 인덱스를 증가시키는 단계(S160)와, 상기 연산 결과값이 문턱값과 같거나작은 경우, 해당 부프레임에 대한 고정코드북 탐색을 종료하는 단계(S170)로 구성되어 진다.As shown in FIG. 3, determining a correlation value for each pulse position index of tracks 0, 1, and 2 (S100), and pulses according to the correlation value in each track of tracks 0, 1 and 2; Sorting the position index (S110), calculating a sum of the correlation values for each pulse position index of tracks 0, 1, and 2 (S120), and checking whether the calculation result value is greater than a threshold value. Step S130, searching for track 3 when the calculation result value is greater than a threshold value (S140), and for all pulse position index combinations of tracks 0, 1, and 2 after searching for track 3 Checking whether the search is completed (S150), and when the search for all pulse position index combinations of tracks 0, 1 and 2 is not completed, increasing the pulse position indexes of tracks 0, 1 and 2 (S160). And, if the result of the calculation is equal to or less than a threshold, a fixed codebook search for the corresponding subframe. A is composed of steps (S170) to end.

상기와 같은 구성을 갖는 각 단계의 상호작용에 대한 설명을 도 1, 도 4 , 도 5, 도 6을 참조하여 설명하면 다음과 같다.The interaction of each step having the configuration as described above will be described with reference to FIGS. 1, 4, 5, and 6 as follows.

상기 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 결정하는 단계(S100)는 도1에서 도시된 바와 같이, 트랙 0,1,2에 대해 트랙별 각 펄스 위치 인덱스에 대한 상관도 값을 결정한다. 즉, 상관도 값을 d'(n)이라면, 트랙 0에 대해서는 d'(0), d'(5), d'(10), ... ,d'(35)의 크기를 각각 구하고, 트랙 1에 대해서는 d'(1), d'(6), d'(11), ... , d'(36)의 크기를 각각 구하고, 트랙 2에 대해서는 d'(2), d'(7), d'(12), ... , d'(37)의 크기를 각각 구한다.Determining a correlation value for each pulse position index of the tracks 0, 1, 2 (S100) is shown in Figure 1, the correlation for each pulse position index for each track for the track 0, 1, 2 Determine the degree value. That is, if the correlation value is d '(n), the size of d' (0), d '(5), d' (10), ..., d '(35) is obtained for track 0, respectively. For track 1, the sizes of d '(1), d' (6), d '(11), ..., d' (36) are obtained, respectively. For track 2, d '(2) and d' ( 7), the size of d '(12), ..., d' (37), respectively.

도 4는 특정 부프레임에서 트랙0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 보이는 일실시예에 대한 도표인데, 트랙별 각 펄스 위치 인덱스에 대한 상관도 값을 보여주고 있다.FIG. 4 is a diagram showing an example of a correlation value for each pulse position index of tracks 0, 1 and 2 in a specific subframe, and shows a correlation value for each pulse position index for each track.

또한, 상기 트랙 0,1,2의 각 트랙에서 상기 상관도 값에 따라 펄스 위치 인덱스를 정렬하는 단계(S110)는 상기와 같이 구해진 각 펄스 위치 인덱스에 대한 상관도 벡터의 크기를 트랙별로 서로 비교하여, 내림차순으로 정렬한다.Further, in the step S110 of aligning the pulse position indexes according to the correlation values in the tracks of the tracks 0, 1, and 2, the magnitudes of the correlation vectors for the respective pulse position indexes obtained as described above are compared with each other for each track. To sort in descending order.

즉, 트랙 0의 모든 펄스 위치 인덱스에 대해 구해진 상관도 벡터의 크기를 서로 비교하여, 내림차순 정렬한다. 트랙 1 및 트랙 2에 대해서도 동일한 방법으로 내림차순 정렬을 수행한다.That is, the magnitudes of the correlation vectors obtained for all pulse position indices of track 0 are compared with each other, and are sorted in descending order. Descending sorting is performed for track 1 and track 2 in the same manner.

도 5는 특정 부프레임에서 트랙 0,1,2의 각 트랙에서 상관도 벡터 크기에 따라 펄스 위치 인덱스를 내림차순으로 정렬하는 것에 대한 일실시예에 대한 도표이다.FIG. 5 is a diagram for one embodiment of sorting the pulse position index in descending order according to the correlation vector magnitude in each track of tracks 0,1,2 in a particular subframe.

도 4 및 도 5를 참조하여 설명하면, 도 4는 트랙 0, 1, 2에서 각 펄스 위치 인덱스에 대한 상관도 값이 주어져 있고, 도 5는 상기 상관도 값에 의거하여, 내림차순으로 정렬된 펄스 위치 인덱스를 보여주고 있다.Referring to FIGS. 4 and 5, FIG. 4 is given a correlation value for each pulse position index in tracks 0, 1, and 2, and FIG. 5 shows pulses arranged in descending order based on the correlation values. It shows the location index.

따라서, 트랙 0,1,2에서 펄스 위치 인덱스가 새로이 정렬되어, 트랙 0에서는 5,25, ... , 30으로 정렬되었고, 트랙 1에서는 6,1, ... , 31로 정렬되었고, 트랙 2에서는 32, 37, ... , 27로 정렬되었다.Thus, the pulse position indices in tracks 0,1,2 are newly sorted, 5,25, ..., 30 in track 0, 6,1, ..., 31 in track 1, and tracks In 2, they were sorted by 32, 37, ..., 27.

또한, 상기 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하는 단계(S120)는 트랙 0,1,2의 펄스 위치 인덱스 조합에 대한 각 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하는 것이다.In addition, calculating the sum of the correlation values for the respective pulse position indices of the tracks 0, 1 and 2 (S120) may be performed. Calculate the sum of values.

도 5를 참조하여 설명하면, 트랙 0,1,2의 각 펄스 위치 인덱스 조합 (5,6,32)에 대해 각 펄스 위치 인덱스에 대한 상관도 값의 합 |d(5)| + |d(6)|+ |d(32)|을 구하는 것이다.Referring to Fig. 5, the sum of the correlation values for each pulse position index for each pulse position index combination (5,6,32) of tracks 0, 1, 2 | d (5) | + | d ( 6) | + | d (32) |

또한, 상기 연산 결과값이 문턱값보다 큰가를 확인하는 단계는 상기 펄스 위치 인덱스 조합에 대한 연산값이 고정코드북 탐색 전에 미리 결정된 문턱값과 비교를 수행한다.In the determining whether the operation result value is larger than the threshold value, the operation value for the pulse position index combination is compared with a predetermined threshold value before the fixed codebook search.

또한, 상기 연산 결과값이 문턱값보다 큰 경우, 트랙 3을 탐색하는 단계(S140)는 상기 비교 수행에 의해 상기 연산값이 문턱값보다 크면, 그 때의 펄스 위치 인덱스 조합에 대해서 트랙 3의 최적 펄스 위치 탐색을 수행하게 된다.Further, when the calculation result value is larger than the threshold value, searching for track 3 (S140) is performed when the calculation value is larger than the threshold value by performing the comparison. The pulse position search will be performed.

일례로서, 도 5에서 펄스 위치 인덱스 조합 (5, 6, 32)에 대한 상관도 벡터 크기의 합값이 문턱값보다 크면, 트랙 0,1,2,3에서 최적 펄스 위치를 찾기 위한 탐색 후보로 (5,6,32,3), (5,6,32,8), ... , (5,6,32,39)와 같이 된다. 이는 상기 펄스 위치 인덱스 조합(5,6,32)에 도 1에 도시된 트랙 3의 각 펄스 위치 인덱스를 부가한 조합이다.As an example, if the sum of the correlation vector magnitudes for the pulse position index combinations (5, 6, 32) in FIG. 5 is greater than the threshold, as a search candidate for finding the optimal pulse position in tracks 0, 1, 2, 3 ( 5,6,32,3), (5,6,32,8), ..., (5,6,32,39). This is a combination of adding the pulse position index combinations 5, 6, and 32 to each pulse position index of track 3 shown in FIG.

또한, 상기 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대해 탐색을 완료하였는지를 확인하는 단계(S150)는 상기 연산 결과값이 문턱값보다 큰 경우의 모든 후보들에 대해 트랙 3을 탐색하였는지 확인하는 것이다.In addition, the step S150 of checking whether all the pulse position index combinations of the tracks 0, 1, and 2 are completed (S150) determines whether the track 3 is searched for all candidates when the calculation result value is larger than the threshold value. will be.

또한, 상기 트랙 0,1,2의 펄스 위치 인덱스를 증가시키는 단계(S160)는 상기 연산 결과값이 문턱값보다 큰 경우에 트랙 0,1,2에 대해 다음 순서의 펄스 위치 인덱스조합을 얻기위해 펄스 위치 인덱스를 증가시킨다.In addition, the step of increasing the pulse position index of the track 0, 1, 2 (S160) is to obtain the next pulse position index combination for the track 0, 1, 2 when the operation result value is larger than the threshold value Increase the pulse position index.

예를 들어, 도 5에서 트랙 0,1,2에서 현재 탐색 후보가 (5,6,32)이면, 펄스 위치 인덱스가 증가된 탐색 후보는 (5,6,37)과 같이 되어 질수 있다.For example, if the current search candidate is (5,6,32) in tracks 0, 1, and 2 in FIG. 5, the search candidate having an increased pulse position index may be (5, 6, 37).

그리고, 재차 펄스 위치 인덱스가 증가되면, (5,6,12)와 같이 되어진다.Then, when the pulse position index is increased again, it becomes (5, 6, 12).

또한, 상기 연산 결과값이 문턱값보다 작은 경우에는 트랙 3에 대한 탐색을 수행하지 않고, 해당 부프레임의 고정코드북 탐색을 종료(S170)하게 된다.In addition, when the operation result value is smaller than the threshold value, the search for the fixed codebook of the corresponding subframe is ended without performing the search for track 3 (S170).

따라서, 트랙 3을 탐색하기 위한 후보를 결정함에 있어서, 문턱값이 넘지 않는 후보가 생길 시에는 그 나머지 후보들도 문턱값을 넘지 못하므로, 고정코드북의 탐색을 중지하게 됨으로써, 불필요한 계산량을 줄일 수 있다.Accordingly, in determining a candidate for searching for track 3, when a candidate does not exceed the threshold value, the remaining candidates do not exceed the threshold value, so that the search of the fixed codebook is stopped, thereby reducing unnecessary computation. .

도 6은 특정 부프레임에서 트랙 0,1,2의 각 펄스 위치가 최적 펄스 위치로채택되어질 확률 통계값을 보이는 도표이다.FIG. 6 is a chart showing probability statistics in which each pulse position of tracks 0, 1 and 2 is adopted as an optimal pulse position in a specific subframe.

도 6에 도시된 바와 같이, 트랙 0,1,2의 각 펄스 위치가 최적 펄스 위치로 될 확률값이 순차적으로 나열되어 있는데, 이는 각 펄스 위치 인덱스에 대한 상관도 값의 크기에 대해 내림차순으로 정렬한 것과 동일한 순서로 나열되어 있다.As shown in Fig. 6, the probability values of the respective pulse positions of tracks 0, 1, and 2 become optimal pulse positions are sequentially arranged, which are arranged in descending order with respect to the magnitude of the correlation value for each pulse position index. They are listed in the same order.

상기 수학식 3을 참조하면, 이것을 이해할 수 있는데, 수학식 3의 분자가 제곱 형태로 되어있기 때문에 상대적으로 분모보다 그 기여도가 크다.Referring to Equation 3, this can be understood. Since the numerator of Equation 3 is squared, its contribution is relatively greater than the denominator.

따라서, 상관도 값 Ck를 최대화하는 펄스 위치가 최적 펄스 위치가 될 확률이 매우 높고, 도 6에서와 같이, 가장 큰 상관도 벡터 크기를 가지는 펄스 위치가 최적 펄스 위치일 확률값이 가장 크다.Therefore, the probability that the pulse position maximizing the correlation value C k becomes the optimum pulse position is very high, and as shown in FIG. 6, the pulse value having the largest correlation vector magnitude has the largest probability value.

상기와 같은 방법에 의해, 트랙 0,1,2에 있어서, 각 트랙의 8개의 펄스 위치 값들을 모두 찾는 것이 아니고, 최적 펄스 위치가 되는 확률값이 가장 큰 순으로, 다시 말하면, 상관도 값이 큰 순으로 탐색하여, 제한된 펄스 위치 값들만 탐색한다.By the above method, instead of finding all eight pulse position values of each track in the tracks 0, 1, and 2, the probability value that becomes the optimum pulse position is the largest, that is, the correlation value is the largest. By searching in order, only limited pulse position values are searched.

예를 들어, 도 6의 경우, 트랙 0은 상위 4개의 펄스 위치, 트랙 1은 상위 5개의 펄스 위치, 트랙 2는 상위 6개의 펄스 위치만을 탐색하고, 나머지 작은 확률값을 가지는 경우는 후보 검출 및 탐색을 생략함으로써, 음질 훼손없이, 고정코드북 탐색에 소요되는 계산량을 줄일 수 있다.For example, in FIG. 6, track 0 searches for the top four pulse positions, track 1 for the top five pulse positions, and track 2 only for the top six pulse positions. By omitting, it is possible to reduce the amount of computation required for fixed codebook search without compromising sound quality.

즉, 동일한 음질 성능을 제공하면서 종래의 방식보다 고정코드북 탐색 계산량 측면에서 보다 나은 성능을 기대할 수 있다.That is, while providing the same sound quality performance, it is possible to expect better performance in terms of fixed codebook search computation than the conventional method.

이상의 설명에 한가지 더 언급하면, 본 발명에 의한 음성 부호화기의 고정코드북 고속탐색 방법은 대수코드북 구조를 갖는 여러가지 형태의 고정코드북탐색에 사용되어 질 수 있다.In addition to the above description, the fixed codebook fast search method of the speech coder according to the present invention can be used for various types of fixed codebook search having an algebraic codebook structure.

이상의 설명에서 설명한 바와 같이, 본 발명은 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 결정하는 단계와, 트랙 0,1,2의 각 트랙에서 상기 상관도 값에 따라 펄스 위치 인덱스를 정렬하는 단계와, 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하는 단계와, 상기 연산 결과값이 문턱값보다 큰가를 확인하는 단계와, 상기 연산 결과값이 문턱값보다 큰 경우, 트랙 3을 탐색하는 단계와, 상기 트랙3에 대한 탐색 후, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대해 탐색을 완료하였는지를 확인하는 단계와, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대한 탐색이 완료되지 않은 경우, 트랙 0,1,2의 펄스 위치 인덱스를 증가시키는 단계와, 상기 연산 결과값이 문턱값과 같거나 작은 경우, 해당 부프레임에 대한 고정코드북 탐색을 종료하는 단계로 구성되어,As described in the above description, the present invention comprises the steps of determining a correlation value for each pulse position index of tracks 0,1,2, and pulse positions according to the correlation values in each track of tracks 0,1,2. Arranging the indices, calculating a sum of correlation values for each pulse position index of tracks 0, 1, and 2, checking whether the calculation result value is greater than a threshold value, and calculating the calculation result value. If greater than this threshold, searching for track 3; after searching for track 3, checking whether the search has been completed for all pulse position index combinations of tracks 0, 1, and 2; Increasing the pulse position index of tracks 0, 1, and 2 when the search for all the pulse position index combinations of 2 and 2 is not completed; and if the calculation result is less than or equal to the threshold value, End fixed codebook navigation for It consists of a step,

멀티미디어 서비스용 음성 부호화기인 G.729의 고정코드북 탐색시 요구되는 계산량을 줄이면서, 동일한 음질 성능을 유지할 수 있도록 하는 효과가 있다.It is possible to maintain the same sound quality while reducing the amount of computation required when searching the fixed codebook of G.729, a speech coder for multimedia services.

즉, 펄스 탐색 횟수를 감소시킴으로써, 종래 방식에서 필요로하는 고정코드북 탐색 계산량에 비해 평균 35% 정도의 계산량 감소를 얻을 수 있는 효과가 있다.That is, by reducing the number of pulse searches, an average of about 35% of the amount of calculation can be reduced compared to the fixed codebook search required by the conventional method.

Claims (4)

음성 부호화기의 고정코드북 고속탐색 방법에 있어서,In the fixed codebook fast search method of the speech coder, 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 결정하는 단계와,Determining a correlation value for each pulse position index of tracks 0, 1, 2; 트랙 0,1,2의 각 트랙에서 상기 상관도 값에 따라 펄스 위치 인덱스를 정렬하는 단계와,Sorting pulse position indices according to the correlation values in each track of tracks 0, 1 and 2; 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값의 합을 연산하는 단계와,Calculating a sum of correlation values for each pulse position index of tracks 0, 1, and 2; 상기 연산 결과값이 문턱값보다 큰가를 확인하는 단계와,Checking whether the operation result value is greater than a threshold value; 상기 연산 결과값이 문턱값보다 큰 경우, 트랙 3을 탐색하는 단계와,Searching for track 3 if the operation result is greater than a threshold; 상기 트랙3에 대한 탐색 후, 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대해 탐색을 완료하였는지를 확인하는 단계와,After searching for track 3, checking whether the search is completed for all pulse position index combinations of tracks 0, 1, and 2; 트랙 0,1,2의 모든 펄스 위치 인덱스 조합에 대한 탐색이 완료되지 않은 경우, 트랙 0,1,2의 펄스 위치 인덱스를 증가시키는 단계와,If the search for all pulse position index combinations of tracks 0,1,2 is not complete, increasing the pulse position indexes of tracks 0,1,2; 상기 연산 결과값이 문턱값과 같거나 작은 경우, 해당 부프레임에 대한 고정코드북 탐색을 종료하는 단계를 포함하는 것을 특징으로 하는 음성 부호화기의 고정코드북 고속탐색 방법.If the calculation result value is equal to or smaller than a threshold value, terminating the fixed codebook search for the corresponding subframe. 청구항 1에 있어서, 상기 트랙 0,1,2의 각 트랙에서 상기 상관도 값에 따라 펄스 위치 인덱스를 정렬하는 단계에 있어서, 상관도 값에 따라 내림차순으로 정렬하는 것을 특징으로 하는 음성 부호화기의 고정코드북 고속탐색 방법.The fixed codebook of claim 1, wherein in the sorting of the pulse position index according to the correlation value in each track of the tracks 0, 1, and 2, the sorting order is in descending order according to the correlation value. Fast search method. 청구항 1에 있어서, 상기 트랙 0,1,2의 각 펄스 위치 인덱스에 대한 상관도 값을 결정하는 단계에 있어서, 각 펄스 위치 인덱스에 대한 상관도 값은 다음 수식의 절대치인 것을 특징으로 하는 음성 부호화기의 고정코드북 고속탐색 방법.The voice coder of claim 1, wherein in determining a correlation value for each pulse position index of the tracks 0, 1, and 2, the correlation value for each pulse position index is an absolute value of the following equation. Fixed codebook fast search method. 단, d(n)은 대상신호 χ'(n)과 합성필터의 임펄스 응답h(n) 간의 상관도 벡터, i는 트랙 0,1,2,3에서 펄스 위치 인덱스이다.Where d (n) is the correlation vector between the target signal χ '(n) and the impulse response h (n) of the synthesis filter, i is the pulse position index in the tracks 0, 1, 2 and 3. 청구항 1에 있어서, 상기 트랙 0,1,2의 펄스 위치 인덱스를 증가시키는 단계는 각 펄스 위치 인덱스에 대한 상관도 값의 합이 문턱값보다 큰 경우에, 트랙 0,1,2의 현재 펄스 위치 인덱스 후보가 아닌 다음 순서의 펄스 위치 인덱스 후보를 선택하기 위해 수행되는 것을 특징으로 하는 음성 부호화기의 고정코드북 고속탐색 방법.The method of claim 1, wherein increasing the pulse position index of the tracks 0, 1, 2 includes the current pulse position of the tracks 0, 1, 2 when the sum of the correlation values for each pulse position index is greater than a threshold. A fixed codebook fast search method of a speech coder, characterized in that it is performed to select a next pulse position index candidate rather than an index candidate.
KR1020000018838A 2000-01-14 2000-04-11 A fast search method for the fixed codebook of the speech coder KR100330761B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020000018838A KR100330761B1 (en) 2000-04-11 2000-04-11 A fast search method for the fixed codebook of the speech coder
US09/749,782 US7389227B2 (en) 2000-01-14 2000-12-28 High-speed search method for LSP quantizer using split VQ and fixed codebook of G.729 speech encoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000018838A KR100330761B1 (en) 2000-04-11 2000-04-11 A fast search method for the fixed codebook of the speech coder

Publications (2)

Publication Number Publication Date
KR20010095585A KR20010095585A (en) 2001-11-07
KR100330761B1 true KR100330761B1 (en) 2002-04-01

Family

ID=19663324

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000018838A KR100330761B1 (en) 2000-01-14 2000-04-11 A fast search method for the fixed codebook of the speech coder

Country Status (1)

Country Link
KR (1) KR100330761B1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100576024B1 (en) * 2000-04-12 2006-05-02 삼성전자주식회사 Codebook searching apparatus and method in a speech compressor having an acelp structure
KR100438175B1 (en) * 2001-10-23 2004-07-01 엘지전자 주식회사 Search method for codebook
KR100463418B1 (en) * 2002-11-11 2004-12-23 한국전자통신연구원 Variable fixed codebook searching method in CELP speech codec, and apparatus thereof
KR100463419B1 (en) * 2002-11-11 2004-12-23 한국전자통신연구원 Fixed codebook searching method with low complexity, and apparatus thereof
KR100556831B1 (en) 2003-03-25 2006-03-10 한국전자통신연구원 Fixed Codebook Searching Method by Global Pulse Replacement
KR100795727B1 (en) * 2005-12-08 2008-01-21 한국전자통신연구원 A method and apparatus that searches a fixed codebook in speech coder based on CELP

Also Published As

Publication number Publication date
KR20010095585A (en) 2001-11-07

Similar Documents

Publication Publication Date Title
US6879954B2 (en) Pattern matching for large vocabulary speech recognition systems
US4819271A (en) Constructing Markov model word baseforms from multiple utterances by concatenating model sequences for word segments
US5621859A (en) Single tree method for grammar directed, very large vocabulary speech recognizer
EP0715298B1 (en) Reduction of search space in speech recognition using phone boundaries and phone ranking
US6260013B1 (en) Speech recognition system employing discriminatively trained models
CN1130688C (en) Speech recognition methods and apparatus on basis of modelling of new words
US20040039572A1 (en) Pattern recognition
US20050021330A1 (en) Speech recognition apparatus capable of improving recognition rate regardless of average duration of phonemes
US20050071157A1 (en) Method and apparatus for identifying noise environments from noisy signals
US20100211386A1 (en) Method for manufacturing a semiconductor package
CA2163017A1 (en) Speech recognition method using a two-pass search
US20010010038A1 (en) High-speed search method for LSP quantizer using split VQ and fixed codebook of G.729 speech encoder
US7096181B2 (en) Method for searching codebook
KR100330761B1 (en) A fast search method for the fixed codebook of the speech coder
EP1677287B1 (en) A system and method for supporting dual speech codecs
KR100463419B1 (en) Fixed codebook searching method with low complexity, and apparatus thereof
CA2129161C (en) Comb filter speech coding with preselected excitation code vectors
US7039584B2 (en) Method for the encoding of prosody for a speech encoder working at very low bit rates
CN1264891A (en) Method of selectively adding charging value to speech distinguishing system thus followed probability of same
KR100465316B1 (en) Speech encoder and speech encoding method thereof
CN1240050C (en) Invariant codebook fast search algorithm for speech coding
KR20040042368A (en) Focused searching method of fixed codebook, and apparatus thereof
KR100463418B1 (en) Variable fixed codebook searching method in CELP speech codec, and apparatus thereof
JP3471889B2 (en) Audio encoding method and apparatus
Gopalakrishnan et al. A channel-bank-based phone detection strategy

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130315

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140306

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20150602

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20160302

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee