View Full Version : gMKVExtractGUI
Pages :
1
2
3
4
5
6
7
8
9
10
[
11]
12
13
gpower2
15th October 2022, 11:45
I have just noticed that if you set
{FilenameNoExt} {Language} {TrackName}
and the trackname is empty, it keeps the space after {Language}, leading to a filename .ext format.
Would you please fix that?
Hey Tormento, indeed I could do a final Trim in the filename before appending the extension, thanks for the feedback :)
gpower2
15th October 2022, 11:46
Long time user of this great tool as well for many years, thanks for creating and maintaining it!
I do have a question: would it be possible to add an option to be able to select a specific subtitle language that is then always selected automatically when opening a video file?
Example: when I select Dutch (DUT) as standard subtitle language, opening an .mkv with many subtitles would have DUT selected by default.
Hey RyFeR26, at the moment I don't want to add any more complexity to the UI, by adding more options/settings, as it could lead to a more cluttered design, sorry for that.
Hopefully the right click menu can help you easily select all Dutch language elements. :)
tormento
18th October 2022, 14:25
thanks for the feedback :)
You are the most welcome.
What about having the project on github?
RyFeR26
22nd October 2022, 15:13
Hey RyFeR26, at the moment I don't want to add any more complexity to the UI, by adding more options/settings, as it could lead to a more cluttered design, sorry for that.
Hopefully the right click menu can help you easily select all Dutch language elements. :)
Selecting via that way works as well, thanks for the reply.
oniiz86
29th January 2023, 07:24
Hey Tormento, indeed I could do a final Trim in the filename before appending the extension, thanks for the feedback :)
@gpower2 I was wondering if this will be implemented soon in v2.6.4 or not worth the effort until there are a quite a few further refinements needed to be added?
gpower2
29th January 2023, 13:32
Hey guys!
Another new year, another release!
Thanks to @tormento's feedback, I released a new minor version to address the issue with having spaces in output file names when a pattern placeholder is empty.
As always, enjoy!
Download link:
https://sourceforge.net/projects/gmkvextractgui/files/v2.6.4/gMKVExtractGUI.v2.6.4.7z/download
Changelog
v2.6.4
Minor code optimizations
Add final Trim when generating the output filename (thanks tormento!)
filler56789
29th January 2023, 16:07
↑ :thanks:
oniiz86
1st February 2023, 09:00
@gpower2 :thanks: so very much for the swift update, once again the mods have yet to update the title thread to v2.6.4 ;)
Bigmango
15th February 2023, 22:14
Hi,
There are some gui sizing problems with scaling at 150% on hidpi (4k) screens (this is on linux with mono).
See the attached screenshot.
(it displays fine at 100%)
Could you please fix this ? Many :thanks:
kedautinh12
16th February 2023, 04:23
Add images to other image sources like https://imgur.io/ or you will waiting for approvaled by moderator forever :D
gpower2
27th February 2023, 12:34
Sorry for the late reply @Bigmango, unfortunately it seems that mono does not respect the DPI aware code the same way as Windows do, I cannot guarantee I will be able to fix this issue, since I need to setup a new Ubuntu box for testing. :(
badshah
5th March 2023, 04:26
From version 2.6.0 to latest version, all are showing Trojan.Malware.300983.susgen infection after scanning on virustotal
https://www.virustotal.com/gui/file/22124809cc2d39c2e33558185922f491799fb4bd990d970fa321d88c66488d39
Zetti
5th March 2023, 09:40
Not now, maybe earlier.
Check the resuilt again.
gpower2
10th March 2023, 07:29
From version 2.6.0 to latest version, all are showing Trojan.Malware.300983.susgen infection after scanning on virustotal
https://www.virustotal.com/gui/file/22124809cc2d39c2e33558185922f491799fb4bd990d970fa321d88c66488d39
This is possibly a false positive from the heuristics of MaxSecure, since the rest 59 AV vendors have no issues.
In any case, this is an open source project, so feel free to download and build the source code yourself in case you feel uneasy with the pre-build binaries. :)
Perenista
15th May 2023, 18:41
Does gMKVExtractGUI also have a Mac version? If not, what software would do the same tasks for Mac users?
gpower2
17th May 2023, 22:52
Does gMKVExtractGUI also have a Mac version? If not, what software would do the same tasks for Mac users?
In theory, it could run via Mono in Mac, but I haven't been able to set up a VM with OSX to test it...
You could try and give it a go and post your results here :)
Lathe
28th May 2023, 23:01
Hey guys!
Another new year, another release!
Thanks to @tormento's feedback, I released a new minor version to address the issue with having spaces in output file names when a pattern placeholder is empty.
As always, enjoy!
Download link:
https://sourceforge.net/projects/gmkvextractgui/files/v2.6.4/gMKVExtractGUI.v2.6.4.7z/download
Changelog
v2.6.4
Minor code optimizations
Add final Trim when generating the output filename (thanks tormento!)
Hey Bro! I just stumbled on this thread because I was doing a search about MKVExtract seemingly running slower than usual lately. Not a huge deal, but noticeable. I normally don't do anything really exotic with it, usually just extract EAC3 audio tracks to convert them to AC3 for my old OPPO player to be able to play them. If that is all I do with it, should I still try your version here? If I do, do I put your files in its own program folder, or do I somehow associate it with MKVMerge?
Thanks kindly for your advice and help!
gonca
29th May 2023, 01:23
If I do, do I put your files in its own program folder
Yes.
The first time you run it, it will throw an error.
Click OK.
Then you get the chance to browse to MKVToolNix.
From here on it is clear sailing.
gendalv
9th October 2023, 10:12
Can you add simple filters like: show only entries containing "sub" & "eng" but not "SDH". Or at least the first part of it.
morphinapg
8th November 2023, 11:03
Is there any way to get this to work with the Windows Store version of mkvtoolnix? If I find the directory that the exe files are located in, it gives me access denied errors. If I modify permissions on the mkvtoolnix folder (which is a little difficult compared to usual) then it works, but then it breaks mkvtoolnix until I uninstall it and reinstall it again.
Mosu
8th November 2023, 19:12
I appreciate your support for MKVToolNix, but the answer is unfortunately no. This is a bloody limitation of how packaging for the Windows Store works. See this issue (https://gitlab.com/mbunkus/mkvtoolnix/-/issues/3223) & this FAQ entry (https://gitlab.com/mbunkus/mkvtoolnix/-/wikis/Launching-the-command-line-programs-with-the-Microsoft-Store-variant) for more details.
gpower2
15th November 2023, 08:52
Is there any way to get this to work with the Windows Store version of mkvtoolnix? If I find the directory that the exe files are located in, it gives me access denied errors. If I modify permissions on the mkvtoolnix folder (which is a little difficult compared to usual) then it works, but then it breaks mkvtoolnix until I uninstall it and reinstall it again.
I think that Windows Store apps are designed to be isolated, so it would be understandable if other apps cannot access them... :(
Liquid
23rd October 2024, 19:41
http://2advanced.uk/meg.png
using folder prefix in options, does not work anymore, in v2.5.0 it worked, can we have a fix for that.
Folder prefix is converted to {Folder Name}_, where both slashes are converted to underscore.
This change was made in v2.6.1
- Replace invalid file characters with underscore character ('_') from output filename
can we have the ability to export subs to subfolders next to file we exporting from.
Thank You
gpower2
26th October 2024, 12:54
Hello and thanks for the feedback!
The options there never actually supported subfolders officially, so this is a new feature that needs to be added.
I will try to tackle it in a new version soon :D
oniiz86
11th December 2024, 07:19
@gpower2 I was just wondering if the bug fix that @Liquid had mentioned above regarding folder prefix in options along with subfolders support will be released soon in v2.6.5?
gpower2
13th December 2024, 09:12
@gpower2 I was just wondering if the bug fix that @Liquid had mentioned above regarding folder prefix in options along with subfolders support will be released soon in v2.6.5?
Hi! Just to be clear, this is not a bug, this works like this by design 😉
This is a new feature request, I half finished it, but I didn't have the time to properly finish it, hopefully it will be done in 2024 🥹
vertigo220
15th December 2024, 06:13
Before I learned about this a few months ago, I was using tsMuxeR, but I've been using this instead since and use it frequently. First off, I'd like to thank you for making it, as it makes things much easier. I do have some feedback, both issues I've found with it and feature requests.
1) The popup to alert when done doesn't show on top of other windows if they're active/focused. For example, if I have a browser open and maximized, but have another small window in the corner focused, the popup will show over the browser, since it's not in focus. However, if it is in focus, the popup will show behind it, so it's not visible when done. To make things worse, it seems to put the popup under all windows when this happens, so it remains hidden even if the window that was active is minimized. For example, I'll start it then switch to watching a fullscreen video, and after a while I'll switch the video to a window, so it's no longer blocking where the popup is, but the popup isn't visible, so it looks like it's not done. I'll check the main window and it will look like it's stuck, with the abort buttons being clickable like it's still running, even though the progress bars are full, making it appear done. Only then will I realize the extra button on the taskbar for the popup, which is behind the other windows that were open in the background. In addition to all of this, there's no option to make a sound when finished.
2) I'm often wanting to compare tracks from two or more files in different locations, but unfortunately if I drag a file from one location into the input files area then drag a file from another location in, the second file replaces the first. It would be really helpful to be able to do this. The best way would be to have two drop locations, one to clear the current files with the dropped file(s), and one to add the dropped file to the current ones.
3) It would be really helpful to have some preset buttons that can be configured by the user for checking track types. For example, I often want to check all audio and subtitle tracks, but not video or chapter or attachments. To do this, I either have to right-click, go to "Check Audio Tracks..." then "All Audio Tracks," then repeat for subtitles, or I have to right-click, "Check All Tracks," then right-click and uncheck the ones I don't want. It would be much faster and save a lot of time if I could set a button to check all audio and subtitle tracks. Or even to have a button each for checking all video, audio, and sub tracks (and possible chapter and attachments), so I could just quickly click the buttons for the track types I want.
4) It would be really helpful if it would show how much space is needed for the selected tracks, changing as the selections change. It could also show the free space for the destination drive, making it easy to see if there's enough space for the selections. It could even warn somehow if there's not enough space.
5) A minor "issue," and perhaps some might have reason for it to work like it currently does, but if you run the same job multiple times, it will keep doing the extractions over again, creating duplicate files, instead of notifying they already exist.
6) A dark mode would be appreciated.
gpower2
16th December 2024, 00:18
Hey guys!
Long time no see! :D
Thanks to feedback from @Liquid, @oniiz86 and @vertigo220, I released a new version after quite some time, to address issues and introduce new features.
As always, enjoy!
Download link:
https://sourceforge.net/projects/gmkvextractgui/files/v2.7.0/gMKVExtractGUI.v2.7.0.7z/download
Changelog
v2.7.0
Add explicit support for AV1 video codec
Add support for appending input files via drag and drop (thanks vertigo220!)
Make the success dialog popup appear as top most form across desktop (thanks vertigo220!)
Fix the Abort buttons state before the success dialog pop up appears (thanks vertigo220!)
Add new placeholder for directory separator in Options (thanks Liquid, oniiz86!)
Add new Status Strip in Options form in order to make resize easier
Add min size in the Options form to avoid minimizing it to size 1,1
Regarding the new feature of adding a directory separator, a new placeholder has been introduced as you can see in the screenshot, in order to separate sub-directories from filenames.
https://i.imgur.com/NhNh5ui.png
gpower2
16th December 2024, 00:22
Old Changelog, since first post got over 16k characters :D
v1.7.0
Add support for the new --no-gui parameter of mkvinfo for MKVToolNix v9.0.0 and newer, without breaking compatibility with older MKVToolnix versions
Add option to not show the success popup messagebox
Add setting for showing or not the success popup messagebox
v1.6.6
Fix minutes in Cue Sheet Chapter Format (thanks bin_ch)
Add support for older mkvtoolnix versions (v4.x)
v1.6.5
Fix parsing the number of chapter entries in case there is only one chapter entry (thanks johnsonlam, rock)
Change gMKVToolnix to gMKVToolNix
Add new extraction mode "cues" (thanks bin_ch)
Add new Chapter Type "CUE" which transforms XML chapters to Cue Sheet (thanks isidroco)
v1.6.4
Add support for Linux (thanks djcj)
Add a start up check to ensure that gMKVToolnix.dll is present in the same directory as gMKVExtractGUI.exe
Fix progress labels position in JobManager form (thanks kypec)
Add check on closing in order to ensure that an extraction process does not get interrupted unintentionally (thanks magsood)
Fix Job Manager form Minimum Size
Add context menu to Job Manager Form in order to easily reset job states
v1.6.3
Fix finding mkvtoolnix path for mkvtoolnix v8.4 (while keeping compatibility with older versions)
Add hevc extension
v1.6.2
Fix the wrong setting of the initial form position in the ini file when the form is minimized
Fix typo bug (UFT-8 instead of UTF-8) (thanks bin_ch!)
Add WindowState setting
Make Form remember the last window state
Add a fallback mechanism, in order to use the UserAppData folder for storing the app settings when the current user doesn't have read/write permissions to the app path
v1.6.1
Changed Log Form to refresh the log text when Activated and not when Shown (thanks kongfl888!)
Fix adding Jobs to the Job Manager after loading jobs from XML (thanks kongfl888)
Added CodecPrivate property to gMKVTrack class (thanks dade49)
Removed PostProcessing of segment lists to gMKVHelper class
Changed ExitCode check, in order to avoid error messages when only warnings are present in the output
Remove UTF-8 parameter from mkvinfo
v1.6
Add job manager feature
Add Job Mode to the settings
Changed AutoScaleMode to DPI, hoping it will fix issues with people using larger font schemes
Add gRichTextBox and switch single line text boxes to gTextBox in main form
Some tweaking to Log form
Make main form to show the jobs manager when in job mode from Log button
v1.5.5
Add gTaskbarProgress class to wrap the ITaskbarList3 interface in order to take advantage of Windows Vista+ taskbar features
Fix TrueHD Audio file extension (thanks Giwyy)
Move classes to respective folders
Significantly decrease control flickering
Change taskbar mode while reading file contents
Changed frmLog to gForm class
Comment out a Debug.WriteLine statement in gCheckedListBox
v1.5.4
Enforce english ui language when executing mkvextract
Always make sure that progress bar is set to 100% before showing the completion success message
v1.5.3
Fixed setting the window's initial position to negative coordinates
Added the window's size to settings
Removed the help tooltip
v1.5.2
Fix parsing for Attachment Filenames for newer mkvmerge versions (ignore uid tag)
Added tooltip information about the track list
Added functionality to remember window position
v1.5.1
Increase the drag and drop area for the input file to the group box of input file info
Add a context menu for easy selection of tracks
v1.5
Hopefully fix Abort button from being drawn out of line in some OS (Windows XP ?)
Fix some visual issues
Added Output Directory and Lock Output Directory to the Settings
Replace escape characters in mkvmerge
Changed extraction mode to support grouping of similar tasks into one process call
Added support of finding the delays in video and audio tracks
Now extracted audio tracks have the relative to the video delay
Add an extra check when selecting timecodes extraction mode
Made a few more performance improvements
v1.4
Added abort button. Works per track extraction.
Added Abort All button, to abort all the extraction processes at once.
Refactored ini file and settings in general. Now the chapter type is also included in settings.
If MKVToolnix path is already set, ask the user before changing it.
Added validity check for when setting MKVToolnix path.
Added lock output directory feature. If locked, ouput directory doesn't change.
Changed extension of OGM chapters from ".ogm" to ".ogm.txt".
Make exception messages from mkvextract more sane.
Added check for mkvextract.exe, mkvinfo.exe and mkvmerge.exe existance just before invoking them.
Detect the audio delay via the track's timecodes and add it to the output filename.
Set the Browse... buttons to show the folder that is already specified by the user.
Check for a valid directory when drag and dropping in the output directory textbox.
Added timecodes extraction mode.
Changed the Status Strip Layout.
Changed the Extract Buttons to one Extract Button and a Combo Box.
v1.3.1
Fix loading of ini file
Don't keep the input file in the input textbox, if it is invalid
Add checks for user input when selecting an action
v1.3
Use a simple ini file to store the last used MkvToolnix path
Enable command line arguments in order to allow users to open files with gMKVExtractGUI
Change the tags output filename to "filename_tags.xml"
Use the --identify-verbose option of mkvmerge for checking the track contents of the matroska files, instead of mkvinfo
Removed --gui-mode parameter to mkvinfo since it broke compatibility with older versions of MkvToolnix
Changed the extension filter of the open file dialog to provide with an option that contains all valid extensions of matroska files
v1.2
Make XML chapters to be written in UTF-8 without BOM
Added more allowed extensions (.mka, .mks, .mk3d, .webm) (thanks sneaker_ger)
Added --ui-language parameter to mkvinfo with 'en' value to avoid translations
Added --gui-mode parameter to mkvinfo in order to double check that all output text will be in english
Added --command-line-charset parameter to mkvinfo with value "UTF-8"
Added --output-charset parameter to mkvinfo with value "UTF-8"
Added new Log form, which show the Log of the application
Added new 'Show Log' button in main form which shows the Log form
Lathe
16th December 2024, 03:25
Old Changelog, since first post got over 16k characters :D
Hey, thanks for all your hard work mate! :D
So, I am ignorant here (about most things!) is this automatically going to be in the MKVToolnix folder with the current version, or do I download this as a stand alone program or do I place it in the MKVtoolnix folder? What do I do? Thanks!
vertigo220
16th December 2024, 05:40
Hey, thanks for all your hard work mate! :D
So, I am ignorant here (about most things!) is this automatically going to be in the MKVToolnix folder with the current version, or do I download this as a stand alone program or do I place it in the MKVtoolnix folder? What do I do? Thanks!
This is a separate program. It's sole purpose it to demux MKVs into their individual tracks, whereas MKVToolNix is used for muxing/demuxing/combining/etc, but doesn't do so well at just extracting the raw tracks. So which program you will use depends on what you're trying to do, but they work separately from each other.
Edit to clarify that what I meant by separately is that while this program uses MKVToolNix by sending it commands to do what you want, that's the only way they're connected. You simply put this wherever you want and tell it where the MKVToolNix exe is so it can issues it commands, but it doesn't matter where each of them are as long as this knows where that is, and you only actually run one or the other and use it individually, depending on your needs. Personally, I have a directory where I house all my portable apps, then create a shortcut in the Start Menu for them and an exe that points to them that I place in a directory located in %path% so they're all accessible via the command line. I've written a script to do most of this so it's mostly automated.
vertigo220
16th December 2024, 05:53
I released a new version after quite some time, to address issues and introduce new features.
Thanks for the super-fast turnaround on this stuff! Regarding the appending checkbox, that's certainly much better, but any chance of making it a separate drop zone instead, so rather than having to toggle a checkbox back and forth, and possibly forgetting to check/uncheck it when meaning to append or not, files can simply be dropped into the main window to replace current files and into that area to append them?
Also, while I obviously didn't/don't expect such a fast implementation of my requests, just curious if you plan to add quick-select buttons for different track types. This is by far the biggest change I'd like to see as it would make using this program much faster.
Lathe
16th December 2024, 05:53
This is a separate program. It's sole purpose it to demux MKVs into their individual tracks, whereas MKVToolNix is used for muxing/demuxing/combining/etc, but doesn't do so well at just extracting the raw tracks. So which program you will use depends on what you're trying to do, but they work separately from each other.
Oh good, thanks! I will use your program then for extracting tracks as I'm sure it will work better... :)
vertigo220
16th December 2024, 06:21
Oh good, thanks! I will use your program then for extracting tracks as I'm sure it will work better... :)
Not my program (gpower2's), but you're welcome all the same.
If this is something you do a lot of and it's always the same task (extracting the eac3 track) you might even want to use a small batch script, add it to the right-click menu, then just right-click the file, select the script, and have it extract automatically, without having to launch a GUI, add the file(s), select the tracks, extract, and close the GUI. Just depends on how often you're doing this.
Lathe
16th December 2024, 07:02
Not my program (gpower2's), but you're welcome all the same.
If this is something you do a lot of and it's always the same task (extracting the eac3 track) you might even want to use a small batch script, add it to the right-click menu, then just right-click the file, select the script, and have it extract automatically, without having to launch a GUI, add the file(s), select the tracks, extract, and close the GUI. Just depends on how often you're doing this.
Good suggestion, thanks!
Decalicatan_Decalicatan
16th December 2024, 08:38
Thanks @gpower2 and @vertigo220 for the update and the new features!
gpower2
16th December 2024, 08:42
1) The popup to alert when done doesn't show on top of other windows if they're active/focused. For example, if I have a browser open and maximized, but have another small window in the corner focused, the popup will show over the browser, since it's not in focus. However, if it is in focus, the popup will show behind it, so it's not visible when done. To make things worse, it seems to put the popup under all windows when this happens, so it remains hidden even if the window that was active is minimized. For example, I'll start it then switch to watching a fullscreen video, and after a while I'll switch the video to a window, so it's no longer blocking where the popup is, but the popup isn't visible, so it looks like it's not done. I'll check the main window and it will look like it's stuck, with the abort buttons being clickable like it's still running, even though the progress bars are full, making it appear done. Only then will I realize the extra button on the taskbar for the popup, which is behind the other windows that were open in the background. In addition to all of this, there's no option to make a sound when finished.
Can you confirm if this is now fixed? Also, a sound should be played already regardless of whether there is a popup or not, the default "Asterisk" sound from Windows.
2) I'm often wanting to compare tracks from two or more files in different locations, but unfortunately if I drag a file from one location into the input files area then drag a file from another location in, the second file replaces the first. It would be really helpful to be able to do this. The best way would be to have two drop locations, one to clear the current files with the dropped file(s), and one to add the dropped file to the current ones.
Thanks for the super-fast turnaround on this stuff! Regarding the appending checkbox, that's certainly much better, but any chance of making it a separate drop zone instead, so rather than having to toggle a checkbox back and forth, and possibly forgetting to check/uncheck it when meaning to append or not, files can simply be dropped into the main window to replace current files and into that area to append them?
Adding 2 separate drop zones would be reducing the drop area significantly, also it would not be easy to separate them visually, or to inform the user of which is which, at least to my eyes. :)
The ability to have drag and drop perfom an append operation was raised by many users in the past, so it was high time I implemented it. ;)
3) It would be really helpful to have some preset buttons that can be configured by the user for checking track types. For example, I often want to check all audio and subtitle tracks, but not video or chapter or attachments. To do this, I either have to right-click, go to "Check Audio Tracks..." then "All Audio Tracks," then repeat for subtitles, or I have to right-click, "Check All Tracks," then right-click and uncheck the ones I don't want. It would be much faster and save a lot of time if I could set a button to check all audio and subtitle tracks. Or even to have a button each for checking all video, audio, and sub tracks (and possible chapter and attachments), so I could just quickly click the buttons for the track types I want.
Also, while I obviously didn't/don't expect such a fast implementation of my requests, just curious if you plan to add quick-select buttons for different track types. This is by far the biggest change I'd like to see as it would make using this program much faster.
Similar with the above request, I can not think of an intuitive way to implement such a feature. Each user has a unique way of working, I tried to find the common denominator and offer it in a simple UI.
Adding even more specifc shortcuts will make it a lot more complex imho, and not really sure of their value.
4) It would be really helpful if it would show how much space is needed for the selected tracks, changing as the selections change. It could also show the free space for the destination drive, making it easy to see if there's enough space for the selections. It could even warn somehow if there's not enough space.
This information didn't exist in the previous versions of MKVToolnix, and not sure if it will be present for all matroska files as it depends on the muxing application.
Also, since the output might be in different target drives, calculating and showing the free space per target drive would be quite a PITA to implement and to actually visualize.
In any case, this is indeed a nice to have feature, but requires A LOT of development and testing time, which I currently don't have. :D
5) A minor "issue," and perhaps some might have reason for it to work like it currently does, but if you run the same job multiple times, it will keep doing the extractions over again, creating duplicate files, instead of notifying they already exist.
This is indeed by design and there are no plans to change this, since "better safe than sorry" :D
6) A dark mode would be appreciated.
This is something I also want to implement, but it is really really hard to implement correctly in the UI I use (WinForms).
If I ever find the time for a big feature, that would be it, and it would also be the v3.0 milestone :)
oniiz86
16th December 2024, 09:05
@gpower2 :thanks:so very much for the latest v2.7.0 update & implementing @vertigo220's feature suggestions, it's greatly appreciated, just a heads up the thread title description still has v2.6.4 it should be v2.7.0 ;)
vertigo220
16th December 2024, 21:13
Can you confirm if this is now fixed? Also, a sound should be played already regardless of whether there is a popup or not, the default "Asterisk" sound from Windows.
It is fixed, though is now overly aggressive, but not sure how difficult it is to get it just right. It now shows not only the popup but the main window over everything, including a playing video. The preferred behavior, which is what most similar programs do, would be to have the popup separate and show it over all apps not set on top, e.g. over the browser and other windows but not over the video player, so it doesn't show in front of the video but is visible over everything else when I restore the video from fullscreen to a window. That said, this is still at least better.
I think the bigger issue is the sound. I could just use that and not the popup, which is really preferred for me anyway, but while it does in fact play a sound, it's tied to the system output, which I have muted. It should output sounds through itself, not the system. Look at MKVToolNix, for example, when it plays its completed sound, it shows under MKVToolNix in the sound mixer, and its volume can be individually adjusted. I mute system sounds as they are annoying, and therefore, because this program plays through that channel, it's muted as well.
Adding 2 separate drop zones would be reducing the drop area significantly, also it would not be easy to separate them visually, or to inform the user of which is which, at least to my eyes. :)
The ability to have drag and drop perfom an append operation was raised by many users in the past, so it was high time I implemented it. ;)
I just figured the area where the "Append input on drag and drop" is could be made its own drop zone, or the area next to it. Doesn't have to be large. I'm not going to push the issue, but just wanted to put the idea of how to do it out there.
Similar with the above request, I can not think of an intuitive way to implement such a feature. Each user has a unique way of working, I tried to find the common denominator and offer it in a simple UI.
Adding even more specifc shortcuts will make it a lot more complex imho, and not really sure of their value.
Again, not to push the issue, but to offer ideas, there could simply be a series of buttons somewhere (a row between above or below the input files area or a column to the right of it) that can be set to do various things, thus accounting for different users. I could set the buttons to toggle marking vid/aud/sub/chapter tracks, another user could set them to mark all tracks, unmark all tracks, remove selected file, etc. I'm happy to discuss more to come up with a solution, but I also don't want to bother you with it if it's not something you want to do.
This information didn't exist in the previous versions of MKVToolnix, and not sure if it will be present for all matroska files as it depends on the muxing application.
Also, since the output might be in different target drives, calculating and showing the free space per target drive would be quite a PITA to implement and to actually visualize.
In any case, this is indeed a nice to have feature, but requires A LOT of development and testing time, which I currently don't have. :D
Fair enough.
This is indeed by design and there are no plans to change this, since "better safe than sorry" :D
Again, fair, though perhaps it should warn? As I said, this is a minor issue and not one I'm personally concerned with, just a suggestion to perhaps prevent an issue for others if they were to run it more than once unintentionally.
This is something I also want to implement, but it is really really hard to implement correctly in the UI I use (WinForms).
If I ever find the time for a big feature, that would be it, and it would also be the v3.0 milestone :)
Also fair. I have no experience in WinForms, just some in VB years ago, and it seems similar-ish. I did see looking at screenshots that it looks like it can be done. I was going to try and play with it a bit but, in typical MS fashion, they make things as difficult as possible, as just trying to install it all I see is an install for .NET (Digging around more it looks like I need Visual Studio, but don't want to waste bandwidth downloading then deal with installing more MS clutter if that's not it, so can someone confirm? In the meantime I'm going to check out Jetbrains Rider). Looked into WPF/GTK/Qt, but I don't care to spend the time on WPF since I don't plan on staying in the Windows ecosystem much longer, and GTK/Qt are both garbage from initial impressions.
gpower2
17th December 2024, 20:53
It is fixed, though is now overly aggressive, but not sure how difficult it is to get it just right. It now shows not only the popup but the main window over everything, including a playing video. The preferred behavior, which is what most similar programs do, would be to have the popup separate and show it over all apps not set on top, e.g. over the browser and other windows but not over the video player, so it doesn't show in front of the video but is visible over everything else when I restore the video from fullscreen to a window. That said, this is still at least better.
I was troubled by the fact that when I pressed the popup, then the main window was not appearing, so I opted for bringing the main window also in front after acknowleding the popup.
In my eyes, if you have selected to have a popup appear, you would also want to continue working with the program after the operation finishes.
Otherwise, the simple sound would be enough to inform you that the operation had finished.
I think the bigger issue is the sound. I could just use that and not the popup, which is really preferred for me anyway, but while it does in fact play a sound, it's tied to the system output, which I have muted. It should output sounds through itself, not the system. Look at MKVToolNix, for example, when it plays its completed sound, it shows under MKVToolNix in the sound mixer, and its volume can be individually adjusted. I mute system sounds as they are annoying, and therefore, because this program plays through that channel, it's muted as well.
That would require to include a separate audio file and also include the media player functionality inside the app. I understand your way of working and how it would benefit you, but it would increase the bundled size of the app, which is something I try to avoid. ;)
Again, not to push the issue, but to offer ideas, there could simply be a series of buttons somewhere (a row between above or below the input files area or a column to the right of it) that can be set to do various things, thus accounting for different users. I could set the buttons to toggle marking vid/aud/sub/chapter tracks, another user could set them to mark all tracks, unmark all tracks, remove selected file, etc. I'm happy to discuss more to come up with a solution, but I also don't want to bother you with it if it's not something you want to do.
Just to avoid any misunderstandings, you are requesting some placeholders to add programmable actions, right?
If this is the case, it would require A LOT of work in order to have this implemented correctly and basically it would require refactoring most of the core codebase in order to split it into separate modules/commands that could be automated.
It is definitely a nice feature, but as mentioned, it requires so much work, that I can't get to at least in the near future.
Also fair. I have no experience in WinForms, just some in VB years ago, and it seems similar-ish. I did see looking at screenshots that it looks like it can be done. I was going to try and play with it a bit but, in typical MS fashion, they make things as difficult as possible, as just trying to install it all I see is an install for .NET (Digging around more it looks like I need Visual Studio, but don't want to waste bandwidth downloading then deal with installing more MS clutter if that's not it, so can someone confirm? In the meantime I'm going to check out Jetbrains Rider). Looked into WPF/GTK/Qt, but I don't care to spend the time on WPF since I don't plan on staying in the Windows ecosystem much longer, and GTK/Qt are both garbage from initial impressions.
Unfortunately everyone has turned to Web, so native applications are second class citizens, with only half baked solutions out there. WinForms for me is the last man standing, offering cross-platform compatibility thanks to Mono.
WPF is pretty, but very much like writing a Web app. QT requires C++ and I am not willing to dive into that. MAUI is only for modern OSes, so compatibility is out of the question and it is WPF-ish.
And then you get Electron with all its clutter and javascript, or Tauri, which requires Rust :D
Thanks, but I'll stick to good old WinForms for small desktop apps like this one :D
Rant aside, dark mode is the one big task I am willing to devote some time, since I also prefer dark mode, though I don't think I will have time to finish this soon...
Thanks for all the feedback! :)
vertigo220
18th December 2024, 02:16
I was troubled by the fact that when I pressed the popup, then the main window was not appearing, so I opted for bringing the main window also in front after acknowleding the popup.
In my eyes, if you have selected to have a popup appear, you would also want to continue working with the program after the operation finishes.
Otherwise, the simple sound would be enough to inform you that the operation had finished.
This is true, though IMO it should only show the popup on top, and clicking on that would then bring the main window to the front. This is the typical behavior I'm used to. Though I'm not sure how difficult that is, and it would be less of an issue if the sound can be improved (see next point).
That would require to include a separate audio file and also include the media player functionality inside the app. I understand your way of working and how it would benefit you, but it would increase the bundled size of the app, which is something I try to avoid. ;)
I assumed it was actually in the design, i.e. it would require actual code to play in its own "channel" vs the system one, but if I'm understanding you correctly, it's simply the fact you're having the app play a standard system sound/wav, and that having it play another sound would result in it showing as this app playing the sound in the mixer? If that's the case, could an option be added for the user to select their own sound? Heck, I'd even settle for it using MKVToolNix's sound, since it's already using that app, though not sure if that would be any easier than just allowing the user to select their own.
Just to avoid any misunderstandings, you are requesting some placeholders to add programmable actions, right?
If this is the case, it would require A LOT of work in order to have this implemented correctly and basically it would require refactoring most of the core codebase in order to split it into separate modules/commands that could be automated.
It is definitely a nice feature, but as mentioned, it requires so much work, that I can't get to at least in the near future.
Yes. However, the fully customizable aspect was just a suggestion to allow anyone to set up the buttons to work in whatever way they want. If that's too much, just having a button that toggles each the video, audio, subtitle, and chapter tracks would be immensely helpful. When clicked, it could just check all applicable tracks by running the same sub/function as when right-clicking, going to the "Check {track type} Tracks" option, and selecting the "All" button, then remembering that was the last option so, if clicked again, it would do the same for uncheck. Or even just having strictly check all vid/aud/sub/etc buttons without a toggling feature. But I do understand this could be considered niche and some people might want to check all tracks by language, codec, etc. I just imagine most people are mainly checking/unchecking all of a certain type. And I can certainly see how buttons, especially customizable ones, would be too complicated when accounting for all the various possibilities (different languages, resolutions, codecs, etc), but keeping it simple, just to "all," should be straightforward. Even doing the more specific stuff should be doable by right-clicking the list entry and being presented with the option to assign it to a button, or having a drop-list for each button that's the same as the right-click menu in the list which assigns that function to the button (so clicking the button would be the same as right-clicking in the list, navigating to that option, and selecting it). And either way, the button would be greyed out if the designated function isn't applicable (e.g. if it was set to check all 1080p tracks and there are none). Anyways, as I said, I don't want to keep pushing it, just clarifying what I'm thinking and offering ideas of how to do it. While it's definitely a feature I would like, if it's too much, that's fine.
Unfortunately everyone has turned to Web, so native applications are second class citizens, with only half baked solutions out there. WinForms for me is the last man standing, offering cross-platform compatibility thanks to Mono.
WPF is pretty, but very much like writing a Web app. QT requires C++ and I am not willing to dive into that. MAUI is only for modern OSes, so compatibility is out of the question and it is WPF-ish.
And then you get Electron with all its clutter and javascript, or Tauri, which requires Rust :D
Thanks, but I'll stick to good old WinForms for small desktop apps like this one :D
Rant aside, dark mode is the one big task I am willing to devote some time, since I also prefer dark mode, though I don't think I will have time to finish this soon...
Thanks for all the feedback! :)
Yeah, I agree, and also hate the push to move to web-based apps. From what I've gathered, Electron is bloated, WPF has mixed opinions, Qt frustrated me enough I gave up on it before even getting through the install process (and I wasn't sure what language this program is in and therefore which of these could even be used for it), and I tried installing GTK but it flat-out didn't work. WinForms really seems from what I've gathered to be very good for this type of app, I just hate that it's Microsoft. It's interesting you mention cross-platform/Mono, because that seems a bit iffy from what I've read, and I was wondering if this app would run in Linux. Anyways, I'm hoping at some point to play around with WinForms and see what it's like. No promises, obviously, because I may end up way over my head, but I'd like to see if I can develop a dark theme for this. I'm imagining it's just a matter of designing it, not actually coding, or is that not the case?
gpower2
5th January 2025, 21:02
Hey guys, Happy new 2025! :)
New year, new version!
This brings a feature that I also personally wanted for years now, and finally it's here: Dark mode!
This was based heavily on the work of BlueMystical here: https://github.com/BlueMystical/Dark-Mode-Forms
I hope that you will enjoy this release as much as I did and as always enjoy! :D
Download link:
https://sourceforge.net/projects/gmkvextractgui/files/v2.8.0/gMKVExtractGUI.v2.8.0.7z/download
Changelog
v2.8.0
Add support for Dark Mode
I hope some of the mods here can update the thread title, since it is not possible from myside anymore :D
oniiz86
6th January 2025, 06:28
@gpower2 :thanks:so much for the update, not sure why the thread title can no longer be changed by the thread starter, @tebasuna51 can you please update the thread title so it simply reads "gMKVExtractGUI" :)
SeeMoreDigital
6th January 2025, 10:11
The forum has a time/date limit... It's been here longer than I have ;)
filler56789
6th January 2025, 14:17
@gpower2 —
Thank you very much :thanks: for the update :D
lostclusters
26th January 2025, 23:34
@gpower2
Dude! this GUI for mkvtoolnix stream extractor is sure came in handy extracting subtitles from one media file for another, for my deaf sister.
Thank you for making this handy utility easier to use!
vertigo220
4th March 2025, 06:38
Every time I try enabling dark mode, when the program starts, I get this error:
Unhandled exception has occurred in your application. If you click Continue, the application will ignore this error and attempt to continue. If you click Quit, the application will close immediately.
InvalidArgument=Value of '-770479504' is not valid for 'start'.
Parameter name: start.
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentOutOfRangeException: InvalidArgument=Value of '-770479504' is not valid for 'start'.
Parameter name: start
at System.Windows.Forms.ComboBox.Select(Int32 start, Int32 length)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4772.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
gMKVExtractGUI
Assembly Version: 2.8.0.0
Win32 Version: 2.8.0.0
CodeBase: file:///C:/Portable%20Apps/gMKVExtractGUI%20(Portable)/gMKVExtractGUI.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4734.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4767.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
gMKVToolNix
Assembly Version: 2.8.0.0
Win32 Version: 2.8.0.0
CodeBase: file:///C:/Portable%20Apps/gMKVExtractGUI%20(Portable)/gMKVToolNix.DLL
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4762.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
gpower2
5th March 2025, 00:05
Thanks for reporting this @vertigo220, I will try to get to the bottom of this, unfortunately I can not reproduce it yet in my local system, can you tell me a bit more about your system? (Windows version mainly)
gpower2
8th March 2025, 11:16
@vertigo220 Could you please download this debug test version to see if it fixes the issue?
https://fastupload.io/9442b883c7d34844
Thanks again for the feedback!
vertigo220
9th March 2025, 01:59
Tried it and seems to be working. Not sure if it still matters, but W10x64 Version 22H2 (OS Build 19045.5371).
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.