From patchwork Tue Feb 14 02:45:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wu, Tong1" X-Patchwork-Id: 40389 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:5494:b0:bf:7b3a:fd32 with SMTP id i20csp3974346pzk; Mon, 13 Feb 2023 18:49:21 -0800 (PST) X-Google-Smtp-Source: AK7set+hB2ihlRELhL5ox0QOyPYK0uFUQGcacXE65qWUNZMoBtGOOzWFxNyZQfOD+JoRhL+KoRqY X-Received: by 2002:a17:907:2bf3:b0:879:2a5:dc3c with SMTP id gv51-20020a1709072bf300b0087902a5dc3cmr1148054ejc.40.1676342961389; Mon, 13 Feb 2023 18:49:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676342961; cv=none; d=google.com; s=arc-20160816; b=LDaNpn7W9rUqxHygC2xm4e7GCoSacZwsLlk6UXSFdtFhBlG10Bb++vFouPl6mbc0YL V7fkZmkzXiBvEOnHdTrk8rr/WtQCowEWfXjwPZMjHDs+2RLlTCuxrRSutkM66Dyr+2Qt 25flymRjQPY8POjKSt8WajdgNpu2d3TMH9zoo93q0IqTToR+G23sCaqD8ToBRVAzfb/K 9bSYzE1uRKmRBIytUuu9pWkBEGeujpoOdmK8TYonfGb54kQuiVN9AKkubl/tHhBUC9Yl AKpqMrEUQ7BQ/xT5/eETf3f0rxThbUqBq2KC5HcIPCtvet+7/P+R7vM7A2DcCW9nf2ub 7ilw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to:from :dkim-signature:delivered-to; bh=67/dGV6YVGb5Q6PvKOc8jiHrrDBLWbTu48a8pcPpKBE=; b=IWhlNbNxmR9VI+fC1fSMzQuLUbOlZkovLKQd/f/ZLEAykhubu2IJa6L1x4ZZxg+PX7 e4XAg1h2Q/vrK9yArp1zEvLns5KRMXvCv+XOTL9fGtwW1g/T0XbY5boo5HJMaCzdbFN6 pojXtxyErgeGjm9TxZdPeFVVSQrX0Z41smeOrIF78lWqQIdQ6lgQmXoIITOVd2a/TC3k d4ZsXNs2vsVVX1vRo6sVa8m5VTSTEdVvzH8OqMw1zcUeyF4QaKL5oCZ5ATcSqsF+WGX7 oAa4BVbMNuRBrYG10fwIjqDVx+uVH0Gvywjtij397rvnC8Ee1JfxoNhGx1p9OoF9VY12 Y2QA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel.com header.s=Intel header.b=dJ0N57rK; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ev6-20020a17090729c600b0088885a38edcsi8501962ejc.328.2023.02.13.18.49.20; Mon, 13 Feb 2023 18:49: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=@intel.com header.s=Intel header.b=dJ0N57rK; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B5B4A68BE4A; Tue, 14 Feb 2023 04:49:16 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7A91C68BCB1 for ; Tue, 14 Feb 2023 04:49:10 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676342955; x=1707878955; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=xWIjOyRaA6drU1+hGUaHb6Eu+qHcGZtR+ovWA3zPGrk=; b=dJ0N57rKiKBEuQm8XAmN4yBoCNk8HE1akTTTMJjSl8S+GS4kQaImYjGi O26mvUWIGiH0CX8k6A9xVEiqpvQa12j1BeWCcwGDOuDjmmpyO/wMVxsrr EKn8R+RV5IU0HJ+2Z6qwTogafg0nA9hEkE61lH5Ld95py7sbHcHAGoJ81 81lxAcU0eL651f0zw151LK4yzuWAPgS+ana9o52rJFkMG4GWA3VbydrEq rg7cdwNIfDvfI0fd8kRQZSmSy3cdOoAIl6OOjMSEq5N0fQqHQaNodcBSS CgKfLfUI/9ihUEvq4fJaPbIbjWNwMYF2KlM1F5PNPZD1dqhBb2q2jWrZ5 A==; X-IronPort-AV: E=McAfee;i="6500,9779,10620"; a="328770400" X-IronPort-AV: E=Sophos;i="5.97,294,1669104000"; d="scan'208";a="328770400" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2023 18:49:08 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10620"; a="843000672" X-IronPort-AV: E=Sophos;i="5.97,294,1669104000"; d="scan'208";a="843000672" Received: from desktop-qn7n0nf.sh.intel.com (HELO localhost.localdomain) ([10.239.160.59]) by orsmga005.jf.intel.com with ESMTP; 13 Feb 2023 18:49:07 -0800 From: Tong Wu To: ffmpeg-devel@ffmpeg.org Date: Tue, 14 Feb 2023 10:45:57 +0800 Message-Id: <20230214024559.1272-1-tong1.wu@intel.com> X-Mailer: git-send-email 2.39.1.windows.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3 1/3] hwcontext_d3d11va: add mutiple supported DXGI formats 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 Cc: Tong Wu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 8j7JiJisd7zE Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. The added formats work with qsv acceleration and will not have impact on d3d11va acceleration(-hwaccel d3d11va) since so far these formats are still not supported by using d3d11va acceleration. Hwupload and hwdownload can work with the added formats. Signed-off-by: Tong Wu --- libavutil/hwcontext_d3d11va.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c index 363ec6a47d..aa50538d64 100644 --- a/libavutil/hwcontext_d3d11va.c +++ b/libavutil/hwcontext_d3d11va.c @@ -89,6 +89,13 @@ static const struct { { DXGI_FORMAT_B8G8R8A8_UNORM, AV_PIX_FMT_BGRA }, { DXGI_FORMAT_R10G10B10A2_UNORM, AV_PIX_FMT_X2BGR10 }, { DXGI_FORMAT_R16G16B16A16_FLOAT, AV_PIX_FMT_RGBAF16 }, + { DXGI_FORMAT_AYUV, AV_PIX_FMT_VUYX }, + { DXGI_FORMAT_YUY2, AV_PIX_FMT_YUYV422 }, + { DXGI_FORMAT_Y210, AV_PIX_FMT_Y210 }, + { DXGI_FORMAT_Y410, AV_PIX_FMT_XV30 }, + { DXGI_FORMAT_P016, AV_PIX_FMT_P012 }, + { DXGI_FORMAT_Y216, AV_PIX_FMT_Y212 }, + { DXGI_FORMAT_Y416, AV_PIX_FMT_XV36 }, // Special opaque formats. The pix_fmt is merely a place holder, as the // opaque format cannot be accessed directly. { DXGI_FORMAT_420_OPAQUE, AV_PIX_FMT_YUV420P }, From patchwork Tue Feb 14 02:45:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wu, Tong1" X-Patchwork-Id: 40390 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:5494:b0:bf:7b3a:fd32 with SMTP id i20csp3974424pzk; Mon, 13 Feb 2023 18:49:33 -0800 (PST) X-Google-Smtp-Source: AK7set8IPASRODZA2n4t16C6QAzlhG0SocYxFabPl47GrgYmCt0WWR64qb9ez/MVQ2H0ygUqsY8q X-Received: by 2002:a17:906:eb48:b0:8b1:2dd5:d860 with SMTP id mc8-20020a170906eb4800b008b12dd5d860mr678752ejb.39.1676342972837; Mon, 13 Feb 2023 18:49:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676342972; cv=none; d=google.com; s=arc-20160816; b=er5giDYZHz8Zsnp6l24WOw006T1PHW+DKplNICaejFLnQSdewqwzzHSZv4FSehGRQ5 kP1Rg7LcqrrcCvNO3roMO4qNG2BAZF3WEVsqUXqt3nPAEVg/nrPaK0IX/PN79h2afadL qG3RKJI6zk50ID+E+OCyqRSM10RF8qy5rmz7Bo7ZpnDk9cqh3JDwo+id/oNWXBcYBYZo pIQctOdBnWy8HlqNeM20xDbcFnfkEI9HvXtJPqRLI4ja9r5ibRwsFzBp8Ke7cqZiSiKY OPENeWOk57L6FRHixezwu90908gywd54Njm+CVaK1YpiOISGczH/J737ugpI/97mSg8s LMiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc: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=ZQkAzy576nDHd3ndzR7Y7Xtl3gkf8f3Zpe36d/TWWKQ=; b=QXdvaa0iHivHAbaDOjS+sTTjhPtKVZqm7QeTEslXHnLvj+IapLKfEsHhaiyrO2E2Ix y7mdwJ8OTlBNRIb25agegATV1jsBe3FId7SH0dtqqiEQVNZt5pTX+2U786V8zHequNBc 7uh1ePuHFG9Z+/E39c+uuhngtE5J5aRXd+TptFZhzdtiowbIWYtV1ETPHHDLQWFZpda7 sHva/95DyIe3+4aaGA503wl3BlQbVELJt0uVil0OiedNGT8uSBa9mxJGjKapcUvD1lFQ NroMGBT3Pi6YtI/jqq2gyPk0Dig7wHKbugksrSyPGNJOioQPjaaUP3YBvQ8Jk2Xl0Wkx C45Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel.com header.s=Intel header.b=bVskuIh1; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id o23-20020aa7c517000000b004accb4a3e16si4401259edq.565.2023.02.13.18.49.32; Mon, 13 Feb 2023 18:49:32 -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=@intel.com header.s=Intel header.b=bVskuIh1; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id EB6EF68B890; Tue, 14 Feb 2023 04:49:19 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C964668B890 for ; Tue, 14 Feb 2023 04:49:12 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676342958; x=1707878958; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=iEjrXErJIKdhtcEswQZ0mAY9twxttpgmOFjOoPcVUGA=; b=bVskuIh1PEL+BJlcuLK8P/FqZNY1zb/b/jHBLmXq26dqJWKIPno+NM1q Zx/bYfVHBS3jgWa11e6m4i4xAWWWIgjLd30KN3lsn1+ittWOLHT3uKXpl LCdQekNwgryEnY+zDUiWVzTlqfpg7o+vfs/fLgOf4PJG/SUyCDvlVocYx xPX6O/7lHt6jfn175TTmd76Qv/pGDA+OPkgx5c03hx0ohCu1H7AhDrZvZ usP7Ek20BcFzAhMjP4UqhoLdBndKTPTKpSMfnCEDEnImlZl8EgcLqfKaT /gf2l96/6bmYMeq3eW2g/ag6682PfexiSPAFhrroiUludQnoSAWiUZdSE g==; X-IronPort-AV: E=McAfee;i="6500,9779,10620"; a="328770404" X-IronPort-AV: E=Sophos;i="5.97,294,1669104000"; d="scan'208";a="328770404" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2023 18:49:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10620"; a="843000678" X-IronPort-AV: E=Sophos;i="5.97,294,1669104000"; d="scan'208";a="843000678" Received: from desktop-qn7n0nf.sh.intel.com (HELO localhost.localdomain) ([10.239.160.59]) by orsmga005.jf.intel.com with ESMTP; 13 Feb 2023 18:49:08 -0800 From: Tong Wu To: ffmpeg-devel@ffmpeg.org Date: Tue, 14 Feb 2023 10:45:58 +0800 Message-Id: <20230214024559.1272-2-tong1.wu@intel.com> X-Mailer: git-send-email 2.39.1.windows.1 In-Reply-To: <20230214024559.1272-1-tong1.wu@intel.com> References: <20230214024559.1272-1-tong1.wu@intel.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3 2/3] hwcontext_dxva2: add mutiple supported formats 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 Cc: Tong Wu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: wljTeGRxa7Ka Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. The added formats work with qsv acceleration and will not have impact on dxva2 acceleration(-hwaccel dxva2) since so far these formats are still not supported by using dxva2 acceleration. Hwupload and hwdownload can work with the added formats. Signed-off-by: Tong Wu --- libavutil/hwcontext_dxva2.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavutil/hwcontext_dxva2.c b/libavutil/hwcontext_dxva2.c index 53d00fa815..ea378df720 100644 --- a/libavutil/hwcontext_dxva2.c +++ b/libavutil/hwcontext_dxva2.c @@ -82,6 +82,13 @@ static const struct { } supported_formats[] = { { MKTAG('N', 'V', '1', '2'), AV_PIX_FMT_NV12 }, { MKTAG('P', '0', '1', '0'), AV_PIX_FMT_P010 }, + { MKTAG('A', 'Y', 'U', 'V'), AV_PIX_FMT_VUYX }, + { MKTAG('Y', 'U', 'Y', '2'), AV_PIX_FMT_YUYV422 }, + { MKTAG('Y', '2', '1', '0'), AV_PIX_FMT_Y210 }, + { MKTAG('Y', '4', '1', '0'), AV_PIX_FMT_XV30 }, + { MKTAG('P', '0', '1', '6'), AV_PIX_FMT_P012 }, + { MKTAG('Y', '2', '1', '6'), AV_PIX_FMT_Y212 }, + { MKTAG('Y', '4', '1', '6'), AV_PIX_FMT_XV36 }, { D3DFMT_P8, AV_PIX_FMT_PAL8 }, { D3DFMT_A8R8G8B8, AV_PIX_FMT_BGRA }, }; From patchwork Tue Feb 14 02:45:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wu, Tong1" X-Patchwork-Id: 40391 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:5494:b0:bf:7b3a:fd32 with SMTP id i20csp3974483pzk; Mon, 13 Feb 2023 18:49:42 -0800 (PST) X-Google-Smtp-Source: AK7set9eBYNhL9Mtvryy+/nGa9tbPTwinVsvPOqy8tN1imh3JV2jI8kvp54jQh+ZQFJ1AIcOxJ4b X-Received: by 2002:a17:906:5a62:b0:878:702e:9dff with SMTP id my34-20020a1709065a6200b00878702e9dffmr1145160ejc.41.1676342982375; Mon, 13 Feb 2023 18:49:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676342982; cv=none; d=google.com; s=arc-20160816; b=t/13WyJxuo9nPf6pk6CbZ16vePu33Q+rqDz6D/6Mxjf3zMt1WZDQcFpHxy+EJujqx9 yz9K5UehAwXg58dLkS+g6mMBNOZ0ZKAbgUI64WJu06FDzsJFmZTIbG8XwCuj7pH5Akfl Js7hb58xjMg7RLxXlTsAICthWRianA19N59+N5uXvLmcacOOevrBS3kSQr0wUrhidZll SRLWgAJeY5R1iNjFtU5sBTagWO4whSpU5kcoR7zYCSuSnMlNBWR4Mo7WNN89DUhRwFDt ZtxvVv5TcNMgVZPchVrCvNBs4ee+5MHwy6IqJKwMG2JiRE6fTUX8IHIBuUSFwlEie2WX gBug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc: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=LFz784zdAdLw+mG44NYY1F/cjyabo7RMeKV1y708UMA=; b=Le4wQRbeMZkJ53U1WJE/IsP2eqfYypl4eFhEU0qMOLj8KroLTeg63TfrDEqHvlqT9m XX8R6k++M2jaVfWz6884KPxMiFIMlPjQNJCSPQG6jGOG+K1DzfLu8R/t884oRtkjQ7YL JQbDw/fLvXEQxWFDlLpoSG/t98U5xTzfltNtCNEGEL7Slr+YSnxDvjKyLuby+hxikqmX EHHj5FJL0HIsl3kz7Uqv7RVcYJEtHD1awVxBai0yLr/xHDvRVXKlm3Iy1iYlQkL7ZmMx pIGrVef/5CMQdgXbehVDC4H7OXRKqd82bB3ysN10VapRSenT0nat5eM2k/mhXP51cxEL ulYQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel.com header.s=Intel header.b=DvKcLSiu; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 5-20020a170906208500b0088cf6cf0669si21260522ejq.78.2023.02.13.18.49.42; Mon, 13 Feb 2023 18:49:42 -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=@intel.com header.s=Intel header.b=DvKcLSiu; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0CBE268BE96; Tue, 14 Feb 2023 04:49:23 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 62E0F68BE25 for ; Tue, 14 Feb 2023 04:49:16 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676342961; x=1707878961; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=51soOrITBWHgU5Pfa95rLPYwnHqCpkyIXK1zraDQyfk=; b=DvKcLSiuF1kUEeCFQ4CriD7FhrDtXSmgtzw4LBpML00Uf1Qqzc5Sx3Ys BrTx/lQCoQXUuCCIij+TCmaj1UnE9r1CiK8YpYJEeQZqj4pZqH3ibSROW +7Vr60oDxAkzaG96yB2V2S5SnAzYdlmIaLGVvthLBYXptgJzFZz1pK+uh jr5Ib/ulxVcX3YYeZ9o0hKiPZnyVR7tCOD6q1GrbsbtT+eiaRzcy3hWC+ N7Dks3/6ZK1FsjML4SWfWcTA43xYWf3nD6+DNymRF5/KNHhiBDeIJ6adw 2pBu1LbKeW2578csDesYHyQSa8sg6Tfb458CpR6dP2OWe5yOY5CXGlW5k g==; X-IronPort-AV: E=McAfee;i="6500,9779,10620"; a="328770407" X-IronPort-AV: E=Sophos;i="5.97,294,1669104000"; d="scan'208";a="328770407" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2023 18:49:11 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10620"; a="843000688" X-IronPort-AV: E=Sophos;i="5.97,294,1669104000"; d="scan'208";a="843000688" Received: from desktop-qn7n0nf.sh.intel.com (HELO localhost.localdomain) ([10.239.160.59]) by orsmga005.jf.intel.com with ESMTP; 13 Feb 2023 18:49:09 -0800 From: Tong Wu To: ffmpeg-devel@ffmpeg.org Date: Tue, 14 Feb 2023 10:45:59 +0800 Message-Id: <20230214024559.1272-3-tong1.wu@intel.com> X-Mailer: git-send-email 2.39.1.windows.1 In-Reply-To: <20230214024559.1272-1-tong1.wu@intel.com> References: <20230214024559.1272-1-tong1.wu@intel.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3 3/3] qsv: remove CONFIG_VAAPI for mutiple formats 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 Cc: Tong Wu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: FMuCGv+vcTEs Remove CONFIG_VAAPI for VUYX, YUYV422, Y210, XV30, Y212, XV36. Make 8-bit, 10-bit, 12-bit YUV 4:2:2 video sources as well as YUV 4:4:4 video sources supported by d3d11va and dxva2 just like what VAAPI does. Sign-off-by: Tong Wu --- libavcodec/qsv.c | 4 ---- libavutil/hwcontext_qsv.c | 6 +++--- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/libavcodec/qsv.c b/libavcodec/qsv.c index 7af154202c..8eabf46b45 100644 --- a/libavcodec/qsv.c +++ b/libavcodec/qsv.c @@ -208,7 +208,6 @@ enum AVPixelFormat ff_qsv_map_fourcc(uint32_t fourcc) case MFX_FOURCC_P8: return AV_PIX_FMT_PAL8; case MFX_FOURCC_A2RGB10: return AV_PIX_FMT_X2RGB10; case MFX_FOURCC_RGB4: return AV_PIX_FMT_BGRA; -#if CONFIG_VAAPI case MFX_FOURCC_YUY2: return AV_PIX_FMT_YUYV422; case MFX_FOURCC_Y210: return AV_PIX_FMT_Y210; case MFX_FOURCC_AYUV: return AV_PIX_FMT_VUYX; @@ -217,7 +216,6 @@ enum AVPixelFormat ff_qsv_map_fourcc(uint32_t fourcc) case MFX_FOURCC_P016: return AV_PIX_FMT_P012; case MFX_FOURCC_Y216: return AV_PIX_FMT_Y212; case MFX_FOURCC_Y416: return AV_PIX_FMT_XV36; -#endif #endif } return AV_PIX_FMT_NONE; @@ -245,7 +243,6 @@ int ff_qsv_map_pixfmt(enum AVPixelFormat format, uint32_t *fourcc, uint16_t *shi *fourcc = MFX_FOURCC_RGB4; *shift = 0; return AV_PIX_FMT_BGRA; -#if CONFIG_VAAPI case AV_PIX_FMT_YUV422P: case AV_PIX_FMT_YUYV422: *fourcc = MFX_FOURCC_YUY2; @@ -277,7 +274,6 @@ int ff_qsv_map_pixfmt(enum AVPixelFormat format, uint32_t *fourcc, uint16_t *shi *fourcc = MFX_FOURCC_Y416; *shift = 1; return AV_PIX_FMT_XV36; -#endif #endif default: return AVERROR(ENOSYS); diff --git a/libavutil/hwcontext_qsv.c b/libavutil/hwcontext_qsv.c index 42851d4fd5..6780428875 100644 --- a/libavutil/hwcontext_qsv.c +++ b/libavutil/hwcontext_qsv.c @@ -115,11 +115,12 @@ static const struct { { AV_PIX_FMT_BGRA, MFX_FOURCC_RGB4, 0 }, { AV_PIX_FMT_P010, MFX_FOURCC_P010, 1 }, { AV_PIX_FMT_PAL8, MFX_FOURCC_P8, 0 }, -#if CONFIG_VAAPI { AV_PIX_FMT_YUYV422, MFX_FOURCC_YUY2, 0 }, +#if CONFIG_VAAPI { AV_PIX_FMT_UYVY422, MFX_FOURCC_UYVY, 0 }, +#endif { AV_PIX_FMT_Y210, MFX_FOURCC_Y210, 1 }, // VUYX is used for VAAPI child device, @@ -144,7 +145,6 @@ static const struct { { AV_PIX_FMT_XV36, MFX_FOURCC_Y416, 1 }, #endif -#endif }; extern int ff_qsv_get_surface_base_handle(mfxFrameSurface1 *surf, @@ -1526,7 +1526,6 @@ static int map_frame_to_surface(const AVFrame *frame, mfxFrameSurface1 *surface) surface->Data.R = frame->data[0] + 2; surface->Data.A = frame->data[0] + 3; break; -#if CONFIG_VAAPI case AV_PIX_FMT_YUYV422: surface->Data.Y = frame->data[0]; surface->Data.U = frame->data[0] + 1; @@ -1558,6 +1557,7 @@ static int map_frame_to_surface(const AVFrame *frame, mfxFrameSurface1 *surface) // use the value from the frame. surface->Data.A = frame->data[0] + 6; break; +#if CONFIG_VAAPI case AV_PIX_FMT_UYVY422: surface->Data.Y = frame->data[0] + 1; surface->Data.U = frame->data[0];