2005-02-26 Moritz Bunkus * Released v1.4.0. 2005-02-19 Moritz Bunkus * mmg: new feature: The "default track" checkboxes are set properly when a Matroska file is added. * mmg: new feature: Added a warning right before the muxing starts if the chapter editor contains entries but no chapter file has been selected (can be turned off). 2005-02-11 Moritz Bunkus * mkvextract: new feature: Added VobSub extraction based on Mike Matsnev's code. 2005-02-08 Moritz Bunkus * mkvmerge: bug fix: Track names could not be set to be empty. 2005-02-06 Moritz Bunkus * Released v1.0.2. 2005-02-02 Moritz Bunkus * mkvmerge: new feature: Use the posix_fadvise function on *nix systems. This results in a considerable speed up for the whole muxing process. As the function call seems to be buggy on at least Linux kernels 2.4.x it can be disabled completely during configure. It will only be used on Linux with a kernel from the 2.6.x series or newer. 2005-02-01 Moritz Bunkus * mkvmerge: bug fix: Empty video frames in AVIs right at the beginning were breaking the MPEG-4 aspect ratio extraction and caused problems in other parts, too. 2005-01-30 Moritz Bunkus * mmg: bug fix: It was possible to create chapter entries with invalid or even empty language entries. Not only are those invalid, such XML files can also not be loaded by mmg. * mmg: bug fix: Overwriting a chapter file did not erase the previous file. So if the previous file was bigger than the current chapters then garbage remained at the end of the file. 2005-01-22 Moritz Bunkus * mkvmerge: bug fix: mkvmerge did not accept XML chapter files created with older mkvtoolnix versions due to deprecated chapter elements. Such elements are now skipped. * mkvmerge: new feature: Added some more possible formats for binary data in XML files besides Base64 encoded data: hex encoded and ASCII "encoded". 2005-01-20 Moritz Bunkus * mmg: bug fix: The "stretch" input box tooltip was wrong. The resulting command line was broken, too. 2005-01-18 Moritz Bunkus * mkvmerge: new feature: Hex values accept more formats (like optional white space between numbers or the "0x" prefix). 2005-01-15 Moritz Bunkus * mkvmerge: Changed the AVC/h.264 timecode handling to include the timecode offsets from the CTTS atom. 2005-01-15 Moritz Bunkus * mmg: Reformatted the HTML guide and updated the screenshots. It should be more readable for those whose desktop is not 1200 pixels wide. 2005-01-08 Moritz Bunkus * mmg: new feature: Made the mkvmerge GUI guide available by pressing F1 or selecting "Help" from the "Help" menu. 2005-01-07 Moritz Bunkus * mkvextract: bug fix: ASS/SSA extraction was broken in some rare cases. 2005-01-02 Moritz Bunkus * mmg: new feature: Added support for mkvmerge's new "appending tracks" feature. 2004-12-31 Moritz Bunkus * mkvmerge: new feature: Added support for reading the pixel aspect ratio from AVC/h264 video data. * mkvmerge: new feature: Added AVC/h264 muxing from MP4. 2004-12-28 Moritz Bunkus * mkvmerge: new feature: Added a MPEG PS demuxer. * mkvinfo: new feature: Added a couple new elements (silent tracks). Patch by Steve Lhomme (see AUTHORS). 2004-12-27 Moritz Bunkus * mkvextract: new feature: Added WAVPACK4 extraction. Patch by Steve Lhomme (see AUTHORS). 2004-12-18 Moritz Bunkus * mkvmerge: new feature: Added WAVPACK4 muxing. Patch by Steve Lhomme (see AUTHORS). * mmg: bug fix: Again the window handling. Hopefully this is better than the other attempts. 2004-12-17 Moritz Bunkus * mkvmerge: new feature: Added VobButton muxing. Patch by Steve Lhomme (see AUTHORS). 2004-12-15 Moritz Bunkus * mmg: bug fix: One was able to crash mmg by pressing 'ok' in the muxing dialog right after muxing finished, especially if the 'abort' button was hit before. This mostly happened on Linux. * mkvmerge: bug fix: Fixed negative audio displacement for a couple of formats. 2004-12-13 Moritz Bunkus * Released v1.0.1. 2004-12-11 Moritz Bunkus * mmg: Fixed some layout issues with wxWidgets 2.5.3 and newer. 2004-12-10 Moritz Bunkus * mmg: new feature: The window position is saved and restored when mmg is started the next time. 2004-12-09 Moritz Bunkus * mmg: bug fix: Fixed a crash/memory corruption showing weird characters in the input boxes. This happened when the user removed a file from mmg while mmg was updating the command line. * mmg: bug fix: mmg now has an icon associated with it while it is running instead of the generic Windows application icon (Windows only). * mmg: bug fix: The main window is now minimized during muxing. This allows to hide both of the windows while muxing is running and restoring them later, even if they were iconized when muxing finished (Windows only). 2004-11-26 Moritz Bunkus * mkvmerge: bug fix: The first packet of an AAC track read from Real containers might not start at the timecode 0. This offset was ignored by mkvmerge. 2004-11-22 Moritz Bunkus * mmg: bug fix: Made the muxing dialog ("mkvmerge is running") modal all the time. This prevents the user from hitting the main window's minimize button. On Windows this makes mmg stuck in iconized mode if it was iconized when muxing finished. 2004-11-20 Moritz Bunkus * mkvmerge: bug fix: Fixed a buffer overflow in the UTF-8 file reading routines. 2004-11-18 Moritz Bunkus * mkvmerge: Implemented concatenating files with chapters. * mkvmerge: Changed the "progress" output. It's now correct for file concatenation, too. 2004-11-17 Moritz Bunkus * Released v1.0. * mkvmerge: new feature: Concatenating/appending files is now possible. A lot of things aren't tested, and others simply don't work yet (chapter merging, duplicate tag elimination, proper progress report, support in mmg just to name a few), but the basic functionality seems to work. * mkvmerge: bug fix: The Matroska reader doesn't insist on having a default duration ( = FPS) for video tracks in the "AVI compatibility mode" ( = with the CodecID "V_MS/VFW/FOURCC"). This enables re-muxing of Matroska files created from MP4 files. 2004-11-05 Moritz Bunkus * mmg: bug fix: File names with non-ASCII characters were not working if mmg was compiled against a Unicode enabled wxWidgets. 2004-11-04 Moritz Bunkus * mkvmerge: new feature: Added reading DTS from AVIs and from Matroska files. * mkvmerge: bug fix: A variable initialization was missing which very recent gcc versions (3.4.2) did not like very much. Also fixed a small compilation bug. 2004-10-24 Moritz Bunkus * mkvmerge: bug fix: The handling of external timecode files was still not correct but should be OK now. 2004-10-17 Moritz Bunkus * mmg: Added an error message if the user selects 'mmg' as the 'mkvmerge executable' because that would lead to an infinite number of 'mmg's being spawned. 2004-10-16 Moritz Bunkus * mkvmerge: bug fix: If LFE is on for DTS then the number of channels is one more than what the DTS frame header says. * mkvmerge: bug fix: Timecodes for Vorbis were wrong on rare occasions (when reading laced Vorbis from a Matroska file and changing the lacing, e.g. when splitting for the second and all following files). 2004-10-10 Moritz Bunkus * mkvmerge/mkvinfo/mkvextract: bug fix: The chapter and tag element tables were not always intialized correctly depending on the compiler and the optimization flags used. * mkvmerge: bug fix: The OGM reader was broken if at least one track was not to be copied from the file (happened between 0.9.5 and 0.9.6). * mmg: bug fix: After loading saved mmg settings the track input box listed the tracks always coming from the last input file and not from the one they really came from. 2004-10-09 Moritz Bunkus * mmg: enhancement: Made mmg's main window properly resizable. * mkvmerge: Rewrote the code for the external timecode files. This also fixes bug 99: The durations for the individual tracks were not correct for those tracks for which --timecodes was used. 2004-10-08 Moritz Bunkus * mmg: bug fix: Crash when saving chapters from the chapter editor. Same as the mkvinfo issue below but on all OS. * mkvinfo: bug fix: The chapter and tag element tables were not initialized on Windows resulting in a crash when one of those elements was encountered. 2004-10-07 Moritz Bunkus * Released v0.9.6. * mkvextract: bug fix: The track extraction was creating the output file twice if the Matroska file contained a copy of the track headers. This resulted in the first extracted file being overwritten at the end of extraction. * mmg: bug fix: If the file title is read from an input file, not modified by the user and that input file is removed again then the file title will be unset. 2004-10-05 Moritz Bunkus * mkvmerge: enhancement: Converted the raw FLAC reader to use another interface to the FLAC libraries. This results in a speedup of up to 50%. Thanks to Josh Coalson for telling me about its existence. 2004-10-04 Moritz Bunkus * mkvmerge: new feature: Added two warnings. One about invalid track IDs that were used on the command line but that don't correspond to an available track in a file and one if no track will be copied from a source file. Both warnings hint at bad command line arguments. 2004-10-03 Moritz Bunkus * mkvmerge: Only write the segment duration as a 64bit float if there is no video track present. This way users won't have to update their DirectShow filter/apps for most files. Only audio-only files need this precision anyway. * mkvmerge: Changed the Ogg/OGM reader to use the stream number and not its serial number as the track ID (meaning the track IDs will be 0, 1, 2... etc. instead of the random numbers oggenc uses as the serial numbers). 2004-09-30 Moritz Bunkus * mkvmerge: new feature: The CUE sheet parser now accepts INDEX lines with indices from 00 up to 99 and implements the Red Book specification for audio CDs that way. Patch by Vegard Pettersen . 2004-09-28 Moritz Bunkus * mkvmerge, mkvextract: bug fix: ASS was handled like SSA which is not correct in each case, especially when extracting it. * mkvextract: bug fix: The WAV writer was not endian safe. 2004-09-27 Moritz Bunkus * mkvmerge: bug fix: The charset was not set correctly on Solaris. * mkvmerge: bug fix: mkvmerge crashed when reading Matroska files that contain an empty tag list. 2004-09-26 Moritz Bunkus * mkvmerge: bug fix: Some Matroska files that e.g. have had their timecodes offset with the Matroska Stream Editor or other means may contain timecodes that caused mkvmerge to print a warning about "timecode < last_timecode". A new fix implements a workaround and a warning message with a proper explanation for this case. 2004-09-24 Moritz Bunkus * mkvmerge: bug fix: Older Matroska files containing chapters caused mkvmerge to abort muxing. 2004-09-21 Moritz Bunkus * mkvmerge: bug fix: mkvmerge was only copying the last tag of a list of tags applying to a track from a Matroska file. 2004-09-17 Moritz Bunkus * mkvmerge: bug fix: mkvmerge will show a nice warning if the entries in a SRT have non-continuous timestamps. It'll also sort the entries by their start timestamp instead of throwing the generic "timecode < previous timecode" warning. * mmg: bug fix: The 'Matroska file analysis' window that occurs when reading chapters from a Matroska file did not disappear if it was minimized when the process finished. 2004-09-16 Moritz Bunkus * mkvmerge: new feature: Added a new parameter --aspect-ratio-factor. * mkvinfo: bug fix: Strings from chapters and tags were shown in UTF-8 instead of the local charset. This bug was introduced around 2004-08-28. * mkvmerge: bug fix: Not all chapter elements were copied correctly from a source Matroska file. 2004-09-07 Moritz Bunkus * mkvextract: Sped up the extraction of attachments, chapters, cuesheets and tags by using the seek head information and not parsing the full file each time. 2004-09-02 Moritz Bunkus * mkvmerge: bug fix: The Matroska reader was not handling very big cluster timecodes correctly. Those can occur when the timecode scale factor is very small. * mkvmerge: bug fix: Empty clusters in Matroska files no longer make mkvmerge think that file has been read completely. 2004-08-31 Moritz Bunkus * mkvmerge: new feature: Added support for MP2 (and maybe MP3) audio in MP4 containers. 2004-08-29 Moritz Bunkus * mkvmerge: new feature: The chapter and tag parsers accept XML element attributes instead of sub-elements for those sub-elements that only contain data. Example for a "simple tag": * mkvmerge: bug fix: The automatic MIME type detection based on the file name extension was using the file name extension as the MIME type. 2004-08-28 Moritz Bunkus * mkvmerge, mkvinfo: new feature: Added the four new PixelCrop elements. * mkvmerge, mkvextract, mkvinfo: new feature: Added 'TargetTypeValue' as a supported tagging element. * mkvmerge, mkvextract, mkvinfo: Complete rewrite of the chapter and tag parsing and output functions. Additions will be much easier now. * mkvmerge, mkvextract, mkvinfo: feature removed: Dropped support for the very old and deprecated tagging system. No one used it anyway. 2004-08-24 Moritz Bunkus * mkvmerge: new feature: Allow the use of two-letter ISO639-1 country codes in for the '--language' parameter. Those will be converted to the corresponding ISO639-2 language code automatically. 2004-08-22 Moritz Bunkus * mkvmerge, mkvinfo, mkvextract: new feature: Added support for the 'TargetType' tag element (which I meant to add before the 0.9.5 release...). * mkvmerge: bug fix: The MP3 handling was broken on weird and rare occasions when reading MP3 from a Matroska file. * mkvmerge: bug fix: Removed a bogus warning about an attachment's MIME type having been given more than once. 2004-08-21 Moritz Bunkus * Released v0.9.5. * mkvmerge: bug fix: WAV files which contained a 'PAD ' chunk before the 'data' chunk were not processed at all. * mkvmerge: bug fix: Use 'setjmp' and 'longjmp' Instead of throwing a C++ exception during the chapter parsing stage. Otherwise libexpat will abort with a non-descriptive error message on Windows. 2004-08-20 Moritz Bunkus * mkvmerge: bug fix: SSA/ASS subs with the old codec ID 'S_SSA' and 'S_ASS' were accepted, but their codec ID was kept. It is now correctly changed to 'S_TEXT/SSA' and 'S_TEXT/ASS'. 2004-08-19 Moritz Bunkus * mkvmerge, mkvinfo, mkvextract: new feature: Added support for the new 'EditionFlagHidden', 'EditionFlagDefault' and 'EditionManaged' elements. * mkvmerge: Added 'EditionUID' to valid elements below '' in XML tags. Fixed the creation of the 'Targets' with --global-tags and --tags. 2004-08-16 Moritz Bunkus * mkvmerge, mkvinfo, mkvextract: Added support for the new tag elements ('tag language' and 'default/original language'). * mkvmerge: new feature: If there was no MIME type given for an attachment then mkvmerge will try to guess it based on the file's extension just like mmg. 2004-08-14 Moritz Bunkus * mkvmerge, mkvextract, mmg: Changes to the chapter handling. EditionUIDs are always created. mkvextract outputs EditionUIDs and ChapterUIDs normally. mkvmerge tries to keep EditionUIDs and ChapterUIDs but replaces them if they aren't unique. 2004-08-13 Moritz Bunkus * mmg: bug fix: The 'down' button on the 'input' tab was not working correctly in all cases. 2004-08-06 Moritz Bunkus * mkvinfo, mmg: bug fix: Fixed compilation with Unicode enabled versions of wxWidgets. 2004-08-05 Moritz Bunkus * mkvmerge: bug fix: Try to guess whether tags read from OGM files (for automatic language tag setting and for copying chapter information) are already in UTF-8 or not. If not try to convert them from the current system's charset. 2004-08-04 Moritz Bunkus * mkvmerge: bug fix: use the same UID for the EditionUID in the chapters and in the tag targets when parsing a CUE sheet. 2004-08-02 Moritz Bunkus * mkvmerge/mkvextract: new feature: Use the new EditionUID entries when convert CUE sheets to chapters and tracks. This is in preparation for 'multiple CDs to single Matroska file' conversions. * mkvmerge: new feature: Abort muxing if the output file name is the same as the name of one of the input files. 2004-08-01 Moritz Bunkus * mkvmerge: new feature: Implemented sample-precision for timestamps and durations on audio only files. * mkvextract: bug fix: The CUE extraction wrote UTF-8 characters but no UTF-8 BOM (byte order marker) at the beginning. * mkvmerge: bug fix: Handle TTA files with ID3 tags correctly ( = skip the ID3 tags). * mkvmerge: bug fix: There was an illegal free() in the OGM reader. 2004-07-27 Moritz Bunkus * mkvextract: bug fix: The subtitle track extraction used the wrong duration in 0.9.4. 2004-07-26 Moritz Bunkus * mkvextract: new feature: Limited support for extracting chapters as CUE sheets that haven't been created by using a CUE sheet with mkvmerge's "--chapters" option. * mkvmerge: bug fix: Block durations with 0s length (e.g. entries in a SSA file) were not written. * mkvmerge: bug fix: The FLAC packetizer gets the duration from the FLAC packet itself. * mkvmerge: bug fix: The word 'TAG' occuring in e.g. SRT subs caused the ID3/MP3 frame detection to be stuck n an endless loop. 2004-07-25 Moritz Bunkus * Released v0.9.4. 2004-07-24 Moritz Bunkus * mkvextract: new feature: Added support for extracting TTA tracks to TTA files. * mkvmerge: bug fix: SRT file recognition failed if the file contained spaces at the end of the first line. 2004-07-21 Moritz Bunkus * mkvextract: new feature: Implemented the extraction of chapter information and tags as a CUE sheet which is the reverse operation to using a CUE sheet with mkvmerge's '--chapters' parameter. 2004-07-20 Moritz Bunkus * mkvmerge: bug fix: Broken VobSub .idx files which contain timestamps going backwards no longer crash mkvmerge. A warning will be printed for such inconsistencies. 2004-07-19 Moritz Bunkus * mkvmerge: bug fix: The Matroska reader contained a nice little illegal memory access (introduced in 0.9.3 with the fixes to the 'default track' handling). * mkvmerge: bug fix: The SSA reader was segfaulting if a line contained an empty text field. * mmg: new feature: Added support for the two flags 'hidden' and 'enabled' in the chapter editor. * mkvmerge: new feature: The pregap from a CUE sheet is converted into two sub-chapters (one for "INDEX 00", one for "INDEX 01"). These sub-chapters have their 'hidden' flag set. * mkvinfo: bug fix: Fixed compilation for MATROSKA_VERSION = 2. * mkvinfo: bug fix: Fixed compilation with gcc 3.2. 2004-07-18 Moritz Bunkus * mkvmerge: bug fix: The CUE sheet parser interpreted a timestamp as HH:MM:SS (hours, minutes, seconds). The correct spec is HH:MM:FF (hours, minutes, frames with 1 frame = 1/75 second). * Released v0.9.3. * mmg: bug fix: The 'default track' checkbox was broken. 2004-07-14 Moritz Bunkus * mkvmerge: bug fix: Using '--cues ...:all' was broken for audio tracks that use lacing. 2004-07-13 Moritz Bunkus * mkvmerge: bug fix: The latest OpenDML AVI files generated by mencoder were not read correctly. Only the first RIFF chunk was processed. 2004-07-10 Moritz Bunkus * mkvmerge: If the user does not specify a --language for a track 'und' ('undefined') will now be used instead of 'eng'. The user can use the new option '--default-language' to change that. 2004-07-07 Moritz Bunkus * mkvmerge: new feature: When using a CUE sheet as a chapter file mkvmerge will automatically convert some of the entries to tags. 2004-07-03 Moritz Bunkus * mkvmerge: bug fix: The default track feature did not work correctly with the new --track-order. * mkvmerge: new feature: Added support for TTA lossless audio files. 2004-06-29 Moritz Bunkus * Released v0.9.2. * mmg: Updated the mkvmerge GUI guide to reflect changes and additions. 2004-06-25 Moritz Bunkus * mmg: new feature: Added 'minimize' buttons to the two 'mkvmerge is running' dialogs. * mmg: new feature: Added an option for automatically calling 'File -> new' after a job has been added to the job queue. 2004-06-24 Moritz Bunkus * mkvextract: bug fix: Video extraction was not working correctly on big endian systems. 2004-06-21 Moritz Bunkus * mmg: bug fix: The job manager did not always catch all of mkvmerge's output, especially if a job failed. 2004-06-20 Moritz Bunkus * mkvmerge, mmg: new feature: --track-order now controls the track creation order globally, meaning that it isn't used for each file but only once. This allows the tracks to be created in ANY order (before it was first ordered by file, then by track). For mmg this means that the track list contains all available tracks and that there are no 'up' and 'down' buttons in the file list anymore. * mmg: new feature: Line wrap the tooltips on Windows. * mmg: new feature: Suggest a name for a new job based on the output file name. * mmg: new feature: Temporarily disaable 'always on top' if the muxing or the job dialog are visible. * mmg: new feature: Ask for confirmation before adding a job if there's already an old job with the same description. * mkvmerge: new feature: You can specifiy the time after which to split with ms precision. 2004-06-19 Moritz Bunkus * mmg: bug fix: The functions 'move up', 'move down' and 'delete' in the 'job' dialog were not working correctly on Windows. 2004-06-15 Moritz Bunkus * mkvmerge: bug fix: Fixed more of that 'garbage at the beginning of MP3 streams' issue. 2004-06-13 Moritz Bunkus * mmg: bug fix: The 'always on top' option was ignored when starting mmg. * mkvmerge: bug fix: Reading of broken / unfinished AVI files was broken on Windows. * Released v0.9.1. * mkvmerge: Dropped supoprt for 'aviclasses' (one of the two libraries for accessing AVI files). This mostly affects the Windows users as I've used aviclasses and not avilib on Windows so far. The 0.9.0-pre-builds so far haven't shown any problems, though, so I hope this doesn't break anything. * mmg: bug fix: The job manager did not handle the conversion of non-ASCII characters correctly. * mmg: new feature: The action 'delete job' in the job manager will also delete the file in the 'jobs' subdirectory. 2004-06-12 Moritz Bunkus * mmg: new feature: Added an option to make mmg stay always on top (only on Windows). * mkvmerge: new feature: mmg will set the 'display dimensions' automatically for AVI files whose video track is MPEG4 and has the pixel aspect ratio stored in the bitstream. * mkvmerge: bug fix: The improved MP3 garbage detection was broken resulting in an error message from mkvmerge in some weird situations. 2004-06-08 Moritz Bunkus * mkvmerge: bug fix: Matroska tracks can use lacing (several frames inside one Matroska block with only one timecode for the whole block). mkvmerge did not recreate the timecodes for the frames 1..n in the lacing correctly. 2004-06-06 Moritz Bunkus * mkvmerge: feature removed: Dropped support for 'time slices'. They were not used, didn't offer the player any additional value and caused massive increase in overhead. * mmg: new feature: Added a dialog for adding arbitrary command line options which includes a list of advanced options to chose from. 2004-06-04 Moritz Bunkus * mkvmerge: bug fix: The OGM fix in 0.9.0 broke handling for non-broken OGM files a bit. 2004-06-03 Moritz Bunkus * mkvmerge: new feature: Added support for the audio/video synchronization method used by NanDub (garbage at the beginning of audio tracks inside an AVI) for AC3 and MPEG audio tracks. In other words: If an AVI is read and an audio track contains garbage right at the beginning then the corresponding audio delay is calculated and used instead of simply discarding the garbage. 2004-06-01 Moritz Bunkus * mkvmerge: new feature: Enabled reading MPEG4 video from MP4 files (nope, they're not stored in Matroska's native mode yet). 2004-05-31 Moritz Bunkus * Released v0.9.0. * mkvmerge: bug fix: Improved handling for OGM files. Streams that are lacking the comment packet are handled better. 2004-05-29 Moritz Bunkus * mkvmerge: bug fix: Some MP3 streams are padded in the front with trash (mostly those in AVI files). This trash might contain valid MP3 headers which do not match the remaining headers for the actual track. Both the MP3 reader and the MP3 packetizer can now skip up to one of those bogus headers in the trash. 2004-05-25 Moritz Bunkus * mmg: bug fix: On some occasions the chapter editor thought there was no language associated with a chapter name and complained about that. * mmg: Removed the 'advanced' tab. Those options shouldn't be used anyway. * mkvmerge: bug fix: The OGM reader was not endian safe. 2004-05-20 Moritz Bunkus * mkvmerge: Rewrite of the VobSub handling code. 2004-05-17 Moritz Bunkus * mmg: bug fix: The chapter editor did not honor the values selected for 'country' and 'language'. 2004-05-15 Moritz Bunkus * mkvmerge: bug fix: Audio sync for Vorbis was partially broken for positive offsets. 2004-05-06 Moritz Bunkus * mmg: Fix for compilation with wxWindows < 2.4.2. * Released v0.8.9. * mmg: new feature: mmg will ask for confirmation before overwriting a file. This can be turned off on the settings tab. 2004-05-04 Moritz Bunkus * mmg: new feature: Implement drag'n'drop of files onto the input, attachment and chapter tabs. For the input and attachment tabs it works like pressing the 'add' button. On the chapters tab it works like calling 'Chapter Editor -> Open'. 2004-05-02 Moritz Bunkus * mkvinfo/mmg: Enabled compilation with wxWidgets 2.5 and Unicode enabled builds of wxWidgets. 2004-04-30 Moritz Bunkus * all: Increased the precision for timecodes in chapter files to nanoseconds (optionally, you can still use fewer digits after the '.'). 2004-04-26 Moritz Bunkus * mkvmerge: Fixes for compilation with gcc 3.4. 2004-04-24 Moritz Bunkus * mkvmerge: bug fix: Some strings read from RealMedia files were not zero-terminated resulting in broken track recognition for some files. 2004-04-23 Moritz Bunkus * Released v0.8.8. * mkvtoolnix now depends on libebml 0.7.0 and libmatroska 0.7.0. 2004-04-21 Moritz Bunkus * mkvinfo: bug fix: mkvinfo was forcing libmatroska not to handle unknown elements and crashed on those. 2004-04-15 Moritz Bunkus * mmg: new feature: When adding Matroska files the video track's display dimensions are displayed as well. 2004-04-13 Moritz Bunkus * mkvmerge: new feature: Implemented reading AAC from AVIs. 2004-04-11 Moritz Bunkus * mkvmerge: bug fix: The Flac packetizer was accessing uninitialized memory resulting in a crash on Windows. * avilib: bug fix: Fixed compilation on big endian systems. * mkvmerge: bug fix: Fixed the handling of RealMedia files with 'multirate' tracks (again). 2004-04-09 Moritz Bunkus * mkvmerge: bug fix: On some rare occasions chapters were not written correctly when splitting was active. 2004-04-06 Moritz Bunkus * mmg: bug fix: On non-Windows systems some combinations of wxWindows and GTK caused continuous 100% CPU usage after a special call to wxExecute. 2004-04-05 Moritz Bunkus * Released v0.8.7. 2004-04-03 Moritz Bunkus * mkvinfo: new feature: Added a terse output format via '-s'. 2004-03-27 Moritz Bunkus * mkvmerge: new feature: If using MPEG4 video and no aspect ratio or display dimensions are given mkvmerge will extract the aspect ratio information from the stream and automatically set the display dimensions accordingly. 2004-03-22 Moritz Bunkus * mkvmerge: bug fix: Using audio sync on AC3 tracks read from Matroska files did not work. 2004-03-21 Moritz Bunkus * mkvextract: new feature: Added extraction of RealAudio and RealVideo tracks to RealMedia files. 2004-03-16 Moritz Bunkus * mmg: new feature: Added a 'job queue'. The current settings can be added as a new job, and all pending jobs can be started for batch processing without user interaction. 2004-03-13 Moritz Bunkus * Released v0.8.6. * mkvmerge: bug fix: OGMs created by Cyrius OGMuxer are missing comment packets for some streams which mkvmerge choked on. 2004-03-10 Moritz Bunkus * mkvmerge/mmg: bug fix: The LANGUAGE and TITLE comments from OGM files were not set in the GUI when adding such files. 2004-03-09 Moritz Bunkus * mmg: bug fix: If the FourCC was set for one track it had been used for each track you selected as well. * mkvmerge: new feature: Tags are being kept when reading Matroska files. * mkvmerge: bug fix: Large values for --sync (over 2100) would cause an integer overflow resulting in no sync being done at all. * mkvmerge: bug fix: The VobSub handling was broken if the .idx file contains an entry for a track ("id: en") but no "timestamp:" entries for such a track. * mkvmerge: bug fix: The segment UID was not generated if splitting was off. * mmg: new feature: Automatically set the output file name when the first file is added to the same name but with a '.mkv' extension if it hasn't been set yet. Can be disabled on the 'settings' page. * mkvmerge: bug fix: More of the non-ASCII character fixes (in --tags and --chapters this time). * mkvmerge/mmg: new feature: Made the process priority selectable on the 'settings' page and default to 'normal' again (was 'lower' before). 2004-03-07 Moritz Bunkus * mmg: new feature: mmg will ask for confirmation before overwriting an existing output file. 2004-02-29 Moritz Bunkus * mkvmerge: bug fix: No memory was allocated for the --attachment-description resulting in weird descriptions or mkvmerge aborting with 'invalid UTF-8 characters'. * mkvmerge: bug fix: More of the non-ASCII characters fixes. 2004-02-28 Moritz Bunkus * mkvmerge: bug fix: File names with non-ASCII characters like Umlaute are handled correctly. 2004-02-27 Moritz Bunkus * mkvmerge: bug fix: Some RealMedia files contain several tracks for multirate stuff which are now ignored. Only tracks with known MIME types (audio/x-pn-realaudio and video/x-pn-realvideo) are used. 2004-02-23 Moritz Bunkus * mmg: Added a list of 'popular' languages on top of all language drop down boxes. 2004-02-22 Moritz Bunkus * Released v0.8.5. 2004-02-21 Moritz Bunkus * mkvmerge: bug fix: segfault in the RealMedia reader. * mmg: bug fix: When adding a Matroska file that contains a track name or a title with non-ASCII characters those would be displayed as UTF-8 in the appropriate input boxes. This has been changed, but obviously it won't work if you add files with Japanese characters on a system with a different locale. For full Unicode support you'll have to wait quite a bit longer. * mmg: bug fix: For some 'browse file' buttons the default directory was not set to the last directory a file was selected from. 2004-02-16 Moritz Bunkus * mmg: new feature: Added a function for adjusting the chapter timecodes by a fixed amount. 2004-02-15 Moritz Bunkus * mkvmerge: bug fix: Splitting by size would sometimes abort directly after opening the second file. 2004-02-14 Moritz Bunkus * mkvmerge: bug fix: Splitting by time was broken. 2004-02-12 Moritz Bunkus * all: A couple of changes that allow compilation on MacOS X. * avilib: synchronized with transcode's current CVS version. 2004-02-11 Moritz Bunkus * Released v0.8.4. * mkvmerge: bug fix: When reading Matroska files the durations attached to blocks were lost (e.g. for subtitle tracks). 2004-02-09 Moritz Bunkus * Released v0.8.3. 2004-02-08 Moritz Bunkus * mkvmerge: new feature: The LANGUAGE, TITLE tags and chapters are being kept when reading OGM files. * mkvmerge: Changed the meaning of '--global-tags'. They now apply to the complete file. 2004-02-07 Moritz Bunkus * mkvmerge: bug fix: VobSub durations were not converted from ms to ns precision resulting in VERY short packets :) 2004-02-01 Moritz Bunkus * mkvmerge: bug fix: The change from ms to ns precision broke subtitle handling from OGM. 2004-01-31 Moritz Bunkus * mkvmerge: Made "do not link files when splitting" the default, just like in mmg. * mkvmerge: new feature: Enabled reading of AAC from OGMs. * mkvmerge: The VobSub reader will not discard packets that exceed a certain size (64KB) anymore. * mkvmerge: Improved some internal memory freeing decisions. This should help with files/sections in which are only few keyframes. 2004-01-30 Moritz Bunkus * mkvmerge: Changed the two-pass splitting into a one-pass splitting. The resulting files will always be a little bit larger than the desired size/length, but this shouldn't matter. 2004-01-25 Moritz Bunkus * mkvmerge: bug fix: Segfault when using external timecode v1 files. 2004-01-24 Moritz Bunkus * mmg: Rewrote the chapter editor. It now makes a lot more sense: You can have multiple names for one chapter entry, and for each name there's only one language/country association. 2004-01-23 Moritz Bunkus * mkvmerge: bug fix: The AAC-in-Real stuff again. 2004-01-22 Moritz Bunkus * mkvmerge: Changed the complete timecode handling from ms precision to ns precision. Expect some things to be broken by this change. * mkvmerge: bug fix: Fixed a couple of memory leaks, especially in the QuickTime/MP4 parser. 2004-01-21 Moritz Bunkus * mmg: Added some more extensions for RealMedia files. * mkvmerge: bug fix: Proper handling for AAC read from RealMedia files (sample rate/output sample rate were not assigned correctly). * Released v0.8.2. 2004-01-19 Moritz Bunkus * mkvmerge: bug fix: The PCM handling was broken resulting in packets that did not end on sample boundaries. 2004-01-17 Moritz Bunkus * mkvmerge: bug fix: AVIs with uncompressed sound were leading to buffer overflows. * mkvmerge/mmg: allow the track names to be empty so that you can remove them when muxing Matroska files. Same for the file title. * mkvmerge: new feature: The track headers will be rendered completely including the elements that are set to their default values. Causes less confusion and allows the setting of e.g. the track language without having to remux the file completely. * mkvmerge: bug fix: If remuxing a file that contains frames with a reference to the same timecode those references were lost turning such P frames into I frames. This was the case for some RealAudio stuff. 2004-01-15 Moritz Bunkus * mmg: new feature: Automatically pre-set the attachment's MIME type if the file has a known extension (e.g. 'text/plain' for '.txt'). * mkvmerge: new feature: Unknown/unsupported track types can be copied 1:1 from Matroska input files. * mkvmerge: new feature: Added proper support for AAC-inside-RealMedia files. 2004-01-14 Moritz Bunkus * mkvmerge: new feature: Write cues for audio-only files as well (not more than one cue entry during a two seconds period). 2004-01-12 Moritz Bunkus * mkvmerge: bug fix: The default track flags could not be overriden on the command line when reading Matroska files. * Windows binaries after v0.8.1 require a new runtime DLL archive. Please download it from http://www.bunkus.org/videotools/mkvtoolnix/ Thanks. 2004-01-11 Moritz Bunkus * mkvmerge: new feature: Added the two new chapter flags 'hidden' and 'enabled'. * mkvmerge: new feature: Added a new format for the external timecode files. 2004-01-09 Moritz Bunkus * mkvmerge: bug fix: The VobSub handling was on occasion putting SPU packets for the wrong MPEG stream into the current stream resulting in that particular entity not being displayed. 2004-01-06 Moritz Bunkus * Released v0.8.1. 2004-01-05 Moritz Bunkus * mkvmerge: bug fix: The I/O classes were not initialized correctly on Windows resulting in spontaneous strange error messages, especially when muxing VobSubs. 2004-01-03 Moritz Bunkus * mkvmerge: bug fix: For some special atom sizes in Quicktime and MP4 files the size was not read correctly. This affected e.g. files created by Nero Digital. 2004-01-02 Moritz Bunkus * mkvmerge: bug fix: Segfault when muxing some video formats due to unchecked data (includes RealVideo). 2004-01-01 Moritz Bunkus * Released v0.8.0. 2003-12-29 Moritz Bunkus * mmg: bug fix: Fixed the "write chapters to Matroska file" feature. * mmg: bug fix: Made mmg not abort but only display an error message when malformed XML chapter files should be loaded. 2003-12-28 Moritz Bunkus * mkvmerge: bug fix: The timescodes for Vorbis were calculated one packet too early (meaning that the first packet did not start at 0). * mmg: Made "don't link" ON by default because some players might have problems with the second and all following files if they don't expect them not to start at 0. * mkvmerge, mkvextract, mkvinfo: Added support for the new tagging system. * mmg: bug fix: The default values for the chapter language and chapter country are now applied when loading simple (OGM) style chapter files as well. * mkvmerge: bug fix: The VobSub packetizer will assume MPEG2 if no MPEG version identifier was found ("Unsupported MPEG version: 0x00..."). 2003-12-23 Moritz Bunkus * mkvmerge: There are MP4 files that actually contain HE-AAC but don't have the 5 byte identifier. mkvmerge will also assume SBR if there's only the 2 byte identifier with a sampling frequency < 44100Hz. 2003-12-22 Moritz Bunkus * mkvextract: bug fix: Wrong display output and illegal memory access when extracting FLAC files. 2003-12-17 Moritz Bunkus * mmg: bug fix: If one added a Matroska file and the track name or language of a track consisted of only blanks then mmg would segfault. 2003-12-15 Moritz Bunkus * mmg: The input box will automatically select the first track when a file is selected. Upon track selection the input focus is set to the track name input box. * mmg: The chapter editor automatically focuses the chapter name input box whenever a chapter entry is selected. * mmg: bug fix: The chapter editor did not properly escape the chapter names resulting in invalid XML files if the special characters &, < or > were used. 2003-12-12 Moritz Bunkus * mkvmerge: bug fix: If splitting was active then a wrong CodecID was written to the second and all following files for MP2 tracks. 2003-12-11 Moritz Bunkus * Released v0.7.9. 2003-12-05 Moritz Bunkus * mkvmerge: Set the thread priority to BELOW_NORMAL on Windows (mkvmerge was already nice(2)'d on Unix systems). * mmg: bug fix: Removed the Ctrl-v and Ctrl-c accelerators that I used for mmg functions which overrode the usual 'paste' and 'copy' functionality. * mmg: Command line arguments are put into an option file which is then handed over to mkvmerge. This allows really long command lines, even on Windows. * mkvmerge: bug fix: Negative track IDs in Ogg files were reported incorrectly for mkvmerge -i (which affected the GUI). * mkvmerge: bug fix: Internal changes had messed up the --language and --track-name functionality. 2003-12-04 Moritz Bunkus * mmg: new feature: Added "up" and "down" buttons for the tracks, too. * mmg: new feature: Added a menu option, 'set output file', that can be used as an alternative to the "browse" button at the bottom (for those poor users with nothing more than 800x600 ;)). * mkvmerge: new feature: The user can alter the order in which the tracks for an input file are put into the output file with the new "--track-order" option. * mmg: bug fix: The "AAC is SBR" check box was grayed out for AAC inside MP4 files. 2003-12-03 Moritz Bunkus * mmg: bug fix: The "load settings" function did not load all settings, and some strings were not allocated at all resulting in a crash when a track was removed after loading these settings. * mkvmerge: bug fix: The AAC packetizer was not working if packets were being read from a raw AAC file (it worked fine from MP4 and Matroska files). * mkvmerge: bug fix: Avoid deadlocks when parsing broken SPU packets from VobSubs. * mmg: new feature: Added buttons for moving input files up and down in the input file box. 2003-12-02 Moritz Bunkus * Released v0.7.8. * mmg: new feature: You can set the values for the language and/or country codes for a chapter and all its children with the push of one button (the new "Set values" button). * mmg: new feature: You can set default values for the language and the country codes in the chapter editor (Chapter menu -> Set default values). 2003-12-01 Moritz Bunkus * mkvmerge: bug fix: Display dimensions were sometimes off by one, e.g. 640x479 instead of 640x480. This should not happen anymore for sane pixel dimensions. * mkvmerge: Changed the options '--fourcc' and '--aspect-ratio'. They now take a track ID just like all the other track specific options. * mkvmerge: new feature: Added an option '--display-dimensions' which allows the direct setting of the display dimensions. It is mutually exclusive with '--aspect-ratio', of course. 2003-11-29 Moritz Bunkus * mmg: bug fix: The language combo box was not correctly set on Windows. 2003-11-25 Moritz Bunkus * mkvmerge: Added an option for dumpig all split points including file size and timestamp information after the first splitting pass. 2003-11-23 Moritz Bunkus * mmg: bug fix: Quotes were missing if the timecode file's name contained spaces. 2003-11-18 Moritz Bunkus * mkvmerge: Rewrote the SPU packet parsing code. It should not abort anymore. * everything: Committed a lot of cross-OS compatibility fixes (thanks to Haali and thedj). 2003-11-16 Moritz Bunkus * Released v0.7.7. * mkvextract: Added extraction of FLAC to raw FLAC or OggFLAC files. * mkvmerge: Added full support for FLAC (both raw FLAC and OggFLAC are supported, even though raw FLAC is very slow). 2003-11-15 Moritz Bunkus * mmg: Added an input field for the 'CUE sheet to chapter name' conversion format. * mkvmerge: bug fix: Reworked the audio sychronization which did not work correctly for Matroska source files. 2003-11-13 Moritz Bunkus * mkvmerge: bug fix: Increased the size of the space reserved for the first meta seek element (see mkvmerge.1 for an explanation). In some situations (with tags, chapters, attachements and very big file) it might not have been enough in order to contain all elements. 2003-11-12 Moritz Bunkus * mmg: Added an input field for the 'timecodes' file to the track options. * mkvmerge: bug fix: When reading MP3 audio tracks from a Matroska file with the A_MS/ACM CodecID (MS compatibility mode) the layer was not identified correctly. * mkvmerge: Improved the file type detection for AC3 and AAC files a bit. * mkvmerge: Implemented a lot of fixes for big endian systems and processors that don't allow non-aligned memory access for word or bigger sized objects. * mmg: Made mmg accept return codes of 1 when 'mkvmerge -i' is run when an input file is added. This way mmg won't reject mkvmerge's output if mkvmerge only printed some warnings which will result in a return code of 1 instead of 0. * mkvmerge: bug fix: If running in identification mode (-i, used by mmg a lot) then don't output any warnings or mmg will not accept this file. 2003-11-10 Moritz Bunkus * mkvmerge: new feature: CUE sheets can be used for chapters. 2003-11-09 Moritz Bunkus * mkvmerge: Added support for --sync for VobSub tracks. * mkvtoolnix: Re-worked the configure script. Removed all the lib specific --with-...-include and --with-...-lib options. The --with-extra-includes and --with-extra-libs options can be used instead. 2003-11-08 Moritz Bunkus * mmg: When a file is being added then some information from it (languages, track names, file title) are kept, and the appropriate input boxes are pre-set with these values. Works only for formats that support such information (Matroska, VobSub). * mkvmerge: Sped up the reading of VobSub .idx files. 2003-11-05 Moritz Bunkus * Released v0.7.5. * mkvmerge: bug fix: The VobSub .idx parser was dividing by 0 if a track only contained one entry. * mkvmerge: Fixed the timecode reader code and made it a bit more flexible. Added more documentation for this feature along with an example file (examples/example-timecodes.txt). * mmg: bug fix: When 'default track' is selected then all other tracks of the same type will have their 'default track' flag cleared. * mkvmerge: SPU packets belonging to the same timecode are grouped together, and the duration is extracted directly from the SPU stream. 2003-10-29 Moritz Bunkus * mkvmerge: The VobSubs are now stripped of the MPEG program stream, and only the SPU packets are kept. 2003-10-28 Moritz Bunkus * mkvmerge, mkvextract: The Matroska reader and the OGM reader (mkvmerge) as well as mkvextract will discard empty or 'cleaning only' subtitle packets as they are appear in OGMs in order to mark the end of an entry. 2003-10-27 Moritz Bunkus * mkvmerge: new feature: Added the ability to read timecodes from text files which override the timecodes mkvmerge calculates normally. 2003-10-26 Moritz Bunkus * mkvextract: bug fix: Add all the mandatory elements when extracting chapters so that the resulting XML can always be used directly with mkvmerge again without having to manually add e.g. ChapterLanguage. * mkvmerge: bug fix; Handle audio tracks from Matroska files with the CodecID A_MS/ACM correctly. 2003-10-25 Moritz Bunkus * mkvmerge: Changes to use libmatroska's new lacing code. 2003-10-23 Moritz Bunkus * mkvmerge: bug fix: The VobSub .idx parser was mis-calculating the subtitle entry frame sizes. * mkvmerge: bug fix: The Vorbis packetizer was miscalculating the number of samples to add/remove when using audio sync. 2003-10-22 Moritz Bunkus * mmg: new feature: Added a new menu entry "File -> new" which will clear all the current muxing settings. * mmg: Added support for VobSub subtitles including their compression options. Added the .m4a extension to the 'add file' dialog. * mmg: bug fix: Made the input boxes for file names (tags and chapters) editable so that their contents can be deleted. * mkvmerge: Adjusted the compression handling to the final content encoding specs. 2003-10-19 Moritz Bunkus * mkvmerge: new feature: Implemented generic support for frame compression (mostly useful for VobSub subtitles but could also be used for others) and the complete framework for handling content encodings in the Matroska reader. 2003-10-18 Moritz Bunkus * mkvinfo: new feature: Dump unknown elements recursively. 2003-10-15 Moritz Bunkus * mkvmerge: bug fix: Made the SRT reader more tolerant regarding empty lines. 2003-10-14 Moritz Bunkus * Released v0.7.2. * mkvmerge: bug fix: If 'no linking' and splitting was active mkvmerge would abort on the start of the second output file due to timecodes that were calculated incorrectly. * mkvmerge: Implemented some speedups for a couple of container formats and track types (mainly AVI reader, MP3/AC3/AAC packetizers). Especially noticeable when splitting is active as well. 2003-10-12 Moritz Bunkus * mkvextract: bug fix: Support for extracting SBR AAC (previous 'fix' did not actually fix this). * mkvextract: bug fix: All extracted subtitles where written to the first output file given, not to the one they were supposed to be written to. 2003-10-11 Moritz Bunkus * mmg: bug fix: The 'abort' button was doing nothing under Windows. 2003-10-06 Moritz Bunkus * mmg: bug fix: Audio, video and subtitle track selection was translated into the wrong command line options. * mkvmerge: Replaced the avilib based AVI reading functions with AVI classes from Cyrius. 2003-10-03 Moritz Bunkus * Released v0.7.1. * Added a guide for mmg including some pictures. 2003-10-01 Moritz Bunkus * mkvmerge: Changed the lacing strategy again. New defaults are NOT to write duration elements for all blocks, NOT to use time slices and to USE lacing for most audio tracks. This will save some space. The downside is that the laced frames 'lose' their precise timecode information. Current demuxers don't care and will work nevertheless. More sophisticated applications that make use of these advanced information (duration elements, time slices) are not available at the moment. All these options can be toggled by the user with the new/modified options --disable-lacing, --enable-durations and --enable-timeslices. 2003-09-29 Moritz Bunkus * mkvmerge: new feature: Attachments are kept when reading Matroska files. 2003-09-28 Moritz Bunkus * mmg: new feature: Added a (nearly) full-featured chapter editor. 2003-09-26 Moritz Bunkus * mkvmerge: bug fix: XML chapters were not parsed correctly. 2003-09-24 Moritz Bunkus * mkvmerge: bug fix/new feature: Rewrote the complete MP3 handling. Now files with ID3 tags (both v1 and v2) are handled correctly. All MPEG-1 audio files (all layers) should be handled correctly now. 2003-09-23 Moritz Bunkus * mkvextract: new feature: Support for extract HE-AAC tracks to .aac files. Bug fix: Missing elements (default values) are handled correctly for audio tracks. 2003-09-19 Moritz Bunkus * mkvmerge: bugfix: If attachments were given with path components then the path component wasn't discarded for the attachment's description on Windows (normally only the file name should be used as the attachment's name). * mmg: Fixed wrong order of the options --chapters, --chapter-language and --chapter-charset. 2003-09-17 Moritz Bunkus * mmg: Added a lot of checks on the data given by the user so that invalid data is reported by mmg and not by mkvmerge. * mmg: Made the app a GUI app which gets rid of the "DOS box" on Windows. 2003-09-16 Moritz Bunkus * mmg: bugfix: Moved the aspect ratio and FourCC input fields from the global tab to the input tab where they belong to. * mkvmerge: new feature: RealAudio can be read from Matroska files. * mkvmerge: bugfix: RealVideo was not read correctly from Matroska files. * mkvmerge: bugfix: The SRT reader would abort if there was more than one empty line between subtitle entries line. * mkvextract: bugfix: Proper BOMs are written according to the desired charset when extracting text subtitles. * Released v0.7.0. * mkvextract: Add an UTF-8 BOM to extracted SSA/ASS and SRT subtitle files. Print warnings for missing durations for text subtitle tracks. 2003-09-14 Moritz Bunkus * Added a complete GUI for mkvmerge, mkvmergeGUI (mmg) based on the work of Florian Wagner. 2003-09-12 Moritz Bunkus * mkvmerge: Support for setting the track names. * mkvmerge: For Matroska source files: If the source contains chapters then these are kept unless the user specified chapters with --chapters. 2003-09-11 Moritz Bunkus * mkvmerge: Implemented an experimental VobSub reader and packetizer. No specs exist for these yet, though. * mkvmerge: Improved the support for Matroska files with tracks with big gaps between entries, e.g. subtitle tracks whose entries are a minute or more apart. * mkvmerge: When splitting is active and the source is a Matroska file then splitpoints were borked, and the first pass was slow as your average mole. * mkvmerge: The track UIDs are kept when reading Matroska files even when splitting is active. 2003-09-09 Moritz Bunkus * mkvmerge: Added a QuickTime/MP4 reader. Can handle several QuickTime video and QuickTime audio formats as well as AAC (both 'normal' AAC and SBR AAC). 2003-09-08 Moritz Bunkus * mkvmerge: DisplayWidth and DisplayHeight are kept intact when reading from a Matroska file but can be overridden with --aspect-ratio. 2003-08-30 Moritz Bunkus * Wrote documentation, XML examples and the DTD for the XML chapter files. * mkvinfo: Rewrote mkvinfo to use libebml's Read() function instead of manually reading each and every element. * mkvmerge: Added support for XML based chapter files. 2003-08-29 Moritz Bunkus * Released v0.6.5. 2003-08-28 Moritz Bunkus * mkvmerge: On Windows the 'isspace()' function used to trim leading and trailing white spaces from tags considered some parts of valid UTF-8 character sequences to be white spaces as well. Fixed by replacing 'isspace()' with 'isblank()'. Reported by Liisachan. * mkvmerge: Support for chosing the charset and language used in simple chapter files. Suggestion by Liisachan. * Rewrote the UTF-8 conversion routines. They should now handle U+8000 characters correctly. Reported by Liisachan. * mkvmerge: Real reader: For RV40 the actual dimensions were also used for the aspect ratio/display dimensions. This has been fixed: the actual dimensions are used for PixelWidth/PixelHeight, the dimensions stored in the RM container are used for the aspect ratio/DisplayWidth & DisplayHeight. Reported by Karl Lillevold. 2003-08-27 Moritz Bunkus * Released v0.6.4. * mkvextract: Support for re-creating dropped frames when extracting video to an AVI. Works only well if the frame durations in the source file are multiples of the frame rate, of course. * mkvmerge: The MP3 packetizer did not start at 0 with its timecodes. It does now. Reported by alexnoe. * mkvmerge: Proper support for dropped frames when reading AVI files. Reported by alley_cat, Horváth István. * mkvmerge: Fixed some missing default values in the Matroska reader (e.g. mono audio files). Reported by Liisachan. 2003-08-25 Moritz Bunkus * mkvmerge: Improved all command line parsing error messages. * mkvmerge: Improved the error message for the XML tag file parser if an invalid &-sequence is found. * mkvextract: Strings are postprocessed so that the special characters &, <, >, " are replaced by their HTML equivalents &, <, > and ". 2003-08-24 Moritz Bunkus * mkvmerge: Disabled lacing by default and renamed --no-lacing to --enable-lacing. With all the proper info about the laced frames lacing is actually producing larger files than without lacing. * mkvmerge: Meta seek element is split into two elements. The first's located at the start of the file containing only a small number of level 1 elements. The clusters are referenced in a second meta seek element located at the end of the file. Removed the options "--meta-seek-size" and "--no-meta-seek". Added the option to disable that second meta seek entry, "--no-clusters-in-meta-seek". 2003-08-22 Moritz Bunkus * mkvextract: Backwards compatibility: Accepts S_SSA and S_ASS as valid CodecIDs (new CodecIDs are S_TEXT/SSA and S_TEXT/ASS). * mkvmerge: Bugfix: If a subtitle packet was the last packet in a cluster then its duration was not written resulting in a broken file. 2003-08-21 Moritz Bunkus * mkvinfo: Added support for the following elements: KaxPrevFilename, KaxNextFilename, KaxTrackFlagEnabled, KaxTrackName, KaxCodecName, KaxCodecSettings, KaxCodecInfoURL, KaxCodecDownloadURL, KaxCodecDecodeAll, KaxTrackOverlay, KaxAudioPosition, KaxAudioOutputSamplingFreq, KaxVideoDisplayUnit, KaxVideoColourSpace, KaxVideoGamma, KaxVideoFlagInterlaced, KaxVideoStereoMode, KaxVideoAspectRatio, KaxClusterPosition, KaxClusterPrevSize, KaxBlockVirtual, KaxBlockAdditions, KaxBlockMore, KaxBlockAddID, KaxBlockAdditional, KaxReferenceVirtual, KaxSliceBlockAddID, KaxChapters, KaxEditionEntry, KaxChapterAtom, KaxChapterUID, KaxChapterTimeStart, KaxChapterTimeEnd, KaxChapterTrack, KaxChapterTrackNumber, KaxChapterDisplay, KaxChapterString, KaxChapterLanguage, KaxChapterCountry 2003-08-20 Moritz Bunkus * Released v0.6.3. * mkvmerge: The Real reader accepts incomplete video packets and tries to re-assemble them instead of aborting with 'die: len != total'. 2003-08-18 Moritz Bunkus * mkvmerge: Implemented a switch that has to be used for SBR AAC / AAC+ / HE-AAC if the source file is an AAC file and the AAC file contains SBR AAC data (no automatic detection possible in this case!). 2003-08-14 Moritz Bunkus * mkvmerge: Low bitrate AC3 tracks from Real's DNET are identified as A_AC3/BSID9 or A_AC3/BSID10. * mkvmerge: The RealMedia reader takes the number of packets into account when reading which results in better end-of-file detection. 2003-08-12 Moritz Bunkus * Windows versions: Fixed a bug with files bigger than 2GB not being recognized. The accompanying error message was "File NAME has unknown type. Please have a look at the supported file types..." * all tools: Fixed a bug which would only allow Matroska files up to 4GB to be read. The accompanying error message was "No segment found" or something similar. * mkvinfo: Unknown elements are properly skipped now. 2003-08-11 Moritz Bunkus * mkvmerge: For RV40 (RealVideo 9) the actual video dimensions are decoded from the first video frame. * Released v0.6.2. * mkvmerge: Video aspect ratio was set wrong if the user did not specify any. * Released v0.6.1. * mkvmerge: RealVideo: Support for all kinds of frames including "short" and "merged" frames (results are identical to Gabest's output). 2003-08-10 Moritz Bunkus * mkvmerge: The aspect ratio setting will only cause upscaling of the current video dimensions which are then put into KaxVideoDisplayWidth and KaxVideoDisplayHeight. * mkvextract: Changed how the global elements are handled by taking the parent's size into account. This re-enables processing of files produced with the latest VirtualDubMod. * mkvmerge: Changed how the Matroska reader handles global elements by taking the parent's size into account. This re-enables processing of files produced with the latest VirtualDubMod. * mkvinfo: Changed how mkvinfo handles global elements by taking the parent's size into account. Hopefully this is now correct. * mkvextract: Support for MultiComment tags. * mkvmerge: Fixed support for reading MultiComment tags from XML tag files. * mkvmerge: Allow some slightly broken Matroska files to be processed correctly if the reference blocks are off by at most 1ms. 2003-08-09 Moritz Bunkus * mkvmerge: MP3: Better support for other MPEG versions and layers (number of samples per packet). * mkvinfo: Added Adler32 calculation and display for frame contents with the -c option. * mkvmerge: RealAudio: "dnet" is actually byte-swapped AC3 and is being treated as such (re-swapped and output as AC3). * mkvmerge: Fixed a bug with chapters and splitting which would crash mkvmerge if no chapter belonged into the output file. 2003-08-06 Moritz Bunkus * Changes for compilation with gcc 2.95. 2003-08-04 Moritz Bunkus * Released v0.6.0. 2003-07-30 Moritz Bunkus * base64tool: Added a tool for Base64 encoding/decoding needed for binary elements in the tags. 2003-07-29 Moritz Bunkus * mkvextract: Support for extracting chapter information. * mkvmerge: Added support for simple chapter files (CHAPTER01=..., CHAPTER01NAME=Hello World etc). 2003-07-26 Moritz Bunkus * mkvmerge: Added support tags based on XML files. * mkvextract: Rewrote the command line syntax. Added extracting attachments and tags as new options. * mkvmerge: Fixed a bug in the SRT reader which would not always handle Unix/DOS style new line cases correctly. 2003-07-23 Moritz Bunkus * mkvmerge: Added support for the "SegmentTitle" (general title of the file written). 2003-07-16 Moritz Bunkus * mkvmerge: Added support for UTF-8 and UTF-16 encoded text files for the SRT and SSA/ASS readers. 2003-07-15 Moritz Bunkus * mkvmerge: The SSA/ASS reader ignored the --sub-charset option and always used the current charset to recode the subtitles. 2003-07-14 Moritz Bunkus * mkvmerge: Added support for attaching files to the output file(s). * mkvinfo: Support for the elements dealing with attachments (KaxAttachments, KaxAttached, KaxFileDescription, KaxFileName, KaxMimeType, KaxFileData). 2003-07-13 Moritz Bunkus * mkvmerge: Changed the RealVideo packaging method: Subpackets are assembled into complete packets so the demuxer does not have to do that anymore. * mkvmerge: DisplayWidth and DisplayHeight, which form the display aspect ratio, are now always written to ease changing them later without having to completely remux the file. 2003-07-08 Moritz Bunkus * mkvmerge: Fixed some infinite-reading-from-a-file bug that occured on Windows when reading SSA/ASS files. * mkvmerge: Fixed a bug which would mostly appear with subtitles that have very long ( > 60s) gaps between entries. Here the cluster would not been rendered properly leaving mkvmerge either comatose ( = endless loop) or just plain dead ( = crashing). 2003-07-07 Moritz Bunkus * mkvinfo: Added support for the rest of the tags: KaxTagMultiComment, KaxTagMultiCommentName, KaxTagMultiCommentComments and KaxTagMultiCommentLanguage. Almost all tags have been successfully tested. 2003-07-06 Moritz Bunkus * Added a RealMedia demuxer that can handle both RealVideo and RealAudio (all codecs). 2003-07-02 Moritz Bunkus * mkvinfo: Added support for allmost all tags (totally untested): KaxTag KaxTagArchivalLocation KaxTagAudioEncryption KaxTagAudioGain KaxTagAudioGenre KaxTagAudioPeak KaxTagAudioSpecific KaxTagBibliography KaxTagBPM KaxTagCaptureDPI KaxTagCaptureLightness KaxTagCapturePaletteSetting KaxTagCaptureSharpness KaxTagChapterUID KaxTagCommercial KaxTagCropped KaxTagDate KaxTagDiscTrack KaxTagEncoder KaxTagEncodeSettings KaxTagEntity KaxTagEqualisation KaxTagFile KaxTagGeneral KaxTagGenres KaxTagIdentifier KaxTagImageSpecific KaxTagInitialKey KaxTagKeywords KaxTagLanguage KaxTagLegal KaxTagMood KaxTagMultiCommercial KaxTagMultiCommercialAddress KaxTagMultiCommercialEmail KaxTagMultiCommercialType KaxTagMultiCommercialURL KaxTagMultiDate KaxTagMultiDateDateBegin KaxTagMultiDateDateEnd KaxTagMultiDateType KaxTagMultiEntity KaxTagMultiEntityAddress KaxTagMultiEntityEmail KaxTagMultiEntityName KaxTagMultiEntityType KaxTagMultiEntityURL KaxTagMultiIdentifier KaxTagMultiIdentifierBinary KaxTagMultiIdentifierString KaxTagMultiIdentifierType KaxTagMultiLegal KaxTagMultiLegalAddress KaxTagMultiLegalType KaxTagMultiLegalURL KaxTagMultiPrice KaxTagMultiPriceAmount KaxTagMultiPriceCurrency KaxTagMultiPricePriceDate KaxTagMultiTitle KaxTagMultiTitleAddress KaxTagMultiTitleEdition KaxTagMultiTitleEmail KaxTagMultiTitleLanguage KaxTagMultiTitleName KaxTagMultiTitleSubTitle KaxTagMultiTitleType KaxTagMultiTitleURL KaxTagOfficialAudioFileURL KaxTagOfficialAudioSourceURL KaxTagOriginalDimensions KaxTagOriginalMediaType KaxTagPlayCounter KaxTagPopularimeter KaxTagProduct KaxTagRating KaxTagRecordLocation KaxTags KaxTagSetPart KaxTagSource KaxTagSourceForm KaxTagSubGenre KaxTagSubject KaxTagTargets KaxTagTitle KaxTagTrackUID KaxTagVideoGenre 2003-06-29 Moritz Bunkus * mkvmerge: Support for handling native video tracks (e.g. B frames) when reading Matroska files. * mkvmerge: Implemented time slice durations , default block duration and block durations for slices where necessary. 2003-06-24 Moritz Bunkus * mkvinfo: Support for KaxSegmentFilename, KaxTitle, KaxSlices, KaxTimeSlice, KaxSliceLaceNumber, KaxSliceFrameNumber, KaxSliceDelay and KaxSliceDuration. 2003-06-22 Moritz Bunkus * Released v0.5.0. * Added 'ReferencePriority' element to the known elements for mkvinfo. * Removed "(mkvinfo) " from mkvinfo's output in order to improve readability and save space. * --sub-charset now also needs a track ID. * Modified the verbosity levels for mkvinfo: The seek head subentries and cue subentries will only be shown at level 2 to make the output easier to read. * The language and default track settings are now kept again if not overridden when reading from Matroska files. 2003-06-21 Moritz Bunkus * Added mkvextract which can extract tracks from a Matroska file into other files. 2003-06-20 Moritz Bunkus * Switched from cygwin to MinGW32 for the Windows binaries. * Fixed a double free() on cleanup (after writing the cues) which resulted in a segfault sometimes. * Added a SSA/ASS reader. 2003-06-19 Moritz Bunkus * Support for reading text subtitles from Matroska files. * Made the AAC reader automatically recognize if a MPEG4 AAC file contains the emphasis header (deprecated) or not (current standard). 2003-06-15 Moritz Bunkus * Released v0.4.4. * Several options now need an explicity track ID to specify which tracks of an input file the option should be applied to. These options include --atracks, --vtracks, --stracks, --sync, --default-track, --cues and --language. * The Matroska reader now handles track selection correctly. 2003-06-13 Moritz Bunkus * Added an option for identifying input files and their track types. 2003-06-12 Moritz Bunkus * Released v0.4.3. 2003-06-11 Moritz Bunkus * Support for proper linking of segments via the segment UIDs. The first and last files created can be manually linked to given UIDs. 2003-06-08 Moritz Bunkus * Added support for splitting output files by size or by time and limiting the number of output files. * Added support for the segment UID/next segment UID/previous segment UID. 2003-06-06 Moritz Bunkus * A lot of changes to comply with libmatroska/libebml 0.4.4. 2003-06-03 Moritz Bunkus * Implemented stricter content based file type identification for MP3 and AC3 files so that those won't be mis-identified. 2003-05-31 Moritz Bunkus * Some improvements to the mkvinfo GUI (thanks to jcsston for the patch/the ideas). 2003-05-29 Moritz Bunkus * Released v0.4.2. * Support for some more tags in both mkvmerge and mkvinfo. * Fixed a segfault in the Matroska reader. * Removed the '--sub-type' switch as all text subtitles will be stored in UTF-8 format. Made iconv mandatory in the configure checks for this very reason. * Added a GUI to mkvinfo. 2003-05-23 Moritz Bunkus * Released v0.4.1. * A lot of changes regarding file I/O. Files bigger than 2GB should now be handled correctly on both Linux and Windows. 2003-05-22 Moritz Bunkus * Added checks for MP4/Quicktime files which will abort mkvmerge. * Support for reading AAC tracks from Matroska files. * Released v0.4.0. 2003-05-21 Moritz Bunkus * Some internal changes and enhancements. Code requires libebml and libmatroska 0.4.3 now. 2003-05-19 Moritz Bunkus * ADTS headers are stripped from the AAC streams. This is what I'd call 'proper AAC support'. 2003-05-18 Moritz Bunkus * Better support for DTS streams in general and for DTS-in-WAV in particular (patch by Peter Niemayer ). 2003-05-17 Moritz Bunkus * Renamed '--no-utf8-subs' to '--sub-type utf8'. Polished the man page regarding subtitle handling. * Fixed a bug with mono MP3 files. * Added support for AAC files (only those with ADTS headers at the moment). 2003-05-15 Moritz Bunkus * Released v0.3.3. * If an error occurs while writing to the destination file the error is reported and mkvmerge aborts with a non-zero exit code. * The OGM reader reported I frames as P frames and vice versa round making seeking not really nice ;) 2003-05-11 Moritz Bunkus * Fixed a bug with the AC3 timecode calculation (patch by Peter Niemayer ). * Support for reading DTS files & putting them into Matroska (main patch by Peter Niemayer , a few things by me). * Released v0.3.2. * Fixed the huge memory need if reading from AVI files (introduced on 2003-05-06 with the internal changes). * Proper handling of the 'default track' flag and the language for the Matroska reader. * Proper handling of the 'default track' flag for all the packetizers. 2003-05-09 Moritz Bunkus * Made mkvtoolnix compile under cygwin. 2003-05-06 Moritz Bunkus * Added support for aspect ratio. * Subtitle charsets can be specified with --sub-charset and do not rely on the current locale anymore. * For the last packet of each track its duration is now stored. * A lot of internal changes - I hope nothing has broken... (See ChangeLog.cvs for details.) * The matroska reader calculated wrong header lengths for Vorbis tracks. 2003-05-04 Moritz Bunkus * mkvinfo reports the FourCC for video tracks with a CodecID of V_MS/VFW/FOURCC and the format tag for audio tracks with a CodecID of A_MS/ACM. 2003-05-03 Moritz Bunkus * Released v0.3.1. * Tracks read from a Matroska file will keep their UID if it hasn't been used yet. * Support for reading text subtitle streams from OGM files. * Added support for EbmlVoid everywhere to mkvinfo. 2003-05-02 Moritz Bunkus * Support for KaxTrackLanguage and ISO639 languages. 2003-04-30 Moritz Bunkus * First public release.