Create, modify and inspect Matroska (MKV) files for Windows PC

MKVToolNix (64-bit)

MKVToolNix 51.0.0 (64-bit)

  -  18.26 MB  -  Open Source

Sometimes latest versions of the software can cause issues when installed on older devices or devices running an older version of the operating system.

Software makers usually fix these issues but it can take them some time. What you can do in the meantime is to download and install an older version of MKVToolNix 51.0.0 (64-bit).


For those interested in downloading the most recent release of MKVToolNix (64-bit) or reading our review, simply click here.


All old versions distributed on our website are completely virus-free and available for download at no cost.


We would love to hear from you

If you have any questions or ideas that you want to share with us - head over to our Contact page and let us know. We value your feedback!

  • MKVToolNix 51.0.0 (64-bit) Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    MKVToolNix 51.0.0 (64-bit) Screenshot 1
  • MKVToolNix 51.0.0 (64-bit) Screenshot 2
  • MKVToolNix 51.0.0 (64-bit) Screenshot 3

What's new in this version:

New features and enhancements:
- mkvmerge, mkvpropedit, MKVToolNix GUI: IETF BCP 47 language tags: added missing support for UN M.49 regions for which there are no corresponding ISO 3166 alpha codes. This enables language tags such as `es-419` = Spanish in Latin America and the Caribbean. Implements #2919.
- MKVToolNix GUI: IETF BCP 47 language tags: the text in the widget displaying the current language & the corresponding edit button is now displayed like a link (depending on the theme: different color & underlined), making it clearer that not just the edit button can be clicked but the text, too.

Bug fixes:
- mkvmerge: AV1 parser: fixed mkvmerge crashing after uncaught exceptions due to certain data conditions. Found by fuzzying.
- mkvmerge: AV1 packetizer: the duration of frames wasn't set properly. When appending AV1 IVF or OBU files this meant that the last frame of the Nth file and the first frame of file N+1 had the same timestamp. Fixes #2937.
- mkvmerge: DTS reader: fixed handling of buffers with an odd length when byte-swapped DTS is detected so that mkvmerge doesn't abort with a failed assertion. Found by fuzzying.
- mkvmerge: h.264/AVC and h.265/HEVC elementary stream readers: mkvmerge will no longer claim to recognize data that looks like AVC or HEVC but with invalid video width/height values as that lead to failed assertions in libEBML later. Found by fuzzying.
- mkvmerge: h.265/HEVC parser: fixed mkvmerge aborting after uncaught exceptions due to certain data constellations found by fuzzying.
- mkvmerge: IVF reader: fixed mkvmerge crashing with a "division by zero" error due to certain data conditions. Found by fuzzying.
- mkvmerge: fixed mkvmerge aborting with a "division by zero" error due to the timestamp scaling factor being 0 after handling certain data constellations found by fuzzying.
- mkvmerge: track statistics: fixed a "division by zero" error when the content's shorter than 1ms. Found by fuzzying.
- mkvmerge, mkvinfo, mkvextract, mkvpropedit: Matroska access class: fixed an invalid memory access under certain data conditions. Found by fuzzying.
- MKVToolNix GIU: IETF BCP 47/RFC 5646 language tags: the GUI will no longer open the language dialog when clicking on a disabled language display widget.
- MKVToolNix GUI: IETF BCP 47 language tags: the "variants" combo-boxes were not populated even when the language tag was valid and contained at a variant. Fixes #2923.
- MKVToolNix GUI: IETF BCP 47 language tags: when no language is selected, at least one of the other components (extended subtags, region, or variants) has something selected and "private use" is not empty, the GUI would claim this to be a valid tag, which it isn't. Fixes #2924.
- MKVToolNix GUI: multiplexer: when the tracks/chapters/tags selection changes from "at least one entry selected" to "no entry selected", the input controls will be reset to their default state and not just disabled. Fixes 2927.

Build system changes:
- configure` now checks for the presence of the a system-wide installed copy of the JPCRE2 C++ wrapper library for the PCRE2 library and uses that if it's new enough (at least v10.32.1). If not, the bundled version will be used as a fallback.