[FFmpeg-cvslog] lavc/videotoolbox: set attachments on decoded buffers

rcombs git at videolan.org
Thu Dec 23 02:45:23 EET 2021


ffmpeg | branch: master | rcombs <rcombs at rcombs.me> | Sat Dec 18 05:02:47 2021 -0600| [b04601ed6ab91c4f6f5cbe08050ea1e4d001cec4] | committer: rcombs

lavc/videotoolbox: set attachments on decoded buffers

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.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b04601ed6ab91c4f6f5cbe08050ea1e4d001cec4
---

 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) {



More information about the ffmpeg-cvslog mailing list