PDA

View Full Version : problems with the tags in mkv


stax76
7th August 2003, 17:14
Hi,
I have a few problems mainly with the tags
in mkv, had anybody more success?



VirtualDubMod 1.5.4.1 2066
MPC 6.4.5.9
Zoom Player 3.10
Matroska playback pack 0.5



mkv and Zoom Player:

didn't show tags for audio, subtitle were both tagged as
english but the second should be german



mkv and MPC:

didn't show audio tags, no subtitles available



ogm and Zoom Player:

no Problems



ogm and MPC:

only one audio track available, no tag, no subtitles available



VirtualDub.Open("E:\\SPEED\\Test.avs",0,0);
VirtualDub.video.SetMode(1);
VirtualDub.subset.AddRange(61496,1100);
VirtualDub.video.SetCompression(0x64697678,0,10000,0);

VirtualDub.stream[0].SetSource("E:\\SPEED\\VTS_01_1 AC3 T01 3_2ch 384Kbps DELAY -103ms.ogg",0x00000204);
VirtualDub.stream[0].AddComment(0x00010000,"","English");
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,-103);

VirtualDub.stream[1].SetSource("E:\\SPEED\\VTS_01_1 AC3 T02 3_2ch 384Kbps DELAY -104ms.ogg",0x00000204);
VirtualDub.stream[1].AddComment(0x00010000,"","German");
VirtualDub.stream[1].SetMode(0);
VirtualDub.stream[1].SetInterleave(1,500,1,0,-104);

VirtualDub.stream[2].SetSource("E:\\SPEED\\English.srt",0x00000301);
VirtualDub.stream[2].AddComment(0x00010000,"","English");

VirtualDub.stream[3].SetSource("E:\\SPEED\\German.srt",0x00000301);
VirtualDub.stream[3].AddComment(0x00010000,"","German");

VirtualDub.video.AddComment(0x00000003,"","Test");
VirtualDub.SaveMKV("E:\\SPEED\\Test.mkv");



VirtualDub.Open("E:\\SPEED\\Test.avs",0,0);
VirtualDub.video.SetMode(1);
VirtualDub.subset.AddRange(61496,1100);
VirtualDub.video.SetCompression(0x64697678,0,10000,0);

VirtualDub.stream[0].SetSource("E:\\SPEED\\VTS_01_1 AC3 T01 3_2ch 384Kbps DELAY -103ms.ogg",0x00000204);
VirtualDub.stream[0].AddComment(0x00010000,"","English");
VirtualDub.stream[0].SetMode(0);
VirtualDub.stream[0].SetInterleave(1,500,1,0,-103);

VirtualDub.stream[1].SetSource("E:\\SPEED\\VTS_01_1 AC3 T02 3_2ch 384Kbps DELAY -104ms.ogg",0x00000204);
VirtualDub.stream[1].AddComment(0x00010000,"","German");
VirtualDub.stream[1].SetMode(0);
VirtualDub.stream[1].SetInterleave(1,500,1,0,-104);

VirtualDub.stream[2].SetSource("E:\\SPEED\\English.srt",0x00000301);
VirtualDub.stream[2].AddComment(0x00010000,"","English");

VirtualDub.stream[3].SetSource("E:\\SPEED\\German.srt",0x00000301);
VirtualDub.stream[3].AddComment(0x00010000,"","German");

VirtualDub.video.AddComment(0x00000003,"","Test");
VirtualDub.SaveOGM("E:\\SPEED\\Test.ogm");




<GRAPH version="1.0">
<FILTER ID="Default_DirectSound_Device_0014" clsid="{79376820-07D0-11CF-A24D-0020AFD79767}">
<PARAM name="data" value="30003000300030003000300030003000300030003000200000000000000000000000000000000000"/>
</FILTER>
<FILTER ID="Default_DirectSound_Device" clsid="{79376820-07D0-11CF-A24D-0020AFD79767}">
<PARAM name="data" value="30003000300030003000300030003000300030003000200000000000000000000000000000000000"/>
</FILTER>
<FILTER ID="Video_Renderer" clsid="{B87BEB7B-8D29-423F-AE4D-6582C10175AC}">
<PARAM name="data" value="3000300030003000300030003000300030003000300020008801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"/>
</FILTER>
<FILTER ID="MatrixMixer_0011" clsid="{AEFA5024-215A-4FC7-97A4-1043C86FD0B8}">
</FILTER>
<FILTER ID="MatrixMixer" clsid="{AEFA5024-215A-4FC7-97A4-1043C86FD0B8}">
</FILTER>
<FILTER ID="DirectVobSub_(auto_loading_version)" clsid="{9852A670-F845-491B-9BE6-EBD841B8A613}">
</FILTER>
<FILTER ID="CoreVorbis_Audio_Decoder_0009" clsid="{0835DC4B-AA01-48C3-A42D-FD62C530A3E1}">
</FILTER>
<FILTER ID="CoreVorbis_Audio_Decoder" clsid="{0835DC4B-AA01-48C3-A42D-FD62C530A3E1}">
</FILTER>
<FILTER ID="ffdshow_MPEG_4_Video_Decoder" clsid="{04FE9017-F873-410E-871E-AB91661A4EF7}">
</FILTER>
<FILTER ID="MKV_Source_0" clsid="{0A68C3B5-9164-4A54-AFAF-995B2FF0E0D4}">
<PARAM name="src" value="E:\SPEED\Test.mkv"/>
</FILTER>
<connect direct="yes" src="MKV_Source_0" srcpin="Video 1" dest="ffdshow_MPEG_4_Video_Decoder" destpin="In"/>
<connect direct="yes" src="MKV_Source_0" srcpin="Audio 2" dest="CoreVorbis_Audio_Decoder" destpin="In"/>
<connect direct="yes" src="MKV_Source_0" srcpin="Audio 3" dest="CoreVorbis_Audio_Decoder_0009" destpin="In"/>
<connect direct="yes" src="MKV_Source_0" srcpin="Subtitle 4" dest="DirectVobSub_(auto_loading_version)" destpin="Input"/>
<connect direct="yes" src="MKV_Source_0" srcpin="Subtitle 5" dest="DirectVobSub_(auto_loading_version)" destpin="Input"/>
<connect direct="yes" src="CoreVorbis_Audio_Decoder_0009" srcpin="Out" dest="MatrixMixer_0011" destpin="In"/>
<connect direct="yes" src="MatrixMixer_0011" srcpin="Out" dest="Default_DirectSound_Device_0014" destpin="Audio Input pin (rendered)"/>
<connect direct="yes" src="CoreVorbis_Audio_Decoder" srcpin="Out" dest="MatrixMixer" destpin="In"/>
<connect direct="yes" src="MatrixMixer" srcpin="Out" dest="Default_DirectSound_Device" destpin="Audio Input pin (rendered)"/>
<connect direct="yes" src="ffdshow_MPEG_4_Video_Decoder" srcpin="Out" dest="DirectVobSub_(auto_loading_version)" destpin="In"/>
<connect direct="yes" src="DirectVobSub_(auto_loading_version)" srcpin="Out" dest="Video_Renderer" destpin="VMR Input0"/>
</GRAPH>


<GRAPH version="1.0">
<FILTER ID="Default_DirectSound_Device" clsid="{79376820-07D0-11CF-A24D-0020AFD79767}">
<PARAM name="data" value="30003000300030003000300030003000300030003000200000000000000000000000000000000000"/>
</FILTER>
<FILTER ID="Video_Renderer" clsid="{B87BEB7B-8D29-423F-AE4D-6582C10175AC}">
<PARAM name="data" value="3000300030003000300030003000300030003000300020008801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"/>
</FILTER>
<FILTER ID="MatrixMixer" clsid="{AEFA5024-215A-4FC7-97A4-1043C86FD0B8}">
</FILTER>
<FILTER ID="DirectVobSub_(auto_loading_version)" clsid="{9852A670-F845-491B-9BE6-EBD841B8A613}">
</FILTER>
<FILTER ID="Vorbis_Decoder" clsid="{02391F44-2767-4E6A-A484-9B47B506F3A4}">
<PARAM name="FloatModeFirst" value="1"/>
<PARAM name="Channels" value="2"/>
<PARAM name="SamplesPerSec" value="48000"/>
<PARAM name="OutputMode" value="1"/>
<PARAM name="PostGain" value="1"/>
</FILTER>
<FILTER ID="ffdshow_MPEG_4_Video_Decoder" clsid="{04FE9017-F873-410E-871E-AB91661A4EF7}">
</FILTER>
<FILTER ID="Ogg_Splitter" clsid="{F07E245F-5A1F-4D1E-8BFF-DC31D84A55AB}">
<PARAM name="AlwaysSearchToKeyFrame" value="1"/>
<PARAM name="AlwaysEnableAllStreams" value="0"/>
<PARAM name="ShowTrayIcon" value="1"/>
</FILTER>
<FILTER ID="OGM_Source_0" clsid="{E436EBB5-524F-11CE-9F53-0020AF0BA770}">
<PARAM name="src" value="E:\SPEED\Test.ogm"/>
</FILTER>
<connect direct="yes" src="OGM_Source_0" srcpin="Output" dest="Ogg_Splitter" destpin="In"/>
<connect direct="yes" src="Ogg_Splitter" srcpin="Video 0" dest="ffdshow_MPEG_4_Video_Decoder" destpin="In"/>
<connect direct="yes" src="Ogg_Splitter" srcpin="Audio 1" dest="Vorbis_Decoder" destpin="In"/>
<connect direct="yes" src="Ogg_Splitter" srcpin="Subtitle 65535" dest="DirectVobSub_(auto_loading_version)" destpin="Input"/>
<connect direct="yes" src="Vorbis_Decoder" srcpin="Out" dest="MatrixMixer" destpin="In"/>
<connect direct="yes" src="MatrixMixer" srcpin="Out" dest="Default_DirectSound_Device" destpin="Audio Input pin (rendered)"/>
<connect direct="yes" src="ffdshow_MPEG_4_Video_Decoder" srcpin="Out" dest="DirectVobSub_(auto_loading_version)" destpin="In"/>
<connect direct="yes" src="DirectVobSub_(auto_loading_version)" srcpin="Out" dest="Video_Renderer" destpin="VMR Input0"/>
</GRAPH>

multicone
7th August 2003, 17:42
I use TCMP RC4 with CDL and tags work very good for me ...

Suiryc
7th August 2003, 18:27
Oh yeah Matroska doesn't use 'user defined' languages. and the kind of comment you add (0x00010000) is for a 'user defined' language.

If you find it useful I can consider adding a script function thanks to which you can specify the 3 letter ISO-639-2 code of a language.
Otherwise you would have to go and see what are the indexes of languages in our code (I copy'n'pasted the list at http://lcweb.loc.gov/standards/iso639-2/englangn.html IIRC).

stax76
7th August 2003, 19:11
thanks, I'm trying to find a easy solution and report back when I have still problems

thx
Dolemite

stax76
8th August 2003, 16:52
No player showed tags for the two audio tracks of my mkv test file. Subtitles work, the tags for the subtitles show up in ZP and TCMP, MPC displays a subtitle but I can't select subtitles in MPC.

Suiryc
9th August 2003, 16:49
Today I just added a new function to use in the scripts.

VirtualDub.stream[?].SetLanguage(string ISO_Code)

Set the language of the stream. ISO_Code is the 3-letter (ANSI string, processed by the VirtualDub strCify function) ISO-639-2 (http://lcweb.loc.gov/standards/iso639-2/englangn.html) code of the language.
This function will set the language of the stream as specified (and remove any previously set 'Language' comment for this stream).
If the provided 3-letter code isn't valid, then this function does nothing.

I think it's better than trying to guess the correct comment type (>0x00010000 for a specific language) with the AddComment function :)

Will be commited to CVS, and be available in the next bugfix release.

stax76
9th August 2003, 18:18
that's nice, although DVX 3.042b released yesterday already produces the correct script, I was looking in your source and found the list with the languages there :) , does the old method still work? Unfortunately I still don't know why the tags for the audio tracks don't show up in the players, subtitle show up but not the audio tracks, no matter if I use DVX or direct VDMod

Suiryc
9th August 2003, 23:45
Originally posted by Dolemite
that's nice, although DVX 3.042b released yesterday already produces the correct script, I was looking in your source and found the list with the languages there :) , does the old method still work? Unfortunately I still don't know why the tags for the audio tracks don't show up in the players, subtitle show up but not the audio tracks, no matter if I use DVX or direct VDMod
If by old method you mean using directly a same indexing than the table in VDM then yes the table hasn't changed at all since it was implemented and is unlikely to change (unless the ISO standard change it ;) which I doubt).

btw a bugfix (with the new functioną has been released (http://forum.doom9.org/showthread.php?s=&threadid=59195).