MXPA98001729A - Method and apparatus for the detection and correction of errors of minimum redundancy of spectrum parameters - Google Patents
Method and apparatus for the detection and correction of errors of minimum redundancy of spectrum parametersInfo
- Publication number
- MXPA98001729A MXPA98001729A MXPA/A/1998/001729A MX9801729A MXPA98001729A MX PA98001729 A MXPA98001729 A MX PA98001729A MX 9801729 A MX9801729 A MX 9801729A MX PA98001729 A MXPA98001729 A MX PA98001729A
- Authority
- MX
- Mexico
- Prior art keywords
- spectral
- codebook
- error
- index
- vector
- Prior art date
Links
- 238000001514 detection method Methods 0.000 title description 6
- 238000001228 spectrum Methods 0.000 title 1
- 230000003595 spectral Effects 0.000 claims abstract description 134
- 230000000875 corresponding Effects 0.000 claims abstract description 46
- 238000011002 quantification Methods 0.000 claims description 4
- 210000003462 Veins Anatomy 0.000 claims 1
- 230000002596 correlated Effects 0.000 claims 1
- 238000010192 crystallographic characterization Methods 0.000 claims 1
- 238000000034 method Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 3
- 230000001702 transmitter Effects 0.000 description 3
- 235000019876 cocoa butter improver Nutrition 0.000 description 2
- 108060004097 IRAK1BP1 Proteins 0.000 description 1
- 235000014548 Rubus moluccanus Nutrition 0.000 description 1
- 240000002273 Rubus moluccanus Species 0.000 description 1
- 230000003139 buffering Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 235000009508 confectionery Nutrition 0.000 description 1
- 230000000051 modifying Effects 0.000 description 1
Abstract
The present invention relates to detecting and correcting errors of a received message, for example a digitized voice message, generating (318) interpolated vectors for each vector derror corresponding to a codebook index in a sequence of codebook indexes that represent parameters of portions of the message. A number of candidate vectors with corrected errors is generated (322, 324, 326) for the vector corresponding to the wrong codebook index, by dumping a bit in a sequence of bits, which represent the wrong codebook index. The candidate vector with corrected errors having a minimum difference of its corresponding interpolated vector is used (338) to replace the error vector. In the digital case, the vectors are spectral vectors representing spectral information for a time sample of a voice message. An ordering property of vector components is exploited to detect errors in a code book index with no parity bits
Description
METHOD AND APPARATUS FOR THE DETECTION AND CORRECTION OF ERRORS OF MINIMUM REDUNDANCY OF PARTS DK SPECTRUM-, OF --- VOICE
Field of the Invention
The present invention relates to a method for I I detecting and correcting errors in a received digital signal, for example a digital voice message or digital data.
Background of the Invention
The methods for the detection and correction of errors of digital signals, for example digital voice and digital data, vary with the specific applications. For digital voice signals transmitted at a speed- of. Its very low, transmission error correction -I is frequently used to protect the bits. The correction of transmission errors consists in adding redundant bits to the digital signal, which affects the effective velocity of the channel, which in turn can reduce the effective capacity of the system.
It would be desirable to provide a method with minimal redundancy to effectively detect and correct errors in a received digital signal.
Rreve Description of the Drawings
Fig. 1 is a block diagram of a selective call receiver according to the present invention. Fig. 2 is an electrical block diagram, a message encoder and transmitter according to the present invention. Figs.3-5 show qolectivam.en.ta a di agrama_, flow that illustrates the method of detection and correction! of errors according to the present invention. Fig.6 is a diagram illustrating the buffering of a sequence of indices of codebooks in a received digital signal, according to the present invention. Fig. 7 is a graphical diagram illustrating a linear interpolation procedure for generating interpolated spectral vectors for spectral vectors or errors, in accordance with the present invention. J Fig.8 is a diagram that illustrates a sequence of
Codebook indices with corrected errors generated according to the present invention.
Detailed Description of the Invention With reference to Fig. 1, a selective call receiver is shown comprising a pico_tech antenna 102, a receiver circuit 104, a processing unit 106, a display 108, an alarm 110, controls - d3 - U.Sua.rio 112, a sound amplifier 114, a speaker 116 and I a power switch 118. Optionally, the ... selective call receiver further comprises a transmitter 120 and a transmitting antenna 122.
The processing unit 106 purchased a digital signal processor (DSP) 130, a free access memory
(RAM) 132, a read-only memory (ROM). 134 and an electronically erasable read-only memory (EEPROM) 136.
The receiver circuit 104 is connected to the receiving antenna 102 and demodulates a received signal. The processing unit 106 interprets the received signal to decode the digital information contained in the received signal. Specifically, the DSP 1.30 is programmed, by firmware stored in ROM 134 and / or by software stored in RAM 132 to allow the DSP 130 to process the digital information in the received signal. The RAM 132 is also used by the DSP 130 para-. temporarily store information derived from the received signal, for example messages.
Among other types of information, at least one fc selective caller code is stored in__La .EEPROM
136 of the processing unit. The selective call address code is used to correlate -COT the address code in the received signal, to inform.1 the selective receiver 100 if the reception of the signal was raqui for the selective receiver 'of calls 100 receive a message with di ^ racx-i? n. The processing unit 106 triggers the generation of an alarm by means of the alarm 110 and also the display of a message displayed on the screen 108. A user manipulates the received messages and fulfills other functions.e =. ^ _ through user controls 112. When the message is J a digital voice message, the processor unit 106 I converts the digital voice message into an analog signal which is coupled to the soni amplifier 114 and finally to the sound driver 116. The DSP 130 is also capable! to close the receiver circuit 104 through the power switch 118 when the received signal does not contain information for the selective receiver 100, or else it is unrecognizable by the DSP 130. Therefore, the power switch 118 It is useful to save battery life in the selective receiver.
Fig. 1 illustrates an example of a type of communication receiver to which the invention corresponds. The present invention has utility in communications devices in general that are capable of receiving a digital signal. '
.-Fig. 2 illustrates a codifier and transmitter of messages for taking samples of a voice message and coding it digitally for its transmission. En_sint.es.is, the voice message is sampled and analyzed by I the analyzer 200. The analyzer 2QQ generates a spectral vector (SV), among other parameters, for each consecutive sampled time frame of the voice message. The spectral vector is processed by the vector quantizer _210 which generates a codebook index to represent a spectral vector in terms of a codebook for each time frame of the voice message .-- In _-μna I 1 embodiment preferred, voice quantizer 210 uses th spectral vector quantization codes, Cl and C2, to divide-quantize the spectral vector. Alternatively, only one book code is used to quantify and code the spectral vector, or more than two books of codes are used to quantify the spectral vector. The technique of encoding a short frame or time segment of a voice message to generate a spatial vector using a codebook, or two books fc of codes for dividing vector quantization, is known in the art.
When two code books are used, the I codes book contains, for example, a first portion of line spectral frequency components (LSE.) - and the I codebook C2 contains a portion of the codes. LSF components. In the example used, here, a] first. 1 ibro-. of codes Cl is a 9-bit codebook that contains the components for the first 4 of 10 companions. of LSF and the second codebook C2 is a 9-bit codebook containing the remaining compQnentes_-de --_ 6- LSF. I A first subscript II of the codebook is defined! in terms of codebook Cl and a second sub-code 12 of codebook is defined in terms of C2. I A codebook index (CBI) is composed of - the concatenated codebook sub-indexes II and 12 to represent a 10-dimensional SV in terms of the first and second codebooks Cl and C2 of quantification: vector spectral. The SV is indicated as. { Cl [II], C2 [12]} where Cl [II] = (xl, x2, x3, x4) and C2 [12] = (x5, x6, x7, x8, x9, xl '?), where xl-x4 are the first 4 components of LSF and x5 -xl0 are the last 6 LSF components.
As described above, for each book sub-index fc of codes II and 12, 9 bits are used for the representation. Consequently, the ijue code book index comprises the subscripts of codebooks II and 12- is indicated (11,12) and is represented by 18 bits (bl, b2, ..., b9, blQ, bll,. .., bl8), where Il =. { bl, __-. , -b-9} and I 12 =. { bl0-bl8 } . !
Prior to modulation of the codebook index, at least one parity bit P (an even parity bit) is code forward, the at least one parity-P bit is not necessary to allow detection and correction of errors, but it is useful. Particularly, ---- When -_. DQS a__more code books that have a correlation between frames of the spectral frequency components of] voice messages are used to encode the message, it is possible to detect indexes of books, codes of errors in the received signal without using parity, comparing the values of the spectral vector components corresponding to the sub-indexes of received codebooks. This correlation is called the LSF order property and is displayed in the example of the 10-dimensional coding format described above. Other correlations may be useful for other types of messages. However, when parity is determined, more than one parity bit can be provided at the expense, however, of increasing redundancy in the system.
It should be understood that while Eig.2 shows, a speech coding process, other data messages can be encoded in a similar manner to generate I vectors that represent samples of the message for transmission. For example, the present invention has utility in relation to other messages, for example graphics (where spatial sampling is used), messages For non-voice type messages, they may be referred to as "sample vectors" or - simpl emapte
"vectors", which represent other types of parameters of a sample or portion of a message.
The sequence of indexes of codebooks that represent the message is transmitted par_- el aira-o.-po-c. the cable 230. The present invention has utility in wireless and wireline applications (telephone, -, cable-line, etc.). The selective call receiver 100 is of the type shown in Fig. 1, as indicated in Fig. 2, the message can be received and processed by a terminal unit as part of a system of ma-messages. or -, -.
for example, a voice message system in a telephone network. In any case, the transmitted di-gitalized speech signal is received for the processing and correction of errors.
Turning now to Figs. 3-6, we describe -the process by which the digitized message is retrieved. This process is preferably carried out in the storage unit 106. In summary, the process is a two-stage procedure, comprising steps for detecting errors and a correction phase for errors. not algebraic Figs.3-6 use I-I-I-I to detect and correct errors in a digitized Voice signal received for the purposes of Iax 1 i c r the present invention. At least one codebook of spectral vector quantization is stored in the selective call receiver 100 or in the site where the transmitted digitized speech signal is received and processed. In a specific example where two codebooks CtL and C2, each of these codebooks is registered, the selective receiver 100 or otherwise available at the reception site. The codebook (s) stored in the receiver matches the codebook (s) used on the coding side.
In step 302, the digital voice_ signal. i zada -, is I I received. The digitized speech signal comprises a sequence of indexes of codebooks _qu-a__ dafinen II spectral vectors representing spectral information of time frames- of a given message .. En..fi] step 3-4, I The sequence of the codebook indexes representing the message is stored in a buffer, for example the RAM 132 of the selective call receiver 100.
Fig. 6 illustrates the storage of indices. Of I code books, with or without parity bits in a buffer, for example the RAM 132 shown in Fig. 1. An example is shown in which, within a sequence! of book indexes of CBI numbered codes? a r.P > Tt The I codes of codebooks for the SV4, SV5, SV7 and SV8 spectral vectors have errors. It is not known which indexes of codebooks and therefore which corresponding spectral vectors have errors h ---. Q.-.- a g? -nn each codebook index is examined.
For this purpose, in step 306, and table index i is set equal to 1 and the flag j is set equal to 1. Then, in step 308, the. Table index i is temporarily incremented by 1 to determine if J the next frame is the last in the sequence or file. If it is, then the procedure ends. Otherwise, the procedure proceeds to step 319 where the index J of frame i is incremented by 1 (thereby skipping the first index of codebook). In step 312, the code book index for the SV (i + l) i i spectral vector is examined to determine if it has an error. I
The process of examining a code book index and its corresponding spectral vector to determine if it has an error is matched in one of two ways. -But, in the case where at least one parity bit P is transmitted with each codebook index, then the parity bit P is examined. Second, with or without a parity bit P, if the two hands are used -cibes _of -c? Diqos to encode the spectral vectors, so that there is a property as the organizing property of LSF between the sub-indexes of codebooks of the vector (subscripts II e 12, for example), then -examine 1 the spectral vector corresponding to each codebook subindex II e 12 If there is a violation of the ordering property of LSF between the components of the spectral vector defined by the subscripts of codebooks II and 12, then it is said that the combination of the subscripts of codebooks and the corresponding spectral vector violates the organizing property and consequently there is an error.
Below is an example of the code books Cl and C2, with entries of spectral vector components listed only for those subscripts. give codes of the codes involved in the following example:
Cl C2 xl x2 x3 x4 x5 x6 x7 x8 x9 xlO
0 1 2 0,638 0,765 0,1326 0,1440 0,174 0,2289 0,2708 0,3147 0,3729 0,4060
3 4 0.0380 0.0562 0.1196 0.1847
101 0, 2252 0, 2734 0, 3141 0, 3479 0, 3941 0, 4217
511
Recalling that each codebook subindex II and 12 is represented by a 9-bit sequence, there are 512 possible combinations of codebook entries. The codebook entries are the spectral vector components xl-x4 and x5-xl0. By way of example, the subscripts of codebooks (II; 12) that are transmitted are (4; 101). Suppose that II is received with errors but the value of 12 that is received indicated 12 '= 2. The decoded value of the vector, spectral. { xl-xlO} which corresponds to the subscripts of code books (4; 2) is:. { ?, 0380, 0.0562, 0.1996, 0.1847, 0.1721, 0.2289, 0.2808, 0.3147, 0.3729, 0.4060}
The spectral vector components x4-x6 that are underlined violate an ordering property of linear spectral frequency. This property establishes establace - qua. the value of the spectral vector component x (n) is less than or equal to the value of the spectral vector component x (n + l). Therefore, because the value of x4 • 'is 0.1847, which is greater than the value of x5, which is__Q.fr.lZ-2-ltl the spectral vector corresponding to the codebook subscripts (4; 2) is not a valid spectral vector and therefore the code book index (4; 2) is erroneous. Therefore, by examining the individual vector-to-spec components of the II, particularly x4 and x5, of a spectral vector defined by a combination -j of the subscripts II and 12, it is possible to determine that the received codes composed of the subscripts 11. and IZ is wrong. 'With at least two codebooks with that property or relation, it is possible to detect an error without adding a parity bit to the data. A schema-coding scheme that comprises more than two jgue codebooks that have an ordering property would have similar advantages.
Returning to Fig.3, when in step 312! it is determined that the spectral vector SV (i + l) defined-p-Qr- | the code book index for the table (i + 1) no! is wrong, then in step 314 the indicator ^ _ is_a-ju = ta equal to the index of table i, and steps 308-312 are repeated for the next frame in the sequence. -When . it is determined that the codebook index for the SV (i + l) spectral vector is erroneous, then in step 3-16 - ^ - .. the indicator fits the value of the following index I of codebooks in the sequence that does not have err.ar --__ Therefore, during step 316 are again examined ... the indexes of codebooks and the corresponding 3apect.-----LJ-.es vectors in the sequence immediately after the one where it was determined that the codebook index had an error. With reference to the example shown in Fig.6, when the code book index for the SV4 spectral vector is reached, it is determined that it has an error and then the next codebook index is examined for the spectral vector S.V5 which also has no error. The following codebook index is examined for the SV6 and spectral vector. it is determined that, it has no error. Then, in step 316, the indicator k is set to 6 for SVß, the first index of, 1 ibro-- of codes without errors immediately follows the codebook index with errors for the SV-4 spectral vector __- In essence , the spectral vector SVj is the spectral vector, which immediately precedes a spectral vector q? -a.- na. I has no error and the spectral vector SV is the spectral vector that immediately follows the vector spacer] that has an error.
In step 318, interpolated asp-actra vectors are generated for the codebook indices that have errors between the book indices of c.ó i g.os - without errors (corresponding to the spectral vectors SVj and
SVk). In the example of Fig.6 ^ .. interpolated spectral v-act-res are generated for the spectral vectors BV4 and SV5, using SV3 and SV6 as references and .._ para- -.The spectral vectors SV7 and SV8 using the SV6 and SV9 spectral vectors. It should be noted that the spectral vectors which are determined to have errors: and subsequently are corrected, and used to correct other spectral vectors in the sequence by the interpolation process I described below. That is, an interpolated spectral vector for SV5 is generated based on SV6 and the newly generated corrected error spectral vector for SV4.
Fig.7 illustrates a way of. .generate interpolated spectral vectors for the spectral vectors -with error.es SV4 and SV5. The most illustrated is the linear interpolation that is known in art and consequently is not explained in detail here. Other methods, such as-. , non-linear interpolation are also useful. In addition, in some cases, it is not necessary to locate the spectral vectors without limit errors; rather, the interpolation is performed for a spectral vector - errors on the basis of at least one spectral vector without errors in the sequence. Linear interpolation has been considered useful in the case of digital voice messages, but for other types of data, other methods of interpolation may prove to be more useful.
The interpolated spectral vectors for the spectral vectors with SV4 and SV5 errors are indicated as ISV4 and ISV5. Similarly, the interpolated spectral vectors are generated for the spectral vectors with SV7 and SV8 errors and are indicated as ISV7 and ISV8.
Then, in step 320, a position indicator 1 is set to 0, where 1 represents one of ... the .bits er, the bit sequence. { (Ibl, ..., Ib9); (IblO, ..., Ibl8)} of the given codebook index, as erroneous. In-, step 322, a candidate sequence for each index of 1st lib of codes determined as erroneous generated by. _- the inversion of a first bit in the sequence of bits
. { (Ibl, Ib9); (IblO, ..., Ibl8)} . The sequence canxI-L-d-at-a-. it is called the candidate codebook index of corrected errors. Then, in the pass. 32 + - dec-vales are generated from the candidate codebook index J of corrected errors so that MI = decimal value] _- of
(Ibl, Ib9) and M2 = (IblO, ..., Ibl8) where a bit of! the sequence of bits Ibl-Ibl8 that. Code book determined as Ibl, is inverted and overturned. For both a bit in the I codebook subindex II or in the codebook subindex 12 is overturned. A vector-candi data - CQr --_ erra is corrected ECVX is generated based on the candidate code book index with corrected errors and the. first, and, 1 I second books of codes Cl and C2 so x i ECVX =. { (C1 [M1]; C2 [M2].}.
Then at step 328, it is determined whether ECVi violates the ordering property of LSF. This step is optional when two or more book codes are used, leave-out. | I consider the candidate vectors * with corrected errors that are not valid due to the violation of. the organizing property described above. Candidate vectors with corrected errors that-- violate the organizing property are disqualified in step 328. This step! It does not run when a single codebook is used or use certain multiple codebooks for which.! there is no ordering property.
When the candidate vector with corrected errors ECVi does not violate an organizing property, in step 330, 'the candidate vector with corrected errors_-ECV? It is filed with your corresponding ISV. One way to perform this comparison is to compute --- an error distortion to the average square between ECVL and the ISV corresponding to the codebook index that was determined to have-- an error-. The average squared error distortion is an example of measuring the difference between the candidate vector with corrected errors and its corresponding interpolated spectral vector. Other diversification measures between ECVj. and your ISV are also useful. -!
In step 332, it is determined whether the bit index 1 has reached its maximum value, which is 18 in the example where the spectral vector is represented by 18 bits. The bit index 1 is incremented in step 336 until it reaches its maximum value and repeats steps 322-330. Therefore, each bit in the bit sequence -.that represents-, the I codebook index that was determined to have 'an error is inverted or overturned, u-no ^ at a time, to generate a quantity of Candidate code book indexes with corrected errors that have a bit that differs from the sequence of bits that represents the book index I • of codes that were determined to have had an error. For each candidate code book index with corrected errors, a spectral vector is generated. candi.dato put I corrected errors based on the code books Cl and C2.
Then, in step 338, the candidate spectral vector with corrected ECVL errors with the minimum measure of difference between its corresponding, interpolated spectral vector ISVi is used to replace the codebook index .-- and the corresponding spectral vector SVi -which was determined to have an error . Therefore, the codebook index corresponding to the candidate spectral vector with corrected errors ECVi replaces the codebook index that was determined to have an error. As a result of this, a new spectral vector with corrected errors defined by the most coincident candidate codebook index, replaces the spectral vector corresponding to the book index of -codes- that 1 I determined to be erroneous. The subprocedure of steps 310-338 is repeated for each codebook index with errors. 1!
As shown in Fig.8, the CBIs of the. ECViS for SV4, SV5, SV7 and SV8, respectively, which have a minimum difference when, respectively, are compared. with the interpolated spectral vectors ISV4, ISV5, ISV7 e. ISV8, replace the CBIs for the SV4, SV5, SV7 and SV8 spectral vectors. Fig.8 illustrates a sequence i of corrected errors of codebook indices, .pue represents a sequence of corrected errors of spectral vectors. In step 340, the sequence of corrected errors of the codebook indices (corresponding to the sequence of corrected errors of spectral vectors) is converted into an analog signal. In the case of a voice message, this lu-pgo analog signal is amplified to be heard by a user through a sound speaker 116 in the selective call receiver 100 or through the voice, telephone message system, for example. Alternatively, the sequence of corrected errors of the codebook indexes is saved for later conversion and user exit.
In summary, the present invention allows the transmission of a digital message, and the detection and correction of errors thereof after its reception 1 with minimum error redundancy. Parity bits are not necessary to detect and correct an error in a codebook index that references multiple codes of codes that have an ordering property. However, when using a codebook (or multiple codebooks) that do not have an ordering property, only a minimum number of bits are needed -? _- bits of par-i ñxrí,
Claims (20)
1. A method to detect and correct errors in one. digitized voice signal received characterized by the following steps: (a) save at least one pound, of codes-, of quantification of spectral vectors comprising a number of spectral vectors and indexes of the corresponding codes, the Spectral vectors represent speech spectral information; (b) receiving a digitized speech signal comprising a sequence of Book Indices of.-to-digests-I defining corresponding spectral vectors in terms of at least one book of codes of quantification. .- Of i spectral vectors, each spectral vector represents spectral information of a time table of_a_a_me saje I of voice, each codebook index comprises -one bit sequence; (c) save the sequence of indexes of codes; (d) examining the sequence of codebook indices to determine which corresponding codebook indices and corresponding vectors have an error and for each corresponding codebook index and spectral vector that was determined to have an error: (e) detect at least one book index of fc codes without errors in the codebook index sequence; (f) generating an interpolated spectral vector for the spectral vector corresponding to the codebook index that was determined to have an error based on a spectral vector corresponding to the at least one error-free codebook index; (g) generating a number of candidate vectors with corrected errors based on the at least one spectral vector quantization codebook for each corresponding codebook index and spectral vector that was determined to have an error; '' (h) compare each interpolated spectral vector with each of the number of candidate vectors with corrected errors for the index of. The corresponding I-book was determined to have an error to determine a measure of difference between them; e (i) replace each book index of codes that was determined to have an error with a codebook index corresponding to a candidate vector with corrected errors that has a minimum measure of difference when compared to an interpolated spectral vector corresponding to generate a sequence of errors corrected by -Libaos-codes.
2. The method of claim 1 characterized in that step (d) of examining comprises detecting an error in at least one parity bit associated with each code index of the codes in the digitized speech signal. J
3. The method of claim 1. characterization - because, the step (a) of saving comprises saving at least a first and second codebook of how-to-ica? -ion of spectral vectors, where each book index of codes comprises first and second subscripts of 1 i ra. of code numbers, the first codebook subindex is with respect to the quantum codebook of spectral.vector and, the. second sub-index of code book is with respect! to the second spectral vector quantization codebook. !
3. The method of claim 3 characterized in that step (d) of examining comprises detecting a violation] of an ordering property of spectral line frequency components of a corresponding spectral vector! to the first and second subscripts and codebooks.
5. The method of claim 4, characterized in that the step (f) of generating an interpolated spectral vector *, between a spectral vector corresponding to an error-free code book index that immediately precedes - the codebook index that was determined to be had 'an error, and a spectral vector corresponding to a codebook index without errors immediately after'. to the codebook index that was determined to have had an error.
6. The method of claim 5, characterized by the step (g) of generating a number of candidate vectors with corrected errors comprises: (g (l)) inverting one bit in the bit sequence representing the code book index It was determined that it had an error to generate a number of indexes of candidate codebooks with errors, corrected,. each index book index of candidates with error is corrected has a bit different from the sequence of bits that represents the codebook index that determined that it had an error; and (g (2)) generating a candidate vector with corrected errors for each candidate codebook index with corrected errors based on the first and second books of quantization codes of spectral vectors.
7. The method of claim 6, characterized in that it also comprises the step of disqualifying _-a candidate vector with corrected errors when violating an ordering property of the frequency components spectr 1. ,
8. The method of claim 7, characterized in that the step (h) of comparing comprises determining an error. - the average square between each interpolated spectral vector and each of the candidate vectors .cpn corrected errors that does not violate the ordering property of the components) of linear spectral frequency to determine an- and ida .. of I difference between them. I
9. The method of claim 1, characterized in that the step (f) of generating an interpol do spectral vector comprises interpolating, between a spectral -vector I corresponding to an error-free codebook index that immediately precedes the Book-of-Index. codes that were determined to have an error, and an error-free spectacle vector corresponding to a codebook index that immediately follows the codebook index that was determined to have an error.
10. The method of claim 9 characterizing park I step (g) of generating a number of corrected candidate vectors comprises: (g (l)) inverting one bit in the bit sequence representing the code book index that is determined that it had an error to generate a number of candidate code book indexes with corrected errors, each candidate codebook index with corrected errors has a bit different from the bit sequence that represents the codebook index that is determined I did not have an error; and (g (2)) generating a caj-ididato vector with corrected errors for each candidate codebook index with corrected errors based on the at least one-pound of J spectral vector quantization codes. í
11. The method of claim 10 ,. characterized because step (h) comprises determining an average squared error between each interpolated spectral vector _y. each.μno of the number of candidate vectors with corrected errors.
12. The method of claim 1 further characterized by step (j) of converting the sequence of corrected errors of codebook indices into an analog signal representing a voice message.
13. A communication device for receiving- and correcting errors in a transmitted signal that includes a digitized speech signal, the digitized speech signal comprises a sequence of codebook indexes-defining corresponding spectral vectors in terms of at least a quantization-code book of spectral vectors, each spectral vector represents spectral information of a time frame of a voice message, each codebook index comprises a sequence of bits, the device of, common caclones characterized by: j a receiver circuit for raci-bir 1 a sañal ..- transmitted including the digitized voice signal; a memory connected to the receiver circuit stores the sequence of indexes of codebooks of the digitized speech signal I and to store at least one file of 1 spectral vector quantization codes; ! a processing unit connected to the receiver circuit \ and the memory, the processing unit is programmed to: (a) examine the sequence of codebook indexes in memory to determine what indexes. of corresponding codebooks and spectral vectors have an error, and for each codebook and corresponding spectral vector it was determined that it had an error: * (b) detecting at least one index of a book, of codes without errors in the sequence of_codes ^ of codebooks; (c) generating an interpolated spectral vector for the corresponding spectral vector J to the codebook index that was determined to have an error based on a spectral vector corresponding to the at least one indicium. of codebook without errors; (D) generate an aa-nti dd of candidate veins with corrected errors based on the at least one spectral vector quantization codebook for each book index-- of codes and spectral vector corresponded that it was determined that he had an error; 1! (e) comparing each interpolated spectral vector with each of the number of candidate vectors with corrected errors for the corresponding codebook index that was determined to have an error to determine a measure of difference between them; (f) replace each Index of codebook that was determined to have an error-with a codebook index corresponding to a candidate vector with corrected errors that has a minimum measure of difference when compared to an interpolated spectral vector corresponding to generate a sequence t of corrected errors of indexes of codebooks; (h) convert the sequence of corrected-errors of the codebook indexes! in an analog signal that. represents the message, j-e of a connected sound amplifier, with the processing unit to amplify the analog signal to generate an amplified analog signal; _and a speaker connected to the sound amplifier and that responds to the amplified analog signal to emit the voice message as sound. J
14. The communication device of claim 13 characterized in that the communication device: is a selective receiver of calls and because the processing unit is programmed to compare a code.. of address in a signal received by the receiving circuit with a selective stored address code and the processing unit allows that the receiving circuit receives the signal, transmitted including the digitized voice signal. represents the voice message only when the address code in the signal received by, the receiver circuit is correlated with the selective address code of calls.
15. The communication device of claim 13 characterized in that the unit of processing is also programmed to determine in step (a) if ', a book index of, codes has an_ error, detecting, an error in at least one parity bit associated with a codebook index.
16. The communication device of claim 13 characterized in that the memory stores, at least the first and second books of spectral vector quantization codes and because each pound-index of codes 1 comprises first and second sub-indices of codebooks, the first The codebook subindex is with -respecta, the first spectral vector quantization codebook and the second pound subindex of as codes. with respect to the second quantification code book! of spectral vector.
17. The communications device of claim 16 characterized in that the processing unit is also programmed in step (a) to examine a codebook index by detecting a violation of an array property of linear spectral frequency components of the corresponding spectral vector. first_ _y_. second codebook subscripts.
18. The communication device of the relay 13 is characterized in that the processing unit I is also programmed in step (c) to generate a spectral vector interpolating between a spectral vector corresponding to a codebook number. -, it was determined that it had an error, and a spectral vector corresponding to an error-free spectral vector immediately following the Code Book Index that was determined to have an error.
19. The communications device of claim 18 characterized in that the processing unit is also programmed to generate in step (d) a number of candidate vectors with corrected errors: (d (l)) by inverting a bit in the bit sequence it represents the codebook index that was determined to have an error to generate a number of candidate code book indices with corrected errors, each candidate codebook index with corrected errors has a bit different from the bit sequence representing the codebook index that was determined to be an error; and I, (d (2)) generating a candidate vector with corrected errors for each candidate code book index with errors corrected based on, l at least one book, of spectral vector quantization codes. J
20. The communication device of claim 19 characterized in that the processing unit is also programmed in step (e) to compare to determine an average squared error between each interpolated spectral vector and each of the number of candidate vectors with corrected errors .
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08523578 | 1995-09-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
MXPA98001729A true MXPA98001729A (en) | 1999-02-24 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100427752B1 (en) | Speech coding method and apparatus | |
EP0624275B1 (en) | Method and system for the arrangement of vocoder data for the masking of transmission channel induced errors | |
KR100469224B1 (en) | Speech encoding method and apparatus | |
US5636231A (en) | Method and apparatus for minimal redundancy error detection and correction of voice spectrum parameters | |
JP4313570B2 (en) | A system for error concealment of speech frames in speech decoding. | |
US6539356B1 (en) | Signal encoding and decoding method with electronic watermarking | |
US20020133764A1 (en) | System and method for concealment of data loss in digital audio transmission | |
EP1598811B1 (en) | Decoding apparatus and method | |
JP4142292B2 (en) | Method for improving encoding efficiency of audio signal | |
KR19980024631A (en) | Voice Decoding Method and Apparatus | |
JP2006099124A (en) | Automatic voice/speaker recognition on digital radio channel | |
JP3198969B2 (en) | Digital voice wireless transmission system, digital voice wireless transmission device, and digital voice wireless reception / reproduction device | |
US7072830B2 (en) | Audio coder | |
JP4531261B2 (en) | Method and apparatus for processing received data in distributed speech recognition process | |
MXPA98001729A (en) | Method and apparatus for the detection and correction of errors of minimum redundancy of spectrum parameters | |
WO2000022610A1 (en) | Speech parameter compression | |
JP2000509847A (en) | Transmission system for transmitting audio signals | |
JP4346689B2 (en) | Audio transmission system | |
JP2982637B2 (en) | Speech signal transmission system using spectrum parameters, and speech parameter encoding device and decoding device used therefor | |
CN112908346B (en) | Packet loss recovery method and device, electronic equipment and computer readable storage medium | |
EP0971338A1 (en) | Method and device for coding lag parameter and code book preparing method | |
JPH1049200A (en) | Method and device for voice information compression and accumulation | |
KR100482392B1 (en) | Reduced complexity of signal transmission systems, receivers, transmitters, decoders, encoders and transmission methods | |
JPH05207064A (en) | Packet loss compensator | |
JPH01101737A (en) | Sound code device |