From patchwork Fri Jun 19 01:52:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20493 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp105889ybm; Thu, 18 Jun 2020 18:53:35 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwOA9RVECDTvFVXxYVKNX1DqtLHY/0uUgQicWqel+lnOVjjKbfGi0oUP/67c2xJ5tB9AoOU X-Received: by 2002:a1c:9ad8:: with SMTP id c207mr1069737wme.45.1592531615052; Thu, 18 Jun 2020 18:53:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531615; cv=none; d=google.com; s=arc-20160816; b=YdRSFIWX0s9e6PDjIwa2I8xOxNbRGToFnbl9frPJoqLK+kiJP80xBk7/l3MrAf9MCe U+Si7i4ddWMOMh2BdAD3bp3cayKTqUd0KyQp23PhQbvtLa5+bgWSi0I6yi+ypze6KrlS aLGeAojq7OxQ8n2jxKOfqsj3W7vfni8aJfag4QYSvJnWITM4cDC3Kpsl4/VMQqktnqXu pupuRAcAaMFuJdtwQ2Z5Unm9vSJo4O9FlPF3TzsJ3MD9ghbRKAXJjB9ZMRDrTBFsd1cL RHZBhZoHdp6EWg1Ebhk+B7l+gAgt747thekcHzGKjEb8fQTame/8A1PpEsu9pMOKncyb YTNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:ironport-sdr :ironport-sdr:delivered-to; bh=oPPQ/Y8I2z2Jfw9p5S3zoOPO4c86AShg+yXohItEi2o=; b=PARdFjR1Ns9Y6JLdNCa/x4sXBHgRtrmZjEsaAiBRiX4bCKt1LVeeGZS7yHQZf04cqy a1THLENSoQsDXo1M5/zrg7SSfIDC2UP6f2WQwzxuqBkI/UdDtS8laBq1PXgy26mFXRez J2qZ+FW87xKBuDFlyERWZB+Ge67c0w9uVKagxkHNjtoAiNfNWMd4aoDTxYejftSmPtGH IqaCew7XWleEVWh/d5ie6FjN+Ub+ChLm87w0nJh5oy0tzohosIKTbnL1Ju4ABMGLeZfw us7ECDiQokG1d3xe/ofM5FhMSFNchsKk13NKXbDi0OM7AmtwOQh2QeVe53Dgz/iwkdYB EiHw== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id q14si4708515wrg.562.2020.06.18.18.53.34; Thu, 18 Jun 2020 18:53:35 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 8263D68B510; Fri, 19 Jun 2020 04:53:32 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AE5C368B260 for ; Fri, 19 Jun 2020 04:53:25 +0300 (EEST) IronPort-SDR: 7iKqCXrVsPjrTjiZuAIwkU4GWNu3M9ZkWBOn9mz8GZfaKSquoXaJWkzfq+07q5M2OX0ObFRSBu L4gazBDGM2yQ== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278644" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278644" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:22 -0700 IronPort-SDR: xkc6N4IqS4vQ7bFy41Y8eOiygclpzRejlJJOVA9dTRCEZeKxrEj6p8TEoXYj/CAT6rrC06gKqg CoVmcbBOUtqQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989391" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:21 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:40 +0800 Message-Id: <20200619015248.21873-1-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 Subject: [FFmpeg-devel] [PATCH v1 1/9] lavu/pix_fmt: add P012 pixel format X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 4Q/gV9FUoomo Content-Length: 5775 P012 is 12bit planner format which is similar to NV12. It using two bytes to store 12bit valid data and 4bit zero in LSB. This format will be used for hardware decode/encode in VAAPI and QSV. Signed-off-by: Fei Wang --- libavutil/pixdesc.c | 24 ++++++++++++++++++++++++ libavutil/pixfmt.h | 5 +++++ libavutil/version.h | 2 +- tests/ref/fate/sws-pixdesc-query | 11 +++++++++++ 4 files changed, 41 insertions(+), 1 deletion(-) diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index 8274713226..38297e2e83 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -2147,6 +2147,30 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { }, .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_BE, }, + [AV_PIX_FMT_P012LE] = { + .name = "p012le", + .nb_components = 3, + .log2_chroma_w = 1, + .log2_chroma_h = 1, + .comp = { + { 0, 2, 0, 4, 12, 1, 11, 1 }, /* Y */ + { 1, 4, 0, 4, 12, 3, 11, 1 }, /* U */ + { 1, 4, 2, 4, 12, 3, 11, 3 }, /* V */ + }, + .flags = AV_PIX_FMT_FLAG_PLANAR, + }, + [AV_PIX_FMT_P012BE] = { + .name = "p012be", + .nb_components = 3, + .log2_chroma_w = 1, + .log2_chroma_h = 1, + .comp = { + { 0, 2, 0, 4, 12, 1, 11, 1 }, /* Y */ + { 1, 4, 0, 4, 12, 3, 11, 1 }, /* U */ + { 1, 4, 2, 4, 12, 3, 11, 3 }, /* V */ + }, + .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_BE, + }, [AV_PIX_FMT_P016LE] = { .name = "p016le", .nb_components = 3, diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h index a46acf3c5e..261e1ea352 100644 --- a/libavutil/pixfmt.h +++ b/libavutil/pixfmt.h @@ -360,6 +360,10 @@ enum AVPixelFormat { AV_PIX_FMT_X2RGB10LE, ///< packed RGB 10:10:10, 30bpp, (msb)2X 10R 10G 10B(lsb), little-endian, X=unused/undefined AV_PIX_FMT_X2RGB10BE, ///< packed RGB 10:10:10, 30bpp, (msb)2X 10R 10G 10B(lsb), big-endian, X=unused/undefined + + AV_PIX_FMT_P012LE, ///< like NV12, with 12bpp per component, little-endian + AV_PIX_FMT_P012BE, ///< like NV12, with 12bpp per component, big-endian + AV_PIX_FMT_NB ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions }; @@ -450,6 +454,7 @@ enum AVPixelFormat { #define AV_PIX_FMT_Y210 AV_PIX_FMT_NE(Y210BE, Y210LE) #define AV_PIX_FMT_X2RGB10 AV_PIX_FMT_NE(X2RGB10BE, X2RGB10LE) +#define AV_PIX_FMT_P012 AV_PIX_FMT_NE(P012BE, P012LE) /** * Chromaticity coordinates of the source primaries. diff --git a/libavutil/version.h b/libavutil/version.h index 3ce9b1831e..a63f79feb1 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -79,7 +79,7 @@ */ #define LIBAVUTIL_VERSION_MAJOR 56 -#define LIBAVUTIL_VERSION_MINOR 55 +#define LIBAVUTIL_VERSION_MINOR 56 #define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ diff --git a/tests/ref/fate/sws-pixdesc-query b/tests/ref/fate/sws-pixdesc-query index c3cccfa492..f738a3ad74 100644 --- a/tests/ref/fate/sws-pixdesc-query +++ b/tests/ref/fate/sws-pixdesc-query @@ -57,6 +57,8 @@ isNBPS: nv20le p010be p010le + p012be + p012le x2rgb10be x2rgb10le xyz12be @@ -137,6 +139,7 @@ isBE: grayf32be nv20be p010be + p012be p016be rgb444be rgb48be @@ -188,6 +191,8 @@ isYUV: nv42 p010be p010le + p012be + p012le p016be p016le uyvy422 @@ -282,6 +287,8 @@ isPlanarYUV: nv42 p010be p010le + p012be + p012le p016be p016le yuv410p @@ -365,6 +372,8 @@ isSemiPlanarYUV: nv42 p010be p010le + p012be + p012le p016be p016le @@ -740,6 +749,8 @@ Planar: nv42 p010be p010le + p012be + p012le p016be p016le yuv410p From patchwork Fri Jun 19 01:52:41 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20485 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp105948ybm; Thu, 18 Jun 2020 18:53:46 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzVmiz0ckLiVL2ELKhxZckLb+AX2iJh27Vs1emTGCIyrmFksBBtiUPYBzvoxpXAWp3Gl6fD X-Received: by 2002:a05:6000:128e:: with SMTP id f14mr1472738wrx.276.1592531626417; Thu, 18 Jun 2020 18:53:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531626; cv=none; d=google.com; s=arc-20160816; b=vJyU4f2FBpl6SrzcGWYT6bRWFV5Mvnx32M7SX5/OIQW7v3apCfQ54xc0rd+gVOfB9e f9xPKHvunnw0tsZXC21Gl/wY2ij3/id2W7u/UPI1JMZ6j94q/BBPpG7VpLJL3UuknCMb G/cLCBSNQXn8BnOPUoJ7RZyz2KGIV73hoPgOsaOWFAwBN3DwDLcvaYA2MQzxIR/83FIR HZ6Tvn/rBmL7IsYF9W8qvbnbovOSj+t6kicNA1PXPpfoBPm89RrAh1HRHBBWgQryaBUA uj617fYtMJvIeXfXxerXXlDKASgdemne8wfH5uZinyF4FWZpl+AeeglirzGWiqg/Mh+R DjOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=wpfMsWFCSBi4TcfKLgjvD2HEV58CwjNS9n9ZdroBVwc=; b=EwED7ToKy7jbtC9y7qx8tD/vAZIw2W/MxcTKB+kRIrl+nb3x38gJ4QBRiWUlg/l3kY ABaZMz31TEpTw8DIyrjW0tAcHv9pliy4sv4zdLRjcP0n8Mv/T2Q8mM+3/IJlplqbJSd/ W+hKN5kSIBHnc5OKc0ji8wJIhglFzFkS1JlHxn3DPatRmhITzS9lgL5OYysJpiqpBPFQ aDtJng+PVIem28cAV7MGszmDywiyO/mAhcXCllZLF64Q0kFty3wR2wn/SxTIwbTaoDZs kOafKdDlbyzcUrHkf3PV6kuNydCMARv+88Y81IzRFQyrLkmhq7dGFBOaAGamfftWJt5f 5UEQ== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id r28si2994724wra.226.2020.06.18.18.53.46; Thu, 18 Jun 2020 18:53:46 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 89E7B68B584; Fri, 19 Jun 2020 04:53:35 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 48EBB68AD86 for ; Fri, 19 Jun 2020 04:53:27 +0300 (EEST) IronPort-SDR: /qOQJ+nwkMOrwAospaU23yAV+Zp6ehuDKsnDtFGMUVifCGRIvwPT6pfmDhphRnxiqgncLV2j5L niK6C+ZAi0fA== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278646" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278646" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:23 -0700 IronPort-SDR: FAWJniKgU9hlgrqIcTudU7uyrRE/rn74HW4si+DyYA+h+7nYJvq8amo8KsbL6Y32eiOIzwK9or Ax3rAY2MFZ+Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989396" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:22 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:41 +0800 Message-Id: <20200619015248.21873-2-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 2/9] doc/APIchanges: add new AV_PIX_FMT_P012 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: VdC+FQtwtcR9 Content-Length: 997 Signed-off-by: Fei Wang --- doc/APIchanges | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/APIchanges b/doc/APIchanges index 1d6cc36b8c..75bca69393 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -15,6 +15,9 @@ libavutil: 2017-10-21 API changes, most recent first: +2020-06-12 - 19c969c599 - lavu 56.56.100 - pixdesc.h + Add AV_PIX_FMT_P012. + 2020-06-12 - b09fb030c1 - lavu 56.55.100 - pixdesc.h Add AV_PIX_FMT_X2RGB10. From patchwork Fri Jun 19 01:52:42 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20490 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp106055ybm; Thu, 18 Jun 2020 18:53:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw3tqD+2dFHjqeLwxXFtfznVF4bVnepaAQAqjoBDpQ6inGgi1ja+8yiPW1iSPLXAfIR7vdT X-Received: by 2002:a1c:2045:: with SMTP id g66mr1109772wmg.53.1592531638797; Thu, 18 Jun 2020 18:53:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531638; cv=none; d=google.com; s=arc-20160816; b=nZzMqjRzazyD2VVE5hlnfyOO6jImpGHXWNg9pFj/09U5LaXBm+OVP0oo1etLPpH83e uswCUDJy0KUj84l9bPxlfxrYHtPYQzQvq6k6MZ1sjFy5qmqAsNXYBpx9ylUcF+/Hk33l 8iO2jsj/McZCAe9VhCrI6GMY3j/gkHUV3CZIfoweC2lWHANe2YtxDoLF4mjiSfDN7N+5 gSoITSIN+GrmI4vXyPuXOHOY1h+aeW15q6YpKGc+tN0JPj/+bomRUbk/yhzQcHhuS7aj ftsDo7rHM9G5fAivtlTY+al74DRId1k6YPJqeOSfH3NQCGsW4fi3QWJCYeFXpZ+Izrf6 Xk6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=T1OpoffR1uh0TIlfhnSxIgyWfGWi50FcpUwa6YiWr5M=; b=izQZdffCg4h0NzmceGY9mFoF+WIaFBH6WPfeVpjg5PelTjhlUQNUmE7WfXy8kGQEPP Koqz7icjU7kUvPrSGZVmApih6B34qNFAVENELiA+iy0D7f8XAYBnQ/C6Ziitgwm4mwy6 rLb2EE0+z+lxhMowOHdBCkZ4NP7LhvThMHqqSjyY1XB0A0Cgo2dMscbDckX6hXo4erNS lVHf1ME8SsH/UWGYq8Gg7EsKLH7jy28ubgEiU/tCQprqq2ZQHKUKs0dInr5o9j+QsLxf 5IwyqMO9QiHBX61h44m37iAcBHvkOf4ip3DHbI2fK7lKIVmkOr9MoWHOdzKzhdQJfvpS IoGA== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id m10si4925514wrb.404.2020.06.18.18.53.58; Thu, 18 Jun 2020 18:53:58 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2E7BF68B5CC; Fri, 19 Jun 2020 04:53:37 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 53A0468B545 for ; Fri, 19 Jun 2020 04:53:28 +0300 (EEST) IronPort-SDR: XL/8Ot+Oc/kZml1ZtdTu+y1HAtcHRt6knQXV1qP4znzUyA3/HNkh3xbpAVggzs83MNBdP26q3Q kTdIb+TJsAJA== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278650" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278650" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:24 -0700 IronPort-SDR: 5PF503baFjCjRo40j/SDD8XG7Rm0YQAY/4KMda3f6T8DrZEjx2O2w1zIJTqDEzR2+KQKPyojec +VkDD4qZHGMA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989399" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:23 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:42 +0800 Message-Id: <20200619015248.21873-3-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 3/9] swscale: Add swscale input support for P012 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: Ov6wHus8s2vw Content-Length: 4693 Signed-off-by: Fei Wang --- libswscale/input.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++ libswscale/utils.c | 1 + 2 files changed, 53 insertions(+) diff --git a/libswscale/input.c b/libswscale/input.c index 0bd1aa7bc9..b0a7d21e60 100644 --- a/libswscale/input.c +++ b/libswscale/input.c @@ -739,6 +739,46 @@ static void p010BEToUV_c(uint8_t *dstU, uint8_t *dstV, } } +static void p012LEToY_c(uint8_t *dst, const uint8_t *src, const uint8_t *unused1, + const uint8_t *unused2, int width, uint32_t *unused) +{ + int i; + for (i = 0; i < width; i++) { + AV_WN16(dst + i * 2, AV_RL16(src + i * 2) >> 4); + } +} + +static void p012BEToY_c(uint8_t *dst, const uint8_t *src, const uint8_t *unused1, + const uint8_t *unused2, int width, uint32_t *unused) +{ + int i; + for (i = 0; i < width; i++) { + AV_WN16(dst + i * 2, AV_RB16(src + i * 2) >> 4); + } +} + +static void p012LEToUV_c(uint8_t *dstU, uint8_t *dstV, + const uint8_t *unused0, const uint8_t *src1, const uint8_t *src2, + int width, uint32_t *unused) +{ + int i; + for (i = 0; i < width; i++) { + AV_WN16(dstU + i * 2, AV_RL16(src1 + i * 4 + 0) >> 4); + AV_WN16(dstV + i * 2, AV_RL16(src1 + i * 4 + 2) >> 4); + } +} + +static void p012BEToUV_c(uint8_t *dstU, uint8_t *dstV, + const uint8_t *unused0, const uint8_t *src1, const uint8_t *src2, + int width, uint32_t *unused) +{ + int i; + for (i = 0; i < width; i++) { + AV_WN16(dstU + i * 2, AV_RB16(src1 + i * 4 + 0) >> 4); + AV_WN16(dstV + i * 2, AV_RB16(src1 + i * 4 + 2) >> 4); + } +} + static void p016LEToUV_c(uint8_t *dstU, uint8_t *dstV, const uint8_t *unused0, const uint8_t *src1, const uint8_t *src2, int width, uint32_t *unused) @@ -1249,6 +1289,12 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c) case AV_PIX_FMT_P010BE: c->chrToYV12 = p010BEToUV_c; break; + case AV_PIX_FMT_P012LE: + c->chrToYV12 = p012LEToUV_c; + break; + case AV_PIX_FMT_P012BE: + c->chrToYV12 = p012BEToUV_c; + break; case AV_PIX_FMT_P016LE: c->chrToYV12 = p016LEToUV_c; break; @@ -1692,6 +1738,12 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c) case AV_PIX_FMT_P010BE: c->lumToYV12 = p010BEToY_c; break; + case AV_PIX_FMT_P012LE: + c->lumToYV12 = p012LEToY_c; + break; + case AV_PIX_FMT_P012BE: + c->lumToYV12 = p012BEToY_c; + break; case AV_PIX_FMT_GRAYF32LE: #if HAVE_BIGENDIAN c->lumToYV12 = grayf32ToY16_bswap_c; diff --git a/libswscale/utils.c b/libswscale/utils.c index dcd1dbaa76..dd2e3f6a75 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -272,6 +272,7 @@ static const FormatEntry format_entries[] = { [AV_PIX_FMT_NV42] = { 1, 1 }, [AV_PIX_FMT_Y210LE] = { 1, 0 }, [AV_PIX_FMT_X2RGB10LE] = { 1, 1 }, + [AV_PIX_FMT_P012LE] = { 1, 0 }, }; int sws_isSupportedInput(enum AVPixelFormat pix_fmt) From patchwork Fri Jun 19 01:52:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20492 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp106099ybm; Thu, 18 Jun 2020 18:54:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwWBjukDHJl7UCBr0LT/l09lmu/OleogSXch+6XtJbW+GAzg2zTHNKl6VskPZX6R+bdgm72 X-Received: by 2002:a1c:2e58:: with SMTP id u85mr1098197wmu.123.1592531644682; Thu, 18 Jun 2020 18:54:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531644; cv=none; d=google.com; s=arc-20160816; b=MlEBeP2gN5xELMIt6Ca7VaaCgz2Yp2E8x6xaomXhm/sz8hcj6ghb+0FULYiwwRj+zj Wwe+g8nkF1VdaNshDgE2FI4zmd6OEpkDfAkMydiGgjT78G7LuVqBd+OGMKWBYp5ufcDa EFdu7I5KjPumRJ6Gd8B+VPtuIgsTBCMtt+7t/M042/aupTHgYYsR7sSuqhLqH8Z5Cmvm fJZz2PVMp4T2TFynSH4ECLI2QVa9j0/8bmGa6lUjaoENBiTPwr7KuRVugY4PXgL3mEsk BL4KwcL6jScz07mJS5xWaS/IrRbWXHAR1abKCVJrMxSQREJ1Q9l9nH4n+3x2eMig+ABd S5sQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=oUOz/ySJp+uOXSewkeGYPoPq3I41eoQleo2tio3AQq4=; b=b223DlYy8bt5vNI3oIBxGBQ0A5/r8ryHknNIoOwQ9WqnVPjerTI87Sqgrvp3riQTW5 QsjybJvgY8suGDzHujjcBrPCbLFn2xWbHl6xaQKm+85JdasvpsLX8In2M5Pg8z85cvrw QtTjIdSzIJ5024r+KKNPNLN+h6eZcAqG+DJSielZ65p/MXxW16xlm+pr9f2unOTRUirO 3uTDOYk186Tc+/ApOo74nBiIz2bTPRK8nKY+rc1fbpVy14i36RmqSZiPD/rlUO9H5Msg OqsEFuz2M+EUkP/SLHU/MPBerJoYZCO1bvhMgG2v4nFuvug4lfApmdpYQ/sGdyrMCK11 Y0Sg== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id w23si4367688wmi.97.2020.06.18.18.54.04; Thu, 18 Jun 2020 18:54:04 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CD5E368B507; Fri, 19 Jun 2020 04:53:38 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E225E68B5BE for ; Fri, 19 Jun 2020 04:53:31 +0300 (EEST) IronPort-SDR: U2mB8N42A7+I6g5OyYmUSvHtptJO0X7/8mGaIHyd9t5mEnJTpkhaXfC/+Wxlue6imgQdYAoRw2 WTPwzcrYTvGg== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278657" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278657" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:25 -0700 IronPort-SDR: f6Xife2W3HSAlp1+3X14ZPcArX3lKOLgspTCQSphNgXDrEAYqW71T3ZMOOROeBhftiGA7uQHNc jEz5HE2GvNnw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989405" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:24 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:43 +0800 Message-Id: <20200619015248.21873-4-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 4/9] lavc/hevcdec: add 4:2:0 12-bit VAAPI decode support X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: /byMiEsV0Qm+ Content-Length: 1164 Signed-off-by: Fei Wang --- libavcodec/hevcdec.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/hevcdec.c b/libavcodec/hevcdec.c index c9e28f5826..d9c54fbc6a 100644 --- a/libavcodec/hevcdec.c +++ b/libavcodec/hevcdec.c @@ -433,6 +433,10 @@ static enum AVPixelFormat get_format(HEVCContext *s, const HEVCSPS *sps) #endif break; case AV_PIX_FMT_YUV420P12: +#if CONFIG_HEVC_VAAPI_HWACCEL + *fmt++ = AV_PIX_FMT_VAAPI; +#endif + break; case AV_PIX_FMT_YUV444P10: case AV_PIX_FMT_YUV444P12: #if CONFIG_HEVC_NVDEC_HWACCEL From patchwork Fri Jun 19 01:52:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20486 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp106249ybm; Thu, 18 Jun 2020 18:54:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwRVm5GHLMkW6x+CmOk1C+zRk/Ju5fJw5A1KL8ayNIRPsTmEvcpVAqDt87Z1CPHPs6JVdcm X-Received: by 2002:a1c:f204:: with SMTP id s4mr1171827wmc.159.1592531668594; Thu, 18 Jun 2020 18:54:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531668; cv=none; d=google.com; s=arc-20160816; b=dW9RqocPko6u+76u7YI/AoagGC9zBQXcTvFU7AT5UqjEmHE5Dr7naFIymJZgypqHDp x/1dcnTfAhWY2k2UTlSkn3pazGkbHWSugsmEeZmpwa4MSuu42do/ERR5A7NyfpeZlpN1 x10SmaqUnhi4lsW+gNb9KNFNmYu8zwGmgzOz47jfK9YPkpaEcki7dVIVbHiv8ykHqSFq xZSIljz2K63poDA4dpw5WddZL/MFY5M7TRqeYmcgLVAHIiz554PjsJqS1SMSl8HwdOS6 xh6Ig5UJS0Dql1mwUDFvzE9coB62Fdo6zktGH3bbrcQsme+Y4fDn7MxufzLCnt39ovpd kNtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=zyhYhbm758UZ1RBeb0/Pk7FWI0JHBrlEJNL1jNrnNy8=; b=RT+Iv0/a4XprLnDykHPU621HaNiGOOU2z8gjuhqsDML6pSb2QouW6zEPLgoDtcjWBE aMkP74FFoLaV6UNfrYHNgS0473N8CyX5a7IyRqPSkpBc5ubwL1bBmXOftGRQH7JEOvMC 9+9a8cniIQPlOAoLoIBDpTLqxNTxVqNYxkDST8VLi4EQNGB0acePOBdFg+zYyNlRa8oa aNt1H4tQLR0o3G2U8kZE+kOZe7+ggy+uJv2ETCw5YvXLBbzadZJfJux4WTN/78qx0PsX zCkkF0Xog1X1Emcu9oVjRFA7G4bcYr+/jZcADjzasyIO70Dcp9HDiZ1qf+XzKmHEa/wh PGVA== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id g4si4420026wrp.455.2020.06.18.18.54.28; Thu, 18 Jun 2020 18:54:28 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 32CD468B64A; Fri, 19 Jun 2020 04:53:43 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 299C668B5BE for ; Fri, 19 Jun 2020 04:53:32 +0300 (EEST) IronPort-SDR: sHYGb7Uk27zzRHjO77qABv16QocClzOwm4ZUcRigj9WFxefrilyHlyIpVkyd+3nZLcEAcFjc0D sJ1Mc2cpeu0w== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278663" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278663" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:26 -0700 IronPort-SDR: I/yk7N8j2p9EK3EMBOg0QzS6mEbUxQESleZagr6YjTBJ++ApZPuIRUjh+MtFAxOqd6sUj2I7gc gWyTnZT4VaUw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989410" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:25 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:44 +0800 Message-Id: <20200619015248.21873-5-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 5/9] lavu/hwcontext_vaapi: add vaapi_format_map support for P012 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: SPbPn6Q9H4bd Content-Length: 1281 The format will be used for VAAPI and QSV HEVC/VP9 12bit decode. Signed-off-by: Fei Wang --- libavutil/hwcontext_vaapi.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavutil/hwcontext_vaapi.c b/libavutil/hwcontext_vaapi.c index b31cf95850..b93d8f23e8 100644 --- a/libavutil/hwcontext_vaapi.c +++ b/libavutil/hwcontext_vaapi.c @@ -125,6 +125,9 @@ static const VAAPIFormatDescriptor vaapi_format_map[] = { MAP(Y800, YUV400, GRAY8, 0), #ifdef VA_FOURCC_P010 MAP(P010, YUV420_10BPP, P010, 0), +#endif +#ifdef VA_FOURCC_P012 + MAP(P012, YUV420_12, P012LE, 0), #endif MAP(BGRA, RGB32, BGRA, 0), MAP(BGRX, RGB32, BGR0, 0), From patchwork Fri Jun 19 01:52:45 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20487 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp106451ybm; Thu, 18 Jun 2020 18:54:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwFvkYZYu/HLKKAgyLqTqm17CDEq7wiwLkyNyI9vIIgs66mjWfQOjLZZjcG5OaBe39II7a1 X-Received: by 2002:adf:b198:: with SMTP id q24mr1348580wra.368.1592531695117; Thu, 18 Jun 2020 18:54:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531695; cv=none; d=google.com; s=arc-20160816; b=qa36oXV3wsq1dPCCJ9FbViQJ1gcqgRlmrjBu9GU2xyYwW90LKh/63ER4RgKAJAfvuJ RjTxntgGDVHB3P5Onx3Iqrua/+WI3jVK1Fq8wLkdNh+Nal+LqKunQsN62vNP4G8Kh+DF ioYHk41nlHQmCR1FkiLlKFHvGkXZ+WUhcrPI1w8bdtwSUewSOm0ia4OR5AaofOKVAytd EvGcNKGFqUbFWwhKm8d2uDF6WfS+gS53WmKEFdould4Ys3muG/elzu1P/vUgagvfsMD6 ArJoO7lWvYZiz+v9s/Xh1zDRddLk3rssoAezQSMZplOh3/Bf/fTxRG4KWPsnI0xdaceJ uoUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=+nIWtYNLTdcW7axcxFbH3b8RO7ywdlvPpYwyrkKhwlI=; b=U68+oLG6jSihDZ2NesAIWMCtc5yiUoqg5zl9bGIJUYu0FSyrUcJvxqC63nOBSbDCh3 hPARvv3tcQi5yJXoxRfN4ZmwTTzfGfexNiO/WYTPfXhrMnz6HpyPL9hNZIZicnPuMdxb hMQfbZOSLZQzARsZ2InmTYEd6dS27+3s+YNHrLRjBXrw3S8xvuUtM0nEvMQOJ5qYsSri EB1kAkF/jZXQhhlp6LWVcIMz4fBKaqDLpaRFkuY5l0/v8i6w+ItWXN5sG5DnYKqO583b yMlp5MXgaKQMss6Ai6WQT6fy7mzzFn3hnuesV/Xd8bQZi4GxwB/W95F4XJFG8RgeKo7l DO3w== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id i4si4612712wrv.339.2020.06.18.18.54.54; Thu, 18 Jun 2020 18:54:55 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2D6A068B664; Fri, 19 Jun 2020 04:53:45 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 77AA568B5F8 for ; Fri, 19 Jun 2020 04:53:34 +0300 (EEST) IronPort-SDR: XgR5B9jYlWdUUUiNJg62x2GPtJYsiWsDoIghcTFbqVXP78SIu4XTA9HhJnZ7+T6LyW7brOBFY6 1wEyH8LhD9vA== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278671" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278671" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:27 -0700 IronPort-SDR: P22bWGx5LK7NzVv7DpYksL+/bcf9YjWN/Yb5caZkbxeMEStARXxuPpWSbsyqtUp/hF2380idfU 4OM6SCFQBgeA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989413" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:26 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:45 +0800 Message-Id: <20200619015248.21873-6-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 6/9] lavc/vaapi_hevc: support 4:2:0 12bit decode X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: xy9ClV4dv75Z Content-Length: 1990 Signed-off-by: Fei Wang --- libavcodec/vaapi_decode.c | 3 +++ libavcodec/vaapi_hevc.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/libavcodec/vaapi_decode.c b/libavcodec/vaapi_decode.c index 5e4f62baad..1188f530c2 100644 --- a/libavcodec/vaapi_decode.c +++ b/libavcodec/vaapi_decode.c @@ -269,6 +269,9 @@ static const struct { #ifdef VA_FOURCC_P010 MAP(P010, P010), #endif +#ifdef VA_FOURCC_P012 + MAP(P012, P012), +#endif #ifdef VA_FOURCC_I010 MAP(I010, YUV420P10), #endif diff --git a/libavcodec/vaapi_hevc.c b/libavcodec/vaapi_hevc.c index 9083331c45..4b363e047b 100644 --- a/libavcodec/vaapi_hevc.c +++ b/libavcodec/vaapi_hevc.c @@ -553,6 +553,9 @@ VAProfile ff_vaapi_parse_hevc_rext_profile(AVCodecContext *avctx) else if (!strcmp(profile->name, "Main 4:4:4 10") || !strcmp(profile->name, "Main 4:4:4 10 Intra")) return VAProfileHEVCMain444_10; + else if (!strcmp(profile->name, "Main 12") || + !strcmp(profile->name, "Main 12 Intra")) + return VAProfileHEVCMain12; #else av_log(avctx, AV_LOG_WARNING, "HEVC profile %s is " "not supported with this VA version.\n", profile->name); From patchwork Fri Jun 19 01:52:46 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20491 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp106156ybm; Thu, 18 Jun 2020 18:54:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzQUQ8RxRIxfdMEdu6qCeCYDfp/ApA1BR+YPDBKZRZfJre9+tY1y99l5doJHAp5JEOCrf5Q X-Received: by 2002:a1c:32c4:: with SMTP id y187mr1138861wmy.79.1592531654345; Thu, 18 Jun 2020 18:54:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531654; cv=none; d=google.com; s=arc-20160816; b=nWXAsUwNitmU2OM08qJnE5cvjRdMBe4E2+xG1ABOI7iusk4sJEcLLOAGhDCTSzj+OE dWfX0XGXkp/1ZocJVaBCHdUzTowWpMD5DI+q7CX2LjwYnByCpqQD3cR+f2ezoTohTJrD Zom+5RgTbjgFEX++sOYlxGX6WNlwZWmMKek8ul4+bB4JzUplLADVzeoKA32yNApPilw+ lNmiJpg8sUxjnIcX8hZMJXasr8Wa/anlbqN9PgSHqqRWFbaGHws/7c326MG0cWFdPIEy Ia4mNca2l3Dk2cs7nvSsZto+v5h5j43/Bruwxs6bDfuC0R8JyVXMofLHsi1qjct2Lw1+ 7pVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=NUMWNFCBhnNk96wtocv2B+MZq/Qy8zeA5QMoiE568WE=; b=waxrw/8R5MbyotXYJYAj4J9eHcpgcnpowaTRJtOx3cjlzJZcvQmTGIpMnJ7ntJPPDG lZVTdwz+zqqfwUeCEAVUisXIyNCCEReM6rzmyNkO4rN2VCQ/P+e4YadbHPaLqXvb4KUl y/s0/VP7VqHahqt+K6VWwAtBGDBSskKbQ+iFLa+FTTtB0K22/+w/NMask2Wy8m16q2Ql uYG2Ife0V2+iCHQkN0kbfki6fFULg8R6wNm8eyU3Ew9SpOb12nKmlwci7N60cuiEtzU1 BXkjmZDl+JfPRHrfP6prGrwDeXvT5P2Uj11FUm7i5obU/ONxFni6+LcZQQxjA4f0TJVv TgqA== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id w6si4581324wrv.437.2020.06.18.18.54.13; Thu, 18 Jun 2020 18:54:14 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B213E68B606; Fri, 19 Jun 2020 04:53:41 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1075E68B507 for ; Fri, 19 Jun 2020 04:53:37 +0300 (EEST) IronPort-SDR: YrwnS25myKYWFVSz8hfNHEY2fvJOtbNMSwBFOyfqFw6ire1p0203beNuwvnpR+ApMtU0uHz1WW nQHUxXWzMf4Q== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278677" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278677" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:28 -0700 IronPort-SDR: WHtwNBkycmXR46AhOqIt+r6rfivZNaON7mLzK3jCn//9WgE3DLt8xvLmU7JZZvX4+r8HnkkVAA aEudXRRczI9A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989418" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:27 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:46 +0800 Message-Id: <20200619015248.21873-7-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 7/9] lavu/pix_fmt: consider bits per pixel in finding best pix fmt X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: nhXAzP2SsCI0 Content-Length: 3186 By using bits per pixel in finding best pix fmt will make the result more accurate. For example, the src fmt is AV_PIX_FMT_YUV420P10LE and dst fmt are AV_PIX_FMT_P012LE and AV_PIX_FMT_P010LE. In this case the two dst fmts have the same scores and padded bits and number of components and P012 will be chosen finally. So add the bits per pixel as one of conditions will return P010 which should be the best choice compare with src fmt. Signed-off-by: Fei Wang --- libavutil/pixdesc.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index 38297e2e83..354441e840 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -2890,6 +2890,7 @@ enum AVPixelFormat av_find_best_pix_fmt_of_2(enum AVPixelFormat dst_pix_fmt1, en int loss1, loss2, loss_mask; const AVPixFmtDescriptor *desc1 = av_pix_fmt_desc_get(dst_pix_fmt1); const AVPixFmtDescriptor *desc2 = av_pix_fmt_desc_get(dst_pix_fmt2); + const AVPixFmtDescriptor *src = av_pix_fmt_desc_get(src_pix_fmt); int score1, score2; if (!desc1) { @@ -2905,8 +2906,11 @@ enum AVPixelFormat av_find_best_pix_fmt_of_2(enum AVPixelFormat dst_pix_fmt1, en score2 = get_pix_fmt_score(dst_pix_fmt2, src_pix_fmt, &loss2, loss_mask); if (score1 == score2) { - if(av_get_padded_bits_per_pixel(desc2) != av_get_padded_bits_per_pixel(desc1)) { + if (av_get_padded_bits_per_pixel(desc2) != av_get_padded_bits_per_pixel(desc1)) { dst_pix_fmt = av_get_padded_bits_per_pixel(desc2) < av_get_padded_bits_per_pixel(desc1) ? dst_pix_fmt2 : dst_pix_fmt1; + } else if (av_get_bits_per_pixel(desc2) == av_get_bits_per_pixel(src) || + av_get_bits_per_pixel(desc1) == av_get_bits_per_pixel(src)) { + dst_pix_fmt = av_get_bits_per_pixel(desc2) == av_get_bits_per_pixel(src) ? dst_pix_fmt2 : dst_pix_fmt1; } else { dst_pix_fmt = desc2->nb_components < desc1->nb_components ? dst_pix_fmt2 : dst_pix_fmt1; } From patchwork Fri Jun 19 01:52:47 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20488 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp106300ybm; Thu, 18 Jun 2020 18:54:35 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzZ3S1IQatYbvc+BBwww0bpHTEu4Cq/rjqbUxrn0zcrI3300750Oi2ncPutzS9ettvd3vOq X-Received: by 2002:a05:600c:4152:: with SMTP id h18mr1171446wmm.189.1592531675102; Thu, 18 Jun 2020 18:54:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531675; cv=none; d=google.com; s=arc-20160816; b=Jf/6CVcvmi33syWeSqmhTjs/DPS45a/j+x/JcpjuCK54eB8sSput+miCEPEda6R0jo 2a6D0POVt9uGA3B/r5mdW+NwTEcHsSA9rRmX5lmH0u+tkGKkUHELcBZf8qi4n95KYvCG DF2oowR6MFs7X1UzcPobdqoTunx2r0/BvGViPbSM0oO7hJQdVb1JInaWdD3KlaPPQGAs vhAPWCTE2Xc6DbwmNjMdK0xaXcGcnHTAblCncMpBbX83N7uSAD4zyv94+4Y8EZKXUHse Iayx6PlXpSCiQ8gjrSNmAPPWkIMgUrN4HuJdVOTKWvaDNHURs/BC+yUOCmtnfJ1VtUBB NrCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=lZcyRukXzNwEfwcfH4pW6F+Etx2GqrJfdMOoLtGL5Rc=; b=tS1wX3icev3qWDzw5nsWfJOGY6ZqQHURpbRMswwFieW+dtgXgYSa4XrBHHiB/Qp7Jr JISkjVW/0kCsIkm05fHGvC2KixI0S82rgv/MVG82w7mfD5NveW1+qGb9Fa+Y5qG/1dR0 pJlSziOfvvxHxhLqb8ee64vvfAlrelP1o9jwt3Ipu4nZpUsMwYg6n/iuqkkCoUTH+AB0 dTWMOWzvTMhRfptM0zGYir6mrZi6M8l8PrNN7Zr2TEKP281tCYADIFl7Fga9RYyprTir C1dAcDrM4eK+E8wGhoL1Ay+TjYW5Vwib5IDfTlGkP1YaDZ33p1JWFDiduZYZ9XRMCHP7 r2sg== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id k188si4341327wmb.82.2020.06.18.18.54.34; Thu, 18 Jun 2020 18:54:35 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A9C4468B260; Fri, 19 Jun 2020 04:53:43 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EFC6468B4E3 for ; Fri, 19 Jun 2020 04:53:38 +0300 (EEST) IronPort-SDR: JihR258pesvK8d66nVBjCYSSgs2hXXOXnH6y3nTpeqT/6ovz5ssi4zW1dNPZ5Z8dm6tcDFJECv yY8OVtUJO0gA== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278685" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278685" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:29 -0700 IronPort-SDR: yTHGdLp8FabuqvaIlM9wSVJ+Zk2racTC+4Z09v6m8p6oa07rqfVKsKT4YsywBfKqxh8ngwGrc7 Z6vAKSnuJcRA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989426" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:28 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:47 +0800 Message-Id: <20200619015248.21873-8-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 8/9] FATE/pixfmt_best: fix fail by new rules in commit 97ba9c1a X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 2kdOrj1WLCTK Content-Length: 1232 Signed-off-by: Fei Wang --- libavutil/tests/pixfmt_best.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavutil/tests/pixfmt_best.c b/libavutil/tests/pixfmt_best.c index 53f7264207..01387c7c98 100644 --- a/libavutil/tests/pixfmt_best.c +++ b/libavutil/tests/pixfmt_best.c @@ -133,7 +133,7 @@ int main(void) TEST(AV_PIX_FMT_RGB48LE, AV_PIX_FMT_RGB48); // Opaque formats are least unlike each other. - TEST(AV_PIX_FMT_DXVA2_VLD, AV_PIX_FMT_VDPAU); + TEST(AV_PIX_FMT_DXVA2_VLD, AV_PIX_FMT_VAAPI); printf("%d tests passed, %d tests failed.\n", pass, fail); return !!fail; From patchwork Fri Jun 19 01:52:48 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fei Wang X-Patchwork-Id: 20489 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:80ca:0:0:0:0:0 with SMTP id c10csp106399ybm; Thu, 18 Jun 2020 18:54:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJznM1ulCSHL8nRlTpIwCe1TPG/HSksLzonMY+WtbYCpWOzsboylzc+BmZF4Q7RIcO0U0uP8 X-Received: by 2002:a1c:9ec5:: with SMTP id h188mr1128182wme.9.1592531688493; Thu, 18 Jun 2020 18:54:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592531688; cv=none; d=google.com; s=arc-20160816; b=QsYI4TOP9TNCPMLePiI0fV5dYs2gL61s3xVqPG/IUHbavhLUG9JFOuoRSI/q8pl8/C 6o0hmkMN23oiQf+gLR3d0RvY7i6xEpDYejtR+K9ButyWm7QeBr1UeXQJx9n/n4WbDfks w/N0m7GMKaQNPW20V1pIlpzqC4j4/uWON0apDWxsdrd1bmdpqat5ACTCw6px4xnoo4OV bQD7PvYs+f/AGjRbKIituWx49gukz9424h2/xI1+Fn1COR9Ws2D8O3VSweWsoe5tvEzW fm/N9K9cl/jpJbefazf+PCGEHjC21Milbikf4RdFYAiX7qcJDtdVjDmoEbExbv6txeWP mOzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:ironport-sdr:ironport-sdr:delivered-to; bh=C0EOXcnMAxBRUadGH/t7vgMpgKrKqcNzRd1VvRjcPO0=; b=kEnILeGqQPl5NIP+iZo1/Lb84T3djgJqownajpDgDEPSMdKKQO6Wyf68sBoR38u3B0 iNatWamyxMWseixJn7vu/krNtt4WBvOjBqD0WdqNQOAahVGID4AOrYwjxBc2feoAlsjK ZCP9ljehJeZGwvRP5iEgAWgiOZ1bTNqJivNksvLuZPhivvxH1Nj2+cPMR087UQzIl/yU /FdsYoQZWMt9kzaUBCjPVbmSxb4oVeWkJ1BQQwsx1Vn4A2msAFhnYQdX0hwg8lDOZi22 1lHFENE3bPZgkh0Pw7iTD/VzDiBBvrStZch0hUuOOZrVJ6qY6NdSKJRHF2f49QMB0yPF 1rTQ== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id r11si4047524wrw.97.2020.06.18.18.54.48; Thu, 18 Jun 2020 18:54:48 -0700 (PDT) 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; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C868D68B661; Fri, 19 Jun 2020 04:53:44 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 20B6068B5F3 for ; Fri, 19 Jun 2020 04:53:38 +0300 (EEST) IronPort-SDR: Ps5HcwWpqbmPYDXLMLrDP+8wWJvtbEUv7AcIFeZa0UNJQ/mchlsS5GD0MciEzErfaLEN82CyKI hDoaEpRd1K3g== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="204278688" X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="204278688" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 18:53:31 -0700 IronPort-SDR: 1N6QrRzEQdBYCwM0tOOGPcye7TzOvJ+VLosB9HMq783xrswXim2GVkDevPp7Tvi9Mkb1BPW8yF 8vnzrBWWscHg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,253,1589266800"; d="scan'208";a="317989431" Received: from f.sh.intel.com ([10.239.159.122]) by FMSMGA003.fm.intel.com with ESMTP; 18 Jun 2020 18:53:29 -0700 From: Fei Wang To: ffmpeg-devel@ffmpeg.org Date: Fri, 19 Jun 2020 09:52:48 +0800 Message-Id: <20200619015248.21873-9-fei.w.wang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200619015248.21873-1-fei.w.wang@intel.com> References: <20200619015248.21873-1-fei.w.wang@intel.com> Subject: [FFmpeg-devel] [PATCH v1 9/9] FATE/pixfmt_best: add more test case X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Cc: Fei Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: F0J/Czbx68UV Content-Length: 3324 The new test case can cover the issue mentioned in commit 97ba9c1a Signed-off-by: Fei Wang --- libavutil/tests/pixfmt_best.c | 18 ++++++++++++++++++ tests/ref/fate/pixfmt_best | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/libavutil/tests/pixfmt_best.c b/libavutil/tests/pixfmt_best.c index 01387c7c98..30a41b1fa6 100644 --- a/libavutil/tests/pixfmt_best.c +++ b/libavutil/tests/pixfmt_best.c @@ -66,6 +66,21 @@ int main(void) ++pass; \ } while (0) +#define TEST_SPECIFIC(src, dst1, dst2, expected) do { \ + output = av_find_best_pix_fmt_of_2(dst1, dst2, \ + src, 0, NULL); \ + if (output != expected) { \ + printf("Matching %s with %s and %s: got %s, expected %s\n", \ + av_get_pix_fmt_name(src), \ + av_get_pix_fmt_name(dst1), \ + av_get_pix_fmt_name(dst2), \ + av_get_pix_fmt_name(output), \ + av_get_pix_fmt_name(expected)); \ + ++fail; \ + } else \ + ++pass; \ + } while (0) + // Same formats. for (i = 0; i < FF_ARRAY_ELEMS(pixfmt_list); i++) TEST(pixfmt_list[i], pixfmt_list[i]); @@ -135,6 +150,9 @@ int main(void) // Opaque formats are least unlike each other. TEST(AV_PIX_FMT_DXVA2_VLD, AV_PIX_FMT_VAAPI); + // Specific test list + TEST_SPECIFIC(AV_PIX_FMT_YUV420P10LE, AV_PIX_FMT_P012LE, AV_PIX_FMT_P010LE, AV_PIX_FMT_P010LE); + printf("%d tests passed, %d tests failed.\n", pass, fail); return !!fail; } diff --git a/tests/ref/fate/pixfmt_best b/tests/ref/fate/pixfmt_best index 5f51e2d845..1da1846275 100644 --- a/tests/ref/fate/pixfmt_best +++ b/tests/ref/fate/pixfmt_best @@ -1 +1 @@ -73 tests passed, 0 tests failed. +74 tests passed, 0 tests failed.