[MPlayer-dev-eng] mpeg4-es format

Michael Niedermayer michaelni at gmx.at
Thu Jan 23 02:52:26 CET 2003


Hi

On Thursday 23 January 2003 02:43, Arpi wrote:
> Hi,
>
> > > what do those header startcodes mean?
> > > it seems only 120 is common, maybe it contains width/height/fps ?
> >
> > yes, but the fps field is optional, as mpeg4 has variable fps
>
> hmm. and where is fps or timestamps stored in mpeg-es streams?
timestamps are tricky to parse

there is time_increment_resolution in the VOL header (120)
this is the number of timer ticks per second 
u must calc the log2 of it to get the number of bits for a later field ...

in the VOP (1b6) header there is a time_incr field which gives the number of 
whole seconds relative to the last reference point and a time_increment field 
which contains the modulo part of the absolute time of the current frame in 
time_increment_resolution with log2 bits

and I/P/S frames are references B frames are not! 

and if the frame rate is constant then there might be a fixed_vop_rate field 
set in the VOL header ...

see the source of libavcodec / grep for the variable names

[...]

Michael


More information about the MPlayer-dev-eng mailing list