Agora Labs H.264 AVC Soft-Codec

The Agora Labs elemedia H.264 AVC (Advanced Video Coding) Codec has been developed by former Bell Labs engineers and scientists.  The leader of this group is a former Bell Lab's Fellow.  The H.264 AVC standard and the MPEG-4 Mode 10 standard are jointly maintained so that they have the same content, and the codecs are interoperable.

The H.264 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.264 is not compatible with other H-series codecs.  In fact, H.264 uses slices rather than macroblocks.  This behavior is very evident when you lower the bandwidth the codec is allowed to use to a few killobits because you can easily see the H.264 slices and H.261 or H.263 macroblocks.  While H.261 and the H.263 family of codecs use similar algorithms, H.264 is completely different. 

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.263v2 softcodec was designed to run on IP based networks.  The Agora elemedia H.263v2 codec can output packets that conform to RFC 3016, "RTP Payload Format for MPEG-4 Audio/Visual Streams."  Agora's RTP stack also supports RFC-3016.  If you use both Agora's H.264 codec library and Agora's RTP/RTCP stack, your integration task becomes easier.

Unlike H.261 and H.263v1/v2/v3, the H.264 specifications define how to encode and decode the video stream.  However there are still some options available to the developer, and Agora has made many improvements 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.264 codec over an analog phone line with a v.32 modem, or when using the H.264 codec on a mobile phone which has a limited bandwidth.

H.264 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.

Because H.264 AVC and MPEG-4 mode 10 use the same patents, royalty payments are collected by the MPEG-LA group.  These royalties are for use of the patents (ie the patent rights), not for the use of the software. 

Agora Labs is a premier H.264 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.264 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.264 .DLL is available off-the-shelf.