From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 5E73940821 for ; Sat, 2 Apr 2022 09:01:25 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3FB8168B20E; Sat, 2 Apr 2022 12:01:23 +0300 (EEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7228E68AECD for ; Sat, 2 Apr 2022 12:01:16 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1648890081; x=1680426081; h=from:to:subject:date:message-id:references:in-reply-to: content-id:content-transfer-encoding:mime-version; bh=kLsEdCnKJXt3UmflFJn2QozVbzgZDhlxp7CPHHsgTno=; b=avPwdzXlT/OcrIRFXlZt/61qBadVmcPJMQ0JnHyV0xhJXVe6CtRgh44T clje1MmsAGhLNPH73p6yf7Mp1cplN1JNo8/o2gMYtMbTwVIj7NlZAaFQr k/95FnrwvWGNzrboZw1kWCVOfzUC4IM8i6OdRW/1Fr8p2rd0ENDehyMQ/ rT1a5LV0gsYE95vt7dRghiT3j5ujKa1m3OnVlvpUR6tFdwdzTrjDEORME p3uSBwR/dfhjc5ZCQzT/IW043dckrWpPPpiLVPwEZNk+uFRq2rG5SmZ9X hnLa9jBIJ9QX4OVMu6Uqgm99Xay3Qpf27scSj/ezCMTR4+WIRx2yE970k w==; X-IronPort-AV: E=McAfee;i="6200,9189,10304"; a="320988145" X-IronPort-AV: E=Sophos;i="5.90,229,1643702400"; d="scan'208";a="320988145" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Apr 2022 02:01:14 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,229,1643702400"; d="scan'208";a="555704200" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmsmga007.fm.intel.com with ESMTP; 02 Apr 2022 02:01:14 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Sat, 2 Apr 2022 02:01:13 -0700 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Sat, 2 Apr 2022 02:01:13 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Sat, 2 Apr 2022 02:01:13 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.177) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Sat, 2 Apr 2022 02:01:13 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n+KaLMxREKmhcZ6HNMwFjNXzdh063/vwqdfBOm0umlO1+1n/7I0WWDhR4qgil4HkumB+w5VzzBa1Bab0LGgU1LGrib00hkuSvIZKcOoCrTfjZ39XZ9CGqqvi5qo/i/bq+juq3yTypQZJfS7ygju2TrbXNBFdzdoKg6FHShLb2XuqCYDycgUF3neaGJOmbxGnZIvDzg3mE68AYk/KwZv6S6N6lw9XiPxwuW/zpDyIVRYj6XeKKa/cTMrGm0d17EySjY60ho/OZVIX6qH86oqry9IIZvAndaCwlt3U2lhd1FwURgI5r86udzHxIt72+nMVUKUNcXfDYKPtAIxSeM4GKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=kLsEdCnKJXt3UmflFJn2QozVbzgZDhlxp7CPHHsgTno=; b=WOk4gkh5SL3AqJJZKAMnaL6Bjoqe5/H3WwWNheeUbiePOM5+yTgDq//8DwcDrO0NQnpgjNMJHMsBfHAtslcEKpqh1Ulm+re+V8qUTLr1Vj8CilFhiEidQ6D2ZhDqro8RpR39e5Xu3JWxE2HSDCNoN7okRtvRv58nM8zzC3e6UXfvo5tx8IYgXGc+N9Hy8nCh6Q2bEnrsPd6FY8JNTUAtGeJez4mTrByUsgisJKmwvk/qMuuVh6NtG2LAwxrGwE8uEq7NcWpRto4cJTRe3HFCi+rPZbDcTktDSV/hTEaLw5JlmfJAOf0TH98KGM02sxC3I+146zHrdE7NzVl0N3BMKw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from BN9PR11MB5515.namprd11.prod.outlook.com (2603:10b6:408:104::8) by MN2PR11MB4093.namprd11.prod.outlook.com (2603:10b6:208:13f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.23; Sat, 2 Apr 2022 09:01:10 +0000 Received: from BN9PR11MB5515.namprd11.prod.outlook.com ([fe80::c0b8:e06a:3d29:da25]) by BN9PR11MB5515.namprd11.prod.outlook.com ([fe80::c0b8:e06a:3d29:da25%5]) with mapi id 15.20.5123.030; Sat, 2 Apr 2022 09:01:10 +0000 From: "Xiang, Haihao" To: "ffmpeg-devel@ffmpeg.org" Thread-Topic: [FFmpeg-devel] [PATCH 1/2] libavcodec/qsvdec: Add more pixel format support to qsvdec Thread-Index: AQHYRAGhajc3VYWwnkuUxgx0IBQON6zcWF+A Date: Sat, 2 Apr 2022 09:01:10 +0000 Message-ID: References: <20220330064349.850881-1-wenbin.chen@intel.com> In-Reply-To: <20220330064349.850881-1-wenbin.chen@intel.com> Accept-Language: en-AS, zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Evolution 3.28.5-0ubuntu0.18.04.2 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: abe98582-0a1d-4faa-962f-08da148754e5 x-ms-traffictypediagnostic: MN2PR11MB4093:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: wq02o/Y7YXsgRt1+FcGXC1z3t9S6z175YkD1aSfLNFOdVujeMxpR4jCBpD3M6TVNm8zzs4lGHbVgWXZMnVkqt3roS/rmTELaPsTbzKH3uqXXalio+tl647uos485kqlDUwasub2vdrZxhdQgVMoP8a01k95WGxxMVkfawuI0JoLOrhf2w3yX7qYC4+3xcEJoykU1xKbxudVUOxo9Oer2ZwDDQlCGEh4sm+zxIJrUHx605elmw0jDm/MgytuuRj4r/4R5xoyHnfnb72ppsGUwzS3RI+TjxSgy+nBeZW9RYYzy2GHTgQPkaWRGrD4wx1C6ZWXtGXgiW/rW1526MBNqawQvUlEHYWg1Rkl6udXQuNJdEOpXToRpfaJCqrcWAXyNiQOSqme8wcfbH5dDPfoqmVz2cINnM/E54w6Wd6g2jH2KnUUTBu/nxuO4NmKhRZfiLAFEdSGphclIQ0TCugZFB37wZCayrhgBJsqOlEalk22QvN6EVb8eAVe/zzS2OCPgA48A37VWmizOvB5yfVb6D5GsfefcPLYbqLc8jqSbE0trSiTR3TJhOto1A84Vwtyo69rZLuIJdojucM/OMmwjG+kR28BSmEO8jBRGI3l0TcDwv0mE4jO/o/CDuemUNAEodeKbMTWhr5hiVkSXCHAFvFl7SiSQQjzBmFQ0v4v9eQREZyh1TGN0WDnpQqwGnsARMbvjJYxWdOpMcKgyA01VigUv6n+JArspfQkmwT5JaXw= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN9PR11MB5515.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(2616005)(36756003)(316002)(186003)(26005)(6486002)(86362001)(83380400001)(6916009)(38070700005)(2906002)(71200400001)(76116006)(6506007)(8676002)(64756008)(66556008)(66446008)(5660300002)(508600001)(66946007)(66476007)(8936002)(6512007)(91956017)(122000001)(38100700002)(82960400001)(99106002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Ny9UaXA3MWtjWkR5RzE3R3BvSENSTG16RzgwbEJxVXVtc1hxbm9HUi9sQnRC?= =?utf-8?B?dURiaS9CeFFUMjgxbXFiUzFQaUlwOHRsV0FpWjJxTTRNOEZpNVROOWpWcHdG?= =?utf-8?B?UWhCdlVzeTdvRVNhblBoeXFvREtWMVJ0NDdyZUZWdUpYRXppaGdvei9SMWla?= =?utf-8?B?ME1uSW1XM2dzRnB0MEJ3UDIrMUdGT0pibFNSSXIyVlZNNG1OVUdKeGlyUGdX?= =?utf-8?B?dnFXbE1iMHZYY2NNZVd5dklJQlAyY2tpTzY3U2YzQWRON2h5T0t4WGtBY3Yr?= =?utf-8?B?T0ZGVG5hY2p1bWtjaDBpTllEa1hFSWFQVmM5RlF2SDB5SWs0Q0FDeGllakln?= =?utf-8?B?c1lDT2x6aGlyN3g2UmZyclJmTFBjblVzM2I3bEdXbnNBMUE4NENtbWxlTjlX?= =?utf-8?B?WXRjd2g3RlJteGYrRnRUNkZ5NURUNCtPd1krS3ZWTDgvL0ZvUnZEcmZrd0tC?= =?utf-8?B?R3kvZkdnNEwyYTB0MVBURGIreWJFSlJObFRMc3V1NGh0UjJRK1AwZEtWRkYy?= =?utf-8?B?YXlhNFpRZU9tdVM4dEhWM1RaSUhOT2RPeDlTTWU1T0tNU0htS3BLeUhBODBU?= =?utf-8?B?aVFoa3hvaW54Wi83cmJ2bHRhNjg4NVpvaWhGVS9GYUlldExvZ3NUMHVWODR4?= =?utf-8?B?MmROcWNmU0tvM2FlYk1DUS83TTM0QzdRV1A4dXViRW9aTGtqekloZ0V6Ti9C?= =?utf-8?B?S0tvQjlPblJnV3llUmRuSlZ4WHA1OUY2MDRJd1dZVmhHTlYrdE5WQkRvcjdY?= =?utf-8?B?VUJ3TkQ3Z0tuRTZ3cXVyd3krU2lmS051YWFpK1hvZWZFc1ZuNGJGZW4zclFl?= =?utf-8?B?UVdqVTQ1alZJOEJJMGNGdUJRVTBScnRTRDBSS21JcVJORmlNN3J2UDEwZzVj?= =?utf-8?B?R2k2akVUQml3TkZ2UW5acWdtYnFGTko5MUlCbDNqMHRTRmlHOWhOQk1IcGVx?= =?utf-8?B?NnBubTN2c1J3UnlUbkRqalcrbXlHS2ZQOFE1b1Q2TEdDbk13L2ozSzk3OC90?= =?utf-8?B?SHZTUFZpamRJU2RES3pWTk9LMFVYUUUwNVA2QVE3dFkwYjkzckJhN1ZEelNq?= =?utf-8?B?aUN2cEMrSnZGcTM1UnlpelE1cDlZUWo3STgwa25CNnhvVTI4RlZsSHptNUFV?= =?utf-8?B?MnhVUUUvRDdkWVI3SUMzY0NvYXJUSFRReVFQb2VBclFkT0RXakpiQ1I5Wk5I?= =?utf-8?B?U2F1aUdXYzdyV3U4SlpvK24xRG9yNWRiZzNOY1JDenExU2g0OGhJK0tESzRx?= =?utf-8?B?VGZOWW9udEJVbE04U2g4K1NKbW56dFJ3bmdjd1VWbGIvMDBUTmVISzhaS1N1?= =?utf-8?B?RW5ITDkvSWMyQVlURks2emJtR3JIaXpiRktVbVlTQVNGaHNTUXFkaXhrendU?= =?utf-8?B?RDArNVZYODBTbUY1T3FROHovMUluN3Zqc0ZTaVFPamc3VDJkWGRCQ3NtMngz?= =?utf-8?B?OTlUeTU2MUs5K1NGWGdYNHR0bTlicWd1MkgvTTZ4blZEMGhxaXQwQmVEQmJC?= =?utf-8?B?ZUovZTFlaytabU5UanY1dG1GTVpkRGtsS2hicVV6VTIzak1mVmcwOW96VUpu?= =?utf-8?B?dmlFZmpkSWptb0hFR1M0UnlKY2wxTElRZDBHcDZna2ZKMXRZUTJMOVNjUEV6?= =?utf-8?B?YWI5RGRNRVlUdE1idUxoSFd4WGpvYUxIRDBMeEFWRE1xNUIrNDgvL1hPUndQ?= =?utf-8?B?bjQxOC9Fajg0REVoSGMxbTd2Y0s1R3lGcFNrc3g1cHg4eEFlT1JwZk9rR1Q3?= =?utf-8?B?bGM0RkE3dlZrNGtFbitNS1F5cC9wVk40S3FWenAyd0YzckU2SzJaUFl6bjI2?= =?utf-8?B?MHM3NkJtMC9pTFliZXNDSzdnbk5uTmhJSHpFbExoMklwQWVuNU9IVTIveHI5?= =?utf-8?B?aG1aWWhwMnBkeHlFakt2a0I1NjdQeUp0bEdHOE4zTnpMQitZYVErTjgxQTRF?= =?utf-8?B?dXZpSE5zRjUrQlFLdDd4UEFzb3Y4RnJYZ1AvR1dIcy9BUGdzdDY0MDFlcVhS?= =?utf-8?B?TE9TRU5sWm1mbFJ6ckxZV2RhZ21LTTVERUhacHNXY2ZPbWdKMTh0azZYeTc2?= =?utf-8?B?RXMvN1V2UjY4dlNIYTE3dnFNaStEVjZlMEg3N3Z5ZldpblZ0aDFkWEd1Qlpz?= =?utf-8?B?Mk82SThsaDBkazk0UmVEeXQ3cFI4VDc4OWlMOVNzVnMyL1R6bzV5RFVIdXg2?= =?utf-8?B?NkIzbkc5cnYySUgwb2xaeVVXQ1o5Y01nRWNsNTRwa1lIMGpZSnJOa3lVTnpv?= =?utf-8?B?a0lFcDFndmJoM0JLeXJrZFJQVEZGbXRkQjBDZEF5NjRQM0FJK2FEa04yZW9r?= =?utf-8?B?UUdYZVBtTTFEY0ZaTjExT0I5NWNqZTV2alhTN1E5T2x2eUN0MVdhOUxkRjNL?= =?utf-8?Q?BpamhBcZx6K/u9+4=3D?= Content-ID: MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN9PR11MB5515.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: abe98582-0a1d-4faa-962f-08da148754e5 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Apr 2022 09:01:10.2881 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 0cBVZpjk1cFQWBTRULUkNxdwxdCdcfP6OVKWQlJFoJh87SjlU2+0U/iEgRWNai+i2qpnoybOAAHB6C0/9gXYDQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB4093 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH 1/2] libavcodec/qsvdec: Add more pixel format support to qsvdec 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: On Wed, 2022-03-30 at 14:43 +0800, Wenbin Chen wrote: > Qsv decoder only supports directly output nv12 and p010 to system > memory. For other format, we need to download frame from qsv format > to system memory. Now add other supported format to qsvdec. > > Signed-off-by: Wenbin Chen > --- > libavcodec/qsv.c | 36 ++++++++++++++++++++++++++++++++++++ > libavcodec/qsv_internal.h | 3 +++ > libavcodec/qsvdec.c | 23 +++++++++++++++++------ > 3 files changed, 56 insertions(+), 6 deletions(-) > > diff --git a/libavcodec/qsv.c b/libavcodec/qsv.c > index 67d0e3934a..8010eef172 100644 > --- a/libavcodec/qsv.c > +++ b/libavcodec/qsv.c > @@ -244,6 +244,42 @@ int ff_qsv_map_pixfmt(enum AVPixelFormat format, uint32_t > *fourcc) > } > } > > +int ff_qsv_map_frame_to_surface(const AVFrame *frame, mfxFrameSurface1 > *surface) > +{ > + switch (frame->format) { > + case AV_PIX_FMT_NV12: > + case AV_PIX_FMT_P010: > + surface->Data.Y = frame->data[0]; > + surface->Data.UV = frame->data[1]; > + /* The SDK checks Data.V when using system memory for VP9 encoding */ > + surface->Data.V = surface->Data.UV + 1; > + break; > + case AV_PIX_FMT_X2RGB10LE: > + case AV_PIX_FMT_BGRA: > + surface->Data.B = frame->data[0]; > + surface->Data.G = frame->data[0] + 1; > + surface->Data.R = frame->data[0] + 2; > + surface->Data.A = frame->data[0] + 3; > + break; > + case AV_PIX_FMT_YUYV422: > + surface->Data.Y = frame->data[0]; > + surface->Data.U = frame->data[0] + 1; > + surface->Data.V = frame->data[0] + 3; > + break; > + > + case AV_PIX_FMT_Y210: > + surface->Data.Y16 = (mfxU16 *)frame->data[0]; > + surface->Data.U16 = (mfxU16 *)frame->data[0] + 1; > + surface->Data.V16 = (mfxU16 *)frame->data[0] + 3; > + break; > + default: > + return MFX_ERR_UNSUPPORTED; Please change the return type to mfxStatus if you want to return a mfx error code, otherwise return a ffmpeg error here. Thanks Haihao > + } > + surface->Data.PitchLow = frame->linesize[0]; > + > + return 0; > +} > + > int ff_qsv_find_surface_idx(QSVFramesContext *ctx, QSVFrame *frame) > { > int i; > diff --git a/libavcodec/qsv_internal.h b/libavcodec/qsv_internal.h > index 58186ea7ca..e2aecdcbd6 100644 > --- a/libavcodec/qsv_internal.h > +++ b/libavcodec/qsv_internal.h > @@ -147,4 +147,7 @@ int ff_qsv_find_surface_idx(QSVFramesContext *ctx, > QSVFrame *frame); > void ff_qsv_frame_add_ext_param(AVCodecContext *avctx, QSVFrame *frame, > mfxExtBuffer *param); > > +int ff_qsv_map_frame_to_surface(const AVFrame *frame, mfxFrameSurface1 > *surface); > + > + > #endif /* AVCODEC_QSV_INTERNAL_H */ > diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c > index 661f15bc75..f159e2690f 100644 > --- a/libavcodec/qsvdec.c > +++ b/libavcodec/qsvdec.c > @@ -132,21 +132,28 @@ static int qsv_get_continuous_buffer(AVCodecContext > *avctx, AVFrame *frame, > frame->linesize[0] = FFALIGN(avctx->width, 128); > break; > case AV_PIX_FMT_P010: > + case AV_PIX_FMT_YUYV422: > frame->linesize[0] = 2 * FFALIGN(avctx->width, 128); > break; > + case AV_PIX_FMT_Y210: > + frame->linesize[0] = 4 * FFALIGN(avctx->width, 128); > + break; > default: > av_log(avctx, AV_LOG_ERROR, "Unsupported pixel format.\n"); > return AVERROR(EINVAL); > } > > - frame->linesize[1] = frame->linesize[0]; > frame->buf[0] = av_buffer_pool_get(pool); > if (!frame->buf[0]) > return AVERROR(ENOMEM); > > frame->data[0] = frame->buf[0]->data; > - frame->data[1] = frame->data[0] + > - frame->linesize[0] * FFALIGN(avctx->height, 64); > + if (avctx->pix_fmt == AV_PIX_FMT_NV12 || > + avctx->pix_fmt == AV_PIX_FMT_P010) { > + frame->linesize[1] = frame->linesize[0]; > + frame->data[1] = frame->data[0] + > + frame->linesize[0] * FFALIGN(avctx->height, 64); > + } > > ret = ff_attach_decode_data(frame); > if (ret < 0) > @@ -426,9 +433,11 @@ static int alloc_frame(AVCodecContext *avctx, QSVContext > *q, QSVFrame *frame) > if (frame->frame->format == AV_PIX_FMT_QSV) { > frame->surface = *(mfxFrameSurface1*)frame->frame->data[3]; > } else { > - frame->surface.Data.PitchLow = frame->frame->linesize[0]; > - frame->surface.Data.Y = frame->frame->data[0]; > - frame->surface.Data.UV = frame->frame->data[1]; > + ret = ff_qsv_map_frame_to_surface(frame->frame, &frame->surface); > + if (ret < 0) { > + av_log(avctx, AV_LOG_ERROR, "map frame to surface failed.\n"); > + return AVERROR(EINVAL); > + } > } > > frame->surface.Info = q->frame_info; > @@ -993,6 +1002,8 @@ const FFCodec ff_##x##_qsv_decoder = { \ > .p.priv_class = &x##_qsv_class, \ > .p.pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_NV12, \ > AV_PIX_FMT_P010, \ > + AV_PIX_FMT_YUYV422, \ > + AV_PIX_FMT_Y210, \ > AV_PIX_FMT_QSV, \ > AV_PIX_FMT_NONE }, \ > .hw_configs = qsv_hw_configs, \ _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".