Xvid is a video codec library following the MPEG-4 video coding standard,
specifically MPEG-4 Part 2 Advanced Simple Profile. It uses ASP features
such as b-frames, global and quarter pixel motion compensation, lumi masking,
trellis quantization, and H.263, MPEG and custom quantization matrices.
Xvid is a primary competitor of the DivX Pro Codec. In contrast with the DivX
codec, which is proprietary software developed by DivX, Inc., Xvid is free
software distributed under the terms of the GNU General Public License. This
also means that unlike the DivX codec, which is only available for a limited
number of platforms, Xvid can be used on all platforms and operating systems for
which the source code can be compiled. History
In January 2001, DivXNetworks founded OpenDivX as part of Project Mayo which
was intended to be a home for open source multimedia projects. OpenDivX was
an open-source MPEG-4 video codec based on a stripped down version of the
MoMuSys reference MPEG-4 encoder. The source code, however, was placed under a
restrictive license and only members of the DivX Advanced Research Centre had
write access to the project CVS. In early 2001, DARC member Sparky wrote an
improved version of the encoding core called encore2. This was updated several
times before, in April, it was removed from CVS without warning. The
explanation given by Sparky was "We decided that we are not ready to have it
in public yet." In July 2001, developers started
complaining about a lack of activity in the project; the last CVS commit was
several months old, bugfixes were being ignored, and promised documentation had
not been written. Soon after, DARC released a beta version of their
closed-source commercial DivX 4 codec, which was based on encore2, saying that
"what the community really wants is a Winamp, not a Linux." It was after this
that a fork of OpenDivX was created, using the latest version of encore2 that
was downloaded before it was removed. Since then, all the OpenDivX code has
been replaced and Xvid has been published under the GNU General Public
License. Patent issues
As an implementation of MPEG-4 Part 2, Xvid uses many patented technologies.
For this reason, Xvid 0.9.x versions were not licensed in countries where
these software patents are recognized. With the 1.0.x releases, a GNU GPL v2
license is used with no explicit geographical restriction. However, the
legal usage of Xvid may still be restricted by local laws.
Sigma Designs controversy In July 2002, Sigma Designs released an
MPEG-4 video codec called the REALmagic MPEG-4 Video Codec. Before long, people
testing this new codec found that it contained considerable portions of Xvid
code. Sigma Designs was contacted and confirmed that a programmer had based
REALmagic on Xvid, but assured that all GPL code would be replaced to avoid
copyright infringement. When Sigma Designs released the supposedly
rewritten REALmagic codec, the Xvid developers immediately disassembled it
and concluded that it still contained Xvid code, only rearranged in an attempt
to disguise its presence. The Xvid developers decided to stop work and go
public to force Sigma Designs to respect the terms of the GPL. After articles
were published in Slashdot and The Inquirer, in August 2002 Sigma Designs
agreed to publish their source code. Playing Xvid encoded files
Primarily due to concerns over patents, the official Xvid web site does not
provide binary versions of the Xvid codec. However, it does link to
supporting web sites that provide Video for Windows codecs for Microsoft
Windows. Xvid is not a video format – it is a
program for compressing and decompressing to the MPEG-4 ASP format.
Since Xvid uses MPEG-4 Advanced Simple Profile compression, any video that is
encoded with it is termed "MPEG-4 ASP video" – not "Xvid video" – and can
therefore be decoded with all MPEG-4 ASP compliant decoders. This includes a
large number of media players and decoders, in particular all the ones
based on the free/open source libavcodec library from FFmpeg.
Xvid encoded files can be written to a CD or DVD and played in some DivX
compatible DVD players and media players. However, Xvid can optionally
encode video with advanced MPEG-4 features that most DivX Certified
set-top players do not support. Files encoded with global motion compensation,
Qpel, MPEG quantization, multiple B-frames or files that exceed the VBV
limitations may not play back properly on DivX Certified hardware devices.
For example, Xvid specifies three warp points for its implementation of global
motion compensation as opposed to the single warp point implementation of
DivX. Enabling some of the more advanced encoding features can compromise player
compatibility. Some issues exist with the custom quantization matrices used in
tools such as AutoGK that automate encoding with Xvid. This can produce
videos that have unstable playback and artifacts. However, most recent model
DivX compatible DVD players have improved support for custom quantization
matrices. Encoding applications
See also List of codecs
Comparison of video codecs References
External links Xvid.org web site
Xvid Setup/Reference Guide @ Digital Digest
Xvid Binary Download Page - Links to Windows/Linux binaries on the official
site Xvid Source Code Download Page -
includes daily snapshots on the official site
Xvid QuickTime Component - unofficial Xvid component for Mac OS X