[FFmpeg-trac] #11055(avcodec:reopened): OGOP (Open GOP) in certain conditions may cause missing frames of decoding
FFmpeg
trac at avcodec.org
Fri Jun 28 18:46:11 EEST 2024
#11055: OGOP (Open GOP) in certain conditions may cause missing frames of decoding
-------------------------------------+-------------------------------------
Reporter: markfilipak | Owner: (none)
Type: defect | Status: reopened
Priority: normal | Component: avcodec
Version: git-master | Resolution:
Keywords: everything | Blocked By:
OGOP |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Comment (by pdr0):
Replying to [comment:190 markfilipak]:
> The question I ask and have always asked is how can framecrc and
showinfo ever be different?
ie. Why does showinfo abort early/ return EOF, with only 53 frames , when
there are 99 coded frames ?
framecrc exerpt
[in#0/mpegts @ 00000088c45fcb00] Input stream #0:0 (video): 99 packets
read (14236691 bytes); 53 frames decoded; 0 decode
It might be that -vf showinfo is running it through the decoder, not just
counting packets. If you swap the decoder (e.g. if you have nvidia card)
it shows different information with 97 frames for -vf showinfo. Some
errors in the video bitstream might be causing early termination in the
filtergraph for the default SW decoder, when other decoders might handle
it differently
(sorry, this is a windows cmd)
ffmpeg -report -c:v h264_cuvid -i Ticket_11055.m2ts -vf showinfo -c:v
rawvideo -f null -
Why only 97 frames ? I believe it's the way ffmpeg handles missing
information. The 1st 2 frames in display order are missing information and
are dropped by ffmpeg - Some applications place duplicates for those
error frames, others drop them - it's application dependent. The nvdec
decoder itself returns 99 frames. e.g. if you use LSmash
decoder="h264_cuvid" or DGDecNV with avisynth or vapoursynth, the 2 error
frames are kept as duplicate placeholder frames. Framecount has sync
implications when you cut/append streams. (But those errors shouldn't be
there in the first place had the stream processed properly.)
--
Ticket URL: <https://trac.ffmpeg.org/ticket/11055#comment:192>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list