[Matroska-devel] Licensing question

Steve Lhomme steve.lhomme at free.fr
Sat Oct 8 15:51:54 CEST 2005


Sorry for not replying earlier, but I was kinda busy...

ivanburnin at hushmail.com wrote:
> On Wed, 05 Oct 2005 22:44:47 -0700 Christian HJ Wiesner 
> <chris at matroska.org> wrote:
>>matroska, the format, is license free. However, some of the code 
>>is not. 
>>If you say you are using matroska for your app, exactly what parts 
>>the code have you been using, and what kind of changes did you add 
> So far there isn't any code, I'm in early negotiations with the 
> copyright holders. Eventually though the preference would be to use 
> the DirectShow plugin architecture. The modifications would revolve 
> primarily around establishing the ability to embed DRM into all the 
> components, obviously the video and audio codecs support it (we'll 
> be writing our own wrapper codecs) but I haven't dug deep enough 
> into the subtitle and menu architectures to see if they already 
> support it. I know how much we all enjoy DRM, but copyright holders 
> generally really like it. I was thinking about creating an 
> architecture for subtitles that creates an alpha-based overlay, so 
> the subtitles would be seperately rendered, and overlayed via alpha-
> channels. Assuming that the subtitle subsystem was then built on a 
> plugin architecture this would eliminate all of our problems (we 
> could create an encrypted one), and the rendering would provide a 
> more powerful architecture for the rest of Matroska.

IMO there is a big problem with DRM mixed with open-source. I still 
haven't found a way to make it work. Because unlike most security 
features existing in this world, it's made to prevent legitimate users 
(including coders) to use the content they decode a certain way. That 
means once the content is decoded, it is still in open-source code, and 
therefore not "protected" (or Managed as in DRM) at all. So the only 
real solution I see is some form of closed source between the decoder 
and the renderer.

So, that means whatever codec you codec you want to use, you have to 
have a closed version of the decoder. And obviously a closed version of 
the renderer... Haali can probably help here as he wrote a DirectShow 
renderer for "fun". For the codec, there must be plenty, but you have to 
contact the people directly. Unfortunately we don't have any good video 
codec on CoreCodec for that (CorePNG wouldn't qualify for internet 
distribution). The other option is to contact people who make XviD or 
ffmpeg to see if they are willing to license the code for use in a 
closed source app. The people also deserve help :D

Of course once this is done, matroska is a great format and the code 
could be written to support this special edition codec. Maybe all 
(splitter, codec, render) could compiled in one single file... For such 
things, contact CoreCodec Inc which will deal with the matroska licenses 
and closed development.

More information about the Matroska-devel mailing list