[MPlayer-dev-eng] Lots of stuff for NUT
Oded Shimon
ods15 at ods15.dyndns.org
Sat Dec 31 08:38:19 CET 2005
On Fri, Dec 30, 2005 at 10:23:55PM +0200, Oded Shimon wrote:
> On Fri, Dec 30, 2005 at 03:11:33PM -0500, Rich Felker wrote:
> > On Fri, Dec 30, 2005 at 09:10:02PM +0200, Oded Shimon wrote:
> > > This means, to seek, you must do these steps:
> > > Go to S2, linear seek until you either:
> > > 1. pass P
> > > OR
> > > 2. you find a syncpoint AND (S1-S2) is more than max_distance.
> >
> > I don't see how 2 makes sense.
>
> Damnit, I gave that part much thought, and forgot it all, now I need to
> re-think it.
>
> S2 K ........ S1 ... P
>
> if S1-S2 is bigger than max_distance, than by my rule, if there is a
> keyframe before P, there must be a syncpoint after S1. So, good.
> Keep going from S2 to the nearest syncpoint, as you always must.
Gah, I'm wrong again. This can still happen:
S3 is a "random" syncpoint, it's the one right after S2.
S2 .... K S3 .... S1 K .. P
SO
stop when 1 of these happen:
1. you pass P
2. you pass max_distance from last keyframe in this stream (X)
3. you see S3, AND "S1 - (last keyframe)" is bigger than max_distance.
BTW, I wonder how well all this works when you have multiple active
streams, we haven't given that part much thought.
I think, you do exactly the same, go to furthest back_ptr, and apply all
the rules mentioned above for all streams, and if even ONE of them breaks,
you stop.
- ods15
More information about the MPlayer-dev-eng
mailing list