[MPlayer-dev-eng] Nut & framecode...

D Richard Felker III dalias at aerifal.cx
Sat Apr 24 00:18:32 CEST 2004


On Sat, Apr 24, 2004 at 12:06:18AM +0200, Michael Niedermayer wrote:
> > > > No. If we lose sync, we walk all bytes up to max distance between type
> > > > 2 frames, and try each one as a packet starting point. We then walk
> > > > along using the packet lengths. If we hit the next startcode without
> > > > missing any startcodes, then we recovered. Then we can go back and
> > > > play from the successful recovery point.
> > >
> > > i havnt thought about this possibility, so i agree to drop size
> > > predictors btw, i would expect that there will be several matching packet
> > > chains, so the demuxer would have to select one, maybe the longest would
> > > be a simple choice
> >
> > Several matching chains that land exactly on the next startcode?? 
> yes

:(

> > IMO 
> > this is very unlikely! Keep in mind: any chain that skips over a
> > startcode can immediately be thrown out. Also any chain that exceeds
> > max distance between startcodes can be thrown out.
> yes, still i think we will find false chains, u must also keep in mind that 
> the wrong chain doesnt need to independently hit the startcode, just any 
> packet of the correct chain before the startcode

Well I guess the probability depends on the framecodes we use
(otherwise it would be easy to compute) but it seems very unlikely
that you'd land exactly on the first byte of a valid packet. And if
you do, well, you still recover once you get to that point!

> > Does this work well for vorbis? 
> it should, but i didnt try

I'm concerned about having to encode everything with vlc every time a
128 or 576 sample packet occurs...

> > I'm not aware of the relative 
> > frequency of 128/1024 sample frames, but if the 128-sample ones are
> > rare it should be good!
> in a 64kbit/sec test sample there where
>  7913 1024sample frames

Good.

>  6286  128sample frames

Uhg. Nasty. How big are these? I assume they have to be well over the
average bitrate; otherwise they'd only be 22 bytes or so. And I hardly
see how you can code a frame that small...

>  1771  576sample frames

Good.

Rich




More information about the MPlayer-dev-eng mailing list