The Agora Labs elemedia H.263 Codec was originally developed at Lucent’s Bell Labs. There are three versions of H.263 (or H.261 v1), H.263+ (or H.263 v2) and H.263++ (or H.263 v3), this codec implements the baseline version. H.263 baseline version (H.263 v1 with no options enabled) is compatible with MPEG-4 "short header".
The H.263 codec has many options that can be negotiated each time a video call is made, these options can be changed while the codec is running.
H.263 and H.263+ are not compatible codecs. While H.263+ can decode an H.263 encoded stream, there is no requirement for H.263 to decode a stream encoded in H.263+. H.263+ and H.263++ are compatible, provided that the extra capabilities H.263++ adds are negotiated to be not used.
H.263 specifies several video frame sizes - SQCIF (96x144), QCIF (176x144), CIF (352x288), 4CIF (704x576) and 16CIF (1408x1152). At least one of SQCIF and QCIF must be supported, the other sizes are optional. The Agora elemedia H.263 codec SDK supports all these frame sizes, and supports non-standard frame sizes by centering the picture within a larger frame.
The H.263 softcodec was designed to run on IP based networks, and is more resilient to packet loss than H.261. H.263 can run on IP networks, and the Agora elemedia H.263v1 codec can output packets that conform to RFC 2190, "RTP Payload Format for H.263 Video Streams." Agora's RTP stack also supports RFC-2190. If you use both Agora's H.263 codec library and Agora's RTP/RTCP stack, your integration task becomes easier.
Like H.261, the H.263 specifications define how to decode the video stream, the H.263 encoder is left up to the developer's discretion. Agora has made many improvements to the encoder in order to improve the viewer's experience of the picture. One example is that Agora will perceptually encode the video frames so that the most important pixels get the highest priority over the data stream. This is especially important when using the H.263 codec over an analog phone line with a v.32 modem, or when using the H.263 codec on a mobile phone which has a limited bandwidth.
H.263 and other videoconferencing encoders and decoders are designed to operate in real-time on available, inexpensive processors because a video telephone call or video conference can tolerate only a very slight delay. Other video encoders do not run in real-time and do not need inexpensive processors because they are used to encode data to a disk or tape and only the decoder needs to run in real time.
A mode of H.263 is compatible with a mode of MPEG-4, and the two codecs use some of the same patents. MPEG-4 has a group, the MPEG-LA that will license the use of the MPEG codec. Its not clear that they collect royalties on H.263, they have stated in a telephone conversation that an MPEG-4 license covers H.263, but wouldn't say if that license was needed. Thier website makes only a couple of mentions of H.263 at this time, once in a list of patents, and once in a news release that says "In addition, a video plane with short header MPEG-4 Visual Simple profile signal is compliant with the H.263 baseline standard." However, the MPEG-LA (does LA mean "licensing authority" or "lawyer's association?) does not license the rights to Lucent's patents. And Lucent has sued Microsoft and other companies because of patent violations.
Agora Labs provides indemnity from Lucent patents with its H.263 codec.
Agora Labs is a premier H.263 codec IP stack module supplier, providing a video codec that has a small footprint and is fast. Agora prides themselves on their support which is unparalleled. Please contact us for more details.
The elemedia H.263 SDK is available as a binary module for use by system developers. It has been used in many systems, including Windows servers and workstations, and Linux servers and workstations. An H.263 .DLL is available off-the-shelf.