Revel, the Really Easy Video Encoding Library
Copyright (c) 2004 Cort Stratton (cort at cortstratton dot org)
Another Fine Product from Your Friends At Dangerware
Questions? Check the Revel
- 12/9/2004: Version 1.1.0 has been released! This
release adds the ability to encode audio streams as well as
video, and adds a few safety-related functions which every Revel
application should get in the habit of using. I've also put up
some online documentation for
the Revel API. Enjoy!
- 10/30/2004: I've added an online FAQ for
Revel. If you don't see your question listed there, please ask
me! Turn your unasked question into a frequently asked
- 10/26/2004: Version 1.0.1 has been released! This
release fixes some serious compatibility problems on the Cygwin
and DJGPP platforms. Many thanks to Julien Monville for finding
and fixing these bugs!
- 10/18/2004: Revel has been selected for participation
in the IBM Linux on
POWER open source developer challenge. I'm not clear on the
details exactly, but it sounds like you can enter, port Revel
(or one of the dozens of other projects) to the LinuxPPC
platform, and maybe win an Apple G5 computer! Check the contest
site for full details.
Revel is a library designed to be the shortest, simplest path
between your application and high-quality well-compressed video
output. Any program that generates a series of successive images
(e.g. video games, 3D graphics applications, media players,
animation packages) can use Revel to output a compressed AVI
video, without having to know hardly anything about the
overwhelming esoterica of video encoding. Revel is implemented in
C++, but the public API is in plain old C for maximum
- The most straightforward video encoding library you're
likely to find, anywhere.
- High-quality, high-compression MPEG-4 video encoding based
on the XviD codec
(translation: Revel makes really pretty, really small videos
that most people can watch without downloading special
Revel has been tested on Windows XP and Linux.
In order to compile Revel, you must have already compiled and
installed the XviD
Compiling Revel under Windows is not recommended for the
impatient or faint of heart. To be more specific, compiling
XviD under Windows is kind of a pain, and Revel requires
XviD. A binary distribution of the Revel libraries for Win32
(compiled with MSVC .NET 2003) is also available, which is
statically linked against xvidcore 1.0.2, so you can really just
plug and play.
Revel is distributed as source
code and pre-compiled
binaries. Take your pick!
Online documentation for
Revel is available (generated by Doxygen). The reveltest.cpp file
(located in Revel's src directory) provides a complete
example of Revel in action. For more details about the options
available, consult the revel.h header file.
It's worth mentioning that the AVI files created by Revel are
encoded with the XviD codec (a variant of DivX, itself a specific
implementation of MPEG-4 -- but see, this is exactly the sort of
crap that Revel aims to help you avoid). In order to view them,
you need to have a video player capable of playing DivX video:
- Windows Media Player 10 apparently supports DivX right out
of the box. Make sure your copy is up to date using Windows Update.
- Divx.com has
players available for Windows and MacOS.
- I don't know about Unix options. I only use Unix over a
command-line these days. However, Google
is (as always) your friend.