The branch, master has been updated
       via  fbbb2996d573844a2f4c901b704d8361a384766b (commit)
      from  1f2de0f61888e4d16b9e124fc4b4728dd3642981 (commit)


- Log -----------------------------------------------------------------
commit fbbb2996d573844a2f4c901b704d8361a384766b
Author:     DE-AI <[email protected]>
AuthorDate: Fri Sep 5 15:27:01 2025 +0000
Commit:     James Almer <[email protected]>
CommitDate: Mon Sep 8 14:03:52 2025 +0000

    vc1_parser: Reset unesc_index after extracting header with complete frames
    
    When PARSER_FLAG_COMPLETE_FRAMES is set (e.g. in Matroska),
    unesc_index is not reset after the first frame, which causes
    subsequent frames to inherit leftover header data.
    
    This leads to incorrect keyframe marking and broken decoding.
    
    See also this bug report: https://trac.ffmpeg.org/ticket/8515
    
    Signed-off-by: DE-AI <[email protected]>

diff --git a/libavcodec/vc1_parser.c b/libavcodec/vc1_parser.c
index a536a7bcf8..124a7a771f 100644
--- a/libavcodec/vc1_parser.c
+++ b/libavcodec/vc1_parser.c
@@ -179,6 +179,7 @@ static int vc1_parse(AVCodecParserContext *s,
             // start codes if we know it contains a complete frame and
             // we've already unescaped all we need of the frame header
             vc1_extract_header(s, avctx, unesc_buffer, unesc_index);
+            unesc_index = 0;
             break;
         }
         if (unesc_index >= UNESCAPED_THRESHOLD && !start_code_found) {

-----------------------------------------------------------------------

Summary of changes:
 libavcodec/vc1_parser.c | 1 +
 1 file changed, 1 insertion(+)


hooks/post-receive
-- 

_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to