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 0835A40A39 for ; Tue, 1 Nov 2022 01:50:32 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0203D68BE51; Tue, 1 Nov 2022 03:50:29 +0200 (EET) Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C668268BD85 for ; Tue, 1 Nov 2022 03:50:21 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1667267427; x=1698803427; h=from:to:subject:date:message-id:references:in-reply-to: content-id:content-transfer-encoding:mime-version; bh=gbdEIA5uj2YDSkwowWns4UHzGyv0roW7h6RkxgUPxAs=; b=L5S0TzXbVYue5lHwEtWlm7iuh+rNnu3JQaGF0iYzq1OHpx4OuLIZEvEN uyqNF6UCIBamPMAX6HVpWBl4M0R64a/VDMydLUXp5AV/s7awEf9OIp8d8 g3ka/bvon2DCNUVnwZdxWJIJ+UU9twGKLH3UIT+lsjIh/+YKWIYG0QbQD RRYCnY1ppDxTn+YVI/pvmbKCe4L2YJ+2/va05VL74HqFxw58ucdfQERMF saYu3EhUyxdWWZWb/iLLe8HtWjzmCAvBkKoZkWQUdTfu+ZE4Wnn2jSWgq InlAX4kHERbWMYIslNYKOQbN84IFxNMBpWv0gqxPxdphvoZMVUa2q7881 g==; X-IronPort-AV: E=McAfee;i="6500,9779,10517"; a="371123354" X-IronPort-AV: E=Sophos;i="5.95,229,1661842800"; d="scan'208";a="371123354" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Oct 2022 18:50:18 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10517"; a="776346699" X-IronPort-AV: E=Sophos;i="5.95,229,1661842800"; d="scan'208";a="776346699" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga001.fm.intel.com with ESMTP; 31 Oct 2022 18:50:17 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 31 Oct 2022 18:50:16 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Mon, 31 Oct 2022 18:50:16 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.47) 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.2375.31; Mon, 31 Oct 2022 18:50:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XhnJkiz9TuqOxKn90qNLJb+rsaxyGqHQ6VWyF4Rtu5MrPrM9sbtqDTAyjp0fhZe5e8apd0kI6tG1SL41vXIjGxVH6UbDOirbSjYMNkCNcjcEUkB/E+X+y7LUMaUbmQtzGYvqzHzBcCpGTBJWvf3SaoMyTKVITJOjHda45vyahsVWck23hSrL67QmRtbXvDdFKd9b1Z06HYCCPxHexq8IXof8CWQ25TXoe9EA/QGhyzAD77LK4Ha0x8n8aOwmibFFOQ9dE5LYjqKffDpNdrOISCHja/4z9SRfK+QWwoDFlgyowO4C0p8i1K13uiOaRhVAXXZx0LvsnHcMXpjtSrhDKQ== 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=gbdEIA5uj2YDSkwowWns4UHzGyv0roW7h6RkxgUPxAs=; b=k7OeoeJS47oTXC9Uk6vDa71d32o/qJ5ICcT0fH1mBSoZoHvwgGKBF9rVpLZ2O2k/PkFntYGNTy5VNv8a1mvAIDseoc2xLE0wPab8dyHFJ6KaOmAuN1E8xpKFpmO4Jn2VWeIZMH7EhCYOEi/WPDLG7gBWC3/NxMsD2T3VMJmr3pZv5AIQyFVa0xwbhNOVxiTi9QE+zZSxwFxlXbwMAsn4qJQV8i7BOGxAdudcdt7p/Rb5D3IzomAYm6GzSfGbRpVy+tICEAXawRKGRw3Ub68k2MyA+LYv13B6yIvRahZ/0nfUgznMKLsKJ2BvBRUpP8DPq2M/N+DKKQ45mhBW0dNQZw== 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 PH0PR11MB5030.namprd11.prod.outlook.com (2603:10b6:510:41::5) by BL3PR11MB6362.namprd11.prod.outlook.com (2603:10b6:208:3b5::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.28; Tue, 1 Nov 2022 01:50:15 +0000 Received: from PH0PR11MB5030.namprd11.prod.outlook.com ([fe80::684d:f7e7:6cb8:d10a]) by PH0PR11MB5030.namprd11.prod.outlook.com ([fe80::684d:f7e7:6cb8:d10a%3]) with mapi id 15.20.5769.019; Tue, 1 Nov 2022 01:50:15 +0000 From: "Wang, Fei W" To: "ffmpeg-devel@ffmpeg.org" , "ruijing.dong@amd.com" Thread-Topic: [PATCH] avcodec/av1: fixed an vaapi decoding corruption issue Thread-Index: AQHY7UAPLz2qtS8FN0WkxyWw2Ow7tK4pTWgA Date: Tue, 1 Nov 2022 01:50:15 +0000 Message-ID: References: <20221031154652.101396-1-ruijing.dong@amd.com> In-Reply-To: <20221031154652.101396-1-ruijing.dong@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.36.5-0ubuntu1 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: PH0PR11MB5030:EE_|BL3PR11MB6362:EE_ x-ms-office365-filtering-correlation-id: 9ebba485-82af-4988-5234-08dabbab6c13 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /0MI3aTMVfmlrfP1VJezq99CFECs8GztPfEVo5dFksNjNQVHqksR2LLkK32qHlWA29Xd4gFkwiW+sfBR88gIK2sFPSw2jDyO5YXt99lK4eHis501PcWMYKf96XmtE5nHGd0BrrKI2r/aRAfRAyoJozJs9SJsQfse0gjyCAAVB317hLlemsf84SGt2JKZqaywMmUArSZo+PiQIGjQs/AqUf3JouRwTsJTWW4dZpeMmesGjtNiTZPgtw2e4SGxZcfBrCrYTNmadF/lMrXDVsjJz46Fs/bo8Kt9dXPpPhuA2vgWVmQe30zO4kThWa2kcfeIx4xKOe7TGYQh6Q04pQu1HwbDbgz7vH1lN2lSv28WgKmO/S4U+HDiA2YtyZ2E61vTwhoMi1gPwV4E+f37xfQ2sdcekCHKeF2uSXRCzu4vHMZ21SVaGmSlQ8NEZE8qyKNYkE3XnOPjCWPAMoIq1DwDH9WRE1VYguNMzEr1Xo6bHTw//4x1r3EYT8xnhkkIRsAlZJIafUpPYFV7z1AOTmJt+p9E4f5ZvdjuTW5xtDO/HZRsCzpvaJmG/OHppBdPPeV3YrI+iPHbei4clbOA1xe0vE0Na3kFs/ag8zPddywkTJbFA1u3I6SvzsCJ54pPCBTOECC2tEYppAKeV94RBh5D8MoV6rxSgLKrBWLHsqZRMHY5amede9PXHR9hFMd8IEczdqssTNNvahHBSC2liYCUkQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR11MB5030.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(376002)(136003)(346002)(396003)(366004)(39860400002)(451199015)(86362001)(36756003)(82960400001)(122000001)(38100700002)(2906002)(186003)(83380400001)(4001150100001)(966005)(6512007)(6506007)(478600001)(38070700005)(26005)(66556008)(8676002)(5660300002)(2616005)(6486002)(110136005)(76116006)(66476007)(316002)(91956017)(71200400001)(66946007)(8936002)(41300700001)(64756008)(66446008); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eXZoSzVSNnRjR2ZtQnBrSmE5TGQ3OEZ1aEMvTThnOFRXSlBEaGpwbVRmb1k5?= =?utf-8?B?R3VPekEyODlHeXZYUHZOd3pLZmxjcVVMem9IaWVHVzVvbjBJeGMwbTNoelJN?= =?utf-8?B?djRpRUVOSE1DaEVSUTFTS3hHTkQvbktBTnhUdWpFdjFJdVZWbXNIbVlncXVJ?= =?utf-8?B?SklCM0tkVFByclErNlVIY094TVlBQXVtbE1MZjlacXBYOGcvQ2lMRmUyaWpm?= =?utf-8?B?RUoyUUd6MnJQZEtHTkp1c0xJbTZOOHcyUUx1cExjMWJWTElRSVlkMmFLdmNV?= =?utf-8?B?VjJkM1VNT24vSWRUWVU1VmVDRmM3ZFA2S3ZkTVJHWFVhdFNwVjhBeXdJTXlP?= =?utf-8?B?TUlMQk5BaXVIRjNyQXhPdFFwQlVVYWVmRUVlR3B4VGNCMnBBNXpCSCs4Rjgv?= =?utf-8?B?SGxVYWM0dGpTbGVmVEVEMFFwSC9qN1FJTnYrVmhpc2tLSW9wZGNLWUxYcXZv?= =?utf-8?B?ZlFUWGM1MlRETVk5dkVYdWprcys1dm9JTmZHMGhxUmVRVWhqTktrMk9DUFpu?= =?utf-8?B?L05ERTlIbGpadDJkMnpXRlRoUERQSkFUY24wbitNRG9JQkJsVGd3cFhTZy9J?= =?utf-8?B?ak5aWU40b2JpZ2JEUWxIRzVyYjRPa0dWT0xlRjg0M1JYMDl2SEdxaDJGY2R6?= =?utf-8?B?UnZvdHNVVTVGSVpKOTBBT25yS0g3UUJPV3R4bjVzSUoxSVZKK1NWaGE5QXdz?= =?utf-8?B?a2hvVG52ME9uTnVMVmMzU0l2YlVidlUzUGh4QUFDdTB1dFg0K1Y4R0tuSVdS?= =?utf-8?B?UlduUm94R3R1QUhuNExRZzM4b04rcjJYejBJYWNOYjl4S0lVUDVlME9vdnFS?= =?utf-8?B?anVxL2lhblE3cHJ6djZXRFZhRVg0NkFUczZvL2htRTNZOGw4NkJYUm5mZjVG?= =?utf-8?B?ejUrRTFRWWhTMlp1eEtYRkh3dWsxWDh3cE9pdU1DSUNhODI3TGZGVWduRjcx?= =?utf-8?B?ek44bXpYUEVHK3F4eG0rc0tZMXFxY0VQQkp5T2srd044bFNlMnY1ZHFBMzdQ?= =?utf-8?B?cENzY1hHQnh5NnRud3pBajIzSXJRUVpCQnRLOXE0VVJMc1JJSXNPRjM0OEpr?= =?utf-8?B?MDAwdXRraW91YXFwWlFzL00zcVIzOU0rS0lsQU1WUE1kaXlxVmliU1lyV2Qv?= =?utf-8?B?ZVJMMytYbUM3VWJEYlg5M0lmeWlPUTV1akxiLzBGTUFNbkR4SDdES3M4OExF?= =?utf-8?B?eG1WNHNQeFMvdTJlQUlNR3ZEUXd2QjNxRWo4QmdoQzZZcy9BcUZDRmVkcWxF?= =?utf-8?B?TGdxZlZleVV6b01MRGxUWDFGM3NQcUx3U0tMRHlXQ2p2VVBReUhPaE9xSTNE?= =?utf-8?B?NkdLRXdRd1YwNDYrOUNtQk0rSmsvbU5DTUxMYTZOTGw2MlFBZ2ZzVWZxeFpM?= =?utf-8?B?R3BFZVFOU0pYRnNYMTJZV1UzYWJVa3FNdmJGaW1ubHVFTnU2aC9JdXpjVGxp?= =?utf-8?B?Ry93QWw0bERzNjJCVVdRSVVhU3NiNlRGLzcvMG5yanpBdjJsR0VxV0FINk5Y?= =?utf-8?B?emdTUUdSZW5vQm9CU216WHo2VktmSnp4c1pyaENtbmw4OFVjZ3BjUlgvVVVK?= =?utf-8?B?TCtLMXVLcTJJeDRQZnBieXp6MVczQnFYTHVnTERPM1NXNmkyWnVQQ0kzZUdx?= =?utf-8?B?YklCWlVKNzlVYlhocGNCRHZEdHNTNkNPTGowNnBFcDAyUGtpUEYwTG1Zc1da?= =?utf-8?B?M2JkYUM1U2VCcDhDVnRMZ0c0WFhoZUh3QlBCM2R5bWM0REFRWDhHVnNabE95?= =?utf-8?B?RVhJV2VKc3FlclV0MisyMnpBelBBMTlMRWtiWGJCbnNqVmZtL2haSGtCUzNB?= =?utf-8?B?bVF4cHFwNzVVY2p6b3JqelRXV3ZZaENZTk4wLzNMU09pOVpQMmlSaSs4bExx?= =?utf-8?B?R3hMbG5LMzhNb3NFem5CK0lQTXRnd3ExQVhaMWJFZmdzM0l6U0d3Y1ZsRzBk?= =?utf-8?B?TElGNmM2QVJ4akY1TGVOUFRCR28wUEppVjZ2M3J3SnR5WXFDRUhINmNOS0FZ?= =?utf-8?B?OHBTSVBhTVlYMittb3Z3eXB0NmxMOGlHT2NVTEdDYUVwYVhUYzNlNk0zbjRM?= =?utf-8?B?NGg1UHJQZ3h3NDBXTHJQUEFBUWhhMUZBM0NmNG9lRHZBd1BhOHU1V1hETmFq?= =?utf-8?B?aGhYalhtUEVSQTU4bFdaV0VCTHNRTU1TVzQ0cVRUam84YlB5c2dpd3gyaVJr?= =?utf-8?B?Mmc9PQ==?= Content-ID: <9C1C3CB221F3CE448A0B9D447EBC9F86@namprd11.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5030.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9ebba485-82af-4988-5234-08dabbab6c13 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Nov 2022 01:50:15.3198 (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: FyComfqkrbHv8ZsObtaLka5wxi0JLC5EmjLFMoBYbvaAUZWYM8TdgEb41kA0zmRhysy+kYACczhsWcJZy/fqlg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6362 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH] avcodec/av1: fixed an vaapi decoding corruption issue 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 Mon, 2022-10-31 at 11:46 -0400, Ruijing Dong wrote: The title should be "avcodec/av1_vaapi: xxxx". > [problem] > When decoding an av1 bitstream, it shows image corruption > in the middle of the bitstream around key frames. > > [analysis] > In av1_spec.pdf page 38/669, there is a sentence below: > > if ( frame_type == KEY_FRAME && show_frame ) { > for ( i = 0; i < NUM_REF_FRAMES; i++) { > RefValid[ i ] = 0 > ...... > } > ...... > } > > This shows that the condition of invalidating current > DPB frames should be the coming frame_type is KEY_FRAME plus > show_frame is equal to 1. Otherwise, some of the frames > in sequence after KEY_FRAME still refer to the reference frames > before KEY_FRAME, and if these before KEY_FRAME reference > frames were invalidated, these frames could not find their > reference frames, and it could cause image corruption. [problem] and [solution] part and title "[analysis]" can be removed in the commit message. Content after [analysis] is clear enough. Thanks Fei > > [solution] > Add show_frame flag as another condition to co-determine > when to invalidate DPB reference frames. > > Mesa fix is in > https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19386 > > cc: Fei Wang > Signed-off-by: Ruijing Dong > --- > libavcodec/vaapi_av1.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/vaapi_av1.c b/libavcodec/vaapi_av1.c > index 63374c31c9..d0339b2705 100644 > --- a/libavcodec/vaapi_av1.c > +++ b/libavcodec/vaapi_av1.c > @@ -274,7 +274,7 @@ static int vaapi_av1_start_frame(AVCodecContext > *avctx, > }; > > for (int i = 0; i < AV1_NUM_REF_FRAMES; i++) { > - if (pic_param.pic_info_fields.bits.frame_type == > AV1_FRAME_KEY) > + if (pic_param.pic_info_fields.bits.frame_type == > AV1_FRAME_KEY && frame_header->show_frame) > pic_param.ref_frame_map[i] = VA_INVALID_ID; > else > pic_param.ref_frame_map[i] = ctx->ref_tab[i].valid ? _______________________________________________ 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".