mkvtoolnix is a set of tools that allow users to display information about, extract streams from, merge several streams into, and split Matroska media files. Supported video stream types include streams from AVIs, Ogg/OGM, RealVideo, MP4 files, and MPEG program streams as well as verious elementary streams (h264/AVC, MPEG1/2, VC1, Dirac). Supported audio formats include AAC, (E)AC3, DTS/DTS-HD, FLAC, MP2, MP3, RealAudio, and Vorbis. Several subtitle formats are supported, including SRT, SSA, ASS, VobSub, and many others.
System requirement is not defined
Information regarding Project Releases and Project Resources. Note that the information here is a quote from Freecode.com page, and the downloads themselves may not be hosted on OSDN.
New features include a reader for the FlashVideo file format,
splitting by frame/field numbers,
splitting by chapter numbers,
splitting into parts by frame/field numbers,
reading VobSubs from MP4 files,
and the ability to save additional commandline options as default options in mmg.
Header removal compression has been turned off.
Bugfixes have been done all over the place.
The AVC/h.264 timecode handling code has been completely rewritten. Users do not have to specify the --default-duration/FPS for such tracks anymore. The (E)AC3 code has been completely rewritten, fixing several issues. The file type detection code has been improved for several file formats. MicroDVD subtitles are now recognized as an unsupported file format. The "--default-duration" option and mmg's "FPS" field can handle values like "25p" or "50i".
Several fields have been added to mkvmerge's verbose identification output. File type identification and a segfault have been fixed for DTS files. File type detection for (E)AC3 files has been improved. mkvextract's "timecodes_v2" mode uses the same track IDs as mkvmerge's identification mode outputs again. An invalid memory access with certain broken Matroska files has been fixed. mkvmerge can read input files as if they were part of a single huge file. mkvmerge can extract and use the audio encoder delay information stored in MP4 files as written by iTunes.
mkvmerge and mkvextract use the same track IDs again. Performance on Linux has been improved for large files. MP4 files with chapters in unexpected character sets cause a proper error message. The MPEG program stream reader can handle tracks with huge gaps gracefully. Compilation has been fixed if gettext, FLAC, or CURL is not available.
Many bugs were fixed and great improvements were made to the MPEG transport stream handling. Building now requires GCC 4.6.0 or newer and Boost 1.46 or newer, as many features from the C++11 standard are used actively.