Re: Delayed pages ?

Ralph Giles <[email protected]>
Newsgroups gmane.comp.multimedia.ogg.theora.devel
Message-ID <[email protected]>
On Fri, Jan 30, 2009 at 1:40 PM, Romain Beauxis <[email protected]> wrote:

> Apparently, when I put packets into the ogg stream, the pages are not returned
> immediately by ogg_stream_pageout. What happens seems that I get several
> pages at once later.

libogg buffers internally until it has enough data to complete a page.
So this sounds normal, at least for some patterns of packet sizes.

> This causes me trouble since then the pages are not properly placed with the
> other vorbis audio pages, leading to warnings in oggz-validate, telling me
> that the theora packets are not well-ordered.

You have to mux based on the time equivalent of the granulepos field
in the page header. You get get this for theora pages by passing the
granulepos to th_granule_time(). (theora_granule_time() if you're
using the libtheora api.) You have to do this in general, because the
two codecs can produce pages that overlap each other.

Remuxing with oggz-rip and oggz-merge does just this, so it makes
sense that it would fix the validation problems.

HTH,
 -r
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.