On Apr 30, 2012, at 23:53 , jettoblack wrote:

> On Mon, Apr 30, 2012 at 2:51 AM, Kalileo [via libav-users] <
> ml-node+s943685n4597541...@n4.nabble.com> wrote:
> 
>> 
>> The decoder gives you the (decoded) pictures in the correct order.
>> 
>> 
> That's what I expected, and it does for MPEG-2 codec video, but not for
> H.264 codec within a MPEG-2 transport stream.

It does. Otherwise there would be no way to display h264 video correctly ;)

As i said, and as also Andrey Utkin pointed out, the correct order for display 
is in the pts value, and after decoding (not after demuxing) the 
pictures/frames should be in pts order, ready for display.

> 
>> I would try to attach the metadata in the order as you get it from the
>> demuxer with the pictures as you get them out of the decoder.
>> 
> 
> I tried that

No you haven't.

> and for H.264 it's definitely wrong if I use the frames
> in-order from the demuxed.

as said, for h264 with b frames you need the order _not_ "as demuxed" but "as 
decoded", and I'm not talking about any 'coded_picture_number' but about the 
order of the h264 frames as the decoder returns them. That is the correct 
order, and the pts should reflect that order. If it doesn't, trust the order 
the decoder gives you over the pts.

>  It does work fine for MPEG-2 video.

but not in h264 because in h264 the coded frames are reordered depending on 
which frame is needed for decoding first, not which frame is to be displayed 
first.

> 
> Should I file a bug report?

No. You expect info from the demuxer which is not there.


_______________________________________________
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user

Reply via email to