[Matroska-general] Gstreamer and matroska - the opensource answer to VideoforWindows/AVI and Quicktime/MOV ?
Christian HJ Wiesner
chris at matroska.org
Wed Feb 18 16:27:17 CET 2004
this email is more to be seen as a brainstorming rather than an
announcement or the like. My excuses go to the Gstreamer guys about
copying their list, i dont know if they are interested in this kind of
thinking at all.
I was recently becoming aware that matroska's only hope to become
established as standard, if this is ever going to happen, is versatility
and flexibility. In short, to become a 100% replacement for good old
AVI, currently the most used container format out there, probably on
rivalled by MPEG. The reason this container is/was used so much can be
explained when knowing its the standard container for VfW ( Video for
Windows ), Redmond's old Media Framework. http://fourcc.org and
http://abcavi.com give a pretty good impression how many different audio
and video codecs had been developed for this framework in the past,
obviously because of M$'s domination in the Multimedia scene and the
sheer number of copies out in the wild. Now, as we all are well aware,
both VCM ( the video codec API ) and ACM ( the audio codec API ) are
completely outdated and can not support most of the modern compression
formats anymore, leading to a number of problems and incompatibilities,
of which VBR MP3 async and the 'packed bitstream' hack are the two most
obvious to name.
The successor of VfW, DirectShow, has never played the same role if it
comes to video editing and video creation/encoding, due to a number of
pretty bad limitations with respect to accessing the chain once its
started. In short, DShow is wanting to much automatism here, stealing
developers the possibilitites they request if they code a video
application based on it. For this reason, DShow is today mainly used for
playback and capturing.
The big 'competitor' to VfW has always been Quicktime in the past, with
MOV as the standard container. It is very well implemented into Mac's,
and like DirectShow for Windows it can be seen as a fixed part of the
OS. Its coming with a nice, open video and audio codec API also, which
is much more powerful then VCM/ACM, and same is valid for the container.
However, there is no working implementation of Quicktime ( the framework
) for Linux, at least i am not aware of such, and the Windows
implementation of it sucks badly ( not to mention its payware if it
should do more than just playback ).
I was recently thinking that Gstreamer and matroska together could
become the opensource counterpart to both of the framework/container
combinations listed above, and am asking for opinions on this ? Once we
really succeed in porting Gstreamer to win32 ( maybe even MacOSX in
future ? ), and come up with a powerful but not overly complex codec
API, sitting on top of the gstreamer plugin API ( via a wrapper ), do
you think codec developers could actually consider supporting this API,
chosing MKV as their 'preferred' container ?
DivX.com have plans to release DivX6 from AVI and VCM, as well as from
the MPEG4 standard in general. They have plans for a new, DivX6 specific
container format i heard, and want to establish themselves as a new
video standard that way, even with hardware support. Good luck, thats
all i can say here. They would probably be better off to use their
existing market power and support us to become the first true x-platform
media framework and media format ? The reason DivX became so big is
simply because it could be used from Virtualdub, and in AVI as a well
supported container. If they now try to establish their own stuff,
supported only by a small number of apps, and everything coded by
themselves, they are very likely to fail IMO. Look at Real Networks,
they understood this and went all the way back, trying to offer Helix as
another universal framework, advertising it in the OSS scene even, and
with great x-platform support, but still limited in terms of supported
formats in it, and with only one ( for win32 sucky ) player for it.
I am well aware gstreamer doesnt need matroska at all. Your way is
clear, becoming the best media framework for the Linux world, and you
guys wont mind if your project is ported to other OSes also, as this can
only help you to achieve your goals, for sure. You could also settle for
MOV as standard container, as there are currently no features realized
in matroska that MOV cant do also, or have no standard container at all.
On the other hand, you could win a couple of contributors and fans with
such an 'alliance', if you allow me to name it like that. Opinions
please, and use the 'reply all' button if i may ask for that, to copy
both lists. Stupid idea ? Useless ? Possible ? Tell me what you think ....
More information about the Matroska-general