You are here: The Oldskool PC/Who is this guy?/Trixter: The Compleat Works/Helpful Resources/MPEG-1/A Comparison of Software MPEG Encoders for the Windows Platform

A Comparison of Software MPEG Encoders for the Windows Platform
by Trixter

This file was last modified on 19990219

This text is more than five years out of date and contains incorrect information. It will not be updated or corrected; it is included here for historical/archival purposes only. You are urged to instead check out the much better guides at doom9.org and dvdhelp.com.

Introduction:

I've been trying to find a comparison of software MPEG encoders for a
long time; I want to make VideoCDs and MPEG-1 clips for CDROM
distribution out of the MJPEG captures I make with my Iomega Buz.  After
searching for a couple of weeks and finding nothing out there, I decided
to simply download the eval versions of all the software encoders I
could find and try them with some sample bitstreams.  I've compiled my
results here so that others won't have to go through the same hell that
I did.  :-)

Testing Focus/Procedures:

I tested the Xing MPEG Encoder (v 2.20), Darim's DVMPEG (v4.36 beta),
Ligos' LSX-MPEG (2.5), and Digigami's MegaPEG, all commercial encoders.
I also tested the nicer-than-expected freeware AVI2MPEG.  My emphasis in
testing was "MPEG on a budget", which means that, other than the fact
that I use Adobe Premiere 4.2, I didn't have a ton of money to spend
on hard drive space.  In other words, I didn't really want to render 8
gigabytes of .AVI files to pass to the encoders if I didn't have to.

All testing was done with very little changes to the default
configuration of each encoder (just because *I* know how to tweak I/P/B
frame bitrate percentages and GOPs doesn't mean that *you* will want to
mess around with them;-).  All streams were 30-second 352x240x30fps,
with 44.1KHz 16-bit mono audio as input (I have a mono VCR).  I told
each encoder to create an "NTSC-like" stream--112 kbits/sec mono audio,
1098 kbits/sec video, which would result in an output rate of about 140
kilobytes (140K) per second.

The machine used for encoding was a Pentium Pro 200MHz, and all the
encoders compressed a 30-second (900 frame) clip in about 6 minutes.
The two exceptions were the free AVI2MPEG, which took 12 minutes, and
Digigami's MegaPEG, which took almost half an hour.  Bitstream quality
was tested in Microsoft's most recent version of Media Player
(DirectShow 5.0, ActiveMovie 2.0, or whatever you want to call it) and
ATI's MPEG Video Player.  Both players used the YUV->RGB hardware
acceleration feature of my display card to play back all the streams at
the full framerate with no dropped frames, dithering, artifacts, etc.

Caveats:  My PPro is NOT an MMX machine, and several of these encoders
claim even faster encoding times when you have MMX; YMMV.  Also, some of
these encoders support the creation of DVD MPEG-2 files, but even though
I have the ability to feed it a full NTSC stream for testing, I do not
have any way of playing DVD files, so I didn't test this.

Detailed Comparisons:

AVI2MPEG: It's absolutely free, which is great if you want to fool
around with MPEG before spending actual money on a commercial encoder.
It can also create VideoCD-compliant bitstreams, since that's what the
author originally wrote it for.  Fairly slow; almost the slowest in the
bunch.  Picture quality was okay, but the motion-estimation algorithm
needs work; there were several stationary objects that "jumped and
twitched" on occaision.  Not available as a Premiere plug-in.

Xing MPEG Encoder: Has good picture quality and motion estimation.
An excellent free companion Premiere plug-in can create an MPEG
file directly from the construction window (no final rendered clip
needed)--MAJOR space/time saver.  Comes with presets for NTSC, PAL,
FILM, VideoCD, and other common targets.  Only drawback is some slight
chrominance bleeding--some output appears slightly "murky" or "greenish".

DVMPEG: A unique advantage of DVMPEG is that it installs as a Video
For Windows CODEC, so no final clip is needed; just render from any
VFW-compliant program using DVMPEG as the codec, and voila--you have an
MPEG file.  This is quite useful, but is an advantage sadly lost by a
major flaw: The picture quality and motion-estimation is fairly bad.
With noticable artifacts around higher-contrast area and jittering
stationary objects, it was completely unacceptable for VideoCD production.
The settings that should have caused major enhancements to picture quality
(I/P/B frame bitrate percentage weights, for example) didn't seem to
help, and there was no noticable motion-estimation improvement after
tweaking that as well.  Toggling between half- and full-pixel motion
vectors didn't seem to affect results.  Unless you can ONLY work with
VFW CODECs, stay away from this one.

LSX-MPEG: Has great picture quality and fantastic motion estimation--there
was practically no jitter at all in background and stationary objects.
It also has a neat running "quality level" rating during and after
encoding, so you can get a feel for how well it performed, see what
frames it had difficulty with, etc.  Has many options; one of the more
clever ones was the ability to skip P and/or B frames for creating sharp
low-bitrate content.  Not currently available as a Premiere plug-in.

MegaPEG: Produced nice output with good picture quality and acceptble
motion-estimation, but was the slowest of the bunch.  It's also
extremely expensive, at about $400 a copy.  It has the option to install
as a Premiere plug-in, but it's not a *true* plug-in--it lets you export
final rendered clips, which is really just an Export function and not an
embedded encoding process.  It's the most tunable of the bunch, and was
able to create very small files for Internet distribution.  It also
tended to produce files that played back inconsistently (dropping
frames, etc. when all other output streams played fine) due to slightly
weird system stream multiplexing; the output file size was also larger
than the rest for the same reason.

Editor's Choice:

In my opinion, Xing was the winner, with Ligos close behind.  The price
is a little steep, but the encoding speed is good, many of the
bitstream parameters are tweakable, it has several useful presets
for most applications including VideoCD, and its picture quality
and motion-estimation algorithms are quite acceptable for VideoCD
production if you have clean input.  Best of all, the free companion
Premiere plug-in was a *true* plug-in, which made MPEG files from a
fully prepared construction window without requiring any "final clips"
or explicit pre-rendering.

A very close second would have to be Ligos' LSX-MPEG encoder.  It only
accepts .AVI files as input, which prevents it from being useful for
my purposes, but the picture quality was *better* than Xing's encoder,
with no chroma bleeding, and the motion-estimation algorithm is simply
outstanding in terms of speed and quality.

It is worth noting that Premiere 5.0 comes with an "LE" version of
Digigami's MegaPEG.  This wasn't my favorite, as it tended to produce
files with odd playback due to slightly "off" system stream
multiplexing... Hopefully, the version that comes with Premiere 5.0 has
some of these problems fixed.


[Oldskool Home] [Copyright and Usage] [Disclaimer] [Contact Me]

This page's content was last modified on Dec 21, 2015 4:31 pm.
If anything here has helped you, please consider donating to help keep this site alive.