From patchwork Fri Dec 17 00:12:06 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: rcombs X-Patchwork-Id: 32669 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp1001533iog; Thu, 16 Dec 2021 16:12:40 -0800 (PST) X-Google-Smtp-Source: ABdhPJyL+Cg9eAqX5mv76XL7XLN00jOa2wDpj5Ha/qTs8nRdnfNgC9EWBnFwTCnmoPb6d1gHPjfZ X-Received: by 2002:a17:906:e118:: with SMTP id gj24mr442984ejb.138.1639699960747; Thu, 16 Dec 2021 16:12:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1639699960; cv=none; d=google.com; s=arc-20160816; b=TpiyrUx/jS1tcnsFHRCKkhFn9vXhRweEgiNc+kKnG37yt/1tiA03UzRRD1rH2q86JM kAss9Opdq4gb34sj+gKYD2ZmKINS+vQer7IV0tVqGc64+1hor5S4+XlLGWP9c2Si9ZA6 8AW7bBBV6B1yRbtQQiPC3UJ3BQSbLHaM5AMJhc+8KDBI/zag++sl7iogsCoZJDnpGEQZ PpNBl+xKvwUZVRvK6wiUNqBaixuX+FFCvJcnszj5o9IB8qetHFJGuPVww6QdWYdPMLeT z44PrAAapFmkXvYVTN1pJ0bOWwRZu9DgK1dUhRWiL+Q7jfPVyImQ1Y4lVXfuVa4TUNlj mUsg== 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=xxKIjgzGH2OsW4GdGv59wmK6NQtXn6FlQQ7YLDJKY2c=; b=jMnCepTp3tfghc0v1yi5+tHDwdqViE/+cuqSp59jr8sW2rE3a8lNQYuiJVLdWB+ni2 yR6Nc7cjibpnaN7x+FX9BoUd8fnG8QPx2cjlz/YvqM7S3zfGBrqJp7Fu+XFkjjn9ONBR Eh6FUcKENdcBH9a6NOdVtNpxCnm6ZP26sLaM0CQ/FftpJE55nZGloecCba2oFLG6JH6U 0sbZYOTV+HsECOGgYStN6H6gYZ4KU/hhh2A2TVJs3vcqvJdHlnb6L7H2IXP2I9hPUCWf uWkmlznLjGSMdMmlQqFsRqWEkZ8UKPQTeQH8oFkltjsEUvlYJ+tp+LMmVYAOG4YQNpo3 jxTQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@rcombs.me header.s=google header.b=ZeoDuBts; 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 ji1si4160754ejc.121.2021.12.16.16.12.40; Thu, 16 Dec 2021 16:12:40 -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=ZeoDuBts; 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 35D1F68AFCB; Fri, 17 Dec 2021 02:12:30 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-io1-f43.google.com (mail-io1-f43.google.com [209.85.166.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C325768A852 for ; Fri, 17 Dec 2021 02:12:21 +0200 (EET) Received: by mail-io1-f43.google.com with SMTP id k21so741127ioh.4 for ; Thu, 16 Dec 2021 16:12:21 -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=iY9j1tUgehu/kcTw6agrlWCMz2/XTxqD90C/Ko67Zoo=; b=ZeoDuBtsWnfpcZg2rC/E1izIXasqK2N0+uotSvq9A4D/jjck/9PmYGI4py2kzgna70 f/gKQdQhKFnJL6q/UECYvfr9RI+gTeMSuB2qjtS3GGGyrUEvsf1vDPoEy841IHEDluaG 7F7urksdiGIshm7ZRF2bMWb8mBFgjWM2xTuiwjGO3leiN8z/aUVOXaZildi7t7OJlpTa aSDTQxgQcMMJA5C/kUbkD0bSfQRnddx3oEbRFt+8TqGcNtx/kpGTKZ8+5dFyWMs+SbtZ ZPaTWFuEcRDJTKKtCJsE/vhBmfBz/MOm8sjbtnsfBCkJK6rrZlKY/ByGHbDRSfZ8Yy/9 dmJg== 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=iY9j1tUgehu/kcTw6agrlWCMz2/XTxqD90C/Ko67Zoo=; b=DgdmjV3e5vyJdnPwJ/m5rBPJIzioDbz1KW+gccANfDz4GbDMC6eYwvgahZCXFyT5dh 8EQELnah23dWBD/DKVfsjXQdPIUDr/l4i+IfMiW5kYub+5n5uPSo5VjhnK9Rv/6aGqSV W+OvVF9NIir8D6pLlT7/FzNvilJzFoVkNZV0g6WdoEIHHye9VJAie9hlLY6T8/osYTAd cJAjwcm9jmhDSlOgWbwzHcbrEm0wwrXFRSrRz33sD/IBC4HSH4x2TZsZg0khvhj/dpuw cj+5pamJVYDFAYZxjYWmFcLNHE3T4ieWkUVKIjQerdJZCjz3wBmIzKHLzPB/uDNVdZtE TcMg== X-Gm-Message-State: AOAM530RdsMh5rS87SzuhoVPeXtWNFx3oAvKOQlo2Z0itOcC2VC7dgtZ dMHewqpOoTpO8vxojmHo0co4ow9BDfyj1rY= X-Received: by 2002:a05:6638:10ea:: with SMTP id g10mr258139jae.117.1639699939819; Thu, 16 Dec 2021 16:12:19 -0800 (PST) Received: from rcombs-mbp.localdomain ([2601:243:2000:5ac:1163:bda5:7473:fab3]) by smtp.gmail.com with ESMTPSA id z13sm1571257iln.43.2021.12.16.16.12.19 for (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 16 Dec 2021 16:12:19 -0800 (PST) From: rcombs To: ffmpeg-devel@ffmpeg.org Date: Thu, 16 Dec 2021 18:12:06 -0600 Message-Id: <20211217001215.75135-2-rcombs@rcombs.me> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211217001215.75135-1-rcombs@rcombs.me> References: <20211217001215.75135-1-rcombs@rcombs.me> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 01/10] lavc/videotoolboxenc: use common routine for pixfmt conversion 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: e8QUbswLgtCs --- libavcodec/videotoolboxenc.c | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) diff --git a/libavcodec/videotoolboxenc.c b/libavcodec/videotoolboxenc.c index ebaa3ebdc8..1e7c164a97 100644 --- a/libavcodec/videotoolboxenc.c +++ b/libavcodec/videotoolboxenc.c @@ -29,6 +29,7 @@ #include "libavutil/avstring.h" #include "libavcodec/avcodec.h" #include "libavutil/pixdesc.h" +#include "libavutil/hwcontext_videotoolbox.h" #include "internal.h" #include #include "atsc_a53.h" @@ -797,25 +798,9 @@ static int get_cv_pixel_format(AVCodecContext* avctx, range != AVCOL_RANGE_JPEG; //MPEG range is used when no range is set - if (fmt == AV_PIX_FMT_NV12) { - *av_pixel_format = range == AVCOL_RANGE_JPEG ? - kCVPixelFormatType_420YpCbCr8BiPlanarFullRange : - kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange; - } else if (fmt == AV_PIX_FMT_YUV420P) { - *av_pixel_format = range == AVCOL_RANGE_JPEG ? - kCVPixelFormatType_420YpCbCr8PlanarFullRange : - kCVPixelFormatType_420YpCbCr8Planar; - } else if (fmt == AV_PIX_FMT_BGRA) { - *av_pixel_format = kCVPixelFormatType_32BGRA; - } else if (fmt == AV_PIX_FMT_P010LE) { - *av_pixel_format = range == AVCOL_RANGE_JPEG ? - kCVPixelFormatType_420YpCbCr10BiPlanarFullRange : - kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange; - } else { - return AVERROR(EINVAL); - } + *av_pixel_format = av_map_videotoolbox_format_from_pixfmt2(fmt, range == AVCOL_RANGE_JPEG); - return 0; + return *av_pixel_format ? 0 : AVERROR(EINVAL); } static void add_color_attr(AVCodecContext *avctx, CFMutableDictionaryRef dict) {