From patchwork Mon Nov 22 21:58:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: rcombs X-Patchwork-Id: 31547 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:d206:0:0:0:0:0 with SMTP id q6csp7667376iob; Mon, 22 Nov 2021 14:00:21 -0800 (PST) X-Google-Smtp-Source: ABdhPJxp819yAZyLSry2VhQlb8y4KZmfPnPI6AaCMQ2HiFxQ229UpDYkqmjRLzxjBHUfcSTpSSvE X-Received: by 2002:a05:6402:190c:: with SMTP id e12mr626219edz.396.1637618421415; Mon, 22 Nov 2021 14:00:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1637618421; cv=none; d=google.com; s=arc-20160816; b=c0wbIcXW9ZDiP7u6jhyCs9DHgNpM1sTRL5ZFAb2ZbyGYCofto+sI/b+P9XjXDUeA4h sWN6w9dYdgkhJw1ZP5CSWtyf8vE2qn7M5gmaVul6v6JfhsSeZGgTufqzVfDXegXOIayx FHn94BtGeoPlfR0BoRflCK7lBRZe1W2D9qehdp3jZJmmA2qBncy6CCACL40L0FJfyoz7 WkN4Fxcr1bBfay/hOaIzrOPRrUFzG0H70nOr3M8WK+MXm6Zr3V9bbY4zD+73OMtQLKTF tyGW2ANck73DmV9mc6mDlmjxGIImcoEbNj4jB7faad6R3MLmJ2NDB/PVOVvfO4Kp3LSa ldOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=Wwqe+lYcYVcsZX717DnV6KFggupn3ciqlTycHOrz4sw=; b=WNzYSF5k0F1RQK/c7cXrqap5MLlYQ7vQdKfeZawFWX2ucUcaCmd9Whznqxq2etkxCP f9r/Dh9gywlj8u1ku87ihWlq9OxiUmlCuk27gnj4wyQF/BDhld+gpg5z0aeq+zgoeQet vBpf5ZOSLR+kkT2V0NzFXzBU7WHpID8GnPv9X5QMdYos5ZcQtZeEeKmehqrtlf5jrClQ 9pqEjS37oydUhGp9Ymd/LdH1Ix2XYGDjkXgdzghAkxw4MJK9ibJeWwGxJtFUpxx22NSq CfzDdULVKMnt1y2RKOQOcwzpRCooMqkh4MsExCOb53lGlF20/Ok382qfnd99wYsvUUR0 +Log== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@rcombs.me header.s=google header.b=Vd+qM4W0; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=rcombs.me Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id hb42si25525830ejc.325.2021.11.22.14.00.20; Mon, 22 Nov 2021 14:00:21 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@rcombs.me header.s=google header.b=Vd+qM4W0; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=rcombs.me Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 733C768AE36; Mon, 22 Nov 2021 23:58:48 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-io1-f51.google.com (mail-io1-f51.google.com [209.85.166.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1C63B68AE12 for ; Mon, 22 Nov 2021 23:58:39 +0200 (EET) Received: by mail-io1-f51.google.com with SMTP id f9so25151591ioo.11 for ; Mon, 22 Nov 2021 13:58:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rcombs.me; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=33vpX6jqERpP645J+oDXCxTqvfxozRmd2HN+ScmQJeU=; b=Vd+qM4W0uEkgFF84fQxktVeauPVhH07OzIQcCXzYRFtYvbU4pxAvNrSXpi4keBsUwE RZC86Tnb+TjDSZYLNzyOx+/MqqXmcTh0nYtb/1djxdOvkiGcuXmdndM3eV8X3c+md3pL CmVae1DcrCZmdfSnfCJnILQT7e4VtBdAeeclMqwV/CDUHWHDA8KgOP44DFSGaMCDeJlO 73I4mA75IMk7m+l43fL1BnxFe38eJ6CagSPTRoIgyVpD3+g9fOrYy7zxUctNECfGBOji S5FlJ49O7ip4nY6gtO4MJ1w7ATelgrscLx7pOkKTjPPVpzn8iRvuUhn960bQxcYgB8LG cwoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=33vpX6jqERpP645J+oDXCxTqvfxozRmd2HN+ScmQJeU=; b=SYobRB6aUI8SseRabFU+MV92DsdAfG9XOTw4WEjlNxS5sPcQ1rXGwj6BmrvFDNyEWP Ce2zBKdL0CrvsyUr2OjllHM5iOxZU8Vx3nrnanQeY4xbX9csEP1FKKINFSoNfKH4fCmz pzzcukVCfFrV4IS8AEaQ6awbmunqHpqR9D31eycemI3hwzCLL9ILIsbLk3nnUVVCwrbq DRmx+cwwTZpkFvwVg+PZln3YgA6USKheDzFDa0J3IsFrlXj0sfqY3/iWPUExkeDtLLvu svj8FjszpdLvwgvMc1g8zimWdbwHHd4DqaCC+jPt1TiMdF8gVn+c95JSXZAECywDXUoZ Tx3A== X-Gm-Message-State: AOAM5309cQ/bBoCTyRuXXCOCT83bjStn+9QOnVcVuZ5TjMnhrdooyoyO Og9HSpfI22JkUVDB+XHNXCps+6LJ0jH8NBg= X-Received: by 2002:a05:6638:3899:: with SMTP id b25mr311858jav.39.1637618317594; Mon, 22 Nov 2021 13:58:37 -0800 (PST) Received: from rcombs-mbp.localdomain ([2601:243:2000:5ac:edf5:499:2479:42a8]) by smtp.gmail.com with ESMTPSA id o1sm5668802ilj.41.2021.11.22.13.58.36 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 22 Nov 2021 13:58:37 -0800 (PST) From: rcombs To: ffmpeg-devel@ffmpeg.org Date: Mon, 22 Nov 2021 15:58:13 -0600 Message-Id: <20211122215821.9849-8-rcombs@rcombs.me> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211122215821.9849-1-rcombs@rcombs.me> References: <20211122215821.9849-1-rcombs@rcombs.me> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 08/16] lavc/h264dec: support all color formats in videotoolbox hwaccel X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: EUWhwi/lNUu0 --- libavcodec/h264_slice.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c index 89ea16a57f..4467882775 100644 --- a/libavcodec/h264_slice.c +++ b/libavcodec/h264_slice.c @@ -811,6 +811,10 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback) *fmt++ = AV_PIX_FMT_YUV420P9; break; case 10: +#if CONFIG_H264_VIDEOTOOLBOX_HWACCEL + if (h->avctx->colorspace != AVCOL_SPC_RGB) + *fmt++ = AV_PIX_FMT_VIDEOTOOLBOX; +#endif if (CHROMA444(h)) { if (h->avctx->colorspace == AVCOL_SPC_RGB) { *fmt++ = AV_PIX_FMT_GBRP10; @@ -849,6 +853,10 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback) #endif #if CONFIG_H264_NVDEC_HWACCEL *fmt++ = AV_PIX_FMT_CUDA; +#endif +#if CONFIG_H264_VIDEOTOOLBOX_HWACCEL + if (h->avctx->colorspace != AVCOL_SPC_RGB) + *fmt++ = AV_PIX_FMT_VIDEOTOOLBOX; #endif if (CHROMA444(h)) { if (h->avctx->colorspace == AVCOL_SPC_RGB) @@ -872,9 +880,6 @@ static enum AVPixelFormat get_pixel_format(H264Context *h, int force_callback) #endif #if CONFIG_H264_VAAPI_HWACCEL *fmt++ = AV_PIX_FMT_VAAPI; -#endif -#if CONFIG_H264_VIDEOTOOLBOX_HWACCEL - *fmt++ = AV_PIX_FMT_VIDEOTOOLBOX; #endif if (h->avctx->codec->pix_fmts) choices = h->avctx->codec->pix_fmts;