[MPlayer-dev-eng] SPU pts ?

Kees Cook mplayer at outflux.net
Thu Apr 4 17:00:26 CEST 2002


On Thu, Apr 04, 2002 at 10:23:20AM +0200, Kim Minh Kaplan wrote:
> >> -    spudec_heartbeat(vo_spudec,100*d_video->pts);
> >> +    spudec_heartbeat(vo_spudec,90000*d_video->pts/1024);
> >> 
> >> afaik SPU uses 1/100 seconds as base timer, but maybe not...
> >> where is that 90000/1024 coming from? any -reliable_ docs on this topic?
> >
> > Here is where I found that info:
> >
> > http://members.aol.com/mpucoder/DVD/spu.html
> 
> After rereading this I think it is spudec.c that needs to be patched.
> Not the spudec_heartbeat call.  The change Arpi quotes will get the
> subtitles out of sync.  As a matter of fact I just tested this change
> and subtitles are gone forever...  This is broken.

The 90000/1024 thing was not just in the heartbeat call, it was also in 
the assemble call.  However, your above patch will do something similar.  
I don't think it's very clean though, because we're spliting the 
90000/1024 adjustment into two halves: first it is *100 in the assemble 
and heartbeat call, and then further adjusted by the date *9000/1024.

Wouldn't it make more sense to either do the *90000/1024 entirely inside 
spudec, or entirely outside of spudec?  I'd vote for entirely inside 
spudec, since mplayer.c doesn't care about the 90KHz clock of the SPU 
decoder, and only knows PTS.

-- 
Kees Cook                                            @outflux.net



More information about the MPlayer-dev-eng mailing list