View Full Version : MatroskaMuxer Tool (using dshow filters)
Dark-Cracker
11th July 2003, 12:05
Hi,
i have made a little tool to directely use the dshow filter and connect the pins for the moment it only support .rmvb for input and create an .mkv for output. i will add support for .avi input and .mp3/.ogg/.aac/.srt/.ssa ... etc as soon i will find time to made some tests.
URL:
----
http://www.eclipsedvd.firstream.net/autodub/MatroskaMuxer.zip
how to use it :
---------------
1) be sure u have install the "real media splitter" & "matroska muxer" filters made by gabest.(http://sourceforge.net/projects/guliverkli/)
extract them in the directory : system32 for xp or system for win9X and run the command : regsvr32 the_name_filter.ax
2) extract archive and launch the file "setup.bat" (to registering the .dll)
3) start my tool select input .rmvb and output .mkv and wait.
if u could post the result of your test, or bug report, it's the first time i play with dshow filter.
PS: very nice work gabest
Bye.
unmei
11th July 2003, 12:19
very promising. i will test it for sure when i get home, i have a rmvb at hand there - but i long even more for the other inputs :D
little remark: just a simple label or pop-up saying "finished" would be a help already (my harddrives never stop (background tasks) so it's difficult to tell from the sound wether there are now 4 or 3 apps writing) But i don't think a accurate progress meter is very important, it only slows down the whole thing ;)
Dark-Cracker
11th July 2003, 12:42
i have already try to show a popup message to say the conversion is finish but once u launch the conversion u can't get the even once it's finish :( i have try to see by getting the file size but it's always 0 octet until the dshow filter was closed. i will find a solution for sure :) i have perhaps an idear to get the state :) i will try to test it as soon i have finish my jobday (hum does this word exist ? ) . in next version i will add check error and other input. stay tuned :)
Bye.
kilg0r3
11th July 2003, 13:26
You might want to look into the sources of Koepi's oggmux. It is also a directshow front end and it shows progress plus a message at the end.
Or, simply ask koepi? Ah no that'd be to easy ... :D
ChristianHJW
11th July 2003, 13:36
Thanks DC, i guess i have to download a RM file now somewhere quickly to test it, as i cant play with Producer for the time being ( too busy ) :) ....
unmei
11th July 2003, 16:23
OK, my first impression
Zoom Player:
Unable to create filters for :
[...mkv]
This may be due to to a corrupt file or missing
BS player 499
behaves as if there were no file given (stays on "stop", "other menu" not available, thus i cant see the filters it loaded. probably a "could not build filter graph"-case)
TCMP RC3
unspecified error, for both your GUI and the graph edit file
WMP 8.00.00 (XP deafault install never upgraded)
unspecified error for your GUI, but the graph edit file plays flawlessly
Mkvinfo 0.5.0
Error: Couldn't open input file H:\El-Hazard_videoTS\ep13\El-H13_rv9_test_DCMMGUI.mkv (No error).
Mkvmerge 0.5.0
H:\El-Hazard_videoTS\ep13>"c:\program files\video\mkv-toolnix\mkvmerge"
-i H:\El-Hazard_videoTS\ep13\El-H13_rv9_test_DCMMGUI.mkv
Error: could not open source file or seek properly in it (H:\El-Hazard_videoTS\e
p13\El-H13_rv9_test_DCMMGUI.mkv).
Matroska explorer extension ("prop") by jcsston 1.0
1 track
Track UID 38
Track Number 1
Track Type Global Tag Track
Codec ID V_REAL/RV40 -
Lacing Flag 0
Default Flag 0
Timecode Scale 0
Max Cache 1
Min Cache 1
Duration 0.000000
Date Fri Jul 11 16:36:02 2003[ending with a unrecognised character]
Muxing App DirectShow Matroska Muxer?[twice the unrecognised character]
Writing App N/A
VideoLan Client 0.6:
seems to recognize a "video stream 1" and starts playback (time running properly), but no video is shown, not even a video window.
MPC:
sorry cannot test - MPC is broken on this comp i will test it when i booted the other one
The test file is a full episode of El-Hazard Anime from DVD, 208 mb (ca 1500kbit/s) real video 9 VBR 1.5 mbit/s preset (.rmvb), 720x576,25fps, no audio
The same file muxed to mkv with graph edit plays in all the mentioned players (except MPC, and the behaviour with VLC is exactly the same for both files)
The "prop" info is the same for both files, except the graph edit file has a Track Type "unknown" whereas with your gui it has "Global Tag Track" . This might be a problem if all the players think it's a TAG section they might not attempt to render the content with DS at all.
the filesize is the same, on the byte exact.
i doubt "jobday" exists, but as german speaking i understand perfectly "arbeitstag" >< . dont be disapointed it did not work in any player, i guess the problem is very small, probably only the wrong Track Type and everything is sunshine :D
[Toff]
11th July 2003, 17:02
Originally posted by Dark-Cracker
i have already try to show a popup message to say the conversion is finish but once u launch the conversion u can't get the even once it's finish :(
Using the IMediaEvent interface on the graph you should receive a EC_COMPLETE event at the end of muxing.
Your application can be notified of some waiting event using IMediaEvent::SetNotifyWindows for example and then you can call IMediaEvent::GetEvent to process all events in queue.
There is also another methods using event signaling. You can get a handle on an event (IMediaEvent::GetEventHandle) that will be signaled when there are some event in queue (WaitForSingleEvent).
To have a progression bar you can use IMediaSeeking::GetDuration and IMediaSeeking::GetCurrentPosition.
Dark-Cracker
11th July 2003, 18:29
@unmei
be sure u have close my tool after the mux i think it perhaps doesn't close the file and free the dshow filter until the program has been closed.
@ Toff
thank u i will try with this :)
Bye.
Dark-Cracker
11th July 2003, 20:35
hi,
i have updated the muxer (use the same url in the first post to download it) could u try with this version ? normaly it will show u a popup once the mux is finish and stop the graph correctely.
i have used getduration and currentduration but the current duration was not updated correctely and i can't made a correct progress bar.
could u report me if this version solve your problem.
thank u toff :)
unmei
11th July 2003, 21:21
heh damn you were right, it was still open :D
but it doesnt show up in task bar, so i didn't see the proggie. i only found it with the task manager :(
Could you make it show up in the task bar ?(if it does on your comp forget it, maybe my system is crazy again)
oki all the mentioned players work.
(wmp at about 5 fps but i bet that is not a problem of your GUI. mpc and tcmp now tested too (over network, ok))
i still wonder why it uses global tag track, but that could even be a error in "prop" since all the players play these "tags"
Dark-Cracker
11th July 2003, 21:42
yes now it's visible in the task bar.
>i still wonder why it uses global tag track, but that could even be a error in "prop" since all the players play these "tags".
i have no idear about these tags.
happy to see it work fine :) i will add the different support for audio and subtitle.
PS: can we add U96 filter in matroska ? and how (the dshow filter needed :) with there name. i will try to add this option).
Bye.
jcsston
11th July 2003, 22:06
Originally posted by Dark-Cracker
>i still wonder why it uses global tag track, but that could even be a error in "prop" since all the players play these "tags".
i have no idear about these tags.
The 'Global Tag Track' does not exist in Matroska files. It is just a placeholder in my tag r/w code to handle tags that apply to all tracks.
BTW Expect a new version of the Shell Ext and CDL with lots of bugs fixed (and added ;) ).
unmei
11th July 2003, 22:37
PS: can we add U96 filter in matroska ? and how (the dshow filter needed with there name. i will try to add this option).
i dont fully understand you, but i think this is because you already got something wrong :) U96 has no own format, it is a USF editor and since USF is a very part of matroska - go on and write a USF filter and add it. You will make (hopefully not only-) me happy :D
i'm sorry my last post was a bit out of sync..i was writing it when i got interrupted for 2 hours then i just posted it without checking for new posts...
hmm yeah i will try the new version, but no hurry for now i will let the day end with a video watching session *falls into the couch*
Dark-Cracker
12th July 2003, 14:37
hi,
i have try to mux 2 .ogg file witout problem using the dshow filter but i don't have succeded when i have try with .ac3 / .mp3 / .aac (tested with Ac3filter, 3Divx filter, and MPEG-I filter) if someone have succeded to mux such input stream can explain me which filter hey have used .
Thank u :)
Any help is welcome.
Ps: the 2 audio streams are play during payback.
Bye.
Sirber
24th July 2003, 03:19
Link dead :(
Dark-Cracker
24th July 2003, 07:44
i am updating this tool :) wait a few days i will post a new link as soon this version is finish.
++
kilg0r3
24th July 2003, 07:45
Originally posted by Dark-Cracker
Ps: the 2 audio streams are play during payback. this is a known bug of the oggds filters
Animaniac
24th July 2003, 07:50
Originally posted by kilg0r3
this is a known bug of the oggds filters
I believe it's because all streams are outputted at the splitter and there is no built in switching as there is in OGM. Therefore each audio stream is rendered. I would suggest using MPC's audio switching. MMSwitch cannot handle streams with different channels/bits/frequency.
Dark-Cracker
24th July 2003, 21:41
hi ,
tool updated :)
url : read in the first post :
changelog :
support unlimited audio stream.
support unlimited subtitle stream.
support .ram , .rm , .ogg for audio input.
support .srt, .sub, .ssa for subtitle.
completely rewritte and clean the code :)
u need of course the "ogg splitter" filter (in oggDS v0.9.9.5) and "subtitle source" in guliverkly project.
Ps: some questions :
which subtitle support the subtitle source and of course matroska muxer filter.
what is the difference beetween the subtitlesource TEXT,UTF8 (used here) and other Subtitlesource (like Ascii ...) which on should i use ?
someone have succede to mux .mp3/.ac3 or .dts file using the gabest dshow filter ? if yes how and which filter have u used.
Thank u :)
Bye.
zedude
24th July 2003, 23:13
fast work :) i gave it try and it's promising !
what worked :
- video_only.rmvb + audio.rm
- video_only.rmvb + audio.rm + subs.srt
- video+audio.rmvb + subs.srt
- video+audio.rmvb
- video+audio.rmvb + audio1.rm + audio2.rm + subs.srt :)
didn't work :
- video_only.rmvb + audio1.rm + audio2.rm ( + subs.srt ) with message: 'Indice en dehors de la plage'
- discard audio was never enabled.
please, Dark-Cracker, make the opendialogs open in latest opened directory...
ChristianHJW
24th July 2003, 23:24
Originally posted by Dark-Cracker
support .srt, .sub, .ssa for subtitle.
.sub ? How that ? I thought its not supported in Gabest' subtitle source filter ?
Otherwise, great work D-C :) !
Valky
25th July 2003, 01:19
So basically with this muxer I could convert my rmvb-files to mvk and then use every ds-player to watch my rmvb-encoded files?
I couldn't get this to work..I mean fles to play. I did all you asked in the first page and tried to convert 3 different files. Tried with CrystalPlayer, Viplayer and mpc.
I also converted one divx file to mkv with vdmod and it did play well. These 3 files didn't play in mpc or in RealPlayer even after I renamed files to rmvb so your software muxed them just fine and something in files changed but no luck yet.
Using latest matroska DS for my winXP and couldn't open these files in vdmod.
ChristianHJW
25th July 2003, 10:11
Originally posted by Valky Using latest matroska DS for my winXP and couldn't open these files in vdmod.
The 'official' matroska DShow filter from www.matroska.org wont work for Real content as of yet, you need Gabest's matroskaplitter.ax from the Guliverkli page.
You also need to have RealOne installed ( for the DLLs ), and Gabest's Real wrapper filters .....
Dark-Cracker
25th July 2003, 11:46
@zedude
thank u for the bug report i will made a test to try to reproduce and fix it :)
@Christian
oups i not have tested .sub i have supposed there are supported :)
@valky i will try to made a pack with the needed filters.
Bye.
Sirber
25th July 2003, 12:02
@DC
Could you add some commandline input? Thanks! :D
Valky
25th July 2003, 12:53
@DC
That would be great. Althought I tried with those ax-files you mentioned, but I guess I need something else.
@Christian
I thought I tried with all those, but not sure about that Real Wrapper..
But after that I should be able to play mvk files with rmvb inside in every ds-player, right?
And one common question..Is it enough to have matroska DS-filter to play mvk file with divx content inside or do I still need also divx codec to watch this file?
Atamido
26th July 2003, 04:23
@Valky: The container just holds the data, you still need a CODEC (COmpressor-DECompressor) to decode it. So, yes you would still need to use either the DivX decoder or ffdshow.
Dark-Cracker
28th July 2003, 12:02
hi,
a quick update :)
URL : cf first post.
changelog :
-----------
fix problem with more than 1 .ogg stream.
add some error check.
improve speed.
add a new icon.
Ps: if u have an error post exactely the step to reproduce it.
Bye.
Valky
28th July 2003, 13:06
Seems to be working great.I almost thought that this is sooo much slower than the previous one, but the my file was ready when progress bar showed 3% :)
I did simple rmvb --> mkv conversion.
Dark-Cracker
28th July 2003, 17:10
lol yes there is still some problems with progress bar :) i think there is not always a correct refresh for the "currentduration" when u run the graph.
and my percent formula use :
round((graph.currentduration/graph.duration) * 100 )
sorry i can't do more :)
Bye.
Kaiousama
2nd August 2003, 22:20
which subtitle support the subtitle source and of course matroska muxer filter.
It would be great if you can add .ass subtitle file support for muxing :) (it's pretty the same as muxing a .ssa but the commondialog filter doesn't allow me to select .ass files ^_^)
btw: wich filter do you call to mux subtitles in mkv? (wich filter do you connect to matroska muxer as subtitle source?)
Thanks for this tool, very useful in this age of muxing problems :D
Do you plan to release sources? (i would like to give you a hand in developement, i'm trying to become confident with graph building for my subtitling sofware developement so maybe i can be useful for you too)
Dark-Cracker
2nd August 2003, 22:49
hi,
yes i will add .ass support in the commondialogbox :) but i want to be sure the gabest 's "subtitle source" filter support it (a list of supported subtitle is welcome :) ). i use the filter "subtitle source [TEXT/ UFS8]" if my memory is good :) .
yes perhaps i will release the source code (i must first clean it :) ) if u have idear for improve the subtitle part u are welcome :)
Bye.
gabest
3rd August 2003, 02:19
Use ../SSA or ../ASS if you want to have tags stored as well, with ../UTF8 it will strip everything and will only keep the text.
Valky
6th August 2003, 17:45
What does this error mean in english (or in finnish... :) ) ?
http://www.sunpoint.net/~valky/error.jpg
Dark-Cracker
6th August 2003, 19:53
it's surrely because u don't have install a dshow filter needed.
be sure u have ogg splitter filter (in oggds v0.9.9.5) and subtitle source (in the gabest sourceforge site)
Bye.
unmei
6th August 2003, 19:54
i doesnt really make sense, something like "object variable or block variable <With> not defined"
..note that With is not a french word..it should probably be the english "width" ..
Valky
6th August 2003, 21:02
I didn't use subtiles but could it be if audio length doesn't match the videos length?
Dark-Cracker
6th August 2003, 23:09
it's an error when vb try to access at an un-initialised variable.
for exemple if u made somethink like :
Dim PinOgg as PinInfo
Set PinOgg as new PinInfoSearch("Stream 0")
gGraph.connect gGraph.PinWriter PinOgg
and if PinOgg have failed u will have this error, i must normaly add somethink like :
if Not Nothing PinOgg = true then
ggraph.connect ...
endif
u will have this error if he doesn't have find a dshow filter.
do u have "Ogg Splitter" in the graphedit filter list ?
ps: the with function is used like this :
if FirstButton is a button u can use :
with firstbutton
.size=50
.label="test"
...
end with
instead of :
firstbuttin.size=50
firstbutton.label="test"
....
Ps2 : next step write a tutor for Vb lesson :)
hope my answer was a bit more clear than my previous post :)
Bye.
XmSurfer
9th April 2006, 06:55
I might be a minute or two late, but is there a tool I can use to mux matroska files using Gabest's directshow matroska muxer. The link for this tool doesn't work any more (surprise). And, anyway, it seemed to be limited in what it could use as input. The type of tool I'm looking for doesn't have to have a gui. It can be commandline. But I would like for it to use the gabest DS muxer. Anyone know of such a tool? Thanks
Audionut
9th April 2006, 08:01
http://www.videohelp.com/tools?tool=GraphEdit
XmSurfer
9th April 2006, 09:56
http://www.videohelp.com/tools?tool=GraphEdit
Funny. However, I can only blame myself. I thought it was implicit that I meant something other than graphedit. I like the way that the DSM converter included with MPC works. I was simply wondering if something similar to that or just a commandline tool that performs that same function as it does (muxing using a directshow muxer) exists for matroska since I don't use DSM. I was just a little curious.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.