H.263
From Wikipedia, the free encyclopedia
H.263 is a video codec standard originally designed as a low-bitrate compressed format for videoconferencing. It was developed by the ITU-T Video Coding Experts Group (VCEG) in a project ending in 1995/1996 as one member of the H.26x family of video coding standards in the domain of the ITU-T.
H.263 has since found many applications on the internet: much Flash Video content (as used on sites such as YouTube, Google Video, MySpace, etc.) is encoded in this format, though many sites now use VP6 encoding, which is supported since Flash 8. The original version of the RealVideo codec was based on H.263 up until the release of RealVideo 8.
The codec was first designed to be utilized in H.324 based systems (PSTN and other circuit-switched network videoconferencing and videotelephony), but has since also found use in H.323 (RTP/IP-based videoconferencing), H.320 (ISDN-based videoconferencing), RTSP (streaming media) and SIP (Internet conferencing) solutions.
H.263 was developed as an evolutionary improvement based on experience from H.261, the previous ITU-T standard for video compression, and the MPEG-1 and MPEG-2 standards. Its first version was completed in 1995 and provided a suitable replacement for H.261 at all bitrates. It was further enhanced in projects known as H.263v2 (also known as H.263+ or H.263 1998) and H.263v3 (also known as H.263++ or H.263 2000).
The next enhanced codec developed by ITU-T VCEG (in partnership with MPEG) after H.263 is the H.264 standard, also known as AVC and MPEG-4 part 10. As H.264 provides a significant improvement in capability beyond H.263, the H.263 standard is now considered primarily a legacy design (although this is a recent development). Most new videoconferencing products now include H.264 as well as H.263 and H.261 capabilities.
Contents |
[edit] Versions
Since the original ratification of H.263 in March 1996 (approving a document that was produced in November 1995), there have been two subsequent additions which improved on the original codec by additional optional annexes (extensions). For example, the H.263v2 added a deblocking filter via Annex J.
The original H.263 specified the following annexes:
- Annex A - Inverse transform accuracy specification
- Annex B - Hypothetical Reference Decoder
- Annex C - Considerations for Multipoint
- Annex D - Unrestricted Motion Vector mode
- Annex E - Syntax-based Arithmetic Coding mode
- Annex F - Advanced Prediction mode
- Annex G - PB-frames mode
- Annex H - Forward Error Correction for coded video signal
In March 1997, an informative Annex I describing Error Tracking — an encoding technique for providing improved robustness to data losses and errors, was approved to provide information for the aid of implementers having an interest in such techniques.
[edit] H.263v2 (H.263+)
H.263v2 (also known as H.263+ or as the 1998 version of H.263) is the informal name of the second edition of the ITU-T H.263 international video coding standard. It retained the entire technical content of the original version of the standard, but enhanced H.263 capabilities by adding several annexes which can substantially improve encoding efficiency and provide other capabilities (such as enhanced robustness against data loss in the transmission channel). The H.263+ project was ratified by the ITU in February 1998. It added the following Annexes:
- Annex I - Advanced INTRA Coding mode
- Annex J - Deblocking Filter mode
- Annex K - Slice Structured mode
- Annex L - Supplemental Enhancement Information Specification
- Annex M - Improved PB-frames mode
- Annex N - Reference Picture Selection mode
- Annex O - Temporal, SNR, and Spatial Scalability mode
- Annex P - Reference picture resampling
- Annex Q - Reduced-Resolution Update mode (see implementors' guide correction as noted below)
- Annex R - Independent Segment Decoding mode
- Annex S - Alternative INTER VLC mode
- Annex T - Modified Quantization mode
- Annex X - Profiles and levels definition
H.263v2 also added support for flexible customized picture formats and custom picture clock frequencies. Previously the only picture formats supported in H.263 had been Sub-QCIF, QCIF, CIF, 4CIF, and 16CIF, and the only picture clock frequency had been 30000/1001 (approximately 29.97) clock ticks per second.
H.263v2 specified a set of recommended modes in an informative appendix (Appendix II, since deprecated):
Level 1 | Level 2 | Level 3 | |
---|---|---|---|
Advanced INTRA Coding | Yes | Yes | Yes |
Deblocking Filter | Yes | Yes | Yes |
Supplemental Enhancement Information (Full-Frame Freeze Only) | Yes | Yes | Yes |
Modified Quantization | Yes | Yes | Yes |
Unrestricted Motion Vectors | No | Yes | Yes |
Slice Structured Mode | No | Yes | Yes |
Reference Picture Resampling (Implicit Factor-of-4 Mode Only) | No | Yes | Yes |
Advanced Prediction | No | No | Yes |
Improved PB-frames | No | No | Yes |
Independent Segment Decoding | No | No | Yes |
Alternate INTER VLC | No | No | Yes |
Level 1 | Level 2 | Level 3 |
[edit] H.263v3 (H.263++) and Annex X
The definition of H.263v3 (also known as H.263++ or as the 2000 version of H.263) consisted of the addition of three additional annexes. These annexes and an additional annex that specified profiles (approved the following year) were originally published as separate documents from the main body of the standard itself. The additional annexes specified are:
- Annex U - Enhanced reference picture selection mode
- Annex V - Data-partitioned slice mode
- Annex W - Additional supplemental enhancement information specification
- Annex X (originally specified in 2001) - Profiles and levels definition
The prior informative Appendix II (recommended optional enhancement) was obsoleted by the creation of the normative Annex X.
In June 2001, another informative appendix (Appendix III, Examples for H.263 encoder/decoder implementations) was approved. It describes techniques for encoding and for error/loss concealment by decoders.
In January 2005, a unified H.263 specification document was produced (with the exception of Appendix III, which remains as a separately-published document).
In August 2005, an implementors guide was approved to correct a small error in the seldom-used Annex Q reduced-resolution update mode.
[edit] Applications
- H.263 video can be decoded with the free LGPL-licensed libavcodec library (part of the ffmpeg project) which is used by programs such as ffdshow, VLC media player and MPlayer.
[edit] External links
- The ITU-T specification for H.263
- IETF AVT Working Group - Group that reviews codec packetizations for RTP
- Intel Integrated Performance Primitives
- H.263 implementation in vic (source code available)
- H.263 for .NET
|