The intended applications of this international standard are for videophone and videoconferencing. Therefore, the recommended video coding algorithm has to be able to operate in real time with minimum delay. For p = 1 or 2, due to severely limited available bit rate, only desktop face-to-face visual communication (often referred to as videophone) is appropriate. For p>=6, due to the additional available bit rate, more complex pictures can be transmitted with better quality. This is, therefore, more suitable for videoconferencing.
The IVS (INRIA Videoconferencing System) is software implementation of
H.261 codec which also features PCM and ADPCM audio codecs and includes an
error control scheme to handle packet losses in the Internet.
Hangover
Audio data transmitted after the silence detector indicates that no audio
data is present.
Hangover ensures that the ends of words, important for comprehension, are
transmitted even though they are often of low energy.
Header
A block of data in the coded bitstream containing the coded representation of
a number of data elements pertaining to the coded data that follow the header
in the bitstream.
Hybrid Coder
In the archetypal hybrid coder, an estimate of the next
frame
to be processed is formed from the current
frame
and the difference is then encoded by some purely intraframe mechanism.
In recent years, the most
attention has been paid to the
motion compensated
DCT
coder where the estimate is formed by a
two-dimensional warp of the previous
frame
and the difference is encoded using a block transform (the Discrete Cosine
Transform).
This system is the basis for international standards for videotelephony, is used for some HDTV demonstrations, and is the prototype from which MPEG was designed. Its utility has been demonstrated for video sequence, and the DCT concentrates the remaining energy into a small number of transform coefficients that can be quantized and compactly represented.
The key feature of this coder is the presence of a complete decoder within it. The difference between the current frame as represented as the receiver and the incoming frame is processed. In the basis design, therefore, the receiver must track the transmitter precisely, the decoder at the receiver and the decoder at the transmitter must match. The system is sensitive to channel errors and does not permit random access. However, it is on the order of three to four times as efficient as one that uses no prediction.
In practice, this coder is modified to suit specific application. The
standard telephony model uses a forced update of the decoded
frame
so that channel errors do not propagate.
When a participant enters the conversation
late or alternates between image sources, residual errors die out and a clear
image is obtained after a few
frames.
Similar techniques are used in versions of this coder being developed for
direct satellite television broadcasting.
Hybrid scalability
Hybrid scalability is the combination of two or more types of scalability.
Huffman Coding
For a given character distribution, by assigning short codes to frequently
occurring characters and longer codes to infrequently occurring characters,
Huffman's minimum redundancy encoding minimizes the average number of bytes
required to represent the characters in a text.
Static Huffman encoding uses a fixed set of codes, based on a representative sample of data, for processing texts. Although encoding is achieved in a single pass, the data on which the compression is based may bear little resemblance to the actual text being compressed.
Dynamic Huffman encoding, on the other hand, reads each text twice; once to determine the frequency distribution of the characters in the text and once to encode the data. The codes used for compression are computed on the basis of the statistics gathered during the first pass with compressed texts being prefixed by a copy of the Huffman encoding table for use with the decoding process.
By using a single-pass technique, where each character is encoded on the basis of the preceding characters in a text, Gallager's adaptive Huffman encoding avoids many of the problems associated with either the static or dynamic method.
For Huffman coding, one good reference is :
D.S. Hirshberg and D.A. Lelewer
Efficient Decoding of Prefix Codes
Comm. ACM 33(4) April 1990
449-459
or you can follow a
short tutorial that will teach you the basics of huffman coding.