EP2232833A2 - Traitement d'erreurs binaires dans une trame binaire audionumerique - Google Patents
Traitement d'erreurs binaires dans une trame binaire audionumeriqueInfo
- Publication number
- EP2232833A2 EP2232833A2 EP08864421A EP08864421A EP2232833A2 EP 2232833 A2 EP2232833 A2 EP 2232833A2 EP 08864421 A EP08864421 A EP 08864421A EP 08864421 A EP08864421 A EP 08864421A EP 2232833 A2 EP2232833 A2 EP 2232833A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- bit
- bits
- frame
- category
- sensitive
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
- 238000012545 processing Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000001514 detection method Methods 0.000 claims description 34
- 230000004048 modification Effects 0.000 claims description 25
- 238000012986 modification Methods 0.000 claims description 25
- 230000005236 sound signal Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 239000010410 layer Substances 0.000 description 51
- OVOUKWFJRHALDD-UHFFFAOYSA-N 2-[2-(2-acetyloxyethoxy)ethoxy]ethyl acetate Chemical compound CC(=O)OCCOCCOCCOC(C)=O OVOUKWFJRHALDD-UHFFFAOYSA-N 0.000 description 18
- 230000003595 spectral effect Effects 0.000 description 16
- 238000013139 quantization Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 238000001228 spectrum Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000015654 memory Effects 0.000 description 6
- 238000003672 processing method Methods 0.000 description 6
- 238000011282 treatment Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 239000012792 core layer Substances 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 101150012579 ADSL gene Proteins 0.000 description 1
- 102100020775 Adenylosuccinate lyase Human genes 0.000 description 1
- 108700040193 Adenylosuccinate lyases Proteins 0.000 description 1
- 101100139861 Arabidopsis thaliana RL2 gene Proteins 0.000 description 1
- 101100141529 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RKM4 gene Proteins 0.000 description 1
- 230000001594 aberrant effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/45—Soft decoding, i.e. using symbol reliability information
- H03M13/451—Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
- H03M13/356—Unequal error protection [UEP]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/6312—Error control coding in combination with data compression
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
Definitions
- the present invention relates to the processing of digital signals in the telecommunications field. These signals may be, for example, speech, music, video signals or more generally multimedia signals. More particularly, the invention aims to protect coded data against bit errors and bit error processing in a bit frame.
- the invention applies more particularly in a hierarchical coding / decoding system.
- MIC for "Coded Pulse Modulation”
- ADPCM for "Pulse Modulation and Adaptive Differential Coding" coding
- CELP coding for "Code Excited Linear Prediction"
- disturbances may affect the transmitted signal and produce errors on the bitstream received by the decoder. These errors can occur in isolation in the bit stream or in bursts. This type of problem occurs for example for transmissions on mobile networks or a DECT type wireless link (for "Digital Enhanced Cordless Telephone" in English).
- each sample is represented on 8 bits by a PCM coding using an amplitude compression law in the form of a linear segment function followed by a uniform scalar quantization.
- G.711 For each sample, G.711 generates 8 code bits that include 1 sign bit, 3 bits to identify the compression law segment, and 4 bits to specify the location of a level on a given segment.
- An isolated error on the sign bit of a sample of high amplitude causes a very clear discontinuity in the decoded signal, the quality of listening is then very degraded.
- an isolated error on the least significant bit specifying the location of a level on a segment is virtually inaudible.
- the sensitivity to bit errors increases with the position of the altered bits.
- the least sensitive bit being the least significant bit specifying the location of a level on a segment and the most sensitive bit being the most significant bit indicating a segment identifier.
- the sensitivity of the sign bit depends on the absolute value of the current coded sample.
- the pitch parameter (or fundamental period) is very sensitive to bit errors.
- this parameter is coded by a scalar type quantizer. This is the case of the ITU-T G.729 standard, where the signal is encoded in 10 ms frames divided into two subframes.
- the pitch T; in the first sub-frame of 5 ms is encoded in absolute on
- T 2 will also be badly decoded because its value is necessarily in the neighborhood of the Ti because of the relative coding.
- An error on a bit representing the fixed code index of the CELP coding generally has much less impact and does not cause audible degradation.
- a transform encoder such as the standard encoder
- the parameters are generally associated with two different information: the spectral envelope and the "fine structure" of the spectrum (that is, the spectrum normalized by the spectral envelope).
- the cost-term spectrum of the signal is typically divided into a number of subbands and the spectral envelope is defined as the effective value (or r.m.s. in English) of each of the subbands.
- This envelope is often coded by scalar quantization followed by differential Huffman coding.
- the first quantization index is encoded in absolute, and the other indices are coded in differential with respect to the preceding subband.
- a base layer also called “core”
- the following layers progressively improve the quality of the signal from the decoding operation, each new layer providing new information, which, exploited by the decoder, output a signal of increasing quality.
- One of the peculiarities of hierarchical codec-decoders is the possibility of intervening at any level of the transmission or storage chain to remove a part of the bit stream without having to give any particular indication to the coder or the decoder.
- the decoder uses the binary information it receives and produces a signal of corresponding quality.
- the different layers of bits are usually hierarchical
- level 3 (hence the name "hierarchical"), ie if we call level 0 the heart, then 1, 2, 3 etc. the following layers, the decoding of the level 3 layer assumes that the bits of layers 0, 1 and 2 are also available.
- Hierarchical coders are particularly interesting in transmission contexts on heterogeneous access networks: whether they are IP type networks mixing fixed and mobile accesses, broadband (ADSL), low bit rates (56k modems, GPRS) or involving terminals of varying capacities (mobile, PC, ).
- Hierarchical coding makes it possible to adapt the bit rate of a transmission without requiring transcoding. For example, access to audio content bases in which the audio samples are recorded with the highest bit rate of a hierarchical coder, the transmitted bit rate being then adapted to the capacity (or the quality of service negotiated). ) of the customer served.
- Another application is heterogeneous access audio-video conferencing, in which terminals having broadband access can communicate at high speed even if one of the terminals of the conference does not have this capability, without requiring transcoding.
- the EV-VBR (Embedded Variable - Variable Bit Rate) coder currently under study in ITU-T Q.9 / 16 (study period 2004-2008) is an example of a scalable speech coder .
- This encoder has a binary train structured in 5 layers associated with different rates (8, 12, 16, 24 and 32 kbit / s).
- a binary error handling method for EV-VBR is described in the draft RFC (Request For Comments) published on November 12, 2007 by the IETF at the following address: hbtp: / / www. ie bf. orq / inter net-draf bs / dr af ⁇ -lakaniemi-avt-r- ⁇ p-evbr-O O.
- the payload format proposed in the cited document consists of one or more transport blocks containing one or more layers and the header of each transport block contains protection bits in the form of a CRC code (for "Cyclic Redundancy Check") for all the bits included in the corresponding transport block. If an error is detected in a transport block that contains the layer
- the probability of obtaining a decoding of all the layers of the frame is therefore very low with such a method and that even with a low bit error rate.
- each layer is sent in a different transport block
- 5 8-bit CRC codes are transmitted in the payload which gives an additional bit rate of 2 kbit / s for a frame of 20 ms. Even with a low bit error rate the probability of being able to decode the maximum bit rate is low.
- the invention provides a method for processing bit errors in a bit frame derived from a digital audio encoder, comprising a step of receiving a current bit frame that may include binary errors.
- the method of the invention is such that the bit frame comprises sensitive bits to protect that are listed in at least one category according to the type of parameter they code and that it further comprises the following steps:
- the processing to be applied in case of bit error detection in a bit frame is adapted to the erroneous bit.
- Different processes can then be implemented depending on the classification of the sensitive bits to be protected, the classification depending on the type of parameter that these bits encode. This therefore makes it possible to reduce the number of frames rejected in the event of detected bit errors, since only the sensitive bits of a bit stream are protected.
- this processing is performed before the actual decoding operation. It can therefore be performed upstream of the decoder, for example by an independent entity.
- the decoder that receives a modified frame does not need to know if there have been binary errors and does not need to implement methods of hiding erased frames.
- the invention also makes it possible to protect hierarchical frames whose bit order is fixed by the hierarchical property, the most sensitive bits then not necessarily being at the beginning of the bit frame.
- the protection bits are defined according to the category in which the sensitive bits to be protected are listed.
- a protection method is adapted according to the parameters that the bits to be protected encode for a better adaptation of the protection method to the signal.
- the modification of the current frame comprises replacing the bits of the same category as the detected erroneous bit by non-errored bits received and stored in a previous frame.
- certain parameters have a slow variation, such as, for example, the energy or the pitch (or fundamental period) to replace the erroneous bits with the bits stored in a previous frame.
- the modification of the current frame comprises a truncation of the bit frame removing the bits corresponding to the higher rate layers than the one in which the bit is located. erroneous bit detected as well as the layer containing the erroneous bit.
- the modification of the current frame further comprises a step of modifying a bit rate information in the header of the current bit frame.
- the decoder is thus directly informed of the decoding rate that it must apply.
- the bit frame comes from a hierarchical coder of the G.729.1 standardized type in which the bits to be protected are listed in at least two categories, a first category comprising the bits encoding the average energy of the high layer of the encoder and a second category comprising the bits encoding the representation parameters of the transform (MDCT), and in that the protection bits corresponding to the first category is a parity bit and the protection bits corresponding to the second one; category are redundancy bits.
- the modification of the current frame comprises the replacement of the bits of the first category by non-errored bits received in a previous frame and in the case of detecting an erroneous bit belonging to the second category, The modification of the current frame comprises truncation of the bit frame removing the bits corresponding to the bit rate layers higher than that in which the erroneous bit detected is located, as well as the layer comprising the erroneous bit.
- the present invention also relates to a device for processing bit errors in a bit frame derived from a digital audio coder, the bit frame being capable of comprising bit errors such that the bit frame comprises sensitive bits to be protected which are listed in FIG. at least one category depending on the type of parameter they encode.
- the device comprises:
- bit error detection module according to said received protection bits and said sensitive bits of the received bit frame from the reception module; and a module for modifying the bit frame before decoding implemented in the event of detecting at least one erroneous bit in the bit frame by the detection module, the modification being a function of the category in which the erroneous bit is listed.
- an encoder able to encode a digital audio signal into a binary field
- bit frame comprises sensitive bits to protect listed in at least one category according to the type of parameter they encode and that further comprises: a protection device able to determine suitable protection bits; the bits to be protected according to the category in which the bits to be protected are listed;
- a decoder adapted to decode the modified bit frame from the device for processing bit errors in a digital audio signal. It also aims in an alternative embodiment, a digital audio decoder with a bit error processing device described above.
- the present invention finally provides a computer program comprising code instructions for implementing the steps of the method according to the invention, when these instructions are executed by a processor.
- FIG. 1 illustrates a train coding / decoding system binary device comprising a bit error processing device according to the invention
- FIG. 2 illustrates a G.729.1 type encoder delivering a hierarchical binary train that can be processed according to the binary error processing method of the invention
- FIG. 3 illustrates a G.729.1 decoder capable of receiving a hierarchical bit stream modified according to the binary error processing method of the invention
- FIG. 4 illustrates the steps of the bit error processing method according to the invention
- FIG. 5 illustrates an exemplary embodiment of a bit error processing device according to the invention.
- FIG. 1 illustrates a system in which a bit error processing device 110 is provided.
- This system comprises an encoder 10 which outputs a bit stream T.
- a protection module 12 retrieves the bit stream and reads the value of the sensitive bits to be protected in this bit stream.
- this protection device lists the sensitive bits to be protected in different categories. These categories are fixed according to the type of coded parameter, to differentiate the treatment to be performed in case of detection of erroneous bits in one of the categories. Protection bits P are then calculated on the bits to be protected which have been identified. The protection bits are determined according to a method that may be different depending on the category in which the bit to be protected is listed. Thus, different levels of protection can be provided according to the classification of the bits to be protected.
- protection bits are then sent parallel to the bitstream. They can be sent on the same noisy channel as that of the bitstream, for example by being concatenated in the payload of the same packet in an IP communication context.
- the protection device can be integrated in the encoder 18 and the protection bits can be integrated in the bit stream.
- disturbances may affect the transmitted signal and produce errors (E) on the bitstream received by the decoder. These errors can both affect the bitstream and the protection bits from the protection device.
- a bit error processing device 110 according to the invention is provided in the system shown.
- This device comprises a reception module R referenced 13 receiving both the bitstream T and the protection bits P.
- the device 110 comprises a module D referenced 14 for detecting binary errors. This module checks whether the protection bits received correspond to those calculated locally on the bit stream. This module thus detects possible bit errors on the sensitive bits.
- the module 16 modifies the bitstream so that the impact of this error on the quality of the signal is reduced. For this, the action of this module differs according to the type of parameter associated with the (x) wrong bit (s) detected (s) and therefore the category in which the erroneous bit is listed.
- the bit frame can be modified, for example, by replacing the erroneous bits with bits that have been stored in M referenced in a previous frame when the detection module has not detected binary errors.
- Another modification of the bit frame may be for example a truncation of the bitstream in the current frame. For a binary train of hierarchical type, this will correspond for example to reject the higher rate layers than the one concerned by the detected erroneous bit as well as the layer concerned.
- the decoder will use a bit rate lower than that received.
- the decoder 17 then receives a modified bit train T '.
- the decoder decodes the modified bitstream without being informed of the modification.
- the decoder will decode the bitstream with a bit rate lower than that initially provided in the binary bit frame T.
- bit error processing device may be integrated into the decoder 19.
- the decoder then receives both the bitstream and the protection bits either separately or together.
- the present invention is advantageously applicable in the case of a hierarchical audio coding and decoding system.
- the encoder 10 is a G.729.1 standard type encoder.
- Figure 2 illustrates the main elements of an ITU-T G.729.1 standardized type hierarchical coder.
- This hierarchical coder has a very fine scalability, the binary train comprising 12 layers.
- the corresponding cumulative flows are 8, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30 and 32 kbit / s.
- the G.729.1 encoder is an extension of the ITU-T G.729 standard encoder. It is a modified G.729 core-based coder, producing a bandwidth ranging from narrowband (50-4000 Hz) to wideband (50-7000 Hz) at 8 to 32 kbit / s for conversational services. This standard has been created in particular for IP-based network voice applications (for "Internet Protocol") using UDP (User Datagram Protocol).
- the broadband input signal s wb sampled at 16 kHz, is first decomposed into 2 subbands by QMF (for "Quadrature Mirror Filter") filtering.
- the low band (0-4000 Hz) is obtained by LP low-pass filtering (block 200) and decimation (block 201), and the high band (4000-8000 Hz) by HP high-pass filtering (block 202) and decimation (block 203).
- the LP and HP filters are of length 64.
- the low band is pretreated with a high-pass filter eliminating the components below 50 Hz (block 204), to obtain the signal s LB , before CELP coding in narrow band (block 205) at 8 and 12 kbit / s.
- This high-pass filtering takes account of the fact that the broadband is defined as covering the range 50-7000 Hz.
- the narrow-band CELP coding is a cascaded CELP coding comprising as a first stage a modified G.729 coding without a filter. preprocessing and as a second stage an additional fixed CELP dictionary.
- the high band is first pretreated (block 206) to compensate for the folding due to the high pass filter (block 202) combined with the decimation (block 203).
- the high band is then filtered by a low pass filter (block 207) eliminating the components between 3000 and 4000 Hz from the high band (that is, the components between 7000 and 8000 Hz in the original signal) to obtain the signal s HB .
- a band extension (block 208) is then performed.
- the error signal d LB of the low band is calculated (block 209) from the output of the CELP coder (block 205) and a predictive coding by transform (for example of the TDAC type for "Time Domain Aliasing Cancellation", block 210) is realized. Additional parameters are transmitted by the block 211 to a peer decoder via the FEC module (for "Frame Erasure Concealment") in order to reconstitute any erased frames.
- the G.729.1 codec therefore has a three-stage coding architecture comprising:
- TDBWE for "Time Domain Bandwith Extension”
- TDAC transform predictive coding applied after an MDCT transformation
- the different bitstreams generated by the coding blocks 205, 208, 210 and 211 are multiplexed and structured in a hierarchical bit stream in the multiplexing block 212.
- the coding is performed by sample blocks (or frames) of 20 ms, 320 samples per frame.
- the bit budget per frame is 640 bits.
- the core layer includes G.729 parameters; the corresponding bits are in positions 0-159.
- the second layer includes the additional parameters of the cascaded CELP coding as well as bits used to conceal erased frames (FEC).
- the upper layers include FEC bits and the TDBWE and TDAC encoder parameters.
- TDBWE encoder there are three types of parameters:
- the spectral envelope of the low band (RMS1, variable bit rate, max 51 bits); and the vector quantization indices encoding the fine structure.
- This G729.1 standardized coding / decoding system has been designed and optimized for fixed link (non-mobile) communications; it is therefore not very robust to binary errors and the quality of the signal deteriorates rapidly with the increase of the bit error rate.
- the invention improves the quality of the decoded signal in the presence of bit errors by the bit error processing method described with reference to FIG. 4 and implemented by the binary error processing device described with reference.
- the decoder 17 is a G.729.1 standard type decoder.
- Figure 3 describes such a decoder.
- the bit stream of the 8 and 12 kbit / s layers is used by the CELP decoder (block 301) to generate the narrow-band synthesis (0-4000 Hz).
- the portion of the bit stream associated with the 14 kbit / s layer is decoded by the Tape Expansion Module (block 302).
- the portion of the bit stream associated with data rates greater than 14 kbit / s is decoded by the TDAC module (block 303).
- Pre- and post-echo processing is performed by blocks 304 and 307 as well as enrichment (block 305) and aftertreatment of the low band (block 306).
- the extended band output signal s wb sampled at 16 kHz, is obtained via the QMF synthesis filter bank (blocks 309, 310, 311, 312 and 313) incorporating the inverse folding (block 308).
- the protection device referenced 12 in FIG. 1 determines, in a first step, the most sensitive bits of the bit stream.
- the 8 kbit / s core layer follows the G.729 format. This format is considered insensitive to binary errors.
- the protection of the most sensitive bits is integrated in the bit stream.
- a parity bit is calculated on the 6 most significant bits (MSB) of the index coding in absolute pitch (or fundamental period) Ti of the first subframe of 5 ms. This parity bit is part of the bitstream.
- the pitch T 2 is encoded in relative, in the vicinity of the pitch value of the first sub-frame T 1 .
- Ti for values ⁇ 86 and T 2 have a resolution of V 3 .
- the decoder calculates the parity of the 6 MSB bits of the received index of the parameter Ti and if this does not correspond to the value of the received parity bit, a concealing procedure is applied: the integer portion of the pitch T 2 of the preceding frame is used instead of the value erroneous for Ti of the current frame.
- Other precautions were also taken to make the G.729 encoders / decoders robust against bit errors.
- the LPC (for Linear Predictive Coding) envelope is quantized in the domain of spectral line pairs (LSF) by multi-stage quantization.
- the gains of the CELP dictionaries are encoded by conjugate structure quantization (or "conjugate structure" in English) which is intrinsically robust to binary errors and ensures that in case of error, the decoded values are close to the values sent, which limits the impact of a binary error on perceived quality.
- the additional layer of the G.729.1 encoder bringing the bit rate to 12 kbit / s is also not very sensitive to bit errors because it only enriches the excitation of the G.729 coder by adding a fixed dictionary whose parameters are not very sensitive. to binary errors.
- a certain number of sensitive bits are identified in the layers bringing a rate of 14, 16 and 18 kbit / s.
- 5-bit sensitive bits positions 240 to 244 of the bitstream
- at most 56 bits positions 285 to 340 of the bitstream
- MDCT bits
- spectral envelope of the transformed layer MDCT variable number of bits per frame between 48 and 82 bits. Since the spectral envelope is coded by variable length codes, it takes between 44 and 92 bits to encode the spectral envelope of the TDAC coder.
- a binary bit error representing the fine structure of the spectrum is generally well tolerated.
- the most sensitive bits thus identified are classified in different categories according to the parameters they code and the action recommended in reception when an error is detected on one of the bits thus classified.
- the 5 bits coding in the TDBWE coding stage are protected by a parity bit. If the parity is verified in the device represented in FIG. 1, for processing the bit errors according to the invention, the device 110 transmits these 5 bits to the decoder 17 without modification of the bitstream. It also memorizes at 15 these 5 bits for a possible subsequent treatment. If a bit error is detected in the detection module 14, the
- This group of sensitive bits is thus listed in a first category for which the above described processing is applied in case of detection of an erroneous bit of this category.
- the 56 sensitive bits of the TDAC layer are, according to the invention, protected by a 7-bit Cyclic Redundancy Check (CRC) code.
- CRC Cyclic Redundancy Check
- This CRC code can of course be of different length depending on the level of protection desired.
- a CRC code of 4 bits is for example possible.
- it is possible to use the generator polynomial 0Xb7 D 8 + D 6 + D 5 + D 3 + D 2 + D + 1 as described in the article "Cyclic Redundancy Code (CRC) Polynomial Selection for Embedded Networks" of P Koopman and T. Chakravarty, The Int. This polynomial can detect all 1, 2, 3, 5, and 7 bit errors and more than 98% of 4 and 6 bit errors.
- the 56 sensitive bits thus belong to a second category for which, in case of detection of one (or more) error (s) in the bits of this category, the hierarchical property of the G.729.1 bit stream is used by applying a truncation.
- the device 110 provides the decoder 17 with a modified frame corresponding to a frame with a bit rate of 14 kbit / s.
- the received rate is 16 kbit / s
- the bit rate of 16 kbit / s it is better not to use the bit rate of 16 kbit / s.
- the protection device 12 calculates the 8 protection bits on the encoding side for each 20 ms frames starting from the bit stream T G.729.1.
- the 8 bits (parity bit + CRC of 7 bits) obtained constituting the protection bits P, are sent to the processing device 110 of the invention. These protection bits can be sent on the same noisy channel (in the same packet) as that of the bitstream or on another channel.
- the bit error processing device receives both the bit frame T and the 8 protection bits.
- the detection module D recalculates the 8 redundancy bits on the received bit frame and compares them with the 8 protection bits received.
- the module for modifying the bit frame replaces the 5 bits. erroneous by the 5 bits previously stored in the bit frame.
- the G.729.1 decoder 17 will not be informed of this change, it decodes the modified bit frame T 'as a valid frame.
- the detection module 14 of the device 110 detects an erroneous bit according to the received 7-bit CRC code and the corresponding bits in the received bit frame, the error then corresponds to an error in the TDAC spectral envelope.
- the bit stream modification module then deletes all the bits corresponding to the TDAC coding stage.
- the bit frame thus modified T ' is then transmitted to the decoder 17.
- the modification of the bit frame is carried out at the same time by replacing the erroneous bits of the first category by non-errored bits stored in a previous frame and by truncation of the bit frame removing the bits corresponding to the higher rate layers than the one in which the detected erroneous bit of the second category is located, as well as the layer comprising the erroneous bit.
- bit stream can for example be carried out in "flying" a bit in the 14 kbit / s layer (FEC pitch LSB bit) and 7 bits in the 16 kbit / s layer (to be removed from the bit budget of the TDAC encoder) - also note that one could do without the bits of the standardization factor MDCT using calculation tips for estimating this factor as in the G.722.1 standard, which amounts to stealing only 3 bits. It is also possible to use a 4-bit CRC code and use only the normalization factor bit location, without stealing additional bits.
- the G.729.1 decoder can obtain the information of the rate to be decoded either from the number of bits received or this information is given in a header.
- the modification module of the bit frame 16 also modifies the header to indicate to the decoder that the bit rate to be decoded for the given frame is 14 kbit / s. Even in this case, the decoder 17 is not informed of the presence of a processing device 110. Only the change of flow rate is indicated. The rate change can be caused by any other transmission element than binary errors.
- Table 2 shows the same type of statistics as those made in relation to the binary error processing method of the document of the state of the art cited, but this time with the method of the invention applied to a G.729.1 system.
- Decoded layers Decoded rate Probability frame cleared 0 kbit / s 0%
- the protection device 12 and the bit error processing device 110 are outside the encoder 10 and the decoder 17 and the protection bits are not included in the bit stream.
- these modules can be integrated in the coder and decoder from the design of the coding / decoding system, and the protection bits can then be part of the bit stream.
- FIG. 4 generally illustrates the main steps of the bit error processing method according to the invention.
- Step E41 is a step of receiving both a bit frame and protection bits.
- the bit frame includes bits to protect listed in at least one category according to the parameters they encode.
- the protection bits are calculated for the bits to be protected from the bit frame and according to their category.
- Step E42 consists in reading the received sensitive bits in the current bit frame and detecting the bit errors in the received bit frame as a function of the received protection bits and the received sensitive bits.
- the number of sensitive bits is smaller than the number of bits of the bit frame.
- step E42 negative a step of storing (E46) the corresponding bits of the bit frame can be performed, depending on the protection method applied to the bits to be protected.
- step E43 for modifying the received bit frame is performed. This change is made according to the category in which the erroneous bit is listed.
- a step (E44) of transmission to the decoder of the modified frame is then performed.
- FIG. 5 describes a particular embodiment of the device for processing bit errors according to the invention.
- this device 110 typically comprises a ⁇ P processor cooperating with a memory block BM including a storage and / or working memory, as well as the aforementioned memory MEM as a means for storing bits that do not include bit errors.
- the memory block can advantageously comprise a computer program comprising code instructions for the implementation of the steps of the method in the sense of the invention, when these instructions are executed by a ⁇ P processor of the device 110 and in particular a first reception step.
- FIG. 4 can illustrate a flowchart representing the algorithm of such a computer program.
- the computer program may also be stored on a memory medium readable by a reader of the device or downloadable in the memory space of the device 110.
- This device 110 may be independent or integrated in a digital audio signal decoder such as a hierarchical decoder type G.729.1 for example.
- the present invention has been described with two possible types of processing following detection of a bit error. It is quite possible to perform other treatments depending on the category in which the detected erroneous bit is listed. It is possible, for example, to carry out a processing consisting of decoding and memorizing the well-received parameters, and in case of detection of a bit error of this parameter to predict its value as a function of the stored values, to code this predicted value and to replace the erroneous bits by the bits thus obtained.
- the sensitive bits to be protected can be classified into more than two categories.
- the present invention can be applied to other types of scalable encoders than that described in the particular embodiment.
- the invention can indeed be applied in the case of a hierarchical frame resulting from an encoder of the EV-VBR type.
- the sensitive bits of this bitstream are then different from those described for the G729.1 bit frame, since the coded parameters come from a different coding model.
- the sensitive bits in the EV-VBR can be identified on statistical and / or experimental bases.
- VBR is described in ITU-T WP3 / 16, "Extended High-Level Description of the Nokia / VoiceAge Candidate for EV-VBR Coded," April 2007 (Source: Nokia, VoiceAge Corp.).
- MDCT gains those encoding the MDCT coefficients per se
- MDCT coef those encoding the MDCT coefficients per se
- the number of sensitive bits to be protected is variable from one encoder to another as well as the calculation of the appropriate protection bits.
- the invention applies in all these cases.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0759694 | 2007-12-10 | ||
PCT/FR2008/052259 WO2009080982A2 (fr) | 2007-12-10 | 2008-12-10 | Traitement d'erreurs binaires dans une trame binaire audionumerique |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2232833A2 true EP2232833A2 (fr) | 2010-09-29 |
Family
ID=39638687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP08864421A Ceased EP2232833A2 (fr) | 2007-12-10 | 2008-12-10 | Traitement d'erreurs binaires dans une trame binaire audionumerique |
Country Status (5)
Country | Link |
---|---|
US (1) | US8418032B2 (fr) |
EP (1) | EP2232833A2 (fr) |
KR (1) | KR101563555B1 (fr) |
CN (1) | CN101939974B (fr) |
WO (1) | WO2009080982A2 (fr) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10361721B1 (en) | 2014-05-01 | 2019-07-23 | Marvell International Ltd. | Methods and network device for uncoded bit protection in 10GBASE-T Ethernet |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0936772A2 (fr) * | 1998-02-11 | 1999-08-18 | Lucent Technologies Inc. | Protection à niveaux inégaux pour codeur perceptuel de signaux audio |
EP1018815A2 (fr) * | 1999-01-05 | 2000-07-12 | Lucent Technologies Inc. | Protection à niveaux inégaux de programme multiples pour radiodiffusion numérique et autres applications |
US20060282748A1 (en) * | 2002-01-16 | 2006-12-14 | Bader Carl V | System and method for transmitting audio or video data using multiple levels of protection |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4771463A (en) * | 1986-12-05 | 1988-09-13 | Siemens Transmission Systems, Inc. | Digital scrambling without error multiplication |
US5519719A (en) * | 1991-12-19 | 1996-05-21 | Adc Telecommunications, Inc. | Universal pattern generator |
US5627835A (en) * | 1995-04-04 | 1997-05-06 | Oki Telecom | Artificial window size interrupt reduction system for CDMA receiver |
DE19605418B4 (de) * | 1996-02-14 | 2014-11-20 | Ipcom Gmbh & Co. Kg | Verfahren zur Aufbereitung von Daten, insbesondere für die Übertragung mit veränderlicher Kanalbitrate |
SE522261C2 (sv) * | 2000-05-10 | 2004-01-27 | Global Ip Sound Ab | Kodning och avkodning av en digital signal |
KR100908117B1 (ko) * | 2002-12-16 | 2009-07-16 | 삼성전자주식회사 | 비트율 조절가능한 오디오 부호화 방법, 복호화 방법,부호화 장치 및 복호화 장치 |
US7643558B2 (en) * | 2003-03-24 | 2010-01-05 | Qualcomm Incorporated | Method, apparatus, and system for encoding and decoding side information for multimedia transmission |
-
2008
- 2008-12-10 KR KR1020107015252A patent/KR101563555B1/ko active IP Right Grant
- 2008-12-10 CN CN200880126510.6A patent/CN101939974B/zh not_active Expired - Fee Related
- 2008-12-10 US US12/744,993 patent/US8418032B2/en not_active Expired - Fee Related
- 2008-12-10 EP EP08864421A patent/EP2232833A2/fr not_active Ceased
- 2008-12-10 WO PCT/FR2008/052259 patent/WO2009080982A2/fr active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0936772A2 (fr) * | 1998-02-11 | 1999-08-18 | Lucent Technologies Inc. | Protection à niveaux inégaux pour codeur perceptuel de signaux audio |
EP1018815A2 (fr) * | 1999-01-05 | 2000-07-12 | Lucent Technologies Inc. | Protection à niveaux inégaux de programme multiples pour radiodiffusion numérique et autres applications |
US20060282748A1 (en) * | 2002-01-16 | 2006-12-14 | Bader Carl V | System and method for transmitting audio or video data using multiple levels of protection |
Also Published As
Publication number | Publication date |
---|---|
KR101563555B1 (ko) | 2015-10-27 |
US20100306629A1 (en) | 2010-12-02 |
WO2009080982A3 (fr) | 2010-07-15 |
KR20100112128A (ko) | 2010-10-18 |
US8418032B2 (en) | 2013-04-09 |
CN101939974B (zh) | 2014-08-13 |
WO2009080982A2 (fr) | 2009-07-02 |
CN101939974A (zh) | 2011-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2277172B1 (fr) | Dissimulation d'erreur de transmission dans un signal audionumerique dans une structure de decodage hierarchique | |
EP1907812B1 (fr) | Procede de commutation de debit en decodage audio scalable en debit et largeur de bande | |
EP1316087B1 (fr) | Dissimulation d'erreurs de transmission dans un signal audio | |
EP2080195B1 (fr) | Synthèse de blocs perdus d'un signal audionumérique | |
EP2176861B1 (fr) | Codage hierarchique de signaux audionumeriques | |
EP2586133B1 (fr) | Contrôle d'une boucle de rétroaction de mise en forme de bruit dans un codeur de signal audionumérique | |
EP1905010A2 (fr) | Dispositif de codage/decodage hierarchique | |
FR2938688A1 (fr) | Codage avec mise en forme du bruit dans un codeur hierarchique | |
WO1999040573A1 (fr) | Procede de decodage d'un signal audio avec correction des erreurs de transmission | |
WO2011004097A1 (fr) | Codage/décodage perfectionne de signaux audionumériques | |
EP2080194B1 (fr) | Attenuation du survoisement, notamment pour la generation d'une excitation aupres d'un decodeur, en absence d'information | |
Kovesi et al. | A scalable speech and audio coding scheme with continuous bitrate flexibility | |
EP2347411A1 (fr) | Attenuation de pre-echos dans un signal audionumerique | |
EP2652735B1 (fr) | Codage perfectionne d'un etage d'amelioration dans un codeur hierarchique | |
EP2005424A2 (fr) | Procede de post-traitement d'un signal dans un decodeur audio | |
EP2203915B1 (fr) | Dissimulation d'erreur de transmission dans un signal numerique avec repartition de la complexite | |
WO2009080982A2 (fr) | Traitement d'erreurs binaires dans une trame binaire audionumerique | |
FR2997250A1 (fr) | Detection d'une bande de frequence predeterminee dans un contenu audio code par sous-bandes selon un codage de type modulation par impulsions | |
FR3007184A1 (fr) | Controle du traitement d'attenuation d'un bruit de quantification introduit par un codage en compresssion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20100702 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA MK RS |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04M 1/253 20060101AFI20100914BHEP |
|
DAX | Request for extension of the european patent (deleted) | ||
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ORANGE |
|
17Q | First examination report despatched |
Effective date: 20170719 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R003 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED |
|
18R | Application refused |
Effective date: 20190711 |