US20080320358A1 - Encoding and Decoding Method, and Encoding and Decoding Devices with a Two-Stage Error Protection Process - Google Patents

Encoding and Decoding Method, and Encoding and Decoding Devices with a Two-Stage Error Protection Process Download PDF

Info

Publication number
US20080320358A1
US20080320358A1 US11658667 US65866705A US2008320358A1 US 20080320358 A1 US20080320358 A1 US 20080320358A1 US 11658667 US11658667 US 11658667 US 65866705 A US65866705 A US 65866705A US 2008320358 A1 US2008320358 A1 US 2008320358A1
Authority
US
Grant status
Application
Patent type
Prior art keywords
error protection
block
data packets
error
packets
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.)
Abandoned
Application number
US11658667
Inventor
Jurgen Pandel
Marcel Wagner
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.)
Nokia Solutions and Networks GmbH and Co KG
Original Assignee
Nokia Solutions and Networks GmbH and Co KG
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

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0065Serial concatenated codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end

Abstract

An encoding method for a series of data packets transmitted in the framework of a combined streaming and downloading application by a two-stage error protection process and only one unidirectional transmission channel. According to said method, a partial block of successive data packets is protected against at least some of the transmission errors occurring during streaming with the aid of a first error protection process while all data packets are protected against the transmission errors remaining after streaming is completed with the aid of a second error protection process. In a decoding method by which a series of data packets that are encoded according to the encoding method are decoded. Also disclosed is an encoding and decoding device for carrying out the method.

Description

  • The invention relates to an encoding method according to the preamble of claim 1 and a decoding method according to the generic part of claim 15. Furthermore, the invention relates to an encoding device according to the generic part in claim 16 and a decoding device according to the generic part in claim 17.
  • Internet-based applications have become increasingly popular in recent years. One class of applications is streaming applications. A user can hereby access multimedia content online with the aid of a streaming protocol. Examples of multimedia content are text, graphics, music, video or a mixture of same. A video clip with music is an example of multimedia content. In this context, online means that immediately after receipt of the first packets at the user, said packets are played back, e.g. at a loudspeaker. A complete downloading, for example of the video clip, is not necessary. In addition to the possibility that a content server provides the multimedia content for retrieval, the multimedia content can be recorded and edited in real time and forwarded directly to a user via a streaming application without buffer storage on a so-called content server. Multimedia content of this kind recorded and transmitted in real time is, for example, a radio program (web radio). Saving the multimedia content, e.g. on a content server, is not necessary in this case.
  • Furthermore, download applications such as the loading of MP3 pieces of music or MPEG-2 feature films are very popular. In this case, the multimedia content is encoded using a standard compression method according to MP3 or MPEG-2 video for instance, and provided on a content server for downloading. First, the user loads the complete multimedia content onto his device, e.g. onto his computer or mobile phone and after completion of the download process this media content can be played back, e.g. on a monitor.
  • Furthermore, hybrids of streaming and of the download application are also discussed. For example, with a music distribution service, a user can select a piece of music by using his device, his mobile phone for example, and load it on to his device by payment of a purchase price. In this way, the user is able to listen to the piece of music during the download process and then after it has been loaded on to his device he is able to play back the complete piece of music as often as required. The user hereby receives the impression that the piece of music is streamed, whereas in fact the complete piece of music is nevertheless present on his device after completion of the streaming process. With this hybrid, a point-to-point connection currently exists between the device of the user and the content server.
  • In addition to this hybrid streaming and download application, point-to-multipoint connections should also be possible. A point-to-multipoint connection is also known as “broadcast” or “multicast” In the following; this hybrid is referred to as a broadcast application. With this application, the same multimedia content is available to several users at the same time. An example of this is a music video that is broadcast live to the user and may be recorded.
  • In addition to an excellent picture and sound quality, the user of a broadcast application of this kind also expects no transmission errors to occur within the multimedia content. Despite expensive error protection processes, residual errors in the physical layer and radio link layer occur during the transmission of data packets via mobile radio channels. A typical value for a residual error is approximately 1%. Whereas data packets with transmission errors transmitted using a point-to-point connection can be repeated with the aid of an ARQ (Automatic Repeat Request) process, this is generally not economically feasible with broadcast and multicast applications, so that data packets with errors are received. Therefore, with these broadcast applications, the multimedia content is transmitted by means of a unidirectional transmission channel and a return channel is not available. A broadcast application of this kind is known for example from VHF (radio technology). With the use of the IP protocol (Internet Protocol), data packets containing errors also lead to the complete data packets being lost which means that the multimedia content cannot be played back correctly.
  • In addition to data transmission containing errors via mobile radio channels, data packets losses can also occur due to a radio cell change. In individual cases, an interruption in data transmission of approximately 10 seconds can occur during a radio cell change. Whilst the data packets for purely broadcast download applications can be reconstructed with the aid of suitable measures such as interleaving, even where there are long interruptions, this method cannot be applied for streaming applications because of the time delay. A number of processes are known for reconstructing data packets that contain errors or have been lost, such as are given in [1-5].
  • The object underlying the invention is to specify an encoding and decoding method and an encoding device and decoding device which provide efficient error protection for applications with common streaming and download functionality with only a unidirectional transmission channel in a simple and efficient manner.
  • This object is achieved on the basis of the encoding method according to the preamble of claim 1 by means of the characterizing features of said claim, and on the basis of the decoding method according to the generic part in claim 15 by means of the characterizing features of said claim. Furthermore, this object is achieved on the basis of the encoding device according to the generic part in claim 16 by the characterizing features of said claim, and on the basis of the decoding device according to the generic description in claim 17 by the characterizing features of said claim.
  • With an encoding method for transmitting a series of data packets via at least one unidirectional transmission channel within the framework of a combined streaming and downloading application by means of a two-stage error protection process, a partial block of successive data packets is protected against at least part of the transmission errors that occur during streaming with the aid of a first error protection process and with the aid of second error protection process all data packets are protected against transmission errors remaining after completion of the streaming.
  • On the one hand, the method according to the invention enables the playback of a series of data packets during streaming. This guarantees, with the aid of a first error protection process, that at least part of the transmission errors caused by the transmission can be corrected and thus at least a part of the data packets can be reconstructed without errors. Thus, despite errors in transmission, the playback of at least part of the data packets is guaranteed.
  • Furthermore, all data packets are available in reconstructed form after completion of the streaming. This corresponds to the download of the series of data packets. With the aid of the second error protection process, those reconstructed data packets that could not be reconstructed error free by the first error protection process can be corrected. This means that a user can play back the data packets during the streaming, e.g. as a piece of music, and after completion of the streaming these data packets that sometimes still contain faults can be reconstructed error free for output at a later point in time, e.g. through a loudspeaker.
  • The method according to the invention is advantageous in practice, as, on one hand, no return channel is required for transmission and therefore the inventive method can be used for a point-to-multipoint connection. On the other hand, the two-stage error protection process, i.e. the first and second error protection process, means that a first number of errors per partial block can be corrected by the first error protection process and that only those errors that could not be removed by the first error protection process, such as longer burst of errors, have to be improved using the second error protection.
  • In a preferred embodiment, in order to transmit the series of data packets, several successive data packets are combined to form a partial block, with an error protection block being created for each partial block with the aid of the first error protection process in such a way that each error protection block consists of several error protection packets, that each error protection block represents at least one error protection packet, an encoded data packet and at least one other error protection packet represents a redundant block, and that an encoded data packet is formed per data packet, the error protection blocks are transmitted sequentially in the time sequence in which the associated data packets are temporally played back, the encoded data packets are combined to form a complete block, a second complete error protection block is created for the complete block with the aid of the second error protection process and the complete error protection block is transmitted after transmission of all the error protection blocks belonging to the series.
  • By using this preferred embodiment, the method according to the invention can be implemented in several steps in a simple manner, e.g. with the aid of an encoding device.
  • At least one of the following error protection algorithms, EXOR parity code, Reed Solomon code and /or low density parity check codes is preferably used for the first and/or second error protection process. With the aid of at least one of these error protection algorithms, the first and/or second error protection process can be implemented in an advantageous manner.
  • If a number of packets of data packets of the partial block are determined as a function of a specifiable delay, taking account of a transmission rate, a redundant block length and an encoded data packet length, the number of packets can be adjusted to achieve a minimum delay for the playback of data packets, such as a piece of music for instance.
  • In an alternative variant, a characteristic value is created for each data packet using a statistical method, with the characteristic value representing the importance of the respective data packet in respect of at least one other data packet, and a number of packets of data packets being created for the partial block in such a way that a sum of characteristic values of successive data packets within the respective partial block reaches at least one specifiable threshold. This enables a small number of data packets with particularly important information and a larger number of data packets with unimportant information to be combined in a partial block. If, for example, a redundant block of the same length is created for all partial blocks, partial blocks with a lower number of packets of data packets are better protected against errors than partial blocks with a larger number of packets of data packets. For example, an important data packet receives packet information that is required for all data packets for decoding purposes.
  • The data protection block is preferably created in such a way that the encoded data packets within the error protection block are provided with unequal error protection. In this way, one or more encoded data packets comprise more error protection than other encoded data packets of the same error protection block. In the event of encoded data packets being transmitted with errors, encoded data packets with more error protection can be corrected and other encoded data packets with less error protection can be subjected to a non error-free reconstruction.
  • Additionally, encoded data packets containing important information can be provided with more error protection and other encoded data packets containing less important information can be provided with less error protection. This means that at least the encoded data packets containing the important information can be reconstructed in an error-free manner.
  • In a particularly preferred embodiment, the error protection block is created in such a way that a specifiable number of error blocks of erroneous error protection packets within the respective error protection block can be corrected by means of the respective error protection block. In this way, a correction characteristic of the error protection block can be individually matched, e.g. to an error susceptibility of the transmission channel.
  • In an alternative embodiment, at least one erroneous error protection packet within the error protection block can be corrected by means of the respective error protection block. In this way, a minimum correction property of the error correction block can be guaranteed.
  • In a preferred alternative variant, at least two successive erroneous error protection packets within the error protection block can be corrected by means of the respective error correction block. Many transmission systems, such as UMTS (Universal Mobile Telecommunications System) use a fault correction and interleaving process to avoid transmission errors. If, however, this error protection fails, e.g. due to too many errors, two or more encoded data packets in succession can be erroneous. Therefore, this embodiment represents a particularly advantageous variant taking account of common transmission systems, such as UMTS.
  • If the complete error protection block is created in such a way that a larger number of erroneous encoded data packets within the error protection block can be corrected than by means of the first error protection process, it is guaranteed that a larger number of erroneous encoded data packets, that could not be corrected by the first error protection process, are reconstructed in an error-free manner with the aid of the complete error protection block after complete transmission of all encoded data packets.
  • Advantageously, the complete error protection block is created in such a way that, with the help of several segments of the complete error protection block, different subsets of encoded data packets can be corrected. In this way, error protection algorithms that have a limitation with respect to the number of data packets can also be used for the second error protection process. For example, only 255 encoded data packets can be protected by a Reed-Solomon code in the Galoisfeld “28”. By dividing the encoded data packets into several subsets, e.g. into four subsets each with 200 encoded data packets, the aforementioned condition can be complied with by the Reed-Solomon code.
  • In a preferred variant, the encoded data packets when transmitting the error protection blocks are transmitted via a first transmission channel and the redundant blocks via a second transmission channel. This enables the encoded data packets and the complete error protection block of the first transmission channel to be processed with a less complex download application, and the encoded data packets, the redundant blocks and the complete error protection block of both transmission channels to be processed with a more complex application.
  • In a particularly preferred embodiment, the encoded data packets and the redundant blocks are transmitted synchronized in such a way that the redundant block of the respective error protection block is present at the receiver not later than the point in time at which the last encoded data packet of the respective error protection block also arrives at the receiver. This guarantees that where two transmission channels are used there is a minimum delay, for the playback of the data packets during the streaming.
  • Furthermore, the invention relates to a decoding method by means of which a sequence of encoded data packets encoded according to an encoding method can be decoded. In this way, data packets encoded with the method according to the invention can be reconstructed.
  • Furthermore, the invention relates to an encoding device with means for performing an encoding process. This enables the encoding method according to the invention to be implemented and executed in the encoding device, especially a mobile radio device, a portable device and/or a stationary computing device.
  • Furthermore the invention relates to a decoding device with means for implementing a decoding method. In this way, the decoding method according to the invention can be implemented and executed in the decoding device, particularly a mobile radio device, a portable device and/or a stationary computing device.
  • Further details and advantages are explained in more detail with the aid of FIGS. 1 to 6, in which;
  • FIG. 1 a-1 e shows a first exemplary embodiment with several data packets for implementing the individual process steps of the encoding method according to the invention.
  • FIG. 2 shows a creation of a complete error protection block with various segments of the complete error protection block protecting different subsets of encoded data packets.
  • FIG. 3 shows a transmission of encoded data packets via a first transmission channel and of redundant blocks via a second transmission channel.
  • FIG. 4 shows a flow diagram showing an example of the process steps at the receiver end for decoding the received encoded data packets and reconstructing the data packets.
  • FIG. 5 shows an encoding device for performing an encoding process, a transmission medium and a decoding device for performing a decoding process.
  • FIG. 6 shows a flow diagram showing the process steps of the encoding method according to the invention.
  • Elements with the same function and method of operation are given the same reference characters in FIGS. 1 to 6.
  • The individual process steps of the method according to the invention are explained in more detail in the following with the aid of FIGS. 1 a to 1 e. FIG. 6 shows the process steps in the form of a flow diagram. In a first exemplary embodiment, a music video clip is being transmitted from a video server to a mobile terminal. The music video clip according to FIG. 1 a consists of N=800 data packets D1, . . . , D800=DN, with it being initially assumed that all data packets D1, . . . , D800 have the same data packet length PL. A data packet D1, . . . , D800, for example, consists of a number of bits or bytes, e.g. a data packet length PL of 320 bytes.
  • In a first process step V1, several successive data packets D1, . . . , DN are combined to form a partial block T1, . . . , TM in each instance. In FIG. 1 a, every 40 data packets form a partial block, for example data packets D41, . . . , D80 form partial block T2. In this exemplary embodiment, 40 data packets are always combined to form a partial block. A number of packets L1, . . . , LM, that give the number of data packets contained for each partial block T1, . . . , TM, therefore amounts to 40, i.e. L1=L2=. . . =L20=40. However, in general any number of data packets D1, . . . , DN can be combined to form a partial block T1, . . . , TM, with it being possible for this number of packets L1, . . . , LM to vary from partial block to partial block. After completion of this process step, all data packets D1, . . . , DN are assigned to a partial block T1, . . . , TM.
  • In a second processing step V2, an error protection block F1, . . . , FM is formed for each partial block T1, . . . , TM with the aid of a first error protection process FS1. A plurality of systematic and non-systematic error protection algorithms (codes) for use as an error protection process are known from the prior art, [1-5] for example. In this case, the first error protection process FS1 can correspond to an EXOR parity code, a Reed-Solomon code (RS) or also a low density parity check code. After encoding with the aid of the first error protection process FS1, an error protection block F1, . . . , F20 contains, as shown in FIG. 1 b, 40 encoded data packets C1, . . . , C800 and a redundant block R1, . . . , R20. In this process, a data packet D1, . . . , DN is assigned each encoded data packet C1, . . . , CN. In this exemplary embodiment, the redundant blocks R1, . . . , R20 each contains 320 bytes. The encoded data packets C1, . . . , C800 and the redundant blocks R1, . . . , R20 are also designated as error protection packets. Therefore, for example, an erroneous error protection packet can be corrected within the error protection block F1, . . . , F20.
  • In practice, the use of a systematic error protection algorithm is appropriate for the first error protection process FS1, because in this way data packets D1, . . . , DN appear unchanged in the encoded data packets C1, . . . , CN. On the other hand, for non-systematic codes, an encoding of data packets D1, . . . , DM is performed in such a way that a binary content of the encoded data packet C1, . . . , CN does not correspond to the binary content of the respective data packet D1, . . . , DN. When systematic error protection algorithms are used, it is advantageous that a receiver can, in a case where no error occurs in the transmission of the encoded data packets C1, . . . , CN, obtain the data packets D1, . . . , DN directly by copying from the encoded data packets C1, . . . , CN without having to use the first error protection process FS1 for decoding. This substantially reduces the complexity involved in performing a decoding process using systematic error protection algorithms at the receiver end.
  • The error protection blocks F1, . . . , FM are transmitted in a third process step V3. In this case, the error protection blocks F1, . . . , FM are transmitted in such a way that error protection block F1, that represents data packets D1, D40, that are to be played back first, is transmitted first, and error protection block F20, that represents data packets D761, . . . , D800, that are to be played back last, is transmitted last. This is shown in FIG. 1 c. Error protection block Fl is first transmitted, then F2 and finally F20. The transmission of error protection blocks F1, . . . , FM in this sequence guarantees that a receiver first receives all the error protection packets of error protection block F1, so that after any necessary correction of erroneous received error protection packets and the necessary decoding where non-systematic codes are used, the 40 reconstructed data packets D1, . . . , D40 can be forwarded immediately for play back, for example to a loudspeaker. If, for example, all the encoded data packets C1, . . . , C800 were transmitted first and then all redundant blocks R1, . . . , R20 were transmitted, the receiver would, if a fault occurred, for example in the encoded data packet C40, have to first receive all 800 encoded data packets C1, . . . , C800 and then proceed with the error correction or decoding. Therefore, transmitting encoded data packets C1, C40 of the first error protection block F1 and of the redundant block R1 together means that with a short delay of 41 packets, 40 encoded data packets and a redundant block, the playback of the music video clip can be started during the streaming, after a slight delay. The delay V created by this method is explained in the following by means of an example. A transmission medium UEM, through which the error protection packets F1, . . . , FM are transmitted, has a transmission bandwidth UR of 64 kbit/s. Each error protection packet of the error protection block F1, . . . , FM contains 40 encoded data packets and a redundant block with an encoded data packet length CL1, . . . , CLN, with for example CL1, . . . , CLN being equal to 320 bytes and a redundant block length J1, . . . , JM with J1, . . . , JM being equal to 320 bytes. Therefore a maximum delay V for the playback of the music video clip is obtained as follows.
  • V = CL 1 * 40 + J 1 UR = 320 bytes · ( 40 + 1 ) 64 kbits / sec = 13120 sec 8000 = 1.64 sec
  • Consequently the maximum delay V is 1.64 seconds. If the user wanted to transmit all error protection packets of all error protection blocks F1, . . . , FM before the music video clip playback, then in the event of an erroneous transmission, he will have to allow for a maximum delay of
  • V = CL 1 * 800 + J 1 * 20 UR = 320 bytes * ( 800 + 20 ) ) 8000 bytes / sec = 32.8 sec
  • until the complete music video clip was ready for playback.
  • With data transmission over mobile radio channels, short error burst occur more frequently than long ones because long error bursts, for example, occur only at very few handovers. Therefore, it is advantageous to configure the error protection block F1, . . . , FM by means of the first error protection process, FS1 in such a way that a small number of erroneous transmitted error protection packets are corrected within the respective error protection block F1, . . . , FM, such as, for example, one or two error protection packets per error protection block F1, . . . , FM. Furthermore, with a large error protection in the error protection packet there will be a greater overhead to be transmitted. In this example a correction by means of the first error protection process FS1 would not be possible where there were more than two erroneous transmitted error protection packets and the user would have to allow for an interruption in the music clip for a time period V, for example of 1.64 sec. As is shown again later it should be possible to rectify such errors by means of a second error protection process FS2, so that on completion of the download an error-free music video clip would be available. Furthermore it is expedient if when choosing the first error protection process FS1 an error protection algorithm is chosen that can correct erroneous error protection packets regardless of how they are arranged, especially encoded data packets C1, . . . , CN, within the error protection block F1, . . . , FM.
  • Furthermore it is useful for the error protection block F1, . . . , FM to be created in such a way that a specified number of error blocks FF of encoded data packets C1, . . . , CN and redundant blocks R1, . . . , RM can be corrected within the error protection block F1, . . . , FM. With known error correction algorithms, such as [1-5], this can be achieved by a suitable dimensioning of the redundant blocks R1, . . . , RM. Let us assume, for example, that all encoded data packets C1, . . . , CN are of equal length, e.g. 100 bytes each. In this way, one error protection packet per error protection block F1, . . . , FN can be corrected by a redundant block R1, . . . , RM 100 bytes long. If 2×100 bytes=200 bytes per redundant block R1, . . . , RM are used, it is possible, for example, to correct two encoded data packets C1, . . . , CN per error protection block F1, . . . , FM. This procedure can be analogously extended to achieve a correction characteristic of three or more encoded data packets C1, . . . , CN for each error protection block. The respective redundant block R1, . . . , RM can then also be corrected in addition to the encoded data packets C1, . . . , CN.
  • In a fourth process step V4, the encoded data packets C1, . . . , CN are combined in a complete block GB. An example of this is shown in FIG. 1 d.
  • In a fifth process step V5, a complete error protection block GFB is created for the complete block GB with the aid of a second error protection process FS2. Known error protection algorithms such as in [1-5] can be used for this purpose. In contrast to the first error protection process FS1, only systematic error protection algorithms may, however, be used for the second error protection process FS2, because the use of non-systematic error protection algorithms would cause a binary change to the content of the encoded data packets and thus a correction or decoding by means of the first error protection process FS1 would only be possible after decoding by the second error protection process FS2. In the following, the encoded data packet C1, . . . , CN transmitted to the receiver are designated as transmitted encoded data packets E1, . . . , EN, with it being possible for these transmitted encoded data packets E1, . . . , EN to have transmission errors due to a transmission that is susceptible to errors.
  • In practice, it is furthermore useful if more erroneous transmitted encoded data packets E1, . . . , EN can be corrected with the aid of the complete error protection block GFB rather than with the respective error protection block F1, . . . , FM. It is assumed, for example, that due to a handover ten transmitted encoded data packets E51, . . . , E60 were erroneously transmitted within the partial block T2. Because the error protection block F2 can only correct two of the erroneous transmitted encoded data packets E51, . . . , E60 by using its redundant block R2, a (complete) error correction is not possible in this way. However, with the aid of the complete error protection block GFB, that for example can correct up to 20 erroneous transmitted encoded data packets E1, . . . , EN, these ten erroneous transmitted encoded data packets E51, . . . , E60 can be reconstructed error-free within the partial block T2. A precondition for this is, however, that only ten other transmitted encoded data packets E1, . . . , E50, E61, . . . , EN were received erroneously. Otherwise, there would be more erroneous transmitted data packets E1, . . . , EN present than could be corrected by means of the second error protection process FS2.
  • In a sixth step V6, the complete error protection block GFB is transmitted after error protection blocks F1, . . . , FM. This means that on completion of the streaming all error protection blocks F1, . . . , FM are available, in addition to the complete error protection block GFB, for correction of the errors that could not be corrected by error protection block F1, . . . , FM.
  • In a possible expansion of the method according to the invention, the number of packets L1, . . . , LM of data packets D1, . . . ,DN of the partial block T1, . . . , TM are determined as a function of a specifiable delay V, taking account of a transmission rate UR, an encoded data packet length C1, . . . , CLN and a redundant block length J1, . . . , JM. The encoded data packet length CL1, . . . , CLN includes the number of symbols, e.g. of bytes, per encoded data packet, CL1, . . . , CN. The redundant block length J1, . . . , JM describes the number of symbols, e.g. bytes per redundant block, R1, . . . , RM. This is explained in more detail in the following example.
      • Encoded data packet length CL1=CL2=. . . =CLN=500 bytes
      • Redundant block lengths J1=J2=. . . =JM=500 bytes
      • delay V=3 seconds
      • Transmission rate UR 128 kbit/sec=16 kbyte/sec
  • By using these parameters, the number of packets L1, . . . , LM of data packets of the partial block T1, . . . , TM can be calculated as follows.
  • L 1 = LM V · UR - J 1 CL 1 = 3 sec · 16 kbyte / sec - 500 byte 500 byte = 95 packets
  • A maximum of 95 encoded data packets and, because one data packet is assigned per encoded data packet, therefore 95 data packets may be contained in the partial block T1, so that at the given parameters a maximum delay V of 3 seconds is not exceeded. In the above example, it was assumed that the encoded data packet length CL1, . . . , CLN is identical in each encoded data packet C1, . . . , CN. In general, the encoded data packets C1, . . . , CN and data packets D1, . . . , DN can exhibit any length.
  • In an expansion of the method according to the invention, the number of packets L1, . . . , LM of data packets is determined on the basis of characteristic values W1, . . . , WN of successive data packets D1, . . . , DN, with the characteristic value W1, . . . , WN representing the importance of the respective data packet D1, . . . , DN in respect of at least one other data packet D1, . . . , DN. For example, every tenth data packet D1, D11, D21, . . . , D791 contains parameters that are important for all data packets D1, . . . , DN. All other data packets D2, D3, D10, D12, . . . , DN contain only multimedia information parameters, such as PCM (Pulse Code Modulation) data that can be decoded independent of other PCM data. With the aid of a statistical method, a characteristic value W1, . . . , WN is first assigned to each data packet D1, . . . , DN. For example, the influence the error of a specific data packet D1, . . . , DN has on the playback quality, such as for the audio quality of a piece of music, is determined by measurement. In another embodiment of a statistical method, the important data packets D1, D11, D21, . . . , D791 are assigned a characteristic value W1=W11=. . . =5 and the less important data packets D2, D3, . . . , DN are assigned the important value W2=W3=. . . =WN=1. In a further example, the data packets D1, . . . , DN represent an encoded video signal. In this case, the data packets that include movement vectors are particularly important for the decoding, whereas on the other hand the remaining data packets that contain the encoded residual error signal have a lesser importance in respect of the picture quality. Therefore, for example, the characteristic values of the important data packets have a higher value and the less important data packets a lower value. By presetting a specifiable threshold WS, a value is now specified that should not exceed a sum of characteristic values W1, . . . , WN of successive data packets D1, . . . , DN within the respective partial block T1, . . . , TN. The following parameter values are examples.
      • Specifiable threshold WS=35
      • Characteristic value W1=W11=W21=. . . =5
      • Characteristic value W2=W3=W4=. . . =WN=1
  • The number of data packets L1, . . . , LM of data packets for the partial block T1, . . . , TM is determined by the summation of characteristic values W1, . . . , WN of successive data packets D1, . . . , DN. For the example we get the following.

  • L1=W1+W2+W3+W4+. . . +W23=35≦WS.
  • Partial block T1 therefore includes data packets D1, . . . , D23, with the number of data packets L1 being 23. With this expansion of the method according to the invention, the number of packets, L1, . . . , LM of data packets for the partial block T1, . . . , TM is determined as a function of the respective characteristic values W1, . . . , WN and the specifiable threshold WS. The procedure for other numbers of packets L2, . . . , LM of data packets is the same as the procedures for the number of packets L1.
  • FIG. 2 shows an alternative variant of the method according to the invention where the complete error protection block GFB is created. For this process, the complete error protection block GFB is divided into segments S1, . . . , SL with each segment S1, . . . , SL being able to correct a subset M1, . . . , ML of encoded data packets C1, . . . , CN. In the exemplary embodiment shown in FIG. 2, the encoded data packets C1, . . . , C41, C81, . . . , C761 represent the subset M1. For this subset M1, a segment S1 is created with the aid of a second error protection process FS2. The subset M2 contains the encoded data packets C2, C42, C82, C762. Segment S2 includes an error protection for the subset M2. Further subsets M3, . . . , ML and segments S3, . . . , SL can be formed in a similar manner. Generally, the subsets M1, . . . , ML can be created from any combination of encoded data packets C1, . . . , CN, with it being possible to include one or more encoded data packets C1, . . . , CN in more than one subset M1, . . . , ML. The size of the segments S1, . . . , SL can also vary. Thus, for example, segment S1=100 bytes and segment S2=320 bytes.
  • According to the exemplary embodiment shown in FIG. 1 c, the error protection blocks F1, . . . , FM, are first transmitted in succession and then the complete error protection block GFB is transmitted. In this process, the error protection blocks F1, . . . , FM and the complete error protection block GFB are sent via a first transmission channel UW1. In an alternative variant according to FIG. 3, two transmission channels UW1, UW2 can also be used to send the encoded data packets C1, . . . , CN, the redundant blocks R1, . . . , RM and the complete error protection block GFB. In this way, all the encoded data packets C1, . . . , CN and the complete error protection block GFB can be sent via the first transmission channel UW1 and the redundant blocks R1, . . . , RM via the second transmission channel UW2. This is advantageous because it means that the encoded data packets C1, . . . , CN can be transmitted by the first transmission channel UW1 in such a way that these can be supported, received and further processed by receiver devices that hold only a download of multimedia content, i.e. of encoded data packets C1, . . . , CN. Furthermore by adding the redundant blocks R1, . . . , RM, that are sent by the second transmission channel UW2, an application that realizes a hybrid of download and streaming application, whereby a redundant block R1, . . . , RM can be received for each error protection block F1, . . . , FM and if errors occur these can be corrected by means of the respective redundant block R1, . . . , RM. When two transmission channels UW1, UW2 are used, it is useful in practice for both error protection processes FS1, FS2 to use systematic error protection algorithms, because otherwise the encoded data packets C1, . . . , CN can under certain circumstances not be decoded without using the redundant blocks R1, . . . , RM.
  • Furthermore, it is useful for the encoded data packets C1, . . . , CN and the redundant blocks R1, . . . , RM to be transmitted synchronized in such a way that the redundant block R1, . . . , RM of the respective error protection block F1, . . . , FM is present at the receiver not later than the point in time at which the last encoded data packets C1, . . . , CN of the respective error protection block F1, . . . , FM arrive at the receiver. This is further explained using FIG. 3. Thus, for example, the redundant block R1 arrives at the receiver device with the latest encoded data packet C40 of the error protection block F1. This similarly applies to the further partial blocks T2, . . . , TM, with for example the redundant block R2 being present at the receiver with the arrival of the encoded data packet C80, the last encoded data packet of the error protection block F2. This relationship is shown in FIG. 3 by a dotted line. Because of this synchronization, all error protection packets of an error protection block F1, . . . , FM are present at the receiver when the last encoded data packet C1, . . . , CN arrives and therefore a correction of erroneous transmitted error protection packets, and also a playback of data packets D1, . . . , DN reconstructed from the encoded data packet C1, . . . , CN can be achieved with minimum delay.
  • Furthermore, the invention relates to a decoding method by means of which data packets D1, . . . , DN can be reconstructed with the aid of the error protection that was created according to an encoding process. From an encoding device EV, the error protection packets that include the encoded data packets C1, . . . , CN and the redundant blocks R1, . . . , RM are transmitted to a decoding device DV, whereby the error protection packets can arrive with errors at the decoding device DV due to the erroneous transmission via the transmission medium. These error protection packets that arrive at the decoding device DV are designated as transmitted erroneous protection packets. An exemplary embodiment for the decoding process is explained in more detail in the following with the aid of FIG. 4.
      • In step S1, the transmitted error protection packets of an error protection block F1, . . . , FM are received.
      • In step S2 the transmitted error protection packets of the error protection block F1, . . . , FM are decoded with the aid of the first error protection process FS1 and reconstructed data packets G1, . . . , GN are created from this. These reconstructed data packets G1, . . . , GN represent the data packets D1, . . . , DN at the receiver but because of transmission errors the reconstructed data packets G1, . . . , GN can differ from data packets D1, . . . , DN. In a variant, a systematic error protection algorithm (code) is used for the first error protection process FS1.
  • In this way, if none of the transmitted error protection packets that represent encoded data packets C1, . . . , CN were received with errors, the reconstructed data packets G1, . . . , GN of the partial block T1, . . . , TN can be reconstructed by copying the transmitted encoded data packets.
      • In step S3, the reconstructed data packets G1, . . . , GN of the partial block T1, . . . , TM are checked to determine whether all can be reconstructed in an error-free manner. If this is the case, the process continues with step S4, if not then with step S5.
      • In step S4 the reconstructed data packets G1, . . . , GN of the partial block T1, . . . , TM are forwarded to an output medium, e.g. to a loudspeaker module, for playing back.
      • In step S5 the received error protection block and the reconstructed data packet G1, . . . , GN are stored.
      • In step S6 a check is now carried out to determine whether a further error protection block F1, . . . , FM is ready for reception. If this is the case, the process is started again with step S1, otherwise it continues with step S7.
      • In step S7 the complete error protection block GFB is received that, under certain circumstances, contains errors due to transmission via the error-prone transmission medium UEM.
      • In step S8 residual errors of the reconstructed data packets G1, . . . , GN, which could not be corrected by means of the first error protection process FS1, are corrected with the aid of the second error protection process FS2. In the following, those transmitted error protection packets that in each case represent encoded data packets C1, . . . , CN are designated encoded data packets E1, . . . , EN. Depending on the error protection algorithm employed in the first error protection process FS1, the two following error correction procedures are, for example, expedient.
        • a) By using a systematic error protection algorithm for the first error protection process FS1, all transmitted encoded data packets E1, . . . , EN that could be reconstructed in an error-free manner by the first error protection process FS1 are replaced by the respective reconstructed data packet G1, . . . , GN. Then, with the aid of the second error protection process FS2, a reconstruction of all transmitted encoded data packets E1, . . . , EN is performed and the reconstructed data packets G1, . . . , GN thus created.
        • b) Where a non-systematic error protection algorithm is used for the first error protection process FS1, the reconstructed data packets G1, . . . , GN of those error protection blocks F1, . . . , FM, that could be fully reconstructed, are encoded as encoded auxiliary packets by means of the first error protection process FS1. The transmitted encoded data packets E1, . . . , EN of these error protection blocks F1, . . . , FM are then replaced by these encoded auxiliary packets. This reduces the number of errors in the erroneously transmitted encoded data packets because it has been possible to already improve some erroneous encoded data packets with the aid of the first error protection process FS1. In a subsequent process step, the transmitted, and already partially corrected, encoded data packets are corrected by the second error protection process FS2 with the aid of the received complete error protection block GFB. The reconstructed data packets G1, . . . , GN are then obtained for each error protection block F1, . . . , FM, by the first error protection process FS1 using the partially corrected and transmitted encoded data packets.
      • In step S9 a check is carried out to determine whether all the reconstructed data packets G1, . . . , GN can be restored to an error-free state. If this is the case, the process continues with step S10; otherwise it continues with step S11.
      • In step S10 the reconstructed data packets G1, . . . , GN are saved, for example so that a user or also the decoding device DV can output these to a loudspeaker module at a later point in time.
      • In step S11 the reconstructed, but erroneous, data packet G1, . . . , GN are rejected and the user can be informed that the reconstructed data packets G1, . . . , GN, i.e. the music video clip cannot be stored because of uncorrectable errors. As an alternative, the reconstructed data packets G1, . . . , GN can be stored but the user must then allow for short interruptions or an erroneous playback when these are output, e.g. to the loudspeaker module. Furthermore, the decoding device DV can achieve an improvement in quality by using veiling methods, for example by interpolation of audio data. In a further alternative, the receiver, e.g. the decoding device DV, can transmit control information to the transmitter, e.g. the encoding device EV, via a return channel, to be established, that can reconstruct data packets that are not error-free. The transmitter can then establish a protected point-to-point connection to this receiver and re-send data packets that are still absent and/or contain errors to said receiver. In a further alternative, redundant packets can be sent via the point-to-multipoint connection to all receivers. With the aid of these redundant packets, that for example contain redundant information for one or more data packets, the data packets that contain errors and/or are missing can be reconstructed. This is then advantageous if an error-free reconstruction of the data packets is not possible with several receivers. By transmitting the data packets via a transmission channel that is susceptible to errors, data packets can also become lost. Lost data packets can be replaced by any data packet during the decoding, with this replaced data packet being marked as erroneous. In this way, a decoding can take place that takes account of data packets that are merely erroneous.
  • The invention also includes the encoding device EV with means for implementing the encoding method. In this case, the encoding device EV, is, for example, integrated into a data computer such as a content server or a mobile radio network, by means of which the process of encoding can be realized. In a further application , the encoding device EV can also be fitted in a mobile terminal, with the mobile terminal, for example, taking a sequence of pictures by means of a camera and these pictures being compressed by means of a video compression process and data packets D1, . . . , DN being generated from same. These data packets D1, . . . , DN can then be encoded according to the inventive method and then transmitted via a network such as a GSM (Global System for Mobile Communication) network.
  • Furthermore, the invention also includes the decoding device DV with means for performing the decoding method. With the aid of the decoding device DV, the inventive method can be realized and used in a receiver device, for example in a mobile radio telephone according to the UMTS (Universal Mobile Telecommunications System)standard. The encoding device EV and the decoding device DV are shown in FIG. 5. The encoding device EV contains a first storage module SM1, for example for storing data packets D1, . . . , DN,. Furthermore, the encoding device EV also contains an encoding module EM by means of which individual steps for performing the inventive method for encoding can be realized. Furthermore, the encoding device EV includes a transmitting module SM by means of which, for example, the error protection blocks F1, . . . , FM and the complete error protection block GFB can be transmitted via the transmission medium UEM to the decoding device DV. The first memory module SM1, the transmitting module SM and the encoder module EM are interconnected via a first connecting network VX1 in order to exchange data and control information between one another.
  • The transmission medium UEM enables the transmission of error protection blocks F1, . . . , FM and of the complete error protection block GFB. For example, the transmission medium UEM is embodied in the form of a wireless network according to the GSM and/or UMTS standard, or in the form of a wired network, such as an ISDN (Integrated Digital Subscriber Network) or an IP (Internet Protocol) based intranet and/or internet. When transmitting using the transmission medium UEM, individual packets and/or blocks can be erroneously transmitted.
  • The partially erroneous transmitted packets and blocks are received by a receiving module EE of the decoding device DV. These are stored in a second storage module SM2 for further processing. The reconstructed data packets G1, . . . , GN, that represent data packets D1, . . . , DN, are created in several steps with the aid of the decoding module DM. These are stored, e.g. in the second storage module SM2 for further processing, for example by a loudspeaker unit. The second storage module SM2, the receiving module EE and the decoder module DM are interconnected to each other by means of a second connecting network VX2, for the exchange of data and control information.
  • LITERATURE
    • J. Rosenberg, H. Schulzrinne, “An RTP Payload Format for Generic Forward Error Connection”, IETF RFC 2733, Dec. 1999, http:///www.ietf.org
    • 3GPP Doc. GP-031391: “Channel Coding Schemes with Incremental Redundancy for MBMS”, 3GPP TSG=GERAN Meeting #15, Fort Lauderdale, Fla., June 2003
    • A. Shokrollahi, “LDPC Codes; An Introduction”, April 2003, http://www.ipm.ac.ir/IPM.homepage/Amin2.pdf
    • 3GPP Doc. S4-040230, “Raptor Code Specification for MBMS file download”, 3GPP TSG-SA4 Meeting #31, Montreal, Canada, May 2004, http://www.3gpp.org
    • M. Bossert, “Kanalcodierung”, B. G. Teubner, 1992

Claims (21)

  1. 1-16. (canceled)
  2. 17. An encoding method for transmitting a series of data packets via at least one unidirectional transmission channel within the framework of a combined streaming and downloaded application using a 2-stage error protection process, comprising:
    dividing the series of data packets into partial blocks, each being formed from a plurality of successive data packets occurring during streaming with the aid of a first error protection process (FS1),
    b) all data packets (D1, . . . , DN) are protected against transmission errors remaining after streaming is completed with the aid of a second error protection process (FS2) and the following steps are performed for transmission of a series of data packets:
    c) several successive data packets (D1, . . . , DN) are combined in each case to form a partial block (T1, . . . , TM)];
    forming an error protection block for each partial block with the aid of a first error protection process that protects against at least one type of transmission errors occurring during streaming, each error protection block being formed in such a way that:
    each data packet is encoded to form a corresponding error detection packet that represents the data packet; and
    each error protection block includes at least one additional packet serving as a redundant block;
    sequentially transmitting the error protection blocks in a time sequence corresponding to a playback order of the data packets represented by the error detection packets;
    combining all error detection packets to form a complete block;
    applying a second error protection process to the complete block to form a complete error protection block; and
    transmitting the complete error protection block after all error protection blocks are transmitted.
  3. 18. The method as claimed in claim 17, wherein
    at least one of the following error protection algorithms is used for the first and/or second error protection process:
    EXOR parity code;
    Reed-Solomon code; and
    Low density parity check code.
  4. 19. The method as claimed in claim 17, wherein
    the quantity of error detection packets in the partial block is determined as a function of a specifiable delay, taking account of a transmission rate, a redundant block length and an error detection packet length.
  5. 20. The method as claimed in claim 17, wherein
    a characteristic value is created for each data packet by a statistical method,
    the characteristic value represents an importance of the respective data packet with respect to at least one other data packet,
    the quantity of data packets for the partial block is selected in such a way that a sum of characteristic values of successive data packets within the respective partial block reaches at least one specifiable threshold.
  6. 21. The method as claimed in claim 17, wherein
    the error protection block is created in such a way that within an error protection block the encoded data packets are provided with unequal error protection.
  7. 22. The method as claimed in claim 21, wherein
    error detection data packets containing important information have more error protection, and
    error detection data packets containing less important information have less error protection.
  8. 23. The method as claimed claim 17, wherein
    the error protection block is created in such a way that a specifiable number of erroneous error detection packets can be corrected within the error protection block by the first error protection process.
  9. 24. The method as claimed in claim 17, wherein
    at least one erroneous error detection packet within the error protection block can be corrected by the first error protection process.
  10. 25. The method as claimed in claim 17, wherein
    at least two successive erroneous error detection packets within the error protection block can be corrected by the first error protection process.
  11. 26. The method as claimed in claim 17, wherein
    the complete error protection block is created in such a way that a greater number of erroneous error detection data packets can be corrected with the second error protection process than with the first error protection process.
  12. 27. The method as claimed in claim 17, wherein
    the complete error protection block is created in such a way that it has segments formed by reordering error detection packets, each segment being formed such that errors are separately corrected within the segment.
  13. 28. The method as claimed in claim 17, wherein
    during the transmission of the error protection blocks, the error detection packets are transmitted via a first transmission channel and the redundant blocks are transmitted via a second transmission channel.
  14. 29. The method as claimed in claim 28, wherein
    the error detection packets and the redundant blocks are transmitted in synchronization in such a way that the redundant block of the respective error protection block is present at a receiver not later than a time of reception of a last error detection packet of the respective error protection block.
  15. 30. The method as claimed in claim 18, wherein the quantity of error detection packets in the partial block is determined as a function of a specifiable delay, taking account of a transmission rate, a redundant block length and an error detection packet length.
  16. 31. The method as claimed in claim 18, wherein
    a characteristic value is created for each data packet by a statistical method,
    the characteristic value represents an importance of the respective data packet with respect to at least one other data packet,
    the quantity of data packets for the partial block is selected in such a way that a sum of characteristic values of successive data packets within the respective partial block reaches at least one specifiable threshold.
  17. 32. The method as claimed in claim 31, wherein
    the error protection block is created in such a way that within an error protection block the encoded data packets are provided with unequal error protection.
  18. 33. The method as claimed in claim 32, wherein
    error detection data packets containing important information have more error protection, and
    error detection data packets containing less important information have less error protection.
  19. 34. A decoding method comprising decoding a sequence of error detection packets encoded in accordance with the encoding method according to claim 17.
  20. 35. An encoding device for a series of data packets transmitted via at least one unidirectional transmission channel within the framework of a combined streaming and downloaded application using a 2-stage error protection process, comprising:
    a division unit to divide a series of data packets into partial blocks, each being formed from a plurality of successive data packets;
    a block forming unit to form an error protection block for each partial block with the aid of a first error protection process that protects against at least one type of transmission error occurring during streaming, each error protection block being formed in such a way that:
    each data packet is encoded to form a corresponding error detection packet that represents the data packet; and
    each error protection block includes at least one additional packet serving as a redundant block;
    a first transmission unit to sequentially transmit the error protection blocks in a time sequence corresponding to a playback order of the data packets represented by the error detection packets;
    a combination unit to combine all error detection packets to form a complete block;
    a correction unit to apply a second error protection process to the complete block to form a complete error protection block; and
    a second transmission unit to transmit the complete error protection block after all error protection blocks are transmitted.
  21. 36. A decoding device comprising a decoder to decode a sequence of error detection packets encoded according to the encoding method according to claim 17.
US11658667 2004-07-27 2005-06-29 Encoding and Decoding Method, and Encoding and Decoding Devices with a Two-Stage Error Protection Process Abandoned US20080320358A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE200410036383 DE102004036383B4 (en) 2004-07-27 2004-07-27 Coding and decoding method, and encoding and decoding devices
DE102004036383.8 2004-07-27
PCT/EP2005/053076 WO2006010689A1 (en) 2004-07-27 2005-06-29 Encoding and decoding method, and encoding and decoding devices with a two-stage error protection process

Publications (1)

Publication Number Publication Date
US20080320358A1 true true US20080320358A1 (en) 2008-12-25

Family

ID=35185121

Family Applications (2)

Application Number Title Priority Date Filing Date
US11658667 Abandoned US20080320358A1 (en) 2004-07-27 2005-06-29 Encoding and Decoding Method, and Encoding and Decoding Devices with a Two-Stage Error Protection Process
US13022256 Expired - Fee Related US8601343B2 (en) 2004-07-27 2011-02-07 Encoding and decoding method, and encoding and decoding devices with a two-stage error protection process

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13022256 Expired - Fee Related US8601343B2 (en) 2004-07-27 2011-02-07 Encoding and decoding method, and encoding and decoding devices with a two-stage error protection process

Country Status (5)

Country Link
US (2) US20080320358A1 (en)
EP (1) EP1771960A1 (en)
JP (2) JP2008508757A (en)
DE (1) DE102004036383B4 (en)
WO (1) WO2006010689A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080165806A1 (en) * 2006-12-29 2008-07-10 Interdigital Technology Corporation Method and apparatus for transmitting and receiving multimedia broadcast multicast services via a dedicated downlink carrier
US20090045910A1 (en) * 2007-08-14 2009-02-19 Bayerische Motoren Werke Aktiengesellschaft Platform for Standardizing Vehicle Communications With Third-Party Applications
US20100017687A1 (en) * 2005-09-29 2010-01-21 Agere Systems Inc. Method and Apparatus for N+1 Packet Level Mesh Protection
US20100199155A1 (en) * 2009-02-03 2010-08-05 Complete Genomics, Inc. Method and apparatus for quantification of dna sequencing quality and construction of a characterizable model system using reed-solomon codes
US20160364554A1 (en) * 2015-06-15 2016-12-15 International Business Machines Corporation Identifying usage of code

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8306060B2 (en) * 2006-11-07 2012-11-06 Samsung Electronics Co., Ltd. System and method for wireless communication of uncompressed video having a composite frame format
KR20120137198A (en) * 2011-06-11 2012-12-20 삼성전자주식회사 Apparatus and method for transmitting and receiving packet in communication system
KR20130094160A (en) * 2012-01-20 2013-08-23 삼성전자주식회사 Method and apparatus for streaming service

Citations (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3831143A (en) * 1971-11-26 1974-08-20 Computer Science Corp Concatenated burst-trapping codes
US4011511A (en) * 1974-07-24 1977-03-08 The Singer Company Frequency-shift digital data link and digital frequency detection system
US4375100A (en) * 1979-10-24 1983-02-22 Matsushita Electric Industrial Company, Limited Method and apparatus for encoding low redundancy check words from source data
US4630271A (en) * 1983-01-20 1986-12-16 Nippon Hoso Kyokai Error correction method and apparatus for data broadcasting system
US4680764A (en) * 1984-03-24 1987-07-14 Sony Corporation Method and apparatus for transmitting digital data
US4998252A (en) * 1987-08-06 1991-03-05 Sony Corporation Method and apparatus for transmitting digital data
US5436917A (en) * 1992-05-18 1995-07-25 Canon Kabushiki Kaisha Data processing apparatus having error detection/correction codes
US5712861A (en) * 1994-07-12 1998-01-27 Mitsubishi Denki Kabushiki Kaisha Error correcting method and decoder with improved reliability
US5740187A (en) * 1992-06-09 1998-04-14 Canon Kabushiki Kaisha Data processing using interpolation of first and second information based on different criteria
US5757825A (en) * 1995-01-20 1998-05-26 Sanyo Electric Co., Ltd. Digital signal processing for controlling error correction based on the state of the control bit
US5790569A (en) * 1995-04-12 1998-08-04 Kabushiki Kaisha Toshiba Method and apparatus for generating, recording and transmitting an error product code block having an improved check code arrangement
US5881037A (en) * 1995-04-04 1999-03-09 Kabushiki Kaisha Toshiba Recording medium, recording method and apparatus, and reproduction method and apparatus
US5883891A (en) * 1996-04-30 1999-03-16 Williams; Wyatt Method and apparatus for increased quality of voice transmission over the internet
US5901159A (en) * 1995-12-25 1999-05-04 Sony Corporation Apparatus and method for decoding a coded digital signal
US5920578A (en) * 1997-04-23 1999-07-06 Cirrus Logic, Inc. Method and apparatus for efficiently processing a multi-dimensional code
US5974580A (en) * 1997-07-23 1999-10-26 Cirrus Logic, Inc. Concurrent row/column syndrome generator for a product code
US5991911A (en) * 1997-11-14 1999-11-23 Cirrus Logic, Inc. Concurrent generation of ECC error syndromes and CRC validation syndromes in a DVD storage device
US5996105A (en) * 1997-11-14 1999-11-30 Cirrus Logic, Inc. ECC system employing a data buffer for storing codeword data and a syndrome buffer for storing error syndromes
US6047395A (en) * 1998-01-30 2000-04-04 Cirrus Logic, Inc. Error correction processor for correcting a multi-dimensional code by generating an erasure polynomial over one dimension for correcting multiple codewords in another dimension
US6048090A (en) * 1997-04-23 2000-04-11 Cirrus Logic, Inc. Error correction and concurrent verification of a product code
US6061760A (en) * 1997-06-28 2000-05-09 United Microelectronics Corp. Controller circuit apparatus for CD-ROM drives
US6175686B1 (en) * 1996-04-26 2001-01-16 Kabushiki Kaisha Toshiba Recording data generation method, recording medium on which data is recorded, and data reproducing apparatus
US6185715B1 (en) * 1997-10-09 2001-02-06 Alcatel Method of product code block encoding applicable to encoding an ATM cell
US6223324B1 (en) * 1999-01-05 2001-04-24 Agere Systems Guardian Corp. Multiple program unequal error protection for digital audio broadcasting and other applications
US6357030B1 (en) * 1997-12-16 2002-03-12 International Business Machines Corporation ECC block format for storage device
US6367047B1 (en) * 1998-10-20 2002-04-02 Ecrix Multi-level error detection and correction technique for data storage recording device
US6401228B1 (en) * 1996-02-19 2002-06-04 Sony Corporation Data decoding apparatus and method and data reproduction apparatus
US6421805B1 (en) * 1998-11-16 2002-07-16 Exabyte Corporation Rogue packet detection and correction method for data storage device
US6567951B2 (en) * 1998-02-16 2003-05-20 Sony Corporation Optical disc format exhibiting robust error correction coding
US6662335B1 (en) * 2000-01-25 2003-12-09 Mediatek Inc. Method and apparatus for accessing DVD data
US6718510B2 (en) * 2000-08-25 2004-04-06 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US6751771B2 (en) * 2000-02-11 2004-06-15 Mediatek, Inc. Method and apparatus for error processing in optical disk memories
US6757860B2 (en) * 2000-08-25 2004-06-29 Agere Systems Inc. Channel error protection implementable across network layers in a communication system
US6772386B2 (en) * 2000-09-27 2004-08-03 Victor Company Of Japan, Limited Digital signal processing method, data recording and reproducing apparatus, and data recording medium that are resistant to burst errors
US6907561B2 (en) * 2000-11-08 2005-06-14 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus
US7003711B2 (en) * 2001-02-07 2006-02-21 Kabushiki Kaisha Toshiba Information recording medium on which sector data generated from ECC block is recorded, information recording apparatus for recording sector data, and information reproduction apparatus for reproducing sector data
US7007221B2 (en) * 2002-05-17 2006-02-28 Sanyo Electric Co., Ltd. Data reproducing controller
US7017102B1 (en) * 2001-12-27 2006-03-21 Network Equipment Technologies, Inc. Forward Error Correction (FEC) for packetized data networks
US7249305B2 (en) * 2001-11-09 2007-07-24 Kabushiki Kaisha Toshiba Signal processing method and apparatus, signal reproducing method and apparatus, and recording medium
US7305606B2 (en) * 2000-12-01 2007-12-04 Hitachi, Ltd. Method of recording/reproducing digital data and apparatus for same
US7370267B2 (en) * 1999-07-08 2008-05-06 Samsung Electronics Co., Ltd. Error correction method for high density disc
US7389468B2 (en) * 2004-09-20 2008-06-17 International Business Machines Corporation Writing and reading of data in probe-based data storage devices
US7389463B2 (en) * 2001-05-29 2008-06-17 Thomson Licensing Hierarchical block coding for a packet-based communications system

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0353817B2 (en) * 1980-06-20 1991-08-16
CA1161565A (en) * 1980-06-20 1984-01-31 Yoichiro Sako Method of error correction
USRE33332E (en) * 1983-03-12 1990-09-11 Sony Corporation Apparatus for correcting errors
JP2554743B2 (en) * 1989-05-19 1996-11-13 シャープ株式会社 Error correction device for playback
KR0141826B1 (en) * 1991-12-27 1998-07-15 이헌조 Error correction method of compression data
JPH08204768A (en) * 1995-01-24 1996-08-09 Mitsubishi Electric Corp Digital signal transmitter and receiver
JPH08293802A (en) * 1995-04-13 1996-11-05 Internatl Business Mach Corp <Ibm> Interleave type error correction method
DE69636842D1 (en) * 1995-06-30 2007-02-22 Sony Corp A data recording method and setup, recording medium, data reproducing method and device
DE19630343B4 (en) * 1996-07-26 2004-08-26 Telefonaktiebolaget L M Ericsson (Publ) The method and packet-transmission system using an error correction of data packets
US5745502A (en) * 1996-09-27 1998-04-28 Ericsson, Inc. Error detection scheme for ARQ systems
JPH10172243A (en) * 1996-12-11 1998-06-26 Sony Corp Disc type recording medium and reproducing apparatus therefor
JPH10178419A (en) * 1996-12-18 1998-06-30 Nippon Telegr & Teleph Corp <Ntt> Error correcting method and its device
JPH10276009A (en) * 1997-03-28 1998-10-13 Taiyo Yuden Co Ltd Dielectric filter
JP2000349792A (en) * 1999-06-02 2000-12-15 Toshiba Corp Data transmission device
JP3640844B2 (en) * 1999-09-17 2005-04-20 株式会社東芝 Transmission apparatus and error processing method comprising an error processing function
KR100685360B1 (en) * 2000-01-31 2007-02-22 산요덴키가부시키가이샤 Error-correcting device and decoder enabling fast error correction with reduced circuit scale
JP2001244947A (en) * 2000-03-01 2001-09-07 Toshiba Corp Transmission system
US6591390B1 (en) * 2000-04-11 2003-07-08 Texas Instruments Incorporated CRC-based adaptive halting turbo decoder and method of use
US6622277B1 (en) * 2000-06-05 2003-09-16 Tyco Telecommunications(Us)Inc. Concatenated forward error correction decoder
US6772390B2 (en) * 2000-11-30 2004-08-03 Quantum Corporation Erasure correction for ECC entities
GB2370477B (en) * 2000-12-22 2004-03-03 Tandberg Television Asa Method and apparatus for encoding a product code
US6839007B2 (en) * 2001-11-01 2005-01-04 Qualcomm Incorporated Inner coding of higher priority data within a digital message
JP2004165922A (en) * 2002-11-12 2004-06-10 Sony Corp Apparatus, method, and program for information processing
US7047388B2 (en) * 2002-12-06 2006-05-16 Hitachi, Ltd. Control method for storage device controller system, and storage device controller system

Patent Citations (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3831143A (en) * 1971-11-26 1974-08-20 Computer Science Corp Concatenated burst-trapping codes
US4011511A (en) * 1974-07-24 1977-03-08 The Singer Company Frequency-shift digital data link and digital frequency detection system
US4375100A (en) * 1979-10-24 1983-02-22 Matsushita Electric Industrial Company, Limited Method and apparatus for encoding low redundancy check words from source data
US4630271A (en) * 1983-01-20 1986-12-16 Nippon Hoso Kyokai Error correction method and apparatus for data broadcasting system
US4680764A (en) * 1984-03-24 1987-07-14 Sony Corporation Method and apparatus for transmitting digital data
USRE33462E (en) * 1984-03-24 1990-11-27 Sony Corporation Method and apparatus for transmitting digital data
US4998252A (en) * 1987-08-06 1991-03-05 Sony Corporation Method and apparatus for transmitting digital data
US5436917A (en) * 1992-05-18 1995-07-25 Canon Kabushiki Kaisha Data processing apparatus having error detection/correction codes
US5740187A (en) * 1992-06-09 1998-04-14 Canon Kabushiki Kaisha Data processing using interpolation of first and second information based on different criteria
US5712861A (en) * 1994-07-12 1998-01-27 Mitsubishi Denki Kabushiki Kaisha Error correcting method and decoder with improved reliability
US5757825A (en) * 1995-01-20 1998-05-26 Sanyo Electric Co., Ltd. Digital signal processing for controlling error correction based on the state of the control bit
US5881037A (en) * 1995-04-04 1999-03-09 Kabushiki Kaisha Toshiba Recording medium, recording method and apparatus, and reproduction method and apparatus
US6182263B1 (en) * 1995-04-12 2001-01-30 Kabushiki Kaisha Toshiba Apparatus for generating, recording and transmitting an error product code block having an improved check code arrangement
US5790569A (en) * 1995-04-12 1998-08-04 Kabushiki Kaisha Toshiba Method and apparatus for generating, recording and transmitting an error product code block having an improved check code arrangement
US5901159A (en) * 1995-12-25 1999-05-04 Sony Corporation Apparatus and method for decoding a coded digital signal
US6401228B1 (en) * 1996-02-19 2002-06-04 Sony Corporation Data decoding apparatus and method and data reproduction apparatus
US6175686B1 (en) * 1996-04-26 2001-01-16 Kabushiki Kaisha Toshiba Recording data generation method, recording medium on which data is recorded, and data reproducing apparatus
US5883891A (en) * 1996-04-30 1999-03-16 Williams; Wyatt Method and apparatus for increased quality of voice transmission over the internet
US5920578A (en) * 1997-04-23 1999-07-06 Cirrus Logic, Inc. Method and apparatus for efficiently processing a multi-dimensional code
US6048090A (en) * 1997-04-23 2000-04-11 Cirrus Logic, Inc. Error correction and concurrent verification of a product code
US6061760A (en) * 1997-06-28 2000-05-09 United Microelectronics Corp. Controller circuit apparatus for CD-ROM drives
US5974580A (en) * 1997-07-23 1999-10-26 Cirrus Logic, Inc. Concurrent row/column syndrome generator for a product code
US6185715B1 (en) * 1997-10-09 2001-02-06 Alcatel Method of product code block encoding applicable to encoding an ATM cell
US5991911A (en) * 1997-11-14 1999-11-23 Cirrus Logic, Inc. Concurrent generation of ECC error syndromes and CRC validation syndromes in a DVD storage device
US5996105A (en) * 1997-11-14 1999-11-30 Cirrus Logic, Inc. ECC system employing a data buffer for storing codeword data and a syndrome buffer for storing error syndromes
US6357030B1 (en) * 1997-12-16 2002-03-12 International Business Machines Corporation ECC block format for storage device
US6047395A (en) * 1998-01-30 2000-04-04 Cirrus Logic, Inc. Error correction processor for correcting a multi-dimensional code by generating an erasure polynomial over one dimension for correcting multiple codewords in another dimension
US6567951B2 (en) * 1998-02-16 2003-05-20 Sony Corporation Optical disc format exhibiting robust error correction coding
US6367047B1 (en) * 1998-10-20 2002-04-02 Ecrix Multi-level error detection and correction technique for data storage recording device
US6421805B1 (en) * 1998-11-16 2002-07-16 Exabyte Corporation Rogue packet detection and correction method for data storage device
US6223324B1 (en) * 1999-01-05 2001-04-24 Agere Systems Guardian Corp. Multiple program unequal error protection for digital audio broadcasting and other applications
US7370267B2 (en) * 1999-07-08 2008-05-06 Samsung Electronics Co., Ltd. Error correction method for high density disc
US7401285B2 (en) * 1999-07-08 2008-07-15 Samsung Electronics Co., Ltd. Error correction method for high density disc
US7383491B2 (en) * 1999-07-08 2008-06-03 Samsung Electronics Co., Ltd. Error correction method for high density disc
US7007222B2 (en) * 1999-12-04 2006-02-28 Mediatek Inc. Apparatus for accessing data stored on an optical disc
US6662335B1 (en) * 2000-01-25 2003-12-09 Mediatek Inc. Method and apparatus for accessing DVD data
US6751771B2 (en) * 2000-02-11 2004-06-15 Mediatek, Inc. Method and apparatus for error processing in optical disk memories
US7350128B2 (en) * 2000-08-25 2008-03-25 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7380196B2 (en) * 2000-08-25 2008-05-27 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7370259B2 (en) * 2000-08-25 2008-05-06 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US6757860B2 (en) * 2000-08-25 2004-06-29 Agere Systems Inc. Channel error protection implementable across network layers in a communication system
US7124345B2 (en) * 2000-08-25 2006-10-17 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7363571B2 (en) * 2000-08-25 2008-04-22 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7293218B2 (en) * 2000-08-25 2007-11-06 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US6718510B2 (en) * 2000-08-25 2004-04-06 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7356754B2 (en) * 2000-08-25 2008-04-08 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7350129B2 (en) * 2000-08-25 2008-03-25 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7346828B2 (en) * 2000-08-25 2008-03-18 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7302630B2 (en) * 2000-08-25 2007-11-27 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7310763B2 (en) * 2000-08-25 2007-12-18 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US7408863B2 (en) * 2000-09-27 2008-08-05 Victor Company Of Japan, Limited Digital signal processing method, data recording and reproducing apparatus, and data recording medium that are resistant to burst errors
US6772386B2 (en) * 2000-09-27 2004-08-03 Victor Company Of Japan, Limited Digital signal processing method, data recording and reproducing apparatus, and data recording medium that are resistant to burst errors
US6907561B2 (en) * 2000-11-08 2005-06-14 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus
US7380194B2 (en) * 2000-11-08 2008-05-27 Kabushiki Kaisha Toshiba Data processing method and apparatus, recording medium, reproducing method and apparatus
US7305606B2 (en) * 2000-12-01 2007-12-04 Hitachi, Ltd. Method of recording/reproducing digital data and apparatus for same
US7003711B2 (en) * 2001-02-07 2006-02-21 Kabushiki Kaisha Toshiba Information recording medium on which sector data generated from ECC block is recorded, information recording apparatus for recording sector data, and information reproduction apparatus for reproducing sector data
US7389463B2 (en) * 2001-05-29 2008-06-17 Thomson Licensing Hierarchical block coding for a packet-based communications system
US7249305B2 (en) * 2001-11-09 2007-07-24 Kabushiki Kaisha Toshiba Signal processing method and apparatus, signal reproducing method and apparatus, and recording medium
US7017102B1 (en) * 2001-12-27 2006-03-21 Network Equipment Technologies, Inc. Forward Error Correction (FEC) for packetized data networks
US7007221B2 (en) * 2002-05-17 2006-02-28 Sanyo Electric Co., Ltd. Data reproducing controller
US7389468B2 (en) * 2004-09-20 2008-06-17 International Business Machines Corporation Writing and reading of data in probe-based data storage devices

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100017687A1 (en) * 2005-09-29 2010-01-21 Agere Systems Inc. Method and Apparatus for N+1 Packet Level Mesh Protection
US8745461B2 (en) 2005-09-29 2014-06-03 Agere Systems Llc Method and apparatus for N+1 packet level mesh protection
US8271847B2 (en) * 2005-09-29 2012-09-18 Agere Systems Inc. Method and apparatus for N+1 packet level mesh protection
US20120224523A1 (en) * 2006-12-29 2012-09-06 Interdigital Technology Corporation Method and apparatus for transmitting and receiving multimedia broadcast multicast services via a dedicated downlink carrier
US8181093B2 (en) * 2006-12-29 2012-05-15 Interdigital Technology Corporation Method and apparatus for transmitting and receiving multimedia broadcast multicast services via a dedicated downlink carrier
US20080165806A1 (en) * 2006-12-29 2008-07-10 Interdigital Technology Corporation Method and apparatus for transmitting and receiving multimedia broadcast multicast services via a dedicated downlink carrier
US20090045910A1 (en) * 2007-08-14 2009-02-19 Bayerische Motoren Werke Aktiengesellschaft Platform for Standardizing Vehicle Communications With Third-Party Applications
US8180908B2 (en) * 2007-08-14 2012-05-15 Bayerische Motoren Werke Aktiengesellschaft Platform for standardizing vehicle communications with third-party applications
WO2010091107A1 (en) * 2009-02-03 2010-08-12 Complete Genomics, Inc. Method and apparatus for quantification of dna sequencing quality and construction of a characterizable model system using reed-solomon codes
US8407554B2 (en) 2009-02-03 2013-03-26 Complete Genomics, Inc. Method and apparatus for quantification of DNA sequencing quality and construction of a characterizable model system using Reed-Solomon codes
US20100199155A1 (en) * 2009-02-03 2010-08-05 Complete Genomics, Inc. Method and apparatus for quantification of dna sequencing quality and construction of a characterizable model system using reed-solomon codes
US20160364554A1 (en) * 2015-06-15 2016-12-15 International Business Machines Corporation Identifying usage of code
US9881144B2 (en) * 2015-06-15 2018-01-30 International Business Machines Corporation Identifying usage of code

Also Published As

Publication number Publication date Type
JP2008508757A (en) 2008-03-21 application
US20110131474A1 (en) 2011-06-02 application
DE102004036383A1 (en) 2006-03-23 application
DE102004036383B4 (en) 2006-06-14 grant
US8601343B2 (en) 2013-12-03 grant
EP1771960A1 (en) 2007-04-11 application
WO2006010689A1 (en) 2006-02-02 application
JP2011078113A (en) 2011-04-14 application
JP5140716B2 (en) 2013-02-13 grant

Similar Documents

Publication Publication Date Title
US6487690B1 (en) Forward error correction system for packet based real time media
US6614366B2 (en) Information additive code generator and decoder for communication systems
US6141788A (en) Method and apparatus for forward error correction in packet networks
US6677864B2 (en) Method for multicast over wireless networks
US7151754B1 (en) Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding
US7318187B2 (en) Outer coding methods for broadcast/multicast content and related apparatus
US6320520B1 (en) Information additive group code generator and decoder for communications systems
US20130067295A1 (en) File download and streaming system
US6757860B2 (en) Channel error protection implementable across network layers in a communication system
US20050193309A1 (en) Methods for forward error correction coding above a radio link control layer and related apparatus
US20070204196A1 (en) Streaming and buffering using variable fec overhead and protection periods
US7660245B1 (en) FEC architecture for streaming services including symbol-based operations and packet tagging
US7017102B1 (en) Forward Error Correction (FEC) for packetized data networks
US20020146074A1 (en) Unequal error protection of variable-length data packets based on recursive systematic convolutional coding
US20050169205A1 (en) Methods for seamless delivery of broadcast and multicast content across cell borders and/or between different transmission schemes and related apparatus
US20070240027A1 (en) Forward Error Correction Decoders
US20060150055A1 (en) Adaptive information delivery system using FEC feedback
US20020080802A1 (en) Method for multimedia communication over packet channels
US20060077890A1 (en) Efficient source blocking algorithm for FEC for MBMS streaming
US20030023915A1 (en) Forward error correction system and method for packet based communication systems
US6728924B1 (en) Packet loss control method for real-time multimedia communications
US6850559B1 (en) System and methods for transmitting data
US20020144209A1 (en) System for enhanced error correction in trellis decoding
US20130254631A1 (en) Content delivery system with allocation of source data and repair data among http servers
US20060248090A1 (en) Method and apparatus for enhanced file distribution in multicast or broadcast

Legal Events

Date Code Title Description
AS Assignment

Owner name: SIEMENS AKTIENGESELLSCHAFT, GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PANDEL, JUERGEN;WAGNER, MARCEL;REEL/FRAME:018864/0762

Effective date: 20070116

AS Assignment

Owner name: NOKIA SIEMENS NETWORKS GMBH & CO. KG,GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SIEMENS AKTIENGESELLSCHAFT;REEL/FRAME:020838/0205

Effective date: 20080307

Owner name: NOKIA SIEMENS NETWORKS GMBH & CO. KG, GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SIEMENS AKTIENGESELLSCHAFT;REEL/FRAME:020838/0205

Effective date: 20080307