[FFmpeg-devel] GoC 2008 and H264 SVC decoder

Robert Marston rmarston
Sat Mar 29 20:15:26 CET 2008


Struggling with understanding this pts and dts problem with h264, could
some1 help me with the following questions, Michael perhaps?

>> Michael Niedermayer wrote:

> If you look at av_parser_parse() you will see it does some timestamp
> reordering so the existing timestamps get associated with the correct
> frames (which are output from av_parser_parse().

The pts and dts values set here, are they actual pts and dts values from
the h.264 sequences or do they just to associate a pts and a dts value
with the packet?

> compute_pkt_fields() then tries to calculate missing timestamps exactly
> This goes wrong in various ways for h.264 due to the h264 parser not
> setting things like has has_b_frames correctly.
> Also compute_pkt_fields() plain does not have enough information to
> calculate exact h264 timestamps.

Aside from the has_b_frames, what else is not set correctly and what
information is the function missing that it can't set the h.264
timestamps? ie. Is it possible to add to the h264 parser that will enable
the compute_pkt_fields() to correctly set the timestamps?

> One way to solve this is to implement what is written in H.222 about H264
> timestamps in the h264 parser, so that av_parser_parse() returns only
> frames/fields with timestamps.

I have looked through H.222 but I am not sure where exactly you are
referring to with how to handle H264 timestamps?

Thanks and regards

More information about the ffmpeg-devel mailing list