[theora-dev] Theora streaming

Michael Smith msmith at labyrinth.net.au
Thu Feb 27 16:12:24 PST 2003

Arc <arc at indymedia.org> said:

> I'm working on a higher level than probobally most on the list, building
> an "editor" for post-encoded Oggs by allowing users to easily trim and
> chain together different ogg files to compile a larger work without
> transcoding.
> The chaining together is actually quite simply, if you have two legal
> ogg files you simply concat'ate them together.. even the traditional
> "cat" command can do this legally (correct me if I'm wrong, it works
> with Vorbis).  Trimming/cutting is slightly more difficult since the
> BOS/EOS need to be replaced after it's packets are trimmed, but I seem
> to have a pretty good grasp on it.

This is cool - I started on some tools to do various bits of this, but never
really did the whole thing. One feature would be really great is this: for
some cases, you have to use the concatencated-logical-stream approach, because
they have different headers, or whatever. However, that has some drawbacks
(notably, if you're speed constrained and are using low-latency/small buffers,
re-initialising the decoder has a non-trivial impact, and the stream headers
are quite large for low bitrates). So, it'd be really cool if your tool could
merge vorbis streams completely (i.e. NOT just concatenating them, but
actually making them into a single logical stream) for the cases where this is
possible (i.e. when the primary and tertiary header packets are identical).

> Anyways, all this functionality is for down the road projects as per
> compiling a weekly 30-minute video from a title, several 3-5 min
> segments, small vid clips inbetween the segments, and credits at the
> end.  The segments are being produced by different people from around
> the world and will be submitted in Ogg Theora format, then we chain the
> bitstreams together to produce a finished work.  Fast, little human
> effort required to compile everything.  In a few minutes we could have
> something to plop onto an FTP and available for worldwide distro.  Many
> syndicates would grab this and record it to tape for putting on the air.
> Here's the question, however.  I asked this before, actually.. what
> happens when those segments are different resolutions or framerates?  Is
> this being considered in players and what would be an intelligent way
> for them to cope with a changing frame size, especially when outputting
> to an external video device (ie, full screen to NTSC/PAL tape)?
> I'm asking here because there's already alot of Vorbis players which
> can't properly handle chaining a 44100 stream to a 22050 stream (skips a
> few seconds of first track then starts playing second), while ogg123
> plays it just fine.  It would seem important to give those designing
> players "extreme" examples, such as a chain of Theora bitstreams with
> different framerates, resolutions, etc so this is properly tested.  

<p>Realistically - players are going to be buggy and not support this correctly -
as you've noted, this is already true of vorbis. It's technically allowed, and
_should_ be supported - but for compatibility with real-world players I think
you're always going to have to be pretty careful with that sort of thing.


--- >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 'theora-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 Theora-dev mailing list