Error concealment

Last updated

Error concealment is a technique used in signal processing that aims to minimize the deterioration of signals caused by missing data, called packet loss. [1] A signal is a message sent from a transmitter to a receiver in multiple small packets. Packet loss occurs when these packets are misdirected, delayed, resequenced, or corrupted. [2]

Contents

Receiver-Based Techniques

When error recovery occurs at the receiving end of the signal, it is receiver-based. These techniques focus on correcting corrupted or missing data.

Waveform substitution

Preliminary attempts at receiver-based error concealment involved packet repetition, replacing lost packets with copies of previously received packets. This function is computationally simple and is performed by a device on the receiver end called a "drop-out compensator". [3] [4]

Zero Insertion

When this technique is used, if a packet is lost, its entries are replaced with 0s.

Interpolation

Interpolation involves making educated guesses about the nature of a missing packet. For example, by following speech patterns in audio or faces in video.

Buffer

Data buffers are used for temporarily storing data while waiting for delayed packets to arrive. They are common in internet browser loading bars and video applications, like YouTube.

Transmitter-Based Techniques

Rather than attempting to recover lost packets, other techniques involve anticipating data loss, manipulating the data prior to transmission. [4]

Retransmission

The simplest transmitter-based technique is retransmission, sending the message multiple times. Although this idea is simple, because of the extra time required to send multiple signals, this technique is incapable of supporting real-time applications. [2]

Packet Repetition

Packet repetition, also called forward error correction (FEC), adds redundant data, which the receiver can use to recover lost packets. This minimizes loss, but increases the size of the packet. [5] [6]

Interleaving

Interleaving involves scrambling the data before transmission. When a packet is lost, rather than losing an entire set of data, small portions of several sets will be gone. At the receiving end, the message is then deinterleaved to reveal the original message with minimal loss.

Transmission without interleaving:

Original transmitted sentence:                      ThisIsNotAnExampleOfInterleaving Received sentence with a burst error:               ThisIsNot______pleOfInterleaving

The term "AnExample" ends up mostly unintelligible and difficult to correct.

With interleaving:

Transmitted sentence:                               ThisIsAnExampleOfInterleaving... Error-free transmission:                            TIEpfeaghsxlIrv.iAaenli.snmOten. Received sentence with a burst error:               TIEpfe______Irv.iAaenli.snmOten. Received sentence after deinterleaving:             T_isI_AnE_amp_eOfInterle_vin_...

No word is completely lost and the missing letters can be recovered with minimal guesswork. [7]

Applications

Depending on the method of transmission (analog or digital), there are a variety of ways for errors to propagate in the message.

Analog Applications

Since its invention in the 1950s, the magnetic coating used in analog video tape has experienced radio frequency (RF) signal drop-outs. Some of the techniques that were used for resolving these issues are analogous to those used for concealing errors in modern compressed video signals.

The process of click removal in audio restoration is another example of error concealment. A closely analogous example in the domain of image processing is the use of digital dust and scratch removal processing in film restoration.

Digital Applications

Error concealment has many digital applications, including web browsing, video conferencing, Skype, and YouTube [2] [8]

See also

Related Research Articles

<span class="mw-page-title-main">Error detection and correction</span> Techniques that enable reliable delivery of digital data over unreliable communication channels

In information theory and coding theory with applications in computer science and telecommunication, error detection and correction (EDAC) or error control are techniques that enable reliable delivery of digital data over unreliable communication channels. Many communication channels are subject to channel noise, and thus errors may be introduced during transmission from the source to a receiver. Error detection techniques allow detecting such errors, while error correction enables reconstruction of the original data in many cases.

<span class="mw-page-title-main">Orthogonal frequency-division multiplexing</span> Method of encoding digital data on multiple carrier frequencies

In telecommunications, orthogonal frequency-division multiplexing (OFDM) is a type of digital transmission used in digital modulation for encoding digital (binary) data on multiple carrier frequencies. OFDM has developed into a popular scheme for wideband digital communication, used in applications such as digital television and audio broadcasting, DSL internet access, wireless networks, power line networks, and 4G/5G mobile communications.

The Real-time Transport Protocol (RTP) is a network protocol for delivering audio and video over IP networks. RTP is used in communication and entertainment systems that involve streaming media, such as telephony, video teleconference applications including WebRTC, television services and web-based push-to-talk features.

Steganography is the practice of representing information within another message or physical object, in such a manner that the presence of the information is not evident to human inspection. In computing/electronic contexts, a computer file, message, image, or video is concealed within another file, message, image, or video. The word steganography comes from Greek steganographia, which combines the words steganós, meaning "covered or concealed", and -graphia meaning "writing".

In computer networking, the User Datagram Protocol (UDP) is one of the core communication protocols of the Internet protocol suite used to send messages to other hosts on an Internet Protocol (IP) network. Within an IP network, UDP does not require prior communication to set up communication channels or data paths.

Voice over Internet Protocol (VoIP), also called IP telephony, is a method and group of technologies for voice calls, the delivery of voice communication sessions over Internet Protocol (IP) networks, such as the Internet.

<span class="mw-page-title-main">Fading</span> Term in wireless communications

In wireless communications, fading is variation of the attenuation of a signal with the various variables. These variables include time, geographical position, and radio frequency. Fading is often modeled as a random process. A fading channel is a communication channel that experiences fading. In wireless systems, fading may either be due to multipath propagation, referred to as multipath-induced fading, weather, or shadowing from obstacles affecting the wave propagation, sometimes referred to as shadow fading.

<span class="mw-page-title-main">Coding theory</span> Study of the properties of codes and their fitness

Coding theory is the study of the properties of codes and their respective fitness for specific applications. Codes are used for data compression, cryptography, error detection and correction, data transmission and data storage. Codes are studied by various scientific disciplines—such as information theory, electrical engineering, mathematics, linguistics, and computer science—for the purpose of designing efficient and reliable data transmission methods. This typically involves the removal of redundancy and the correction or detection of errors in the transmitted data.

Selective Repeat ARQ/Selective Reject ARQ is a specific instance of the automatic repeat request (ARQ) protocol used to manage sequence numbers and retransmissions in reliable communications.

Packet loss occurs when one or more packets of data travelling across a computer network fail to reach their destination. Packet loss is either caused by errors in data transmission, typically across wireless networks, or network congestion. Packet loss is measured as a percentage of packets lost with respect to packets sent.

Hybrid automatic repeat request is a combination of high-rate forward error correction (FEC) and automatic repeat request (ARQ) error-control. In standard ARQ, redundant bits are added to data to be transmitted using an error-detecting (ED) code such as a cyclic redundancy check (CRC). Receivers detecting a corrupted message will request a new message from the sender. In Hybrid ARQ, the original data is encoded with an FEC code, and the parity bits are either immediately sent along with the message or only transmitted upon request when a receiver detects an erroneous message. The ED code may be omitted when a code is used that can perform both forward error correction (FEC) in addition to error detection, such as a Reed–Solomon code. The FEC code is chosen to correct an expected subset of all errors that may occur, while the ARQ method is used as a fall-back to correct errors that are uncorrectable using only the redundancy sent in the initial transmission. As a result, hybrid ARQ performs better than ordinary ARQ in poor signal conditions, but in its simplest form this comes at the expense of significantly lower throughput in good signal conditions. There is typically a signal quality cross-over point below which simple hybrid ARQ is better, and above which basic ARQ is better.

Packet loss concealment (PLC) is a technique to mask the effects of packet loss in voice over IP (VoIP) communications. When the voice signal is sent as VoIP packets on an IP network, the packets may travel different routes. A packet therefore might arrive very late, might be corrupted, or simply might not arrive at all. One example case of the last situation could be, when a packet is rejected by a server which has a full buffer and cannot accept any more data. Other cases include network congestion resulting in significant delay. In a VoIP connection, error-control techniques such as automatic repeat request (ARQ) are not feasible and the receiver should be able to cope with packet loss. Packet loss concealment is the inclusion in a design of methodologies for accounting for and compensating for the loss of voice packets.

In computing, telecommunication, information theory, and coding theory, forward error correction (FEC) or channel coding is a technique used for controlling errors in data transmission over unreliable or noisy communication channels.

Multiple description coding (MDC) in computing is a coding technique that fragments a single media stream into n substreams (n ≥ 2) referred to as descriptions. The packets of each description are routed over multiple, (partially) disjoint paths. In order to decode the media stream, any description can be used, however, the quality improves with the number of descriptions received in parallel. The idea of MDC is to provide error resilience to media streams. Since an arbitrary subset of descriptions can be used to decode the original stream, network congestion or packet loss — which are common in best-effort networks such as the Internet — will not interrupt the stream but only cause a (temporary) loss of quality. The quality of a stream can be expected to be roughly proportional to data rate sustained by the receiver.

In telecommunications, a diversity scheme refers to a method for improving the reliability of a message signal by using two or more communication channels with different characteristics. Diversity is mainly used in radio communication and is a common technique for combatting fading and co-channel interference and avoiding error bursts. It is based on the fact that individual channels experience fades and interference at different, random times, i.e, they are at least partly independent. Multiple versions of the same signal may be transmitted and/or received and combined in the receiver. Alternatively, a redundant forward error correction code may be added and different parts of the message transmitted over different channels. Diversity techniques may exploit the multipath propagation, resulting in a diversity gain, often measured in decibels.

Audio-to-video synchronization refers to the relative timing of audio (sound) and video (image) parts during creation, post-production (mixing), transmission, reception and play-back processing. AV synchronization can be an issue in television, videoconferencing, or film.

ATSC-M/H is a U.S. standard for mobile digital TV that allows TV broadcasts to be received by mobile devices.

In digital communications, a turbo equalizer is a type of receiver used to receive a message corrupted by a communication channel with intersymbol interference (ISI). It approaches the performance of a maximum a posteriori (MAP) receiver via iterative message passing between a soft-in soft-out (SISO) equalizer and a SISO decoder. It is related to turbo codes in that a turbo equalizer may be considered a type of iterative decoder if the channel is viewed as a non-redundant convolutional code. The turbo equalizer is different from classic a turbo-like code, however, in that the 'channel code' adds no redundancy and therefore can only be used to remove non-gaussian noise.

NACK-Oriented Reliable Multicast (NORM) is a transport layer Internet protocol designed to provide reliable transport in multicast groups in data networks. It is formally defined by the Internet Engineering Task Force (IETF) in Request for Comments (RFC) 5740, which was published in November 2009.

<span class="mw-page-title-main">Audio inpainting</span>

Audio inpainting is an audio restoration task which deals with the reconstruction of missing or corrupted portions of a digital audio signal. Inpainting techniques are employed when parts of the audio have been lost due to various factors such as transmission errors, data corruption or errors during recording.

References

  1. "Video Signal Error Concealment". National Institute of Standards and Technology (NIST). March 29, 2011. Retrieved 2014-10-23.
  2. 1 2 3 Carle, Georg; Biersack, Ernst (6 August 2002). "Survey of error recovery techniques for IP-based audio-visual multicast applications". IEEE Network. 11 (6): 24–36. doi:10.1109/65.642357. ISSN   0890-8044. S2CID   13825411.
  3. W.K.E. Geddes (14 December 1964). "R&D Report 1964-77 : Simple drop-out compensator for video tape recorders" . Retrieved 2014-10-23.
  4. 1 2 Kurose, James; Ross, Keith (2013). Computer Networking: a Top-Down Approach (PDF) (6th ed.). Pearson Education Inc. p. 640. ISBN   978-0-13-285620-1. Archived from the original (PDF) on 7 February 2015. Retrieved 30 October 2014.
  5. Nimrod Peleg (January 2003). "Error Resilience and Concealment in Video Coding : With focus on H.261/3" (PDF). Retrieved 2013-03-21.
  6. Podolsky, M (29 Mar – 2 Apr 1998). "Simulation of FEC-based error control for packet audio on the Internet". Proceedings. IEEE INFOCOM '98, the Conference on Computer Communications. Seventeenth Annual Joint Conference of the IEEE Computer and Communications Societies. Gateway to the 21st Century (Cat. No.98CH36169). Vol. 2. pp. 505–515. CiteSeerX   10.1.1.33.1853 . doi:10.1109/INFCOM.1998.665068. ISBN   978-0-7803-4383-2. ISSN   0743-166X. S2CID   5056164.
  7. Forward error correction#Example
  8. Sat, Batu; Wah, Benjamin (9–12 July 2006). "Analysis and Evaluation of the Skype and Google-Talk Voip Systems". 2006 IEEE International Conference on Multimedia and Expo. pp. 2153–2156. doi:10.1109/ICME.2006.262681. ISBN   978-1-4244-0366-0. S2CID   6905228.