[MPlayer-users] get pts of vob file error

Nico Sabbi nicola_sabbi at fastwebnet.it
Tue Apr 11 22:16:18 CEST 2006


Nico Sabbi wrote:

> qwen dux wrote:
>
>> hi,
>> There was a error  when last mplayer  played  vob file,the  console
>> line displayed  the  A-V pos  abnormally,and the osd time is not
>> right;
>> I read the source,and found the follow code might be the place of 
>> problem,
>> line 164 of demux_mpg.c:
>> pts=(((c>>1)&7)<<30)|((d>>1)<<15)|(e>>1);
>> I found xine was worked fine,and source of xine is follow:
>>           pts  = (int64_t)(p[ 0] & 0x0E) << 29 ;
>>           pts |=  p[ 1]         << 22 ;
>>           pts |= (p[ 2] & 0xFE) << 14 ;
>>           pts |=  p[ 3]         <<  7 ;
>>           pts |= (p[ 4] & 0xFE) >>  1 ;
>>
>> I attempted to modified the souce but ended in failure.
>

the above code and mplayer's read_mpeg_timestamp() are equivalent

>>  
>>
>>   
>
>
> oh god,  timestamps are truncated!
> 33 bits can't be stored in an unsigned int.
>
> I'll fix it tonight
>

committed. Where can I download a sample that exhibits the problem you 
are complaining about?




More information about the MPlayer-users mailing list