Skip to content

Divx Vs Xvid Comparison Essay

Α video codec is software or a device that provides encoding and decoding for digital video, and which may or may not include the use of video compression and/or decompression.

The compression may employ lossy data compression, so that quality-measurement issues become important. Shortly after the compact disc became widely available as a digital-format replacement for analog audio, it became feasible to also store and use video in digital form. A variety of technologies soon emerged to do so. The primary goal for most methods of compressing video is to produce video that most closely approximates the fidelity of the original source, while simultaneously delivering the smallest file-size possible. However, there are also several other factors that can be used as a basis for comparison.

Introduction to comparison[edit]

The following characteristics are compared in video codecs comparisons:

  • Video quality per bitrate (or range of bitrates). Commonly video quality is considered the main characteristic of codec comparisons. Video quality comparisons can be subjective or objective.
  • Performance characteristics such as compression/decompression speed, supported profiles/options, supported resolutions, supported rate control strategies, etc.
  • General software characteristics – for example:
    • Manufacturer
    • Supported OS (Linux, macOS, Windows)
    • Version number
    • Date of release
    • Type of license (commercial, free, open source)
    • Supported interfaces (VfW, DirectShow, etc.)
    • Price (value for money, volume discounts, etc.)

Video quality[edit]

The quality the codec can achieve is heavily based on the compression format the codec uses. A codec is not a format, and there may be multiple codecs that implement the same compression specification – for example, MPEG-1 codecs typically do not achieve quality/size ratio comparable to codecs that implement the more modern H.264 specification. But quality/size ratio of output produced by different implementations of the same specification can also vary.

Each compression specification defines various mechanisms by which raw video (in essence, a sequence of full-resolution uncompressed digital images) can be reduced in size, from simple bit compression (like Lempel-Ziv-Welch) to psycho-visual and motion summarization, and how the output is stored as a bit stream. So long as the encoder component of the codec adheres to the specification it can choose any combination of these methods to apply different parts of the content. The decoder component of a codec that also conforms to the specification recognises each of the mechanisms used, and thus interprets the compressed stream to render it back into raw video for display (although this will not be identical to the raw video input unless the compression was lossless). Each encoder implements the specification according to its own algorithms and parameters, which means that the compressed output of different codecs will vary, resulting in variations in quality and efficiency between them.

Prior to comparing codec video-quality, it is important to understand that every codec can give a varying degree of quality for a given set of frames within a video sequence. Numerous factors play a role in this variability. First, all codecs have a bitrate control mechanism that is responsible for determining the bitrate and quality on a per-frame basis. A difference between variable bitrate (VBR) and constant bitrate (CBR) creates a trade-off between a consistent quality over all frames, on the one hand, and a more constant bitrate, which is required for some applications, on the other. Second, some codecs differentiate between different types of frames, such as key frames and non-key frames, differing in their importance to overall visual quality and the extent to which they can be compressed. Third, quality depends on prefiltrations, which are included on all present-day codecs. Other factors may also come into play.

For a sufficiently long clip, it is possible to select sequences that have suffered little from the compression, and sequences that have suffered heavily, especially if CBR has been used, whereby the quality between frames can vary highly due to different amounts of compression needed to achieve a constant bitrate. So, in a given long clip, such as a full-length movie, any two codecs may perform quite differently on a particular sequence from the clip, while the codecs may be approximately equal (or the situation reversed) in quality over a wider sequence of frames. Press-releases and amateur forums sometimes select sequences known to favor a particular codec or style of rate-control in reviews.[citation needed]

Objective video quality[edit]

Main article: Video quality

Objective video evaluation techniques are mathematical models that seek to predict human judgments of picture quality, as often exemplified by the results of subjective quality assessment experiments. They are based on criteria and metrics that can be measured objectively and automatically evaluated by a computer program. Objective methods are classified based on the availability of an original pristine video signal, which is considered to be of high quality (generally not compressed). Therefore, they can be classified as:

  • Full reference methods (FR), where the whole original video signal is available
  • Reduced reference methods (RR), where only partial information of the original video is available, and
  • No-reference methods (NR), where the original video is not available at all.

Subjective video quality[edit]

Main article: Subjective video quality

This is concerned with how video is perceived by a viewer, and designates their opinion on a particular video sequence. Subjective video quality tests are quite expensive with regard to time (preparation and running) and human resources.

There are many ways of showing video sequences to experts and recording their opinions. A few of them have been standardized, mainly in ITU-R Recommendation BT.500-13 and ITU-T Recommendation P.910.

The reason for measuring subjective video quality is the same as for measuring the Mean Opinion Score for audio. Opinions of experts can be averaged, and the average mark is usually given with confidence interval. Additional procedures can be used for averaging. For example, experts who give unstable results may be rejected (for instance, if their correlation with average opinion is low).

In case of video codecs, this is a very common situation. When codecs with similar objective results show results with different subjective results, the main reasons can be:

  • Pre- and postfilters are widely used in codecs. Codecs often use prefilters such as video denoising, deflicking, deshaking, etc. Denoising and deflicking normally maintain PSNR value while increasing visual quality (the best slow denoising filters also increase PSNR on medium and high bitrates). Deshaking greatly decreases PSNR, but increases visual quality. Postfilters show similar characteristics — deblocking and deringing maintain PSNR, but increase quality; graining (suggested in H.264) essentially increases video quality, especially on big plasma screens, but decreases PSNR. All filters increase compression/decompression time, so they enhance visual quality but decrease the speed of coding and decoding.
  • Motion estimation (ME) search strategy can also cause different visual quality for the same PSNR. So-called true motion search commonly will not reach minimum sum of absolute differences (SAD) values in codec ME, but may result in better visual quality. Such methods also require more compression time.
  • Rate control strategy. VBR commonly cause better visual quality marks than CBR for the same average PSNR values for sequences.

It is difficult to use long sequences for subjective testing. Commonly, three or four ten-second sequences are used, while full movies are used for objective metrics. Sequence selection is important — those sequences that are similar to the ones used by developers to tune their codecs are more competitive.

Performance comparison[edit]

Speed comparison[edit]

Main article: Frame rate

Number of frames per second (FPS) commonly used for compression/decompression speed measurement.

The following issues should be considered when estimating probable codec performance differences:

  • Decompression (sometimes compression) frame time uniformity – Big differences in this value can cause annoyingly jerky playback.
  • SIMD support by processor and codec — E.g., MMX, SSE, SSE2, each of which change CPU performance on some kinds of tasks (often including those with which codecs are concerned).
  • Multi-threading support by processor and codec – Sometimes[when?] turning on Hyper-threading support (if available on a particular CPU) causes codec speed to decrease)
  • RAM speed – generally important for most codec implementations
  • Processor cache size – low values sometimes cause serious speed degradation, e.g. for CPUs with low cache such as several of the Intel Celeron series.
  • GPU usage by codec — some codecs can drastically increase their performance by taking advantage of GPU resources.

So, for example, codec A (being optimized for memory usage – i.e., uses less memory) may, on modern computers (which are typically not memory-limited), give slower performance than codec B. Meanwhile, the same pair of codecs may give opposite results if running on an older computer with reduced memory (or cache) resources.

Profiles support[edit]

Main article: H.264

Modern standards define a wide range of features and require very substantial software or hardware efforts and resources for their implementation. Only selected profiles of a standard are typically supported in any particular product. (This is very common for H.264 implementations for example.)

The H.264 standard includes the following seven sets of capabilities, which are referred to as profiles, targeting specific classes of applications:

  • Baseline Profile (BP): Primarily for lower-cost applications with limited computing resources, this profile is used widely in videoconferencing and mobile applications.
  • Main Profile (MP): Originally intended as the mainstream consumer profile for broadcast and storage applications, the importance of this profile faded when the High profile (HiP) was developed for those applications.
  • Extended Profile (XP): Intended as the streaming video profile, this profile has relatively high compression capability and some extra tricks for robustness to data losses and server stream switching.
  • High Profile (HiP): The primary profile for broadcast and disc storage applications, particularly for high-definition television applications. (This is the profile adopted into HD DVD and Blu-ray Disc, for example.)
  • High 10 Profile (Hi10P): Going beyond today's mainstream consumer product capabilities, this profile builds on top of the High Profile, adding support for up to 10 bits per sample of decoded picture precision.
  • High 4:2:2 Profile (Hi422P): Primarily targeting professional applications that use interlaced video, this profile builds on top of the High 10 Profile, adding support for the 4:2:2 chroma sampling format while using up to 10 bits per sample of decoded picture precision.
  • High 4:4:4 Predictive Profile (Hi444PP): This profile builds on top of the High 4:2:2 Profile, supporting up to 4:4:4 chroma sampling, up to 14 bits per sample, and additionally supporting efficient lossless region coding and the coding of each picture as three separate color planes.
  • Multiview High Profile: This profile supports two or more views using both inter-picture (temporal) and MVC inter-view prediction, but does not support field pictures and macroblock-adaptive frame-field coding.

The standard also contains four additional all-Intra profiles, which are defined as simple subsets of other corresponding profiles. These are mostly for professional (e.g., camera and editing system) applications:

  • High 10 Intra Profile: The High 10 Profile constrained to all-Intra use.
  • High 4:2:2 Intra Profile: The High 4:2:2 Profile constrained to all-Intra use.
  • High 4:4:4 Intra Profile: The High 4:4:4 Profile constrained to all-Intra use.
  • CAVLC 4:4:4 Intra Profile: The High 4:4:4 Profile constrained to all-Intra use and to CAVLC entropy coding (i.e., not supporting CABAC).

Moreover, the standard now also contains three Scalable Video Coding profiles.

  • Scalable Baseline Profile: A scalable extension of the Baseline profile.
  • Scalable High Profile: A scalable extension of the High profile.
  • Scalable High Intra Profile: The Scalable High Profile constrained to all-Intra use.

An accurate comparison of codecs must take the profile variations within each codec into account.

See also MPEG-2 Profiles and Levels.

Supported rate control strategies[edit]

Main article: Rate distortion theory

Videocodecs rate control strategies can be classified as:

Variable bitrate (VBR) is a strategy to maximize the visual video quality and minimize the bitrate. On fast-motion scenes, a variable bitrate uses more bits than it does on slow-motion scenes of similar duration, yet achieves a consistent visual quality. For real-time and non-buffered video streaming when the available bandwidth is fixed – e.g. in videoconferencing delivered on channels of fixed bandwidth – a constant bitrate (CBR) must be used.

CBR is commonly used for videoconferences, satellite and cable broadcasting. VBR is commonly used for video CD/DVD creation and video in programs.

Software characteristics[edit]

Codecs list[edit]

CodecCreator/MaintainerFirst public release dateLatest stable versionLicensePatented compression formatsCompression methodOpenCL supportnVidiaCUDA supportATI Stream/AMD APP supportIntelAVX supportIntelQuick Sync Video support
libtheora (Theora)Xiph.org2002-09-251.1.1 (2009)[1]BSD-style[2]Patented, but freely licensed[*]lossyUnknownUnknownUnknownUnknownUnknown
dirac-research (Dirac)BBC Research Department2008-09-171.0.2 (2009)[3]MPL 1.1, GNU GPL 2, GNU LGPL 2.1nonelossy/losslessUnknownUnknownUnknownUnknownUnknown
Schrödinger (Dirac)David Schleef2008-02-221.0.11 (2012)[3]MPL 1.1, GNU GPL 2, GNU LGPL 2, MIT Licensenonelossy/losslessUnknownYesUnknownUnknownUnknown
x264x264 team20032638(2015)[4]GNU GPLMPEG-4 AVC/H.264lossy/losslessYesNoNoYesUnknown
x265x265 team20132.4+9(2017)[5]GNU GPLHEVC/H.265lossy/losslessYesYesYesYesUnknown
XvidXvid team20011.3.5 (2017)[6]GNU GPLMPEG-4 ASPlossyUnknownUnknownUnknownUnknownUnknown
FFmpeg (libavcodec)FFmpeg team20003.4.0 (2017 Oct 15)[7]GNU LGPLMPEG-1, MPEG-2, MPEG-4 ASP, H.261, H.263, VC-3, WMV7, WMV8, MJPEG, MS-MPEG-4v3, DV, Sorenson codec etc.lossy/losslessNoNoNoYesNo
FFavs (libavcodec)FFavs team20090.0.3[8]GNU LGPLMPEG-1, MPEG-2, MPEG-4 ASP etc.lossy/losslessUnknownUnknownUnknownUnknownUnknown
BlackbirdForbidden Technologies plc2006-012ProprietaryBlackbirdlossyUnknownUnknownUnknownUnknownUnknown
DivXDivX, Inc.2001DivX Plus (2010)[9]ProprietaryMPEG-4 ASP, H.264lossyUnknownUnknownUnknownUnknownYes[10]
DivX ;-)a hack of Microsoft's MPEG-4v3 codec[11][12]19983.20 alpha[13] (2000)ProprietaryMicrosoft's MPEG-4v3 (not MPEG-4 compliant)lossyUnknownUnknownUnknownUnknownUnknown
3ivx3ivx Technologies Pty. Ltd.20015.0.5 (2012)[14]ProprietaryMPEG-4 ASPlossyUnknownUnknownUnknownUnknownUnknown
Nero DigitalNero AG2003UnknownProprietaryMPEG-4 ASP, H.264[15]lossyUnknownUnknownUnknownUnknownUnknown
ProRes 422 / ProRes 4444Apple Inc.2007ProprietaryUnknownlossyUnknownUnknownUnknownUnknownUnknown
Sorenson VideoSorenson Media1998ProprietarySorenson VideolossyUnknownUnknownUnknownUnknownUnknown
Sorenson SparkSorenson Media2002ProprietarySorenson SparklossyUnknownUnknownUnknownUnknownUnknown
VP3On2 Technologies2000BSD-style[2]Patented, but freely licensed[*]lossyUnknownUnknownUnknownUnknownUnknown
VP4On2 Technologies2001ProprietaryVP4lossyUnknownUnknownUnknownUnknownUnknown
VP5On2 Technologies2002ProprietaryVP5lossyUnknownUnknownUnknownUnknownUnknown
VP6On2 Technologies2003ProprietaryVP6lossyUnknownUnknownUnknownUnknownUnknown
VP7On2 Technologies2005ProprietaryVP7lossyUnknownUnknownUnknownUnknownUnknown
libvpx (VP8)On2 Technologies (now owned by Google)20081.1.0 (2012)BSD-stylePatented, but freely licensedlossyUnknownUnknownUnknownUnknownUnknown
libvpx (VP9)Google2013BSD-stylePatented, but freely licensedlossy/losslessUnknownUnknownUnknownUnknownUnknown
DNxHDAvid Technology2004ProprietaryVC-3lossyUnknownUnknownUnknownUnknownUnknown
Cinema Craft Encoder SP2Custom Technology Corporation20001.00.01.09 (2009)[16]ProprietaryMPEG-1, MPEG-2lossyUnknownUnknownUnknownUnknownUnknown
TMPGEnc Free VersionPegasys Inc.20012.525.64.184 (2008)[17]ProprietaryMPEG-1, MPEG-2lossyUnknownUnknownUnknownUnknownUnknown
Windows Media EncoderMicrosoft19999 (2003) (WMV3 in FourCC)ProprietaryWMV, VC-1, (in early versions MPEG-4 Part 2 and not MPEG-4 compliant MPEG-4v3, MPEG-4v2)lossyUnknownUnknownUnknownUnknownUnknown
CinepakCreated by SuperMac, Inc.

Currently maintained by Compression Technologies, Inc.[18]

19911.10.0.26 (1999)ProprietaryUnknownlossyUnknownUnknownUnknownUnknownUnknown
Indeo VideoIntel Corporation, currently offered by Ligos Corporation19925.2ProprietaryIndeo VideolossyUnknownUnknownUnknownUnknownUnknown
TrueMotion SThe Duck Corporation1995ProprietaryTrueMotion SlossyUnknownUnknownUnknownUnknownUnknown
RealVideoRealNetworks1997RealVideo 10[19]ProprietaryH.263, RealVideolossyUnknownUnknownUnknownUnknownUnknown
HuffyuvBen Rudiak-Gould20002.1.1 (2003)[20]GNU GPL 2noneLosslessUnknownUnknownUnknownUnknownUnknown
LagarithBen Greenwood2004-10-041.3.27 (2011-12-08)[21]GNU GPL 2noneLosslessUnknownUnknownUnknownUnknownUnknown
MainConceptMainConcept GmbH19938.8.0 (2011)ProprietaryMPEG-1, MPEG-2, H.264/AVC, H.263, VC-3, MPEG-4 Part 2, DV, MJPEG etc.lossyYes[22]Yes[23][24]UnknownUnknownYes[25]
ElecardElecard2008G4 (2010)[26]ProprietaryMPEG-1, MPEG-2, MPEG-4, AVClossyNoYes[26]NoYes[26]Yes[26]
CodecCreator/MaintainerFirst public release dateLatest stable versionLicensePatented compression formatsCompression methodOpenCL supportnVidiaCUDA supportATI Stream/AMD APP supportIntelAVX supportIntelQuick Sync Video support
  • The Xiph.Org Foundation has negotiated an irrevocable free license to Theora and other VP3-derived codecs for everyone, for any purpose.[27]
  • DivX Plus is also known as DivX 8. The latest stable version for Mac is DivX 7 for Mac.

Native operating system support[edit]

Note that operating system support does not mean whether video encoded with the codec can be played back on the particular operating system – for example, video encoded with the DivX codec is playable on Unix-like systems using free MPEG-4 ASP decoders (FFmpeg MPEG-4 or Xvid), but the DivX codec (which is a software product) is only available for Windows and macOS.

Technical details[edit]

  • Theora streams with different frame rates can be chained in the same file, but each stream has a fixed frame rate.[30]

Freely available codecs comparisons[edit]

List of freely available comparisons and their content description:

Name of comparisonType of comparisonDate(s) of publicationList of compared codecsComments
Series of Doom9 codec comparisonsSeries of subjective comparison of popular codecs
  • DivX4.12, On2 VP3, XviD 1/25 and WMV8 and DivX5.01, XviD 3/27 and ON2 VP4 — at first version
  • Dirac, Elecard AVC HP, libavcodec MPEG-4, NeroDigital ASP, QuickTime 7, Snow, Theora, VideoSoft H.264 HP, XviD 1.1 beta 2 — in last one
Subjective comparison with convenient visualization
Series of MSU annual H.264 codecs comparisonsSeries of objective H.264 codecs comparisons with MPEG-4 ASP reference
  • 2004
  • 2005 Jan.
  • 2005 Dec.
  • 2006 Dec.
  • 2007 Dec.
  • 2009 May
  • 2010 Apr.
  • 2005 (Jan.): Mpegable AVC, Moonlight H.264, MainConcept H.264, Fraunhofer IIS, Ateme MPEG-4 AVC/H.264, Videosoft H.264, DivX Pro 5.1.1 (Not 264! Used for comparison with H.264 codecs as well tuned codec from previous generation MPEG-4 ASP)
  • 2005 (Dec.): DivX 6.0 (MPEG-4 ASP reference), ArcSoft H.264, Ateme H.264, ATI H.264, Elecard H.264, Fraunhofer IIS H.264, VSS H.264, x264
  • 2006: DivX 6.2.5 (MPEG-4 ASP reference), MainConcept H.264, Intel H.264, VSS H.264, x264, Apple H.264, (partially), Sorenson H.264 (partially)
  • 2007: XviD (MPEG-4 ASP codec), MainConcept H.264, Intel H.264, x264, AMD H.264, Artemis H.264
  • 2009: XviD (MPEG-4 ASP codec), Dicas H.264, Elecard H.264, Intel IPP H.264, MainConcept H.264, x264
  • 2010: XviD (MPEG-4 ASP codec), DivX H.264, Elecard H.264, Intel MediaSDK AVC/H.264, MainConcept H.264, Microsoft Expression, Encoder, Theora, x264
Detailed objective comparisons
Series of Lossless Video Codecs ComparisonTwo size and time comparisons of lossless codecs (with lossless checking)
  • 2004 (14 codecs): Alpary v2.0, AVIzlib v2.2.3, CamStudio GZIP v1.0, CorePNG v0.8.2, FFV1 ffdshow 08/08/04, GLZW v1.01, HuffYUV v2.1.1, Lagarith v1.0.0.1, LEAD JPEG v1.0.0.1, LOCO v0.2, MindVid v1.0 beta 1, MSUlab beta v0.2.4, MSUlab v0.5.2, PicVideo JPEG v.2.10.0.29, VBLE beta
  • 2007 (16 codecs): Alpary, ArithYuv, AVIzlib, CamStudio GZIP, CorePNG, FastCodec, FFV1, Huffyuv, Lagarith, LOCO, LZO, MSU Lab, PICVideo, Snow, x264, YULS
in 2007 — more detailed report with new codecs including first standard H.264 (x264)
MSU MPEG-4 codecs comparisonObjective comparison of MPEG-4 codecsDivX 5.2.1, DivX 4.12, DivX 3.22, MS MPEG-4 3688 v3, XviD 1.0.3, 3ivx D4 4.5.1, OpenDivX 0.3Different versions of DivX were also compared. The Xvid results may be erroneous, as deblocking was disabled for it while used for DivX.
Subjective Comparison of Modern Video CodecsScientifically accurate subjective comparison using 50 experts and SAMVIQ methodologyDivX 6.0, Xvid 1.1.0, x264, WMV 9.0 (2 bitrates for every codec)PSNR via VQM via SSIM comparison was also done
MPEG-2 Video Decoders ComparisonObjective MPEG-2 Decoders comparisonbitcontrol MPEG-2 Video Decoder, DScaler MPEG2 Video Decoder, Elecard MPEG-2 Video Decoder, ffdshow MPEG-4 Video Decoder (libavcodec), InterVideo Video Decoder, Ligos MPEG Video Decoder, MainConcept MPEG Video Decoder, Pinnacle MPEG-2 DecoderObjectly tested (100 times per stream) decoders "crash test" (test on damaged stream — like scratched DVD or satellite samples)
Codecs comparisonPersonal subjective opinion3ivx, Avid AVI 2.02, Cinepak, DivX 3.11, DivX 4.12, DivX 5.0.2, DV, Huffyuv, Indeo 3.2, Indeo 4.4, Indeo 5.10, Microsoft MPEG-4 v1, Microsoft MPEG-4 v2, Microsoft RLE, Microsoft Video 1, XviD, 3ivx, Animation, Blackmagic 10-bit, Blackmagic 8-bit, Cinepak, DV, H.261, H.263, Motion-JPEG, MPEG-4 Video, PNG, Sorenson Video, Sorenson Video 3Sometimes comparison is short (up to one text line per codec)
Evaluation of Dirac and TheoraScientific paperDirac, Dirac Pro, Theora I, H.264, Motion JPEG2000 (the tested codecs are from Q2-2008)Quite detailed comparison of software available in Q2-2008; However, a buggy version of ffmpeg2Theora was used
VP8 versus x264Objective and subjective quality comparison of VP8 and x264VP8, x264VQM, SSIM and PSNR for 19 CIF video clips with bitrates of 100, 200, 500 and 1000 kbit/s

See also[edit]

Notes and references[edit]

DivX and Xvid are competing MPEG4 compression formats. While DivX is arguably the more popular of the two, many gurus claim that Xvid offers quality improvements when compared to DivX. Curious, I decided to convert a movie using FairUseWizard and see for myself what the difference was. I chose six different scenes and attempted to take a screenshot at exactly the same point for comparision. Below are the results.

DivX Xvid

DivXXvid

DivXXvid

DivXXvid

DivXXvid

As you can see, neither comes out way ahead. I notice the biggest difference on the shot where the light is shining on his chest armor, and even then, I have to pay close attention to the detail to notice anything. Whether I would notice that at 30 frames per second might be another story.

I would say it all boils down to compatiblity. If DivX is actually more widely supported, then that’s the one I’d recommend. If all players that played DivX also played Xvid, I’d go with whatever one produced the smaller files given the extremely minor differences in quality.

Like this:

LikeLoading...