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 0FD854418E for ; Wed, 30 Nov 2022 04:08:41 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D2F3B68B43E; Wed, 30 Nov 2022 06:08:37 +0200 (EET) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 76F4E68AF6B for ; Wed, 30 Nov 2022 06:08:30 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1669781315; x=1701317315; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=J3kmc2sFonPHH+aLVl6D0K/smmzNozvn7pWyrdH4BlM=; b=OvcgPS4b/v/vat+Rwp2E8f5W+h1soKOEpGqHznbsK7DkjJ8Iv2sZFut9 zdjU73rY/+j3l2NIVrkEvy+/ZgZnuANxkI2Riko/LJKgRp8yr/A3M0LXc letqUakurP2yTvIjcdRgunuImvqPebG/x0iGRIOt7tnEIkv8bL01X/axh EPmgJDuppUD6O6ckEv+JZTMRmN+9lZOor7jyt8V8UAk/R4pV6FaTd5YBQ h5hFjyF0mc1/LtTSyMKD8/7F7B+gxalbxRnOgDUMIpriUsH1s2kuEOy+H Y5HONB6g47bVwuWh0GCaSJOXSy3pqXhJ+br9+tkAogdKo5rTHOkrPJSsK Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="315329330" X-IronPort-AV: E=Sophos;i="5.96,205,1665471600"; d="scan'208";a="315329330" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Nov 2022 20:08:25 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="646173249" X-IronPort-AV: E=Sophos;i="5.96,205,1665471600"; d="scan'208";a="646173249" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga007.fm.intel.com with ESMTP; 29 Nov 2022 20:08:20 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Tue, 29 Nov 2022 20:08:19 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16 via Frontend Transport; Tue, 29 Nov 2022 20:08:19 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.16; Tue, 29 Nov 2022 20:08:19 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jc7LQwN+d+MZz971IKUBPInW1OVxWh+QGbbN6Tm+4XMzLR6WFbG8dWuCw4svMEuccHYL1MyXmp1ccMQRTbuUFyEMGqsQtiWCwBBMMoNUptC2brHRB70JwMInRB2KuZUk4cLXmLwcf8CicZI3NmtCs1U6wIL8dBvt16WeLwojtOjpVzvecwjyQ+1BBywIL9l7cAV0SX4osozxTBhIQuMFytV4Mcodkg/U6Ti7jXNh/VHz3saZvj9V9KPV2Je3Jby7/oedy6NLQbvoLqRx5Dkz8caC8E4Fe9VoxuyXLTjGVoTFNx37MPMAoGeFW3PpzN0iEhneZXTY0Ds1YPj6A0FU0Q== 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=rCz370eAih04DxebByYNBf1M8orKA4IpZ4K82yn6NV0=; b=lBcrKOpY39lzFdEvJOShkFlwJ+9X5vnpPZ7qbf32somzB7VXdjhyzlKwdDJXA2Y5GTNsOaHaTNfOkDSIRlUqRZGCiG1UwlQQaVkVr6Ea3x7UmexsCs7xJt2h1b9IOd0QDq529fiiRPMsPqfI+99ywhcrlfCc5csfvRjUGX2H+/a8RWL45X+ZuSXCuez0OeRGhRSJTcZHFVvW+NtcjQiGCg+wZPp19a+ORj/cXQlVInfbrdGpGUM/9Kw0tchw5Y/PHZuZ+k876c/cK3ieCqcA5LrcorXHkZympd7HaRHPBj9s5IE2eJ5bhIO274REFyejyHZquGrzkrtnznxOEBv5Pg== 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 IA1PR11MB6396.namprd11.prod.outlook.com (2603:10b6:208:3ab::10) by SJ1PR11MB6180.namprd11.prod.outlook.com (2603:10b6:a03:459::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.23; Wed, 30 Nov 2022 04:08:11 +0000 Received: from IA1PR11MB6396.namprd11.prod.outlook.com ([fe80::c1e4:1c2d:ab04:6dda]) by IA1PR11MB6396.namprd11.prod.outlook.com ([fe80::c1e4:1c2d:ab04:6dda%5]) with mapi id 15.20.5857.023; Wed, 30 Nov 2022 04:08:11 +0000 From: "Chen, Wenbin" To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH] libavfilter/qsvvpp: Use different alignment for YUV420P format Thread-Index: AQHZA8mhDb5ZcCQPDkuw9ekCHrUbWK5V1ZCAgAEE2/A= Date: Wed, 30 Nov 2022 04:08:11 +0000 Message-ID: References: <20221129080702.323228-1-wenbin.chen@intel.com> <0af77427-42ff-ee34-8aef-334f8bb678bf@gmail.com> In-Reply-To: <0af77427-42ff-ee34-8aef-334f8bb678bf@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: IA1PR11MB6396:EE_|SJ1PR11MB6180:EE_ x-ms-office365-filtering-correlation-id: 0758bb9f-972d-4bc2-46b6-08dad2887f17 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: f75TDmS801RlGSDOXSVOeYUcGPyVmUzg4/5AwuKhsT6mWf/zXE7Oia0DwUuF6ODvKCqkWAlSpIzZ3iyoTvKOtyK287Hu+dXwrZmvFDbK1bselJvh0920gVg9K6JZ5xXE2Jdg/baX8D7/hGc4XFIfQPNoivJhnJhpcfx34EkIX1Yu8z26Z5HMmQ3aW+a5XzboiZcWRKVg3qkiyCpnSZVkSqz9Rrwq3rA1fcfGKs5Tzjhq1E+Ti1VlXEVlaHSByexRc24Dn/UQjdsVEr4WjsqELAaOlLNYPYcY1ay5qghQpgCnKlZDbnqVWPnUvMDCfRoo/l4ekkotZdz2pv3N1tIvPEaWatsJ13RY1Q8CWdDma2g3+/BGz6Knu2E0XS6rr9tdEo7LDc5Hbj3702UPHEGcXCO5yiqLY4Cu6d47I3lHt/J3P1JfGnR75UymvIwEVGFJx39BMpPCqH1r0BlS7hEFC5a3wyzmA1ugn17/1QZSzl0TeUS6K1Sof+NkaAXREKC8OAyKciyynas3auz4usWrE6OcLQH3DO4MPpiIqFMhnbCYAre6ZklSl2hHGjdIK2LZBYrJaHDo8O1fe91BE63+wLP8Dc9t9Ui9zpFbHjZIuGdVYLE5566yhXaX3R7h1gmP8NlLh8CJs9Y3im7hBkWpoHBtZWm5GpyZEk9Ncu3EW+UPKg3DCqVfmSFkSSp218lqStzCjYikBFTVX/3pUTPNy2spB79op8jwwl7ybBojLKs= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:IA1PR11MB6396.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(396003)(366004)(136003)(346002)(376002)(39860400002)(451199015)(66899015)(33656002)(66556008)(82960400001)(41300700001)(38070700005)(122000001)(2906002)(83380400001)(86362001)(966005)(64756008)(6916009)(66446008)(66946007)(76116006)(66476007)(71200400001)(38100700002)(478600001)(316002)(55016003)(6506007)(8936002)(8676002)(5660300002)(9686003)(52536014)(26005)(186003)(7696005)(53546011); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?cHu+h+rqoeG0vr/waKQn7+Y7i/ZWMD/d194L4i45zMv3U+sV103VapS0IhgN?= =?us-ascii?Q?59MDncrDdn+65ceaXR8KASEDFVF/W1qS1dDBPtyPeJdXF2XBv+JCs3F2qsfF?= =?us-ascii?Q?5AxNiJdRYR9M9aBXOl5PekNj0WOr7X1uYFEWN5Pnw3u9ANMZh1DsBC7/DyK6?= =?us-ascii?Q?632MWk4HtWI/QMvw1W1g/2IMo+0wAVCN2mpxxvLqtTo2H5pY2Ghp0AxeXVz6?= =?us-ascii?Q?F3Y20CWHyCJi1LI3kO3jYjebsGAqogf5OHDe0H84Qji2EMHtbhfUAGlWnFhX?= =?us-ascii?Q?WF2zD/aUyHgPToarWBjiiCCFCJXybNotTKE+7vSfNr50j0jVGR7SdHQpc397?= =?us-ascii?Q?NoBGs3rVKB0pSEOUKom50Tzj9KmEyjsY1+VKWJ8c0kgnMaSoryNNei5aLoVV?= =?us-ascii?Q?yHt5mKl5X/K5bWFrxaChcpoLtKEtQ+4+uzns5j1K4qpzrXyNVx5ojdSdK6QM?= =?us-ascii?Q?hy9ZZHxhUISGb/MuUlMpiLudjft7A1TpsFdrLUF06As139zV7t8eG/3NELQX?= =?us-ascii?Q?ZZdxfMTFtAewRNkgpSMOkGLO3wKiE+QV0DgcS8ucZP/GEaI1+4k9Euw6IVd8?= =?us-ascii?Q?iVEkCvj3VTvE92pWKSm7aCvw/xkJwSv+qFRwrrDRRvNKmHNFsFab/p/wCtnU?= =?us-ascii?Q?FKGvvXK2uQcTDq+FVRsss/GO/BwEkzJioh2tSWVOvDiOqP7EpU2XXxVJkxfu?= =?us-ascii?Q?19P5yKBFPwNdQHkxTZ8/XIJ+9K4rZzqznemZblgs38opS1r6pZ75p6bHLy6D?= =?us-ascii?Q?fwH2C7vU2g09O8zaGf0r4Z1e+8t/htospX6UOtVPSVls4w8mk2tcQhuyS11l?= =?us-ascii?Q?36MSUPXztk3hzxfzDHLPfRJPd5/Fvq+DFrennoj3TkdyGjuqBkdjjCCx/3yt?= =?us-ascii?Q?JlXEmZ3iXio9uW8dzz2A/Si/u0AZ3A3/vhU6NdFHZ4+HyG8mqwhEDfaBNBPN?= =?us-ascii?Q?2+oQIQFmuEPXtIphK2fbd5W8nsFv3v45GaccaoU0ZJUJsBHUBs6CSeDpu3ve?= =?us-ascii?Q?ZRN+SLpVvsBLgxTiG9S4eOAF5Yb84Ik+xafTuek0eLUbMFmEjDNUEVq6Sf0l?= =?us-ascii?Q?AFxaYxNr4T0SjVVtNZW/7zHfqEPeGGbq07MCSBwcE2iawgxTdvvsa+fGfKeS?= =?us-ascii?Q?cWUDQlxE8CDW6DQUeg1dPcnNPpiyjUWqCBQWYZng1kRnO3+TEsBFrAy8+OnY?= =?us-ascii?Q?hamFPXuArfA5M6UGE7bMg7WBG8QbiF7Moymc+gztwWFo0ges/V/7KqBdVY+8?= =?us-ascii?Q?8Fnsr4OOI3J7rJG+OSU/NLy3C4QBKTpKZLo0YSUcsPha8zetdMuNcK8kdxiB?= =?us-ascii?Q?2x7LEcq7frnYrgPyjzsGKrT0mNSLnCRyWHKd7H4Zc9vvsJ87zYhLtb2KHSRZ?= =?us-ascii?Q?+x64tXurNdlXzdzVZ2zLC5KQKfhoBYrSE6o7cMrRBPi2LNntQESgFRD2ynvg?= =?us-ascii?Q?m4qzS13Kxe7V5JLu+cQ7Clvw52DExwsGSypoOEgSjxd5Kzqw/sj47Xuvr/Xh?= =?us-ascii?Q?FXcjPh7Fgnza4PMTajdSHkdTG2o1u6B3nG2A3lQBS75FstVZfZwk/xm11FaO?= =?us-ascii?Q?1Uif9k87DurYvbnZ9JCUFqnaNMIB5Z3IqmuGEQC4?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: IA1PR11MB6396.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0758bb9f-972d-4bc2-46b6-08dad2887f17 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Nov 2022 04:08:11.5338 (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: qiFqANk7pqUo6XF/bkw8by9w/azo9OJN0Z05DROMN2+xOV5liZrlOvPnov8N2MML48ud1v++g53oKU8nkEBVkg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR11MB6180 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH] libavfilter/qsvvpp: Use different alignment for YUV420P format 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 11/29/2022 5:07 AM, wenbin.chen-at-intel.com@ffmpeg.org wrote: > > From: Wenbin Chen > > > > When process yuv420 frames, FFmpeg use same alignment on Y/U/V > > planes. VPL and MSDK use Y plane's pitch / 2 as U/V planes's > > pitch, which make U/V planes 16-bytes aligned. We need to set > > a separate alignment to meet runtime's behaviour. > > > > Now the commandline works fine: > > ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 3082x1884 \ > > -i ./3082x1884.yuv -vf 'vpp_qsv=w=2466:h=1508' -f rawvideo \ > > -pix_fmt yuv420p 2466_1508.yuv > > > > Signed-off-by: Wenbin Chen > > --- > > libavfilter/qsvvpp.c | 12 +++++++++--- > > 1 file changed, 9 insertions(+), 3 deletions(-) > > > > diff --git a/libavfilter/qsvvpp.c b/libavfilter/qsvvpp.c > > index 8428ee89ab..ad09114cb7 100644 > > --- a/libavfilter/qsvvpp.c > > +++ b/libavfilter/qsvvpp.c > > @@ -408,9 +408,15 @@ static QSVFrame *submit_frame(QSVVPPContext > *s, AVFilterLink *inlink, AVFrame *p > > } else { > > /* make a copy if the input is not padded as libmfx requires */ > > if (picref->height & 31 || picref->linesize[0] & 31) { > > - qsv_frame->frame = ff_get_video_buffer(inlink, > > - FFALIGN(inlink->w, 32), > > - FFALIGN(inlink->h, 32)); > > + /* When process YUV420 frames, FFmpeg uses same alignment on > Y/U/V > > + * planes. VPL and MSDK use Y plane's pitch / 2 as U/V planes's > > + * pitch, which makes U/V planes 16-bytes aligned. We need to set > a > > + * separate alignment to meet runtime's behaviour. > > + */ > > + qsv_frame->frame = ff_default_get_video_buffer2(inlink, > > I think the proper way to do this is by setting a custom AVFilterPad > get_buffer.video() callback, which will be called instead of > ff_default_get_video_buffer() (Which uses an automatically chosen > alignment at runtime) by ff_get_video_buffer(). > > See other filters like vf_pad, vf_transpose_vaapi, etc. Thanks for your advice. I will try it. > > > + FFALIGN(inlink->w, 32), > > + FFALIGN(inlink->h, 32), > > + 16); > > if (!qsv_frame->frame) > > return NULL; > > > _______________________________________________ > 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". _______________________________________________ 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".