home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Geek 6
/
Geek-006.iso
/
video
/
conversores
/
mpgavi.exe
/
README.TXT
< prev
next >
Wrap
Text File
|
1999-11-10
|
27KB
|
553 lines
----------------------------------------------------------------------
MPEG2AVI.EXE v0.16B35 11/10/99 QUICK DOCUMENTATION
HOMEPAGE : http://members.xoom.com/mpeg2avi mpeg2avi@xoom.com
----------------------------------------------------------------------
MPEG2AVI - MPEG1/MPEG2-video -> AVI converter
1) Overview
2) System requirements
3) Known limitations
4) Future versions
5) What's NEW in this release
6) What's CHANGED in this release
7) A few command line examples
Don't forget to read these other important documents:
mpeg2avi.txt - User's Guide
sample.lst - "streamlist" sample file
ivtc.txt - inverse telecine information, incomplete!
vfw_yuv.txt - MPEG2AVI FAQ and YUV-AVI information
----------------------------------------------------------------------
1) Overview of MPEG2AVI's abilities :
----------------------------------------------------------------------
MPEG2AVI is a command-line utility that will convert an MPEG-1/2 video
bitstream to a Video For Windows AVI file. MPEG-audio conversion is
not supported, so audiostreams (if present) will be ignored. MPEG2AVI
can only convert one bitstream at a time (multi-file input is not
supported), with limited video processing during the conversion.
"mpeg2avi.txt" contains a (preliminary) user's manual
Input features -
MPEG2AVI accepts the following formats:
1) elementary MPEG-1 video bitstreams (*.M1V)
2) MPEG-1 system bitstreams (*.MPG), VideoCD (*.DAT)
3) elementary MPEG-2 MP@ML video bitstreams (*.M1V)
4) MPEG-2 system bitstreams (*.MPG), unencrypted DVD (*.VOB)
Additional support for (*.VOB) files
a) MPEG2AVI can start decoding at any LBA offset.
b) MPEG2AVI can read a group of VOB files as one continuous
stream
(see sample.lst on using streamlists with MPEG2AVI)
Decoding features -
MPEG2AVI is a derivative program of the MSSG MPEG-2 video codec
(MPEG2V12) Some features, such as scalable MPEG-2 support, have been
removed in favor of faster performace.
1) Optional reference-quality floating-point IDCT algorithm
IEEE1180-1990 64-bit double-precision FPU IDCT (slow)
*2) Standard high-quality MMX IDCT algorithm
IEEE1180-1990 32-bit MMX IDCT (fast)
3) Optional high-speed MMX IDCT algorithm (not IEEE1180
compliant)
4) accurate motion compensation routines (full-pel, half-pel)
(more accurate than XingMPEG/XingDVD player)
Processing features -
MPEG2AVI can perform the following operations on decoded video:
1) Centered cropping (X & Y), X & Y must be divisible by 8
2) Arbitrary downsizing (X & Y), X & Y must be divisible by 8
3) fast "half-resolution mode" (reduces decoded video to half its
original X & Y dimensions)
4) Inverse telecine (IVTC) function for better conversion of
film-material (24fps) coded @ MPEG-2 interlaced video (29.97)
5) Frame-skipping, every <nth> frame is deleted
6) Frame-range, a selected range of frames are processed
(useful for encoding a specific segment of a bitstream)
Output features -
MPEG2AVI can generate the following video files :
1) Video for Windows *.AVI
any VFW compressor which supports "RGB24"
uncompressed RGB24 AVI format
special YUV-output modes (YV12, YUY2) for faster AVI encoding
(the VFW compressor must support YV12/YUY2 input!)
----------------------------------------------------------------------
2) System Requirements
----------------------------------------------------------------------
Windows 9x/NT4 or later
Microsoft Video for Windows "Video Compression" library
32MB RAM
Pentium/MMX class processor (CPU must support MMX instructions)
On an Intel Celeron-450 PC, an MPEG-2 video (720x480) can be converted
directly (no video processing) to M-JPEG AVI at roughly 2/3 real-time
(15fps.) Resizing the decoded video degrades performance.
----------------------------------------------------------------------
3) KNOWN LIMITATIONS
----------------------------------------------------------------------
+ bad bitstreams can cause MPEG2AVI to crash
+ single-file input only (MPEG2AVI cannot convert a group of MPEG
files to one AVI file)
+ auto inverse telecine introduces visual artifacts during each coding
transition in the MPEG bitstream
+ no audio decoding
+ YUV AVI modes incompatible with some VFW compressors
+ codec-selection fails intermittently with Win2k systems
----------------------------------------------------------------------
4) FOR THE FUTURE
----------------------------------------------------------------------
+ Adobe Premiere Plug-In support
+ Closer study of the inverse-telecine operation
----------------------------------------------------------------------
5) What's *NEW* in this (pre)release
----------------------------------------------------------------------
+ Added IVTC "polarity" control ('-s0' - '-s9')
+ v0.16B34 experimental multithreaded read-ahead system.
The read-ahead system reads up to 256KB ahead of the current bitstream
Pointer. This should eliminate stalls induced by an empty read buffer.
+ v0.16B33 The default INT32 IDCT ('-r1') has been replaced with a faster
MMX32 iDCT. The MMX32 IDCT complies with IEEE-1180's accuracy
requirements. The older INT32 IDCT is still available as ('-r4'), but
it should be considered obsolete. The MMX32-IDCT is just as accurate,
and faster.
+ v0.16B31 auto inverse telecine function ('-s<n>d'), helps convert
"troublesome" MPEG-2 (VOB) bitstreams which contain both interlaced and
progressive video. Reduces "A/V drift", but does not eliminate
audio/video missync entirely :(
+ v0.16B3 streamlist implemented as a C++ object.
+ v0.16B24 stream-VOB input (multiple VOB files from a "streamlist"
'-b strlist.lst' ( 'strlist' = name of streamlist )
Tells MPEG2AVI to parse a list of files from 'strlist.lst', then
decode the files as a single continuous mpeg-bitstream.
See the sample streamlist file 'sample.lst', for more info
+ v0.16B23 MMX optimized CSC (YUV -> RGB), (faster '-o6' and '-o7')
For bitstreams of CHROMA420 format, all output modes <-o6 -o7 -o8 -o9>
are MMX optimized. Half-resolution ('-2') and crop ('-1 <x> <y>')
include MMX optimizations.
The downsizers -3X & -3Y, are not yet MMX :(
And of course HiQuality FIR filters ('-q0') are not MMX :(
+ v0.16B22 MMX optimizations, MPEG2AVI now requires an MMX-CPU!
+ v0.16B2 (Demuxer converted to C++, to support LBA seek, '-@ <lba>')
'-@ <lba>' - start @ LBA address (VOB demux only!)
Note, the specified LBA must contain a system header!
(otherwise the MPEG-decoder cannot sync)
'-b <filename> 0xID' - select stream-ID (VOB demux only!)
The StreamID is optional (default == 0xE0), if specified the
demuxer will decode video data from the specified stream ID.
'-*' - encode MPEG-data (watermark video),
The data will appear in the upper-left of the cropped area :
1) MPEG2AVI frame# (decoded frames, start from 0)
2) GOP timecode (MPEG GOP header time code XX:XX:XX:frame)
3) temporal reference (MPEG picture header)
4) address (LBA) of last valid SYSTEM HEADER (VOB only)
(Of this information, only (1), (2), and (4) are reliable.
The temporal reference is printed out-of-order (due to the
frame reordering performed by the MPEG-decoder.)
+ v0.16B1 (AVI-writer converted to C++, to support '-$ <n>' feature)
Several new features
'-$ <nnn>' - auto-split AVI-file after <nnn> megabytes are written
'-! <nnn>' - skip 1 frame per <nnn> decoded frames. (The nth frame
is decoded, but not sent to the output-routines.)
+ v0.15B51 hopefully fixed AVI-modes '-o8' and '-o9' (for real!)
added decoding-range control '-# <start> <end>'
(MPEG2AVI does not "seek" the starting-point, decodes and
examines every picture-header until it reaches the start-point.
You should expect MPEG2AVI to waste a lot of time reaching the
designated starting frame#.)
restored resize-granularity to 8 for all CHROMA modes (was 16 before)
+ v0.15B5 YUY2 AVI mode '-o9'
YUY2 mode has been successfully tested with PicVideo M-JPEG codec.
fixed KeyFrame-rate issue when Microsoft MPEG-4 codec is used with
the YUV AVI modes ('-o8' or '-o9')
+ v0.15B4 YV12 AVI mode '-o8'
Video-frames are sent to the video-codec as raw YUV bitmaps. YUV
mode is faster than the standard RGB24 mode.
---------------------------------------
6) *CHANGES* From Previous Versions
---------------------------------------
+ v0.16B35 moved cDemuxer to read-ahead thread, fixed resizer
"green-bar" bug introduced by B34. Auto-IVTC (-s0d, -s1d, etc.)
logic changed. It now uses "resume2"-mode.
+ MPEG2AVI v0.16B33 was supposed to default to the MMX32 IDCT, but
due to an error on my part, it still defaulted to the INT32 IDCT.
0.16B34 corrects this bug.
MPEG2AVI's file input is now handled using Win32 native filehandling
routines [ CreateFile(), ReadFile(), SetFilePointer(),
and CloseHandle() .]
+ The MMX IDCT functions ('-r2') and ('-r3') have been reworked.
The IEEE1180 test package revealed errors in the AAN. The reworked
MMXChen is slightly faster, and the MMX-AAN is less inaccurate.
Internal re-organization of certain source files (resizer, mpv_read)
All motion-compensation pel-cases use aligned reads.
Due to the new MMX32 IDCT ('-r1'), the older INT32 IDCT has been
moved to '-r4' (it's obsolete, so don't use it(
+ v0.16B32 MMX acceleration for vertical downsizing ('-3Y <y>')
Only the shrink420y() and shrink420xy() functions are MMX-optimized,
but so far I have not seen any 422 or 444 MPEG-2 bitstreams. The
MPEG-2 bitstream parser reads 32KB per call, and the VOB demuxer
reads 64KB per call. (This is 2X the buffering of previous versions.)
+ v0.16B31 better MMX optimization to the motion-compensation routines
most of the macroblock cases now read QWORD aligned addresses. The
auto-IVTC mode(s) have greater intelligence.
+ v0.16B3
The '-*' mpeg-statistics are more accurate. The temporal-reference
and GOP timecode should now be frame-accurate.
Altered user-interface routines to prevent MPEG2AVI from reading
"phantom keypresses."
The '-@ <lba>' option can now seek to *any block* within a stream.
(It is no longer limited to the file#1 of the streamlist.)
MPEG2AVI now searches the beginning of VOB files for a valid
system-header (this is equivalent to '-@ 0')
+ v0.16B24, the file-I/O routines now use _read(), _open(), & _close(),
(instead of fopen, fread, fclose.) The BBDMUX's bitstream package
has been further tweaked to waste less time reading from the input
file.
+ Starting v0.16B23, the LBA-seek command '-@ <lba>' enters the
bitstream at the user-specified LBA. If a system-header is not found,
MPEG2AVI scans forward in the VOB bitstream, until a header is
decoded. The '-@' no longer requires the "user's prior knowledge" of
these elusive system-headers.
The fastest MMX IDCT ('-r3') disables AVI-output. This was my
personal decision; I want MPEG2AVI to provide high-quality output,
and the AAN-IDCT function failed to deliver. If you really must have
light-speed VOB->AVI conversions, try something like XingDVD 2.0x and
Panasonic MPEG Encoder.
The crop command ('-1 <x> <y>') requires horizontal increment of 8,
vertical increment of 2.
Some cosmetic changes to AVi progress reporting.
+ Starting v0.16B22,
**** MPEG2AVI NOW REQUIRES AN MMX-CPU ****
'-q1' (fast-filter) is now the default filter-mode. Most fast-filters
have been MMX-optimized, while *none* of the HiQ filters are MMX. The
HiQ mode is still available ('-q0'), but without MMX-optimizations
obviously. The front-end BBDMUX demuxer has been sped-up.
The meaning of the option '-r' has changed. ('-r<n>' has replaced it)
'-r<n>' picks an IDCT-function. The IDCT-function greatly influences
MPEG2AVI's SPEED and QUALITY.
The precision-IDCT ('-r0') uses 64-bit FPU calculations (overkill)
The default IDCT ('-r1') uses 32-bit integer calculations.
The faster IDCT ('-r2') is a 16-bit MMX version of the above.
The fastest IDCT ('-r3') uses 16-bit MMX calculations (low quality)
'-r2' is probably the best compromise between speed and image quality.
Depending on the CPU model, '-r3' may or may not be faster.
The MPEG2decoder's internal motion-compensation routines are all MMX.
The format-converters (YUV420 -> YUV422, YUV420 -> YUV444 ) are also
MMX optimized. The RGB24 output mode (-o6, -o7) is still integer :(
+ Starting v0.16B2, the demuxer has been upgraded to BBDMUX v1.2. It is
now encapsulated in a C++ object
Due to the new VOB LBA-seek ('-@ <lba>') option, the behavior of the
frame-limit feature ('-# <start> <end>') depends on -@. The LBA-seek
opens the bitstream at the specified <lba>. The first frame seen by
the MPEG-decoder, is the first-frame at the <lba>. Hence, frame '0'
is the first-frame decoded *AFTER* the <lba>
+ Starting v0.16B1, the AVI-writer is a C++ object. C++ code executes
slower than plain C-code, so you may experience a very slight
performance decrease.
+ Starting v0.16B1, the AVI-writer always operates in auto-split mode.
The default size-threshold is 2047MB. If an AVI-file exceeds this
length, MPEG2AVI automatically closes the current AVI-file and
opens a new one. (MPEG2AVI picks an arbitrary filename for the new
AVI.) The '-$ <nnn>' option can be used to change the default
size-threshold.
+ Starting v0.15B51, the MPEG-frame counter has been relocated to the
MPEG-decoder ( Get_Hdr() in getpic.c ), this may cause some problems
with bad bitstreams (i.e. an MPEG Picture with 3-interlaced fields
will only register as one frame.)
+ Starting v0.15B5, MPEG2AVI's output-processor has been internally
restructured. The order of operations is as follows :
Order: 1) 2) 3) 4)
|MPEG-decoder| -> | Resizer | -> | Half-resolution | -> | Crop & CSC |
MPEG2V12 (-3X, -3Y) ( -2) (-1 xxx yyy)
Note, these modifications affect the usage of -3X and -3Y (downscaling.)
The target-size for -3X or -3Y is always with respect to the MPEG-video
resolution. (In prior versions of MPEG2AVI, -3X and -3Y depended on
half-resolution mode '-2'.)
The -1 and -2 commands function as before.
(The resize-operation is now performed *first*. MPEG2AVI handles the
MPEG-frames in their native format. Color-space & pixel-format
conversion are now performed last, if necessary.)
+ Starting v0.15B4, the AVI-filewriter opens the codec-dialog with
ICCompressorChoose() instead of AVISaveOptions(). This is needed to
set the codec's input-format to YV12. This programming change
shouldn't affect the older ('-o7') RGB24 AVI mode.
+ Starting v0.15, half-res output ('-2') defaults to a low-pass (HiQ)
filter. This filter is slower than the pixel-averaging downsampler.
+ The older pixel-averager is now known as "fast filter."
The fast-filter can be activated via ('-q1')
+ AVI-writer now reports "MPEG Frame # : ". It used to report the output
frame#, causing confusion with the IVTC (since the IVTC deletes
frames.)
+ Starting v0.14, the AVI-writer uses a 32-bit integer IDCT, which is
up to 3X faster than the FP-IDCT. The FP-IDCT can still be used
via the command-line option "-r".
+ Starting v0.13, AVI-writing can be safely aborted. Type 'Q' to abort
the encoder. The AVI file will be properly closed (and readable.)
Unfortunately, aborted encoding jobs cannot be "resumed."
---------------------------------------
7) New Command-line usage examples (v0.15)
---------------------------------------
The abbreviation "pproc" means "post-processor"
1) MPEG2AVI.EXE -b titanic.vob -f0 -2 -1 352 240 -o9 tit_mjpg.avi -r2
-f0 -> AVI-writer : set 23.976fps, decoder : use frame-mode
-2 -> pproc half-resolution output mode
-1 -> crop the image (360x240) to 352x240
-o9 -> AVI-writer (YUY2 mode)
-r2 -> 16-bit MMX IDCT (fast, reasonable accuracy)
2) MPEG2AVI.EXE -b gotmail16_9.vob -f0 -3Y 416 -q1 -o8 gotmail4_3.avi
-o8 -> AVI-writer (YV12 mode)
-q1 -> pproc : set "fast filter"
-3Y -> pproc : downscale HEIGHT -> 416 pixels
(video aspect-ratio is resized from 720x480 -> 720x416)
(AVI-file : 720x480)
3) MPEG2AVI.EXE -b gotmail16_9.vob -f0 -3X 424 -q1 -2 -1 320 240 ...
-3X -> pproc : downscale X-resolution to 424 (output is 424x480)
-1 -> pproc : set crop window (viewport) to <320x240>
-o7 -> AVI-writer (RGB24 mode)
pproc performs operations in this order :
**1) downscaling ('-3X' or '-3Y ')
**2) resolution-halving ('-2')
3) output window cropping('-1')
** (starting with v0.15B5, downscaling is performed first!)
4) MPEG2AVI.EXE -b gotmail6_9.vob -# 100 500 -f0 ... (see next line)
-3X 424 -q1 -2 -1 320 240
-# 100 500 -> starting writing AVI @ MPEG-frame #100,
terminate AVI @ MPEG-frame #500
(AVI-file starts and ends with fr #100 and #500,
for a total of 401 frames written.)
------------------------------
8) Command-line usage examples
------------------------------
Please note that the user's manual (mpeg2avi.txt) thoroughly documents
each command-line parameter. But if you're too lazy to read it, here
are the rest of the features...
< display to screen, no inverse-telecine, half-resolution output >
MPEG2AVI.EXE -b <input filename> -2 -f -o6
eg. MPEG2AVI.EXE -b clip04.vob -f -o6
<inverse-telecine, display to screen, crop to 704x480 >
MPEG2AVI.EXE -b <input filename> -f -s<n> -1 704 480 -o6
where <n> = 0,1,2,3,4
eg. MPEG2AVI.EXE -b bighit.vob -s3 -f -o6
<write to AVI, no inverse-telecine, downsample & crop to 352x240 >
MPEG2AVI.EXE -b <input name> -f -2 -1 352 240 -o7 <output name>
eg. MPEG2AVI.EXE -b clip04.vob -f o7 output.avi
<inverse-telecine, write to AVI >
MPEG2AVI.EXE -b <input filename> -f -s<n> -o7 <output filename>
where <n> = 0,1,2,3,4
eg. MPEG2AVI.EXE -b DolbyTrain.vob -s4 -f -o7 output.avi
The AVI frame-rate can be *optionally* specified from the
command-line :
-f0, -f1, -f2, -f3, etc.
The frame-rate setting is stored in the AVI header. (The user-
Selected frame-rate does *not* change the #frames stored.)
Please read "mpeg2avi.txt" for more information, including
an explanation about INVERSE-TELECINE.
-----------------------------
Revision History
-----------------------------
11/10 0.16B35 fixed resizer "green-bar" bug introduced by B34
added "polarity" control to IVTC modes ('-s0' ... '-s9')
moved cDemuxer to read-ahead thread.
changed auto-ivtc logic to always use 'resume2' mode
11/04 0.16B34 fixed default IDCT bug, now the default is MMX32 ('-r1')
Converted old filehandling calls to Win32 native calls.
Added *experimental* multi-threaded read-ahead system
to buffer the input bitstream.
10/31 0.16B33 internal re-organization of Chen MMX IDCT, video resizer,
and the input-buffering. The older INT32 IDCT ('-r1') has
been upgraded to MMX32 IDCT (IEEE-1180 compliant.) The
MMX32 IDCT ('-r1') is now faster. AAN IDCT support has
been dropped, since it required some additional functions
inside MPEG2AVI. The other IDCTs don't require this
overhead. All motion-compensation routines now utilize
aligned data reads, though performance effect is minimal.
10/26 0.16B32 MMX optimization to vertical resizer, '-*' fixed to upper
left, regardless of any cropping ('-1 <x> <y>')
10/22 0.16B31 changed operation of auto-IVTC (-s0d,-s1d,-s2d,-s3d,-s4d)
In prior releases of MPEG2AVI, this mode would start the
IVTC in the "on" state, then shut-down the IVTC after
detecting a "repeat_first_field" flag. Starting with
0.16B31, MPEG2AVI continuously checks for evidence of
non 3:2 pulldown content. The IVTC reactivates if two
consecutive MPEG frames do not use "repeat_first_field."
10/15 0.16B3 '-@ <lba>' can seek to any position within a streamlist
User-interface routines hopefully no longer read phantom
keystrokes. VOB-streams are now opened in seek-mode,
meaning the first block need not contain a system_header.
10/11 0.16B24 fixed positioning error of cropping in RGB24 (GDI & AVI)
(affects -o6 & -o7, when used with '-1 <x> <y>')
10/10 0.16B24 streamed VOB input (multiple VOB-files)
A large VOB-file (>4GB) which is split into to 2 or more
VOBs, can be entered into a "streamlist" file, and read by
MPEG2AVI. The streamlist can only contain VOB files, and
the VOB files must come from the SAME SOURCE (i.e. you
cannot encode different bitstreams in one MPEG2AVI session.)
10/09 0.16B23 fixed color-bleed in YUY2, RGB24 modes. The problem was due
to a bug introduced in the MMX code
10/08 0.16B23 color-space converter (YUV->RGB24) rewritten in MMX. As a
result, output modes '-o6' and '-o7' are somewhat faster.
AVI auto-split threshold lowered from 2047MB to 2000MB
changed '-@ <lba>' to auto-seek SYSTEM HEADER, so user can
enter any <lba> address, and the demuxer will start at that
addr, scan for a valid header, then begin decoding video.
10/06 0.16B22 Intel MMX optimizations (best performance on Intel-MMX CPU)
changed option, '-r<n>' selects one of the IDCT-functions.
This lets user trade speed for image-quality.
The cropper ('-1 <x> <y>') is now restricted to +/- 8pixs.
(...enforces DWORD alignment in MMX-routines.)
The default-filter mode is now '-q1' (fast-filter).
09/28 0.16B21 fixed stupid VOB-demuxer bug, where certain EOF
conditions would exit the program before the AVI-writer had
a chance to close session.
09/27 0.16B2 added '-*' == print useless MPEG-data in upper-right of
output
added '-@ <lba>' == open VOB bitstream at block address
<lba> [1 block = 2048 bytes]
added '-b <filename> [0xID]', optional stream ID [0xID],
BBDMUX will demultiplex the specified streamID
(default==0xE0)
BBDMUX is now a C++ object
09/22 0.16B1 added '-! <nnn>' == skip 1 frame every <nnn> decoded
frames
added '-$ <nnn>' == set AVI auto-split size to <nnn>
megabytes. AVI-writer is now in C++ (may be slightly
slower)
09/16 0.15B51 more work to the YUV-AVI modes, hopefully fixed this time
around.
added '-# <start> <end>', restricted decoding frame-range
09/12 0.15B5 added 'YUY2 AVI' mode ('-o9'), YV12/YUY2 workaround for
Microsoft MPEG-4 codec. The workaround fixes the KeyFrame
rate issue, but introduces some inaccuracy to the output
bitrate. Output-processor restructured (the resize
operations '-3X', '-3Y' are now performed first, before
half-mode '-2') other internal changes ( scaling-functions
process the video-frame in its native color-format,
420 422 or 444)
fixed bug introduced by 0.15B4 ( RGB24 "Full Frame" mode )
09/08 0.15B41 corrected really stupid bitrate-bug with 'YV12 AVI' (-o8)
09/07 v0.15B4 added 'YV12 AVI' mode ('-o8')
half-resolution ('-2') now supports all MPEG2 CHROMA formats
08/15 v0.15B3 added X & Y downscaling ('-3X','-3Y') When combined with
cropping ('-1'), the user has full adjustment of aspect-
ratio.
performance tweaks to postfiltering/scaling operations.
added "fast-filter" to full-resolution (YUV420 ->RGB24),
changed default half-res filter to 'HiQ' (slower)
added keyboard commands (PAUSE,IVTC,FILTER,RESIZE)
to GDI '-o6'
IVTC can be set to "auto-disable", which is triggered by
the MPEG "repeat_first_field." Autodisable is enabled by
adding 'D' to the -s command (-s0D, -s1D, -s2D, -s3D, -s4D)
This feature is useful for VOB-trailers which start off as
3:2-pulldown (every field is encoded), but transition to
progressive ("repeat_first_field".)
User can now enter his own AVI fps (frames per second.)
The fps is stored in two DWORDS : dwRate/dwScale.
08/11 v0.14 fixed IVTC "color-bleed", half-resolution and cropped
output.
Performance tweaks to IVTC-processor & AVI/GDI routines
AVI output now uses 32-bit integer IDCT by default!
(much faster than before, -r to use the FPU-IDCT )
08/09 v0.13 VOB input, abort AVI-output by typing 'Q'
08/08 v0.12 elapsed time for AVI encoding
user-specified frame-rate
08/07 v0.11 AVI output
08/06 v0.10 display to GDI (DIB)