Hi,

Il 30/07/24 22:54, michael at niedermayer.cc (Michael Niedermayer) ha scritto:
Why does playback fail ? > 1/1 and unspecified are different things, 0/0 would 
be unspecified
where does 20480/0 turn into 20480/1 ? or did i misunderstand this?

It seems that denominator 0 is replaced with 1 here:


https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/262168b04e6807fce6a78507c14cfc166ba72845:/libavcodec/h264_ps.c#l552

Considering the other replies I would guess that the intent is to prevent a division by zero from happening, but the side effect is that an invalid SAR is silently converted to a valid one (even if quite extreme).

I am not sure why that in turn causes the playback problems. I noticed that the same problem can be reproduced on any other H.264 file simply by forcing the broken 20480/0 SAR in ff_h2645_decode_common_vui_params().

After a few more experiments, it seems that ffmpeg is indeed able to handle an unspecified SAR, but it doesn't like it to be represented as x/0, only 0/x. I'll send a revised patch which replaces x/0 with 1/0, hopefully addressing your concern.

Thanks, Giovanni.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to