PR #22823 opened by Jun Zhao (mypopydev)
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22823
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22823.patch


>From 07fbb28b620f96651b98c0089030f313c432c22e Mon Sep 17 00:00:00 2001
From: Jun Zhao <[email protected]>
Date: Sun, 12 Apr 2026 21:28:20 +0800
Subject: [PATCH 1/2] lavc/videotoolboxenc: return SEI parse errors

Return the actual find_sei_end() error when SEI appending fails instead of
reusing the previous status code. This preserves the real parse failure for
callers instead of reporting malformed SEI handling as success.

Signed-off-by: Jun Zhao <[email protected]>
---
 libavcodec/videotoolboxenc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c
index 5ea9afee22..c69da4ad5a 100644
--- a/libavcodec/videotoolboxenc.c
+++ b/libavcodec/videotoolboxenc.c
@@ -2109,7 +2109,7 @@ static int copy_replace_length_codes(
             uint8_t *new_sei;
             old_sei_length = find_sei_end(avctx, dst_box, box_len, &new_sei);
             if (old_sei_length < 0)
-                return status;
+                return old_sei_length;
 
             wrote_bytes = write_sei(sei,
                                     SEI_TYPE_USER_DATA_REGISTERED_ITU_T_T35,
-- 
2.52.0


>From 1e25a56444c0dbebc7849c6fbe1a8fd51843cfa3 Mon Sep 17 00:00:00 2001
From: Jun Zhao <[email protected]>
Date: Sun, 12 Apr 2026 22:25:44 +0800
Subject: [PATCH 2/2] lavc/videotoolbox_vp9: fix vpcC flags offset

Write the 24-bit vpcC flags field at the current cursor position after
the version byte. The previous code wrote to p+1 instead of p, leaving
one byte uninitialized between version and flags and shifting all
subsequent fields (profile, level, bitdepth, etc.) by one byte.

Signed-off-by: Jun Zhao <[email protected]>
---
 libavcodec/videotoolbox_vp9.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/videotoolbox_vp9.c b/libavcodec/videotoolbox_vp9.c
index f5489854e3..65e498af50 100644
--- a/libavcodec/videotoolbox_vp9.c
+++ b/libavcodec/videotoolbox_vp9.c
@@ -82,7 +82,7 @@ CFDataRef 
ff_videotoolbox_vpcc_extradata_create(AVCodecContext *avctx)
     p = vt_extradata;
 
     *p++ = 1; /* version */
-    AV_WB24(p + 1, 0); /* flags */
+    AV_WB24(p, 0); /* flags */
     p += 3;
 
    *p++ = h->h.profile;
-- 
2.52.0

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

Reply via email to