CN101578861A - Error recovery using in band error patterns - Google Patents

Error recovery using in band error patterns Download PDF

Info

Publication number
CN101578861A
CN101578861A CNA2006800243736A CN200680024373A CN101578861A CN 101578861 A CN101578861 A CN 101578861A CN A2006800243736 A CNA2006800243736 A CN A2006800243736A CN 200680024373 A CN200680024373 A CN 200680024373A CN 101578861 A CN101578861 A CN 101578861A
Authority
CN
China
Prior art keywords
mark
bit stream
error
processor
equipment
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.)
Pending
Application number
CNA2006800243736A
Other languages
Chinese (zh)
Inventor
苏密特·塞蒂
维贾雅拉克希米·R·拉韦恩德拉恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101578861A publication Critical patent/CN101578861A/en
Pending legal-status Critical Current

Links

Images

Abstract

A method and an apparatus for decoding multimedia data are described. One method includes receiving an encoded bitstream, identifying the location of one or more erroneous bits in the bitstream, generating a marker indicating the one or more erroneous bits, and inserting the marker in the bitstream to create a modified bitstream. The method can further comprise decoding the modified bitstream using the marker to indicate the one or more erroneous bits. The method can further comprise initiating an error handling process when encountering the marker.

Description

Use the mistake of error pattern in the band to recover
Advocate priority according to 35U.S.C. § 119
Present application for patent is advocated the 60/680th of being entitled as of application on May 13rd, 2005 " Application Layer Interactions AndError Signaling ", the priority of No. 633 provisional application cases, and advocate the 60/789th of being entitled as of on April 4th, 2006 application " Error Recovery Using In Band Error Patterns ", the priority of No. 273 provisional application cases, and transfer assignee of the present invention and incorporate this paper clearly in this mode by reference.
Technical field
The present invention relates to the method and apparatus of decoding real time flow medium on handheld apparatus.
Background technology
Because increasing rapidly and ten-strike very of internet and radio communication, and to the demand that increases day by day of multimedia service, in the internet with move/Streaming Media on wireless channel caused great concern.In heterogeneous the Internet protocol (IP) network, video is provided by server and can pass through one or more client computer crossfires.Wired connection comprises dialing, integrated service digital network (ISDN), cable, digital subscriber line agreement (being referred to as xDSL), optical fiber, Local Area Network, wide area network (WAN) etc.Transmission mode can be clean culture or multicast.
With heterogeneous IP network similarly be mobile/radio communication.Moving/to transmit content of multimedia on wireless channel be very challenging, because these channels are often owing to multipath declines, covers, intersymbol interference and noise disturbance are subjected to grievous injury.For example some other reasons of the mobility and the competition traffic also can cause bandwidth change and loss.The number of interchannel noise and institute's service-user has determined the time variation of channel circumstance.
Demand to higher data rate and higher quality of service in heterogeneous IP network and mobile communication system increases apace.Yet for example the factor of finite delay time, limited through-put power, finite bandwidth and multipath decline continues the data rate that restriction is handled by real system.In multimedia communication, especially in error-prone environments, it is important that the mistake of institute's transmission medium is recovered for the service quality that needs is provided, even because the mistake of single decode value also can cause the decoding illusion (decoding artifact) propagated on room and time.Used various coding methods when keeping data necessary speed, mistake to be minimized, yet all these technology all can run into the problem of the mistake that arrives decoder-side.
Existence is at numerous encoding schemes that number minimizes or effective deal with data is destroyed when really data corruption taking place of the error bit that decoder is received.Chnnel coding (for example, Reed-Solomon (Reed-Solomon) coding) is in order to improve the steadiness of source coded data.Joint source-channel coding method is in order to provide the error protection of different brackets, perhaps by cutting apart the rate adaptation available network bandwidth that makes coding video frequency data with packet discard to the source coded data with different brackets importance.This is because shared transportation protocol is not delivered to misdata the source decoder.
Other technology also is used for the deal with data mistake.For instance, when receiving the bag with one or more bad or error bits, the source code technology of for example reversible variable length code (for example, among the MPEG-4) has been used for by carrying out mistake recovery with opposite sequence decoding bag.Between code efficiency and source code technology, exist and trade off, this compromise quality that finally is presented as the decoded video of given bit rate.For example MPEG-1, MPEG-2, MPEG-4 (being referred to as MPEG-x), the hybrid coding standard that H.261, H.262, H.263 and H.264 (is referred to as H.26x) use synchronous points again in the bit stream as manage wrong main method everywhere at decoder.
The reason that data degradation surpasses initial corruption is because incorrect codeword emulation.The identification of initial bit-errors position is not unessential task, and is impossible under the situation of the particular design of the identification of common bit-errors position in not being supported in MAC layer or physical layer part.Therefore, one detects bitstream corruption, and decoder must stop decoding and advance in bit stream finding down synchronous points again and again, and skip a large amount of potential good data in this process.Although it is may as if be out of question aspect the above-mentioned event sequence, true really not so with the emulation of the different code words of original (for example, credible) code word equal length.Have many modes, wherein this mistake can cause the failure of the correct bit stream decipher of decoder.For instance, in the current codec of majority, have object in the bit stream (compression relevant parameter), its value influences the grammer of the subsequent section of bit stream.Therefore, the incorrect value of this object will cause incorrect bitstream interpretation.
Known fault processing technology can cause the decoder utilization of poor efficiency, because the decoder processes bit-errors is limited in one's ability, and discarded packets and be the most frequently used solution more synchronously wherein.Need a kind of in the error bit of fully handling in the multi-medium data, remain valid the improving one's methods of processing bit-errors of operation of decoder that allow.
Summary of the invention
Creative equipment described herein and method respectively have some aspects, do not have its needed attribute of single one side individual responsibility.Under situation about not limiting the scope of the invention, now will it briefly be discussed than notable attribute.After considering that this discusses, and, how understanding feature of the present invention is provided the improvement of multi-medium data treatment facility and method especially reading after title be the part of " embodiment ".
On the one hand, the method for processing multi-medium data comprises: the received code bit stream; Misdata in the recognition coding bit stream; Produce the mark relevant with misdata; With mark is inserted in the coding stream to produce through revising bit stream.Described method can comprise that usage flag decodes through revising bit stream.Described method also can comprise if run into the just initial fault processing of mark during decoding.
On the other hand, the equipment that is used to handle multi-medium data comprises: communications component, and it is configured to the coding stream of receiving multimedia data; And processor, it is configured to discern the position of one or more error bits in bit stream, produce the mark of one or more error bits of indication and mark is inserted in the bit stream to produce through revising bit stream.Initial fault processing when described equipment can further be configured to run into mark during decoding.Equipment can further comprise and be configured to decode through revising the decoder of bit stream, and wherein decoder further is configured to usage flag and activates fault processing when running into mark during decoding.
In another aspect, the equipment that is used to handle multi-medium data comprises: the device that is used for the received code bit stream; Be used for discerning the device of one or more error bits in the position of bit stream; Be used to produce the device of the mark of indicating one or more error bits; With being used for mark is inserted in bit stream to produce through revising the device of bit stream.
Comprise on the other hand being used to implement a kind of computer-readable media of handling the method for multi-medium data, described method comprises: the received code bit stream; Discern the position of one or more error bits in bit stream; Produce the mark of one or more error bits of indication; With mark is inserted in the bit stream to produce through revising bit stream.Described method can further comprise decoding through revising bit stream, wherein during decoding usage flag to indicate one or more error bits.Described method can further be included in initial fault processing when running into mark during the decoding.
Comprise the processor that is used to handle multi-medium data on the other hand, described processor is configured to the received code bit stream, discern the position of one or more error bits in bit stream, produce the mark of one or more error bits of indication and mark is inserted in the bit stream to produce through revising bit stream.Processor also can be configured to decoding through revising bit stream, wherein during decoding usage flag to indicate one or more error bits.Initial fault processing when processor also can further be configured to run into mark during decoding.
Description of drawings
Figure 1A is the block diagram of example that is used to transmit the communication system of streaming multimedia.
Figure 1B is the block diagram of another example that is used to transmit the communication system of streaming multimedia.
Fig. 2 is the block diagram that is used at the multi layer protocol stack of reflector and decoder division task.
Fig. 3 explanation is delivered to the example of the bag of decoder as bit stream data.
Fig. 4 is the example that comprises the bit stream of a plurality of illustrated PLP in transport layer and application layer.
Fig. 5 is the flow chart of the method for decoding streaming multi-medium data.
Fig. 6 is the block diagram that is used to handle the equipment of multi-medium data.
Embodiment
In the following description, provide detail so that the complete understanding to embodiment to be provided.Yet it will be understood by one of ordinary skill in the art that not to have implementing described embodiment under the situation of these details.For instance, available block diagram is showed circuit so that can not make embodiment fuzzy on unnecessary details.In other example, but the well-known circuit of detail display, structure and technology be not so that can make embodiment fuzzy.
And, please note that described embodiment can be described as the process that is depicted as flow diagram, flow chart, structure chart or block diagram.Though flow diagram may be described as sequential process with operation, the many operations in these operations can walk abreast or carry out simultaneously.In addition, the order of described operation can rearrange.When the operation of complete process, described process stops.Process can be corresponding to method, function, handling procedure, subroutine, subprogram etc.When process during corresponding to function, it stops corresponding to described function is turned back to call function or major function.
In addition, as disclosed herein, " medium " can represent to be used to store one or more devices of data, comprises read-only memory (ROM), random-access memory (ram), magnetic disc storage media, optic storage medium, flash memory device and/or is used for other machine-readable medium of stored information.Term " machine-readable medium " includes, but is not limited to portable or fixed-storage device, optical storage, wireless channel and can store, contains or have various other medium of instruction and/or data.
In addition, embodiment as herein described can be implemented by hardware, software, firmware, middleware, microcode or its any combination.For instance, encoder or decoder can hardware, the form of firmware, middleware is incorporated on the processor in receiver or the reflector, and perhaps the microcode that can carry out on processor of decoder or the form of software or its combination are implemented.Perhaps, encoder or decoder can hardware, the form of firmware, middleware is implemented on the dedicated decoders assembly but not on the Main Processor Unit of equipment, perhaps the microcode that can carry out on the dedicated decoders assembly or the form of software are implemented.When implementing, can be stored in order to the procedure code of carrying out necessary task or sign indicating number section in the machine-readable medium of medium for example with the form of software, firmware, middleware or microcode.Processor can be carried out this necessary task.The sign indicating number section can be represented handling procedure, function, subprogram, program, routine, subroutine, module, software kit, classification, or any combination of instruction, data structure or program statement.The sign indicating number section can be couple to another yard section or hardware circuit by transmission and/or reception information, data, independent variable, parameter or memory content.Can transmit, transmit by any suitable mode that comprises Memory Sharing, message transmission, token passing, Network Transmission etc. or transmission information, independent variable, parameter, data etc.
The those skilled in the art also will understand, and can rearrange following one or more elements that disclose device under the situation that does not influence the device operation.Similarly, can under the situation that does not influence the device operation, make up following one or more elements that disclose device.
Below describing in detail is at some specific embodiment.Yet the present invention can implement by many different modes.In this specification quoting of " embodiment " or " embodiment " meaned that described in conjunction with the embodiments special characteristic, structure or characteristic are included among at least one embodiment.The appearance of phrase " in one embodiment ", " according to an embodiment " or " in certain embodiments " each position in specification is not all to relate to identical embodiment, is not the independent or alternate embodiment of mutual other embodiment of eliminating yet.In addition, having described can be by some embodiment but not the various features that other embodiment represents.The various requirement of the requirement that may be some embodiment but not other embodiment has been described similarly.
The decoder that transmits in the communication system of streamed multimedia data can receive bit stream, and bit stream comprises and for example destroying or one or more error bits of lost data.When decoder runs into misdata when decoding bit stream, decode procedure is interrupted.This paper has described in order to provide the improvement decoding capability to get rid of or to minimize at least the method and apparatus of the interruption that causes by attempting the misdata in the decoding multimedia bit stream.A kind of method comprises the position (for example in physics or transport layer) of one or more error bits of identification in the multimedia bit stream that decoder received and the mark of one or more error bits of generation indication.Error flag is inserted in the bit stream to produce through revising bit stream.The insertion of error flag in bit stream " band in " in bit stream, hinting therefore that mark sends with the data of original reception but not in office what its layer or the next door channel in send.For instance, error flag can be inserted in the data in regular turn, makes mark can be used as the part of bit stream itself and is read.Therefore, error flag becomes the part of the bit stream on the upper strata (for example application layer) that sends to decoder.
If decoder runs into mark in decoding when revising bit stream, it can initial error processing procedure so, for example error concealing, grammer verification, or only it is abandoned (for example, skip or ignore misdata).Provide " band in " mark can realize effectively and decoding capability faster.In the following description, provide other details with provide to in the example of wrong signaling mode and aspect and in order to help to carry out quickly the complete understanding of the wrong purposes of recovering.Yet,, also can put into practice described example even it will be understood by one of ordinary skill in the art that this paper not process among description or illustrated example or the embodiment or each details of device.For instance, electric assembly can be showed by block diagram, and each electrical connection of its undeclared assembly or each electric device be not so that can make example fuzzy on unnecessary details.In other example, but these assemblies of detail display, other structure and technology are to be further explained in detail described example.
Figure 1A is the block diagram of an example that is used to transmit the communication system 100 of streaming multimedia, and it can comprise institute's revealing method and the equipment of handling multi-medium data.As used herein " multi-medium data " is broad terms, and it comprises video data (it can comprise voice data), voice data, figure, text data, picture or view data or its any combination.As used herein " video data " or " video " are broad terms, refer to the image sequence that contains text or image information and/or voice data, and except as otherwise noted otherwise can be in order to refer to multi-medium data (for example, described term uses convertibly).
The multi-medium data that is sent to customer set up is compressed usually.Data of description handles and two video encoding standards of manipulation technology (being called hybrid coding herein) (be called MPEG-x and H.26x) are suitable for well using and fix or the compression and the transmission of video, audio frequency and the out of Memory of manipulation techniques.System 100 can use the above standard of quoting and other hybrid coding standard and technology.Illustrative ground, multi-medium data can use intraframe coding technology (for example, run-length encoding, Huffman (Huffman) coding etc.) and inter-frame coding (for example, forward direction and back forecast coding, motion compensation etc.) to compress.Available MPEG-4AAC, MP3, AMR and G.723 audio frequency or voice compression audio compressed data.
System 100 comprises multimedia reflector 105 and multimedia receiver 150.Reflector 105 can comprise that one or more memory assemblies 115 are with processor 110 or be used to distribute a plurality of processors of modulation relevant with multi-medium data and coding task, comprising preprocessor (for example, the central processor unit CPU of any kind, for example ARM), any combination of the hardware of digital signal processor (DSP), software, firmware and for example video core.Reflector 105 also can comprise encoder 175, it uses the coding standard coded data to be transmitted into receiver 150, and described coding standard for example is MPEG-1, MPEG-2, MPEG-4 (being referred to as MPEG-x), H.261, H.262, H.263 or H.264 (is referred to as H.26x).
Reflector 105 also can comprise communications component 120, and it obtains data from each provenance, and described source comprises external source 125 (for example, internet, external memory storage or real-time video and/or audio frequency feed-in).Reflector 105 uses communications components 120 fetched data is transmitted into receiver 150 on communication system.Described communication system can be cable network 135 (for example phone, cable or optical fiber) or wireless network 130.Under the situation of wireless communication system, network 130 can be including (for example) code division multiple access (CDMA or CDMA2000) communication system, perhaps, system can be frequency division multiple access (FDMA) system, OFDM (OFDMA) system, time division multiple access (TDMA) system for example is used for GSM/GPRS (the GPRS)/EDGE (enhanced data gsm environment) or TETRA (terrestrial trunked radio) the mobile phone technology of service trade, Wideband Code Division Multiple Access (WCDMA) (WCDMA), high data rate (lxEV-DO or the multicast of lxEV-DO gold medal) system, or generally speaking utilize any wireless communication system of technical combinations.
Receiver 150 comprises communications component 155 and be used for receiving the device of data (for example, radio-frequency antenna or network connect) on wireless network 130 and/or cable network 135.Receiver 150 also can comprise processor 160 or be used to distribute a plurality of processors of the demodulation sign indicating number task relevant with receiving the decode data, comprising preprocessor (for example, the central processor unit CPU of any kind, for example ARM), any combination of the hardware of digital signal processor (DSP), software, firmware and for example video core.Receiver 150 also can comprise decoder 170, and it uses the coding stream of decoding and being received corresponding in order to the decoding standard that is suitable for of the coding standard that produces coded data.
Illustrated as Figure 1B, in certain embodiments, the processor 160 in the multimedia receiver 150 can be carried out the decoding task of being carried out by the independent decoder shown in Figure 1A 170.Processor 160 can pass through logic (for example, software, hardware, firmware or its combination) and be configured to from communications component 155 received code bit streams, discerns the position of one or more error bits bit stream, produces the mark of one or more error bits of indication and mark is inserted in the coding stream to produce through revising bit stream.Processor 160 also can be configured to decoding through revising bit stream by logic, wherein during decoding usage flag to indicate one or more error bits.If run into mark during decoding, processor 160 also can be configured to initial fault processing by logic so.Figure 1B has illustrated that also the processor 110 in the reflector 105 can be configured to the embodiment that coding stream is also carried out any other task of being carried out by the encoder shown in Figure 1A 175.
Once more referring to Figure 1A, receiver 150 also contains one or more memory assemblies 165 that are useful on storage received data and intermediate data in each stage of demodulate/decode process.In certain embodiments, ARM preprocessor (not shown) is carried out more uncomplicated task, comprises and unpacking that (removing for example supplementary of header and signaling message) and demultiplexing comprise a plurality of bit streams of audio frequency, video etc.The ARM preprocessor also can be carried out bit stream parsing, error detection, error concealing and variable length entropy decoding.In some this embodiment, DSP carry out VLC (variable-length code (VLC)) code word expansion, predict and audio decoder (for example, MPEG-4AAC, MP3, AMR or G.723) in order to the reverse zigzag scanning of the video data of space orientation pixel coefficient, the reverse AC/DC that is used for the pixel coefficient of MPEG-4 video (because the context-adaptive entropy coding is not a feature H.264).Video core can be carried out to calculate and go up than the complex video decoding task, and it comprises re-quantization, inverse transformation, motion compensated prediction and deblocks (in order to reduce the filtered version of the edge illusion between the block of pixels edge).
Receiver 150 contains error handling logic, for example error detection, error concealing and grammer verification.Error handling logic can software, the form of hardware or firmware is implemented in the receiver 150.Particularly, receiver 150 comprise error handling logic with one or more error bits in the identification institute received code bit stream, to produce suitable mark be wrong with which position in the indication bit stream and mark is inserted in the bit stream with " in the band " form.Generation, insertion and the use of this mark are further described to Fig. 6 referring to Fig. 2.In certain embodiments, error handling logic also can be discerned the erroneous packets that also overall labeling contains error bit.On all or part of resided on decoder 170 of error handling logic, on the processor 160, in one or more memory assemblies 165 or in another logic device in the receiver 150.One or more elements can added to communication system 100 without departing from the scope of the invention.
Fig. 2 is the block diagram that is used for dividing the multi layer protocol stack of task in reflector 105 that Figure 1B illustrates and receiver 150.Protocol stack comprises application layer 205,210, transport layer 215,220 and the physical layer 225,230 that is respectively applied for emitter side and receiver-side, and described emitter side and receiver-side are corresponding to reflector 105 that illustrates among Figure 1B and receiver 150.In certain embodiments, these may be the parts of standard osi layer structure.Yet described layer is not limited to the OSI structure.Application layer 205 and 210 in reflector 105 and the receiver 150 can comprise a plurality of application programs respectively, for example video or audio coder and/or decoder.Some embodiment can comprise a plurality of information flows that plan is decoded simultaneously.In these cases, the synchronous task of a plurality of streams also can be carried out in application layer 205 and 210.Provide the coding timing information in the bit stream that application layer 205 can be transmitted on wireless network 130 or cable network 135.Application layer 210 can be resolved a plurality of information flows, makes relevant application program simultaneously or near simultaneously it being decoded.The those skilled in the art will be familiar with these layers and be familiar with distributing various tasks in these layers.The those skilled in the art also will recognize in certain embodiments, and further the layer shown in detail display Fig. 2 is to comprise layer, sync, stream or media interviews (MAC) key-course and/or institute one or more layers in being described layer.
Transport layer 215 in the reflector 105 and physical layer 225 can comprise that various schemes are to provide wrong recovery.For example the error prone channels of wireless network 130 and/or cable network 135 (Figure 1B) can be incorporated into mistake in the bit stream that is received by receiver 150.Error recovery procedure (ERP) can comprise one or error control coding scheme, interlace scheme and other this scheme.The transport layer 220 of receiver 150 and physical layer 230 can comprise the corresponding error decoding that can realize error detection and correction.But transport layer 220 execution error analysis and/or detections, for example forward error correction and external encode.But physical layer 230 also execution error analysis and/or detection comprises.Can not proofread and correct by transport layer 220 or physical layer 230 by some wrong possibilities that wireless network 130 or cable network 135 are introduced.For being identified but uncorrectable those mistakes, and under the infeasible situation of solution possibility that for example request error assembly transmits again, the number of mistake bit position and error bit can be indicated by mark, and described mark is inserted in the bit stream with " in the band " form and upwards sends to application layer 210.
Fig. 3 explanation is delivered to the example of the physical layer packet (or " PLP ") of receiver 150 as bit stream data.Each bag has and transmits header part 305, contains the main part 310 of encoded multimedia data and contain the afterbody part 315 of error-checking code, for example cyclic redundancy check (CRC) and (" CRC ").If (for example) detect the bag (" bad " PLP) of the misdata that contains (for example) one or more error bits by physical layer in the receiver or the error detection logic in the transport layer, the token-passing header is wrong (for example, bad) to indicate one or more so.Error pattern marker and segment header or segment data information are placed with " in the band " form, thus produce continue to send to application layer through revising bit stream.When the application layer component of receiver ran into error pattern marker in the bit stream, decoder can take action to handle the PLP of error flag or abandon bad PLP and continue and decode from next PLP.In certain embodiments, decoder when running into the PLP of error flag, activate the grammer verification or other error checking functional.In certain embodiments, when decoder runs into the PLP of error flag, its activate error concealing with handle or mark corresponding to the zone of error bit.
In certain embodiments, can the following grammer of describing error pattern with hexadecimal:
00 00 01 18<error pattern length byte〉<bad bit stream length 〉
Wherein " 00 00 01 18 " be in order to represent its start code prefix of the data of inserting in the NAL unit that is just carrying out.The number of the byte that " error pattern length byte " expression will be read after this byte being used for read error pattern NAL.The length of " bad bit stream length " expression error bit.In certain embodiments, " bad bit stream length " part is set to the length of current bag, thereby in the indication bag all are wrong.In certain embodiments, start code prefix can be " 00 00 01 24 ".Generally speaking, select start code prefix so that be retained or part unspecified but standard for some that compress standard after the sync byte of forming by " 00 00 01 ", make the decoder that meets this standard moderately handle error pattern (for example, not bumping).
Fig. 4 is the example that comprises the bit stream data of a plurality of illustrated PLP in transport layer and application layer.Transport layer data is illustrated as bit stream data has numerous bags 415, and each bag comprises transmission header (" TH "), wraps ID-F by using N, MThe grouped data of quoting (wherein N, MThe M of instruction video frame N bag) and contain bag (PLP) afterbody of cyclic redundancy check (CRC) and (" CRC ").CRC provides the data that constitute the transmission header and the parity check of application packet data.As CRC and (for example do not match at receiver side, decoder-side) for this reason data produce parity check bit the time, for example use bag 425, CRC fails owing to the particular error pattern is marked as in transmitting header, and decoder logic will be distinguished and the described particular error pattern of decipher is wrong with definite which position.For instance, CRC 405 is illustrated as marked erroneous.In certain embodiments, error pattern insertion 410 can be labeled as whole bag mistake.In certain embodiments, the position of error pattern insertion 410 indication given numbers is wrong.
Application layer data will be illustrated as from the bit stream data that transport layer receives and contain numerous grouped datas 420, and each grouped data is illustrated by different application bag ID.Application layer data no longer contains transmission header or crc field.Unless other mark, otherwise grouped data exists as the stream of " well " data to be decoded.Bag 430 is corresponding to the bag with bad CRC or any other error message (for example, bad position) in the transport layer data.For indication bag 430 comprises one or more error bits, before bag 430, insert error pattern marker with " in the band " form with bit stream.Decoder is configured to distinguish error pattern marker by logic when running into error pattern marker, and can then abandon data or activate error handling logic.Inserting error pattern marker with " band in " form, to allow decoder be not deal with data under the situation of information of " in the band " not relying on any other, and this causes decoding quickly.In certain embodiments, when running into mark, indicated " bad " data bit can be handed to another process to be used for error correction or error concealing.
Note that and some embodiment can be described as process, it can be depicted as flow diagram, flow chart, structure chart or block diagram.Though flow diagram may be described as sequential process with operation, the many operations in these operations can walk abreast or carry out simultaneously, and can repeat described process.In addition, the order of described operation can rearrange.When the operation of complete process, described process can stop.Process can be corresponding to method, function, handling procedure, subroutine, subprogram etc.When process during corresponding to function, it stops corresponding to described function is turned back to call function or major function.
Show an embodiment who is described as process among Fig. 5, it is to be used to decode the flow chart of process 600 of streaming multi-medium data.At state 605 places, process 600 receives coding stream.Can receive bit stream from (for example) reflector 105 by cable network 135 or wireless network 130.At state 610 places, one or more wrong bit positions in the process 600 identification bit streams.In certain embodiments, error bit can be discerned by the error handling logic in physical layer 230 that is implemented in decoder or the transport layer 220.In other embodiments, error bit can be discerned by the process of preliminary treatment bit stream before bit stream is by the process in the decoder (for example, the process in the application layer 210 of receiver 150) decoding.In case one or more error bits in the process 600 identification bit streams, it just produces the mark of misdirection position at state 615 places.For instance, but the first wrong bit position in the existence of mark misdirection position, mistake bit position or the one group of error bit, and/or the length (for example, the number of error bit or last wrong bit position) of error bit in the indication bit stream.At state 620 places, process 600 is inserted in the bit stream error flag to produce through revising bit stream.Mark is inserted in the bit stream with " in the band " form.In certain embodiments, error flag directly is inserted in before the misdata.Error flag can comprise (for example) information in order to the length of the information of representing the length that it is present in start code prefix in revising bit stream, misdirection pattern and/or misdirection position.Mark can comprise that there is the predetermined error pattern of one or more error bits in the known indication of decoder.In other embodiments, error pattern can be inserted in the error bit transmission header before of bag.
Process 600 also can comprise decoding according to circumstances through revising bit stream, for example at state 625 places of process 600, according to decoding in order to the applied code of coding stream through revising bit stream.In decode procedure, may run into error flag.In state 630,, activate error handling logic so to handle error bit if process 600 runs into error flag.Error handling logic can be the verification of (for example) grammer, error correction, error concealing or ignores (for example, abandoning) error bit.In certain embodiments, decoder can activate two or more error processing procedures when running into mark.After state 635 places activate error handling logic, if or do not run into error flag, the continuation of decoding so.At state 640 places, process 600 determines whether finish through the decoding of revising bit stream.If do not finish, process 600 continues decoding through revising bit stream at state 625 places so.When decoding was finished, process 600 finished.
Can in various embodiments, utilize method and apparatus described herein.Fig. 6 explanation is used to handle a this example of the equipment 650 of multi-medium data, the equipment 650 that is used for handling multi-medium data equipment comprises the device, the device that is used to discern one or more wrong bit positions of bit stream that are used for receiving coding stream, be used to produce one or more error bits of indication mark device and be used for mark is inserted in bit stream to produce through revising the device of bit stream.As illustrated in fig. 6, receiving system can comprise receiver module 655.Recognition device can comprise identification module 660.Generation device can comprise generation module 665.Insert device and can comprise insert module 670.In certain embodiments, decoder 170 can by one or one in identification module 660, generation module 665 and the insert module 670 with on implement.And equipment can further comprise according to circumstances and be used to decode through revising the device of bit stream, wherein during decoding usage flag to indicate one or more error bits.Described equipment also can comprise the device of initial error processing procedure when being used for running into mark during decoding.Insert device and can comprise processor, it is configured to mark is inserted in the bit stream to produce through revising bit stream.In some embodiment of equipment, insert device and can be configured to mark is inserted in the bit stream, make mark become the part of bit stream.The decoding device of equipment can comprise the processor that is configured to decode through the modification bit stream.
Be understood by those skilled in the art that, can use in multiple different technologies and the skill and technique any one to come expression information and signal.For instance, data, instruction, order, information, signal, position, symbol and chip that can reference in above whole description can be represented by voltage, electric current, electromagnetic wave, magnetic field or magnetic particle, light field or optical particle or its any combination.
The those skilled in the art will further understand, and various illustrative components, blocks, module and the algorithm steps described in conjunction with example disclosed herein can be embodied as electronic hardware, firmware, computer software, middleware, microcode or its combination.Be this interchangeability of clear explanation hardware and software, above substantially according to its functional descriptions various Illustrative components, piece, module, circuit and step.This kind be functional to be embodied as hardware or software and to depend on application-specific and force design constraint on whole system.The those skilled in the art can implement described functional at each application-specific in a different manner, but these implementation decisions should not be interpreted as causing breaking away from the scope of institute's revealing method.
Various illustrative components, blocks, assembly, module and the circuit of describing in conjunction with example disclosed herein can be implemented with any combination of carrying out function described herein or carry out through design by general processor, digital signal processor (DSP), application-specific integrated circuit (ASIC) (ASIC), field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components or its.General processor can be microprocessor, but scheme as an alternative, processor can be any conventional processors, controller, microcontroller or state machine.Processor also can be implemented as the combination of calculation element, and for example DSP combines DSP kernel or any other this kind configuration with the combination of microprocessor, a plurality of microprocessor, one or more microprocessors.
The software module that the method for describing in conjunction with example disclosed herein or the step of algorithm can be directly carried out with hardware, by processor or both combinations are implemented.Software module can reside in the medium of any other form known in RAM memory, flash memory, ROM memory, eprom memory, eeprom memory, register, hard disk, removable disk, CD-ROM or the affiliated field.Exemplary storage medium is couple to processor, makes that processor can be from read information and to the medium writing information.Scheme as an alternative, medium can be integral with processor.Processor and medium can reside in the application-specific integrated circuit (ASIC) (ASIC).ASIC can reside in the radio modem.Scheme as an alternative, processor and medium can be used as discrete component and reside in the radio modem.
The those skilled in the art provides the previous description of revealed instance so that can make or use the method and apparatus that is disclosed.The those skilled in the art will be easy to understand the various modifications of these examples, and principle defined herein is applicable to other example, and can add additional element under the situation of the spirit or scope that do not break away from the method and apparatus that is disclosed.
Should be appreciated that the foregoing description only is example and should be interpreted as limiting the present invention.The description expectation of described embodiment is illustrative, and does not limit the scope of the claims.Thereby current teaching can be easy to be applied to the equipment of other type, and the technical staff in described field will be easy to understand many replacement schemes, modifications and variations.

Claims (56)

1. method of handling multi-medium data, it comprises:
Receive coding stream;
Discern the misdata in the described coding stream;
Produce the mark that is associated with described misdata; With
Described mark is inserted in the described coding stream to produce through revising bit stream.
2. method according to claim 1, it is described through revising bit stream to decode that it further comprises the described mark of use.
3. method according to claim 2 runs into described mark if it further comprises during decoding, so initial error processing procedure.
4. method according to claim 3, wherein said error processing procedure comprise the grammer verification, abandon described misdata or error concealing.
5. method according to claim 1 wherein is inserted in described mark in the described coding stream and before described misdata.
6. method according to claim 1 is wherein determined the bag loss late based on described mark.
7. method according to claim 1, wherein said mark comprise in order to represent that it is present in described start code prefix in revising bit stream.
8. method according to claim 7, wherein said mark comprise and the numerical value that uses how much syllable dependent connection after described start code prefix in described mark.
9. method according to claim 1, wherein said mark comprises field, and described field comprises the information of at least one byte of the length of indicating described misdata.
10. method according to claim 1 wherein is inserted in described mark in the described bit stream, makes described mark form the part of described bit stream itself.
11. method according to claim 1, wherein said mark meet the compression standard that coding stream met of described reception.
12. method according to claim 2 wherein is inserted in described mark in the described bit stream, makes described mark become the part of described bit stream, and wherein decodes by the upper strata of decoder and have the described bit stream of described insertion mark.
13. method according to claim 12, wherein said upper strata comprises application layer.
14. an equipment that is used to handle multi-medium data, it comprises:
Communications component, it is configured to the coding stream of receiving multimedia data; With
Processor, it is configured to discern the mark of one or more wrong bit positions in the described bit stream, described one or more error bits of generation indication and described mark is inserted in the described bit stream to produce through revising bit stream.
Initial fault processing when 15. equipment according to claim 14, wherein said processor further are configured to run into described mark during decoding.
16. equipment according to claim 14, it further comprises and is configured to decode described through revising the decoder of bit stream, and wherein said decoder is configured to use described mark to activate fault processing when running into described mark during decoding.
17. it is described through revising bit stream to decode that equipment according to claim 14, wherein said processor further dispose decode procedure, wherein said decoding processing uses described mark to activate fault processing when running into described mark during decoding.
18. equipment according to claim 17, wherein said fault processing comprise the grammer verification, abandon described misdata or error concealing.
19. equipment according to claim 14, wherein said mark are inserted in the described error bit transmission header bag before of described coding stream.
20. equipment according to claim 14, wherein said mark comprises error pattern.
21. equipment according to claim 19 wherein wraps loss late and is based on that described error pattern determines.
22. equipment according to claim 20, wherein said error pattern comprise in order to represent that it is present in described start code prefix in revising bit stream.
23. equipment according to claim 20, wherein said bit stream is passed to decoder with the form that comprises the bag that transmits header, and wherein said error pattern is inserted in the described transmission header with " in the band " form.
24. equipment according to claim 20, wherein said error pattern comprises the information of misdirection modal length.
25. equipment according to claim 20, wherein said error pattern comprises the information of the length of indicating described error bit.
26. equipment according to claim 14, wherein said processor are configured to described mark is inserted in the described bit stream, make described mark as the part of described bit stream itself and be read.
27. equipment according to claim 14, it further comprises the decoder of the described bit stream that is configured to decode, wherein said processor is configured to described mark is inserted in the described bit stream, make described mark become the part of described bit stream, and described decoder comprise the upper strata of the described bit stream that is used to decode.
28. equipment according to claim 27, wherein said upper strata comprises application layer.
29. an equipment that is used to handle multi-medium data, it comprises:
Be used to receive the device of coding stream;
Be used for discerning the device of described one or more wrong bit positions of bit stream;
Be used to produce the device of the mark of indicating described one or more error bits; With
Be used for described mark is inserted in described bit stream to produce through revising the device of bit stream.
30. equipment according to claim 29, it further comprises and is used to decode described device through the modification bit stream, wherein uses described mark to indicate described one or more error bits during decoding.
31. equipment according to claim 30, it further comprises the device of initial error processing procedure when being used for running into described mark during decoding.
32. equipment according to claim 29, wherein said receiving system comprises receiver.
33. equipment according to claim 29, wherein said recognition device comprises processor, and described processor is configured to discern one or more wrong bit positions in the described bit stream.
34. equipment according to claim 29, wherein said generation device comprises processor, and described processor is configured to produce the mark of described one or more error bits of indication.
35. equipment according to claim 29, wherein said insertion device comprises processor, and described processor is configured to described mark is inserted in the described bit stream to produce through revising bit stream.
36. equipment according to claim 29, wherein said insertion device is configured to described mark is inserted in the described bit stream, makes described mark as the part of described bit stream itself and be read.
37. equipment according to claim 30, wherein said insertion device is configured to described mark is inserted in the described bit stream, make described mark become the part of described bit stream, and described decoding device comprises, and to use described insertion mark to decode described through revising the upper strata of bit stream.
38. according to the described equipment of claim 37, wherein said upper strata comprises application layer.
39. a computer-readable media that is used to implement to be used to handle the method for multi-medium data, described method comprises:
Receive coding stream;
Discern one or more wrong bit positions in the described bit stream;
Produce the mark of described one or more error bits of indication; With
Described mark is inserted in the described bit stream to produce through revising bit stream.
40. according to the described computer-readable media of claim 39, it is described through revising bit stream that it further comprises decoding, wherein uses described mark to indicate described one or more error bits during decoding.
41. according to the described computer-readable media of claim 39, it further is included in initial error processing procedure when running into described mark during the decoding.
42. a processor that is used to handle multi-medium data, described processor are configured to receive one or more wrong bit positions in coding stream, the described bit stream of identification, produce the mark of described one or more error bits of indication; With described mark is inserted in the described bit stream to produce through revising bit stream.
43. according to the described processor of claim 42, wherein said processor further is configured to decode described through revising bit stream, wherein said processor is configured to use during decoding described mark to indicate described one or more error bits.
44. according to the described processor of claim 42, initial fault processing when wherein said processor further is configured to run into described mark during decoding.
45. according to the described processor of claim 42, wherein said processor further is configured to described mark is inserted in the described bit stream, makes described mark as the part of described bit stream itself and be read.
46. according to the described processor of claim 43, wherein said processor further is configured to described mark is inserted in the described bit stream, makes described mark become the part of described bit stream, and uses the application layer described bit stream of decoding.
47. equipment that is used to handle multi-medium data, it comprises decoder, and described decoder is configured to discern one or more wrong bit positions in the coding stream, produce the mark of described one or more error bits of indication and described mark is inserted in the described bit stream to produce through revising bit stream.
48. according to the described equipment of claim 47, it further comprises communications component, described communications component is configured to the coding stream of receiving multimedia data and described coding stream is provided to described decoder.
49. according to the described equipment of claim 47, initial fault processing when wherein said decoder further is configured to run into described mark during decoding.
50. according to the described equipment of claim 47, wherein said mark is inserted in the described error bit transmission header bag before of described coding stream.
51. according to the described equipment of claim 47, wherein said mark comprises error pattern.
52. according to the described equipment of claim 51, wherein said error pattern comprises expression, and it is present in described start code prefix in revising bit stream.
53. according to the described equipment of claim 47, wherein said coding stream comprises the bag of each self-contained transmission header, and wherein said mark is inserted in the described transmission header with " in the band " form.
54. according to the described equipment of claim 47, wherein said mark comprises the information of cue mark length.
55. according to the described equipment of claim 47, wherein said mark comprises the information of the length of indicating described error bit.
56. according to the described equipment of claim 47, wherein said processor is configured to described mark is inserted in the described bit stream, makes described mark as the part of described bit stream itself and be read.
CNA2006800243736A 2005-05-13 2006-05-15 Error recovery using in band error patterns Pending CN101578861A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US68063305P 2005-05-13 2005-05-13
US60/680,633 2005-05-13
US60/789,273 2006-04-04

Publications (1)

Publication Number Publication Date
CN101578861A true CN101578861A (en) 2009-11-11

Family

ID=41272865

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800243736A Pending CN101578861A (en) 2005-05-13 2006-05-15 Error recovery using in band error patterns

Country Status (1)

Country Link
CN (1) CN101578861A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105513619A (en) * 2014-09-26 2016-04-20 惠州市德赛西威汽车电子股份有限公司 Processing method of error tracks of on-board entertainment system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105513619A (en) * 2014-09-26 2016-04-20 惠州市德赛西威汽车电子股份有限公司 Processing method of error tracks of on-board entertainment system
CN105513619B (en) * 2014-09-26 2019-02-01 惠州市德赛西威汽车电子股份有限公司 The processing method of wrong song in a kind of vehicle entertainment system

Similar Documents

Publication Publication Date Title
CN101790098B (en) For optimizing the decoder architecture of mismanage in streamed multimedia
KR100939951B1 (en) Error recovery using in band error patterns
US8249110B2 (en) Apparatus and method for coding an information signal into a data stream, converting the data stream and decoding the data stream
RU2419245C2 (en) Systems and methods for channels switching
EP1882343B1 (en) Improving error resilience using out of band directory information
US20060156198A1 (en) Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding
MX2009012361A (en) Apparatus and method for encoding and decoding signals.
CN105681342A (en) Anti-error code method and system of multi-channel video conference system based on H264
CN101578861A (en) Error recovery using in band error patterns
CN101176353B (en) Decoder architecture for optimized error management in streaming multimedia
CN101218798A (en) Improving error resilience using out of band directory information

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20091111