[FFmpeg-devel] [PATCH 3/3] lavc/videotoolbox: set attachments on decoded buffers

rcombs rcombs at rcombs.me
Sat Dec 18 13:09:53 EET 2021


VideoToolbox internally sets all the colorspace parameters to BT709,
regardless of what the bitstream actually indicates, so we need to
replace that with what we've parsed.
---
 libavcodec/videotoolbox.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c
index 519f55a9ab..69beb3881f 100644
--- a/libavcodec/videotoolbox.c
+++ b/libavcodec/videotoolbox.c
@@ -90,6 +90,7 @@ int ff_videotoolbox_buffer_copy(VTContext *vtctx,
 
 static int videotoolbox_postproc_frame(void *avctx, AVFrame *frame)
 {
+    int ret;
     VTHWFrame *ref = (VTHWFrame *)frame->buf[0]->data;
 
     if (!ref->pixbuf) {
@@ -103,6 +104,9 @@ static int videotoolbox_postproc_frame(void *avctx, AVFrame *frame)
     frame->crop_top = 0;
     frame->crop_bottom = 0;
 
+    if ((ret = av_vt_pixbuf_set_attachments(avctx, ref->pixbuf, frame)) < 0)
+        return ret;
+
     frame->data[3] = (uint8_t*)ref->pixbuf;
 
     if (ref->hw_frames_ctx) {
-- 
2.33.1



More information about the ffmpeg-devel mailing list