[Theora-dev] ogg and keyframes

Thomas Vander Stichele thomas at apestaart.org
Wed Sep 29 11:31:46 PDT 2004


> > 2) players don't show frames before they receive a keyframe.
> This has been suggested as a fix for dealing with lazy net streams that 
> don't start by sending a keyframe, and of course lazy seek, but I'd 
> rather it be handled by the player than libtheora. I added 
> theora_packet_iskeyframe() to the api for facilitate this.
> I suppose it could be an option set through theora_decode_ctl().

When thinking more about this problem I was convinced that it cannot be
guaranteed by the server to start from a keyframe.  Because if you're
sending out an ogg stream with *two* theora streams, you can't make sure
both of them start at a keyframe.

So it should be handled client-side.

Whether it should be in the lib or not is a different matter.
Personally, I'd feel the lib should do it, since really, what is it
decoding and then sending on to the app if it didn't have a keyframe
yet ?

In other words, why would any application ever want to use any
information received *before* the keyframe ? If nobody needs it, there's
no point in sending that by default.  Just MO of course.


Dave/Dina : future TV today ! - http://www.davedina.org/
<-*- thomas (dot) apestaart (dot) org -*->
I'd give anything to see you baby
I'd give anything to see you smile
My baby doesn't want just anything
she wants everything
<-*- thomas (at) apestaart (dot) org -*->
URGent, best radio on the net - 24/7 ! - http://urgent.fm/

More information about the Theora-dev mailing list