[FFmpeg-devel] [PATCH] avcodec/mpeg12dec: Do not decode B-frames if dummy reference frames are allocated

otya otya281 at gmail.com
Sat Feb 15 12:18:29 EET 2025


B-frames that cannot be decoded will be properly skipped if field pictures are
used.

Fixes: c85508f5a91cc0caf18ba33c941536bf8b99b81b

Signed-off-by: otya <otya281 at gmail.com>
---
 libavcodec/mpeg12dec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/mpeg12dec.c b/libavcodec/mpeg12dec.c
index 0002f016e9..89faaa6f48 100644
--- a/libavcodec/mpeg12dec.c
+++ b/libavcodec/mpeg12dec.c
@@ -2458,7 +2458,7 @@ static int decode_chunks(AVCodecContext *avctx, AVFrame *picture,
                     return AVERROR_INVALIDDATA;
                 }
 
-                if (!s2->last_pic.ptr) {
+                if (!s2->last_pic.ptr || s2->last_pic.ptr->dummy) {
                     /* Skip B-frames if we do not have reference frames and
                      * GOP is not closed. */
                     if (s2->pict_type == AV_PICTURE_TYPE_B) {
-- 
2.25.1



More information about the ffmpeg-devel mailing list