[FFmpeg-devel] The log level of "co located POCs unavailable" should not be ERROR

Yukun Guo gyk.net at gmail.com
Sat Mar 2 07:23:17 EET 2019


On Fri, 1 Mar 2019 at 05:30, Michael Niedermayer wrote:
> When data is missing (in live streaming or otherwise) it under
> almost all cases cannot be losslessly recovered. So this use matches
> the definition

Yes, this is reasonable. But then "Frame num gap" should be of ERROR
level too. H.264 standard states if there is a frame num gap, the
decoder should infer an unintentional loss of pictures, assuming
gaps_in_frame_num_value_allowed_flag = 0. But it is possible that
FFmpeg encounters a frame loss but does not print any error messages,
because the error concealment procedure
(https://github.com/FFmpeg/FFmpeg/blob/n4.1.1/libavcodec/h264_slice.c#L1577)
will clone the previous frame in place of the missing one.

Also, regarding to the error concealment, why isn't
`short_ref[0].field_poc` copied for cloned frames? The unset field_poc
causes "co located POCs unavailable" error, despite
`ref_list[1][0].poc` is valid when doing spatial direct predition.


More information about the ffmpeg-devel mailing list