"They might want an index (because of faster seeking), but do not require it. For example, playing an index-less MKV in MPC-HC will result in no index being created until you seek." I don't know about MPC-HC, but in mplayer for example it's unable to seek without scanning the whole file to build an index. Even deferring this, scanning the entire file to build an index when the user seeks is the kind of unacceptable half-solution that was trying to be avoided. I'm not saying that MKV is doing anything wrong, it is what it is and the tools could be better.
The most frequent argument I hear regarding Ogg not having an index is that the lack of one makes seeking more complicated. But as you said, " if you want to support Matroska you need to support index-less Matroska files too". In any case, looks like it's going to be the same story for Ogg nowish.
As far as live streams go I have no idea, and can't find any information on how you'd build a scalable MKV streaming infrastructure to support a couple of thousand users, or even a hundred or so. This might just be a documentation issue. For Ogg you simply use icecast and can scale to any number of users by adding servers and an interior relay layer (and you can purchase icecast distribution services commercially). The same (icecast based) services that work for Vorbis also work for Theora.
There are some live Ogg/Theora / Vorbis streams in the icecast directory, but a lot of usage is private. Other recent examples include the students for free culture conference or the lessig wireside chat.
(FWIW, I've never been able to get VLC to produce an HTTP stream with MKV/Vorbis+Theora it just throws "invalid chain" and "no suitable sout mux module for `http/mkv". The same configuration, switching MKV with Ogg works fine. Though if you say it works I don't doubt that my configuration is wrong)
I would propose that 99% of the group X is using MKV is related to codec support and not especially related to the container. There are no useful and mature tools for things like H264+AAC in Ogg. There certainly could be but why bother?
I'd offer that adding more encumbered formats is utterly poisonous to everything that made the web so successful.... But in any case thats really a separate argument from the containers issue. But if you really think that H.264/AAC is a reason to pick a container than MP4 is the absolutely unambiguous choice there simply due to device compatibility.
My own view, and it's one that Monty has disagreed with in the past, is that that the lack of tools for putting encumbered codecs in Ogg is an _advantage_. It's an advantage because avoiding licensed formats is important to you, you don't have to be a media rocket scientist to figure out if your files are 'pure' or not. Simply check the extension: If it says "Ogg" (or Oga, Ogv) you're likely good to go.
Containers really don't contribute much to anything most users ultimately cares about. Of course, tool support for Ogg with this formats could be written but there are two acceptable formats for the AAC+H264 mix, arguably thats already one too many.
... and "mature support for encumbered codecs" is most of your feature list.
Considering the rest we do have subtitle support in the Ogg toolset (In the form of the Kate codec, which supersets SRT as far as I know...), but it's not part of Ogg itself.
Ogg does miss out on the chapter support. You can use chaining as chapters, of course. But there really isn't application support for this, so it's a largely theoretical use case. I've never seen an MKV file using chapters myself, but I don't doubt that it's an important feature in the movie "backup" market.
Whatwg has been really conservative about adding features to video the API. It's far from exposing all the things it could expose already, I honestly don't think it's likely that it ever would expose chapters even if implementers were shipping MKV support today. I think this is unfortunate, but it is what it is that community would rather you implement fancy features using HTML+CSS+JS rather than putting it into the video files themselves.
Don't get me wrong, I'd certainly be happy to see more MKV support. But the benefits are not clear to me.... and the embedded developers/browser vendors are incredibly conservative about dependencies. The LGPL licensing on libmatroska and libebml the 'optional' dependencies on things like bzip2,lzo, and zlib (which are really not optional if you want to handle anything a user might throw at it) are considered to be real hurdles in the browser and embedded space which will probably require more justification than "Support for H.264/AAC but less compatible than MP4" and good support for chapters/subtitles.
Copyright © 2018, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds