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.
This commit is contained in:
rcombs 2021-12-18 05:02:47 -06:00
parent 5afc5661ac
commit b04601ed6a

View File

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