Log in

View Full Version : MKVToolNix v24.0.0 released


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 [25] 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

LeMoi
20th December 2011, 12:05
Existing MIME types are kept as they are. This will not change. mkvmerge always tries to preserve as much information from a source file as possible.

The bug fix only applies to MIME type autodetection done when adding new attachments.

OK, indeed, if I remux the file with the needed font again, it now works. Have to remux all the corrupted files :s

monohouse
24th December 2011, 17:13
-----

sneaker_ger
24th December 2011, 17:24
PGS subtitles have been supported for quite some time now. Describe your problem more specifically, i.e. what kind of input file are you using and which mkvmerge version? You might want to upload a sample if you think it is a bug.

monohouse
24th December 2011, 18:15
-----

hubblec4
24th December 2011, 19:47
version 5.2.0, input files are .sup files
http://manoa.flnet.org/00000.track_4608.7z
the mux process completes but when the new file is opened with mmg these .sup tracks are gone

for me works this file perfect :-)

monohouse
24th December 2011, 20:03
-----

hubblec4
24th December 2011, 20:33
i have only insert the sup-file and generated a mks-file. the mks-file put into a new mmg.
and it works.

i dont understand the file-input. all sup-files shown as video, why is that so?

(you select a fps at the sup-files, but it doesnt goes normaly)

monohouse
24th December 2011, 21:09
-----

Mosu
25th December 2011, 00:54
A hint for everyone using old .mmg files with 5.2.0 and newer. In 5.2.0 I changed the way several input modules have their track IDs assigned. This was necessary in order to fix a bug (see https://www.bunkus.org/bugzilla/show_bug.cgi?id=681 ). Unfortunately I forgot to change mmg not to load .mmg files created with older versions as they're now incompatible as they contain wrong track IDs.

mbcd
28th December 2011, 13:21
Yes, I even have problems merging two mkv-files together.
Merging is here !! NOT !! meant as appending two files together.

Thats because in both there are same IDs, and because of that I get an result with no video (because both mkv have video on track 1 and track 1 is ignored because both mkv have one).

I use CLI for merging!

Mosu
28th December 2011, 13:23
That is a problem most likely due to wrong usage. Post your command line here.

Chumbo
28th December 2011, 16:45
@mosu,
I don't know if I ever got back to you or not on the double backslashes or not. I did finally get around to testing it with a normal path with just one slash and it works great. :) Note that the UI still copies the command line with the double/escaped backslashes, e.g.,"d:\Program Files (x86)\MKVtoolnix\mkvmerge.exe" -o "E:\\media\\MKV\\EditedSample (1).mkv"
"--default-track" "0:yes" "--forced-track" "0:no" "--display-dimensions" "0:1280x720" "--compression" "0:none"
"--language" "1:eng" "--default-track" "1:yes" "--forced-track" "1:no" "--compression" "1:none" "-a" "1" "-d" "0" "-S" "-T"
"--no-global-tags" "--no-chapters" "E:\\media\\MKV\\EditedSample.mkv"
"--track-order" "0:0,0:1"

I also noticed that if you copy to the clipboard and then exit the UI BEFORE pasting the UI clears the clipboard contents. Would be nice if it didn't do that.

Mosu
28th December 2011, 16:55
Note that the UI still copies the command line with the double/escaped backslashes

The "copy to clipboard" function is more useful for Linux users. The problem on Windows is cmd.exe's horrible/almost non-existent escaping rules. Read http://stackoverflow.com/a/623202 for a very nice description of the issue(s).

I also noticed that if you copy to the clipboard and then exit the UI BEFORE pasting the UI clears the clipboard contents. Would be nice if it didn't do that.

That's up to wxWidgets, I guess, and I'm not really keen to look into it. Sorry. If someone else provided a patch I wouldn't refuse it, of course.

Atak_Snajpera
1st January 2012, 15:39
There is something I don't understand with 5.2.0
mkvinfo report
File 'E:\_Video_Samples\mkv\[AniYoshi]_Kimi_ga_Aruji_de_Shitsuji_ga_Ore_de_-_01_[859986ED].mkv': container: Matroska [title:Kimiaru\s~They\sAre\sMy\sNoble\sMasters~\s-\s01\s-\sYou're\sthe\sMaster\sand\sI'm\sthe\sButler duration:1468437000000]
Track ID 0: video (V_MPEG4/ISO/AVC) [language:jpn track_name:Video\s(H.264) display_dimensions:704x400 default_track:1 forced_track:0 packetizer:mpeg4_p10_video default_duration:41708375]
Track ID 1: audio (A_VORBIS) [language:jpn track_name:Japanese\sAudio\s(2ch\sVorbis) default_track:1 forced_track:0 audio_sampling_frequency:48000 audio_channels:2]
Track ID 2: subtitles (S_TEXT/ASS) [language:eng track_name:English\sSubtitles\s(ASS) default_track:1 forced_track:0]
Attachment ID 1: type 'application/x-truetype-font', size 97284 bytes, file name 'BRLNSR.TTF'
Chapters: 5 entries


but when I demux with this command
"mkvextract.exe" tracks "E:\_Video_Samples\mkv\[AniYoshi]_Kimi_ga_Aruji_de_Shitsuji_ga_Ore_de_-_01_[859986ED].mkv" 1:"C:\Temp\RipBot264temp\job2\1_audio_Japanese.ogg" 2:"C:\Temp\RipBot264temp\job2\2_subtitles_English.ass"

I get video (AVC) in 1_audio_Japanese.ogg instead of audio file.

Mosu
1st January 2012, 15:44
See https://www.bunkus.org/bugzilla/show_bug.cgi?id=689

Yes, this has already been discussed on this very page.

Atak_Snajpera
1st January 2012, 15:51
where can i find fixed 5.2.0 version?

Mosu
1st January 2012, 15:57
http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/

Atak_Snajpera
1st January 2012, 16:05
thnaks!

mbcd
1st January 2012, 16:57
Yes, I even have problems merging two mkv-files together.
Merging is here !! NOT !! meant as appending two files together.

Thats because in both there are same IDs, and because of that I get an result with no video (because both mkv have video on track 1 and track 1 is ignored because both mkv have one).

I use CLI for merging!

"C:\Program Files (x86)\MKVtoolnix\mkvmerge.exe" -o "%path%%filmname%.mkv" "--language" "1:und" "--default-track" "1:yes" "--forced-track" "1:no" "--compression" "1:none" "-d" "1" "-A" "-S" "-T" "--no-global-tags" "--no-chapters" "%path%%filmname%\%filmname%.h264.mkv" "-D" "%path%%filmname%\%filmname%.mkv" "--track-order" "0:1,1:1"

This worked with 5.1.0 over hundreds of times ...

Info:
The first file loaded (...h.264.mkv) has ONLY a Videotrack
The last file hast Video, Audio and Subtitles, but video is not needed from this track (replaced by first file)

Mosu
1st January 2012, 18:03
The way track IDs are assigned in Matroska and MP4 files has changed in v5.2.0. Use mkvmerge's identification mode in order to find out the actual track IDs. This has ALSO been discussed on this page and the one before.

mindbomb
2nd January 2012, 02:34
Small comment, not really an issue.

When importing an mkv muxed with haali's muxer, and muxing that into an mkv with mkvmerge, the resulting line is present in the mediainfo for h264 video:
Muxing mode : Container profile=Unknown@0.0

Mosu
2nd January 2012, 08:56
I'm really not sure what you're trying to say or why you think it important/remarkable.

nekrovski
2nd January 2012, 11:52
Mosu, could you take a look at this please

http://forum.doom9.org/showthread.php?t=163687

Mosu
2nd January 2012, 12:21
I'm not willing to help you, sorry. I don't have time (nor the expertise) for video encoding questions anymore.

mkvmerge can only split on key frame boundaries. That's by design and will not change.

nekrovski
2nd January 2012, 12:38
Alright.

Mosu
2nd January 2012, 22:08
Hey,

I've released mkvtoolnix v5.2.1. It corrects a nasty inconsistency regarding track IDs between mkvmerge and mkvextract, improves performance on Linux quite a bit by not caching data twice and fixes a few smaller issues here and there.

There were no changes that concern package maintainers.

Here are the usual links...

...to the home page:
http://www.bunkus.org/videotools/mkvtoolnix/

...to the source code:
http://www.bunkus.org/videotools/mkvtoolnix/sources/mkvtoolnix-5.2.1.tar.bz2

...to the Windows installer and 7zip archive:
http://www.bunkus.org/videotools/mkvtoolnix/win32/mkvtoolnix-unicode-5.2.1-setup.exe
http://www.bunkus.org/videotools/mkvtoolnix/win32/mkvtoolnix-unicode-5.2.1.7z

All of the Linux binaries that I provide have already been built and
are available.

Here's the full ChangeLog since release 5.2.0:


2012-01-02 Moritz Bunkus <moritz@bunkus.org>
* Released v5.2.1.

2011-12-29 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: Fixed certain DTS files being mis-detected as AC3. Fix for bug 693 (https://www.bunkus.org/bugzilla/show_bug.cgi?id=693).

2011-12-28 Moritz Bunkus <moritz@bunkus.org>
* build system: Added an option "--without-gettext" that allows for building without support for translations even if gettext itself is installed.
* build system: Added an option "--without-curl" that allows for building without CURL support even if CURL itself is installed.
* all: bug fix: Fixed compilation if gettext/libintl is not available.
* mkvmerge: bug fix: The MPEG program stream reader was reporting wrong progress percentage if multiple files were used since v5.1.0.

2011-12-27 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: enhancement: Removed the posix_fadvise() code. The application is using its own caching code which caused bad performance if the OS caching provided via posix_fadvise() is used as well.

2011-12-25 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: If an MP4 file contains chapters encoded in a different charset than UTF-8 and --chapter-charset is not used then the error message shown is a lot clearer why mkvmerge aborts muxing. Before the error message was a generic "mm_text_io_c::read_next_char(): invalid UTF-8 character. The first byte:..."
* mkvmerge: bug fix: MPEG program streams in which a track suddenly ends and others continue or in which a track has huge gaps will no longer cause mkvmerge to try to read the whole file at once. This could lead to excessive swapping and finally mkvmerge crashing if no more memory was available.

2011-12-24 Moritz Bunkus <moritz@bunkus.org>
* mkvextract: bug fix: The track IDs used for extraction are consistent again with the IDs that mkvmerge's identification reports. Fix for bug 689 (https://www.bunkus.org/bugzilla/show_bug.cgi?id=689).

2011-12-21 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: Fix compilation if FLAC is not available. Fix for issue #13.

Have fun.

Snowknight26
2nd January 2012, 23:10
Is the Windows installer supposed to say 2011-12-03 in brackets?

Mosu
2nd January 2012, 23:37
No, it's not. Thanks for noticing. It was just the installer script that accidentally had a pre-build version number included since the start of December. New builds are uploading.

b66pak
3rd January 2012, 18:22
thanks a lot...
_

Boulder
3rd January 2012, 20:40
Hey,

I've released mkvtoolnix v5.2.1. It corrects a nasty inconsistency regarding track IDs between mkvmerge and mkvextract, improves performance on Linux quite a bit by not caching data twice and fixes a few smaller issues here and there
It seems that MKVExtractGUI-2.2.2.5 doesn't show correct tracks with this version so is there any other recommended GUI to use?

soneca
3rd January 2012, 21:50
I hope MKVExtractGui also be updated to work with this new version.

Mosu
3rd January 2012, 21:53
Guys, posting here about mkvextragui or mkvcleaver will most likely not help you. I'm the author of neither program, and neither author of those programs reads this thread as far as I know. Contact the authors directly. No, I don't know how.

Boulder
3rd January 2012, 22:20
No problem..I was only asking if there is some other recommended GUI to use. Nevertheless, I reported the issue at the SF tracker so we'll see if we get an update at some point.

Selur
3rd January 2012, 22:21
Got a question regarding:
mkvextract: bug fix: The track IDs used for extraction are consistent again with the IDs that mkvmerge's identification reports.
Did you fix this like you wanted?

using: mkvmerge v5.1.0 ('And so it goes') built on Nov 28 2011 23:58:28
mkvmerge.exe -i h:\Banana.mkv
gives:
File 'h:\Banana.mkv': container: Matroska
Track ID 1: video (V_MPEG4/ISO/AVC)
Track ID 2: audio (A_DTS)
Track ID 3: subtitles (S_TEXT/UTF8)
Track ID 4: subtitles (S_TEXT/UTF8)
Track ID 5: subtitles (S_TEXT/UTF8)
Track IDs reported match with the track IDs reported by MPlayer and extraction with mkvextract using this IDs works fine. (the right track is properly extracted)

using: mkvmerge v5.2.0 ('I can't explain') built on Dec 18 2011 18:12:03
mkvmerge.exe -i h:\Banana.mkv
gives:
File 'h:\Banana.mkv': container: Matroska
Track ID 0: video (V_MPEG4/ISO/AVC)
Track ID 1: audio (A_DTS)
Track ID 2: subtitles (S_TEXT/UTF8)
Track ID 3: subtitles (S_TEXT/UTF8)
Track ID 4: subtitles (S_TEXT/UTF8)
Track IDs reported do not match with the track IDs reported by MPlayer but extraction with mkvextract using the IDs reported with MPlayer works fine. (the right track is properly extracted)

using: mkvmerge v5.2.1 ('A Far Off Place') built on Jan 2 2012 23:21:10
mkvmerge.exe -i h:\Banana.mkv
gives:
File 'h:\Banana.mkv': container: Matroska
Track ID 0: video (V_MPEG4/ISO/AVC)
Track ID 1: audio (A_DTS)
Track ID 2: subtitles (S_TEXT/UTF8)
Track ID 3: subtitles (S_TEXT/UTF8)
Track ID 4: subtitles (S_TEXT/UTF8)
Track IDs reported do not match with the track IDs reported by MPlayer and extraction with mkvextract using the IDs reported with MPlayer does not work only using the IDs that are now reported by mkvmerge fine.

here's how the tracks are reported by MPlayer
using: mplayer -v -identify -demuxer mkv -vo null -ao null -frames 0 "H:\Banana.mkv"
[mkv] Found the head...
[mkv] + a segment...
[mkv] /---- [ parsing seek head ] ---------
[mkv] /---- [ parsing cues ] -----------
[mkv] \---- [ parsing cues ] -----------
[mkv] \---- [ parsing seek head ] ---------
[mkv] |+ segment information...
[mkv] | + timecode scale: 1000000
[mkv] | + duration: 225.270s
[mkv] |+ segment tracks...
[mkv] | + a track...
[mkv] | + Track number: 1
[mkv] | + Track type: Video
[mkv] | + Codec ID: V_MPEG4/ISO/AVC
[mkv] | + CodecPrivate, length 42
[mkv] | + Default duration: 41.708ms ( = 23.976 fps)
[mkv] | + Name: Banana
[mkv] | + Video track
[mkv] | + Pixel width: 1280
[mkv] | + Pixel height: 720
[mkv] | + Display width: 1280
[mkv] | + Display height: 720
[mkv] | + a track...
[mkv] | + Track number: 2
[mkv] | + Track type: Audio
[mkv] | + Codec ID: A_DTS
[mkv] | + Name: DTS 5.1 @ 768 kbps
[mkv] | + Audio track
[mkv] | + Sampling frequency: 48000.000000
[mkv] | + Channels: 6
[mkv] | + a track...
[mkv] | + Track number: 3
[mkv] | + Track type: Subtitle
[mkv] | + Default flag: 0
[mkv] | + Codec ID: S_TEXT/UTF8
[mkv] | + a track...
[mkv] | + Track number: 4
[mkv] | + Track type: Subtitle
[mkv] | + Default flag: 0
[mkv] | + Codec ID: S_TEXT/UTF8
[mkv] | + Language: fre
[mkv] | + a track...
[mkv] | + Track number: 5
[mkv] | + Track type: Subtitle
[mkv] | + Default flag: 0
[mkv] | + Codec ID: S_TEXT/UTF8
[mkv] | + Language: spa
[mkv] |+ found cluster, headers are parsed completely :)

=> Watching these changes I wonder if this was fixed as it was intended. (if so I will fix my code to lower the IDs I get with MPlayer by one to adjust the changes,... + some I'll have to add additional code to check which mkvmerge&extract versions are used,...)

Cu Selur

Mosu
3rd January 2012, 22:40
The Matroska files do not contain track IDs. They contain track numbers and track UIDs. The latter are supposed to be random. The former are the once that used to coincide to how mkvmerge assigns its own track IDs. However, neither of those two header elements are the ones that mkvmerge and mkvextract use.

My bug fix restored the intended behavior that the IDs reported by "mkvmerge -i in.mkv" are the same that both "mkvmerge -o out.mkv in.mkv" and "mkvextract ... in.mkv" use. That was always my promise: mkvmerge reports IDs that can be used by other tools (e.g. my own mmg or external GUIs like MKVcleaver).

I don't care what other third party reports as the ID. No, mkvinfo's output is not a good source for those IDs either.

The idea has always been "spawn mkvmerge once and query the track IDs" followed by "use those track IDs with mkvmerge or mkvextract". I'm kind of curious why you don't do that and try to use mplayer's output instead.

Selur
3rd January 2012, 23:04
I'm kind of curious why you don't do that and try to use mplayer's output instead.
Simple, I do a MPlayer analysis because:
1. I use the VIDs, AIDs, SIDs to preview different stream combinations (with mplayer)
2. it's output is more informative than the one from -i using mkvmerge
3. the IDs MPlayer shows (and mkvmerge showed including 5.1.0) match the IDs that mediaInfo uses, which allows me to get even more info about the streams

btw. why did you change the IDs in the first place?

Cu Selur

Mosu
3rd January 2012, 23:06
"mkvmerge --identify-verbose" outputs more than simply "mkvmerge -i". And I don't guarantee that mkvmerge will not change how it assigns track IDs in the future. I only guarantee that I will always (do my best to) keep "mkvmerge -i" in sync with itself and mkvextract. Just as a fair warning.

Selur
3rd January 2012, 23:29
"mkvmerge --identify-verbose" outputs more than simply "mkvmerge -i".
But since I still need the IDs MPlayer uses for preview I will still need the mplayer pass,...
+ is there a complete list of the cli switches mkvmerge supports somewhere? (didn't know of "--identify-verbose" since it's not listed in the -h output)

I only guarantee that I will always (do my best to) keep "mkvmerge -i" in sync with itself and mkvextract. Just as a fair warning.
if it gets to wild I'll probably start a mkvmergeMod and a mkvextractMod to keep the IDs in synch with other tools,... ;)

Cu Selur

Mosu
3rd January 2012, 23:38
I don't expect them to change again soon, but... well... you never know what bugs still lurk inside my code ;)

Chumbo
4th January 2012, 18:22
No problem..I was only asking if there is some other recommended GUI to use. Nevertheless, I reported the issue at the SF tracker so we'll see if we get an update at some point.
In the meanwhile, you can use tsmuxer to demux any supported tracks/streams you need.

kassiesa
4th January 2012, 19:47
In the meanwhile, you can use tsmuxer to demux any supported tracks/streams you need.

tsmuxer: Unsupported format. Some tracks not recognized. This tracks was ignored.

Error appears for DTS tracks.

Mosu
4th January 2012, 19:50
You could also learn to use mkvextract from the command line. It's not that hard.

Boulder
4th January 2012, 20:44
It's not hard, I'm used to command lines at home and work, but it's a pain in the butt as I have a lot of files to process. I'm going through my video archive to re-encode the AC3/DTS/etc. tracks to put them on my networked media tank using a different audio format (AAC).

DragonQ
4th January 2012, 21:00
End users having to do anything in the command line in 2012 bewilders me. Should be totally unnecessary. I know this is a "power user" program (and a great one at that) but still, GUIs are so much easier to use.

In theory, this'd be fixed pretty quickly. However, AFAIK, none of the three main GUIs (MKVExtract GUI, MKVExtractGUI-2, MKV Cleaver) have been updated in ages (years even)!

sneaker_ger
4th January 2012, 21:07
It's not hard, I'm used to command lines at home and work, but it's a pain in the butt as I have a lot of files to process. I'm going through my video archive to re-encode the AC3/DTS/etc. tracks to put them on my networked media tank using a different audio format (AAC).

As a tip: eac3to makes it unnecessary to demux the audio tracks, as it can work directly on mkv files.

Chumbo
5th January 2012, 14:58
@Boulder,
You can process many files by using a for loop. Just open a command window and type "for /?" to get the syntax. You can also Google for more clarification and examples. Once you set up your batch/command file to do what you want, it just requires minimal after that. If you're more comfortable with a language like Visual Basic, you can always use Windows Host Scripting. Whatever tool you decide to use, if it has a CLI then you're good to go. :)

Here's an example for you that uses the MediaInfo CLI to display and log some basic info about, in this case, TS files found in the folder where this file is executed:@echo off
setlocal EnableDelayedExpansion
set SEARCH=*.ts
set LOGFILE=MEDIAINFO.LOG.TXT
set vformat=
set vscantype=
set vscanorder=
set vfps=
if exist "%logfile%" del "%logfile%"
for /f "delims=" %%i in ('dir /b "%SEARCH%"') do (
set vformat=
set vscantype=
set vscanorder=
set vfps=
echo PROCESSING %%i
echo PROCESSING %%i >> %LOGFILE%
rem GET video format
for /f "delims=" %%f in ('mediainfo --Inform^=Video^;%%Format%% "%%i"') do (
set vformat=%%f
)
for /f "delims=" %%s in ('mediainfo --Inform^=Video^;%%ScanType%% "%%i"') do (
set vscantype=%%s
)
for /f "delims=" %%s in ('mediainfo --Inform^=Video^;%%ScanOrder%% "%%i"') do (
set vscanorder=%%s
)
for /f "delims=" %%f in ('mediainfo --Inform^=Video^;%%FrameRate%% "%%i"') do (
set vfps=%%f
)
echo Format: !vformat!, Scan Type: !vscantype!, Scan Order: !vscanorder!, FPS: !vfps!
echo Format: !vformat!, Scan Type: !vscantype!, Scan Order: !vscanorder!, FPS: !vfps! >> %LOGFILE%
)
:end
endlocal

Boulder
5th January 2012, 20:32
Thanks, I may not need it for this particular job but I got something else that such approach would benefit :)

Mosu
5th January 2012, 23:38
Good news, everyone! The author of MKVExtractGUI2 has just posted on my bug tracker that he's updated his GUI:

Hi, folks.

Fixed my GUI, download newest from
http://sourceforge.net/projects/mkvextractgui-2/

Sorry for the overdue update, i still use mkvtoolnix 3.4 :)

Boulder
5th January 2012, 23:54
Hey, that's very nice indeed :)

DragonQ
6th January 2012, 01:56
Good news, everyone! The author of MKVExtractGUI2 has just posted on my bug tracker that he's updated his GUI:
Doesn't work for me. Extracting the second track (audio) works fine but extracting the first one (video) gives me this when using mkvtoolnix 5.2.1:

http://i43.tinypic.com/s6onle.png

(Note that my renaming of the exe isn't the issue; it happens with its default name too.)