MKVToolNix v55.0.0 released
2021-03-06 — mosu
Heya everyone,
wait! We’ve just had a release of MKVToolNix. What’s up with doing another one so soon? Well, thing is, that previous release is buggy. Quite a bit. It included three major changes to its internals: the change from boost::filesystem
to std::filesystem
, the extension of languages to include ISO 639-3 codes and a complete rewrite how file identification works in the GUI.
The first of those rewrites caused a lot of pain for users on Windows. First of all UNC paths such as \\server\share\directory\file.mkv
didn’t work at all: the GUI might hang, not remember the most recently used directory, refuse to create missing directories, things like that. Second, there were several situations in which non-ASCII characters (think German Umlauts, Asian characters, Emojis) were mangled. Users are constantly opening new issues in my bug tracker which is always a good indicator that quick bug fix release is warranted.
The other two rewrites also caused bugs that, while not as severe, were annoying, too. This release includes fixes for them, too.
There have been no changes concerning package maintainers.
You can download the source code or one of the binaries. The Windows and macOS binaries as well as the Linux AppImage are available already. The other Linux binaries are stil being built and will be available over the course of the next couple of hours.
Here are the NEWS since the previous release:
Bug fixes
- all programs, only on Windows: fixed checking existence of & creating directories with UNC paths such as
\\server\share\folder\file.mkv
. Fixes #3041. - all programs, only on Windows: implemented several workarounds for bugs in
std::filesystem
wrt. UNC paths. The effect of those bugs was that Blu-rays and DVDs couldn’t be added from UNC paths. Fixes #3037. - mkvmerge, only on Windows: fixed non-ASCII characters getting mangled in the destination file name when splitting is active.
- MKVToolNix GUI, only on Windows: fixed the GUI hanging when trying to browse for files on drives that don’t actually exist. Fixes #3046.
- MKVToolNix GUI, only on Windows: the GUI did not remember UNC paths as the “most recently used source directory” properly.
- MKVToolNix GUI: only on Windows: when dragging & dropping files from other applications to MKVToolNix GUI the GUI will force the drop action to be a copy action, no matter which keys were pressed by the users. This prevents Windows Explorer from deleting the dragged file when the user presses shift while dropping the file onto MKVToolNix GUI.
- MKVToolNix GUI, only on Windows: when using the file dialog for selecting a file name to save to (e.g. when browsing for the destination file name in the multiplexer or saving an attachment in the header editor) non-ASCII characters in the default file name were mangled. Fixes #3049.
- MKVToolNix GUI: multiplexer: the user can now configure what to do when using the “Add source files” button independently of the setting for what happens when files are dragged & dropped onto the GUI. The same options are available, but they’re distinct settings, allowing for different use cases. Fixes #3035.
- MKVToolNix GUI: multiplexer: deriving the track language from file names doesn’t use one big regular expression of all enabled languages anymore. Instead, the file name is split into parts on a list of characters (such as
.
or(
and)
; configurable in the preferences). This prevents the regular expression becoming too big for the regular expression library to handle when many languages are enabled. Fixes #3048. - MKVToolNix GUI: preferences: the language lists for “deriving track languages” and “enabling items by language” always included all the ISO 639-3 languages, even if those weren’t enabled in the “often-used languages” pane. Fixes #3047.
Other changes
- mkvmerge, MKVToolNix GUI multiplexer: the functionality for changing the length of the NALU “size” field for AVC/H.264 and HEVC/H.265 tracks has been removed. The corresponding command-line option will continue to be recognized by mkvmerge as not to break existing third-party applications, but it won’t actually do anything.
Have fun 😊