AVI-Mux GUI
Version 1.15.6
Alexander Noé, 20.12.2003
AVI-Mux GUI is a tool which allows creating segmented multilingual AVI files that can be replayed even at very low speeds
(and therefore very little noise) directly from CD-R or DVD-R. Latest versions support the MKV format as well.
Matroska format
For current status of Matroska implementation in version 1.15, have a look at here.
Offline Docu
You can download the entire help here
Definitions
Download
Features
Settings
Quickstart
Version-History
planned features
- supported input file types: AVI, MKV, WAV, MP3 (CBR and VBR), AC3, DTS, AAC, OGG/Vorbis, SRT, SSA
(note that replaying subtitles in AVI/MKV files requires VSFilter 2.27)
- allows to easily create multipart AVI/MKV files
- created AVI files can be replayed from CD much better ("rec-lists")
- tested with 5 languages on my own
- reading and writing of Open-DML files (AVI 2.0)
- supports drag&drop for source files
- allows setting an audio delay in case of an delayed audio stream
- allows storage of AC3/MP3/DTS/SRT/SSA-Streams from an AVI file to file
- cache allows fast reading of AVI files from CD / DVD by minimizing seek operations
- can display detailed information about AVI files
- AVI files stored on Mode2CDMaker-made CDs can be opened directly
- can repair some common errors in AVI files without rewriting the entire file
- does not use any VFW or DirectShow components and will thus not be affected by any bugs in VFW or DS!
All file format parsers and writers have been written from scratch!
- Add all source files you need
- mark video source file (or files, if you want to concatenate several AVI files to one) and click "add video source"
- select all audio streams you want to include
- set maximum file size
- start
Further information
- chunk
- Smalltest piece of data in an AVI file. A chunk can e.g. contain a video frame.
structure:
typedef struct {
DWORD dwFourCC;
DWORD dwLength;
BYTE bData[dwLength];
} CHUNK;
- CRC check sum
- A check sum that allows the detection (but not correction!) of errors in read data.
- deltaframe
- A frame which, unlike keyframes, only contains the differences to the previous frame.
A deltaframe can only be decompressed if the previous frame has already been decompressed.
- dropped frame
- A frame that doesn't contain any data. When replaying, the previous frame is displayed again.
- dwDuration
- The super index contains for every standard index it points to the amount of time it takes
to replay all data that standard index points to. For Open-DML files created with VirtualDub up to 1.4.10 over 2 GB, the
dwDuration values of the audio stream are corrupt.
- frame header
- MP3, AC3 and DTS streams contain some information about the frame (size, bitrate, samping rate etc) in the first bytes of each frame.
AVI-Mux GUI doesn't support MP3-VBR / DTS streams with bad frame headers. Broken AC3 stream headers will not be copied either. If
a broken AC3 stream header is encountered, the next valid one will be looked for. Any data between will be omitted.
- Index
- An index contains information about the position of video-, audio- or other index data. For AVI files, there are several types of indexes.
- legacy index
- This index is found in normal AVI files (called AVI 1.0 sometimes). It is always stored in one piece.
- super index
- The super index can only be found in Open-DML files. It points to standard- or field index data. A super index shouldn't point to other super indexes
- standard index
- This one is also only found in Open-DML files. It points to video- and audio data
- keyframe
- A keyframe contains, unlike a deltaframe, a complete frame.
- Mode 2 Form 2
- This is a possibility to store less error correction data to a CD and use the free space for own purposes. A sector
can then contain 2324 bytes of user data instead of 2048. This is used for VCD and S-VCD for example. A "700 MB"-CD-R can
then contain 798 MB without overburning. If you want to do this with AVI files, then please visit the homepage of Mode2CDMaker
and read its readme-file carefully.
- Open-DML
- An extension to the AVI file format that allows the creation of AVI files larger than 2 GB. Open-DML files usually contain
super- and standard indexes, but an additional legacy index is allowed.
Read this to learn more or get the entire specification
here.
Warning: Some Hardware divX Players do not want to read Open-DML files!
- rec-list
- A special structure in an AVI file that contains lots of video and audio data. Such a structure is read in one piece by all players I know,
so that larger blocks are read from the CD and less seek operations are necessary.
Warning: Some or all KISS players won't read files using rec lists. Disable rec lists if you intend to
play your files on KISS players!
- Version 1.15.6, (Ger, Eng, Spa)
- Version 1.15.6, source code
- Version 1.15.3, (Ger, Eng, Spa)
- Version 1.15.3, source code
Notes- If you use Win 98/ME and don't want to use a better OS, remove german.lang from the language file list or resave it using ASCII instead of UTF-8
- italian language file by Marco Cornolti
(download it into your language file folder and update languages.amg )
- filter required for replay of DTS streams (also requires appropriate version of WinDVD!)
These filters have been made by gabest. If you have any trouble with them,
then please report about that on Doom 9
- silence files, which provide silence in different formats.
known bugs/issues
- AVI files can only be concatenated if video and audio stream within each file has the same length. At the moment I don't have any idea how to fix it reasonably.
This problem does NOT occur when selecting MKV as output format.
- Created multipart files which contain MP3-VBR audio can't be concatenated in NanDub.
AVI-Mux GUI creates, unlike NanDub, headers which contain the true average bitrate of each stream in each file, so they slightly differ for mp3-vbr streams. It's a NanDub bug that it can't concatenate these, not an AVI-Mux GUI bug.
- If you move audio streams in their listbox, only move one at a time, otherwise there might be unexpected results
- Don't try to open AC3-/MP3-files directly from a Mode 2 Form 2 - CD. The file size is padded to the next multiple of 2324, therefore the end of such files would be corrupt. AVI files are also padded, but they aren't corrupted by this.
- DV-AVIs can't be stored correctly.
- Opening Mode 2 Form 2 - AVI files sometimes causes AVI-Mux GUI to crash: In this case the index hasn't been read properly. Solution: lower reading speed, use a better drive, spin up the disc before opening the file in AVI-Mux GUI.
- The dest file name must not contain dots, otherwise the last part of the name is lost
- Do not combine MP3 mono and MP3 stereo streams within one file. The output will not replay in DirectShow.
- Unfortunately, the Audio/Subtitle tree does not react to single right clicks, but only to double right clicks
- The day only has 24 hours, which is not enough....
- LiteOn DivX Players seem to dislike AVI-Mux GUI files with AC3 audio, especially 448 kbps. I have absolutely no idea why. Use VirtualDub(Mod) instead if you encounter problems.
- Somewhen Vorbis reading
- make suggestions...
- some time ago, i've received a mail, proposing new stream headers for AC3, so that replay works, but that M$ is not
trying to be contacted if the filters are not present
- already implemented:
- Version 1.15.6
- new
- Support for Vorbis audio format. Note that you can currently not mux Vorbis into AVI, but only into MKV
- More flexible control over lacing: lacing rules can be defined separately for MP3, AC3, AAC, DTS and Vorbis
- After a report that the 4-audio-stream-open-dml-large-index-chunk-M$-AVI-splitter bug also occured with 2 streams, the 'auto' setting of the index interleave pattern for Open-DML files has been changed
- fixed
- Very sparse subtitle streams in matroska source files caused large amount of prebuffering due to bad end-of-stream check
- Framerate for video as dwRate/dwScale is written with numbers as small as possible (instead of 10,000,000/40,000). LiteOn players did not like those large numbers.
- Version 1.15.5 (bugfix)
- fixed
- When muxing AAC files with a sample rate below 48 kHz into AVI, bad headers have been written
- Version 1.15.4
- new
- support for AAC file format (ADTS packing required).
Note: The technique used for VBR storage is
the same as for MP3. It cannot be guarantied that such files work, especially not on systems not based on DirectShow.
- Version 1.15.3
- bugs fixed
- Memory was heavily leaking when muxing from MKV, but not using all streams, or when demuxing a stream from MKV
- LOAD command only accepted absolute paths
- 'split at' was read as 'split after'
- muxing DTS to MKV was broken
- reading chapter files in ChapterXtractor - format was broken
- Version 1.15.2
- bugs fixed
- AVI files haven't been joined correctly when output format was AVI
- Version 1.15.1
- bugs fixed
- standard AVI output has been broken in 1.15 due to a bug in the write cache
- Version 1.15
- new
- support for Matroska file format (incl. chapters, variable frame rate,...)
- reads language files in UTF-8 format (will NOT work on Windows 9x/ME!)
- reads subtitles in UTF-8 format
- tries to handle input sources where the 1st frame is a delta frame
- can adjust AC3 interleave scheme for AVIs
- subtitles are written to AVI now in UTF-8 coding
- bugs fixed
- displayed wrong file size for small input files
- does no longer reject subtitle files using only 0x0A for line feed
- check for available disc space returned bad values for network drives
- fixed wrong display of estimated output file size if it was >> 4 GB
- displayed nonsense audio length in protocol if no audio was included
- fixed problem that silence files were not used sometimes due to a floating point compare operation
- fixed bug in AVI parser which prevented reading from old AVI files with strn chunk
- fixed bug in audio delay setting
- Version 1.14 and older
Note: The source code for the crc check of Mode 2 Form 2 - source files was taken from the
source code of the Mode2CDMaker.
AVI-Mux GUI is released under the terms of the GENERAL PUBLIC LICENSE.
Click here to email me.
I will read every email, but please understand that I'm not a hotline :-)