From moritz at bunkus.org Tue Apr 22 00:23:10 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Tue, 22 Apr 2003 00:23:10 +0200 Subject: [matroska-devel] Re: what app is the best starting point In-Reply-To: <000101c1b092$50586a50$7124fea9@flicker> References: <000101c1b092$50586a50$7124fea9@flicker> Message-ID: <20030421222310.GF27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From steve.lhomme at free.fr Fri Apr 4 20:46:08 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Fri, 04 Apr 2003 21:46:08 +0300 Subject: [matroska-devel] Re: GCC compilation In-Reply-To: <000801c2f014$4cbcf7e0$0200a8c0@jcsston> References: <1047988469.3e7708f5e74bb@imp.free.fr> <3E770E69.1040501@matroska.org> <000801c2f014$4cbcf7e0$0200a8c0@jcsston> Message-ID: <3E8DD2F0.9090007@free.fr> It should be fixed in the latest CVS (on CoreCodec). Jory wrote: > I am also having the same trouble as bill_baroud trying to compile spyder's > mpa2mka with Dev-CPP GCC 2.95. > > The first error is: > g++.exe -c -g -DDEBUG -Wall -Wno-unknown-pragmas -DGCC2 \ > -DWRITE_EVEN_UNSET_DATA mpa2mka.cpp -o > mpa2mka.o -I"C:/Dev-Cpp/include" -I"D:/Visual Studio > Projects/matroska/libmatroska_sf/src" -pg -g3 -mwindows > In file included from D:/Visual Studio > Projects/matroska/libmatroska_sf/src/EbmlTypes.h:43, > from D:/Visual Studio > Projects/matroska/libmatroska_sf/src/IOCallback.h:39, > from D:/Visual Studio > Projects/matroska/libmatroska_sf/src/StdIOCallback.h:38, > from mpa2mka.cpp:26: > D:/Visual Studio > Projects/matroska/libmatroska_sf/src/api/c/libmatroska_t.h:106: syntax error > before `;' > > which is the following line > > 106 typedef int64_t int64; > The lines following 106 also create syntax errors. > > Any hints on which options to use compiling? http://www.matroska.org From chris at matroska.org Fri Apr 11 03:59:08 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Fri, 11 Apr 2003 03:59:08 +0200 Subject: [matroska-devel] Re: matroska : MPEG1/2 video streams muxing In-Reply-To: <3E7A1637.5070009@matroska.org> References: <3E7A1637.5070009@matroska.org> Message-ID: <3E96216C.9040604@matroska.org> Christian HJ Wiesner wrote: >Hi Siriam ! > > > http://forum.doom9.org/showthread.php?s=&postid=293677#post293677 Interesting read about MPEG2 headers ... Christian http://www.matroska.org From Paul at msn.com Tue Apr 1 08:42:42 2003 From: Paul at msn.com (Pamel) Date: Tue, 1 Apr 2003 00:42:42 -0600 Subject: [matroska-devel] MP3 Tags Message-ID: Hey, where are my MP3 ID3v2.4 tags? Pamel http://www.matroska.org From steve.lhomme at free.fr Tue Apr 1 09:55:04 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 01 Apr 2003 09:55:04 +0200 (CEST) Subject: [matroska-devel] Re: MP3 Tags In-Reply-To: References: Message-ID: <1049183704.3e8945d838535@imp.free.fr> En r?ponse ? Pamel : > Hey, where are my MP3 ID3v2.4 tags? I wanted to assign you to this task :D I added a Tracker about it on CC.org (under Feature Request). http://www.matroska.org From steve.lhomme at free.fr Tue Apr 1 15:38:58 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 01 Apr 2003 15:38:58 +0200 (CEST) Subject: [matroska-devel] CVS move Message-ID: <1049204338.3e89967229b6c@imp.free.fr> I'm calling for opinions on the move of the Sourceforge CVS for libmatroska and libebml into the CVS of CoreCodec. Is the CC CVS stable now ? Noone experienced any problem ? Is it regularly backed up ? http://www.matroska.org From jcsston at ToughGuy.net Tue Apr 1 17:20:33 2003 From: jcsston at ToughGuy.net (Jory) Date: Tue, 1 Apr 2003 09:20:33 -0600 Subject: [matroska-devel] Re: CVS move References: <1049204338.3e89967229b6c@imp.free.fr> Message-ID: <004201c2f864$76b6e170$0200a8c0@jcsston> I haven't had any problems accessing or updating the Corecodec CVS. Other than when the project page was down I couldn't access the WebCVS page. ----- Original Message ----- From: "Steve Lhomme" To: "Matroska Development" Sent: Tuesday, April 01, 2003 7:38 AM Subject: [matroska-devel] CVS move > > I'm calling for opinions on the move of the Sourceforge CVS for libmatroska and > libebml into the CVS of CoreCodec. > > Is the CC CVS stable now ? Noone experienced any problem ? Is it regularly > backed up ? > http://www.matroska.org http://www.matroska.org From chris at matroska.org Tue Apr 1 21:59:35 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Tue, 01 Apr 2003 21:59:35 +0200 Subject: [matroska-devel] matroska container sold to IBM Message-ID: <3E89EFA7.9040003@matroska.org> Hi all, i have some great news to spread today, and i am indeed extremely happy that i have the honour of doing so : The matroska project, including all source code and the main specification, by signed contract dated 31st March 2003, was sold to the International Bussiness Machine Corporation ( IBM ), New Orchard Road, Armonk, NY 10504, USA. . My thanks goes to Dan 'Metaboy' Marlin from the Corecodec team for making the initial contact, Dan, without you this would have not been possible. IBM will convert the matroska project and all libraries into a closed source format, but make the binaries of the library publically available for non-commercial usage, together with an API to be able to read/write matroska files from all applications on different OSes. An arrangement was made with all active developers to make it possible to allow a changing of the existing GPL/QPL dual licensing system. After months of hard negotiations there can be no doubt that one of the first commercial license takers of matroska will be the Matsushita Corporation, Tokyo, Japan, chosing matroska as their main container format for an upcoming proprietary blue laser DVD standard to be released by Panasonic and some of their licensees on the new standard, in an attempt to avoid the domination of the Windows Media Video 9 (TM) standard from Micorosoft (R) for next generations HDTV video. Panasonic already announced they will use a wavelet based video codec called WARP, created by the IBM video compression department around the well known codec expert Mr. Toby Hudon ( performing wavelet on 512 consecutive frames, and on every frame itself ), and to use the musepack audio compression format ( MPC ) for audio. I sincerely hope that all of you will see the big advantage for the opensource audio and video community in undertaking this step, as from now on there will be one new standard a/v container, in possession of one of the biggest computer companies of the world, but fully available for the community. Best regards from Hawaii Christian http://www.matroska.org http://www.matroska.org From Paul at msn.com Tue Apr 1 17:17:03 2003 From: Paul at msn.com (Pamel) Date: Tue, 1 Apr 2003 09:17:03 -0600 Subject: [matroska-devel] Re: matroska container sold to IBM References: <3E89EFA7.9040003@matroska.org> Message-ID: *Laughing out loud* I hope that everyone caught that it is April Fools day today. Pamel "Christian HJ Wiesner" wrote > > Hi all, > > i have some great news to spread today, and i am indeed extremely happy > that i have the honour of doing so : > > The matroska project, including all source code and the main > specification, by signed contract dated 31st March 2003, was sold to the > International Bussiness Machine Corporation ( IBM ), New Orchard Road, http://www.matroska.org From segfault at club-internet.fr Tue Apr 1 19:23:18 2003 From: segfault at club-internet.fr (Daniel Caujolle-Bert) Date: Tue, 01 Apr 2003 19:23:18 +0200 Subject: [matroska-devel] Re: [xine-user] matroska container sold to IBM In-Reply-To: <3E89EFA7.9040003@matroska.org> References: <3E89EFA7.9040003@matroska.org> Message-ID: <3E89CB06.8020600@club-internet.fr> Christian HJ Wiesner wrote: > > Hi all, > [snip annoying announce] > > Christian > http://www.matroska.org so, now, stop bother us with closed source stuffs. thanks. -- 73's de Daniel, F1RMB. -=- Daniel Caujolle-Bert -=- segfault at club-internet.fr -=- -=- http://naboo.homelinux.org -=- http://www.matroska.org From segfault at club-internet.fr Tue Apr 1 19:23:18 2003 From: segfault at club-internet.fr (Daniel Caujolle-Bert) Date: Tue, 01 Apr 2003 19:23:18 +0200 Subject: [matroska-devel] Re: [xine-user] matroska container sold to IBM In-Reply-To: <3E89EFA7.9040003@matroska.org> References: <3E89EFA7.9040003@matroska.org> Message-ID: <3E89CB06.8020600@club-internet.fr> Christian HJ Wiesner wrote: > > Hi all, > [snip annoying announce] > > Christian > http://www.matroska.org so, now, stop bother us with closed source stuffs. thanks. -- 73's de Daniel, F1RMB. -=- Daniel Caujolle-Bert -=- segfault at club-internet.fr -=- -=- http://naboo.homelinux.org -=- ------------------------------------------------------- This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for just $79/mo with 500 GB of bandwidth! No other company gives more support or power for your dedicated server http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ _______________________________________________ xine-user mailing list xine-user at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xine-user http://www.matroska.org From chris at matroska.org Tue Apr 1 21:59:35 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Tue, 01 Apr 2003 21:59:35 +0200 Subject: [matroska-devel] [xine-user] matroska container sold to IBM Message-ID: <3E89EFA7.9040003@matroska.org> Hi all, i have some great news to spread today, and i am indeed extremely happy that i have the honour of doing so : The matroska project, including all source code and the main specification, by signed contract dated 31st March 2003, was sold to the International Bussiness Machine Corporation ( IBM ), New Orchard Road, Armonk, NY 10504, USA. . My thanks goes to Dan 'Metaboy' Marlin from the Corecodec team for making the initial contact, Dan, without you this would have not been possible. IBM will convert the matroska project and all libraries into a closed source format, but make the binaries of the library publically available for non-commercial usage, together with an API to be able to read/write matroska files from all applications on different OSes. An arrangement was made with all active developers to make it possible to allow a changing of the existing GPL/QPL dual licensing system. After months of hard negotiations there can be no doubt that one of the first commercial license takers of matroska will be the Matsushita Corporation, Tokyo, Japan, chosing matroska as their main container format for an upcoming proprietary blue laser DVD standard to be released by Panasonic and some of their licensees on the new standard, in an attempt to avoid the domination of the Windows Media Video 9 (TM) standard from Micorosoft (R) for next generations HDTV video. Panasonic already announced they will use a wavelet based video codec called WARP, created by the IBM video compression department around the well known codec expert Mr. Toby Hudon ( performing wavelet on 512 consecutive frames, and on every frame itself ), and to use the musepack audio compression format ( MPC ) for audio. I sincerely hope that all of you will see the big advantage for the opensource audio and video community in undertaking this step, as from now on there will be one new standard a/v container, in possession of one of the biggest computer companies of the world, but fully available for the community. Best regards from Hawaii Christian http://www.matroska.org ------------------------------------------------------- This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for just $79/mo with 500 GB of bandwidth! No other company gives more support or power for your dedicated server http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ _______________________________________________ xine-user mailing list xine-user at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xine-user http://www.matroska.org From melanson at pcisys.net Tue Apr 1 22:05:19 2003 From: melanson at pcisys.net (Mike Melanson) Date: Tue, 1 Apr 2003 13:05:19 -0700 (MST) Subject: [matroska-devel] Re: [xine-user] matroska container sold to IBM In-Reply-To: <3E89EFA7.9040003@matroska.org> Message-ID: On Tue, 1 Apr 2003, Christian HJ Wiesner wrote: ^^^^^ > created by the IBM video compression department around the well known > codec expert Mr. Toby Hudon ( performing wavelet on 512 consecutive > frames, and on every frame itself ), and to use the musepack audio Hmm, your April Fool's joke had me up through the part about Hudon's wavelet codec. -- -Mike Melanson http://www.matroska.org From melanson at pcisys.net Tue Apr 1 22:05:19 2003 From: melanson at pcisys.net (Mike Melanson) Date: Tue, 1 Apr 2003 13:05:19 -0700 (MST) Subject: [matroska-devel] Re: [xine-user] matroska container sold to IBM In-Reply-To: <3E89EFA7.9040003@matroska.org> Message-ID: On Tue, 1 Apr 2003, Christian HJ Wiesner wrote: ^^^^^ > created by the IBM video compression department around the well known > codec expert Mr. Toby Hudon ( performing wavelet on 512 consecutive > frames, and on every frame itself ), and to use the musepack audio Hmm, your April Fool's joke had me up through the part about Hudon's wavelet codec. -- -Mike Melanson ------------------------------------------------------- This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for just $79/mo with 500 GB of bandwidth! No other company gives more support or power for your dedicated server http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ _______________________________________________ xine-user mailing list xine-user at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xine-user http://www.matroska.org From steve.lhomme at free.fr Fri Apr 4 10:03:12 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Fri, 04 Apr 2003 10:03:12 +0200 (CEST) Subject: [matroska-devel] CVS Move Message-ID: <1049443392.3e8d3c40e8ff6@imp.free.fr> It's been done yesterday but I only have time to inform you now. I've finally moved the CVS of Matroska on cvs.corecorec.org due to repeated technical problems on SourceForge. So this is now the one and only official CVS. The one on SF will not be updated (by me). The CoreCodec system works exactly the same as on SourceForge so you probably won't have any problem for the switch. The current CVS contains the changes I made during the last days including some fixes after the libebml/libmatroska split. I also removed the need for the WRITE_EVEN_UNSET_DATA flag. That means that if you add an EBML tag and you don't initialise the data you'll get an assert. That's to make sure there is no buggy EBML/Matroska files floating. So be carefull when you write your (writing) applications. The matroska-cvs ML doesn't seem to work yet even though syncmail seems to be called and executed properly. Maybe Cytoplas could have a look an what is wrong when the email is sent ? http://www.matroska.org From steve.lhomme at free.fr Fri Apr 4 10:32:05 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Fri, 04 Apr 2003 10:32:05 +0200 (CEST) Subject: [matroska-devel] Re: CVS Move In-Reply-To: <1049443392.3e8d3c40e8ff6@imp.free.fr> References: <1049443392.3e8d3c40e8ff6@imp.free.fr> Message-ID: <1049445125.3e8d43053e449@imp.free.fr> Oh, and please make sure mpa2mka is up to date. I'm not sure I add a good version on my HD. Same as for the DirectShow parser. http://www.matroska.org From spyder482 at yahoo.com Tue Apr 8 04:40:36 2003 From: spyder482 at yahoo.com (John Cannon) Date: Mon, 7 Apr 2003 21:40:36 -0500 Subject: [matroska-devel] Re: CVS Move References: <1049443392.3e8d3c40e8ff6@imp.free.fr> <1049445125.3e8d43053e449@imp.free.fr> Message-ID: I think jcsston updated it. :P Test post to old topic for forum. Spyder http://www.matroska.org From amitlimaye at gmx.co.uk Fri Apr 4 11:02:51 2003 From: amitlimaye at gmx.co.uk (amit limaye) Date: Fri, 4 Apr 2003 11:02:51 +0200 (MEST) Subject: [matroska-devel] Compilation Problems for LibMatroska Message-ID: <26288.1049446971@www41.gmx.net> Hello i tried compiling the libmatroska source code which i downloaded from the sourceforge page it gives me errors while compiling Ebmlstring. To get it compile i has to change this line in the Makefile CXXFLAGS=-g -DDEBUG -Wall -Wno-unknown-pragmas $(GCC2) -DWRITE_EVEN_UNSET_DATA to CXXFLAGS=-g -DDEBUG -Wall -Wno-unknown-pragmas -DGCC2 -DWRITE_EVEN_UNSET_DATA i had to force the DGCC2 in the compile options as the shell script failed to pick up my compiler yo be a gcc2 kind I have gcc 2.96 running on my machine after i edited the line the code compiles fine i m now searching for what we call the initialization function for the library so that i can follow the flow of logic can nebody help me here Also i visited the Ebml project on sourceforge searched for some docs on the standard did not find any ? any pointers on this or is the code the best place to look for it -SIGTERM amit -- Humanity's First sin was faith;its first virtue doubt +++ GMX - Mail, Messaging & more http://www.gmx.net +++ Bitte l?cheln! Fotogalerie online mit GMX ohne eigene Homepage! http://www.matroska.org From steve.lhomme at free.fr Fri Apr 4 20:59:43 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Fri, 04 Apr 2003 21:59:43 +0300 Subject: [matroska-devel] Re: Compilation Problems for LibMatroska In-Reply-To: <26288.1049446971@www41.gmx.net> References: <26288.1049446971@www41.gmx.net> Message-ID: <3E8DD61F.6070302@free.fr> amit limaye wrote: > Hello > i tried compiling the libmatroska source code which i downloaded from > the sourceforge page > it gives me errors while compiling Ebmlstring. > To get it compile i has to change this line in the Makefile > CXXFLAGS=-g -DDEBUG -Wall -Wno-unknown-pragmas $(GCC2) > -DWRITE_EVEN_UNSET_DATA > to > CXXFLAGS=-g -DDEBUG -Wall -Wno-unknown-pragmas -DGCC2 > -DWRITE_EVEN_UNSET_DATA > > i had to force the DGCC2 in the compile options as the shell script failed > to pick up my compiler yo be a gcc2 kind > I have gcc 2.96 running on my machine Yeah, you may have a look at the GCC version detection and add the case of GCC 2.96. It don't think it should be too hard. > after i edited the line the code compiles fine > i m now searching for what we call the initialization function for the > library so that i can follow the flow of logic can nebody help me here The best is to look at test6.cpp (writing) and test8.cpp (reading). It's not commented a lot. But that's really the way to use the library to read/write the data. > Also i visited the Ebml project on sourceforge searched for some docs on the > standard did not find any ? > any pointers on this or is the code the best place to look for it Well, the EBML site is as a bit less empty than the EBML part in the matroska specs. But I don't feel like writing more about EBML right now. If you have any questions you can ask them here or on IRC (#matroska on irc.corecodec.org). cya http://www.matroska.org From Paul at msn.com Sat Apr 5 19:24:11 2003 From: Paul at msn.com (Pamel) Date: Sat, 5 Apr 2003 11:24:11 -0600 Subject: [matroska-devel] Matroska Tags Message-ID: In our quest to compile a comprehensive list of current tags available today for different formats, here is the list of websites that we are using so far: http://www.id3.org/id3v2.4.0-frames.txt http://www.id3.org/id3v2-00.txt http://www.id3.org/id3v2.3.0.txt http://www.xiph.org/ogg/vorbis/doc/v-comment.html http://getid3.sourceforge.net/ http://kibus1.narod.ru/sof/abcavi/infotags.htm http://msdn.microsoft.com/library/en-us/wmform/htm/id3tagsupport.asp http://msdn.microsoft.com/library/en-us/storage/hh/storage/k306_1gaa.asp http://msdn.microsoft.com/library/en-us/wmplay/mmp_sdk/mediafileattributes.a sp http://msdn.microsoft.com/library/en-us/wmform/htm/attributelist.asp Some things to note about the Microsoft sites is that the documents have a lot of errors. For instance, the list of ID3v2.4 tags that the WMP9 attributes map to use some tags that don't exist anymore. The list of attributes that can be stored in a file for WMP9 isn't complete. We basically want to map every ID3v2.4 tag to a Matroska tag. Almost all Vorbis, APE, and FLAC tags should easily map to one of those ID3 tags. (I think the Vorbis "LOCATION" tag is the only one that doesn't) Most of the important WMP9 tags (known as 'Attributes') map to ID3 tags also. There are a few other ones in there (like "Location") that we will create Matroska tags for. We also want to try to make sure that the apropriate tags can be read with the WMP9 "Advanced Tag Editor". We will be using most of the mapped ID3 tags for video also as most of the fields carry relevant information. The plan so far for layout is to use the current MultiEntity element for every person/place/object. We will simply define many more values for the EntityFunction element. This will allow every Album/Artist/Performer/Director/Location/etc. to have its own Name, URL, Email, SortBy, Comments, and whatever else needs to be added. And all of this can be done without significantly increasing the number of support elements. Another MultiEntity-type element can be used for larger text documents such as unsynched lyrics, comments, summary, history, etc. Another MultiEntity-type element might be used for common data types such as dates. All other data types that aren't duplicated are going to need their own individual ID's. This WILL significantly increase the number of required elements to fully support all tags. But we will minimize this as much as possible. Formats that we are trying to support tags for: MP3 Vorbis Monkey's Audio CD-Text AVI Windows Media Player 9 Please mention any other formats that should be looked at. Pamel http://www.matroska.org From Paul at msn.com Tue Apr 8 17:14:53 2003 From: Paul at msn.com (Pamel) Date: Tue, 8 Apr 2003 10:14:53 -0500 Subject: [matroska-devel] Re: Matroska Tags References: Message-ID: Here is an initial list of all of the items that are defined in the EntityFunction element under MultiEntity. For the names, I used the ID3 and Extended RIFF Info. Album/Movie/Show title Composer Encoded by Ripped by Lyricist/Text writer Involved people list Content group description Title/songname/content description Musician credits list Original album/movie/show title Original filename Original lyricist(s)/text writer(s) Original artist(s)/performer(s) File owner/licensee Lead performer(s)/Soloist(s) Band/orchestra/accompaniment Conductor/performer refinement Interpreted, remixed, or otherwise modified by Software/Hardware and settings used for encoding Official Internet radio station Record Location Director Product Produced by Cinematographer Production Designer Edited by Costume Designer Production Studio Distributed by Commissioned by Engineer Can anyone point out some others? Remember that each of these items will have a space for name, URL, email, comments, and sort order. Are there any other elements that should be defined under MultiEntity other than those five items? Pamel http://www.matroska.org From steve.lhomme at free.fr Tue Apr 8 17:38:40 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 08 Apr 2003 17:38:40 +0200 (CEST) Subject: [matroska-devel] Re: Matroska Tags In-Reply-To: References: Message-ID: <1049816320.3e92ed00359b4@imp.free.fr> En r?ponse ? Pamel : > Here is an initial list of all of the items that are defined in the > EntityFunction element under MultiEntity. For the names, I used the ID3 > and Extended RIFF Info. You may also have a look at the tags of the RIFF Broadcast (using WAV) info. Dunno if it's the same as Extended RIFF Info > Encoded by > Ripped by Whats is the difference ? > Involved people list Is that necessary ? Is this Track dependant BTW (all these tags) ? Because a person who worked made the music of the video is not the same author as the one of the video. > Content group description What is that ? > Original album/movie/show title > Album/Movie/Show title Difference ? > Original filename That's not part of this meta data, it's elsewhere in matroska. > Original lyricist(s)/text writer(s) > Original artist(s)/performer(s) You mean in the case of a cover ? Does it need to be defined so formally ? > Lead performer(s)/Soloist(s) > Band/orchestra/accompaniment > Conductor/performer refinement Colour of the shirt ? Temparature of the room ? > Software/Hardware and settings used for encoding The format to define the encoding paramaters is not portable on any OS. I don't think we need that tag. This is the kind of tag only usefull for 1 application understanding it. It doesn't need to be in the global format. > Official Internet radio station ??? > Record Location In a room ??? Are you trying to put a whole database in one file ? > Product What is that ? > Cinematographer Difference with the Director ? > Production Designer What is that ? > Costume Designer Doh ! Yeah a whole database :'( > Production Studio > Distributed by > Commissioned by > Engineer Mmmm. I will *never* use most of them, but why not... http://www.matroska.org From Paul at msn.com Wed Apr 9 04:57:39 2003 From: Paul at msn.com (Pamel) Date: Tue, 8 Apr 2003 21:57:39 -0500 Subject: [matroska-devel] Re: Matroska Tags References: <1049816320.3e92ed00359b4@imp.free.fr> Message-ID: "Steve Lhomme" wrote > > En r?ponse Pamel : > > You may also have a look at the tags of the RIFF Broadcast (using WAV) info. > Dunno if it's the same as Extended RIFF Info It is the same, but with more fields. I got the list from here: http://kibus1.narod.ru/sof/abcavi/infotags.htm > > Encoded by > > Ripped by > > Whats is the difference ? I wondered about that myself. They are both listed in the Extended RIFF Info. Technicaly, I THINK that "Ripped by" would be the one that extracts/obtains the original, and "Encoded by" would be the one that encoded that to whatever it is now. But I can't imagine how often it would be different. > > Involved people list > > Is that necessary ? > Is this Track dependant BTW (all these tags) ? Because a person who worked made > the music of the video is not the same author as the one of the video. Again, it was in the "Extended RIFF Info" list. I actually wasn't sure what it was for, but assumed that someone else would know. How do you want to have the information broken up? We could store by track and/or chapter. What do you think would be best? > > Content group description > > What is that ? That was a mistake. That doesn't need to be a MultiEntity. That is one of the ID3 tags. From ID3.org: "The 'Content group description' frame is used if the sound belongs to a larger category of sounds/music. For example, classical music is often sorted in different musical sections (e.g. "Piano Concerto", "Weather - Hurricane")." > > Original album/movie/show title > > Album/Movie/Show title > > Difference ? These are ID3 tags. Original is only used to identify the original recording name in the case of a remix, or a re-release under a different name. > > Original filename > > That's not part of this meta data, it's elsewhere in matroska. That was another mistake. > > Original lyricist(s)/text writer(s) > > Original artist(s)/performer(s) > > You mean in the case of a cover ? Does it need to be defined so formally ? These are both ID3 tags. These are also for the case of a remix or rerelease. Original lyricist would be the original song writer, or script writer. Original artists would be the person that actually sang/acted for the original recording. Artist it this case is not one that draws. > > Lead performer(s)/Soloist(s) > > Band/orchestra/accompaniment > > Conductor/performer refinement > > Colour of the shirt ? Temparature of the room ? Hey, its not my cup of tea, but apparently there was a large enough audience wanting it to warrant creating ID3 tags for all of these. > > Software/Hardware and settings used for encoding > > The format to define the encoding paramaters is not portable on any OS. I don't > think we need that tag. This is the kind of tag only usefull for 1 application > understanding it. It doesn't need to be in the global format. This is another ID3 tag. It isn't meant to be used to duplicate an encoding, just to get an idea of the settings/encoder used. From ID3.org: "The 'Software/Hardware and settings used for encoding' frame includes the used audio encoder and its settings when the file was encoded. Hardware refers to hardware encoders, not the computer on which a program was run." > > Official Internet radio station > > ??? Another ID3 tag. > > Record Location > > In a room ??? Are you trying to put a whole database in one file ? Ironically, ID3 was really the only tag system to not have a "Location" tag. I think it would be used for the location where something was filmed, rather than an audio recording. (though it could be used for that too) I'm thinking it would probably just be used to specify the country. > > Product > > What is that ? Thats a RIFF tag. "Product. Specifies the name of the title the file was originally intended for, such as "Encyclopedia of Pacific Northwest Geography."" > > Cinematographer > > Difference with the Director ? I THINK that a Cinematographer is focused solely on the camera shots/angles, whereas the director is in charge of everything (telling actors how to act the scene and such) > > Production Designer > > What is that ? I don't really know. If I was a theater major I would tell you. > > Costume Designer > > Doh ! Yeah a whole database :'( > > > Production Studio > > Distributed by > > Commissioned by > > Engineer > > Mmmm. I will *never* use most of them, but why not... I will never use most of them either, but there are two reasons to include them. 1. Existing tags already support them, so to fully support existing framework, we need them too. 2. People will want to use them, so they should be there when they do. I had a friend that works in theater production and is really into the makeup/costume side of things. Anytime she saw a good movie she would want to know who did the costumes, and would bore us to death talking about them. I wouldn't care to ever put anything in that tag, but I know she would. Remember that we are planning ahead to make this a painless as possible with as few updates to the specs as possible. We don't need to include EVERYTHING, but we should at least support what already exists. I didn't see a tag for Head Gaffer, but I am also not planning on adding it. BTW, I really can't see a good reason to have both an "Encoded by" and a "Ripped by" element. Also, could someone fill in what "Involved people list" is supposed to be used for? Pamel http://www.matroska.org From steve.lhomme at free.fr Wed Apr 9 09:50:07 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Wed, 09 Apr 2003 09:50:07 +0200 (CEST) Subject: [matroska-devel] Re: Matroska Tags In-Reply-To: References: <1049816320.3e92ed00359b4@imp.free.fr> Message-ID: <1049874607.3e93d0af8a5e2@imp.free.fr> En r?ponse ? Pamel : > > Mmmm. I will *never* use most of them, but why not... > > I will never use most of them either, but there are two reasons to > include > them. > > 1. Existing tags already support them, so to fully support existing > framework, we need them too. Well, not exactly. Suppose we add a tag for the colour of the shirt of the chick next to the singer (only the one on the left). It is part of the standard. So whoever wants to create a new exhaustive tagging system will have to support it. Just because a stupid guy added it once. And you will end up with that shit for decades... I think we really need to keep the one people will likely read & write. For the rest it is usefull only for file exchange between entertainment companies. Maybe one day we'll have all these infos in an audio/video standard format (CD/DVD replacement) but the forthcoming ones DVD-A/SACD don't include most of these infos. So I propose to strip the uncessary ones like the original track it is a cover of. (because there are covers mixing more than one song and unless you want a whole database in your file noone will ever care to read that information). > 2. People will want to use them, so they should be there when they do. > I > had a friend that works in theater production and is really into the > makeup/costume side of things. Anytime she saw a good movie she would > want > to know who did the costumes, and would bore us to death talking about > them. > I wouldn't care to ever put anything in that tag, but I know she > would. But is this the role of the file for playback to store that ? What about the guy who makes coffee for movie actors... He would like to have his name and his friends in there too ! Like for the location, it might change at every scene. Do you give the coordinate on earth, the date it was recorded (already included in the file otherwise it's for the whole montage), the weather condition, the lens used, etc ? Anybody someday would like to know that. Maybe the zodiacal sign of the director too ? At one point we have to stop. Maybe that's where a more generic system comes. With "TAG_NAME" = "TAG_VALUE". Anyone can add whatever and we keep a list of "possible" ones, but not endorsed as standard. > BTW, I really can't see a good reason to have both an "Encoded by" and > a > "Ripped by" element. Also, could someone fill in what "Involved > people list" is supposed to be used for? That's the kind of stupid tags that should be removed :) http://www.matroska.org From Paul at msn.com Thu Apr 10 06:52:22 2003 From: Paul at msn.com (Pamel) Date: Wed, 9 Apr 2003 23:52:22 -0500 Subject: [matroska-devel] Re: Matroska Tags References: <1049816320.3e92ed00359b4@imp.free.fr> <1049874607.3e93d0af8a5e2@imp.free.fr> Message-ID: "Steve Lhomme" wrote > Suppose we add a tag for the colour of the shirt of the chick > next to the singer (only the one on the left). It is part of the standard. So > whoever wants to create a new exhaustive tagging system will have to support it. Anyone that creates a new exhautive tagging system will already have to support all of these tags because they already exist. The point is to support current tagging systems. I haven't created a single tag, all I have done is pull together existing formats and sort out the duplicates. The only tags that I am removing are ones that aren't valid to Matroska, like the INDEX tag in ID3, or the Morgan Multimedia Language tags. > So I propose to strip the uncessary ones.... I'm not trying to decide which tags aren't useful, I'm just trying ensure that information tags in other formats are supported. I already have an excel spreadsheet that is 28x143. (Thats 143 total tag types) 32 of those are already different types of EntityName, and several more fall under other items for MultiEntity. A couple just go under already existing Matroska tags like the picture attachment in ID3 would just be an attachment. And there are many marked N/A as they are specific to the format they come from. > At one point we have to stop. Maybe that's where a more generic system comes. > With "TAG_NAME" = "TAG_VALUE". Anyone can add whatever and we keep a list of > "possible" ones, but not endorsed as standard. *shudder* Thats what Ogg uses. Just look at the lack of compatability that created. The few people that try to use it don't even follow the recommendations OR the specs. I'll just leave in the "Involved people list" tag from ID3 in the EntityName element. People should be able to use that and use the Comments element under the MultiEntity to describe the obscure job/shirt color of the person named. Pamel http://www.matroska.org From steve.lhomme at free.fr Thu Apr 10 09:34:46 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Thu, 10 Apr 2003 09:34:46 +0200 (CEST) Subject: [matroska-devel] Re: Matroska Tags In-Reply-To: References: <1049816320.3e92ed00359b4@imp.free.fr> <1049874607.3e93d0af8a5e2@imp.free.fr> Message-ID: <1049960086.3e951e96e1da7@imp.free.fr> En r?ponse ? Pamel : > > So I propose to strip the uncessary ones.... > > I'm not trying to decide which tags aren't useful, I'm just trying > ensure > that information tags in other formats are supported. I already have I know. But what I was trying to explain is that maybe some stupid guys already put a lot of garbage tag saying "you never know, someone on planet mars might use it someday !". That's why I think some things that we think are unecessary should not be endorsed. > > At one point we have to stop. Maybe that's where a more generic > system > comes. > > With "TAG_NAME" = "TAG_VALUE". Anyone can add whatever and we keep a > list > of > > "possible" ones, but not endorsed as standard. > > *shudder* Thats what Ogg uses. Just look at the lack of compatability > that > created. The few people that try to use it don't even follow the I know this is also want I wanted to avoid as a "general" system. These tags are not endorsed as part of the specs. But allow a kind of "easy" compatibility. They should mostly be used for application specific tags (like a database stored in matroska ;). http://www.matroska.org From theo_brendel at hotmail.com Wed Apr 9 09:56:13 2003 From: theo_brendel at hotmail.com (Steven Mingam) Date: Wed, 9 Apr 2003 09:56:13 +0200 Subject: [matroska-devel] Re: Matroska Tags References: <1049816320.3e92ed00359b4@imp.free.fr> Message-ID: For the "Encoded/Ripped" difference, it's happen often on the "scene" when a l33t guy find an album in ape/320kbits/whatever(yeah, even 128 cbr) and reencode it for his l33t team with a packaging, etc etc ... So they use this kind of tags, because it's _very_ important to them to know who do what exactly. bill_baroud "Pamel" a ?crit dans le message news: b70261$7ti$1 at main.gmane.org... > "Steve Lhomme" wrote > > > > En r?ponse Pamel : > > > > You may also have a look at the tags of the RIFF Broadcast (using WAV) > info. > > Dunno if it's the same as Extended RIFF Info > > It is the same, but with more fields. I got the list from here: > http://kibus1.narod.ru/sof/abcavi/infotags.htm > > > > Encoded by > > > Ripped by > > > > Whats is the difference ? > > I wondered about that myself. They are both listed in the Extended RIFF > Info. Technicaly, I THINK that "Ripped by" would be the one that > extracts/obtains the original, and "Encoded by" would be the one that > encoded that to whatever it is now. But I can't imagine how often it would > be different. > > > > Involved people list > > > > Is that necessary ? > > Is this Track dependant BTW (all these tags) ? Because a person who worked > made > > the music of the video is not the same author as the one of the video. > > Again, it was in the "Extended RIFF Info" list. I actually wasn't sure what > it was for, but assumed that someone else would know. > > How do you want to have the information broken up? We could store by track > and/or chapter. What do you think would be best? > > > > Content group description > > > > What is that ? > > That was a mistake. That doesn't need to be a MultiEntity. That is one of > the ID3 tags. From ID3.org: > > "The 'Content group description' frame is used if the sound belongs to a > larger category of sounds/music. For example, classical music is often > sorted in different musical sections (e.g. "Piano Concerto", "Weather - > Hurricane")." > > > > > Original album/movie/show title > > > Album/Movie/Show title > > > > Difference ? > > These are ID3 tags. Original is only used to identify the original > recording name in the case of a remix, or a re-release under a different > name. > > > > Original filename > > > > That's not part of this meta data, it's elsewhere in matroska. > > That was another mistake. > > > > Original lyricist(s)/text writer(s) > > > Original artist(s)/performer(s) > > > > You mean in the case of a cover ? Does it need to be defined so formally ? > > These are both ID3 tags. These are also for the case of a remix or > rerelease. Original lyricist would be the original song writer, or script > writer. Original artists would be the person that actually sang/acted for > the original recording. Artist it this case is not one that draws. > > > > Lead performer(s)/Soloist(s) > > > Band/orchestra/accompaniment > > > Conductor/performer refinement > > > > Colour of the shirt ? Temparature of the room ? > > Hey, its not my cup of tea, but apparently there was a large enough audience > wanting it to warrant creating ID3 tags for all of these. > > > > Software/Hardware and settings used for encoding > > > > The format to define the encoding paramaters is not portable on any OS. I > don't > > think we need that tag. This is the kind of tag only usefull for 1 > application > > understanding it. It doesn't need to be in the global format. > > This is another ID3 tag. It isn't meant to be used to duplicate an > encoding, just to get an idea of the settings/encoder used. From ID3.org: > > "The 'Software/Hardware and settings used for encoding' frame includes the > used audio encoder and its settings when the file was encoded. Hardware > refers to hardware encoders, not the computer on which a program was run." > > > > Official Internet radio station > > > > ??? > > Another ID3 tag. > > > > Record Location > > > > In a room ??? Are you trying to put a whole database in one file ? > > Ironically, ID3 was really the only tag system to not have a "Location" tag. > I think it would be used for the location where something was filmed, rather > than an audio recording. (though it could be used for that too) I'm > thinking it would probably just be used to specify the country. > > > > Product > > > > What is that ? > > Thats a RIFF tag. "Product. Specifies the name of the title the file was > originally intended for, such as "Encyclopedia of Pacific Northwest > Geography."" > > > > Cinematographer > > > > Difference with the Director ? > > I THINK that a Cinematographer is focused solely on the camera shots/angles, > whereas the director is in charge of everything (telling actors how to act > the scene and such) > > > > Production Designer > > > > What is that ? > > I don't really know. If I was a theater major I would tell you. > > > > Costume Designer > > > > Doh ! Yeah a whole database :'( > > > > > Production Studio > > > Distributed by > > > Commissioned by > > > Engineer > > > > Mmmm. I will *never* use most of them, but why not... > > I will never use most of them either, but there are two reasons to include > them. > > 1. Existing tags already support them, so to fully support existing > framework, we need them too. > > 2. People will want to use them, so they should be there when they do. I > had a friend that works in theater production and is really into the > makeup/costume side of things. Anytime she saw a good movie she would want > to know who did the costumes, and would bore us to death talking about them. > I wouldn't care to ever put anything in that tag, but I know she would. > > Remember that we are planning ahead to make this a painless as possible with > as few updates to the specs as possible. We don't need to include > EVERYTHING, but we should at least support what already exists. I didn't > see a tag for Head Gaffer, but I am also not planning on adding it. > > BTW, I really can't see a good reason to have both an "Encoded by" and a > "Ripped by" element. Also, could someone fill in what "Involved people > list" is supposed to be used for? > > > Pamel > > > > http://www.matroska.org > http://www.matroska.org From Paul at msn.com Mon Apr 14 10:27:30 2003 From: Paul at msn.com (Pamel) Date: Mon, 14 Apr 2003 03:27:30 -0500 Subject: [matroska-devel] Re: Matroska Tags References: <1049816320.3e92ed00359b4@imp.free.fr> Message-ID: Steve, I just looked at the tracker for the Tags. I've got the tags for ID3 and APE covered. I am just unsure about Traktor and Idem. I haven't installed the Traktor demo yet, but from what I can see, it stores its information now in ID3 tags. If it does, then we already have it covered. If not, I need to find a list of those tags. I was unable to find any useful information about Idem for iTunes. It was all in French!! I searched Google for Idem and iTunes, and all of the sites returned were in French. If you could give me the English equivalent for Idem, or explain to me what/how it works then I will make sure its included. Pamel http://www.matroska.org From Paul at msn.com Tue Apr 15 05:03:12 2003 From: Paul at msn.com (Pamel) Date: Mon, 14 Apr 2003 22:03:12 -0500 Subject: [matroska-devel] Re: Matroska Tags References: <1049816320.3e92ed00359b4@imp.free.fr> Message-ID: Steve wrote: [16:09] BTW, if you see Pamel_The_Worker_Lurker, tell him I don't know any program called "Idem" [16:09] and explain him what Idem means ;) I got it from the tracker that you assigned me to. To quote the summary: Summary: ID3 tags & APE tags Add as much ID3 and APE audio tags to the matroska format. Also add the informations saved by Traktor in a similar or better way. Idem for the rating of iTunes. What is "Idem for the rating of iTunes"? Could you describe what it does? Is it anything like the Popularimeter in ID3? To quote ID3.org: 4.17. Popularimeter The purpose of this frame is to specify how good an audio file is. Many interesting applications could be found to this frame such as a playlist that features better audio files more often than others or it could be used to profile a person's taste and find other 'good' files by comparing people's profiles. The frame contains the email address to the user, one rating byte and a four byte play counter, intended to be increased with one for every time the file is played. The email is a terminated string. The rating is 1-255 where 1 is worst and 255 is best. 0 is unknown. If no personal counter is wanted it may be omitted. When the counter reaches all one's, one byte is inserted in front of the counter thus making the counter eight bits bigger in the same away as the play counter ("PCNT"). There may be more than one "POPM" frame in each tag, but only one with the same email address. Pamel http://www.matroska.org From steve.lhomme at free.fr Tue Apr 15 14:21:53 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 15 Apr 2003 14:21:53 +0200 Subject: [matroska-devel] Re: Matroska Tags In-Reply-To: References: <1049816320.3e92ed00359b4@imp.free.fr> Message-ID: <3E9BF961.3020106@free.fr> Pamel wrote: > Steve wrote: > [16:09] BTW, if you see Pamel_The_Worker_Lurker, tell him I don't > know any program called "Idem" > [16:09] and explain him what Idem means ;) > > > I got it from the tracker that you assigned me to. To quote the summary: > > Summary: > ID3 tags & APE tags > Add as much ID3 and APE audio tags to the matroska format. > Also add the informations saved by Traktor in a similar > or better way. Idem for the rating of iTunes. > > What is "Idem for the rating of iTunes"? Could you describe what it does? > Is it anything like the Popularimeter in ID3? To quote ID3.org: Yes, it's exactly like the Popularimeter. In iTunes it's from 0 to 5. Idem means "the same applies to". I think it comes from latin and so probably apply to english (like et ceatera, vice versa). http://www.matroska.org From suiryc at yahoo.com Tue Apr 15 22:15:29 2003 From: suiryc at yahoo.com (Cyrius) Date: Tue, 15 Apr 2003 13:15:29 -0700 (PDT) Subject: [matroska-devel] Bug in lacing fixed In-Reply-To: <3E9BF961.3020106@free.fr> Message-ID: <20030415201529.23138.qmail@web12906.mail.yahoo.com> Hi I just spotted a bug in the lacing code of libmatroska. Here is the culprit : (KaxBlock.cpp, RenderData function, line 224; this is where frame sizes are written in the file) // set the size of each member in the lace tmpValue = 0xFF; for (i=0; iSize(); while (tmpSize >= 0xFF) { output.writeFully(&tmpValue, 1); Size++; tmpSize -= 0xFF; } tmpValue = tmpSize; output.writeFully(&tmpValue, 1); Size++; } The problem : tmpValue should be set to 0xFF inside the for loop. I corrected that and commited the fix. As far as I could see the reading part of the code works. __________________________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo http://search.yahoo.com http://www.matroska.org From chris at matroska.org Thu Apr 10 10:02:43 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Thu, 10 Apr 2003 10:02:43 +0200 Subject: [matroska-devel] Re: Matroska Tags In-Reply-To: References: Message-ID: <3E952523.6010902@matroska.org> Pamel, any chance we could upload your Excel sheet with all the tags to some of our webspace ? I'd like to point a few people to it who are not subscribed to this list. Thanks Christian Pamel wrote: >Here is an initial list of all of the items that are defined in the >EntityFunction element under MultiEntity. For the names, I used the ID3 and >Extended RIFF Info. > >Album/Movie/Show title >Composer >Encoded by >Ripped by >Lyricist/Text writer >Involved people list >Content group description >Title/songname/content description >Musician credits list >Original album/movie/show title >Original filename >Original lyricist(s)/text writer(s) >Original artist(s)/performer(s) >File owner/licensee >Lead performer(s)/Soloist(s) >Band/orchestra/accompaniment >Conductor/performer refinement >Interpreted, remixed, or otherwise modified by >Software/Hardware and settings used for encoding >Official Internet radio station >Record Location >Director >Product >Produced by >Cinematographer >Production Designer >Edited by >Costume Designer >Production Studio >Distributed by >Commissioned by >Engineer > >Can anyone point out some others? Remember that each of these items will >have a space for name, URL, email, comments, and sort order. Are there any >other elements that should be defined under MultiEntity other than those >five items? > > >Pamel > > > >http://www.matroska.org > > > http://www.matroska.org From steve.lhomme at free.fr Thu Apr 10 11:27:33 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Thu, 10 Apr 2003 11:27:33 +0200 (CEST) Subject: [matroska-devel] Re: Matroska Tags In-Reply-To: <3E952523.6010902@matroska.org> References: <3E952523.6010902@matroska.org> Message-ID: <1049966853.3e9539056eaad@imp.free.fr> En r?ponse ? Christian HJ Wiesner : > >Here is an initial list of all of the items that are defined in the > >EntityFunction element under MultiEntity. For the names, I used the > ID3 and > >Extended RIFF Info. BTW, what do you call MultiEntity ? " Steve shouldn't be so picky about the tags. He didn't want to do them, so he should accept whats coming. :p" I know. That's part of the game :) Also I *have* to be picky because I'm trying to get the format consistant. No to integrate things that will be a drawback now or in the future (see my previous email). I agree with most of the tags (now we have to define where and how they will go). Also you said that each element could have a name, URL, comment, etc ? So the idea it to create a matroska specific type (like UInteger, UnicodeString, etc). That will be used internally by matroska-aware softwares... That is necessary not to define 3xNumber of elements Matroska IDs. Instead you define an ID for each of your element and it's defined as binary from an EBML point of view. Then the binary inside could/should also be in EBML format : [ID][length][data]. Then you define an internal ID for : URL, Name, Comment, UInteger value, etc. You will save space in the file and in the specs :) And become more extensible, more consistent in the code, etc... That's an object-oriented approach to the problem :D http://www.matroska.org From Paul at msn.com Fri Apr 11 04:57:12 2003 From: Paul at msn.com (Pamel) Date: Thu, 10 Apr 2003 21:57:12 -0500 Subject: [matroska-devel] Re: Matroska Tags References: <3E952523.6010902@matroska.org> <1049966853.3e9539056eaad@imp.free.fr> Message-ID: "Steve Lhomme" wrote > BTW, what do you call MultiEntity ? Your MultiEntity element in the specs. > I agree with most of the tags (now we have to define where and how they > will go). I'm currently making up an excel spreadsheet that lists all of the elements that will need to be created. There will be a lot (I am guessing <50). I think we should make a link to a seperate web page to list all of the tags with full descriptions. Some of the descriptions are really vague on the other specs pages, so it was difficult to tell what they were talking about. I was thinking about listing most of the elements as UTF-8. I was also thinking about storing the URL's as UTF-8 as eventually they are going to start using non-ascii charaters in DNS entries. Two articles from slashdot are here: http://www.theregister.co.uk/content/6/29058.html http://fr.news.yahoo.com/030201/35/30bn2.html (in french) http://developers.slashdot.org/article.pl?sid=03/02/02/066207&mode=thread&ti d=95 But this would only be an option if all URL entries in Matroska went to UTF-8. Otherwise I obviously have to stick with string. > Also you said that each element could have a name, URL, comment, etc ? So the > idea it to create a matroska specific type (like UInteger, UnicodeString, etc). > That will be used internally by matroska-aware softwares... That is necessary > not to define 3xNumber of elements Matroska IDs. Instead you define an ID for > each of your element and it's defined as binary from an EBML point of view. Then > the binary inside could/should also be in EBML format : [ID][length][data]. Then > you define an internal ID for : URL, Name, Comment, UInteger value, etc. You > will save space in the file and in the specs :) And become more extensible, more > consistent in the code, etc... That's an object-oriented approach to the problem :D Adding an element to contain EBML'd data? That sounds like it would just be adding another layer of abstraction for the data, without adding any features. You might as well just have them in the main tree. Sticking them together in their own 'thing' would separate them from the main specs. You could even branch them off into their own project, ala ID3. I think this would be bad though, and we all know how much I like having things modular. Its just asking for more bloat. I'll do my best to keep the total number of new elements to a minimum, but don't expect the number of supported tags to drop. Pamel http://www.matroska.org From steve.lhomme at free.fr Fri Apr 11 10:04:12 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Fri, 11 Apr 2003 10:04:12 +0200 (CEST) Subject: [matroska-devel] Re: Matroska Tags In-Reply-To: References: <3E952523.6010902@matroska.org> <1049966853.3e9539056eaad@imp.free.fr> Message-ID: <1050048252.3e9676fc8dadb@imp.free.fr> En r?ponse ? Pamel : > "Steve Lhomme" wrote > > BTW, what do you call MultiEntity ? > > Your MultiEntity element in the specs. Doh ! I totally forgot I made this change. Actually it looks like a more elegant way than the solution I proposed yesterday. You just need to specify an EntityFunction Number for each of your 2000 tags and the URL, email, name, etc will follow :) Let's go for it. That won't use a more matroska IDs than needed. > I was thinking about listing most of the elements as UTF-8. I was > also > thinking about storing the URL's as UTF-8 as eventually they are going > to > start using non-ascii charaters in DNS entries. Two articles from > slashdot > are here: > http://www.theregister.co.uk/content/6/29058.html > http://fr.news.yahoo.com/030201/35/30bn2.html (in french) > http://developers.slashdot.org/article.pl?sid=03/02/02/066207&mode=thread&ti > d=95 That won't happen anytime soon. Even if it does, it will have to be backward compatible. So don't worry about it. http://www.matroska.org From Paul at msn.com Sun Apr 13 02:06:34 2003 From: Paul at msn.com (Pamel) Date: Sat, 12 Apr 2003 19:06:34 -0500 Subject: [matroska-devel] Re: Matroska Tags References: Message-ID: I was talking with Jory about where to put the tags and I would like to share some of the solutions. The problem is that there can be informational tags that relate to just a track, just a chapter, multiple tracks/chapters, or the whole file. There are also two places to store the tags, in the Info element, and under the Chapters element. First, we decided to condense all of this information together in the same place to avoid duplication. Then, we create a new Tags sub-element under the Information element to store all of the tags under. There can be multiple Tags sub-elements, each with an identifying element in it to indicate what Tracks/Chapters/All the tags contained therein belong to. All informational (non-technical/unneeded) elements are to be moved here. Second, because the track numbers can change, and people will give multiple tracks the same name, we decided to create a unique ID for each track and chapter. This ID is like the SegmentUID, except that it will only be 16bits instead of 128bits, so save space. The identifier tag will use this to associate the track/chapter so that it doesn't matter if the track/chapter number/name is changed, the tags will still be properly associated. Third, there are a lot of dates that people like to store in tags. To lessen the number of dates, will will create an element like the MultiEntity element to deal specificaly with Dates. For the explanation we will call there MultiDate, DateFunction, Date, DateEnd, and Comments. Fourth, the comments. Something in the WMP9 specs that currently has us beat is the ability to store comments in multiple languages, and to specify the language you are using for each comment. So, we will be adding a generic MultiComments sub-element to hold the Comments element and the Language element. This will add about 11 new elements, but will remove about 20 old ones. So, the changes will decrease the total number of needed elements defined, and will increase the functionality of those that are left, as well as resolving some logistical issues. Below is an example of what the tags should look like. And again in proper XML. Pamel http://www.matroska.org From Paul at msn.com Mon Apr 14 10:22:28 2003 From: Paul at msn.com (Pamel) Date: Mon, 14 Apr 2003 03:22:28 -0500 Subject: [matroska-devel] Re: Matroska Tags References: Message-ID: Here is a list of the elements listed under Tracks and Chapters that I was planning on moving to the Tags element. There were a couple that I wasn't sure about, and I need input on them. The idea is that this is information that isn't essential to playback, but is informational. The first is Name. A basic element for the name of a track (like a song's name) is already put in the MultiEntity element and allows for a URL and comments on it. It is extremely convenient to have it there, and allows for a greater flexibility, without increasing the number of elements. However, a piece of information so basic as the name of the track may be better left in the tack information, so that a basic reader wouldn't have to look at the tags at all. We could duplicate it, but that would mean that you have to make sure to change two elements anytime the name is altered. The second are the CodecXXX elements. While some of them obviously belong in the Track section, the rest are purely informational and can be moved to the Tags section. However, you would be breaking up a class of elements. The third is the audio gain information. This information would fit quite well in the Tags section and would remove the duplication of existing in both the tracks section and the chapters section. The problem is that a basic player that supported audio gain would have to get that information from the Tags, and that might complicate things a bit. The main issue here is how difficult it would be to retrieve this information if it is stored under Tags. I'm not sure how much of this libmatroska would handle, but I need to know if this would be a real issue. If it would be an issue for a hardware player, then those elements MUST stay where they are. However, if it would be handled easily, then it would only make sense to move them. Name Language CodecName CodecSettings CodecInfoURL CodecDownloadURL DiscID FrameRate DiscTrack DiscIndex ISRC SegmentGain SegmentPeak GlobalGain GlobalPeak ChapterISRC ChapterTrackGain ChapterTrackPeak ChapterGlobalGain ChapterGlobalPeak ChapEdition ChapterEntity ChapEntityFunction ChapEntityName ChapEntityURL ChapEntityEmail ChapComment ChapLanguage ChapCountry Pamel http://www.matroska.org From chris at matroska.org Mon Apr 7 14:38:52 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Mon, 07 Apr 2003 14:38:52 +0200 Subject: [matroska-devel] matroska streaming server, was : I will clean the matroska developers list soon - point of discussion In-Reply-To: <12509.1049713722@www40.gmx.net> References: <3E8D843C.9020700@matroska.org> <12509.1049713722@www40.gmx.net> Message-ID: <3E91715C.9040002@matroska.org> Hi Amit, i was talking to robux4 on IRC.corecodec.com #matroska this afternoon, and he said he will write you a more detailled technical reply tonight if ever possible, but to give you a first overview here some important things on streaming server : 1. our partner project developers from TCMP ( The Core Media Player ) have to be heard on this issue, as they will push matroska as streaming solution with their Mediaplayer ( about 100,000 downloads now since beginning of February, http://corecoded.com ), that means they can probably give very valuable input on how to make it as they had plans to do it with OGM. I copied their list ( tcmp-devel at freelists.org ) on this email, lets see if we get any response, otherwise i recommend you just send your questions to the matroska-devel at freelists.org ML and copy their list on it. 2. Its not a good idea to start from scratch for a streaming server solution, there are a couple of projects that could be used as a basis, like - VLS ( http.//videolan.org ) ; can do RTP ( UDP ) and HTTP ( TCP ) - Apple Darwin streaming server ; no links here, but maybe http://sf.net/mpeg4ip has one ; RTP and HTTP also - icecast/shoutcast ( http://www.xiph.org ) ; only HTTP - Real streaming server ( http://helixcommunity.org ) My preferred one was VLS, although it might be interesting to look at the client of this project also ( VLC ) as it can stream content on a LAN, using either HTTP or RTP, as a start. 3. In any case, a first working streaming server solution should start with the simple HTTP protocol case, and then evolve to RTP ( UDP ) later. This will require the help of the lib inventers/makers ( robux4, Frank ) then, as they will be the ones to modify the lib such that additional EDC and ECC ( FEC ) elements can be added to the UDP stream such that the important block/track headers will be protected for transfering via UDP. Now my answers to your questions ( best i could ) : amit limaye wrote: >Hello > Well before i start looking at the streaming server will need some >inputs from u people >like >What is the Codec interface i m expecting ? > You shouldnt need a codec interface for the streaming server ? If you are streaming the file it is already muxed, and final for distribution. >what is the format of data stored in our container ? > Your streaming server should handle the complete matroska file as is, so normally you wouldnt have to care about whats inside ? >What protocols do we plan to support for streaming? > First HTTP ( TCP/IP ), then later also RTP ( UDP ) >Does this code need to be portable ? > Most streaming servers are made for Linux, but it wouldnt hurt if Windows users could use it also, without having to use Cygwin for that >Language of choice would be C++ i hope >-SIGTERM amit > Yup :) ! Christian http://www.matroska.org From spyder482 at yahoo.com Tue Apr 8 04:18:23 2003 From: spyder482 at yahoo.com (John Cannon) Date: Mon, 7 Apr 2003 21:18:23 -0500 Subject: [matroska-devel] NNTP Gateway in my forum is working! Message-ID: It has imported the entire archive all the way back to January. I am working on getting it to post back. I get an exception but i will figure it out soon enough. ;) @ChristianHJW: Please don't die on me when you read this. I know you really want this. But you will have to wait until I get home and reconnect to see it :P Spyder http://www.matroska.org From spyder482 at yahoo.com Tue Apr 8 04:25:50 2003 From: spyder482 at yahoo.com (John Cannon) Date: Tue, 8 Apr 2003 02:25:50 +0000 (UTC) Subject: [matroska-devel] Re: NNTP Gateway in my forum is working! References: Message-ID: <299085.1049768852510.JavaMail.Administrator@johnc> TEST POST FROM FORUM TO NEWSGROUP! Posted from spyder482's forum :) http://www.matroska.org From spyder482 at yahoo.com Tue Apr 8 04:35:06 2003 From: spyder482 at yahoo.com (John Cannon) Date: Tue, 8 Apr 2003 02:35:06 +0000 (UTC) Subject: [matroska-devel] Re: NNTP Gateway in my forum is working! References: <299085.1049768852510.JavaMail.Administrator@johnc> Message-ID: <24395764.1049769408549.JavaMail.Administrator@johnc> OMG THIS REALLY WORKED!!! Posted from spyder482's forum :) http://www.matroska.org From spyder482 at yahoo.com Tue Apr 8 04:42:50 2003 From: spyder482 at yahoo.com (John Cannon) Date: Tue, 8 Apr 2003 02:42:50 +0000 (UTC) Subject: [matroska-devel] Re: NNTP Gateway in my forum is working! References: <24395764.1049769408549.JavaMail.Administrator@johnc> Message-ID: <24546058.1049769872186.JavaMail.Administrator@johnc> The good thing about this is that we now have full text search!!!! Posted from spyder482's forum :) http://www.matroska.org From Paul at msn.com Tue Apr 8 05:50:50 2003 From: Paul at msn.com (Pamel) Date: Mon, 7 Apr 2003 22:50:50 -0500 Subject: [matroska-devel] Re: NNTP Gateway in my forum is working! References: Message-ID: "John Cannon" wrote > It has imported the entire archive all the way back to January. I am > working on getting it to post back. Thats wonderful. What are you talking about? Pamel http://www.matroska.org From steve.lhomme at free.fr Tue Apr 8 11:07:46 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 08 Apr 2003 11:07:46 +0200 Subject: [matroska-devel] Namespace pb Message-ID: <3E929162.5020604@free.fr> I saw on the IRC logs that Cyrius had problems with the namespaces of libeml. The solution used is working but a dirty hack (#define uint8 LIBEBML_uint8 / #undef uint8). The problem you probably have is that all libebml classes are children of VDub classes (am I right ?). If there is no specific need for that I suggest you remove that depency because in this case you're mixing the namespaces of VDub (if any) and the ones of libebml/libmatroska. So you would need something like vdub_namespace::libebml::uint8 which is still possible and cleaner to use. Other than that when you use some libebml/libmatroska elements in your code you should use LIBEBML_NAMESPACE::uint8 instead of using namespace LIBEBML_NAMESPACE (which led you to ambiguous code). After all the namespaces are here to help you get rid of ambiguous definitions not to annoy you ! 2 cents http://www.matroska.org From suiryc at yahoo.com Tue Apr 8 14:28:29 2003 From: suiryc at yahoo.com (Cyrius) Date: Tue, 8 Apr 2003 05:28:29 -0700 (PDT) Subject: [matroska-devel] Re: Namespace pb In-Reply-To: <3E929162.5020604@free.fr> Message-ID: <20030408122829.83767.qmail@web12903.mail.yahoo.com> --- Steve Lhomme wrote: > > I saw on the IRC logs that Cyrius had problems with > the namespaces of > libeml. > > The solution used is working but a dirty hack > (#define uint8 > LIBEBML_uint8 / #undef uint8). > > The problem you probably have is that all libebml > classes are children > of VDub classes (am I right ?). If there is no > specific need for that I > suggest you remove that depency because in this case > you're mixing the > namespaces of VDub (if any) and the ones of > libebml/libmatroska. So you > would need something like > vdub_namespace::libebml::uint8 which is still > possible and cleaner to use. > > Other than that when you use some > libebml/libmatroska elements in your > code you should use LIBEBML_NAMESPACE::uint8 instead > of using namespace > LIBEBML_NAMESPACE (which led you to ambiguous code). > After all the > namespaces are here to help you get rid of ambiguous > definitions not to > annoy you ! > > 2 cents > > http://www.matroska.org Well the problem doesn't seem as simple as that. First of all it is due to the fact that Avery typedefed (u/s)int8/16/32/64, and that libebml also typedefed (s)int8/16/32/64. VirtualDub doesn't use a namespace for that (yet ? - Avery uses namespaces in parts that have been added in version 1.5.0). Moreover VirtualDub uses precompiled headers. So the .cpp file has to #include "stdafx.h" first, which then include the file containing the typedefs. Then I can #include my .h file that #include libmatroska/libebml files. This lead to those errors : Compiling... MatroskaOutputFile.cpp .\mod\matroska\libebml\src\api/c/libebml_t.h(79) : error C2371: 'int32' : redefinition; different basic types ..\h\vd2/system/vdtypes.h(34) : see declaration of 'int32' .\mod\matroska\libebml\src\api/c/libebml_t.h(80) : error C2371: 'int16' : redefinition; different basic types ..\h\vd2/system/vdtypes.h(35) : see declaration of 'int16' ... (vdtypes.h is the VirtualDub file where are the typedefs ;)) This happen even when I don't use 'using namespace LIBMATROSKA_NAMESPACE;' or 'using namespace LIBEBML_NAMESPACE;'. As I can't possibly modify one of the two parts (if I create a namespace for VirtualDub typedefs I would have to write 'using namespace vdub_namespace;' in eavery single file needing the typedefs ... i.e. almost every file; if I modify something in libebml typedefs I would have to change all the files too :p) I also tried another odd thing : I put 'START_LIBEBML_NAMESPACE' and 'END_LIBEBML_NAMESPACE' around the typedefs in libebml_t.h (wasn't here sonce this file is included insided the namespace in libebml) and then the errors turned into : Compiling... MatroskaOutputFile.cpp .\mod\matroska\libmatroska\src\KaxBlock.h(58) : error C2872: 'uint32' : ambiguous symbol .\mod\matroska\libmatroska\src\KaxBlock.h(63) : error C2872: 'uint32' : ambiguous symbol ... which isn't better for me :p So actually the dirty trick of #define int8 LIBEBML_int8 ... #include libebml/libmatroska files ... #undef int8 ... ,which makes libebml typedef to LIBEBML_(s)int8/16/32/64 instead of (s)int8/16/32/64 that are already typedefed by VirtualDub, was the only working solution I found so far ... But then I am not an expert in C++ nor in namespaces and maybe there is something obvious I am missing ;) __________________________________________________ Do you Yahoo!? Yahoo! Tax Center - File online, calculators, forms, and more http://tax.yahoo.com http://www.matroska.org From suiryc at yahoo.com Tue Apr 8 14:33:42 2003 From: suiryc at yahoo.com (Cyrius) Date: Tue, 8 Apr 2003 05:33:42 -0700 (PDT) Subject: [matroska-devel] Re: Namespace pb In-Reply-To: <20030408122829.83767.qmail@web12903.mail.yahoo.com> Message-ID: <20030408123342.89205.qmail@web12908.mail.yahoo.com> > Well the problem doesn't seem as simple as that. > First of all it is due to the fact that Avery > typedefed (u/s)int8/16/32/64, and that libebml also > typedefed (s)int8/16/32/64. > ... My bad ^^' Those who know libebml/libmatroska already noticed that it typedefs uint8/16/32/64 and not sint8/16/32/64 ... __________________________________________________ Do you Yahoo!? Yahoo! Tax Center - File online, calculators, forms, and more http://tax.yahoo.com http://www.matroska.org From steve.lhomme at free.fr Tue Apr 8 15:13:08 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 08 Apr 2003 15:13:08 +0200 (CEST) Subject: [matroska-devel] Re: Namespace pb In-Reply-To: <20030408122829.83767.qmail@web12903.mail.yahoo.com> References: <20030408122829.83767.qmail@web12903.mail.yahoo.com> Message-ID: <1049807588.3e92cae48d683@imp.free.fr> En r?ponse ? Cyrius : > Well the problem doesn't seem as simple as that. > First of all it is due to the fact that Avery > typedefed (u/s)int8/16/32/64, and that libebml also > typedefed (s)int8/16/32/64. > > VirtualDub doesn't use a namespace for that (yet ? - > Avery uses namespaces in parts that have been added in > version 1.5.0). Moreover VirtualDub uses precompiled > headers. So the .cpp file has to #include "stdafx.h" > first, which then include the file containing the > typedefs. > Then I can #include my .h file that #include > libmatroska/libebml files. This lead to those errors : > Compiling... > MatroskaOutputFile.cpp > .\mod\matroska\libebml\src\api/c/libebml_t.h(79) : > error C2371: 'int32' : redefinition; different basic > types > ..\h\vd2/system/vdtypes.h(34) : see > declaration of 'int32' > .\mod\matroska\libebml\src\api/c/libebml_t.h(80) : > error C2371: 'int16' : redefinition; different basic > types > ..\h\vd2/system/vdtypes.h(35) : see > declaration of 'int16' > ... > > (vdtypes.h is the VirtualDub file where are the > typedefs ;)) OK. Now I see what the problem is. As the compiler says, you already define some types that are already defined... Now the libraries are supposed to be usable in any application and so they should fit in the code without much problem. That's what namespaces are for. I'm a bit surprised that when you put START/END_LIBEBML_NAMESPACE around the code it still produces the same. Your compiler might not be able to handle namespaces properly then (which I don't think is the case). Maybe you didn't include the file that specify what is in the namespace (ie EbmlConfig.h) ? Also this should be done but it's not enough. Because there are some ancient compilers like GCC 2.95 that don't understand standard C++ (ie namespaces). And if you use libebml/libmatroska with other C++ code that already defined uint8 you'll end up with the same error as yours... So there should be in the code something like this : #if (!EBML_CLASSIC_TYPES_DEFINED) ...define them as it is now #endif There won't be any duplicate anymore... But there is another problem : the library has to be compiled with these same types as you use in your own code ! Hopefully this is the case but you never know. And I don't see any way to enforce that :( (unless we have a "port.h" file for each platform) http://www.matroska.org From suiryc at yahoo.com Tue Apr 8 16:21:30 2003 From: suiryc at yahoo.com (Cyrius) Date: Tue, 8 Apr 2003 07:21:30 -0700 (PDT) Subject: [matroska-devel] Re: Namespace pb In-Reply-To: <1049807588.3e92cae48d683@imp.free.fr> Message-ID: <20030408142130.14289.qmail@web12906.mail.yahoo.com> --- Steve Lhomme wrote: > OK. Now I see what the problem is. As the compiler > says, you already define some > types that are already defined... > > Now the libraries are supposed to be usable in any > application and so they > should fit in the code without much problem. That's > what namespaces are for. I'm > a bit surprised that when you put > START/END_LIBEBML_NAMESPACE around the code it > still produces the same. Your compiler might not be > able to handle namespaces > properly then (which I don't think is the case). Well we are talking of MSVC++6 here, so we never know :p > Maybe you didn't include the > file that specify what is in the namespace (ie > EbmlConfig.h) ? I tried including this file too but this didn't helped (still getting 'redefinition' or 'ambiguous symbol' errors). > Also this should be done but it's not enough. > Because there are some ancient > compilers like GCC 2.95 that don't understand > standard C++ (ie namespaces). And > if you use libebml/libmatroska with other C++ code > that already defined uint8 > you'll end up with the same error as yours... So > there should be in the code > something like this : > > #if (!EBML_CLASSIC_TYPES_DEFINED) > ...define them as it is now > #endif > > There won't be any duplicate anymore... But there is > another problem : the > library has to be compiled with these same types as > you use in your own code ! > Hopefully this is the case but you never know. And I > don't see any way to > enforce that :( (unless we have a "port.h" file for > each platform) __________________________________________________ Do you Yahoo!? Yahoo! Tax Center - File online, calculators, forms, and more http://tax.yahoo.com http://www.matroska.org From chris at matroska.org Wed Apr 9 10:46:41 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Wed, 09 Apr 2003 10:46:41 +0200 Subject: [matroska-devel] Matroska public alpha release date : 1 st May 2003 Message-ID: <3E93DDF1.7000501@matroska.org> Hi all, i am sorry about the very long email and the long list of recipients for this email, but to be honest i lost overview of who is subscribed to the mailing lists and i wanted to make sure you all get this message : The matroska project, with its predecessor/sister project MCF, was started about 2 years ago. Our aim was to build an open standard and open source A/V container project that was flexible and intelligent enough to last for the next 10 years, and to achieve this we did not just hack some code together quickly and release a first alpha into the wild, but instead we were making a lot of considerations about what such a container should be capable of doing, and we also tried to get advice from many different sides, like other opensource multimedia related projects, what they would consider as necessary and what options could convince them to support our container in their OSS projects. After this long time, and believe me it wasnt always easy to take this route, the core dev team of matroska was happy and proud to be able to release a first alpha of libmatroska, the basic input/output library that can be used to read and write matroska files, beginning of this year. This library was greatly accepted from guys like Julien 'Cyrius' Coloos, the main developer of VirtualdubMod, and Moritz 'mosu' Bunkus, and they started to work instantaneously with it, building a great set of tools for both Windows and Linux for matroska file creation and also playback ( Linux ). As a result we are maybe capable of releasing a first set of tested tools soon, maybe even before the launch date named above. So you may ask, what is it about the date that was named in the subject line, the 1st of May ?? Well, unfortunately not all sideprojects are coming along that well. We were maybe a bit naive to believe that every OSS developer out there would stop working on his project immediately, and start implementing matroska support into his tools. But, to be honest, the poor feedback we get from the OSS multimedia world out there is pretty demotivating for us, and we cant explain it at all. Its unacceptable to us that at least 20 - 30 developers in the OSS world are still investing their precious time into hacking strange things into AVI ( like SSA subtitles or DTS audio ), while a library exists allowing them to create matroska files with the very wanted content, but in a spec compliant way. Sure, we have some very good feedback also, like Ronald 'BBB' Bultje from the Gstreamer team announcing he might be able to look at making a Gstreamer plugin for matroska, or Mike Melanson offering to look at supporting at least playback from Xine, Francois 'mmu_man' Revol compiling the mplayer patches for OpenBeOS, etc. But besides that there seems to be not much interest from most other projects out there, and we believ to know why this is : When looking at OGM, the closed source container format based on Ogg ( made by Tobias Waldvogel ), its becoming obvious that the OSS developers only started supporting it after people were actually using it. Its interesting to see in this respect that for doing this there was no nice, clean library, instead the developers looking at it had to more or less reverse engineer the complete container, being major hassle for sure. But they did it, as there were users asking them to support it. As a result of what is said above, we will change our strategy now. Instead of developing matroska to a very stable status on many platforms, and releasing it then to the public, we decided to release whatever we have on 1st of May. This measure is mainly undertaken to help us, the core dev team, to find the motivation again to work hard and even harder on getting matroska used and accepted, and hopefully that way we will also be capable of attracting the interest of other multimedia OSS developers, so they start supporting matroska in their apps, or maybe even contribute code to the main library. There is one thing that may complicate releasing the matroska tools on 1st of May, and that is the missing DirectShow parser for Windows. Without this parser filter it will be impossible to release matroska to a broad audience. Our friend BlackSun had always predicted that this huge task is too much for only one person, and it seems our core developer Jan 'myFUN' Schlenker is currently extremely busy with real life stuff ( job ), so he cant contribute as much as necessary to develop the filter into a working alpha status until 1st May. We therefore created a task force yesterday to assist him in bringing the parser filter into a workable state until then. This task force will consist of 6 additional developers : John 'spyder' Cannon Ludovic 'BlackSun' Vialle ( DShow consultant, TCMP core dev ) Christophe 'Toff' Paris ( DShow consultant, TCMP core dev ) Steve 'robux4' LHomme Jory 'Jcsston' angelfire All of them are looking at the M$ DShow SDKright now, trying to find out what is necessary to resolve the existing bugs in the current filter. Of course this means that they will stop their work on the current projects. Affected are : spyder : MPV2MKV ; MPEG1/2 video to matroska robux4 : libmatroska jcsston : mpv2mkv GUI , mkvmerger GUI I hope you all understand the necessity of this step and look forward to the 1st of May, together with us. Comments are welcome ( dont forget to use the 'reply all' button ) Regards Christian http://www.matroska.org From steve.lhomme at free.fr Wed Apr 9 11:50:34 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Wed, 09 Apr 2003 11:50:34 +0200 (CEST) Subject: [matroska-devel] Re: Matroska public alpha release date : 1 st May 2003 In-Reply-To: <3E93DDF1.7000501@matroska.org> References: <3E93DDF1.7000501@matroska.org> Message-ID: <1049881834.3e93eceaa8686@imp.free.fr> * Here are the 4 major projects on which we should concentrate right now (in order of importance) : 1) DirectShow demuxer supporting playback of audio(PCM, MP3, ACM-based, AC3, Vorbis), video(YUV, VCM-based, DirectShow-based, DIVX, XviD), subtitles (simple (?), USF). 2) VirtualDubMod writing of matroska files (hopefully with all the codec mentioned above) from an AVI source or from a capture card 2) Mosu MKVTools to create matroska files from various sources and extract meta informations 3) DirectShow muxer supporting encoding of all possible DirectShow encoded streams. It should be equivalent to OggDS 4) TCMP plugin to extract meta informations to display/edit (equivalent to editing ID3 tags). * Here is the "roadmap" that we should try to achieve until the 1st of May : - 09/04 to 26/04 : implement as much as possible in all these tools. - 27/04 to 31/04 : test the tools internally and verify compatibility with the specs and all playback/reading tools. - 01/05 : make binary and source releases of these tools available to the public on many platforms. Advertise about it in popular places (Doom9, HydrogenAudio mostly). Make some basic files available with their AVI equivalent. * Here is who can do what (for all those mentioned and not mentioned please correct things) : - Me : I won't be home for 9 days so I can only work with my iBook (still have problems linking libmatroska on OSX) or my parents (slow) computer. Until that I'll update the little things remaining in the CC Tracker. When I'll be back home I'll have 7 days to work 24/24 on matroska on whatever is needed : DirectShow (on the matroska side), VDubMod, Mosu Tools, TCMP plugin. - Spyder : As mpv2mkv is hardly needed for the moment, he will start looking at how DirectShow works and try to help where he can. I think he can help on the format when I'm away. And can also have a look at Mosu tools, horpfully compiling on Windows too. - Christian : Keep a daily update on the progress on each side to "reassign" prioroties when needed. - myFUN : well I can't say really since we don't see him often. But we need the latest update of the DSF and the status on this code (what is missing and ideas on how to add what is missing). If he has the time until 01/05 to help on the DSF it will be highly appreciated. - Cyrius : VDubMod 1.5 integration of matroska. Altough I understand he may have other priorities too. To keep everybody coordinated, I highly recommend the use of CVS for all the 5 tasks mantioned above. Side Note : Blacksun could you see with Cytoplas ASAP why syncmail in the Matroska CVS doesn't send the emails (even though it says it does) ??? This is really important to avoid some errors when people update code over someone else's code. http://www.matroska.org From chris at matroska.org Thu Apr 10 11:36:13 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Thu, 10 Apr 2003 11:36:13 +0200 Subject: [matroska-devel] Re: Matroska public alpha release date : 1 st May 2003 In-Reply-To: <1049881834.3e93eceaa8686@imp.free.fr> References: <3E93DDF1.7000501@matroska.org> <1049881834.3e93eceaa8686@imp.free.fr> Message-ID: <3E953B0D.8020909@matroska.org> OK guys, now like Steve is recommending, lets try to get things organized. We have only 21 days, and we have to use them wisely. Priority list, as i see it : A. Direct Show parser 1. DirectShow parser : XviD + MP3 2. DirectShow parser : DivX + MP3 3. DirectShow parser : XviD + Vorbis 4. DirectShow parser : DivX + Vorbis 5. DirectShow parser : XviD + AC3 6. DirectShow parser : DivX + AC3 7. DirectShow parser : XviD + 2xMP3 8. DirectShow parser : DivX + 2xMP3 9. DirectShow parser : XviD + 2xVorbis 10. DirectShow parser : DivX + 2xVorbis 11. DirectShow parser : XviD + MP3 + AC3 12. DirectShow parser : DivX + MP3 + AC3 13. DirectShow parser : XviD + MP3 + AC3 + Vorbis 14. DirectShow parser : DivX + MP3 + AC3 + Vorbis 15. DirectShow parser : XviD + MP3 + SRT 16. DirectShow parser : DivX + MP3 + SRT 17. DirectShow parser : XviD + Vorbis + SRT 18. DirectShow parser : DivX + Vorbis + SRT 19. DirectShow parser : XviD + AC3 + SRT 20. DirectShow parser : DivX + AC3 + SRT 21. DirectShow parser : XviD + 2xMP3 + SRT 22. DirectShow parser : DivX + 2xMP3 + SRT 23. DirectShow parser : XviD + 2xVorbis + SRT 24. DirectShow parser : DivX + 2xVorbis + SRT 25. DirectShow parser : XviD + MP3 + AC3 + SRT 26. DirectShow parser : DivX + MP3 + AC3 + SRT 27. DirectShow parser : XviD + MP3 + AC3 + Vorbis + SRT 28. DirectShow parser : DivX + MP3 + AC3 + Vorbis + SRT Until the release on May 1st we need to have 1 - 6 at the very minimum !!! B. VirtualdubMod : 1. VirtualdubMod : XviD muxing from AVI 2. VirtualdubMod : DivX muxing from AVI 3. VirtualdubMod : MP3 muxing from AVI 4. VirtualdubMod : Vorbis muxing from OGM 5. VirtualdubMod : Vorbis muxing from OGG 6. VirtualdubMod : MP3 muxing from MP3 file 7. VirtualdubMod : AC3 muxing from AVI 8. VirtualdubMod : AC3 muxing from OGM 9. VirtualdubMod : AC3 muxing from AC3 file 10. VirtualdubMod : XviD/DivX muxing from OGM 11. VirtualdubMod : 2x MP3 muxing from AVI 12. VirtualdubMod : 2x Vorbis muxing from OGM 13. VirtualdubMod : 2x AC3 muxing from OGM 14. VirtualdubMod : SRT muxing For a release we should at least be able to accomplish 1. - 5. . This was all achieved for VirtualdubMod 1.4.12 already, so if Cyrius can not make these functionalities working in VdubMod 1.5.x we may still release the old version. @Cyrius, any comments ? C. Linux : mkvmerger/mplayer patch What can i say, i guess mosu is far ahead from what we consider as minimum requirements for a release, so there is no priority list, we should simply ask him for allowance if we could link to his site on release date. @mosu, comments welcome To Do : A. DirectShow parser : We have to get 1. working, as soon as possible !! XviD + MP3 should be the start, if we achieve this we will be motivated to go on from there. myFUN was loading a version of VdubMod from Cyrius yesterday with lacing disabled, to find out if the lacing was maybe causing the problems with MP3 audio not working. Once XviD + MP3 is working, DivX + MP3 should be a breeze really. @myFUN : any comments from your side here ? About 3. and 4. : myFUN made tests yesterday about trying to initialize the Vorbis DShow filter from Tobias, but without success. I had contact with Ingo about this, for sure his filter would work, but he is away until beginning of May, so this is not an option. Here is what we can do : - hardcode Vorbis decoding into matroska parser ( will add about 150 KB to the parser filter size ) ; anybody volunteering ? sypder, you made a Vorbis JMF plugin once, right ? - add libogg to the filter and try to pack the Vorbis packets into Ogg packets, so that Tobias filter can accept the data - release the matroska tools without Vorbis support, and maybe discuss with Ingo about other alternatives later [b]Gentlemen, please, i would like to see some response to this email !! We have only 21 days, lets be quick and effective now, in short, lets organize it !![/b] We need your help and input now to be able to finish the most necessary work until 1st May Christian Steve Lhomme wrote: >* Here are the 4 major projects on which we should concentrate right now (in >order of importance) : > >1) DirectShow demuxer supporting playback of audio(PCM, MP3, ACM-based, AC3, >Vorbis), video(YUV, VCM-based, DirectShow-based, DIVX, XviD), subtitles (simple >(?), USF). > >2) VirtualDubMod writing of matroska files (hopefully with all the codec >mentioned above) from an AVI source or from a capture card > >2) Mosu MKVTools to create matroska files from various sources and extract meta >informations > >3) DirectShow muxer supporting encoding of all possible DirectShow encoded >streams. It should be equivalent to OggDS > >4) TCMP plugin to extract meta informations to display/edit (equivalent to >editing ID3 tags). > > > >* Here is the "roadmap" that we should try to achieve until the 1st of May : > >- 09/04 to 26/04 : implement as much as possible in all these tools. > >- 27/04 to 31/04 : test the tools internally and verify compatibility with the >specs and all playback/reading tools. > >- 01/05 : make binary and source releases of these tools available to the public >on many platforms. Advertise about it in popular places (Doom9, HydrogenAudio >mostly). Make some basic files available with their AVI equivalent. > > > >* Here is who can do what (for all those mentioned and not mentioned please >correct things) : > >- Me : I won't be home for 9 days so I can only work with my iBook (still have >problems linking libmatroska on OSX) or my parents (slow) computer. Until that >I'll update the little things remaining in the CC Tracker. When I'll be back >home I'll have 7 days to work 24/24 on matroska on whatever is needed : >DirectShow (on the matroska side), VDubMod, Mosu Tools, TCMP plugin. > >- Spyder : As mpv2mkv is hardly needed for the moment, he will start looking at >how DirectShow works and try to help where he can. I think he can help on the >format when I'm away. And can also have a look at Mosu tools, horpfully >compiling on Windows too. > >- Christian : Keep a daily update on the progress on each side to "reassign" >prioroties when needed. > >- myFUN : well I can't say really since we don't see him often. But we need the >latest update of the DSF and the status on this code (what is missing and ideas >on how to add what is missing). If he has the time until 01/05 to help on the >DSF it will be highly appreciated. > >- Cyrius : VDubMod 1.5 integration of matroska. Altough I understand he may have >other priorities too. > >To keep everybody coordinated, I highly recommend the use of CVS for all the 5 >tasks mantioned above. > > > >Side Note : Blacksun could you see with Cytoplas ASAP why syncmail in the >Matroska CVS doesn't send the emails (even though it says it does) ??? This is >really important to avoid some errors when people update code over someone >else's code. >http://www.matroska.org > > > http://www.matroska.org From moritz at bunkus.org Thu Apr 10 11:44:43 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Thu, 10 Apr 2003 11:44:43 +0200 Subject: [matroska-devel] Re: Matroska public alpha release date : 1 st May 2003 In-Reply-To: <3E953B0D.8020909@matroska.org> References: <3E93DDF1.7000501@matroska.org> <1049881834.3e93eceaa8686@imp.free.fr> <3E953B0D.8020909@matroska.org> Message-ID: <20030410094443.GX27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From steve.lhomme at free.fr Thu Apr 10 12:21:51 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Thu, 10 Apr 2003 12:21:51 +0200 (CEST) Subject: [matroska-devel] Re: Matroska public alpha release date : 1 st May 2003 In-Reply-To: <3E953B0D.8020909@matroska.org> References: <3E93DDF1.7000501@matroska.org> <1049881834.3e93eceaa8686@imp.free.fr> <3E953B0D.8020909@matroska.org> Message-ID: <1049970111.3e9545bf9319a@imp.free.fr> Here is what I plan to do : - tonight : add the debugging system of matroska in the DShow Parser, it might help us find bugs faster. Explain how to use this debug system here. Try to implement a clean TimecodeScale handling in the library. Then I'll be off for vacation. In this time I can only develop on the iBook (I'll have to patch the code, not to use std::wstring for the moment) and on a K6-300. The only connection to the net will be with RTC (too expensive to be connected for a long time). I'll take what is needed to develop on both platforms. So I may be able to work on the DSF as well. I would also like to get my hands on what is existing for VDubMod (1.4.x base and 1.5.x base) so that I can work on it. Could Cyrius of Belgabor make a nice zip package with all the required sources ? I don't know exactly what is possible right now. Is it possible to add more than one audio track to a movie ? The VDub support is as important as the DSF otherwise noone will be able to use matroska. So I'll put as much (if not more) time there as on the DSF... On the DSF I can only make sure the Matroska support is OK and help with possible problems (like the lacing issue). I still have to study the data flow of the DSF (init, open, config, read/write, close). Could anybody make a small picture explaining this ? With the possible events we have to handle (if any) ? Is there a good source on the net about all these DirectShow things ? Something simple that I could understand, and hopefully print. So basically whenever you need help about matroska on these front, I'll (try to) be there ! For the rest, I'll have to learn while working, so it will be slower But I'll make my best. I'll be back home on the 21/04 and can work full time on matroska. So from there I hope I have learned enough and can boost development for the release date... Remember that we have to be specs compliant and be forward compatible, above all things ! http://www.matroska.org From Paul at msn.com Fri Apr 11 05:52:27 2003 From: Paul at msn.com (Pamel) Date: Thu, 10 Apr 2003 22:52:27 -0500 Subject: [matroska-devel] Re: Matroska public alpha release date : 1 st May 2003 References: <3E93DDF1.7000501@matroska.org> <1049881834.3e93eceaa8686@imp.free.fr> <3E953B0D.8020909@matroska.org> Message-ID: "Christian HJ Wiesner" wrote > > A. Direct Show parser > > 1. DirectShow parser : XviD + MP3 > 2. DirectShow parser : DivX + MP3 > 3. DirectShow parser : XviD + Vorbis > 4. DirectShow parser : DivX + Vorbis > 5. DirectShow parser : XviD + AC3 > 6. DirectShow parser : DivX + AC3 > Until the release on May 1st we need to have 1 - 6 at the very minimum !!! I don't know if ya'll can get 3+4 done within 21 days, but everything else is totaly doable. Vorbis will just be the tricky one. One thing that I kept wanting to mention while I was at work lurking is to make sure to make the video stream selectable somehow in the filter. I realize that you said that you can't change the video size on the fly, but what about the video stream? If it was the same resolution, would that work fine? Or would it also have to be the same codec? I mention this just so that people keep it in mind when doing the architecture. It is not vital at all when doing the big release, it just has to be possible to be added in the future. I think that makes 3 streams that all need to be selectable. Audio, video, and overlay (for subtitles) streams all need to be selectable eventually. Pamel http://www.matroska.org From chris at matroska.org Wed Apr 9 14:41:03 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Wed, 09 Apr 2003 14:41:03 +0200 Subject: [matroska-devel] [Fwd: Re: kaxdemux.dll] Message-ID: <3E9414DF.1020909@matroska.org> FYI : Ingo Ralf Blum's advice on how to adress the problem with laced blocks from the DirectShow parser -------- Original Message -------- Subject: Re: kaxdemux.dll Date: Sat, 5 Apr 2003 12:35:57 +0200 From: Ingo Ralf Blum To: Christian HJ Wiesner , Steve Lhomme CC: , "Ludovic 'BlackSun' Vialle" References: <3E7E372B.2080700 at corecodec.com> <3E8B4675.5000002 at matroska.org> <1049295348.3e8af9f43f6c6 at imp.free.fr> Hallo all, > Apparently that doesn't solve the lacing problem (that has no timecode). At > least it may solve an existing problem in the filter :) > > Ingo, I remember we talked about that a long time ago and the conclusion was > that there wouldn't be any problems with lacing in DirectShow, right ? Could you > explain us (at least myFUN who will understand better) again ? > > Also for my understanding of the DSF... Does the filter push the frames in DS or > DS pulls them ? the DirectShow demultiplexer usually pushes the samples. If it isn't able to determine the timestamps it simply can omit them until the next stamp is read from the file. The decompressor then can cache the data until a valid time stamp is received and then decompresss all data at once. If the decompressor isn't able to handle such caching it probably throws out the uncompressed audio data without any stamps. This might confuse the audio renderer. If so - and this has to be tested - one could write a filter which does the caching and stamping for unstamped data. A good way to do this is to give this filter a higher merit value than the audio renderers, so that it is inserted automatically before the renderer while automatically building a graph. Regards, Ingo http://www.matroska.org From chris at matroska.org Wed Apr 9 15:42:07 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Wed, 09 Apr 2003 15:42:07 +0200 Subject: [matroska-devel] First commit to matroska DShow parser ( kaxdemux.dll ) from Toff from the TCMP dev team :) Message-ID: <3E94232F.5050203@matroska.org> Hi, just to inform you that Toff has commited an addition to myFUN's DShow filter today :) ! His patch helps to identify matroska files even if the extension was screwed and then make sure the matroska parser is being inserted into the graph. Thanks Toff, thanks so much !! Christian http://www.matroska.org From chris at matroska.org Wed Apr 9 16:37:37 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Wed, 09 Apr 2003 16:37:37 +0200 Subject: [matroska-devel] [Fwd: Re: kaxdemux.dll] Message-ID: <3E943031.1080007@matroska.org> FYI ( 2nd sending ) : Ingo Ralf Blum's advice on how to adress the problem with laced blocks from the DirectShow parser -------- Original Message -------- Subject: Re: kaxdemux.dll Date: Sat, 5 Apr 2003 12:35:57 +0200 From: Ingo Ralf Blum To: Christian HJ Wiesner , Steve Lhomme CC: , "Ludovic 'BlackSun' Vialle" References: <3E7E372B.2080700 at corecodec.com> <3E8B4675.5000002 at matroska.org> <1049295348.3e8af9f43f6c6 at imp.free.fr> Hallo all, > Apparently that doesn't solve the lacing problem (that has no timecode). At > least it may solve an existing problem in the filter :) > > Ingo, I remember we talked about that a long time ago and the conclusion was > that there wouldn't be any problems with lacing in DirectShow, right ? Could you > explain us (at least myFUN who will understand better) again ? > > Also for my understanding of the DSF... Does the filter push the frames in DS or > DS pulls them ? the DirectShow demultiplexer usually pushes the samples. If it isn't able to determine the timestamps it simply can omit them until the next stamp is read from the file. The decompressor then can cache the data until a valid time stamp is received and then decompresss all data at once. If the decompressor isn't able to handle such caching it probably throws out the uncompressed audio data without any stamps. This might confuse the audio renderer. If so - and this has to be tested - one could write a filter which does the caching and stamping for unstamped data. A good way to do this is to give this filter a higher merit value than the audio renderers, so that it is inserted automatically before the renderer while automatically building a graph. Regards, Ingo http://www.matroska.org From srirampondy at rediffmail.com Fri Apr 11 15:09:31 2003 From: srirampondy at rediffmail.com (Sriram Srinivasan) Date: 11 Apr 2003 13:09:31 -0000 Subject: [matroska-devel] Re: matroska : MPEG1/2 video streams muxing Message-ID: <20030411130931.18543.qmail@mailweb33.rediffmail.com> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From chris at matroska.org Tue Apr 15 13:30:40 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Tue, 15 Apr 2003 06:30:40 -0500 Subject: [matroska-devel] Re: matroska : MPEG1/2 video streams muxing In-Reply-To: <20030411130931.18543.qmail@mailweb33.rediffmail.com> References: <20030411130931.18543.qmail@mailweb33.rediffmail.com> Message-ID: <3E9BED60.3070304@matroska.org> Sriram Srinivasan wrote: >Hi Chris >Thanks for the info. I shall go thro it. I had mailed you twice >asking you about how I can help you, with the same. Please do send >me a small info on what will be my responsibility. From next week >I will be a little free. I can spend my time on the project. >thanks >Sriram > Hi Sririam, i am in the US for a trade show currently ( Chicago ) and cant answer my email for several days sometimes, depending on the evening shedule, sorry for that. Is there any chance that you could join us on irc.corecodec.com #matroska ? If you go to the 'contacts' page on our homepage ( http://www.matroska.org ) you will find links to some IRC clients you could use, in case you are not used to be on IRC channels. I'd estimate it to be essential that we first talk to each other and find out more precisely where your interests are before we assign a job to you. As spyder is currently helping with the DirectShow parser ( thats the most important thing until we release on 1st May ) there is no work being done on MPV2MKV , the tool to be able to mux MPEG 1/2 video into matroska files. I estimate you had a look at the matroska CVS before ( anonymous CVS checkout is working on http://corecodec.org/projects/matroska , we can teach you through how to obtain the sources if we meet on IRC ) and you could look at spyder's existing MPA2MKA code ( to mux MP 2/3 audio into matroska ) to get a feeling of how its done. But please, this is just an idea of what could be done, we have a couple of other things you could look at, like helping Jory 'jcsston' Stone with muxing subtitles into matroska, etc. Please install an IRC client and join us any time on irc.corecodec.com #matroska , we are looking forward to meeting you there. Regards Christian http://www.matroska.org From Paul at msn.com Sat Apr 12 18:38:52 2003 From: Paul at msn.com (Pamel) Date: Sat, 12 Apr 2003 11:38:52 -0500 Subject: [matroska-devel] BlockDuration Message-ID: I honestly thought this had been added months ago because we had talked about it. The duration of the frame can be estimated by using the timecode of the next block. This will work for every block the last one, which is a problem. If you append two files, you need to know how much of a delay there will be between the last frame of the first segment and the first frame of the second segment. Because of this I would recommend only using the BlockDuration element for the last block of each track. Pamel http://www.matroska.org From spyder482 at yahoo.com Sun Apr 13 16:51:21 2003 From: spyder482 at yahoo.com (John Cannon) Date: Sun, 13 Apr 2003 09:51:21 -0500 Subject: [matroska-devel] Bug in libebml found Message-ID: Steve, I want your opinion on this. I seem to have found a fix but I am not quite sure if it's a valid way of doing it. At the end of a file, the filter would have an assertion failure. The source of this problem is a call to EbmlStream::SkipData() at line 988 of kaxdemux.cpp. The actual problem lies within the libebml code however. As you know, the previously mentioned method calls EbmlElement::SkipData() which has a severe problem in it's code. At line 435 of EbmlElement.cpp the variable bUpperElement is never assigned thus creating an assertion failure when it reaches line 441. The assertion lies within some other code but the value of bUpperElement is random at all times in my debugging. The fix that I found for it was to change line 435 from: int bUpperElement; to: int bUpperElement = 0; I am not sure of the inner workings of libebml but this fixed the problem for me as the assertion requires the value to be 0 and not a random number like -8765357 :) Spyder http://www.matroska.org From steve.lhomme at free.fr Sun Apr 13 22:55:48 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sun, 13 Apr 2003 22:55:48 +0200 Subject: [matroska-devel] Re: Bug in libebml found In-Reply-To: References: Message-ID: <3E99CED4.5020504@free.fr> John Cannon wrote: > Steve, I want your opinion on this. I seem to have found a fix but I am not > quite sure if it's a valid way of doing it. At the end of a file, the > filter would have an assertion failure. The source of this problem is a > call to EbmlStream::SkipData() at line 988 of kaxdemux.cpp. The actual > problem lies within the libebml code however. As you know, the previously > mentioned method calls EbmlElement::SkipData() which has a severe problem in > it's code. At line 435 of EbmlElement.cpp the variable bUpperElement is > never assigned thus creating an assertion failure when it reaches line 441. > The assertion lies within some other code but the value of bUpperElement is > random at all times in my debugging. The fix that I found for it was to > change line 435 from: > > int bUpperElement; > > to: > > int bUpperElement = 0; > > I am not sure of the inner workings of libebml but this fixed the problem > for me as the assertion requires the value to be 0 and not a random number > like -8765357 :) You're right, this is a bug that you corrected. I'll upload a version to CVS with the correction (bUpperElement is only needed at one level of call). http://www.matroska.org From steve.lhomme at free.fr Sun Apr 13 20:16:23 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sun, 13 Apr 2003 20:16:23 +0200 (CEST) Subject: [matroska-devel] CVS Message-ID: <1050257783.3e99a97781649@imp.free.fr> As TortoiseCVS refuses to work for me, would anybody put the latest CVS in a zip file somewhere for me ? Thank you http://www.matroska.org From blacksun at corecodec.com Sun Apr 13 20:51:56 2003 From: blacksun at corecodec.com (Ludovic "BlackSun" Vialle) Date: Sun, 13 Apr 2003 20:51:56 +0200 Subject: [matroska-devel] Re: CVS In-Reply-To: <1050257783.3e99a97781649@imp.free.fr> References: <1050257783.3e99a97781649@imp.free.fr> Message-ID: Steve Lhomme wrote: > As TortoiseCVS refuses to work for me, would anybody put the latest CVS in a > zip file somewhere for me ? Thank you > http://www.matroska.org > you may use http://corecodec.org/project/admin/editpackages.php?group_id=20 release the packages, download them and remove them http://www.matroska.org From steve.lhomme at free.fr Sun Apr 13 22:54:35 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sun, 13 Apr 2003 22:54:35 +0200 Subject: [matroska-devel] Re: CVS In-Reply-To: References: <1050257783.3e99a97781649@imp.free.fr> Message-ID: <3E99CE8B.7000504@free.fr> Ludovic "BlackSun" Vialle wrote: > Steve Lhomme wrote: > >>As TortoiseCVS refuses to work for me, would anybody put the latest CVS in a >>zip file somewhere for me ? Thank you >>http://www.matroska.org >> > > > you may use http://corecodec.org/project/admin/editpackages.php?group_id=20 > > release the packages, download them and remove them I'll try the CVS on the iBook (at least this is a decent OS with SSH and CVS as part of the system ;). http://www.matroska.org From christophe.paris at free.fr Mon Apr 14 00:32:11 2003 From: christophe.paris at free.fr (Christophe PARIS) Date: Mon, 14 Apr 2003 00:32:11 +0200 Subject: [matroska-devel] Matroska DS filter Message-ID: <3E99E56B.4070204@free.fr> Hi myFUN, Here is what we discovered today working on the DSF : // --------------------------- In CKaxDemuxFilter::CStreamer::ThreadProc() too much data were copied to the sample buffer, so there was garbage after mp3 frames and it's why audio file only didn't played Original code : memcpy(pSampData, pBlock->GetBuffer(n).Buffer(), pBlock->GetBuffer(n).Size()); pSample->SetActualDataLength(pBlock->GetSize()); New code : memcpy(pSampData, pBlock->GetBuffer(n).Buffer(), pBlock->GetBuffer(n).Size()); pSample->SetActualDataLength(pBlock->GetBuffer(n).Size()); // pBlock->GetSize() include the block header in the size // --------------------------- There was a problem with mka file created by mpa2mka or matroskadub, one of the both was wrong !! The track index was set to 1 in mpa2mka and to 0 in matroskadub. Changing this to 0 is more compatible with the DSF filter. So we changed mpa2mka. // --------------------------- In CKaxDemuxFilter::DeliverSample we discovered that it's better to not set timestamps than to set wrong timestamps. So here is some code that allow to play video + audio files, it's far from perfect but it show that we really have a problem with timestamps, and at least we can see video playing (this is not the real solution) : HRESULT CKaxDemuxFilter::DeliverSample(int nTrack, IMediaSample *pSample, uint32 timecode, int nSample) { CAutoLock StreamLock(&m_StreamLock); REFERENCE_TIME tStart, tEnd; uint32 tTrack = nTrack; POSITION pos = m_OutPins.GetHeadPosition(); CKaxOutPin *pPin; while (nTrack--) pPin = m_OutPins.GetNext(pos); if (pPin == NULL) return E_FAIL; if (!pPin->IsConnected()) return E_FAIL; /* code removed here */ // set the stream- and mediatimes tTrack = timecode - pPin->GetTrackTime(); pPin->SetTrackTime(timecode); // 1. stream time pPin->GetStrTime(&tStart); tStart += tTrack * m_TimeScale; pPin->SetStrTime(&tStart); tStart += nSample << 1; if (tTrack == 2) tStart = 0; tEnd = tStart; pSample->SetTime(&tStart, &tEnd); // 2. media time pPin->GetMediaTime(&tStart); tStart += tTrack * m_TimeScale; pPin->SetMediaTime(&tStart); tStart += nSample << 1; if (tTrack == 2) tStart = 0; tEnd = tStart; pSample->SetMediaTime(&tStart, &tEnd); return pPin->Deliver(pSample); } Audio timestamps are set to 0, cause it's the audio renderer that is used as a clock, so timestamps are not mandatory for it, playing at a defined frequency is a good way for him to calculate the timestamps he need. I think that this is only working if video and audio are originaly synched. Btw this is only a hack, DS seems to prefer to have no timestamps at all that wrong timestamps ;-) // --------------------------- So what we get ? hmm, audio only file (with mp3) are playing well until you reach the end. audio+video is still jerky but you can nearly watch the movie ;-) Best regards Toff http://www.matroska.org From steve.lhomme at free.fr Mon Apr 14 15:12:07 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Mon, 14 Apr 2003 15:12:07 +0200 Subject: [matroska-devel] Update tools Message-ID: <3E9AB3A7.1020300@free.fr> Hi everyone, I have made the necessary changes in CVS (I hope it is complete compared to my local dir) to reflect the latest changes in the specs : - BlockDuration addition to be DirectShow friendly (should be used at least on the last Block of each track) - More consistent timecode handling. There is still some things to be doen, but in general the user only "see" the global timecodes in 1ns. - Track Numbers can be now as big as 0X4000 which is far enough for the moment and the distant future (the specs allow more). Because these changes involve compatibility issues with the existing files/tools I ask you to : - update your tools with the latest CVS code - update your sample files with new ones built with the latest CVS On a side not, if you find bugs/corrections (like in the DSF) please upload the code on CVS ! So that everyone doesn't have to recode them locally everytime. An email is sent on matroska-cvs so everyone can be informed of it quickly. cya later http://www.matroska.org From moritz at bunkus.org Mon Apr 14 20:27:32 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Mon, 14 Apr 2003 20:27:32 +0200 Subject: [matroska-devel] Re: Update tools In-Reply-To: <3E9AB3A7.1020300@free.fr> References: <3E9AB3A7.1020300@free.fr> Message-ID: <20030414182732.GH27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From chris at matroska.org Tue Apr 15 14:03:17 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Tue, 15 Apr 2003 07:03:17 -0500 Subject: [matroska-devel] C wrapper for the C++ library Message-ID: <3E9BF505.6030100@matroska.org> Gentlemen, i wonder if there was any chance to look at the C wrapper for the C++ lib ? Be patient with me if i am requesting nonsense now, you know i dont have a clue about coding, but as the work for the porting of the complete library to C seems to be stucked somewhere on animesh' HDD ( it would be soo nice from him to share his work with us, how ever unfinished it was ), shouldnt we change strategies now and look at a C wrapper for the C++ lib instead now ? What you think ? Regards Christian http://www.matroska.org From moritz at bunkus.org Tue Apr 15 14:17:04 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Tue, 15 Apr 2003 14:17:04 +0200 Subject: [matroska-devel] Re: C wrapper for the C++ library In-Reply-To: <3E9BF505.6030100@matroska.org> References: <3E9BF505.6030100@matroska.org> Message-ID: <20030415121704.GJ27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From chris at matroska.org Fri Apr 18 03:26:04 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Thu, 17 Apr 2003 20:26:04 -0500 Subject: [matroska-devel] Re: C wrapper for the C++ library In-Reply-To: <20030415121704.GJ27965@bunkus.org> References: <3E9BF505.6030100@matroska.org> <20030415121704.GJ27965@bunkus.org> Message-ID: <3E9F542C.4090608@matroska.org> Moritz Bunkus wrote: >Hi. > >One of the drawbacks of C++ is that there are a lot of compilers that >are not completely compatible to each other regarding the C++ source >code. E.g. for the current implementation I have to test whether or not >the current gcc version is 2.9x or 3.x and handle some things a bnit >differently. SO writing only a wrapper would not solve these problems. > >A pure C implementation however would not suffer from these things, so >it would be easier to port that version/use it with different >compierls. One may think of Xiph whatever one wants to, but their C code >is highly portable. > >Therefore a C wrapper wouldn't gain us much, I'm afraid. > But it would be better than having to use the C++ lib and the C++ API ? Am i wrong ? http://www.matroska.org From Paul at msn.com Wed Apr 16 07:10:09 2003 From: Paul at msn.com (Pamel) Date: Wed, 16 Apr 2003 00:10:09 -0500 Subject: [matroska-devel] MXF Tags Message-ID: Bruce, My name is Paul and I have been put in charge of creating the list of information tags(metadata) supported by Matroska. I was curious what kind of system MXF used to see if there was anything that we could use. Because I am working specificaly on tags, I did not look to deeply into how MXF works. The list of tags I found were here: http://www.ist-nuggets.tv/mxf/parked%20for%20Trial%20Publication/S380M-mxf-D MS1-20030331.pdf starting on page 8. What I am most interested is what you seem to call "Finitely Durable Metadata". These would be akin to ID3 tags. However, the tags that I see there seem to be quite extensive, and what most people would refer to as "overkill". Is there a different place that I should refer to? Our tagging system is somewhat expansive because of a goal to support all existing tags in formats currently available. Most of the tags we support will be coming from ID3v2.4, Windows Media Player 9, and Exteneded INFO. More information about these can be found here: http://www.id3.org/develop.html http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwmt/html/ wm_metadata_usage.asp http://kibus1.narod.ru/sof/abcavi/infotags.htm I am curious if the list of metadata tags that you use are specificaly selected for compatability with already defined AAF metadata units, or if you simply selected them on your own. I glanced through some of the AAF documentation, but I was unable to find a list of tags defined specificaly in AAF, but rather some scattered tags defined, and the way to define your own metadata units. Is there a list of predefined metadata units that we could look at to see what else we NEED to support to start some AAF compliancy? That actually leads to my next question of what is required to have this compatability? Matroska doesn't have a way to support all of the possible metadata by track segments in its structure, unless we defined a track for storing that data in. It looks like that is the way that you are doing it, and we may be able to simply copy that DM Track design strait over. However, I am not sure about the compatability. The documents show a Timecode Track also, which is very different from how we align data. We simply attach a timecode to each block of data for each track individualy. Thank you for any answers you can give me. Pamel http://www.matroska.org From chris at matroska.org Thu Apr 17 06:58:56 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Wed, 16 Apr 2003 23:58:56 -0500 Subject: [matroska-devel] Re: Matroska, DirectShow, Cabbages and Kings :) In-Reply-To: <000001c30483$3b8c4060$7124fea9@flicker> References: <000001c30483$3b8c4060$7124fea9@flicker> Message-ID: <3E9E3490.5000107@matroska.org> Igor, thanks for your offer, i am currently on a bussiness trip in the US and forwarding your email to the mailing list and the guys who are in charge of the filter. If you know how to use CVS ( WinCVS, TortoiseCVS ) you can obtain the latest sourcecode of our DShow parser from there and make some tests, however i recommend you join our IRC channel on irc.corecodec.dom #matroska and talk to the guys who are actually developing it ( Toff, myFUN, Blacksun, Cyrius ) about how you could help best ... i am sure you can help us, especially if you have a background in DirectShow already, and your help was very much appreciated. I love the idea about a Vegas video plugin, didnt know their API/SDK was open for doing that, not to talk about Adobe Premiere and Ulead. If you dont feel like contributing to the DShow filter you could maybe still look into those plugins ? We certainly could help you with that, explaining to you how libmatroska would work, but after May 1st as until then we are all busy getting the release done smoothly. Regards Christian Igor-Hotmail wrote: > Hello, Chris! > > I?ve read your announcement on sourceforge.net regarding DirectShow > programmers for Matroska project. I was very impressed with Matroska > (really, really!) and would be glad to help. Have been working 3+ > years with DirectShow by now, but as to Matroska itself ? have to > admit that I am not familiar with the stuff very well yet, so some > learning curve will be inevitable, is it acceptable? Also, there is > another thing I want to let you know from the very beginning: although > I was truly inspired by Matroska project and want to participate, I > won?t be able to contribute too much time, so if you expect somebody > capable of working several hours a day ? you need another man J > > By ?DirectShow parser? you mean source filter, right? Do you have any > plans for the Matroska dump/renderer filter as well? > > Cheers, > > Igor Kholodov. > > P.S. > > If you already have somebody for DirectShow filters, may I suggest > another couple of ideas? I would be glad to take care of them if there > is nothing more urgent? > > 1. AVI custom handler [or AVI API wrapper] for matroska format. > Although Matroska?s ?functionality? supersedes AVI, AVI API is > still very popular and is widely used, e.g. in TMPGEncoder, > Procoder, earlier versions of CinemaCraft to name just a few > MPEG encoders. Providing access to Matroska files via AVI API > will still provide a good part of Matroska functionality [in > some cases ? all of it] while at the same time making it > ?compatible? with fairly popular multimedia applications. It > will help to ?boost? Matroska popularity > 2. AvySynth plug-in for Matroska format. Similar to 1 but providing > access to underlying Matroska file content in a little different > way = trough AviSynth > 3. I also think that it would be interesting to write a Matroska > file format plug-in for Vegas Video ? that is my favorite video > non-linear editor. The idea is to render Vegas video projects > into Matroska format file. > 4. Same as 3 [from ?marketing? point of view - probably to even > more extent] could be applied not only to Vegas, but also to > Adobe Premiere and ULead MediaStudio, but minus here is that > they are not my favorite video editors J > > P.P.S. > > How do you manage to have so much time to participate in so many > open-source projects? I am envious of you J > http://www.matroska.org From iholodov at hotmail.com Thu Apr 17 18:18:42 2003 From: iholodov at hotmail.com (Igor Kholodov) Date: Thu, 17 Apr 2003 12:18:42 -0400 Subject: [matroska-devel] help Message-ID: help http://www.matroska.org From moritz at bunkus.org Thu Apr 17 21:46:10 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Thu, 17 Apr 2003 21:46:10 +0200 Subject: [matroska-devel] Cue data Message-ID: <20030417194610.GN27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From moritz at bunkus.org Sat Apr 19 01:02:38 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sat, 19 Apr 2003 01:02:38 +0200 Subject: [matroska-devel] Re: Cue data In-Reply-To: <20030417194610.GN27965@bunkus.org> References: <20030417194610.GN27965@bunkus.org> Message-ID: <20030418230238.GS27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From moritz at bunkus.org Sat Apr 19 01:17:07 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sat, 19 Apr 2003 01:17:07 +0200 Subject: [matroska-devel] Re: Cue data In-Reply-To: <20030418230238.GS27965@bunkus.org> References: <20030417194610.GN27965@bunkus.org> <20030418230238.GS27965@bunkus.org> Message-ID: <20030418231706.GT27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From steve.lhomme at free.fr Sat Apr 19 08:52:42 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sat, 19 Apr 2003 08:52:42 +0200 Subject: [matroska-devel] Re: Cue data In-Reply-To: <20030418231706.GT27965@bunkus.org> References: <20030417194610.GN27965@bunkus.org> <20030418230238.GS27965@bunkus.org> <20030418231706.GT27965@bunkus.org> Message-ID: <3EA0F23A.3000700@free.fr> > I'm at my parent's at the moment and working/writing emails via SSH on > my server at home in Braunschweig so I cannot investigate further until > Sunday evening (CET). Modern computing :) I think there might/must be a problem with the Cue data, because some data should be scaled. But I don't think I added the temporary 1000000 fixed timecodescale there. I'll add a fix ASAP. Probably on monday evening. If anybody want the to make the changes where necessary, feel free. (remember that the timecode in the Block is not scaled and get scaled via the parent) http://www.matroska.org From chris at matroska.org Fri Apr 18 03:59:45 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Thu, 17 Apr 2003 20:59:45 -0500 Subject: [matroska-devel] Matroska DirectShow parser filter working without errors, and even with Vorbis audio Message-ID: <3E9F5C11.8020907@matroska.org> Ladies and Gentlemen, i do have the great pleasure to announce that our friends from the TCMP dev team, Toff and Blacksun, with the support from Cyrius, were finally successful in debugging the Matroska DirectShow parser filter. Its working fine now ( no stuttering/buffer underruns ) with DivX + MP3 XviD + MP3 DivX + Vorbis XviD + Vorbis All my thanks goes to you guys, where would we be without you. As a result of that we can now look forward to May 1st, the official public release date of all available tools. I'd not be surprised if the filter will make some more progress until then, like allowing to switch between different audio tracks, or offering first subtitles support. We'll see what the guys will come up with until then. I am happy and excited about this huge step forward. You guys are great !! Christian http://www.matroska.org From christophe.paris at free.fr Sat Apr 19 14:27:20 2003 From: christophe.paris at free.fr (Christophe PARIS) Date: Sat, 19 Apr 2003 14:27:20 +0200 Subject: [matroska-devel] Re: Matroska DirectShow parser filter working without errors, and even with Vorbis audio In-Reply-To: <3E9F5C11.8020907@matroska.org> References: <3E9F5C11.8020907@matroska.org> Message-ID: Hi Ladies and Gentlemen, Christian you can add AC3 and PCM16 to your list. And now the filter report duration & position to the media player also thanks to the preliminary IMediaSeeking interface support. Regards Toff Christian HJ Wiesner wrote: > > Ladies and Gentlemen, > > i do have the great pleasure to announce that our friends from the TCMP > dev team, Toff and Blacksun, with the support from Cyrius, were finally > successful in debugging the Matroska DirectShow parser filter. Its > working fine now ( no stuttering/buffer underruns ) with > > DivX + MP3 > XviD + MP3 > DivX + Vorbis > XviD + Vorbis > > All my thanks goes to you guys, where would we be without you. > > As a result of that we can now look forward to May 1st, the official > public release date of all available tools. I'd not be surprised if the > filter will make some more progress until then, like allowing to switch > between different audio tracks, or offering first subtitles support. > We'll see what the guys will come up with until then. > > I am happy and excited about this huge step forward. You guys are great !! > > Christian http://www.matroska.org From moritz at bunkus.org Sat Apr 19 18:33:07 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sat, 19 Apr 2003 18:33:07 +0200 Subject: [matroska-devel] Re: Matroska DirectShow parser filter working without errors, and even with Vorbis audio In-Reply-To: References: <3E9F5C11.8020907@matroska.org> Message-ID: <20030419163307.GV27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From spyder482 at yahoo.com Fri Apr 18 19:31:03 2003 From: spyder482 at yahoo.com (John Cannon) Date: Fri, 18 Apr 2003 12:31:03 -0500 Subject: [matroska-devel] Help from Nic Message-ID: Here's the reply I got from Nic when I asked him about helping with AAC and DShow: Hi spyder, If you want any help stopping the crashing of mkv files, then put the source of the dshow filter into cvs and ill have a look. Ive become quite a veteran of fixing dshow crashes have you checked out borg software's one ? There AAC filter isn't as good as mine (but I dont know why). But the source is neat and there to be fixed. Out of interest, if you mux a VBR MP3 thats had a WAV header attached, and then mux it into MKV file as a wav file, how well does it play back? If it plays back well, then the same can be done with AAC. If not then you'll need to make an AAC parser (that takes the individual frames out of the AAC file and mux it "properly" ) And I will drop by the channel soon, I have my gf here at present, but will be free easter sunday & monday. (Im quite interested in making my re-write of dvd2avi support mkv, but I dont know how difficult or easy that will be compared to using something like the AVI API (ill have to look at the CVS code). Maybe ill just make it so it makes a script for MatroskaDUB (I dont know yet, only just really thought about it ) Sorry for the hurried PM, feel free to share this with anyone you think might find it useful. Take Care Spyder, -Nic begin 666 wink.gif M1TE&.#EA#P`/`-4_`/_XJ__XHO#HD/_XH-++?O_WF_'JD=_8AM7/@-W6A/_W MG>[GC_WUF,?!=__[TO_\V?_\W/_YL/_XI__\U<[(?/_YM?_ZN__[ROKREO_Y ML>KCC/_[Q__ZO>;?BO_[SO_ZO-[7A?OSEO_\U__[R?_XI?3MD__[QLK#>>GB MC/[VF/_\V/_[T?;ND__YM/_[R__WF?_YK\O%>O_\W<*\=?_ZP/OSE^':A]G2 M at OSTE__ZO_GQE>/P=#12O[VF/OSE__\V/_YM/_[QO_ZO/_ZP/_YK^GBC/_[R?_\T__WF>':A__ZO]G2 M at OSTE_GQE>/UMT0=!3=&1;;!1 @*',C( ,:E[ S]!)QM0_00`[ ` end http://www.matroska.org From chris at wiesneronline.net Fri Apr 18 20:03:09 2003 From: chris at wiesneronline.net (Christian HJ Wiesner) Date: Fri, 18 Apr 2003 13:03:09 -0500 Subject: [matroska-devel] Re: Help from Nic In-Reply-To: References: Message-ID: <3EA03DDD.1000506@wiesneronline.net> cc : matroska-devel at freelists dot org Hi there Nic ! Glad to see you're alive. We made pretty good progress lately as spyder was pointing out already in the PM to you, we're looking forward to May 1st when we plan to release everything we'll have by that time. The filter is wokring but has a couple of bugs, its in matroska CVS on http://corecodec.org/projects/matroska ( we will abandone the sf.net site soon as they had big problems with CVS lately ). Anonymous access works, but just dont forget to use :ext: instaed of :pserver: . John Cannon wrote: >Here's the reply I got from Nic when I asked him about helping with AAC and >DShow: > >Hi spyder, > >If you want any help stopping the crashing of mkv files, then put the source >of the dshow filter into cvs and ill have a look. Ive become quite a veteran >of fixing dshow crashes > >have you checked out borg software's one ? There AAC filter isn't as good as >mine (but I dont know why). But the source is neat and there to be fixed. > > AFAIK their filter will only work if the AAC was muxed into their own container, being called MPX . But maybe we could 'borrow' some code from them to make a general use filter, but we also plan to check if maybe your crappy beta will work fine from our parser filter ( in ACM compatibility mode ). But we are checking right now if maybe muxing AAC into matroska will work already, using your AAC2WAV, and then we will try to playback using your crappy beta filter ... Toff is on this now ( spyder made us curious ;) ) >Out of interest, if you mux a VBR MP3 thats had a WAV header attached, and >then mux it into MKV file as a wav file, how well does it play back? If it >plays back well, then the same can be done with AAC. If not then you'll need >to make an AAC parser (that takes the individual frames out of the AAC file >and mux it "properly" ) > > Yup, works fine. As said above, we are testing with AAC right now. >And I will drop by the channel soon, I have my gf here at present, but will >be free easter sunday & monday. >(Im quite interested in making my re-write of dvd2avi support mkv, but I >dont know how difficult or easy that will be compared to using something >like the AVI API (ill have to look at the CVS code). Maybe ill just make it >so it makes a script for MatroskaDUB (I dont know yet, only just really >thought about it ) >-Nic > You're more than welcome, as always Nic ! Dont forget we are not on openprojects anymore, but on irc.corecodec.com , #matroska Christian http://www.matroska.org From moritz at bunkus.org Sat Apr 19 01:01:05 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sat, 19 Apr 2003 01:01:05 +0200 Subject: [matroska-devel] Re: Help from Nic In-Reply-To: References: Message-ID: <20030418230105.GR27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From spyder482 at yahoo.com Sat Apr 19 04:00:14 2003 From: spyder482 at yahoo.com (John Cannon) Date: Fri, 18 Apr 2003 21:00:14 -0500 Subject: [matroska-devel] Re: Help from Nic References: <20030418230105.GR27965@bunkus.org> Message-ID: > Please, please, PLEASE!! Do NOT put audio files with a wav header into > Matroska. This is broken by design, unclean, and only because > Windows/DS/whatever has servere problems with that stuff. Any audio > track with a proper ID (e.g. A_DOL_AC3 or A_MPEGLAYER3) should ONLY > contain the audio packets themselves. Relax. This is merely a proof of concept idea. I would never support it as a final solution especially since AAC should not need any WAV header data :P Spyder http://www.matroska.org From steve.lhomme at free.fr Sat Apr 19 08:48:19 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sat, 19 Apr 2003 08:48:19 +0200 Subject: [matroska-devel] Re: Help from Nic In-Reply-To: References: <20030418230105.GR27965@bunkus.org> Message-ID: <3EA0F133.5040300@free.fr> John Cannon wrote: >>Please, please, PLEASE!! Do NOT put audio files with a wav header into >>Matroska. This is broken by design, unclean, and only because >>Windows/DS/whatever has servere problems with that stuff. Any audio >>track with a proper ID (e.g. A_DOL_AC3 or A_MPEGLAYER3) should ONLY >>contain the audio packets themselves. > > > Relax. This is merely a proof of concept idea. I would never support it as > a final solution especially since AAC should not need any WAV header data :P I think there might be some misunderstanding here. Maybe Nic just wanted to know if the same data would play... For WAV compatibility, we have the A_ACM codec (or something like that) that has *all* the same informations as in a simple WAV file with any codec. So it has to be supported anyway. http://www.matroska.org From moritz at bunkus.org Sat Apr 19 18:37:52 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sat, 19 Apr 2003 18:37:52 +0200 Subject: [matroska-devel] Re: Help from Nic In-Reply-To: <3EA0F133.5040300@free.fr> References: <3EA0F133.5040300@free.fr> Message-ID: <20030419163752.GW27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From igork at tht.net Fri Apr 18 23:12:33 2003 From: igork at tht.net (igork-tht) Date: Fri, 18 Apr 2003 17:12:33 -0400 Subject: [matroska-devel] demux filter Message-ID: <000001c305ef$3e0407c0$7124fea9@flicker> Hi! Finally I've got time to have a look at the filter Did not look into details yet, so these are only my first impressions: 1. It basically works! 2. Audio playback experiences regular intermittent distortions (perhaps demux should implement IQualityControl, although reasons may be numerous) 3. No "progress bar" in the GraphEdit (of, course IMediaSeeking is not implemented yet) 4. attempt to stop the graph reproducibly hangs up GraphEdit [v9.0]. I think all of the above listed issues are known, though. Overall - VERY good job! Btw, have a question about VirtualDubMod: I am transcoding DIV3 AVI file into matroska format using VirtualDubMod and it works just fine. Then I am trying to open resulting mkv file in VirtualDubMod, and it causes crash [always after parsing is done]. The very same mkv file is playing in graphedit [using demuxer filter] just fine. Is it a known issue? What could be the reason? Igor. http://www.matroska.org From spyder at wiesneronline.net Fri Apr 18 23:36:09 2003 From: spyder at wiesneronline.net (John Cannon) Date: Fri, 18 Apr 2003 16:36:09 -0500 Subject: [matroska-devel] Re: demux filter References: <000001c305ef$3e0407c0$7124fea9@flicker> Message-ID: <001601c305f2$87a18580$1c89b141@johnc> > Btw, have a question about VirtualDubMod: > I am transcoding DIV3 AVI file into matroska format using VirtualDubMod > and it works just fine. Then I am trying to open resulting mkv file in > VirtualDubMod, and it causes crash [always after parsing is done]. The > very same mkv file is playing in graphedit [using demuxer filter] just > fine. > Is it a known issue? What could be the reason? > Igor. Heh, myabe Cyrius hasn't fixed the reading code in VDubMod yet. We recently had some changed in the API and he may not have fixed this yet. Mine doesn't crash in the same situation so maybe you can give more details about your file(audio streams, etc.) and Cyrius maybe can fix it ;) John http://www.matroska.org From moritz at bunkus.org Sun Apr 20 18:01:17 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sun, 20 Apr 2003 18:01:17 +0200 Subject: [matroska-devel] filesize comparison Message-ID: <20030420160117.GA27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From moritz at bunkus.org Sun Apr 20 18:50:19 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sun, 20 Apr 2003 18:50:19 +0200 Subject: [matroska-devel] Re: filesize comparison In-Reply-To: <20030420160117.GA27965@bunkus.org> References: <20030420160117.GA27965@bunkus.org> Message-ID: <20030420165019.GB27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From blacksun at corecodec.com Mon Apr 21 14:04:27 2003 From: blacksun at corecodec.com (Ludovic "BlackSun" Vialle) Date: Mon, 21 Apr 2003 14:04:27 +0200 Subject: [matroska-devel] Re: filesize comparison In-Reply-To: <20030420160117.GA27965@bunkus.org> References: <20030420160117.GA27965@bunkus.org> Message-ID: Nice comparison, matroska is way better than avi and ogm :D Moritz Bunkus wrote: > Hi everyone. > > After modifying my cue creation code (it's more flexible now - for each > track I can either not create an index at all, only include blocks which > contain I frames or include all blocks) I've done some file size > comparisons. Here are the results: > > I first started with a movie, 'The Transporter'. The original is an XviD > with VBR MP3 which I converted to several Matroska files: > > 734322688 The Transporter.avi > > The standard mode will be not to create cue entries for audio tracks and > only include blocks that contain I frames for video tracks which results > in... > > 729528113 The Transporter (cues for I-frames).mkv > > gain (bytes): 4794575 ( = 4.57MB) > gain (%): 0.65% > > 0.65% does not sound like a big deal, but I think that 4.57MB is quite a > nice number ;) > > Next in line is a file with cue entries for ALL video frames but not for > the audio track: > > 734305441 The Transporter (cues for ALL video frames).mkv > > gain (bytes): 17247 ;) > > Still a bit smaller than the original which I quite like. > > The last case is a file with cue entries for all frames for all > tracks. This seems quite brain damaged, but what the hell, for the sake > of completeness I tried this one as well: > > 737116933 The Transporter (cues for ALL frames).mkv > > loss (bytes): 2794245 ( = 2.66MB) > loss (%): 0.38% > > Ok, so much for a movie. Now I wanted to see how 'bad' Matroska is when > it comes to creating audio only files. Of course MP3 embedded in > Matroska will be bigger, but Vorbis in Matroska is more > interesting. Here are the results (with a maximum cluster length of > 5seconds): > > 3126224 Groove Armada - Suntoucher (quality 0).ogg > 3142978 Groove Armada - Suntoucher (quality 0).mkv > > loss (bytes): 16754 ( = 0.016MB) > loss (%): 0.54% > > 5589519 Groove Armada - Suntoucher (quality 4).ogg > 5590208 Groove Armada - Suntoucher (quality 4).mkv > > loss (bytes): 689 ( = 0.001MB) > loss (%): 0.01% > > 8000896 Groove Armada - Suntoucher (--alt-preset 160).mp3 > 8060098 Groove Armada - Suntoucher (--alt-preset 160).mkv > > loss (bytes): 59202 ( = 0.056MB) > loss (%): 0.74% > > So it looks like that Matroska is as good as Ogg at middle bitrates > while it's definitly 'worse' at very low bitrates. But hey - that's what > Ogg is optimized for. > > All in all I'm pretty happy with the results. Of course they cannot be > generalized with such few samples. But it should show the direction that > Matroska files will take - which is video and audio, not only audio. My > summary is "yeah! go get 'em!" :) > http://www.matroska.org From moritz at bunkus.org Sun Apr 20 21:54:25 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sun, 20 Apr 2003 21:54:25 +0200 Subject: [matroska-devel] another bug? with references Message-ID: <20030420195424.GC27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From moritz at bunkus.org Mon Apr 21 11:01:06 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Mon, 21 Apr 2003 11:01:06 +0200 Subject: [matroska-devel] state of mkvtoolnix Message-ID: <20030421090105.GD27965@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From steve.lhomme at free.fr Mon Apr 21 14:48:44 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Mon, 21 Apr 2003 14:48:44 +0200 Subject: [matroska-devel] Re: state of mkvtoolnix In-Reply-To: <20030421090105.GD27965@bunkus.org> References: <20030421090105.GD27965@bunkus.org> Message-ID: <3EA3E8AC.1060104@free.fr> Moritz Bunkus wrote: > Hi guys. > > I thought I'd update you on the state of mkvtoolnix and the mplayer > demuxer patch now that the release date is close. > > I have to say I'm quite happy with the state that mkvtoolnix is > in. mkvinfo is in pretty good shape and adding support for any missing > element is really easy. So far i can show each element that I've > encountered so far in my own test files and Cyrius' test files and even > some more. It has proven itself priceless because it is my primary > debugging tool which enabled me to find bugs both in mkvmerge and in > libmatroska itself (no disrespect, Steve, your work's great, but > everyone makes mistakes, I know that well enough from my own ;)). I know I make a lot of bugs. No offense here :) BTW, congratulation for all your tools ! It sounds very great :) Also, I'm back now and will work a lot on matroska. Even though I don't have ADSL working now (no big test files for me). http://www.matroska.org From Paul at msn.com Tue Apr 22 17:34:43 2003 From: Paul at msn.com (Pamel) Date: Tue, 22 Apr 2003 10:34:43 -0500 Subject: [matroska-devel] List of Matroska tags Message-ID: Here are the lists of tags that I'm working on. I have not sat down and filled out all of the definitions yet, but that is in the works. http://www.jkfanclub.com:81/matroskatags6.xls Here is a list of the structures for the multi entities. http://www.jkfanclub.com:81/multitags.xls And here are the types for the multi entities. http://www.jkfanclub.com:81/MultiCommercial.xls http://www.jkfanclub.com:81/MultiDates.xls http://www.jkfanclub.com:81/MultiEntities.xls http://www.jkfanclub.com:81/MultiIdentifiers.xls http://www.jkfanclub.com:81/MultiLegal.xls http://www.jkfanclub.com:81/MultiTitle.xls Feel free to comment on these. Pamel http://www.matroska.org From steve.lhomme at free.fr Fri Apr 25 15:51:58 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Fri, 25 Apr 2003 15:51:58 +0200 Subject: [matroska-devel] Feature Freeze Message-ID: <3EA93D7E.4020904@free.fr> Hi everyone, First let me thank you for all the work that has been done during the last month. The current status is very encouraging. And the promises of the format start to emerge slowly. I think 01/05/03 will be a great day for us :) To preparing our first public appearance, we need to be ready with our tools to support the minimum but support it well. With help from testers and curious people will be able to spot and correct problems/inefficiencies later. So I think we need to define a feature freeze for the code and spend a few more days on debugging the code during the remaining days to 01/05. What about sunday 27 european evening ? After this date we won't add new features (like chapters, new tags, etc) but we'll make sure the ones we support work according to the specs. We'll also have to test that files created with A can be read with B for all known tools. What should be supported to this date : - Meta Seek (added yesterday in libmatroska) - Cue entries - Track parsing - Segment + Block parsing - BlockDuration read/write - lacing read/write And the list of codecs that Christian already mentionned. (maybe with some subtitle ones) We might also add some test for reading damaged files and incomplete files. http://www.matroska.org From chris at matroska.org Fri Apr 25 18:45:28 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Fri, 25 Apr 2003 18:45:28 +0200 Subject: [matroska-devel] Re: Feature Freeze In-Reply-To: <3EA93D7E.4020904@free.fr> References: <3EA93D7E.4020904@free.fr> Message-ID: <3EA96628.8050506@matroska.org> Steve Lhomme wrote: >Hi everyone, > >First let me thank you for all the work that has been done during the >last month. The current status is very encouraging. And the promises of >the format start to emerge slowly. I think 01/05/03 will be a great day >for us :) > > I am soooo excited about this day, believe me. Not only will we prove to the people screaming 'vapourware !!' all the time that this project is successful and has a great future, but i am also curious about the users who expressed their interest in matroska, if they will accept the container and stop using OGM for matroska now. Of course, i guess i could enjoy the situation much more if little Iris was better, but maybe i can give some good news here also until release day. >To preparing our first public appearance, we need to be ready with our >tools to support the minimum but support it well. With help from testers >and curious people will be able to spot and correct >problems/inefficiencies later. > >So I think we need to define a feature freeze for the code and spend a >few more days on debugging the code during the remaining days to 01/05. >What about sunday 27 european evening ? > > No objections from my side. Freezing features makes sense to me and the date seems reasonable. Any other opinions ? >After this date we won't add new features (like chapters, new tags, etc) >but we'll make sure the ones we support work according to the specs. >We'll also have to test that files created with A can be read with B for >all known tools. > >What should be supported to this date : >- Meta Seek (added yesterday in libmatroska) >- Cue entries >- Track parsing >- Segment + Block parsing >- BlockDuration read/write >- lacing read/write >And the list of codecs that Christian already mentionned. (maybe with >some subtitle ones) > > It would be a peersonal dream of mine if matroska could come with USF support right from the start, but thats maybe not more than a dream. About the codecs we do already support, we are fine with what we have right now, being XviD DivX MP3 MP2 ( does the DSF work ? ) Vorbis >We might also add some test for reading damaged files and incomplete files. > > In principal there should be work already on a matroska file checking/repair tool, but the guy who wnated to do it ( thana ) never showed up after claiming he will look into it ... :sigh: ... maybe thats spyder's fault because he didnt make javatroska for him :P ( again, of course, who's fault should it be else ;) .. ) .... Christian http://www.matroska.org From blacksun at corecodec.com Sat Apr 26 23:44:45 2003 From: blacksun at corecodec.com (Ludovic "BlackSun" Vialle) Date: Sat, 26 Apr 2003 23:44:45 +0200 Subject: [matroska-devel] Re: Feature Freeze In-Reply-To: <3EA96628.8050506@matroska.org> References: <3EA93D7E.4020904@free.fr> <3EA96628.8050506@matroska.org> Message-ID: Christian HJ Wiesner wrote: > XviD > DivX > MP3 > MP2 ( does the DSF work ? ) > Vorbis AC3 and WAV also. I tested AC3 through my SPDIF output (ext. Dolby decoder) and it played fine :) http://www.matroska.org From Paul at msn.com Sat Apr 26 16:13:38 2003 From: Paul at msn.com (Pamel) Date: Sat, 26 Apr 2003 09:13:38 -0500 Subject: [matroska-devel] Re: Feature Freeze References: <3EA93D7E.4020904@free.fr> Message-ID: "Steve Lhomme" wrote > After this date we won't add new features (like chapters, new tags, etc) > but we'll make sure the ones we support work according to the specs. > We'll also have to test that files created with A can be read with B for > all known tools. I was thinking that maybe we shouldn't freeze the specs for the tags just yet. I just barely finished uploading the rest of the HTML files last night and I think it will take a little while for everyone to review them and make changes where necessary. They certainly aren't perfect yet, and even I had some questions that I wanted to go over. Perhaps because they are contained on a seperate HTML page it won't be such a pig deal? Pamel http://www.matroska.org From steve.lhomme at free.fr Sat Apr 26 17:47:28 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sat, 26 Apr 2003 17:47:28 +0200 Subject: [matroska-devel] Re: Feature Freeze In-Reply-To: References: <3EA93D7E.4020904@free.fr> Message-ID: <3EAAAA10.20607@free.fr> Pamel wrote: > "Steve Lhomme" wrote > >>After this date we won't add new features (like chapters, new tags, etc) >>but we'll make sure the ones we support work according to the specs. >>We'll also have to test that files created with A can be read with B for >>all known tools. > > > I was thinking that maybe we shouldn't freeze the specs for the tags just > yet. I just barely finished uploading the rest of the HTML files last night > and I think it will take a little while for everyone to review them and make > changes where necessary. They certainly aren't perfect yet, and even I had > some questions that I wanted to go over. Perhaps because they are contained > on a seperate HTML page it won't be such a pig deal? A pig deal ? Anyway don't expect too much review from outsiders... It never happened so far (or we never knew), so it's unlikely to happen in the future. http://www.matroska.org From srirampondy at rediffmail.com Sat Apr 26 13:36:40 2003 From: srirampondy at rediffmail.com (Sriram Srinivasan) Date: 26 Apr 2003 11:36:40 -0000 Subject: [matroska-devel] Re: C wrapper for the C++ library Message-ID: <20030426113640.15877.qmail@webmail25.rediffmail.com> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From moritz at bunkus.org Sat Apr 26 17:42:42 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sat, 26 Apr 2003 17:42:42 +0200 Subject: [matroska-devel] bad news :( Message-ID: <20030426154241.GF4013@bunkus.org> Hi. Now that I've got your attention... I only wanted to mention that I'm happily seeking around in my Matroska with mplayer at the moment ;) (Ok, so far it only works if a) there are cue entries for the track in question and b) there's a seek head element at the front of the file which points to those cues, but hey, I'm happy as a fish in the water right now :)) -- ==> Ciao, Mosu (Moritz Bunkus) http://www.matroska.org From steve.lhomme at free.fr Sat Apr 26 17:48:32 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sat, 26 Apr 2003 17:48:32 +0200 Subject: [matroska-devel] Re: bad news :( In-Reply-To: <20030426154241.GF4013@bunkus.org> References: <20030426154241.GF4013@bunkus.org> Message-ID: <3EAAAA50.5070303@free.fr> Moritz Bunkus wrote: > Hi. > > Now that I've got your attention... I only wanted to mention that I'm > happily seeking around in my Matroska with mplayer at the moment ;) > > (Ok, so far it only works if a) there are cue entries for the track in > question and b) there's a seek head element at the front of the file > which points to those cues, but hey, I'm happy as a fish in the water > right now :)) Fantastic !!!! BTW, MooDub also produce such files so all existing files will be like that :) http://www.matroska.org From moritz at bunkus.org Sat Apr 26 17:54:20 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Sat, 26 Apr 2003 17:54:20 +0200 Subject: [matroska-devel] Re: bad news :( In-Reply-To: <3EAAAA50.5070303@free.fr> References: <20030426154241.GF4013@bunkus.org> <3EAAAA50.5070303@free.fr> Message-ID: <20030426155420.GG4013@bunkus.org> Hi. > Fantastic !!!! :) > BTW, MooDub also produce such files so all existing files will be like > that :) Sure. However I want to add some fallbacks: 1. If there's no KaxSeekHead then the demuxer should skip over all level 1 elements and parse the cues once it finds them. 2. If there are no cue entries at all then the demuxer should at least be able to approximate the position by taking into account both the last timecode encountered and the last file position it was encountered at (that's what the Ogg/Ogm demuxer does). It's far from perfect, especially when you seek right at the beginning when there's not much data, but it's better than nothing at all ;) However I'm now at a stage in which I can definnitely include the Matroska demuxer into mplayer's main CVS branch (not into the stable 0_90 branch obviously ;)), and if nothing goes wrong I'll do that tomorrow. -- ==> Ciao, Mosu (Moritz Bunkus) http://www.matroska.org From steve.lhomme at free.fr Sat Apr 26 17:57:30 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Sat, 26 Apr 2003 17:57:30 +0200 Subject: [matroska-devel] Re: bad news :( In-Reply-To: <20030426155420.GG4013@bunkus.org> References: <20030426154241.GF4013@bunkus.org> <3EAAAA50.5070303@free.fr> <20030426155420.GG4013@bunkus.org> Message-ID: <3EAAAC6A.7000207@free.fr> Moritz Bunkus wrote: > However I'm now at a stage in which I can definnitely include the > Matroska demuxer into mplayer's main CVS branch (not into the stable > 0_90 branch obviously ;)), and if nothing goes wrong I'll do that > tomorrow. 2x great. Be carefull when you commit C++ code in there ;) http://www.matroska.org From chris at matroska.org Sat Apr 26 23:37:09 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Sat, 26 Apr 2003 23:37:09 +0200 Subject: [matroska-devel] Re: bad news :( In-Reply-To: <20030426155420.GG4013@bunkus.org> References: <20030426154241.GF4013@bunkus.org> <3EAAAA50.5070303@free.fr> <20030426155420.GG4013@bunkus.org> Message-ID: <3EAAFC05.7050002@matroska.org> Moritz Bunkus wrote: >However I'm now at a stage in which I can definnitely include the >Matroska demuxer into mplayer's main CVS branch (not into the stable >0_90 branch obviously ;)), and if nothing goes wrong I'll do that >tomorrow. > > Mosu, you saved my whole week with these lines :D !! http://www.matroska.org From chris at matroska.org Sat Apr 26 23:21:35 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Sat, 26 Apr 2003 23:21:35 +0200 Subject: [matroska-devel] Alternatives to FLAC for lossless audio compression Message-ID: <3EAAF85F.4000505@matroska.org> Hi, just for your information, there is more ( and maybe even better alternatives ) than FLAC out there to make one of our dreams come true one day ( lossless audio captuing from VdubMod into matroska ). A very good comparison page seems to be here : http://web.inter.nl.net/users/hvdh/lossless/lossless.htm . I am listing a few ( not all ) of them here : 1. WAVPACK : http://www.wavpack.com/ David Bryant is the author, and i am copying Roberto Amorim on this email with the request to forward this email to David if he was maybe interested to look at matroska to have a container for storage/tagging purposes ? I hope we could have a Wavpack DirectShow plugin for TCMP one day ? Its opensource and seems to be more effective than FLAC ? 2. OptimFROG : http://ghido.shelter.ro/ Downside : not Opensource i guess, at least i couldnt find any sources on his download page, that makes it hard to integrate into VdubMod 3. LA : http://www.lossless-audio.com/ Same as 2. no source available In terms of speed ( CPU cycles ) vs. efficiency it seems that Wavpack can absolutley compete with FLAC, as you can see from the graphs in the comparison link give above. Should we change our minds and maybe prefer Wavpack for our preferred lossless audio compressor ? Especially as FLAC is a part of Xiph and has tools to mux it into Ogg container ? What you think ? Christian http://www.matroska.org From moritz at bunkus.org Mon Apr 28 08:53:30 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Mon, 28 Apr 2003 08:53:30 +0200 Subject: [matroska-devel] tag names Message-ID: <20030428065330.GM4013@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From steve.lhomme at free.fr Mon Apr 28 10:20:11 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Mon, 28 Apr 2003 10:20:11 +0200 (CEST) Subject: [matroska-devel] Re: tag names In-Reply-To: <20030428065330.GM4013@bunkus.org> References: <20030428065330.GM4013@bunkus.org> Message-ID: <1051518011.3eace43bcdca6@imp.free.fr> En r?ponse ? Moritz Bunkus : > Hi. Hi Moritz, > Just read the following in the logs: > > KaxTagMultiCommercialMultiPricePriceDate_TheId > > Two things... > > 1) this is LONG! It's 46 characters long!? Your typical C/C++ source > code has lines that aren't longer than 79 chars under Linux/Unix > and > with an identifier this long you'll start to get problems VERY > soon. Especially if this is a level 4/5 element - then the > indentation I have to use already takes up about 30 or more > characters. Sure, that's probably not a good example. When I create class, I only use the name at the level and maybe the direct upper level, no more. It should already give a unique name. > Can't you think of a better naming scheme? A shorter one? Pleeeeaase? :) See above > 2) Why use underscores? So far no class name contains underscores. Why > start now? It's more consistent not to use them and just keep up > with > the upper character on each word boundary scheme :) > > Lately I've criticised several of such small inconsistencies, but I > think about other people who will be using this library. In a lot of > cases inconsistent names/function arguments tend to confuse people. I > just want to keep the library as consistent in itself as possible. I agree. > Oh another thing: Steve: why do the function names in IOCallback not > start capitalized like all the other classes' functions? :) > (e.g. getFilePointer, setFilePointer) Because Ingo wrote these classes not me. Instead of fixing such things, I may rewrite the IO system because that's the only file that may have license problems (even though Ingo didn't make any problem so far)... For example he uses throw which I want to remove from the lib. http://www.matroska.org From moritz at bunkus.org Tue Apr 29 10:39:41 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Tue, 29 Apr 2003 10:39:41 +0200 Subject: [matroska-devel] Seeking algorithm Message-ID: <20030429083941.GT4013@bunkus.org> An embedded and charset-unspecified text was scrubbed... Name: not available URL: From steve.lhomme at free.fr Tue Apr 29 11:27:01 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 29 Apr 2003 11:27:01 +0200 (CEST) Subject: [matroska-devel] Re: Seeking algorithm In-Reply-To: <20030429083941.GT4013@bunkus.org> References: <20030429083941.GT4013@bunkus.org> Message-ID: <1051608421.3eae45659a9a4@imp.free.fr> En r?ponse ? Moritz Bunkus : > BTW: Steve, this does of course not mean that you shouldn't fix that > FindNextElement bug ;) Sure, I will check that. Yesterday I introduced a break in FindNextElement that will avoid a memmove in many cases. It might speed up a bit the byte by byte seeking. But I'll check the algo to see where it could be faster (avoiding copying many times the same data). The bug that Mosu mentions is that when seeking to an arbitrary position in the file, FindNextElement fails to find a proper Cluster element (even though there is one). I'll check that ASAP. http://www.matroska.org From steve.lhomme at free.fr Tue Apr 29 14:22:36 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 29 Apr 2003 14:22:36 +0200 (CEST) Subject: [matroska-devel] Let's prepare 01/05 Message-ID: <1051618956.3eae6e8c13038@imp.free.fr> As we are less than 2 days before 01/05, we need to all get ready for our public launch. The most important is to have spec compliant files (hopefully the lib ensures a lot about that) that will be forward compatible (that means all current features used will be freezed in the specs). I propose that we release internally all the tools we have in Release mode (ie not debug compilation) and make them available to us (link available only on IRC and the private "testing" forum on CC). Then we'll try to play files from one tools with the other tomorrow (30/04) and correct bugs where they are (not adding features). This internal build freeze should happen tonight or tomorrow at 00:00 CET (GMT+1). So Mosu, Cyrius, myFUN, get ready for tonight ! http://www.matroska.org From steve.lhomme at free.fr Tue Apr 29 14:27:05 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 29 Apr 2003 14:27:05 +0200 (CEST) Subject: [matroska-devel] Re: Let's prepare 01/05 In-Reply-To: <1051618956.3eae6e8c13038@imp.free.fr> References: <1051618956.3eae6e8c13038@imp.free.fr> Message-ID: <1051619225.3eae6f990b0d9@imp.free.fr> En r?ponse ? Steve Lhomme : > So Mosu, Cyrius, myFUN, get ready for tonight ! And spyder, jcsston and myself ! http://www.matroska.org From moritz at bunkus.org Tue Apr 29 14:35:56 2003 From: moritz at bunkus.org (Moritz Bunkus) Date: Tue, 29 Apr 2003 14:35:56 +0200 Subject: [matroska-devel] Re: Let's prepare 01/05 In-Reply-To: <1051618956.3eae6e8c13038@imp.free.fr> References: <1051618956.3eae6e8c13038@imp.free.fr> Message-ID: <20030429123556.GU4013@bunkus.org> Hi > So Mosu, Cyrius, myFUN, get ready for tonight ! I'm so prepared I can barely walk! -- ==> Ciao, Mosu (Moritz Bunkus) http://www.matroska.org From steve.lhomme at free.fr Tue Apr 29 14:44:05 2003 From: steve.lhomme at free.fr (Steve Lhomme) Date: Tue, 29 Apr 2003 14:44:05 +0200 (CEST) Subject: [matroska-devel] Re: Let's prepare 01/05 In-Reply-To: <1051618956.3eae6e8c13038@imp.free.fr> References: <1051618956.3eae6e8c13038@imp.free.fr> Message-ID: <1051620245.3eae73954ceb9@imp.free.fr> More on the subject, Tomorrow evening we will have to collect all the binary and source packages (one compressed archive for each) for all the tools we put in public : # the DirectShow filter (apparently without seeking ) # the special VirtualDubMod version that can read/write matroska files # the command line tools under linux to read/write matroska files # the special build of MPlayer for linux that can play matroska files (seeking working) # mpa2mka (+ GUI ?) # wav2mka (+ GUI ?) We'll make the announcement once everything is up and running on Sourceforge... http://www.matroska.org From jcsston at ToughGuy.net Tue Apr 29 21:30:33 2003 From: jcsston at ToughGuy.net (Jory) Date: Tue, 29 Apr 2003 14:30:33 -0500 Subject: [matroska-devel] Re: Let's prepare 01/05 References: <1051618956.3eae6e8c13038@imp.free.fr> <1051620245.3eae73954ceb9@imp.free.fr> Message-ID: <003b01c30e85$d8021440$1300a8c0@jcsston> ----- Original Message ----- From: "Steve Lhomme" To: Sent: Tuesday, April 29, 2003 7:44 AM Subject: [matroska-devel] Re: Let's prepare 01/05 > > More on the subject, > > Tomorrow evening we will have to collect all the binary and source packages (one > compressed archive for each) for all the tools we put in public : > > # the DirectShow filter (apparently without seeking ) > # the special VirtualDubMod version that can read/write matroska files > # the command line tools under linux to read/write matroska files > # the special build of MPlayer for linux that can play matroska files (seeking > working) > # mpa2mka (+ GUI ?) > # wav2mka (+ GUI ?) I combined both mpa2mka and wav2mka into one GUI. It looks at the file extension to find out what type the source file is. > > We'll make the announcement once everything is up and running on Sourceforge... > http://www.matroska.org http://www.matroska.org From Paul at msn.com Wed Apr 30 04:21:18 2003 From: Paul at msn.com (Pamel) Date: Tue, 29 Apr 2003 21:21:18 -0500 Subject: [matroska-devel] Re: Let's prepare 01/05 References: <1051618956.3eae6e8c13038@imp.free.fr> Message-ID: "Steve Lhomme" wrote > As we are less than 2 days before 01/05, we need to all get ready for our public > launch. As a side note, we really need to put a logo on the homepage, build a page with links to all of the files, and put instructions on how to install them and what the limitations are. Pamel http://www.matroska.org From Paul at msn.com Wed Apr 30 05:37:19 2003 From: Paul at msn.com (Pamel) Date: Tue, 29 Apr 2003 22:37:19 -0500 Subject: [matroska-devel] Re: Let's prepare 01/05 References: <1051618956.3eae6e8c13038@imp.free.fr> Message-ID: "Pamel" wrote > "Steve Lhomme" wrote > > As we are less than 2 days before 01/05, we need to all get ready for our > public > > launch. > > As a side note, we really need to put a logo on the homepage, build a page > with links to all of the files, and put instructions on how to install them > and what the limitations are. I just threw up my logo for the moment until one is decided on. Christian, you made the index.html changeable only by you. I had to rename it to do anything. :P Pamel http://www.matroska.org From chris at matroska.org Wed Apr 30 10:07:43 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Wed, 30 Apr 2003 10:07:43 +0200 Subject: [matroska-devel] Re: Let's prepare 01/05 In-Reply-To: References: <1051618956.3eae6e8c13038@imp.free.fr> Message-ID: <3EAF844F.3030101@matroska.org> Pamel wrote: >"Pamel" wrote > > > I just threw up my logo for the moment until one is decided on. Christian, > >you made the index.html changeable only by you. I had to rename it to do >anything. :P >Pamel > > Strange ! Why does WinSCP change the existing access rights for a file when loading a newer version of the same file ? BTW, i thought i had updated both websites, the matroska.sf.net and matroska.corecodec.org so what changes did you have to reload ? About the links for release : Well, its actually much easier than we thought. robux4 said he will make this page and include some important technical desciptions of how to handle the files, but basically we have 1. Mosu's Tools : He wants to have them on his server and distribute from there 2. VirtualdubMod : Will be distributed as the official VdubMod 1.5.x release, and from its very own sf.net site ... we only need to link to there ( http://sf.net/projects/virtualdubmod ) 3. TCMP 'matroska release celebration edition' ( :D ) : will be dsitributed from the normal TCMP mirrors, so we only link to http://www.corecodeD.com 4. kaxdemux : already uploaded ( release compile that Blacksun sent me yesterday ) to http://www.matroska.org/downloads/kaxdemux.dll ( physically this is the matroska.sf.net site ) 5. WAV2MKA, MPA2MKA, GUI's : Jory, i need last official release compiles to upload to same location robux4 will summon these links on the above mentioned page with his technical descriptions, and put a HUGE link to this 'release' page on the main page ... Thats it !! Christian http://www.matroska.org From chris at matroska.org Tue Apr 29 17:31:12 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Tue, 29 Apr 2003 17:31:12 +0200 Subject: [matroska-devel] Changing of the codec IDs for PCM Message-ID: <3EAE9AC0.80007@matroska.org> HI all, as agreed on IRC today we will change the codec IDs for native PCM ( not ACM compatibility ) to 'A_PCMBIN' : Big Endian Integer 'A_PCMLIN' : Little Endian Integer 'A_PCMBFP' : Big Endian Floating Point 'A_PCMLFP' : Little Endian Floating Point The bitdepth will disappear from the codec ID ( too many possibilities ) and should bet set/read in the according element 'KaxAudioBitDepth' This makes implementation a little bit more difficult, but is more future proof. Please change all your tools accordingly until April 30th. @jcsston : Jory, out of curiosity, does your WAV2MKA support 32 bit floats already on input ?? Regards Christian http://www.matroska.org From chris at matroska.org Tue Apr 29 18:08:02 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Tue, 29 Apr 2003 18:08:02 +0200 Subject: [matroska-devel] Re: Changing of the codec IDs for PCM In-Reply-To: <3EAE9AC0.80007@matroska.org> References: <3EAE9AC0.80007@matroska.org> Message-ID: <3EAEA362.8020502@matroska.org> Everybody stop !!! 1. There are no Big Endian Floats we found out, all floats are IEEE floats 2. The naming sheme has to be changed completely, as Mosu and Cyrius think it is 'inconsistent' .... I'll work on a new solution this evening and tell you how we could do it then Sorry for the inconcenience Christian Christian HJ Wiesner wrote: >HI all, > >as agreed on IRC today we will change the codec IDs for native PCM ( not >ACM compatibility ) to > >'A_PCMBIN' : Big Endian Integer > >'A_PCMLIN' : Little Endian Integer > >'A_PCMBFP' : Big Endian Floating Point > >'A_PCMLFP' : Little Endian Floating Point > >The bitdepth will disappear from the codec ID ( too many possibilities ) >and should bet set/read in the according element > >'KaxAudioBitDepth' > >This makes implementation a little bit more difficult, but is more >future proof. Please change all your tools accordingly until April 30th. > >@jcsston : Jory, out of curiosity, does your WAV2MKA support 32 bit >floats already on input ?? > >Regards > >Christian > >http://www.matroska.org > > > http://www.matroska.org From chris at matroska.org Tue Apr 29 19:57:39 2003 From: chris at matroska.org (Christian HJ Wiesner) Date: Tue, 29 Apr 2003 19:57:39 +0200 Subject: [matroska-devel] Re: Changing of the codec IDs for PCM In-Reply-To: <3EAE9AC0.80007@matroska.org> References: <3EAE9AC0.80007@matroska.org> Message-ID: <3EAEBD13.30701@matroska.org> Ok, the codec IDs have been redone now and found good from the EU devs ..... consider them fixed now :P http://cvs.corecodec.org/cgi-bin/cvsweb.cgi/~checkout~/matroska/doc/website/specs/codex.html?rev=HEAD&content-type=text/html Please note that ALL apps have to be updated for the new IDs until tomorrow the latest ! Thanks Christian Christian HJ Wiesner wrote: >HI all, > >as agreed on IRC today we will change the codec IDs for native PCM ( not >ACM compatibility ) to > >'A_PCMBIN' : Big Endian Integer > >'A_PCMLIN' : Little Endian Integer > >'A_PCMBFP' : Big Endian Floating Point > >'A_PCMLFP' : Little Endian Floating Point > >The bitdepth will disappear from the codec ID ( too many possibilities ) >and should bet set/read in the according element > >'KaxAudioBitDepth' > >This makes implementation a little bit more difficult, but is more >future proof. Please change all your tools accordingly until April 30th. > >@jcsston : Jory, out of curiosity, does your WAV2MKA support 32 bit >floats already on input ?? > >Regards > >Christian > >http://www.matroska.org > > > http://www.matroska.org