View Full Version : mkvtoolnix 1.6.5 is out


Mosu
7th December 2005, 20:13
Newest version is 1.7.0: http://www.bunkus.org/videotools/mkvtoolnix/win32/mkvtoolnix-unicode-1.7.0-setup.exe (see page 10)

Hey guys,

after nearly two months I'm releasing a new version, 1.6.5. Tons of bug
fixes, a couple of new features. The usual mix ;)

The links:
...to the homepage:
http://www.bunkus.org/videotools/mkvtoolnix/
...to the source code:
http://www.bunkus.org/videotools/mkvtoolnix/sources/mkvtoolnix-1.6.5.tar.bz2
...to the Unicode enabled Windows build:
http://www.bunkus.org/videotools/mkvtoolnix/win32/mkvtoolnix-unicode-1.6.5-setup.exe

The other binaries are still being built and will be available shortly.

Finally the ChangeLog excerpt since the previous version:

-------------------
2005-12-07 Moritz Bunkus <moritz@bunkus.org>
* Released v1.6.5.

2005-12-06 Moritz Bunkus <moritz@bunkus.org>
* source: bug fix: Changed the list of ISO 639 languages so that the terminology versions are converted into the bibliography versions of the 639-2 codes (e.g. use "ger" instead of "deu" for the German language). Converted almost all pieces of mkvmerge and mmg to accept ISO 639-1, 639-2 codes (both bibliography and terminology versions) and the languages' English names. Those will always be converted to the 639-2 code. Fixes Anthill bug #171.

2005-12-05 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: The country code used in XML chapter files was checked against the list of ISO 639-1 codes and not against the list of ccTLDs. Partial bugfix for Anthill bug #171.
* mkvmerge: bug fix: When appending tracks and using timecodes the timecodes were only used for the first track in a chain of tracks. This has been changed so that you must specify only one timecode file in such cases (e.g. "mkvmerge ... --timecodes 0:my_timecodes.txt part1.avi +part2.avi"). mmg has already been working like this. Fixes Anthill bug #162.

2005-12-02 Moritz Bunkus <moritz@bunkus.org>
* source: new feature: Added support for linking against liblzo2 (same compression algorithm, just a new library version). Patch by Diego Petten (see AUTHORS).
* mkvmerge: new feature: Added a workaround for files created by Gabest's DirectShow Matroska muxer with slightly broken frame references. Fixes Anthill bug #172.
* mkvextract: new feature: attachment extraction mode: Made the output file name optional. If it is missing (e.g. "mkvextract attachments source.mkv 92385: 124981:") then the name of the attachment inside the Matroska file is chosen instead. Patch by Sergey Hakobyan (see AUTHORS).
* mkvmerge: new feature: If an output file name contains directories that don't exist then they're created. Patch by Sergey Hakobyan (see AUTHORS) with modifications by myself.

2005-11-24 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: Don't abort reading a Matroska if the next element is not a cluster. This is the case for e.g. files produced by Haali's muxer which writes the segment tracks element in intervals. Fixes Anthill bug #169.

2005-11-19 Moritz Bunkus <moritz@bunkus.org>
* mmg: bug fix: Fixed a problem with the selection of language codes for chapters in the chapter editor.

2005-11-18 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: If at least or more attachments were present and the user used --attachment-name for each of them (as mmg does) then mkvmerge was wrongly outputting a warning about multiple uses of --attachment-name for a single attachment.
* mkvmerge: new feature: Added limited support for edit lists in MP4/QuickTime files. Fixes Anthill bug #151.
* mkvmerge: bug fix: MP4/QuickTime files which contain another atom before the 'avcC' atom in the video track headers weren't correctly remuxed.

2005-11-16 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: mkvmerge will now refuse to append AVC/h.264 video tracks whose codec initialization data blocks do not match. Invalidates Anthill bug #163.

2005-11-12 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: Fixed a crash If the granulepos (the timecodes) reset in the middle of an Ogg/OGM file. Fixes Anthill bug #166.
* mkvmerge: bug fix: Fixed a division-by-zero error in the RealMedia demuxer. Fixes Anthill bug #161.
* mkvmerge: bug fix: Fixed a couple of potential (and actual) segmentation faults by accessing invalid memory addresses. Initial patch for the VobSub reader by Issa on Doom9's forum.

2005-11-04 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge, mmg: new feature: The names of attached files can be set with a new option --attachment-name or on mmg's "Attachments" page.

2005-11-02 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: Fixed another bug when appending AVC/h.264 tracks that would mkvmerge cause to die with "bref_packet == NULL". Fixes Anthill bug #160.

2005-11-01 Moritz Bunkus <moritz@bunkus.org>
* mmg: bug fix: When the user saved the muxing output in a log file that file didn't use Windows line endings (CR LF) on Windows.
* mmg: bug fix: Appending tracks was broken because the track numbers in the command line were incorrect. Fixes Anthill bug #160.

2005-10-23 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: new feature: Added support for Ogg/Theora.

2005-10-22 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: Changed the CodecID for AAC audio tracks to "A_AAC" by default The CodecPrivate contains the same initialization data that are stored in the ESDS in MP4 files for AAC tracks. The old CodecIDs (e.g. "A_AAC/MPEG4/SBR") can be turned on again with "--engage old_aac_codecid".

2005-10-21 Moritz Bunkus <moritz@bunkus.org>
* mkvinfo: new feature: The sub elements of the EBML head are now shown.
* mkvinfo: new feature: Added support for the new SimpleBlock.
* mkvextract: new feature: Added support for the new SimpleBlock.
* mkvmerge, mmg: new feature: Added support for the new SimpleBlock instead of BlockGroups (only available via "--engage use_simpleblock" for now). Patch by Steve Lhomme (see AUTHORS) with fixes by myself.
-------------------

Have fun :)

Mosu

buzzqw
7th December 2005, 21:42
Thanks Mosu ! :thanks:

another great release (Go Mkv GO !!!)

BHH

Sirber
7th December 2005, 22:35
Many thanks!!!

Merged in RealAnime LE :D

Elias
8th December 2005, 05:40
Nice going there!

multicone
8th December 2005, 14:25
2005-10-23 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: new feature: Added support for Ogg/Theora.

:O :O :O !!!

Theora in MKV ??? What should this be good for ? Will the Xiph guys not be pissed about this ?

foxyshadis
8th December 2005, 15:22
Theora's been in the specs for years, it just hasn't been implemented in mkvmerge. No reason why they should be pissed, there's nothing proprietary about mkv and it's very useful for audio and streams that ogg can't handle.

LeMoi
8th December 2005, 17:28
If i add an idx/sub containing many tracks, the language for each track is not kept. Example, track0 in idx is english, i click on it, then i click on track2 which is supposed to be French, and "english" is displayed. So i change and set "French", then I go to track 3 which is supposed to be German, but i se "french". Actually, I see the language that i just saw or set for the previous track :o

Mosu
8th December 2005, 17:57
Ups, thanks. Fixed in http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20051208-1.rar

Atamido
8th December 2005, 19:00
No reason why they should be pissed, there's nothing proprietary about mkv and it's very useful for audio and streams that ogg can't handle.Xiph isn't particularly keen on having their opensource codecs paired up with properietary/patented codecs. But generally they don't care if there is support in Matroska for their codecs or not.

issa
9th December 2005, 09:54
Latest CVS/SVN (unicode+SSE2) build:
http://rapidshare.de/files/8853745/mkvtoolnix-20051209-unicode-sse2.7z.html

Note: mmg's lang slections fixed, chinese in frequnce use list is missing.

Mosu
9th December 2005, 16:38
issa: If you make changes yourself I'd very much appreciate it if you'd send me patches so that they'll end up in my source tree. If you haven't changed anything yourself then your build shouldn't be different from the one I've linked to above (apart from being built with SSE2).

MacAddict
10th December 2005, 13:13
Many thanks for the new build!

@issa
Thanks for the SSE2 build too :-)

Teegedeck
11th December 2005, 12:12
Another release of my favourite muxer; couldn't cope without it! Thanks! :)

Egh
12th December 2005, 17:59
It's a great tradition in each new mkvtoolnix to have new text message. The last one is very good "Watcher of the skies".

But i guess there's a tradition on making some interesting bugs in each new release as well ^)

1. Have several files in the attachement list (in my case they all are .ttf and their number is visible list size +1).
2. Remove attachments or attachments.
3. Click on t3h emply space what's left after them.
4. MMG.EXE has crashed and will be shut down :P

Also there's a request for new feature on that page -- it's possible to add several .ttf s at once, why it's not possible to select and remove several entries from the list as well ^^?

And haven't tested in the last version yet, but in previous it was the problem -- mmg.exe doesnt' automatically recognize .ttc extension (i.e. assign same MIME type as for .ttf file). It's an official container format for several .ttfs at once, iirc. It works nicely on playback, it's just a bit annoying you have to assign the type of MIME manually for it.

Mosu
12th December 2005, 19:03
...

3. Click on t3h emply space what's left after them.
4. MMG.EXE has crashed and will be shut down :P

Nice, another on-Windows-only bug :( But that should be very easy to fix.

Also there's a request for new feature on that page -- it's possible to add several .ttf s at once, why it's not possible to select and remove several entries from the list as well ^^?

Of course this would be technically possible, but that would require making the list multi-select list, and that's again adding more buggy GUI code for dealing with that. Not at the moment, but I might add it if I get bored with other stuff ;)

And haven't tested in the last version yet, but in previous it was the problem -- mmg.exe doesnt' automatically recognize .ttc extension (i.e. assign same MIME type as for .ttf file). It's an official container format for several .ttfs at once, iirc. It works nicely on playback, it's just a bit annoying you have to assign the type of MIME manually for it.

Hmm, I find that kinda hard to believe that the same MIME type would be used for a single element and a container at the same time. Kinda defeats the purpose of a MIME type, IMHO. Could you give me a pointer to a website or something where that MIME type is assigned to that format as well, please?

Mosu
12th December 2005, 19:14
The attachment-related crash should be fixed in http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20051212-1.rar

Mosu
12th December 2005, 20:06
Hmm, I just tried to implement the "remove multiple attachments at once" thingy but was quite angry at the GUI toolkit not sending an event if all entries have been deselected... So for the moment I will not add this feature.

dwrbudr
13th December 2005, 15:34
I've a problem to mux .aac (created with BeLight and WinAmp 5.12 AAC+ v2) and .avi (XviD) - the resulting .mkv is not playable. When I create the AAC file with WinAMP 5.11 DLLs everything is fine..

trodas
13th December 2005, 20:45
Stupid but releated question (please don't kill me) :D

Is this the right tool, that help me to open the mkv file so I could get the AVI and the SUBTITLES from it?

The subs did not match well, so they need fixing, so I have to open the file :o

What can I use? Is this the right toy for my little game? :confused:
:stupid:

Mosu
13th December 2005, 20:59
I've a problem to mux .aac (created with BeLight and WinAmp 5.12 AAC+ v2) and .avi (XviD) - the resulting .mkv is not playable. When I create the AAC file with WinAMP 5.11 DLLs everything is fine..

Please upload two AACs to my FTP server (see signature): one created with 5.12 and one created with 5.11. Please use the same source so that I can easily spot the differences. Thanks.

Mosu
13th December 2005, 21:02
Stupid but releated question (please don't kill me) :D

Is this the right tool, that help me to open the mkv file so I could get the AVI and the SUBTITLES from it?

The subs did not match well, so they need fixing, so I have to open the file :o

What can I use? Is this the right toy for my little game? :confused:
:stupid:

Yes, mkvtoolnix is the right package for this task. I would suggest you take these steps:

Extract the subtitles from the mkv file,
Edit the extracted subtitle file and correct the timestamps,
Remux the source mkv file without the bogus subtitle track and add the corrected subtitle file at the same time.

A short example of how to do this:

Use mkvextract or the mkvextract GUI that can be found somewhere here on the forum for extraction. Let's call the resulting file "subs.srt".
Use whatever software you like -- a plain text editor or a special subtitle editor -- for editing "subs.srt".
Start mmg, the mkvmerge GUI. Then add the original file. You'll see that several tracks appear in mmg's track list. DEselect the defective subtitle track. Now add "subs.srt" and mux everything into a new file.

kurt
13th December 2005, 21:06
Stupid but releated question (please don't kill me) :D

Is this the right tool, that help me to open the mkv file so I could get the AVI and the SUBTITLES from it?

The subs did not match well, so they need fixing, so I have to open the file :o

What can I use? Is this the right toy for my little game? :confused:
:stupid:
nope, try MKVextractGUI ... :)
http://www.matroska.org/downloads/windows.html

edit: too late :D

Teegedeck
14th December 2005, 12:50
Here comes a small and selfish request for mmg.exe that I've never dared to come forward with till now - Mosu, could you alter the automatic setting of output filenames a little so that the output filename is cleared not only after adding a job to the queue but also after removing the initial input-file? It's purely an ease-of-use request for my personal benefit as I'd like to re-use the same instance of mkvmerge without having to go over the job-queue or having to resort to _typing_(!) while I fiddle with small test sequences. Thanks if you have some time left to do that and never mind if you don't!

Mosu
14th December 2005, 13:46
Here comes a small and selfish request for mmg.exe that I've never dared to come forward with till now - Mosu, could you alter the automatic setting of output filenames a little so that the output filename is cleared not only after adding a job to the queue but also after removing the initial input-file?

I don't like that too much, because that would probably confuse a lot of users. What I could do is to clear the output file name once all input files have been removed. Would that suffice for you?

Teegedeck
14th December 2005, 14:17
Ah, that would be just as well. :)

I wouldn't want mmg's usability for others to be degraded in any way.

Thank you, Mosu.

Mosu
14th December 2005, 16:45
Give http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20051214-1.rar a try, Teegedeck :)

trodas
14th December 2005, 21:28
Well, thank you, but the executable need so many dlls to download, starting with cygz.dll ... and the only way is trough setup, and internet update, witch is awfull and it makes me wish only one thing - never EVER meet any other mkv file. Now I just hope I can extract the AVI and the SUBtitles file from the mkv container, witch is maybe good for something, but flooding my system with many stupid useless files make me wish it never existed - ever :(

Didée
14th December 2005, 22:27
... so many dlls to download ... flooding my system with many stupid useless files ... bla-blabla.

One file to download: mkvtoolnix*setup.exe. One more archive to download for mkvextract-gui. That's it.

Then:
Go to X:\Windows. Call 'properties'. Read how many files were found. (On my sys.: 11'117)
NOW start wondering about useless files.

trodas
15th December 2005, 16:44
Didée - bla bla bla bla, on my system any dir like Windows did not exist. It is a WinNT dir there (have you bothered to check my sig?) and there is only 4 440 files (including the additional need dll's I had to use) and the system is far from being optimized by nLite ;)
Now talk about so many useless files :D

I hate setups. Just depack and run. Besides, with a little tweaking I found, that is need just

cygz.dll
cygwin1.dll
libiconv.dll

...so I could delete the rest of the horsecrap, flooding my poor HDD :mad:

Now the real problem. I can extract the subtitles, video and audio. Subtitles are ok, but since the mkv did NOT report the framerate of the file, I can't even convert the srt into the sub (MicroDVD format), because I don't know the framerate. Eh, that suxx. Audio of fine, normal ogg format. Yet the track one, the video is veird.

Track1.rmvb

rmvb? WTF? The file looks like this:

.RMF  PROP 2 PF. ŻÄ >‰
I] V! #&Gi ż  CONT  MDPR i PF. ŻÄ >‰
V!Videovideo/x-pn-realvideo " "VIDORV40Ŕp  H @ DATA#&FŞ

So, how I can create a NORMAL avi file to witch I can sync the subtitles from THIS?! :confused: VirtualDub mod did not like the file, and I need him to like it, becuase I need to link the audio with it and save as normal avi container, witch one can work with... help?

PS. so I just open the mkv file with the VirtualDub with hope to save it as avi, yet it says that "The source videostream uses a compression algorithm witch is not compatible with AVI files. Direct stream copy cannot be used with this videostream." So I quess that it is. Useless mkv video, I need to download another version of the movie, for this time surelly avoid the mkv one, right? :(

foxyshadis
15th December 2005, 17:00
It's not mkv's fault that it supports rmvb and avi doesn't. Go bitch at whomever made it, though I doubt they'll care either, because you can't store rmvb in avi without recompression; to play or load it you need real player or real alternative.

And mkv does have a default duration, which is the inverse of the framerate.

Didée
15th December 2005, 17:01
trodas - welcome in the digital world. If it does bother you so much indeed, consider collecting stamps instead.

Useless mkv video, I need to download another version of the movie, for this time surelly avoid the mkv one, right?
No. What you need to do is reading the forum rules, since you are breaking them.

Isochroma
15th December 2005, 23:56
Using MKVMerge 1.6.5, muxing DivX 6.11 files I noticed that frame 0 of the avi file is eaten, when muxed in either native mpeg-4 mode or VFW mode. This occured whether or not b-frames were used in the avi file. If b-frames are enabled, the entire video clip loses 3 frames, and frame 0 is eaten.

This is using DirectShowSource() and VirtualDub to check the frame alignment.

Are these two items features, or bugs? Are there any undocumented switches to prevent frame 0 from being eaten? I can understand the b-frame delay, though...

issa
16th December 2005, 03:12
Well, thank you, but the executable need so many dlls to download, starting with cygz.dll ... and the only way is trough setup, and internet update, witch is awfull and it makes me wish only one thing - never EVER meet any other mkv file. Now I just hope I can extract the AVI and the SUBtitles file from the mkv container, witch is maybe good for something, but flooding my system with many stupid useless files make me wish it never existed - ever :(

If you don't want to download those dll, you can try my build if you have
system support unicode and SSE2.

Here is the link, http://rapidshare.de/files/9250966/mkvtoolnix-20051214-UNICODE-SSE2.7z.html

Mosu
16th December 2005, 08:21
Using MKVMerge 1.6.5, muxing DivX 6.11 files I noticed that frame 0 of the avi file is eaten, when muxed in either native mpeg-4 mode or VFW mode. This occured whether or not b-frames were used in the avi file. If b-frames are enabled, the entire video clip loses 3 frames, and frame 0 is eaten.

Huh!? This would mean that the whole file doesn't start with an I frame, right? So playback would basically suck at the beginning or even break?

Can you upload such a file please?

Isochroma
16th December 2005, 20:06
I have no doubt that frame 0 is indeed present. Just that no player or DirectShowSource() seems able to extract it when muxed in MKV. If the AVI track was demuxed, I'm sure it would have the exact number of frames as the original.

I'm using the Haali Media Splitter (installed the Matroska Pack 1.1.2 with that option checked).

Just did a test with a HFYU encoded 7 frame AVI. When muxed in MKV and then loaded into VirtualDub via DirectShowSource(), it shows as 6 frames, the first frame being gone (not deleted but unplayable in MKV form). Thus the behaviour occurs not just with DIV6. The following files demonstrate this quite clearly; please note the URL, path and filenames are all case sensitive.

http://isochroma.com/Testfiles/Misc/t1.avi
http://isochroma.com/Testfiles/Misc/t1.mkv
http://isochroma.com/Testfiles/Misc/t1.avs

Using Media Player Classic 6.4.8.7 and the Go To... frame feature, it can also be ascertained in the provided example files that the AVI and MKV files are dissynchronous by one frame.

Mosu
16th December 2005, 22:45
Sounds like a playback/filter issue, doesn't it? I'll ask Haali to look at this thread, maybe he has an idea.

Egh
17th December 2005, 02:05
I think it's just outdated Haali splitter problem then. Matroska Pack iirc is quite old and obsolete package...

issa
17th December 2005, 03:26
Here is fixed mmg.exe crash on file selection box when there is a file added.

CVS/SVN unicode sse2 build:
http://rapidshare.de/files/9310512/mkvtoolnix-20051217-unicode-sse2.7z.html

Isochroma
17th December 2005, 03:26
Because I'm making an encode which will be released to a number of folks, I'm considering advancing the audio track by 41.7 ms in order to compensate for the frame drop.

Does anyone have suggestions as to how I might verify whether this is global behaviour or some peculiarity of my system? Thanks.

Mosu
17th December 2005, 10:59
Does anyone have suggestions as to how I might verify whether this is global behaviour or some peculiarity of my system? Thanks.

You could at least try to watch the movie with mplayer (www.mplayerhq.hu) and vlc (www.videolan.org) and compare the A/V sync.

Haali
17th December 2005, 11:07
Because I'm making an encode which will be released to a number of folks, I'm considering advancing the audio track by 41.7 ms in order to compensate for the frame drop.

Does anyone have suggestions as to how I might verify whether this is global behaviour or some peculiarity of my system? Thanks.
Do they plan to watch the encode via AviSynth too? As for verifying, get some DS player and look at the first frame.

Yong
21st December 2005, 19:24
Im just made mkvmerge.exe crashed :rolleyes: ,when i try to remux mp2/3-in-mp4 to mkv container.
here is the cli options i used:

mkvmerge -o <outfile.mkv> --command-line-charset UTF-8 --priority lowest <infile>

All of my mp2/3-in-mp4 were muxed by mp4box/mp4creator.

LeMoi
21st December 2005, 19:44
If i close the status window while muxing, it keeps muxing and crashes at the end of the process (but muxing is fine)

Mosu
22nd December 2005, 08:05
Im just made mkvmerge.exe crashed :rolleyes: ,when i try to remux mp2/3-in-mp4 to mkv container.

I know that mkvmerge has problems with such files. Consider it "not supported" for the time being.

spolja
27th December 2005, 00:41
Hi,
I have question regarding ISO codes for languages. For my country (Croatia) the code is 'scr' but it should be 'cro'. Why is that?

P.S. Sorry for my bad english

Mosu
27th December 2005, 09:39
Hi,
I have question regarding ISO codes for languages. For my country (Croatia) the code is 'scr' but it should be 'cro'.

You're wrong. Take a look at this official list: http://www.loc.gov/standards/iso639-2/englangn.html

thana
27th December 2005, 20:55
i think he didn't question the list in mkvmerge, but rather the choice the iso committee made by calling it 'scr' instead of 'cro'.

Mosu
28th December 2005, 08:36
Hehe :) I have no idea why they chose 'scr'. Perhaps they base the abbreviation on the country's name in its own language, like 'deu' for Deutschland ( = Germany).

midnightsun
28th December 2005, 09:37
I guess "scr" stands for "Serbian-Croatian". Not sure any of the two parties involved will like ISO's abbreviations ;)

(Croatia in Croatian is Hrvatska btw)

spolja
28th December 2005, 21:29
I don't like this ISO code, it should be cro.
Anyway, thanks for clarifying that.


Btw, thanks Mosu for new version of MKVtools. Works great.

fuxor123
30th December 2005, 03:38
I just encoded a transport stream and would like to mux the ac3 audio file with the video file. I got the ac3 with DVD2AVIT3. Now when i check the properties of the audio file before muxing it with mkvtoolnix with mpc it tells me that its a 6 channel audio. But when i check the properties of the muxed final file with mpc again it states that the audio is 2 channel stereo.
Is this just my computer doing something wrong or am i missing some important setting when muxing?

Mosu
30th December 2005, 09:51
I just encoded a transport stream and would like to mux the ac3 audio file with the video file. I got the ac3 with DVD2AVIT3. Now when i check the properties of the audio file before muxing it with mkvtoolnix with mpc it tells me that its a 6 channel audio. But when i check the properties of the muxed final file with mpc again it states that the audio is 2 channel stereo.
Is this just my computer doing something wrong or am i missing some important setting when muxing?

You can't influence the basic stream settings (sample rate, number of channels etc) with settings, so you're not doing anything wrong. Please upload the first 200 KB of that AC3 file to my FTP server so that I can take a look at it.

fuxor123
30th December 2005, 13:08
It's pretty weird. Afterwards I converted the audio file that i demuxed directly from the ts' and that's supposed to be stereo to another ac3 with same bitrate and 5.1 channels with besweet. and if i mux that resulting ac3 with the video mpc says that its a 6 channel audio.
Nonetheless I'll upload the pure unchanged ac3 that came directly from the ts and the one i "changed" with besweet...
Thanks for looking at it.

Doom9
4th January 2006, 11:56
another very noobish question from me: can mkvmerge handle raw MPEG-4 (A)SP streams? xvid_encraw only writes raw output...

Elias
4th January 2006, 12:00
another very noobish question from me: can mkvmerge handle raw MPEG-4 (A)SP streams? xvid_encraw only writes raw output...You mean as in the cmp (or was it cpm?) container? Or mp4v? I can give it a try and check in an hour or when I have time.

Doom9
4th January 2006, 13:04
no container.. raw streams (like when you extract one from an mp4 via mp4box or write a raw file via mencoder and -of rawvideo)

Mosu
4th January 2006, 17:38
another very noobish question from me: can mkvmerge handle raw MPEG-4 (A)SP streams? xvid_encraw only writes raw output...

No, sorry, no raw video streams of any kind at the moment.

Kurtnoise
4th January 2006, 19:21
@Doom9: you could mux raw to mp4 with mp4box first then mp4 to mkv with mkvmerge...

Doom9
4th January 2006, 23:41
@Doom9: you could mux raw to mp4 with mp4box first then mp4 to mkv with mkvmerge...Of course I could.. but the sheer thought makes me shudder.. mux so that you can mux again.. it feels so pointless somehow (you remember me saying the same about getting raw avc streams into mkv.. not even sure if that's possible now). The thing is, but xvid commandline encoder tools only provide raw output.

Egh
5th January 2006, 20:47
Of course I could.. but the sheer thought makes me shudder.. mux so that you can mux again.. it feels so pointless somehow (you remember me saying the same about getting raw avc streams into mkv.. not even sure if that's possible now). The thing is, but xvid commandline encoder tools only provide raw output.

I agree. In fact there're some ways to do so even w/o mp4box (which i found very buggy and glitching). But would be good if mkvtoolnix supported raw input as well. In any case, mkvextract can extract to raw streams so why not to use them as input?

Also, about avc raw streams. Quite easy, but a bit too dirty to do so :) Use avc2avi tool (it takes avc raw stream and outputs avc-in-avi). The only problem with it is that if you mux the avi into mkv, you'll get it in VfW mode, which all the matroska gurus oppose :)

foxyshadis
6th January 2006, 00:28
mkvmerge has the --engage native_mpeg4 flag, although of course raw->avi->mkv is no better (slightly worse...) than raw->mp4->mkv. ;_;

Doom9
6th January 2006, 00:36
I've always been wondering, is there an overhead difference between VfW compatibility mode and native mode?

Isochroma
6th January 2006, 01:03
Indeed there is, at least for h.264 MP4 vs. h.264 in AVI. Playback on my machine takes significantly more cpu in AVI mode, and the usage spikes are much higher. A file that plays back ok in native mode often stutters slightly in AVI mode.

Mosu
6th January 2006, 08:46
mkvmerge has the --engage native_mpeg4 flag, although of course raw->avi->mkv is no better (slightly worse...) than raw->mp4->mkv. ;_;

--engage native_mpeg4 is mis-named. It only handles MPEG-4 part 2 (DivX/XviD and the likes), not part 10 (AVC).

Mosu
6th January 2006, 08:47
But would be good if mkvtoolnix supported raw input as well. In any case, mkvextract can extract to raw streams so why not to use them as input?

Of course it would be good, and I'm working on it from time to time. But parsing AVC ES is WAY more complicated than writing it if the frames are already packaged (as they are in a Matroska file): just write the header (00 00 00 01), write the length, write the packet, done.

Egh
6th January 2006, 20:37
mkvmerge has the --engage native_mpeg4 flag, although of course raw->avi->mkv is no better (slightly worse...) than raw->mp4->mkv. ;_;

In some aspect it's much better to use avi though -- you can use vdub on it. In fact I use that to patch the files without fully reencoding them. And doing it thru avi for test releases is usually the most convinient way.

Though using splitting/combining in mkvmerge is almost as convinient (but usually still need avi file to determine exact GOPs to reencode).

buzzqw
11th January 2006, 10:31
using this string for muxing (generated by mmg)

mkvmerge.exe -o "D:\DVDMAGIC\movie.mkv" -d 1 -A -S D:\movie.mp4 -D -A -S "D:movie T01 3_2ch 384Kbps DELAY -23ms.spx" --track-order 0:1,1:0

i got this error

Warning: 'D:\movie T01 3_2ch 384Kbps DELAY -23ms.spx': No tracks will be copied from this file. This usually indicates a mistake in the command line.

the file is generated by beswet ,the header of speex files is


00000000h: 4F 67 67 53 00 02 00 00 00 00 00 00 00 00 78 71 ; OggS..........xq
00000010h: 00 00 00 00 00 00 E4 89 07 97 01 50 53 70 65 65 ; ......ä‰.—.PSpee
00000020h: 78 20 20 20 73 70 65 65 78 2D 31 2E 31 2E 36 00 ; x speex-1.1.6.
00000030h: 00 00 00 00 00 00 00 00 01 00 00 00 50 00 00 ; ............P..

but isn't recognized by MMG

Any tips ?

BHH

Kurtnoise
11th January 2006, 11:08
mkvtoolnix doesn't support speex files...

buzzqw
11th January 2006, 13:17
Ouch ...

.... so... how mux mp4 and speex in any other container ? :thanks:

BHH

Kurtnoise
11th January 2006, 16:03
how mux mp4 and speex in any other container ? :thanks:
you can't...or maybe wrap speex stream into AVI via ACM codec. But I'm not sure about that.

Egh
12th January 2006, 23:48
Mosu: any key to disable strict check on AVC streams merge? I mean when codec private data is same length but different content.

1.6.0 older builds mux everything fine, and since last build for 1.6.0 and 1.6.5 mkvmerge fails to merge those.

Mosu
13th January 2006, 08:15
Mosu: any key to disable strict check on AVC streams merge? I mean when codec private data is same length but different content.

1.6.0 older builds mux everything fine, and since last build for 1.6.0 and 1.6.5 mkvmerge fails to merge those.

No, and it doesn't fail, it refuses. I've spent too much time trying to figure out supposed bugs with AVC concatenation that were due to differing codec privates -- cases in which mkvmerge simply cannot concatenate streams correctly. Therefore it refuses to do so in the first place.

Egh
13th January 2006, 22:43
No, and it doesn't fail, it refuses. I've spent too much time trying to figure out supposed bugs with AVC concatenation that were due to differing codec privates -- cases in which mkvmerge simply cannot concatenate streams correctly. Therefore it refuses to do so in the first place.

Well I understand that. But why not to include some key "use at your own risk" or something like that? E.g. in my case if i recode into avc op and main ep separately by Nero Recode, last versions of mkvtoolnix refuse to merge those streams. But it works fabulously with 1.6.0 and previous ones. I don't know what's even different in those private_data headers, it's probably some 1 byte difference or so, which doesn't affect merge anyway.

LeMoi
16th January 2006, 14:02
When i create an audio file with BeSweet, using aac v2 dll, with "v5" parameter ("Dual Channels"), the infos of the generated aac are not stored correctly when i mux it in an mkv. With MatroskaProp I can see that number of channels is set to 0, and so, Haali splitter can't play the file saying that it has invalid number of channels :o

Mosu
19th January 2006, 15:27
When i create an audio file with BeSweet, using aac v2 dll, with "v5" parameter ("Dual Channels"), the infos of the generated aac are not stored correctly when i mux it in an mkv. With MatroskaProp I can see that number of channels is set to 0, and so, Haali splitter can't play the file saying that it has invalid number of channels :o

Please upload such a AAC/MP4 file as I don't have BeSweet. Thanks.

LeMoi
19th January 2006, 21:17
See both aac and mkv here :
http://lemoi.fr.free.fr/test_cod/

Mosu
27th January 2006, 09:15
When i create an audio file with BeSweet, using aac v2 dll, with "v5" parameter ("Dual Channels"), the infos of the generated aac are not stored correctly when i mux it in an mkv. With MatroskaProp I can see that number of channels is set to 0, and so, Haali splitter can't play the file saying that it has invalid number of channels :o

Your file has a serious problem: the "channels" element of all the ADTS headers in the file are set to 0. I've been digging around in the faad2 source code a bit, and in this case faad2 gets the actual number of channels by starting to decode the packet and summing up the channel configuration (number of front/back channels etc).

Unfortunately this is way more than I'm willing to implement in mkvtoolnix. Therefore such files will never be supported properly. I might even refuse to mux them in the first place.

Unless someone provides a patch for mkvtoolnix which implements this.

Mosu
27th January 2006, 09:18
Well I understand that. But why not to include some key "use at your own risk" or something like that? E.g. in my case if i recode into avc op and main ep separately by Nero Recode, last versions of mkvtoolnix refuse to merge those streams. But it works fabulously with 1.6.0 and previous ones. I don't know what's even different in those private_data headers, it's probably some 1 byte difference or so, which doesn't affect merge anyway.

I will add "--engage override_safety_checks" for this soon. It's a "I know what I'm doing, but don't blame the author" switch. So if playback of such a file fails I'll flat out refuse to give any support :)

LeMoi
27th January 2006, 10:26
Your file has a serious problem: the "channels" element of all the ADTS headers in the file are set to 0. I've been digging around in the faad2 source code a bit, and in this case faad2 gets the actual number of channels by starting to decode the packet and summing up the channel configuration (number of front/back channels etc).

Unfortunately this is way more than I'm willing to implement in mkvtoolnix. Therefore such files will never be supported properly. I might even refuse to mux them in the first place.

Unless someone provides a patch for mkvtoolnix which implements this.
OK no problem, anyway i never use "dual channels", it was just for reporting :)

Mosu
27th January 2006, 13:59
OK no problem, anyway i never use "dual channels", it was just for reporting :)

ok, then I won't feel too bad about it ;) I'm just wondering if this is a bug in the encoder software or if '0' is actually a valid setting for ADTS AAC headers... The latter case sounds FUBAR.

robU*4
27th January 2006, 22:02
I will add "--engage override_safety_checks" for this soon. It's a "I know what I'm doing, but don't blame the author" switch. So if playback of such a file fails I'll flat out refuse to give any support :)

When doing something like that, could you add it in the mkvtoolnix description in the matroska header ? This way we can track matroska files that we created with dubious settings. :)

Haali
27th January 2006, 23:21
and propagate it further when remuxed

bond
30th January 2006, 20:40
i already told mosu via irc about this but i post this here again so i dont forget it :D

i think i have found a bug in mkvmerge related to creating native mpeg4 from mp4. it seems mkvmerge has problems around i-frames, as it seems to wrongly detect the timestamps and the frametype there.
this only happens right around keyframes. the timestamps of the rest of the stream are perfectly fine

first of all storage order should be PIPBPB but mkvmerge writes PIBBPB so it thinks one P to be a B
the next error is that the display order should be PIBPBP but mkvmerge signals timestamps for PBBIBP

i double checked it with 1) what xvid reports it has written 2) what mp4box writes from the raw xvid stream 3) what xvidcli's native mpeg4 mkv writes and all show mkvmerge to be wrong

i have this on a stream with 2 keyframes and around both there is this problem, get the sample here (http://home.pages.at/bond_/mkvmerge.7z)

thana
7th February 2006, 02:04
hi mosu, i found a .mov which mkvmerge can't identify:
Error: Quicktime/MP4 reader: Invalid chunk size 0 at 20.
it plays fine with mplayer and quicktime, tracks are h264 and 'twos' (big endian 16bit pcm audio). i uploaded the first 4MB to your ftp (h264_twos.mov), i hope that's enough.

HookedOnTV
9th February 2006, 18:11
So is raw AVC/H.264 on the radar?

Mosu
9th February 2006, 18:21
Not really, sorry.

stax76
10th February 2006, 22:37
Can I use strings like 'русский' for --track-name? Using Haali splitter and Zoom Player displays '????????', same problem with MP4Box.

Mosu
10th February 2006, 22:46
With mmg this should work. On the command line you'll also have to use --commandline-charset before --track-name.

stax76
11th February 2006, 01:03
With mmg this should work. On the command line you'll also have to use --commandline-charset before --track-name.

My chars 'русский' translate to 'russian', I get this chars from .NET and the values are > 1000. maybe on a russian system it would return chars covered by cyrillic 8859-5, I don't know if the unicode > 1000 chars could be converted to 8859-5 < 255 chars. Does mkv/mkvmerge not support unicode chars? I'm afraid I'm a bit clueless about text encoding. :(

Egh
11th February 2006, 02:49
My chars 'русский' translate to 'russian', I get this chars from .NET and the values are > 1000. maybe on a russian system it would return chars covered by cyrillic 8859-5, I don't know if the unicode > 1000 chars could be converted to 8859-5 < 255 chars. Does mkv/mkvmerge not support unicode chars? I'm afraid I'm a bit clueless about text encoding. :(

Windows should return cyrillic either as Win-1251 CP (one-byte) or as unicode. (In all the windows functions that is).

I tried just now (using mmg and typing in Русский as a track name). The string in the muxed mkv itself is represented as UTF-8. This is most likely inner conversion in the GUI of MMG itself, with CLI it can be different, I suppose. And with mmg muxed file the track names are displayed correctly (haali splitter + mpc). Maybe you just don't have fonts in the system to display it? I'd suggest you check the mkv with mkvinfo -g first, see how the trackname is written in it.

Besides, where did you dig out "iso 8859-5" standard? :O Win1251 for single-byte or Unicode for real things. Anything else for cyrillic (DOS CP866, KOI8-R and other monstrocities) should be scrapped, though they still have usage (mainly on obsolete systems).

stax76
11th February 2006, 14:55
And with mmg muxed file the track names are displayed correctly (haali splitter + mpc).

I can confirm this so I have to ask the Zoom Player author what's the problem.

Besides, where did you dig out "iso 8859-5" standard?

http://de.wikipedia.org/wiki/ISO_8859

For Windows you are right it's 1251 (I couldn't remember).

Last but not least thanks to Egh and Mosu.

Egh
12th February 2006, 00:15
I can confirm this so I have to ask the Zoom Player author what's the problem.
http://de.wikipedia.org/wiki/ISO_8859

For Windows you are right it's 1251 (I couldn't remember).


Well I suspected that it could be either your OS or Zoom Player not showing the tracknames in other languages. As for 8859 and so on, well, I know all encodings for cyrillics. My point was that noone uses iso-8859-5 in practice :P

issa
12th February 2006, 05:32
Here is the latest CVS/SVN Build (msvc unicode),

URL: http://rapidshare.de/files/13076901/mkvtoolnix-20060211-msvc.7z.html

Tima
14th February 2006, 15:20
I have russian Windows, and russian strings work ok (MPC + Haali MS) without changing the default charset..

Booji Boy
20th February 2006, 22:02
When I do the following (created with mkvmerge gui):

"mkvmerge" -o "My home movie.mkv" -a 1 -d 0 -S My home movie part1.avi -a 1 -d 0 -S +My home movie part2.avi --track-order 0:0,0:1 --append-to 1:0:0:0,1:1:0:1

I get the following error:

Error: The track number 1 from the file 'My home movie part2.avi' cannot be appended to the track number 1 from the file 'My home movie part1.avi' because the formats do not match.

It is a DTS soundtrack... (of course in both cases). :( is DTS not fully supported or are there some limitations or is there something wrong with my soundtracks? I found nothing at your bugtracker regarding DTS and the docs says nothing about DTS limitation within mkvmerge.

I get the same error when merging other videos which have DTS soundtracks.

Mosu
20th February 2006, 22:23
For DTS this means that either the sample rate of the number of channels do not match. This must be the case because in a Matroska file a single track must always have the same sample rate / the same number of channels.

If those two actually match then it might be a bug in mkvmerge.

Mosu
20th February 2006, 22:29
Ok forget what I just wrote. That would have been the case if the error message read "...because the track parameters do not match".

I think that concatenation of DTS-in-AVI is simply not supported at the moment because there's still some code missing for that. DTS has never been used by a lot of people, and I don't even have a single DTS-in-AVI file...

Booji Boy
20th February 2006, 22:53
Ok, thanks for the quick answer. Then I'll simply postpone editing those videos until it gets implemented. Or maybe I'll try to find a way of merging the demuxed DTS tracks "outside" and "by hand"...

Btw, nice work. MMG is really saving a lot of time.

multicone
21st February 2006, 19:46
Try making MKVs from the AVIs first, then concatenate the MKVs and make a new MKV. This should work.

Booji Boy
21st February 2006, 23:23
Thx, for that idea.

But I tried it and I got the exact same error when joining the mkv files. Interestingly though there was a warning during remuxing the second movie:

Warning: dts_packetizer: skipping 622 bytes (no valid DTS header found). This might make audio/video go out of sync, but this stream is damaged.

Let's see if VirtualDubMod can demux the DTS tracks and whether I can mux them back into the movie after that.

EDIT: Now when I use those two dts files as sources for audio instead of the same streams inside the avis/mkvs joining and remuxing everything together works. I get full "DTS Frame Header Information:" for the second dts stream when it is openend before remuxing starts and it seems to be a ok header, but when the dts stream #2 is finally loaded during the muxing process the warning pops up again.

I also found the reason for the invalid start of the second movie's audio stream - the movie wasn't split very well. I think the second part does not start with a keyframe.

Booji Boy
25th February 2006, 01:15
There may be a bug or maybe I'm just doing something wrong here: when I join two videos in one first go and in the second run I mux the single video again but add the subtitles of both parts (I do append the subtitles of the second video in the list), then afterwards the subtitles will disappear in the second half of the movie. When I mux everything at once (both two videos and two subtitles) the subtitles show up during the whole movie... what am I doing wrong? I noticed this when I used some other tool for joining two videos and wanted to add the subtitles with mkvmerge+mmg.

And I also noticed that the second half of subtitles joined by mkvmerge and those joined by Subtitle Workshop differ by a few milliseconds, why is that?

Tima
25th February 2006, 21:28
Bugs in mkvmerge GUI:
When I stretch an AC3 track e.g. by factor 1001/960, after trying to start muxing I get this:
---------------------------
mkvmerge GUI: error
---------------------------
The stretch setting for track nr. 0 in file 'E:\DVD\VTS_06_1 T02 2_0ch 256Kbps DELAY 0ms.ac3' is invalid.
---------------------------
ОК
---------------------------
The generated commandline is following:
"mkvmerge" -o "C:\Дневной Дозор.mkv" --priority lower --language 1:rus --default-track 1 --display-dimensions 1:720x298 -d 1 -A -S E:\DVD\Pr_DayWatch\project.mkv --language 0:rus --sync 0:0,1001/960 -a 0 -D -S "E:\DVD\VTS_06_1 T02 2_0ch 256Kbps DELAY 0ms.ac3" --language 0:rus --sync 0:0,1001/960 --compression 0:zlib -s 0 -D -A E:\DVD\Pr_DayWatch\project.sub.rus.idx --track-order 0:1,1:0,2:0 --title "Дневной Дозор" --split size:795 --split-max-files 2 --link
When i execute this commandine manually, it works ok.

Warpman
26th February 2006, 00:48
i tried to mux with that
"mkvmerge" -o "TESTENC1.mkv" -d 1 -A -S "TESTENC1.mp4" -a 1 -D -S "neu3.mp4" --track-order 0:1,1:1

mmg crash at the begin of the muxing

log-->
mkvmerge v1.6.5 ('Watcher Of The Skies') built on Dec 7 2005 18:53:31
'TESTENC1.mp4': Using the Quicktime/MP4 demultiplexer.
'neu3.mp4': Using the Quicktime/MP4 demultiplexer.
/log
Error ->Muxing FAILED Return code -1073741676

One mp4 is a mp4 stream created by x264 build 438 (works in mpc) build by cronocross
And the other is a LC-AAC File created by Nero Soundtrax (works in mpc)

Someone know whats going wrong there?

EDIT: Yamb did mux both streams into 1mp4 without a problem ... plays fine too

Mosu
26th February 2006, 10:47
There may be a bug or maybe I'm just doing something wrong here: when I join two videos in one first go and in the second run I mux the single video again but add the subtitles of both parts (I do append the subtitles of the second video in the list), then afterwards the subtitles will disappear in the second half of the movie.[quote]

Hmmm that could be a peculiarity of how mkvmerge appends subtitles. You should always append the subtitles at the same time that you append the video tracks in order to achieve proper subtitle synchronisation. The reason is that subtitle files don't have a "duration" for the whole subtitle file stored in them, so mkvmerge doesn't know by how much to shift the timecodes of the second subtitle file.

An example. Your first movie track is 50 minutes long, the second one 55 minutes. Your first subtitle file contains its last entry at 45 minutes, and the second subtitle file's first entry is at 2 minutes. Now where should mkvmerge put that "2 minutes" entry in the resulting file? At 52 minutes, obviously, but mkvmerge cannot know that if it doesn't have access to the first movie track source file.

[quote]When I mux everything at once (both two videos and two subtitles) the subtitles show up during the whole movie... what am I doing wrong? I

Nothing; this is normal mkvmerge behaviour. Unfortunately this isn't documented anywhere... I have to do that on of these days.

And I also noticed that the second half of subtitles joined by mkvmerge and those joined by Subtitle Workshop differ by a few milliseconds, why is that?

Same reason as above. If you use a subtitle editor and join the two subtitle files that I've used in the example then the "2 minutes" entry would be at "47 minutes" and not at the expected "52 minutes" because a subtitle file's duration can differ a lot from the corresponding movie's duration.

Mosu
26th February 2006, 10:48
Bugs in mkvmerge GUI:
When I stretch an AC3 track e.g. by factor 1001/960, after trying to start muxing I get this:

I'll fix this some day. Thanks for reporting.

Please note that the "stretch" option only changes the timecodes, not the contents. So depending on the decoders/player/filter chain this might or might not work out alright.

Mosu
26th February 2006, 10:50
i tried to mux with that
"mkvmerge" -o "TESTENC1.mkv" -d 1 -A -S "TESTENC1.mp4" -a 1 -D -S "neu3.mp4" --track-order 0:1,1:1

mmg crash at the begin of the muxing

Nah, it's mkvmerge, not mmg that's crashing ;)

Anyway. Looks like you found a bug in mkvmerge's MP4 handling code. Please download http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20060203-1.rar and unpack it into your installation directory. Then re-run your muxing job.

If it still crashes then I'll need the file itself in order to find the problem. If you want you can upload the file to my FTP server (see my signature).

Warpman
26th February 2006, 12:14
Nah, it's mkvmerge, not mmg that's crashing ;)

Anyway. Looks like you found a bug in mkvmerge's MP4 handling code. Please download http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20060203-1.rar and unpack it into your installation directory. Then re-run your muxing job.

If it still crashes then I'll need the file itself in order to find the problem. If you want you can upload the file to my FTP server (see my signature).
ok the avc stream seems to the problem ...
muxing the lc aac alone into mkv works
muxing the avc alone failed
but if i generade a new mp4 with the same command line it works

i could upload the avc stream but it is 150mb big... that ok ?
uploaded it.. filename :"not possible to mux into mkv.mp4"

edit: your new build makes no change...
but it could be that mp4 output in x264 is borked again...

DiMiTRiH
26th February 2006, 14:54
Hey,

I have exacly the same problem.

I'm using:
Mkvtoolnix 1.6.5 (+the new build)
x264 rev439
Megui 0.2.3.2090

I did encode in Megui by x264.exe intro .mp4 format. It took me 12h of encoding btw. After that i tried to mux that into .mkv with audio, two subs and external font. Problem is the same, mkvmerge crash at begin. The wierd thing is that when i encoded into .mp4 by Nero Recode2 (Nero Digital H264) it worked fine even on mkvmerge 1.4.2 version. And now the wierd part. My Friend took the same encode in Megui with one difference. He made not .mp4 file in ouput but .mkv. Thats weird cause it somehow had to be muxed in mkvmerge. And the thing is his muxing while encoding the whole thing didn't crash. I used exacly the same specs on x264 cfg for the encode and mkv merge crashing at me =/

When I add the file in mmg its showed as:
avc1
But when i open my friend's mkv in mmg it shows the video as
V_MPEG4/ISO/AVC

Anyone got any ideas how to crack this thing ? Without making another encode in megui to .mkv instead of .mp4 ?

Warpman
26th February 2006, 14:59
could be possible that mp4 output of large files of x264 is borked again... so mmg cannot mux it or crashes ...

maybe mosu can clear things up here ;)

bond
26th February 2006, 15:13
the only recent change in gpac i know was that jeanlf experimented with setting the duration after the ctts values and not after stts (difference because of the b-frames delay)
but this has been reverted to the old way of handling it again (after stts, not taking the delay into account)

no idea if mkvmerge cares about the duration value in mp4 tough...

Warpman
26th February 2006, 15:21
hm well yamb can mux the mp4 file maybe no problem of gpac?

bond
26th February 2006, 15:24
whats the framerate of the mp4? maybe mkvmerge also has problems handling 64bit mdhd atoms?

Mosu
26th February 2006, 15:29
i could upload the avc stream but it is 150mb big... that ok ?
uploaded it.. filename :"not possible to mux into mkv.mp4"

Ok thanks. I'll take a look at it when I find the time.

Mosu
26th February 2006, 15:42
whats the framerate of the mp4? maybe mkvmerge also has problems handling 64bit mdhd atoms?

Possible. I know why mkvmerge crashes, but I'm not sure how to fix it.

What is the layout of 64bit mdhd atoms? At the moment i use this structure:

typedef struct PACKED_STRUCTURE {
uint8_t version;
uint8_t flags[3];
uint32_t creation_time;
uint32_t modification_time;
uint32_t time_scale;
uint32_t duration;
uint16_t language;
uint16_t quality;
} mdhd_atom_t;

How do I know that the mdhd is a 64bit one?

DiMiTRiH
26th February 2006, 15:50
The only way to get working x264 encode in .mkv is to use MeGUI and encode directly to .mkv. After the encode you can simply use mmg to add own subs,fonts,chapters etc... Remuxing will not cause a crash

bond
26th February 2006, 15:53
the layout is the same. 64bit values for the times and duration are signalled by setting the version to 1

btw the specs are freely available here (http://standards.iso.org/ittf/PubliclyAvailableStandards/c041828_ISO_IEC_14496-12_2005(E).zip)

Warpman
26th February 2006, 16:02
whats the framerate of the mp4? maybe mkvmerge also has problems handling 64bit mdhd atoms?
framerate: 23,976 fps

bond
26th February 2006, 16:05
framerate: 23,976 fpsif you used avisynth as source that propably triggered the 64bit mdhd

avisynth devs work at changing the way avisynth signals 23.976, but i dunno the status:
http://forum.doom9.org/showthread.php?t=104681

Egh
26th February 2006, 16:47
Best way to have avc in mkv -- use Nero :p

Never had any problems with high-profile streams from nero and mkvmerge for ages. Well, apart from appending problems since for some reasons fragments encoded with same settings might have different codecprivate. For that I'm waiting Mosu to implement that advanced switch. But, apart from that, no problems at all.

And those who suggested encoding straight in mkv in x264: i think that in some builds of x264, at least, that's probably worst solution :) Once i had my 10-12h encode screwed up by that, I never used that option. IIRC it's recomended to encode into raw h264 streams to avoid possible bugs.

Warpman
26th February 2006, 17:00
if you used avisynth as source that propably triggered the 64bit mdhd

avisynth devs work at changing the way avisynth signals 23.976, but i dunno the status:
http://forum.doom9.org/showthread.php?t=104681
right the source is a avs-script....

i want x264 output to mkv but unfornatly i forget to change it to mkv... :(

Mosu
27th February 2006, 15:15
The MP4 problems with 64bit MDHD atoms and some timecode overflow issues should be solved in http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20060227-2.rar

Warpman
27th February 2006, 16:57
Mosu you make my day ^^ thanks ^^ :D

Mosu
27th February 2006, 18:23
Mosu: any key to disable strict check on AVC streams merge? I mean when codec private data is same length but different content.

1.6.0 older builds mux everything fine, and since last build for 1.6.0 and 1.6.5 mkvmerge fails to merge those.

Well, I've changed mkvmerge's bahaviour -- again :) Now it will refuse to concatenate streams with differing parameters (think "number of channels" or "picture width/height"), but it'll allow differing codec private contents. In the latter case it will print a big fat warning message, and I might chose not to give support for playback issues with such files.

But then again there are cases where it should "just work".

http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20060227-3.rar

Egh
27th February 2006, 21:11
Well, I've changed mkvmerge's bahaviour -- again :) Now it will refuse to concatenate streams with differing parameters (think "number of channels" or "picture width/height"), but it'll allow differing codec private contents. In the latter case it will print a big fat warning message, and I might chose not to give support for playback issues with such files.


10x! I think in most cases that would work if encoding settings (like b-frames, h264 deblocking preset and so on) are same. For my purposes they ARE same, but codecprivate is different (the only setting i'm changing for different fragments is bitrate). I'll try the new version when I need to append avc fragments next time (working on xvid project atm, where no such issues arise, of course).

Mosu
27th February 2006, 21:57
10x! I think in most cases that would work if encoding settings (like b-frames, h264 deblocking preset and so on) are same.

I agree. However, mkvmerge simply discards the second and all following CodecPrivates. The warning is simply present so that users don't think that mkvmerge can actually perform magic ;) and fixes the CodecPrivate or the bitstream.

I'll try the new version when I need to append avc fragments next time (working on xvid project atm, where no such issues arise, of course).

Let me know how it works out for you.

Egh
4th March 2006, 07:39
Hello!

Now im trying to tame notorious "Ordeal chapters" in mkv :P

It's probably most sophiscated shaman tribe-dance with mkv i performed so far.

So, in order for the segments to be merged by haali splitter on playback, they have to satisfy many (imo FAR too many!) conditions, amongst those would be bit-to-bit IDENTICAL codecprivate parts for each and every track in each segment.

That said, it's seems to be easy. But, matroska uses a hack :P to store additional fields for ssa/ass tracks. So e.g. if you mux .ass files straight from aegisub, codecprivate will be different cause there're additional fields like video/audio files used and other subeditor-specific info. And styles section is written into CP as well.

That could still be reasonable. But ... taking Events section is a step too far :P It writes Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text line and THEN it writes next TWO commented lines which follow (whatever they are, and iirc even using empty line didn't help, those commented lines were still taken...).

So I'd say the latter is a bug, right? What's the point in writing comments lines which are in events section of the ass into codecprivate? :confused: (but happy with myself that i discovered that behaviour, using mkvinfo -g and hex editor :P)

Mosu
4th March 2006, 16:40
So I'd say the latter is a bug, right? What's the point in writing comments lines which are in events section of the ass into codecprivate? :confused:

Not really. This was done due to user requests which complained that comments inside the events were completely removed when stored in a mkv file. They can't be stored in the entries either, so I put them into CodecPrivate.

Egh
4th March 2006, 16:57
Not really. This was done due to user requests which complained that comments inside the events were completely removed when stored in a mkv file. They can't be stored in the entries either, so I put them into CodecPrivate.

Gosh, another hack :) So how many entries are saved that way? Is it only two lines or more? Cause iirc i had more commented lines but only 2 were saved in codecprivate.

Oh! New idea for a advanced switch :) Some kind of simplified codecprivate, to ensure more chance for compatibility between different segments. Practical releases with ordered chapters are now really being rolling out, and quite soon will become rather common for top groups, i guess. What is certain i'm not the only one who does release using those atm :)

Calculon
6th March 2006, 11:39
I have a question that maybe someone can answer. On my system, if I use the unicode build of mkvtoolnix, I usually have to wait about 2 seconds for mkvmerge GUI to open. If I use the non-unicode build it opens instantly. Is there a problem? My system is a dual core Opteron 165 @ 2.4GHz with 1.5GB of RAM on a DFI Nforce 4 board with XP Professional x64. It doesn't bother me much, but is there an advantage to using unicode or non-unicode?

LeMoi
6th March 2006, 11:45
I think Mosu already talked about it, it was about widgets introduced in some older version which may slow down the launching f the GUI :)

Mosu
6th March 2006, 12:34
I have a question that maybe someone can answer. On my system, if I use the unicode build of mkvtoolnix, I usually have to wait about 2 seconds for mkvmerge GUI to open. If I use the non-unicode build it opens instantly. Is there a problem?

LeMoi is correct. The GUI toolkit I'm using (wxWidgets) changed the layout code between two versions, and that change slowed the initial GUI creation down quite a bit. Unfortunately the Unicode support in the earlier (and faster) versions was buggy, so I couldn't go back.

The Unicode build uses the newer and slower and the non-Unicode version uses the older but faster version of wxWidgets.

It doesn't bother me much, but is there an advantage to using unicode or non-unicode?

The Unicode enabled version supports Unicode, obviously. Meaning that you cannot use charsets that use more than one byte for a char (all of the Asian languages for example) with the non-Unicode enabled version. However, if you only use English characters or one of the other usual charsets (like German) then you should be OK with the non-Unicode version. Your mileage may vary.

Calculon
6th March 2006, 22:15
Thank you. I don't deal with much that isn't in English since most of my Matroska stuff is made from my own tv captures, so I'll just use the non-unicode build.

issa
7th March 2006, 08:21
Lastest CVS/SVN build with msvc (unicode),

URL: http://rapidshare.de/files/14893466/mkvtoolnix-1.6.5-20060307-unicode-msvc.7z.html

Egh
7th March 2006, 21:11
@Mosu: new idea for great new option in mkvmerge :)

Dealing with the Ordeal chapters, I found out that the good thing would be Segment UID manual override. i.e. I want it to be created only once (during initial mux) and then each time i remux it the UID should remain unchanged.

the switch "no variable data" doesn't work that way, it always creates zero UID, which is not good for my purposes.

Mosu
7th March 2006, 22:39
@Mosu: new idea for great new option in mkvmerge :)

Dealing with the Ordeal chapters, I found out that the good thing would be Segment UID manual override. i.e. I want it to be created only once (during initial mux) and then each time i remux it the UID should remain unchanged.

That's what the "--segmentinfo" switch is for. With that you can write a XML file specifying stuff in the "segment info element" including the segment UID. Granted, this option is not documented so far (it's only used by Robux4's menu tool and by a couple of developers), but the functionality does exist.

the switch "no variable data" doesn't work that way, it always creates zero UID, which is not good for my purposes.

"--engage no_variable_data" is meant to always produce the exact same file. I use this for regression tests (meaning "did the stuff I did today change what mkvmerge outputs"). This option has saved my butt quite often, but it is definitely the wrong option for your purpose.

Egh
8th March 2006, 00:25
That's what the "--segmentinfo" switch is for. With that you can write a XML file specifying stuff in the "segment info element" including the segment UID. Granted, this option is not documented so far (it's only used by Robux4's menu tool and by a couple of developers), but the functionality does exist.



Well, a bit of docs on it? :) Meaning is it enough to specify only segment UID and leave everything else for the muxer to decide?

Mosu
8th March 2006, 08:13
Should work, yes. Just write a XML file with contents similar to this:

<?xml version="1.0" encoding="ISO-8859-1"?>

<Info>
<SegmentUID format="ascii">AAAAAAAAAAAAAAAA</SegmentUID>
<NextSegmentUID format="hex">0x00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f</NextSegmentUID>
<PreviousSegmentUID format="hex">0f0e0d0c0b0a09080706050403020100</PreviousSegmentUID>
</Info>

You don't have to specify all three, but these are just examples of how you can enter the UID. Then add "--segmentinfo seginfo.xml" to the command line.

Liisachan
8th March 2006, 14:24
@Mosu,
Thank you again for your hard work.

I recently found that Gabest has been implementing an extended version of S_TEXT/ASS since around November 2005, mainly for MPC, but in essence also important for compatibility with USF (S_TEXT/USF).

While S_TEXT/SSA (Sub Station Alpha) data has the signature "ScriptType: v4.00" in it and S_TEXT/ASS (Advanced SSA) has "ScriptType: v4.00+", this new format has "ScriptType: v4.00++" and called ASS2 (MEDIASUBTYPE_ASS2) in source code (http://cvs.sourceforge.net/viewcvs.py/guliverkli/guliverkli/src/filters/parser/mp4splitter/MP4Splitter.cpp?r1=1.13&r2=1.14).

ASS2 is not very clear and probably still under construction, but it has 2 more members in each Style, and 1 more member in each Dialogue. Like USF, and unlike ASS, ASS2 can technically distinguish relative-to-screen from relative-to-frame. Exactly emulating USF's "Powerful element positioning system: Relative to window or video" ( http://usf.corecodec.org/ )...

I did a quick test and mkvmerge happens to be able to mux ASS2 into Matroska and the resulted MKV happens to work with MPC too as if it were muxed perfectly. But mkvinfo thinks this track is S_TEXT/SSA, and I'm sure this is just accidental and not an advisable MKV file.

Exactly what happens if someone (like Gabest or the author of XombieSub) extends SSA/ASS and adds extra non-standard fields to the data, and such a file is muxed into MKV by mkvmerge? If re-reading Matroska Specs ( http://www.matroska.org/technical/specs/subtitles/ssa.html ) , I feel that --

Dialogue: 0,0:00:01.00,0:00:05.00,style,,0000,0000,0000,0000,,Hi!
-- will be stored as if it had Effect "0000" and Text ",Hi!" because Mkvmerge has no idea about the extra field added (4th "0000" in this sample) and thinks what is after the 9th comma is the text data for Dialogue. The result is transparent and accidentally ok for MPC, but other players might display ",Hi!" with the preceding comma.

Something like this might happen more in the future, and I think it would be safer for mkvmerge to read the Format line:

Format: Layer, Start, End, Style, Actor, MarginL, MarginR, MarginT, MarginB, Effect, Text

to know which field is which... in this case, perhaps it would set MarginV=0 (def value) because the data doesn't contain MarginV, and maybe it would ignore MarginT and MarginB because they are unknown fields, and then it can get Text correctly after the 10th comma, not 9th.

I'd appreciate it if Matroska specs would decide the unique protocol to handle unknown fields in SSA/ASS before it is too late :)

For reference, some unofficial samples I made by guessing what ASS2 is like. These works with MPC, so basically I should be guessing right.
MEDIASUBTYPE_ASS2.ass (http://www.faireal.org/tmp/MEDIASUBTYPE_ASS2.ass) 3kb
ASS2_Test.mkv (http://www.faireal.org/tmp/ASS2_Test.mkv) 40kb, muxed by mkvmerge and accidentally working with MPC

LeMoi
11th March 2006, 17:13
ok, then I won't feel too bad about it ;) I'm just wondering if this is a bug in the encoder software or if '0' is actually a valid setting for ADTS AAC headers... The latter case sounds FUBAR.
In fact i DO need this option ^^, i've encoded by mistake such tracks with the "Dual Channels" preset, and know i don't have the original ac3 any more, so i can't re-encode them :s. I need to be able to mux them, because Haali splitter won't open a file with a '0 channel" track in it ^^)

Yong
15th March 2006, 11:53
mkvmerge(latest beta) still cant mux ogg theora directly,
theora is display as "unknown" track in mmg,
that file is created by ffmpeg2theora(svn build).

i have to transmux the ogg theora to avi with mplayer, then remux again with mkvmerge...

Mosu
17th March 2006, 14:21
mkvmerge(latest beta) still cant mux ogg theora directly,
theora is display as "unknown" track in mmg,
that file is created by ffmpeg2theora(svn build).

Upload such a file, please.

Yong
17th March 2006, 15:55
Uploaded.(file name is yong.ogg) ;)

Mosu
17th March 2006, 18:05
Uploaded.(file name is yong.ogg) ;)

Thanks. This build could potentially fix your problem. The resulting file looks fine regardings its timecodes, but I can't play Theora where I am at the moment, so I can't really verify proper playback. Please download

http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20060317-1.rar

Yong
17th March 2006, 19:52
Thanks. This build could potentially fix your problem. The resulting file looks fine regardings its timecodes, but I can't play Theora where I am at the moment, so I can't really verify proper playback. Please download

http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.6.5-build20060317-1.rar
Thanks ;)
btw, i have playback problem with theora-in-mkv too :p
mpc built-in matroska splitter, haali media splitter and mplayer ignored the video and play audio only...

EDIT: mkvextract doesnt work too, : "Error: Extraction of track number 1 with the CodecID 'V_THEORA' is not supported" ...

Mosu
17th March 2006, 20:39
Correct. mkvextract doesn't support Theora and might not for quite some time.

#2
18th March 2006, 03:58
I get very jittery play back with MPC 6.4.8.9 with either the MatroskaSplitter.ax or the in built Martoska splitter or the latest Haali splitter.

This dose not happen if I just play the video stream in the same folder as the audio stream unmuxed and MPC just has to auto load it.

MkvToolnix 1.65 (RMVB and AC3 streams)

foxyshadis
27th March 2006, 16:09
Well, I gave appending unlike x264 segments together a shot (the only difference was that I recompressed intro and outro much harder, via crf instead of 2-pass, I forgot to set zones initially), and all I got for my trouble was a lavc crash. :p (h264.c, line 2610, pic->data[0]) It might have something to do with all three using a custom matrix; the intro and outro merge just fine though.

I'd settle for simply including all three as tracks as long as I could have it play them sequentially, but I can't seem to manage that either; it just treats them as, well, separate tracks. At least using haali's splitter and mpc/zoomplayer.

An yway, that's my experience with the option.

Egh
27th March 2006, 19:39
I'd settle for simply including all three as tracks as long as I could have it play them sequentially, but I can't seem to manage that either; it just treats them as, well, separate tracks. At least using haali's splitter and mpc/zoomplayer.

An yway, that's my experience with the option.

Ordeal Chapters? But if codecprivate parts differ for separate segments, then chapters is not an option atm.

issa
3rd April 2006, 17:59
Lastest CVS/SVN msvc unicode build,

URL: http://rapidshare.de/files/17117773/mkvtoolnix-1.6.5-msvc-unicode-20060403.7z.html

tomos
7th April 2006, 14:02
i'm using mkvmerge to try and mux a video with an aac audio track but every time it locks. it gives me an err sayin

Warning: AAC files may contain HE-AAC / AAC+ / SBR AAC audio. This can NOT be detected automatically. Therefore you have to specifiy '--aac-is-sbr 0' manually for this input file if the file actually contains SBR AAC. The file will be muxed in the WRONG way otherwise. Also read mkvmerge's documentation.

i've tried some different options i found in the docs like:

--aac-is-sbr
--aac-is-sbr 0
and
--engage old_aac_codecid (altho it says this is an illegal hack?)

it always just hangs with the process maxing out. have to end task it. i've searched for this here but no results for 'aac' or the err message i quoted.

is this something i'm doing wrong or something with mkvmerge?

buzzqw
7th April 2006, 15:24
i know that isn't your perfect answer

but i resolved the "dilemma" by muxing aac audio into mp4 audio file (mp4box) and then adding this mp4 into matroska

quick&dirty

BHH

tomos
7th April 2006, 15:42
ah ok, so just add the audio alone (not audio and video) with that?

sweet, will give that a go - thanks :D

tomos
7th April 2006, 17:46
just to add, that worked. thanks dude :D

buzzqw
7th April 2006, 19:39
of course... after muxing acc into mp4 open mmg.exe then add video AND audio.MP4 :D

glad to help!
BHH

foxyshadis
7th April 2006, 21:40
It's not really quick and dirty, it's that raw aac isn't really supported by mkvmerge, iirc. It has to be mpeg-4 aac. I may be wrong though.

issa
8th April 2006, 04:41
Latest CVS/SVN msvc unicode build,

URL: http://rapidshare.de/files/17462847/mktoolnix-1.6.5-msvc-unicode-20060408.7z.html

Mosu
8th April 2006, 09:25
No, raw AAC IS fully supported. There's always a warning message if "--aac-is-sbr..." is not used because that fact cannot be concluded from the raw AAC headers. But that's just that, a warning.

But this warning does not have anything to do with mkvmerge hanging at the end of the muxing process. If it is hanging then that's a bug somewhere. Please try muxing only the audio file and, in another run, only the video. If mkvmerge hangs on either runs then I'd like to ask you to upload the offending file to my FTP server (see signature).

Thanks.

tomos
8th April 2006, 12:44
just tried the audio by itself with "--aac-is-sbr 0" etc and it hangs. the mkvmerge process runs @ 99% CPU utiliz.. and if i end task that, then i can get into the GUI to copy and paste the err (guessing mmg.exe is the actual GUI)

i can upload the aac file but it is 120meg. i have no idea how to split one of these files

Mosu
8th April 2006, 22:03
If you're willing to upload it then please do so -- I definitely have the space and bandwidth available.

tomos
8th April 2006, 22:15
nevermind, i'll do it now :)

tomos
8th April 2006, 23:04
all done. hope that aac file helps.

p.s. called it mkvmerge freezing.acc :p

Elic
12th April 2006, 22:50
When I began ripping I made few TV-rips and coded audiotrack with Windows Media Audio (and AVI as container of course :) ). Now, I want to remux these rips into matroska (mainly because I like ordered chapters and subtitles). I tried mkvtoolnix and discovered that it doesn't support WMA at all. How can I mux matroska with WMA audio track, or is this trick possible with other tools? Or, are there any plans about supporting WMAs by mkvtoolnix?

Koti
12th April 2006, 22:59
I am pretty sure gabest mkv muxer and haali's muxer accept wma with no issues . Then you can open the mkv with mkvtoolnix and add chapters / descriptions

edit:
muxed a vp7 .avi with .wma audio using gabests muxer in graphedit. Opened the resulting file in mkvtoolnix and added titles and chapters.
vp7 wma chaptered .mkv (http://www.megaupload.com/?d=3WH0PQ3Y) 1,879 kb sample

Isochroma
12th April 2006, 23:51
mkvtoolnix does not accept either WMA or WMV for input. I believe Mr. Bunkus left them out for a particular reason - he does not want to support or encourage monopolistic media formats.

Your best bet would be to use the Solveig ASF muxer, graphedit, etc. Perhaps even better (and simpler) just use directshowsource() to decode the audio and re-encode to mp3, flac, ac3, etc.

Egh
13th April 2006, 01:27
I tried mkvtoolnix and discovered that it doesn't support WMA at all. How can I mux matroska with WMA audio track, or is this trick possible with other tools?

Haali matroska muxer in graphedit for instance. That's probably best option if you don't want to reencode the audio.

Liisachan
13th April 2006, 02:37
Gabest's muxer on Graphedit works too for wma--even wmv.

NOTE: In the past, I experienced that mkvmerge didn't accept such an MKV created on Graphedit. If that still happens, load your (wma).mkv on VirtualDubMod and save it losslessly without doing anything by Direct Stream Copy. Then, the resulted mkv will be accepted by mmg.

Mosu
13th April 2006, 10:39
mkvtoolnix does not accept either WMA or WMV for input. I believe Mr. Bunkus left them out for a particular reason - he does not want to support or encourage monopolistic media formats.

Well, it's not THAT simple. I'd love to support getting rid of such stuff, but Microsoft has patents on the file formats WMV and ASF and has proven in the past to come after programs which support these formats. Ok, it hasn't happended with a lot of other projects (e.g. mplayer, ffmpeg etc etc), but I'd rather not risk wasting my time on this at the moment.

Egh
13th April 2006, 17:19
Gabest's muxer on Graphedit works too for wma--even wmv.

NOTE: In the past, I experienced that mkvmerge didn't accept such an MKV created on Graphedit. If that still happens, load your (wma).mkv on VirtualDubMod and save it losslessly without doing anything by Direct Stream Copy. Then, the resulted mkv will be accepted by mmg.

if such thing happens again, report it as a bug.

IIRC that was Haali muxer bug, not mkvmerge. Now it's ok iirc.

As for wma/wmv accept in graphedit -- there's no miracle here. Cause those DS muxers do NOT accept wmv fileformat. They only accept wmv/wma streams, which are splitted e.g. by haali splitter.

The obvious problem with such workaround for mkvmerge is that it's a cross-platform application and can't rely on DirectShow filters to do the job.

Elic
13th April 2006, 21:25
:thanks: you all for help. I already tried Liisachan's technology (VDM then mmg), and it works fine. Of course I will never code audio as WMA :) - but with those rips, I was complete dummy and considered that "DivX ;)" video must be mixed with "DivX ;)" audio only... :rolleyes:

tomos
13th April 2006, 21:47
any luck having a look at my aac file? the one that caused mkvmerge to lock up?

Mosu
13th April 2006, 22:43
Yes. It contains huge gaps which in turn do not contain any AAC header. I've modified mkvmerge to not crash on such files, but I really wonder where you got this one from, or how you created it. It only contained about 7 MB of usable AAC data. Maybe it's an incomplete download from a P2P network?

tomos
13th April 2006, 22:56
it was from a japanese transport stream. it has way more than 7MB of data. it has audio for 1hr 56mins.

after following the info given previously and converting it to an mp4 file, its now working fine (muxed with mkvmerge with the accompaning avi). used the same aac as i ftp to you in fact.

the file may have bad headers but it was definetely complete tho.

Mosu
15th April 2006, 20:03
Very strange file.... I'm pretty sure that mkvmerge will never support such files. But if you can work around this by muxing to MP4 first then that's at least a possibility.

tomos
15th April 2006, 20:24
definetely weird, thankfully thats the 1st and only file like that i;ve seen :)

lexor
18th April 2006, 18:29
I see a few fixes were introduced since the original post, is the link in the first post the latest version with all the fixes?

Liisachan
18th April 2006, 20:19
1.6.5 is the newest official build as of now.
newer builds for testing are here
http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/

LeMoi
21st April 2006, 19:47
While muxing an mp4 file into an mkv, i have the following warning :
Warning: '*.video.mp4' track 1: The AVC video track is missing the 'CTTS' atom for frame timecode offsets. However, AVC/h.264 allows frames to have more than the traditional one (for P frames) or two (for B frames) references to other frames. The timecodes for such frames will be out-of-order, and the 'CTTS' atom is needed for getting the timecodes right. As it is missing the timecodes for this track might be wrong. You should watch the resulting file and make sure that it looks like you expected it to.
The mp4 has ben created with x264.exe build 504.

It's not the first time I have this warning, but before that, there were no playback error. Now, with this one, (I just uploaded the beginning of the file in your ftp), I have issues, with CoreAVC or ffdshow, the video seems to have "jerks" (I don't know if it's the right english term, but you'll see with the file [EDIT : i tried to upload in "LeMoi"'s folder, but i had no permission, so i hope you'll recognize it]). I don't have the .mp4 anymore, but if I extract the h264 raw from the file and mux it in an mp4 file with MP4Box, there are no "jerks" any more, but the video seems to be accelerated since it's complete but lasts 25m22s instead of 26m28s.

Is this a problem in the codec ? a playback problem ? a muxing problem ? Can it be fixed without the original .mp4 ? If no, how can i do so that this bug does'nt happen any more ?

Liisachan
25th April 2006, 00:47
Microsoft has patents on the file formats WMV and ASF and has proven in the past to come after programs which support these formats. Mosu, zambelli just said something interesting.
http://forum.doom9.org/showthread.php?p=819162#post819162


[Answering to my "MS is the one who told VirtualDub to stop ASF support."]
Not exactly true. That whole VDub ASF episode has been blown way out of proportion. Avery Lee can tell you himself that he never actually got a cease and desist letter from Microsoft. Whoever contacted him didn't do so on behalf of Microsoft's legal department, but Avery didn't feel like pushing the issue. I'll be the first one to tell you that ASF support in VDub would've been a cool thing to have.


Whether or not what zambelli is saying about VD is true, is not really important. Maybe zambelli is biased too. But what's important is, matroska muxing/editing tools could safely support ASF/WMA/WMV, if you'd like to...

What would you think?

Egh
25th April 2006, 01:41
Whether or not what zambelli is saying about VD is true, is not really important. Maybe zambelli is biased too. But what's important is, matroska muxing/editing tools could safely support ASF/WMA/WMV, if you'd like to...

What would you think?

That's true about VD. You can read that in Lee's blog @ virtualdub.org (try to find a date corresponding to 1.3/1.4 versions, cause asf import was removed after 1.3c version, which i still happily posses :approved: )

Another matter though is that Lee was superior, i.e. he did the ASF import in short using reverse engineering and that alone might raise concerns. I don't know if full specs for ASF were officially published at all, but they certainly hadn't been published before 1.3 vdub was released.

Summing up, you can use M$ designed way to import streams from asf/wmv i.e. thru DShow filters, but that won't work on non-windows systems.

Liisachan
28th April 2006, 14:30
@Egh: Hmm, I still wonder... RE is legal unless the target is patented, and ASF, the file format, not the codec, is not patented, right?

@Mosu:
I might have already told you this, but mkvextact refuses to convert UTF-8 to 16, one of the simplest conv. Or am I doing anything wrong here...?

These work:
mkvextract tracks SRT.mkv -c UTF-8 2:UTF-8.srt
mkvextract tracks SRT.mkv -c WINDOWS-1252 2:WINDOWS-1252.srt

These don't work, producing garbage:
mkvextract tracks SRT.mkv -c UTF-16 2:UTF-16.srt
mkvextract tracks SRT.mkv -c UTF-16LE 2:UTF-16LE.srt
mkvextract tracks SRT.mkv -c UTF-16BE 2:UTF-16BE.srt

In case you'd like to check the resulted UTF-16.srt etc: SRT.mkv and SRTs mkvextract produced are in this zip (http://ffdshow.faireal.net/tmp/mkvextract_c_utf16.zip) (6 KB)

Tyia.

Mosu
28th April 2006, 15:37
@Mosu:
I might have already told you this, but mkvextact refuses to convert UTF-8 to 16, one of the simplest conv. Or am I doing anything wrong here...?

That's true, and I don't expect that to change any time soon. Internally mkv* work with UTF-8 encoded strings. Adding proper support for conversion into UTF-16/32 would require to change almost all string handling from UTF-8 encoded multi-byte strings to wide char strings. Originally I didn't do this because of evil bugs in gcc 2.95, and now I don't because of the huge amount of work required for this.

I might support this one day with a quick work around.

Mosu
28th April 2006, 15:39
While muxing an mp4 file into an mkv, i have the following warning :

Yeah, there's nothing I can do about it, sorry. Apart from parsing the frames and re-creating the timecodes myself, which mkvmerge will most likely never be able to do. It's most likely a muxing problem on x64's end.

Mosu
28th April 2006, 15:44
Mosu, zambelli just said something interesting.
http://forum.doom9.org/showthread.php?p=819162#post819162

Yes, that definitely sounds interesting. Might even be enough to change my mind on not supporting ASF on principle. (There's still the "lack of time" issue, though)

Liisachan
28th April 2006, 17:06
Thank you Mosu. Now I kind of remember...
Yesterday while trying to explain Shirokuu how to do SRT.mkv->Hardsub.avi I needed that for him/her, since I was not sure if VSFilter liked UTF-8.
http://forum.doom9.org/showthread.php?p=820354#post820354
I did a quick test just now and current VSFilter seems to be ok with UTF-8 too. So I could have just used default, without -c, after all. Well, how about simply "Error: -c UTF-16 is not yet implemented" rather than writing a broken file?

--Anyway, here's another small thing I found today.
For instance, Video frame 12 (0-based) is at 0.5005 sec @ 24000/1001 fps.
12 * 1001 / 24000 = 0.5005

VirtualDub reports it correctly as 0:00:00.501 rounded to millisec, but when mkvmerged and then mkvinfo'ed it is reported as
| + Block (track number 1, 1 frame(s), timecode 0.500s = 00:00:00.500000000)

So I believe that it's 0.500 internally in MKV and I guess MKVmerge is calculating this order, which is more lossy.
( 1001.0 / 24000.0 ) * 12

Similary, the Frame 36, at 1.5015 sec, is reported correctly as 1.502 by VD, while it's 1.501 by Mkvmerge->Mkvinfo. And so on.

Currently I can't make any real demo where this causes any critical problem, but this seems potentially risky.
Very simply put (this example is actually not proper tho), a subber might use VD and think "ok, this frame is 1.502. I'll do frame-accurate timing" and write 00:01.502 in the sub script that has ms accuracy to specify that frame, but when muxed into mkv, that video frame would now be treated as 1.501, which could mess up the sub timing.

If the true value is 1.5015 sec and if it is rounded to millisec, then the result should be 1.502. That's what I think.

LeMoi
28th April 2006, 17:15
Yeah, there's nothing I can do about it, sorry. Apart from parsing the frames and re-creating the timecodes myself, which mkvmerge will most likely never be able to do. It's most likely a muxing problem on x64's end.
Yeah i know it's an x264 problem, i just thought mmg could fix this problem :). Anyway i know use build 502 and it's OK

issa
29th April 2006, 09:25
Rev. 3223 aka 1.7.0 msvc unicode build,

Download: RapidShare (http://rapidshare.de/files/19199277/mkvtoolnix-1.7.0-unicode-msvc.7z.html) or MegaUpload (http://rapidshare.de/files/19199277/mkvtoolnix-1.7.0-unicode-msvc.7z.html)

Note: Recompile to get bz2 support.

Mosu
29th April 2006, 11:23
Hey users and packagers,

Here's the newest release of mkvtoolnix after nearly five months of slow development. This release features a couple of bug fixes and almost no new features.

The usual links to...
...the home page:
http://www.bunkus.org/videotools/mkvtoolnix/
...the source code:
http://www.bunkus.org/videotools/mkvtoolnix/sources/mkvtoolnix-1.7.0.tar.bz2
...the Windows Unicode installer:
http://www.bunkus.org/videotools/mkvtoolnix/win32/mkvtoolnix-unicode-1.7.0-setup.exe

The other binaries will be available from my homepage and the other assorted web pages shortly.

Here's the ChangeLog since 1.6.5:

------------------------------------------------------------
2006-04-28 Moritz Bunkus <moritz@bunkus.org>
* Released v1.7.0.
* mkvmerge: enhancement: Added support for MIME type detection via libmagic (patch by Robert Millan with heavy modifications by myself).

2006-04-07 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: Theora headers were not handled correctly.

2006-04-03 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: The WavPack reader was broken on 64bit systems (e.g. AMD64).

2006-03-17 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: The Theora timecode handling was broken, and Ogg/Theora files were not identified correctly (they showed up as "unknown" in mmg).

2006-02-27 Moritz Bunkus <moritz@bunkus.org>
* mmg: enhancement: The 'adjust timecodes' function accepts timecodes like 'XXXXXunit' with 'unit' being 'ms', 'us', 'ns' or 's'.
* mkvmerge: enhancement: mkvmerge will no longer refuse to concatenate files with differing Codec Private contents and only issue a warning in such cases.
* mkvmerge: bug fix: Quicktime/MP4 reader: Added support for version 1 media headers ('mdhd' atom) with 64bit fields. Fixed the duration of the last packet passed downstream. Fixed overflow issues during re-scaling from the Quicktime/MP4's time scale to nano seconds used by mkvmerge.

2006-01-18 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: Muxing wasn't working Windows 9x/ME because mkvmerge was trying to use Unicode file access functions when determining which directories to create. Fixes Anthill bug #177.

2006-01-17 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: new feature: Added support for the "Delay:" feature and for negative timecodes in VobSub IDX files.

2005-12-14 Moritz Bunkus <moritz@bunkus.org>
* mmg: new feature: If mmg is set to automatically fill in the output file name then it will clear the output file name once all input files have been removed.

2005-12-12 Moritz Bunkus <moritz@bunkus.org>
* mmg: bug fix: Fixed a crash that occured if the user removed an attachment and clicked somewhere in the empty space in the attachment list. Occured only on Windows.

2005-12-10 Moritz Bunkus <moritz@bunkus.org>
* mmg: bug fix: Re-added Chinese to the list of popular languages (those are listed first in the language drop down boxes).

2005-12-08 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: The last change to the ISO 639 language handling broke the VobSub reader so that it reported the wrong language codes. This also caused mmg to not display the correct language after adding a VobSub file.
------------------------------------------------------------

Have fun :)

tomos
29th April 2006, 11:48
thanks :D

klinika
29th April 2006, 15:14
Most excellent Mosu :D I don't know if this has been addressed before, but there remains one minor bug in mmg: the aspect ratio resets when you click on the video track and some other track and repeat a few times. Can anyone reproduce?

Egh
29th April 2006, 16:59
Pitty you didn't wait for some bugreports on the last /pre/ version :P

Here's an interesting though minor bug in mmg:

Put a cursor in "Global" section in the box "..after the timecodes". (enable splitting first, of course) then press Ctrl+N. Of course, it becomes all disabled (including "Enable splitting" checkbox). Enable it again -- you'll see TWO selections on the radiobuttons in this section, "after this size" and "..after the timecodes", and the latter will be disabled :) You can now switch selections between those boxes but "..after the timecodes" box remains disabled despite being chosen. You can click on a "..after a duration" box first and then "unlock" timecodes editbox.

That was a minor but funny bug.

Now the bad news (i discovered that only yesterday with april prerelease build).


Here's the ChangeLog since 1.6.5:

------------------------------------------------------------

2006-04-03 Moritz Bunkus <moritz@bunkus.org>
* mkvmerge: bug fix: The WavPack reader was broken on 64bit systems (e.g. AMD64).
------------------------------------------------------------


Are you sure this bugfix didn't b0rk wav import on 32bit systems? :O

MMG.exe now can't import a simplistic wav which is even stereo only and PCM16 ;) On attempt to import it says " Multiplexer failed to initialize: wav_reader no data chunk was found". Needless to say that the file is played flawlessly by winamp and recognized by windows standard programs.

Liisachan
29th April 2006, 18:03
WavPack is a lossy/lossless dual audio codec like OptimFROG. Not related to ".wav" file. I can't reproduce that WAV pb either.


G:\>mkvmerge glider.wav -o test.mka
mkvmerge v1.7.0 ('What Do You Take Me For') built on Apr 28 2006 17:19:57
'glider.wav': Using the WAV demultiplexer.
'glider.wav' track 0: Using the PCM output module.
The file 'test.mka' has been opened for writing.
progress: 100%
The cue entries (the index) are being written...
Muxing took 1 second.


Didn't you "save wav" from VDM?


G:\>mkvmerge vdm.wav -o test2.mka
mkvmerge v1.7.0 ('What Do You Take Me For') built on Apr 28 2006 17:19:57

Error: The demultiplexer for the file 'vdm.wav' failed to initialize:
wav_reader: No data chunk was found.

issa
29th April 2006, 18:33
Pitty you didn't wait for some bugreports on the last /pre/ version :P

Here's an interesting though minor bug in mmg:

Put a cursor in "Global" section in the box "..after the timecodes". (enable splitting first, of course) then press Ctrl+N. Of course, it becomes all disabled (including "Enable splitting" checkbox). Enable it again -- you'll see TWO selections on the radiobuttons in this section, "after this size" and "..after the timecodes", and the latter will be disabled :) You can now switch selections between those boxes but "..after the timecodes" box remains disabled despite being chosen. You can click on a "..after a duration" box first and then "unlock" timecodes editbox.

That was a minor but funny bug.



I assume you were trying the latest version (1.7.0). Would you like to try my build to see if the bug still exist? Since I cannot reproduce the bug you said.

Egh
29th April 2006, 18:45
Didn't you "save wav" from VDM?



No. I used graphedit (i.e. ffdshow audio to decode and wavdest.ax filter to convert it into wav format).

I didn't say it happens with all wav files, but e.g. for the current project I have 10 wavs 25 min long each and all transcoded from AAC into wav in the above described way :P

These wavs are played not only by winamp, but even by windows standard programs so I think this particular format fully complies with M$. But mkvmerge doesn't accept it, so I think that's some kind of bug in the import.

The error, btw, happens in mmg on drag&drop of the audio file already, so that's not only mkvmerge problem, I guess.

P.S. the problem, of course, was first detected in the april /pre/ builds of mkvtoolnix, so that's not specifically 1.7.0 problem.

thoralf
30th April 2006, 09:11
hi mosu,

iirc, mkvmerge (the gui) had the ability to extract the language setting from a stream's name a while ago: loading an ogg with a filename like "movietitle track x espanol.ogg" caused the language for this track to be set to "spa (Castilian)". I quite liked this feature (didn't it work for vobsubs as well?), it seems to be gone in recent versions ...
Another bug, also language-related: if you loaded vobsubs from a idx file with more than one stream in it in 1.6.5, setting the language of the eg. second stream caused the language setting of the first one to be changed as well. I don't know if this applies to 1.7.0 as well, as I don't have a vobsub to test around here atm.

keep up the good work & thanks a million times,
thoralf.

Liisachan
30th April 2006, 09:39
@Egh
i can reproduce your pb here, but the same pb in 1.6.0 so not enbugged in 1.7.0.

Workaround: open your WavDest out.wav with your audio editor, and resave it as Windows PCM (ofcos this is lossless and very quick)

"AAC" is not related: pb is in WavDest->File Writer part, as the same pb can be reproduced for MP3->(wavdest)->Wav.
Mosu might want to check this thing...

http://ffdshow.faireal.net/tmp/wavdest.png


G:\ttest>mkvmerge WaveDest_Out.wav -o NOOO.mka
mkvmerge v1.6.0 ('Ist das so') built on Oct 14 2005 16:39:51

Error: The demultiplexer for the file 'WaveDest_Out.wav' failed to initialize:
wav_reader: No data chunk was found.

G:\ttest>mkvmerge Resaved_as_WinPCM.wav -o YEEESS.mka
mkvmerge v1.6.0 ('Ist das so') built on Oct 14 2005 16:39:51
'Resaved_as_WinPCM.wav': Using the WAV demultiplexer.
'Resaved_as_WinPCM.wav' track 0: Using the PCM output module.
The file 'YEEESS.mka' has been opened for writing.
progress: 100%
The cue entries (the index) are being written...
Muxing took 0 seconds.


WaveDest_Out.wav (http://ffdshow.faireal.net/tmp/WaveDest_Out.wav)
784KB

Resaved_as_WinPCM.wav (http://ffdshow.faireal.net/tmp/Resaved_as_WinPCM.wav)
784KB

EDIT: I meant to call it WavDest_Out.wav but happened to name it WaveDest_Out.wav with extra e.

Booji Boy
4th May 2006, 22:56
@Mosu/Mods: Wouldn't it be a good idea to split this thread into two and so making a fresh new one for mkvmerge 1.7.x? This one got quite long already.

@Mosu: Will mmg someday support displaying and re-editing the attachments and chapters when importing mkvs? That would be handy. Although they are taken over by mkvmerge, they are not shown in the GUI and therefore not editable from within it.

Mosu
5th May 2006, 12:26
@Mosu/Mods: Wouldn't it be a good idea to split this thread into two and so making a fresh new one for mkvmerge 1.7.x? This one got quite long already.

I usually create a new thread once in a while, but I don't want to spam the whole board with "new mkvtoolnix release!!!!" threads. Ok, I haven't released as many versions during the past few months like I did two years ago, but still...

@Mosu: Will mmg someday support displaying and re-editing the attachments and chapters when importing mkvs? That would be handy. Although they are taken over by mkvmerge, they are not shown in the GUI and therefore not editable from within it.

While I agree that this would indeed be useful and easier to work with I doubt that I'll find the time to implement it at the moment. Sorry.

Tima
17th May 2006, 00:50
An old problem reappears:

---------------------------
mkvmerge GUI: error
---------------------------
The stretch setting for track nr. 0 in file 'E:\DVD\Pr_King_Kong\project T02 3_2ch 384Kbps DELAY 0ms.rus.ac3' is invalid.
---------------------------
ОК
---------------------------


"mkvmerge" -o "E:\DVD\Pr_King_Kong\King Kong.mkv" --priority lower --language 1:eng --default-track 1 -d 1 -A -S E:\DVD\Pr_King_Kong\project.mkv --sync 0:0,1001/960 --default-track 0 -a 0 -D -S "E:\DVD\Pr_King_Kong\project T02 3_2ch 384Kbps DELAY 0ms.rus.ac3" -a 0 -D -S E:\DVD\Pr_King_Kong\project.audio.eng.ogg --language 0:eng --sync 0:0,1001/960 --default-track 0 --compression 0:zlib --language 1:rus --sync 1:0,1001/960 -s 0,1 -D -A E:\DVD\Pr_King_Kong\project.subs.idx --track-order 0:1,1:0,2:0,3:0,3:1 --title "King Kong" --split size:797 --split-max-files 3 --link
when executing commandline manually, everything is running ok.. but the resulting video doesn't play properly in MPC (audio is ok). In VLC it doesn't play at all..

Ron70
17th May 2006, 23:53
I have been doing some experimenting with converting some of my HD Transport stream files to mkv. For the most part I like the results. Fast accurate seeks, FF and Rew actually work and smother playback. The only problem has to do with the 1088 encode for mod 16 and 1080 display. The transport streams display correctly but the mkv has a grey bar at the bottom. I have looked through mkvmerge and tried to find something in the online mkvtool documentation that fixes this problem without any luck.

Does anyone have any experience with HD MPEG2 or an idea of what I might try?

Edit:
I am using Zoomplayer: Haali Media Splitter - nVidia Decoders

Isochroma
18th May 2006, 00:32
Change your decoder. Unfortunately, there are few other mpeg-2 decoders that can offer the features of Nvidia's. Personally, I both recommend and use re-encoding. MPEG-4 ASP, aka divx 6.22 with quantizer of 1.

Playback is about same CPU, because MPEG-4 decoders are much better optimized than most MPEG-2 ones. Size is about the same. If you have a slow CPU, use WMV2 via ffdshow vfw encoder.

I mux the mpeg-4 in native mode.

MeteorRain
19th May 2006, 03:04
mosu:
can you add support for auto fetching delay info by scan 'DELAY %dms' from an AC3 audio file?

kurt
19th May 2006, 07:11
Hi mosu,

an option to use simple block by default would be great :)

foxyshadis
19th May 2006, 07:56
Since it's feature request hour: :p
* Can the various file open folders be changed to default to wherever the last dragged-in file was?
* The split-parsing doesn't seem to use the same rules you put in for chapter points a while back. Can it?

tomos
19th May 2006, 20:54
have an error message that i cant find anywhere

i'm trying to mux an avi (avc in vfw) with an aac audio track. this works fine normally, but this time i get an error i cant get around


Warning: Quicktime/MP4 reader: The AAC track 1 is missing the esds atom/the decoder config. Skipping this track.

Warning: 'F:\audio.mp4': No tracks will be copied from this file. This usually indicates a mistake in the command line.

anyone seen this before?

Isochroma
20th May 2006, 00:34
I've been muxing some video files with .ass subtitles, and noticed that while attached truetype font files play back fine in MPC, .PFB/.PFM PostScript Type 1 files won't show at all - font substitution occurs. Is this a bug in mkvmerge, or the player?

Liisachan
20th May 2006, 01:39
last time i checked, it was like This will only work if you set the correct mime type for the FONTS when muxing them with mkvmerge/mmg, it is

application/x-truetype-font
http://forum.doom9.org/showthread.php?s=&threadid=72086

mightve been changed already tho

Isochroma
20th May 2006, 02:03
I tried setting the MIME types for the files to both application/x-truetype-font and application/postscript; neither one worked.

So instead I grabbed this handy app called TransType that converts all font types.

Liisachan
20th May 2006, 05:52
I did a quick search and...
(1) Gabest's splitter calls InstallFont (http://svn.sourceforge.net/viewcvs.cgi/guliverkli/trunk/guliverkli/src/filters/parser/matroskasplitter/MatroskaSplitter.cpp?view=annotate&sortby=date#l664) only if mime is "application/x-truetype-font"
(2) PostScript Type 1 fonts (.pfb + .pfm) could be installed too, on Windows 2000/XP (http://store.adobe.com/type/browser/fontinstall/instructions_english.html), but not on Windows 98 (http://support.microsoft.com/kb/q188409/). So generally speaking, .pfb + .pfm cannot be supported.

So, while it might be possible to handle PostScript Type 1 transparently on newer Windows, it's rather safer to embed it as TrueType, if the font format conversion is not difficult (is it?)

Isochroma
20th May 2006, 17:33
The format conversion is easy as pie; and the quality is visually lossless. So TTF is the format, and thanking you for your help, I'll conclude this sub-subtopic so you guys can get back to the important work!

Egh
21st May 2006, 02:12
Strange :LOL:

Those type1 worked nicely recently with 1.7.0. MIME type application/x-font was used.

Of course I have WindowsXP thus proobably it works only on relatively recent OSes only.

Liisachan
21st May 2006, 03:06
perhaps Haali's filter can handle it. I checked sourfecorge (gabest) only.

sigma_sigma
22nd May 2006, 13:49
I have a question if it's possible. A used nero recode 2 wich is in Nero.Premium.Edition.v7.2.0.3 package to encode a vob file into mp4. After that, with mkvtoolnix v 1.7.0, I created a mkv file with subtitle included. When I play the movie with gabest media player classic, haali media splitter and vsfilter started automaticly, but I have no subtitle on screen, I don't understand why. Another mkv files made by me with x264 with subtitle included work great, but this one no. WHY, Please help!
Thanks in advance!

Later edit: was because my processor wich is slow.... mkvtoolnix v 1.7.0, is just fine....

LeMoi
23rd May 2006, 13:17
What version of vsfilter do you have ?

sigma_sigma
23rd May 2006, 14:32
that wich is included in Matroska_Pack_Full_v1.1.2.exe (v2.36)

Kurtnoise
23rd May 2006, 20:50
Are you sure that subtitles are there ? Did you have some sub entries in the filters ?

edit: blah...didn't seen your edit.

Tima
25th May 2006, 15:32
So what about this bug?

http://forum.doom9.org/showthread.php?p=828559#post828559

Avish
25th May 2006, 17:06
Why don't someone changes the thread title as the latest version is 1.7.0. :)

Marsu42
25th May 2006, 22:01
When trying to mux an ogg file, mkvmerge (v1.7.0) crashes w/ an unknown software exception ... is it just me, a known problem or a current bug?

Liisachan
26th May 2006, 02:36
You mean Ogg Vorbis? If every vorbis lets mkvmerge crash, I bet it's your problem. If only a specific file causes the problem, there will be other possibilities (if you uploaded the file in question, I'd test to see if I can reproduce the pb)

both Ogg Vorbis and Ogg Theora work fine for me anyway...

Marsu42
26th May 2006, 13:02
avimux_gui works ok with the same vorbis files. The files are rather large, so it would be overkill to upload it somewhere just to confirm the problem. I guess I will try some other .ogg files again and - if I cannot come up with a solution myself - ask again with a smaller sample. Thanks so far!

Skelsgard
29th May 2006, 01:05
How come MKVMerge doesn´t inport RAW 264 streams? Is it easier to import it thru MP4 container than raw or st like that?

Mosu
29th May 2006, 08:10
How come MKVMerge doesn´t inport RAW 264 streams? Is it easier to import it thru MP4 container than raw or st like that?

Yes, it is.

Avish
29th May 2006, 15:26
Hi Guys,

Please take a look http://img530.imageshack.us/my.php?image=indi2ls.jpg

& please tell me what are these Edition 1, Edition 2, Edition 3? & If I want to keep only the latest edition, how can I get rid of the other two?

& Incase u wanna know, I used MKVToolnix 1.6.5 for this file.

About the chapters file, It's a txt file which contains data like this:
CHAPTER01=00:00:00.000
CHAPTER01NAME=Chapter 1: Utah, 1912
CHAPTER02=00:04:21.011
CHAPTER02NAME=Chapter 2: The Pursuit

Egh
29th May 2006, 15:35
Hi Guys,


& please tell me what are these Edition 1, Edition 2, Edition 3? & If I want to keep only the latest edition, how can I get rid of the other two?


What chapters file did you use for that? :)

MatMaul
30th May 2006, 09:26
hello !
I have actually a request with the last mkvmerge.
If I don't select a track as default track, mkvmerge sets the default tag on the first track : I think it's not good for subtitles : if I don't select a default track, I think mkvmerge must no set default track and the player or the splitter must do not active subtitles by default (option "no subtitles" in haali splitter).

thanks !

StoraX
30th May 2006, 09:42
Thanx !

Liisachan
30th May 2006, 09:55
I think that's a FAR (Frequently Asked Request), but it's not a good idea to believe a decoder/player too much. Because there are many different playres, and there's no telling how one might react when no sub track has the def flag.

I would do what I could do easily when muxing: Just mux an empty srt (or something similar) as the first sub track, with the default flag, and any player will react totally the same way.
That's not elegant, but the most reliable solution. On the other hand, even if Mosu makes the change as you suggested, some of the players out there might not even check the default flag at all... Just my 2 cents...

Mosu
1st June 2006, 13:21
can you add support for auto fetching delay info by scan 'DELAY %dms' from an AC3 audio file?

and

an option to use simple block by default would be great

and

Can the various file open folders be changed to default to wherever the last dragged-in file was?

Have fun with:

http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.7.0-build20060601-1.rar

MacAddict
2nd June 2006, 05:23
Did the SSE2 builds prove not to be worth the extra effort?

foxyshadis
2nd June 2006, 06:31
What's the point of a processor optimized build of something that's entirely disk-speed-bound? I've never seen it go above 10% cpu, and usually it hovers around 2%.

btw thanks, Mosu.

Mosu
2nd June 2006, 08:46
Did the SSE2 builds prove not to be worth the extra effort?

Well, Issa always did those, and (s)he did not consult me. So I can't really comment :)

Anyway, what foxyshadis says is true. mkvmerge is completely bound by disk and memory I/O speed, not by processing power. It could use a lot of improvement on the disk I/O part (meaning proper caching, maybe multi-threaded), but there's almost nothing the compiler can speed up by using special processor optimazations.

Avish
2nd June 2006, 09:09
Hi Mosu,

U seems to be the creator of mkvtoolnix, so please tell me how can I get rid of these Edition 2 & 3? [please check the screenshot If u want] http://img530.imageshack.us/my.php?image=indi2ls.jpg

I want to keep only one of 3, only the latest one.

Thanks.

Mosu
2nd June 2006, 10:36
Avish: Which kind of files are you remuxing? (What are your source files etc etc) Can you "load" chapters from the MKV file in mmg's chapter editor and send me a screenshot of it?

Avish
2nd June 2006, 12:52
Avish: Which kind of files are you remuxing? (What are your source files etc etc) Can you "load" chapters from the MKV file in mmg's chapter editor and send me a screenshot of it?Sure. Sorces are x264 into mkv, encoded by meGUI + the original ac3.
I used Chapter-X-tractor, chosen preset was OGG & saved it as a txt file.

sterlina
3rd June 2006, 19:12
=====
edit 2: don't take care about this post, it's my fault (read next 2 posts!!) :p
=====




MISSING

===
edit: btw: I'm not sure I have to report it here, if it is the wrong place just excuse the post ;)
===

it seems croatian language is missing from mkvtoolnix

ISO 639-2 code:
bibliographic (from english name): scr
terminological (from language):hrv


links:
http://en.wikipedia.org/wiki/Croatian_language
http://en.wikipedia.org/wiki/ISO_639-2
http://en.wikipedia.org/wiki/List_of_ISO_639_codes

Liisachan
4th June 2006, 01:46
G:\>mkvmerge -o hrv.mka --language 0:hrv glider.wav
mkvmerge v1.7.0 ('What Do You Take Me For') built on Jun 1 2006 14:01:57
'glider.wav': Using the WAV demultiplexer.
'glider.wav' track 0: Using the PCM output module.
The file 'hrv.mka' has been opened for writing.
progress: 100%
The cue entries (the index) are being written...
Muxing took 0 seconds.

G:\>mkvinfo hrv.mka
+ EBML head
...
| + Language: scr


http://ffdshow.faireal.net/tmp/scr_hrv.png

sterlina
4th June 2006, 15:05
whoa! maybe I have to wear glasses :cool: thanks Liisachan

Skelsgard
4th June 2006, 20:19
http://ffdshow.faireal.net/tmp/scr_hrv.png
Which´s program is this image from? It looks like a really good info tool.

LeMoi
4th June 2006, 20:36
Looks like matroskaprop :)
http://www.jory.info/mambo45/index.php?option=com_remository&Itemid=35&func=fileinfo&filecatid=27&parent=folder

Skelsgard
4th June 2006, 21:45
Yes, it is. Thanx, LeMoi. It´s a really cool little app.

Tima
6th June 2006, 06:58
Sorry for repeating this again, but this bug is really annoying. :)

An old problem reappears:

---------------------------
mkvmerge GUI: error
---------------------------
The stretch setting for track nr. 0 in file 'E:\DVD\Pr_King_Kong\project T02 3_2ch 384Kbps DELAY 0ms.rus.ac3' is invalid.
---------------------------
ОК
---------------------------


"mkvmerge" -o "E:\DVD\Pr_King_Kong\King Kong.mkv" --priority lower --language 1:eng --default-track 1 -d 1 -A -S E:\DVD\Pr_King_Kong\project.mkv --sync 0:0,1001/960 --default-track 0 -a 0 -D -S "E:\DVD\Pr_King_Kong\project T02 3_2ch 384Kbps DELAY 0ms.rus.ac3" -a 0 -D -S E:\DVD\Pr_King_Kong\project.audio.eng.ogg --language 0:eng --sync 0:0,1001/960 --default-track 0 --compression 0:zlib --language 1:rus --sync 1:0,1001/960 -s 0,1 -D -A E:\DVD\Pr_King_Kong\project.subs.idx --track-order 0:1,1:0,2:0,3:0,3:1 --title "King Kong" --split size:797 --split-max-files 3 --link
when executing commandline manually, everything is running ok..

Haali
6th June 2006, 17:23
I don't think you can stretch ac3 audio without reencoding.

Marsu42
7th June 2006, 11:35
When run from the command line, mmg creates "jobs" directories all over the place (i.e. in the current directory). It would be nice if this directory would only appear in the folder mmg.exe is in.

MeteorRain
8th June 2006, 07:13
can you add support for auto fetching delay info by scan 'DELAY %dms' from an AC3 audio file?
Have fun with:
http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.7.0-build20060601-1.rar
well, in fact i just patched it myself before seeing your reply and just about to post the patch.... ^ ^|||

here's my patch code against mmg 1.70:787c787
< wxString name, command, id, type, exact, video_track_name, opt_file_name, delay;
---
> wxString name, command, id, type, exact, video_track_name, opt_file_name;
794d793
< int delaypos;
1029,1036c1028
< if (file.container == FILE_TYPE_AC3 && (delaypos = name.Find("DELAY")) > 0) { // apply delay info automatically
< delaypos += 6;
< delay = name.Mid(delaypos, name.Find("ms") - delaypos);
< if(!delay.IsNumber())
< delay.Clear();
< else
< wxLogMessage(wxT("Delay '") + delay + wxT("' in AC3 file detected. Delay applied"));
< }
---
>
1053,1054d1044
< if (!append)
< t->delay = delay;

kurt
9th June 2006, 09:46
Have fun with:

http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.7.0-build20060601-1.rar
simpleblock by default works great here :)
but even if I uncheck "show mmg's debug window" it appears after starting...(nothing serious, but worth mentioning)

#2
11th June 2006, 20:24
Thanks Mosu. I'm very greatfull for this up date. I now need to demux and remux every rmvb / ac3 file I muxed with 1.6.5 (jerky play back) Can some one help me with a script to do that recursivly, demuxing to a set directory where I know there is space and then muxing back into the original dir overwriting the original mkv.. ?

kurt
11th June 2006, 20:41
when using simpleblock for muxing and after that trying to split the file, this error appears: Warning: pr_generic.cpp/generic_packetizer_c::add_packet(): timecode < last_timecode (00:00:00.040 < 00:00:00.160) for 1 of 'C:\Movies\xxx.mkv'. This should not have happened.....
the output file seems to be ok (although splitting takes a lot of time)...

my system: P4, 2ghz, 512RAM, WinXPHome

Edit: the file was created with xvid_encraw and mkv output

MeteorRain
12th June 2006, 13:14
Thanks Mosu. I'm very greatfull for this up date. I now need to demux and remux every rmvb / ac3 file I muxed with 1.6.5 (jerky play back) Can some one help me with a script to do that recursivly, demuxing to a set directory where I know there is space and then muxing back into the original dir overwriting the original mkv.. ?
open your mmg
load the mkv and rewrite the output file name
copy the command line to clipboard
write a batch file
you may take the advantage of 'for %i in (*.*) do xxx'
if you use '%i' in batch file, you should use '%%i' instead.

#2
13th June 2006, 20:39
Thanks MeteorRain... I need to demux with mkvextract first and then remux.Ohterwise I still get jerky playback.

Cheers also for the tips on batch files that's what I really need to know so that I can run a script to do that recursivly, demuxing to a set directory where I know there is space and then muxing back into the original dir.

#2
14th June 2006, 09:18
Well this is random. I thought 1.7.0 had fixed my jerky playback issues. But when I play the rmvb file in mpc with an ac3 audio file named the same it plays very well at about 60% cpu with some high freq post filtering in MPC. With tyring to play the mkv of those two streams ends up with 100% CPU and jerky play back??

Any one else have this issue? And is that a typical cpu hike just for splitting? (Latest haali splitter)

Tima
14th June 2006, 14:58
I don't think you can stretch ac3 audio without reencoding.

Hmm, but it works from commandline and the resilt is nice.. :)

thuongshoo
15th June 2006, 04:24
Hi ! I trying to encode VFR file. I want to have VFR file. I have some problems which need to solve.
I muxed a WMV file to MKV file
MPC play MKV file without trouble
I edited 1 AVS file. If I use convertfps option, MPC will can't play MKV file. Can you tell me the reason ?

Then, I didn't use convertfps option and open AVS file by Megui, ..... etc. I have MKV file with H264, timecode.txt. I mux
mkvmerge v1.7.0 ('What Do You Take Me For') built on Apr 28 2006 17:19:57
'C:\Documents and Settings\Administrator\My Documents\jangnara.mkv': Using the Matroska demultiplexer.
'E:\Jang na ra\Jang Nara - Its probably love [MV].mkv': Using the Matroska demultiplexer.
'C:\Documents and Settings\Administrator\My Documents\jangnara.mkv' track 1: Using the MPEG-4 part 10 (AVC) video output module.

Error: XML parser error at line 1 of 'C:\Documents and Settings\Administrator\My Documents\timecodes.txt': not well-formed (invalid token). Remember that special characters like &, <, > and " must be escaped in the usual HTML way: &amp; for '&', &lt; for '<', &gt; for '>' and &quot; for '"'. Aborting.


AVS file

DirectShowSource("E:\Jang na ra\Jang Nara - Its probably love [MV].mkv", fps=23.970009 , audio=false)

#TFM(mode=1,output="tfm.txt")

#TDecimate(mode=4,output="stats.txt")

TFM(mode=1)
TDecimate(mode=5,hybrid=2,dupthresh=1.0,input="stats.txt",tfmin="tfm.txt",mkvout="timecodes.txt")
#convertToYV12()

# timecode format v1
Assume 23.970009
# TDecimate v0.9.12.1 by tritical
# Mode 5 - Auto-generated mkv timecodes file
0,139,19.176007
1305,1432,19.176007
1498,1501,19.176007
1692,1695,19.176007
1701,1708,19.176007
1719,1722,19.176007
1728,1735,19.176007
1756,1763,19.176007
1799,1802,19.176007
1848,1850,14.382005
1851,1858,19.176007
1864,1879,19.176007
1885,1888,19.176007
1999,2002,19.176007
2013,2016,19.176007
2152,2155,19.176007
2201,2212,19.176007
2213,2215,14.382005
2216,2219,19.176007
2225,2228,19.176007
2239,2242,19.176007
2258,2265,19.176007
2291,2294,19.176007
2305,2308,19.176007
2314,2361,19.176007
2367,2382,19.176007
2413,2420,19.176007
2421,2423,14.382005
2429,2504,19.176007
2510,2513,19.176007
2519,2522,19.176007
2528,2535,19.176007
2546,2549,19.176007
2565,2572,19.176007
2723,2726,19.176007
3012,3043,19.176007
3169,3192,19.176007
3578,3593,19.176007
3604,3607,19.176007
3653,3660,19.176007
3791,3834,19.176007
3950,3953,19.176007
3999,4006,19.176007
4012,4023,19.176007
4029,4036,19.176007
4042,4057,19.176007
4273,4292,19.176007
4638,4641,19.176007
4762,4777,19.176007
4783,4806,19.176007
5722,5725,19.176007
5826,5953,19.176007
6049,6060,19.176007
6071,6078,19.176007
6084,6095,19.176007
6566,6569,19.176007
6605,6700,19.176007
6711,6730,19.176007
6761,6764,19.176007
6800,6839,19.176007
6845,6912,19.176007
6958,7001,19.176007
7007,7010,19.176007
7186,7193,19.176007
7539,7558,19.176007
7569,7572,19.176007
7618,7625,19.176007
7841,7852,19.176007
# vfr stats: 19.22% film 80.78% video
# vfr stats: 1645 - film 6913 - video 8558 - total
# vfr stats: longest vid section - 1165 frames
# vfr stats: # of detected vid sections - 63

foxyshadis
15th June 2006, 10:14
Did you load the timecodes correctly? It'd give an error like that if you loaded them into the tags box, I think.

Not sure what you mean by enabling convertfps.

Also, if you're decimating already decimated anime you're probably going to have smoothness problems... you might want dedup instead. What you're doing will turn:
1 1 2 2 3 3 4 4 5 5
into
1 1 2 3 3 4 5 5
when you want
1 2 3 4 5
unless this is a really screwy animation. The source being mkv 24 fps kind of points to being already decimated.

Isochroma
18th June 2006, 00:52
I made an MKV with native MPEG-4 ASP and AC3 audio. After burning it to DVD, I played it and realized that the audio was early by some amount. Using the ffdshow audio delay filter, I found that a 250ms delay corrected the sync issue.

The original MKV was muxed with a delay value of -16ms for the audio track. Now, if using the GUI I load this file and re-mux to MKV, would I use a delay value of 234ms (250-16)? What I mean is when MKVs are remuxed, does the previous muxing's delay get added to the current delay? Are they cumulative, or does it reset every time?

MeteorRain
18th June 2006, 14:20
I made an MKV with native MPEG-4 ASP and AC3 audio. After burning it to DVD, I played it and realized that the audio was early by some amount. Using the ffdshow audio delay filter, I found that a 250ms delay corrected the sync issue.

The original MKV was muxed with a delay value of -16ms for the audio track. Now, if using the GUI I load this file and re-mux to MKV, would I use a delay value of 234ms (250-16)? What I mean is when MKVs are remuxed, does the previous muxing's delay get added to the current delay? Are they cumulative, or does it reset every time?
/me doesn't know the answer

but you could find it yourself by mux a file with delay 10000ms, and remux it with delay 0ms and see if it delays 10000ms or not. ;p

Isochroma
18th June 2006, 18:26
Ah yes, that would work!

fight2win
18th June 2006, 18:33
if i encode a video (x264 with mp4 output) with clever anamorphic encoding option turned on in megui (resize to mod16), and then it is showing a dar of 22:9 in avs preview, so when i mux it in mkv container, should i enter a display aspect ration of 22:9, or just leave it blank?

Haali
18th June 2006, 20:09
mkvmerge copies AR unless you override it on command line, so you don't need to enter it the second time.

thuongshoo
25th June 2006, 11:47
Did you load the timecodes correctly? It'd give an error like that if you loaded them into the tags box, I think.

Not sure what you mean by enabling convertfps.

Also, if you're decimating already decimated anime you're probably going to have smoothness problems... you might want dedup instead. What you're doing will turn:
1 1 2 2 3 3 4 4 5 5
into
1 1 2 3 3 4 5 5
when you want
1 2 3 4 5
unless this is a really screwy animation. The source being mkv 24 fps kind of points to being already decimated.
yes ! perhaps I didn't choose timecodes correctly. :D . Thanks !

vlada
26th June 2006, 08:30
Hello,

I'd like to post 2 feature requests for MKVMerge GUI.

1) Tag editor

2) Sometimes I'm joining more MP3s into a single MKA file. It would be nice to have an option to automatically create chapters from lengths of the original files.

Currently when joining MP3s, I'm usiong CUE sheet creator (http://tmp.reharmonize.net/foobar/) for foobar2000. Then I create MKA file and again use foobar2000 to write tags. But I'm not sure, if the tags are written correctly. For example foobar2000 matroska plugin won't read chapters as track numbers.

FredThompson
7th July 2006, 20:09
I'm having touble demuxing mkv files.

Have installed mkvtoolnix 1.7.0 for Windoze and tried to use MKVE_Wizard to demux. The mkv files are parsed, I can select the streams and set the destination directory. However, there is no extraction. I see messages in the log that the extraction was started and completed but no resultant files.

What should I do to troubleshoot this? Is there something else which must be installed?

LeMoi
7th July 2006, 20:12
Go in the commandlinde tab, and copy/paste it in a stand alone cmd window

Liisachan
7th July 2006, 23:59
I've never tried gui, but is MKVE Wizard better than mkvextractgui? I have an impression that mkvextractgui is updated more frequently (at least lately)...

Egh
8th July 2006, 02:06
I have an impression that mkvextractgui is updated more frequently (at least lately)...

Yeah, "lately" meaning here last couple of weeks. The project was stuck at 1.5.5 version for nearly a year before that.

FredThompson
8th July 2006, 05:32
I've tried both GUIs, launched from the same folder as the executables. Neither works. Both give the same lack of result...result.

Just tried CLI, mkvtoolnix complains about not being able to handle V_MPEG2 codec.

Grrr...

Is there a way to get it to use Haali MatroskaSplitter?

foxyshadis
8th July 2006, 05:48
If you have an mpeg ps muxer, such as xmuxer, you can always use graphedit or maybe even their custom de/muxer. (But unregister elecard's crap as soon as you finish, or it'll kill mpeg playback performance, they're so slow.)

FredThompson
8th July 2006, 19:02
OK, I tried that but GraphEdit doesn't recognize mkv as a valid filetype. I've got the Haali splitter and mkvtoolnix loaded. What are I missing that will allow GraphEdit to recognize mkv?

tomos
9th July 2006, 10:32
does mkvmerge work with specifying an AR for divx video?

it works fine for me with AVC video but the MKV made from divx seems to ignore this AR setting

LeMoi
9th July 2006, 10:40
It's maybe a decoding problem, how do you decode divx ? With ffdshow ?

GodofaGap
9th July 2006, 13:18
OK, I tried that but GraphEdit doesn't recognize mkv as a valid filetype. I've got the Haali splitter and mkvtoolnix loaded. What are I missing that will allow GraphEdit to recognize mkv?
What do you mean? You can select 'all files (*.*)' in Graphedit.

tomos
9th July 2006, 21:54
It's maybe a decoding problem, how do you decode divx ? With ffdshow ?

yes mate. you think it might be an ffdshow prob?

thinking about it you might be right. playing back AVC video with coreavc and the speficied AR is stuck to. playing the same video with powerdvds AVC decoder and it ignores that AR.

guess its down to the decoder as you said.

MatMaul
22nd July 2006, 15:04
hello !

I have a problem :

I mux a raw xvid stream (producted by xvid_encraw) in mp4 with mp4box and I remux it in mkv with the last mkvmerge and I use ordered chapters in this mkv file :
<Chapters>
<EditionEntry>
<EditionFlagOrdered>1</EditionFlagOrdered>
<EditionFlagHidden>0</EditionFlagHidden>
<EditionFlagDefault>1</EditionFlagDefault>
<EditionUID>167572397</EditionUID>
<ChapterAtom>
<ChapterDisplay>
<ChapterString>1</ChapterString>
</ChapterDisplay>
<ChapterUID>3900675256</ChapterUID>
<ChapterTimeStart>00:00:00.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:00:30.000000000</ChapterTimeEnd>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
</ChapterAtom>
<ChapterAtom>
<ChapterDisplay>
<ChapterString>2</ChapterString>
</ChapterDisplay>
<ChapterUID>3351978163</ChapterUID>
<ChapterTimeStart>00:01:30.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:02:00.000000000</ChapterTimeEnd>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
</ChapterAtom>
<ChapterAtom>
<ChapterDisplay>
<ChapterString>3</ChapterString>
</ChapterDisplay>
<ChapterUID>1574385040</ChapterUID>
<ChapterTimeStart>00:01:00.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:01:30.000000000</ChapterTimeEnd>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
</ChapterAtom>
</EditionEntry>
</Chapters>

when the video begin the "2" chapter (so when the splitter seek to 1:30 in the video), the video freeze. The video freeze also when I seek in the "2" chapter but no problem if I want to watch (or seek in) the 1 and 3 chapters. I use mpc.

No problem with the direct mkv output of xvid_encraw BUT the produced video have big macroblock in vlc (no problem in mpc), wich don't appear if I use the chain "raw->mp4->mkv".

So how can I have a compatibility with vlc and ordered chapters ?

Can you fix the problem of the ordered chapters in mkvmerge ?

I can send to you sample if you want.

Thanks !

Kurtnoise
23rd July 2006, 08:00
hello !
Hi :D

I have a problem :

I mux a raw xvid stream (producted by xvid_encraw) in mp4 with mp4box and I remux it in mkv with the last mkvmerge and I use ordered chapters in this mkv file :
<Chapters>
<EditionEntry>
<EditionFlagOrdered>1</EditionFlagOrdered>
<EditionFlagHidden>0</EditionFlagHidden>
<EditionFlagDefault>1</EditionFlagDefault>
<EditionUID>167572397</EditionUID>
<ChapterAtom>
<ChapterDisplay>
<ChapterString>1</ChapterString>
</ChapterDisplay>
<ChapterUID>3900675256</ChapterUID>
<ChapterTimeStart>00:00:00.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:00:30.000000000</ChapterTimeEnd>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
</ChapterAtom>
<ChapterAtom>
<ChapterDisplay>
<ChapterString>2</ChapterString>
</ChapterDisplay>
<ChapterUID>3351978163</ChapterUID>
<ChapterTimeStart>00:01:30.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:02:00.000000000</ChapterTimeEnd>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
</ChapterAtom>
<ChapterAtom>
<ChapterDisplay>
<ChapterString>3</ChapterString>
</ChapterDisplay>
<ChapterUID>1574385040</ChapterUID>
<ChapterTimeStart>00:01:00.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:01:30.000000000</ChapterTimeEnd>
<ChapterFlagHidden>0</ChapterFlagHidden>
<ChapterFlagEnabled>1</ChapterFlagEnabled>
</ChapterAtom>
</EditionEntry>
</Chapters>

when the video begin the "2" chapter (so when the splitter seek to 1:30 in the video), the video freeze. The video freeze also when I seek in the "2" chapter but no problem if I want to watch (or seek in) the 1 and 3 chapters. I use mpc.

Can you fix the problem of the ordered chapters in mkvmerge ?
Question is why did you set Chapter 3 before Chapter 2 regarding timestamps ?

MatMaul
23rd July 2006, 11:13
because it's ordered chapters :D !
more informations here : http://forum.doom9.org/showthread.php?t=99489&highlight=chapters+ordered

Kurtnoise
23rd July 2006, 12:39
dooo...I completely missed this part. :o You use the Haali Splitter with MPC or Gabest's one ?

MatMaul
23rd July 2006, 12:44
the haali splitter

joseph5
23rd July 2006, 21:19
I found a bug:

Create and save a chapter file with the Chapter Editor, save it, select "New Chapters" from the menu. Then load the file you just saved and it will crash.

tritical
27th July 2006, 05:44
Hi Mosu,

I have a vfr mkv file which I ran through mkvextract to extract an avi file and v2 timecode file. The extracted avi file has 34163 frames in it. The timecode file output by mkvextract has entries for only 34133 frames. If I run the same mkv file through mkv2vfr, the extracted avi file has only 34133 frames and the timecode file that is output has entries for 34133 frames. Some looking into the avi file that mkvextract outputs shows that the extra 33 frames that are present are all null frames (there were no null frames in the original avi that was muxed). Any idea what might be causing the extra 33 null frames? I'm using mkvtoolnix 1.7 from June 15, 2006. The tc file from mkvextract exactly matches the tc file from mkv2vfr.

Haali
27th July 2006, 21:39
Afaik mkvextract uses defaultduration for avi framerate and inserts null frames in avi to match the timestamps. This is a reverse process to what mkvmerge does. Mkvmerge discards null avi frames, so you get a vfr matroska file from a 120fps avi, when mkvextracting such file null frames are inserted back.

Liisachan
27th July 2006, 23:09
Interesting.

But aren't "extra 33 null frames" too few, if the conversion is 24/30 VFR to 120? In such a frame rate conversion. the nominal number of frames including null frames should be at least 3 times (typically more like 4 times) as many as the original. That is, like 100,000 - 120,000 not 34,000+.

@tritical
Will you check the exact fps in AVI (dwRate and dwScale). It shouldn't be like 120. Perhaps mkvextract uses an avarage frame-rate, which might be weird looking like 24.018928, and if it is slighly bigger than 23.9760 or 23.97602... then there might be a few extra null frams for padding. Just a random guess =)

tritical
28th July 2006, 11:25
The dwrate/dwscale of the avi output by mkvextract are 29970000/1000000.

The original avi file that was muxed into the mkv was not a 120fps file... it was just a plain avi file (xvid codec) with 34133 frames (no null frames) and a framerate of 29.970. It and the timecode file that was used during muxing (consisted of 23.976/29.970 sections) were made via avisynth w/ tivtc + vdub. I guess what I am wondering is why the extracted avi wouldn't have the same number of frames as the one that was muxed?

What I was doing was extracting the avi and tc file from the mkv and then creating a 120 fps avi using those. The problem I ran into was that the avi file had more frames (due to the extra null frames) then there were entries in the timecode file that it output (the timecode file had entries for the same number of frames as there were in the original avi). If I used the avi that was output by mkv2vfr (which had the correct number of frames), or removed the null frames from the avi output by mkvextract (which resulted in an avi that exactly matched the one output by mkv2vfr, which exactly matched the original), everything worked fine.

Lukage
29th July 2006, 18:21
A quick question: Could someone provide a mirror? The whole bunkus site appears to be down and I was looking to try this software out! Thanks!

Liisachan
30th July 2006, 01:38
it's up for me tho. here (http://ffdshow.faireal.net/mirror/Misc%20(not%20by%20celtic_druid)/Mosu/)

Lukage
30th July 2006, 05:15
it's up for me tho. here (http://ffdshow.faireal.net/mirror/Misc%20(not%20by%20celtic_druid)/Mosu/)

Thanks!

LeMoi
30th July 2006, 10:43
http://www.bunkus.org/videotools/mkvtoolnix/win32/ seems to be back

Caroliano
30th July 2006, 20:15
I'm tring to mux an video file with an ordered charpter file created by AviMux GUI, but mmg recuse to do it. How I can mux this ordered chapter or easily create an ordered chapter like that by mmg?
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE Segment SYSTEM "matroskasegment.dtd">
<Segment>
<Chapters>
<EditionEntry>
<EditionFlagDefault>1</EditionFlagDefault>
<EditionFlagOrdered>1</EditionFlagOrdered>
<EditionUID>2722280891</EditionUID>
<ChapterAtom>
<ChapterTimeStart>00:00:00.000</ChapterTimeStart>
<ChapterUID>2791947186</ChapterUID>
<ChapterSegmentUID format="hex">81 B4 92 15 9C 36 04 DB AA 80 D5 4D 07 3A DB 46</ChapterSegmentUID>
<ChapterDisplay>
<ChapterString>Abertura</ChapterString>
<ChapterLanguage>und</ChapterLanguage>
</ChapterDisplay>
</ChapterAtom>
<ChapterAtom>
<ChapterTimeStart>00:00:00.000</ChapterTimeStart>
<ChapterTimeEnd>00:14:45.302</ChapterTimeEnd>
<ChapterUID>2021605512429988297</ChapterUID>
<ChapterSegmentUID format="hex">9E E9 A3 DF 0E B3 02 A6 A0 4A 03 E5 2E 34 35 6D</ChapterSegmentUID>
<ChapterDisplay>
<ChapterString>Episódio</ChapterString>
<ChapterLanguage>und</ChapterLanguage>
</ChapterDisplay>
</ChapterAtom>
<ChapterAtom>
<ChapterTimeStart>00:00:00.000</ChapterTimeStart>
<ChapterUID>1814493169130253259</ChapterUID>
<ChapterSegmentUID format="hex">AC AD 5A 9E 61 CA D5 9C 9F C5 60 00 FB 3F 0F 58</ChapterSegmentUID>
<ChapterDisplay>
<ChapterString>Encerramento</ChapterString>
<ChapterLanguage>und</ChapterLanguage>
</ChapterDisplay>
</ChapterAtom>
</EditionEntry>
</Chapters>
<Tags>
<Tag>
<Targets>
<EditionUID>2722280891</EditionUID>
</Targets>
</Tag>
</Tags>
</Segment>

issa
19th August 2006, 10:56
SVN r3313 MSVC unicode Build,

Download: Turboupload (http://d.turboupload.com/d/894014/mkvtoolnix-1.7-r3313-20060819-unicode-msvc.7z.html)

MacAddict
19th August 2006, 12:22
SVN r3313 doesn't like my AAC M4A files generated from BeHappy. It crashes immediately. The 1.7.0 release of course doesn't have this problem.

Egh
29th August 2006, 02:04
Since there's apparently no thread for 1.7.0, reporting here:

in last available pre build http://www.bunkus.org/videotools/mkvtoolnix/win32/pre/mkvtoolnix-unicode-1.7.0-build20060719-1.rar
assignment of MIME types in "attachments" tab is buggy.

If you have to assign MIME type manually (in my case it was .otf type for opentype fonts, wanted to assign application/x-font for those files), then if you remove any entry from the attachments list, all user assigned mime types are lost.

What's more interesting, after that you're unable to assign them at all (i.e. information about that is not saved once you move from one entry to another).

Liisachan
6th September 2006, 13:08
Ayana, the author of foo_input_matroska and other MKA related foobar2000 plug-ins, recently reported that mkvmerge didn't set SegmentInfo::Duration properly.

Apparently, when it has to do rounding, it is doing floor by lazy casting, resulting in Duration that may be too few by 1 (when the fraction is >= .5 ). Mkvextract can accidentally decode such an MKA properly as it doesn't depend on Duration, but other general apps including fb2k have got a serious problem here. That's what I heard and it could be yet another reason audiophiles are not very happy with matroska.

LeMoi
26th October 2006, 18:57
I have a problem remuxing an mkv.
Original file is 348MB, final file is 197 MB. When i mux with mmg, no error code, idem with Avi-Mux gui
http://xs308.xs.to/xs308/06434/wrong_mkv.jpg.xs.jpg (http://xs308.xs.to/xs308/06434/wrong_mkv.jpg)
As you can see, original file is 1h09m59s, but final one is 41m06. Original plays fine, but hangs at 41m06 and plays back from start, but if i go to 41m10 for example, it plays fine.
It was created with latest MeGUI, and with x264.exe ; i created mkvs with same logs and params, and everything is fine.
Is my mkv dead, or can i still fix it ?

Mosu
6th November 2006, 09:12
Hmm, mkvmerge does not have the best error recovery (read: almost none at all). Could you please upload the file to my FTP server? Maybe I'll find some time to improve error recovery a bit.