[Matroska-general] Re: OGG/OGM media container

ChristianHJW christian at matroska.org
Wed Jul 7 11:04:37 CEST 2004

Some comments from our side :

Ralph Giles wrote:
> On Tue, Jul 06, 2004 at 03:51:17AM -0700, Nilesh Bansal wrote:
>>So this means ogg/ogm are actually same but ogm uses some standard headers 
>>while ogg does not put any such restrictions. That is ogm is a ogg, but 
>>not vice-versa.
> Correct. I would also say that the ogmtools provides the standard du 
> jeur for encapsulating various common-in-avi codecs in an Ogg bitstream, 
> like 'divx', 'mp3' and so on.
> As far as I know, the ogmtools source is the best documentation 
> available for those encapsulations

Tobias Waldvogel, the 'inventor' of OGM basically found a way to add the 
complete DirectShow/VfW headers for codec recognition ( 
BITMAPINFOHEADER, WAVEFORMATEX ) into the Ogg stream. That way any 
recognized stream from DirectShow, be it AC3, DivX, XviD, MP3, etc. can 
be muxed into Ogg, and also be extracted from there and put into an AVI.

This is very similar to what we in the matroska team are calling 
'DirectShow compatibility mode' for MKV, allowing the same. I know its 
not in the center of cour interest to have other formats than the Xiph 
formats in Ogg, but again i feel you are doing a mistake by not adding 
this possibility to the official Ogg specs, but thats just IMO.

>>And saying
>>  ogg       -    extension for for audio only files
>>  ogm       -    extension for audio + video files
>>is _wrong_, as the 2 extensions are not just conventions but also differ 
>>technically (though they are more-or-less similar).
> Yes, this is very wrong. I suppose the ogm extension just implies the 
> presence of the AVI stream headers in the logical bitstreams.

Some people were following earlier advice from the Xiph team that Ogg 
files are always Ogg files, whatever their content is, and renamed them 
from .ogm to .ogg ;-) ....

>>So xiph "officialy support" ogg and not ogm. But i am not able to find any 
>>tool to create ogg files. www.xiph.org provide no information about 
>>OGG either. 
> Ogg is documented at http://xiph.org/ogg/doc/ (which looks like it needs 
> some webmaster help)
> The main documents are in http://svn.xiph.org/trunk/ogg/doc
> and the Ogg format (aside from some of the multiplexing details) are 
> also documented in RFC 3533.

There are many tools to create Ogg files already, and Ogg ( meanwhile ) 
is well documented.

>>Also, what is status of OGM? Is that stable and usable? If yes why 
>>mencoder etc, dont provide a option to produce a OGM instead of AVI.
> I understand it's in wide use by the anime fansub community. We 
> officially and actively don't recommend it, both because it doesn't
> match our technical philosophy for Ogg, and because our whole raison 
> d'etre is to provide free alternatives to mp3 and divx. So please don't 
> encourage people to add support. :)

OGM hasnt seen any progress since a long time, so its quite safe to call 
it stable i guess. For its community, i expect that many users would 
stop doing so if they knew Xiph's official opinion on OGM, they still 
believe OGM is Xiph's baby and this is the official way to combine 
Vorbis audio with DivX/Xvid video. No offense, just my 2 cents.

>>>Matroska is a different project group... i think they represent two
>>>different philosophies... matroska is more a kitchen sink format, whereas
>>>ogg is an absolute bare bones format. Which you think is better really 
> I think that's a nice way of saying that the the matroska folks didn't 
> like (or didn't understand) what we were trying to do with the ogg 
> design. I believe their idea was to make a hierarchically searchable 
> file format with the idea that that would work better than ogg for 
> editing. Ogg is designed as a streaming format only, although one could 
> easily build an editing system on top of it.   -r

The decision to not build the AVI replacement, which was and still is 
our major motivation to make matroska, based on Ogg was basically the 
result of a number of facts and incidents, mainly around OGM and the way 
Xiph reacted to it at that time. If anybody should be interested in the 
history of it all, just send me an email and i gladly explain to you how 
and why it all started.

Speaking of Ogg, we are still convinced that there is not enough 
information on the container level, and too much has to be done on the 
decoder level, especially for editing purposes. For content distribution 
and streaming this approach is quite good, although we also feel a bit 
more complexity could have improved Ogg's capabilities and the 
comparison to other competing containers, aiming for the same thing, 
like RM, ASF and in future mainly MP4, but this was Monty's decision to 
keep it as simple as possible, and there are of course some very nice 
advantages of doing that, especially with respect to Xiph's opensource 

As Ogg and matroska are now aiming for completely different purposes, 
they will both co-exist nicely, i have no doubts in that. Ogg is 
focussing on high compatibility and playability, making it ideal for 
content distribution, as well as streaming. Ogg is ment to become the 
free alternative for content distribution, and there can be no doubt 
that we will support Ogg Theora best we can from all our tools.

matroska on the other hand is competing with MOV and Quicktime, and 
aiming to replace AVI and VfW/Dshow, as a general use container ( = 
'kitchen sink format', to repeat Nilesh ;-) ) with a clear focus on 
video and audio editing. We understood that we need a working multimedia 
framework to be able to become a real alternative for codec developers, 
and for all platforms, thats why for the time being we are working on 
porting Gstreamer to win32 ( and later Mac OSX ), and will define a 
simple but powerful codec API, wrapping the gstreamer plugin API, so 
that developers can start to make their own codecs, just like what 
happenend with DivX and VfW ( VCM ) years ago ( and even works with 
Speex via the ACM codec that was made for it ), so they can put their 
own streams in the MKV container. Based on that we are planning to make 
a nice editor also, but lets first get the basic framework working.

I hope that on this basis it should be finally possible to establish a 
good and friendly relationship between the Xiph and the Corecodec 
people. A first start could be if the Xiph guys would stop telling the 
world that the matroska team hasnt understood Ogg. In fact, some of our 
team members know a lot more about Ogg, video in Ogg and especially OGM 
than you guys might think ;) ....

Best regards
matroska project admin

More information about the Matroska-general mailing list