[MPlayer-dev-eng] Finalize NUT spec

Michael Niedermayer michaelni at gmx.at
Sat Jan 28 17:07:47 CET 2006


Hi

On Sat, Jan 28, 2006 at 04:49:57PM +0200, Oded Shimon wrote:
> On Sat, Jan 28, 2006 at 03:30:33PM +0100, Michael Niedermayer wrote:
> > Hi
> > 
> > On Sat, Jan 28, 2006 at 04:17:15PM +0200, Oded Shimon wrote:
> > [...]
> > > > for(; j<n && j<syncpoints; j++){
> > > >     if (!has_keyframe[j][i]) continue
> > > >     A                           v
> > > >     if(!A){
> > > >         A                       v
> > > >         B                       v
> > > >         eor_pts[j][i] = last_pts + A + B
> > > >     }else
> > > >         B=0
> > > >     keyframe_pts[j][i] = last_pts + A
> > > >     last_pts += A + B
> > > > }
> > > 
> > > I preffer this. Maybe coded slightly more efficiently.
> > > 
> > > > the issue with your method is:
> > > > 
> > > > S K1 EOR2 S ... K9 S => K1, K9 (no indication of the EOR2)
> > > > 
> > > > so when we seek to TS=8 we will start at the very first syncpoint and have to
> > > > linear search until K9, IIRC thats twice as much as we would have to without
> > > > EORs
> > > 
> > > Yeah, this is a break to optimal seeking. the linear search with index 
> > > should always be bounded by 2 adjacent syncpoints.
> > > 
> > > > with my suggestion:
> > > > S K1 EOR2 S ... K9 S => K1/EOR2, K9
> > > 
> > > Ok, just 3 things to figure out:
> > > 1. if you have eor, is it coded as keyframe as well?
> > > 2. if there are several, which keyframe should you code
> > > 3. if there are several, which eor should you code
> > > 
> > > I say:
> > > 1. no (the index method proposed above doesn't allow this)
> > 
> > id say yes, (A=0,A=pts, B=0) (with my encoding suggestion)
> 
> It's a bit wrong, because:
> 
> S EOR1 K2 S => just K2 (not K1)
> 
> EOR keyframes are supposed to be disregarded for keyframe_pts purposes. But 
> it works, cause there can be no 2 frames with same pts anyway.

in case of
S EOR1 K2 S
you must store EOR1 not K2 as keyframe otherwise

S K1 S <100mb> S EOR2 K3 S
seek to EOR2 would give you K1 and no sign of non relevance ...

yeah optimal seeking ...

[...]
-- 
Michael




More information about the MPlayer-dev-eng mailing list