[vorbis-dev] streaming metadata requirements
rillian
rillian at telus.net
Thu Jun 14 11:39:22 PDT 2001
On Monday, June 11, 2001, at 08:56 , Monty wrote:
>>
>> Why put it in a separate substream? We could just change the spec to
>> allow new headers halfway into the "normal" stream (the spec doesn't
>> specifically disallow it at the moment, even).
>
> I intend that it is disallowed. The comment header is not for
> streamed metadata, and doing this behind the chaining mechanism's back
> breaks or compromises design assumptions in the Ogg layer.
I guess that answer could apply to jack's only-update-metadata scheme in
general.
Vakor (Michael Smith) and I had a good discussion about this on irc.
Here's a summary of my updated thinking:
We have to fix multiplexing if we care about this.
In more detail:
Michael seemed to agree with Jack that the cost of chaining boundaries
is a real problem and added the fear that if we don't resolve it people
will go back to things like the shoutcast separate udp broadcast, or
those terrifying icy-headers stream-interleaved tags.
Now, monty has clearly vetoed adding updatable metadata to vorbis
itself. That leaves us two places to put it. Outside the ogg stream
entirely, or in a parallel, multiplexed logical bitstream.
The first is exactly like the udp tag stream, and I'm not sure that's an
entirely terrible solution, since the problem really lies outside the
design space of ogg/vorbis. Vakor hated it, though.
The second is at least part of the general plan. Problem is, Monty also
marked the issue of multiplexed streams "won't fix" for rc1, and likely
1.0. I'd been holding off on the kithchen-sink, separate-stream metadata
format until I felt we could do it right the first time, but as far as
people think this is important I'm perfectly happy with vcomment packets
in a separate bitstream. It nicely contains the special-casedness of the
format, and players are free to ignore it. So this seems the best way
forward to me.
Which brings me full circle. Vorbisfile currently *chokes* on
non-degenerate ogg bitstreams. If we want more metadata options we have
to fix this before 1.0. Not only does it mean we can't solve jack's
problem, it means it will be *extremely painful* to do it later, because
the previous generation of codecs wouldnt' be able to play the new
streams. Also means no slide shows, no beat markup, none of the other
metadata uses we've talked about here in the past. And someone besides
monty has to do the implementation work.
I did say two weeks ago I'd work up a patch for this, but got
discouraged when I saw how much work it would be. I'm still interested
in working on it, but I need help. Step one, make vorbisfile ignore all
the first substream with valid vorbis data. Step two, implement whatever
quick metadata format seems reasonable as a special exception to that.
General multiplexing support can come later.
IMO,
-ralph
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the Vorbis-dev
mailing list