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 654A642C84 for ; Wed, 30 Nov 2022 01:55:38 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4638868B95E; Wed, 30 Nov 2022 03:55:35 +0200 (EET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6EE7268B6B1 for ; Wed, 30 Nov 2022 03:55:27 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1669773332; x=1701309332; h=from:to:subject:date:message-id:references:in-reply-to: content-id:content-transfer-encoding:mime-version; bh=rxjuz2ojluxf8h06HO++rbRC042ZdZY7xybc6iDZc44=; b=FuZu4HZxtCskiguf5ZB8CAdfeAohacxkVunzrjGKoC8n5SP7yr8M2xbw sSmXWc4UhPfHIA3Grw16W3LE3M9zJ+Rg+kxCDW2/RLkJt3tWstSqtuzT8 LXsGwhR+B5N7qRuYC+RiC7ftwz+CsQjPd3J6K/8JJSzisblvWN7kmsPfW LZV1A0krVm0w+h1/Zu/PQn3UfRHuPw1pBRX6z2M4bnVTTbkhN72lAsCcK IU+Cb8lN1BogMlSpNhnQGlriOyvxHvrgP6HPXXn9VgdHn6/fqNLm+7iUh FSjvsVCqAzL1GwYJgI5FchAZnmkDc8FBmadWqv6t1zjdlRIW7IoKQ+JqO g==; X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="316434043" X-IronPort-AV: E=Sophos;i="5.96,204,1665471600"; d="scan'208";a="316434043" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Nov 2022 17:55:24 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="637820786" X-IronPort-AV: E=Sophos;i="5.96,204,1665471600"; d="scan'208";a="637820786" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga007.jf.intel.com with ESMTP; 29 Nov 2022 17:55:24 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) 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 17:55:23 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx611.amr.corp.intel.com (10.18.126.91) 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 17:55:23 -0800 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.57.49) by edgegateway.intel.com (192.55.55.70) 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 17:55:23 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R4OATKxcMB/dbzK73fcjymBC68erOsthoDbSYpeXDUcnabyHl+f4u760AD7XR6QSwY1s7qSIEtuAWtxxM5TCWWgemte1gLUR9nzX61cKOV+VileX+RyVmXa+FQroPy/Y9nXzV4bwRVzfrGJetPII5IuxgkaCN9FvGh1qMff57q4bSfXGpsY3WZVTsJYHstLrAjXUeBzcT+DcKiIX3viai1VqDlUaNTaTNasXSEGHT5wu/WXC4OSIznbJnV08mcSQg1zwyIccsLuv7qZW7Ch5GRNhEfThq3G3zPpbBHV94hh5ODiGJKfiREaU/4O31A4HdFQSu+X6PBPkpZZCpsgWCg== 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=rxjuz2ojluxf8h06HO++rbRC042ZdZY7xybc6iDZc44=; b=VjsTYbvHVnOEc6AdVCudfIrcYOF09xfRSbD2unvcrYMPHqeLeOqhWV26dLo+W9L2WII2qrOJl1SIPG2+7ZDcxgi0DdPQHQXE7grzCr4z3EREOyuHuYLdoV3Jb5fMoLM6nT+4+dv9BgZdPSOhA0+4ffAduZoR10Msy0xnL9/fu4Yls60S1Yr9uGwWfCI5w4iJeEzQ5az5/5nx+3MH5NzepLE3FzjCKyicv/ko2HH1QHMcqmwND9+fhv9ABO/0Vti0e6SVSALlSRiw5AIQfVUuE6S8g60bdspErmSc77BxKVUO9hoVL1UiBvVWi7yprBdlzldVaA3BBsStqMi7sPOA+Q== 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 SN7PR11MB6828.namprd11.prod.outlook.com (2603:10b6:806:2a3::17) 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 01:55:22 +0000 Received: from BN9PR11MB5515.namprd11.prod.outlook.com ([fe80::e3ef:177c:4008:7ee9]) by BN9PR11MB5515.namprd11.prod.outlook.com ([fe80::e3ef:177c:4008:7ee9%4]) with mapi id 15.20.5857.023; Wed, 30 Nov 2022 01:55:21 +0000 From: "Xiang, Haihao" To: "ffmpeg-devel@ffmpeg.org" Thread-Topic: [FFmpeg-devel][PATCH] lavc/qsvdec: update HDR side data on output AVFrame Thread-Index: AQHY/VHqpbRLZEJ8c0aabJseGDZ45q5WwvWA Date: Wed, 30 Nov 2022 01:55:21 +0000 Message-ID: <66b9c6f7c3aab90ea763fe801a558bfeef340c75.camel@intel.com> References: <20221121023124.203786-1-haihao.xiang@intel.com> In-Reply-To: <20221121023124.203786-1-haihao.xiang@intel.com> Accept-Language: en-AS, zh-CN, 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: BN9PR11MB5515:EE_|SN7PR11MB6828:EE_ x-ms-office365-filtering-correlation-id: 9c77db0b-e8cd-416b-3eeb-08dad275f0c3 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9Yr5cVnpHS1KwfUdJoIZu5bVtcVxq7WM/cmnEbbdAN3kDiXFOZTlnx6cUgcEJ0QrhMB8yXRiWRANh9Lltloy2b985Mpjujeb3EvFlVKuy8/B7rdfk0UaW8dWUN4E+WmMZo0KHlk+eWUQntFzoHbCoHeUb4z++vXPVavnb0ZO4D+MXK7zouQucgt/MAl7LGcgxJ5wIz3h3nRtRyPQ5vqTtKjmUj0H5Cho1ASj/m/9eq+yjlXaHRwU8rSu/W5EHuL8ZOw1WiIXfnYnafkhHhRqBQMO5pBPjeEphC8v7Q9/HWWl77Lt11RrcKAJ5lRz3dVwmPum7cSXYnJa5DohbU/WwqYpTToHlKhwXdJq+3BUhIHCm9pZ2AwRNDFHR/JnAzz3AjFpD2XKygPdYXHV5aj++ufX9cTydUpAUlDsPtQj3mdm+FdHuLcfo2wgMhP0Yi6TOGcQBR4aDp6mBLvHV8ak4kDdUVFb7NwwApo2TwmtFYw+XqpkWcEEWS7lDKn4EpVQXgEnNJvZn1lOLpbHP6MxDu71zffM3eDEcQVRTr+j5V6mDVoiqfRGBZoKtGXgSepsuX566hrSUUQC6CmaOSvG/7IdLoDRw7czXivEiAhuqM9inxSF+4Nkei1ny1TFmdzMQ3hSG7/f7/MTG7nTTVDOIR4BEQLZbgJsUmHlXTUZ2ziYqFQBwdG32XSZbSwocd89O4Srqbl9EqBw2fA/d/kV9Q== 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:(13230022)(136003)(396003)(366004)(376002)(346002)(39860400002)(451199015)(36756003)(38070700005)(86362001)(6486002)(6506007)(71200400001)(6512007)(26005)(5660300002)(6916009)(66556008)(478600001)(8936002)(91956017)(41300700001)(2906002)(66446008)(4001150100001)(19627235002)(66946007)(64756008)(8676002)(66476007)(76116006)(316002)(82960400001)(122000001)(2616005)(186003)(38100700002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?N2VlSTJlNm55N2VqQ2ZtOFJ1cm5TNUNOdUN4dVppT3piNlJybDFaRUg1UEFJ?= =?utf-8?B?SVpuRDkxMm9pS0xRSzNIbTJwdldFcldrWDZQaStqQVdTNDluMHBSRkhGVklE?= =?utf-8?B?YVYzcWhvZjR1aGQ3c2ZlUUE5RXd6ZFRPeUNBaCtVbHE0azVHUlNpWlRpbFUz?= =?utf-8?B?dFd3bDV6ZDRJRllpaWNTM2xNUGJncGdXQVk1clUrVFlGVXprdXNjM1FXRElG?= =?utf-8?B?dUIyb0t1eU05QmQveUdBWE42RktieU5JS0RVbFd4N2htL2ZLaFpIVERnZCsx?= =?utf-8?B?RGFSY0lBRDFEenhrUW5YdU40c2FQaHVFL2dyaFo0ZGVUaWhGTDBQS1Z2ZnQ5?= =?utf-8?B?emtKWGRaNVBlRkNyRkN6ZG50bzg5cUZQQjhjQVlEdEtVMENnMjhlV3ovSnRx?= =?utf-8?B?RDhmQmNTWjgyWFBKNGZNYUw1K0R0Q3FUaFdsQnJpUlhzeTJrTHhvQ3dzd2k4?= =?utf-8?B?bjdzNmlVS2JGd0ZzZjdJSjcvZUxnY1hyZncwODh2WnFQbzR0TmQvWUQvQzZD?= =?utf-8?B?M1ZXMkxQeDJYcjJXM0VGN3plZU1xcGs4dG1jSUJvSm1vb2M1blNidW1rSlp5?= =?utf-8?B?Q0ZQK0tHRStmNVhtd2pPem5yWDhsQmxMNjRkOXVWbzhIZUZWc2hCN1ZkbG1C?= =?utf-8?B?Vk5xN3ZRb3R0cnZDS1RTck5FczhlOHVnRzlRRkgvQkJ2NmZCQTBDSmM5eEpa?= =?utf-8?B?QmtNUzIrbEFISHZLeE1ZMGdJeSt5TU9LcjhFakhBbXY3WWc2bCtIR21DMjh3?= =?utf-8?B?UVhkbkRUa2ZnSHZLRkVlREVGUnRJSkkvdlNMekdFM0owemg5RzBzNEdYUmhP?= =?utf-8?B?RzluU1RWOFZFZXZMbXNxYlhYc1pWSEE1bzBLdEJLcnZRQXRwbkwzUHhqTFRB?= =?utf-8?B?QWk1ZGsxU1BMK2hIdnhIV082UTVXWExIa0t0NWNDSHRFZGZHVFBpQTUyYXZr?= =?utf-8?B?c1BybndUcTF6aDRQRzhaYUlSVmZJMHVSWHM1dVhSdTVkYXVTQ0F3a2ZGRHBZ?= =?utf-8?B?Rkl0S1p0UzBHTExKK1NLY3RvTi9mSjBQY3ROeitGbVJLTFdJb2RyT2hqMFB2?= =?utf-8?B?R1F4MjVHMkt6dFFxay9OeW1BUWRNR2RIMmxJTmFkNVltSzk0TDhiMFJ4T2I0?= =?utf-8?B?YmdrRStqUDhYL1hOUU1HU2hrYlhGSitsa0Z2QWJLL0hFZG9ubzVFV2VtR3RQ?= =?utf-8?B?MGNIUGd3WDAxbGoxd0d2WnpuRy9Ba2ZZTVl6QjJ1bUU2WTdCZWNzKzNnR1hr?= =?utf-8?B?QzZWQ1FaVmZmYVFqajhoN05GM1M3bmhGWGY1ZXoyRmNXeXdGdE4vNFB5cW1J?= =?utf-8?B?aFNyRVpzMHdaNHBvUHZncUpEM0NIbzd0N1dScjk2WS9Ib29KOTRlOHZ4TC9H?= =?utf-8?B?OFNTZldxcFN3M1RiUGV3R2xndTd4NjRoUHIvVzlwNE1mbmdjaWx2ckJDdU94?= =?utf-8?B?Rzdad1pyTXRldGpGMTRKcHhxZUhDcldrK0h4YUl1Ymx4SWFIWDh2WDNQY0hq?= =?utf-8?B?Q0lDcHFtVGlPV1Axd0xaUUVFMUZiV2hvcGZ3cHRpeXdmVmt4NEEyc0IzSllL?= =?utf-8?B?NmpjZWUvZk4wT0s3cGxVUVFIZllPNXhFUHRQUVNQcVhvOW1xZGlNV1hPUCtj?= =?utf-8?B?Z0NyeE5iZ2NFRWNUTXh3MURGVlVGalpIaVhZbzNDU0hkbjhOOHJoWmNtL2o4?= =?utf-8?B?TW02WUxUQ0oyZlI0eEtGUFZiQjlkTWFLRmpzMklDSlVyS2EwbE03Z2dPZHhm?= =?utf-8?B?TGFISm4zQURVdm54OFlLaGNYclNLRFlpUER2UmJtK3hVN1VSQlhXQXNkdnJG?= =?utf-8?B?c2UxVk9zbG5DcTdQUm1QcDhKRTkvRmRDRHNJTlhCaGpZSDZTa0tHV3pxZWIr?= =?utf-8?B?VlhmWW9pYUN5czB3cFlvOGhRSS8vbXJTdTBoeiszQk4wd1BFZVFSQ3BLK1U3?= =?utf-8?B?V0xoNUZWUkVxQWJvNVhNQmhrNlFicStZYktPWlVVVDdjUjU5ZEdvakpuZTlz?= =?utf-8?B?aWN2aUNEeGswKzFQaUR0NFB6OVVuTjZEVjVxTUI3OHlJV3prYzd1OHVDazNP?= =?utf-8?B?K2luaVovVHRDN3pPakJRS2wxSUtDcVU4RWpDRnFhdUJHT283cFNPbjQrdCtj?= =?utf-8?B?VWRSbWxHZXdmK3FpbStNVjhVZmIxbVZmWDJpOXlYbUJ0eUdpRjBVclp5ZWxH?= =?utf-8?B?b0E9PQ==?= 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: 9c77db0b-e8cd-416b-3eeb-08dad275f0c3 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Nov 2022 01:55:21.8212 (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: OZZP4E1cSqL6a1KNKF/ZuqSiO4akzyp7ZDiscKlp6cG+ZTdQf6d69IOVi815I9w0+kJz48S3owHlovCxsce5mA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB6828 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH] lavc/qsvdec: update HDR side data on output AVFrame 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-11-21 at 10:31 +0800, Xiang, Haihao wrote: > From: Haihao Xiang > > The SDK may provides HDR metadata for HDR streams via mfxExtBuffer > attached on output mfxFrameSurface1 > > Signed-off-by: Haihao Xiang > --- > libavcodec/qsv_internal.h | 6 ++++ > libavcodec/qsvdec.c | 73 +++++++++++++++++++++++++++++++++++++++ > 2 files changed, 79 insertions(+) > > diff --git a/libavcodec/qsv_internal.h b/libavcodec/qsv_internal.h > index f6e739a686..5119ef4dff 100644 > --- a/libavcodec/qsv_internal.h > +++ b/libavcodec/qsv_internal.h > @@ -85,6 +85,12 @@ typedef struct QSVFrame { > #if QSV_VERSION_ATLEAST(1, 34) > mfxExtAV1FilmGrainParam av1_film_grain_param; > #endif > + > +#if QSV_VERSION_ATLEAST(1, 35) > + mfxExtMasteringDisplayColourVolume mdcv; > + mfxExtContentLightLevelInfo clli; > +#endif > + > mfxExtBuffer *ext_param[QSV_MAX_FRAME_EXT_PARAMS]; > int num_ext_params; > > diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c > index 73405b5747..92bfea196e 100644 > --- a/libavcodec/qsvdec.c > +++ b/libavcodec/qsvdec.c > @@ -41,6 +41,7 @@ > #include "libavutil/time.h" > #include "libavutil/imgutils.h" > #include "libavutil/film_grain_params.h" > +#include "libavutil/mastering_display_metadata.h" > > #include "avcodec.h" > #include "codec_internal.h" > @@ -492,6 +493,22 @@ static int alloc_frame(AVCodecContext *avctx, QSVContext > *q, QSVFrame *frame) > } > #endif > > +#if QSV_VERSION_ATLEAST(1, 35) > + if (QSV_RUNTIME_VERSION_ATLEAST(q->ver, 1, 35) && avctx->codec_id == > AV_CODEC_ID_HEVC) { > + frame->mdcv.Header.BufferId = > MFX_EXTBUFF_MASTERING_DISPLAY_COLOUR_VOLUME; > + frame->mdcv.Header.BufferSz = sizeof(frame->mdcv); > + // The data in mdcv is valid when this flag is 1 > + frame->mdcv.InsertPayloadToggle = 0; > + ff_qsv_frame_add_ext_param(avctx, frame, (mfxExtBuffer *)&frame- > >mdcv); > + > + frame->clli.Header.BufferId = MFX_EXTBUFF_CONTENT_LIGHT_LEVEL_INFO; > + frame->clli.Header.BufferSz = sizeof(frame->clli); > + // The data in clli is valid when this flag is 1 > + frame->clli.InsertPayloadToggle = 0; > + ff_qsv_frame_add_ext_param(avctx, frame, (mfxExtBuffer *)&frame- > >clli); > + } > +#endif > + > frame->used = 1; > > return 0; > @@ -628,6 +645,53 @@ static int qsv_export_film_grain(AVCodecContext *avctx, > mfxExtAV1FilmGrainParam > } > #endif > > +#if QSV_VERSION_ATLEAST(1, 35) > +static int qsv_export_hdr_side_data(AVCodecContext *avctx, > mfxExtMasteringDisplayColourVolume *mdcv, > + mfxExtContentLightLevelInfo *clli, > AVFrame *frame) > +{ > + // The SDK re-uses this flag for HDR SEI parsing > + if (mdcv->InsertPayloadToggle) { > + AVMasteringDisplayMetadata *mastering = > av_mastering_display_metadata_create_side_data(frame); > + const int mapping[3] = {2, 0, 1}; > + const int chroma_den = 50000; > + const int luma_den = 10000; > + int i; > + > + if (!mastering) > + return AVERROR(ENOMEM); > + > + for (i = 0; i < 3; i++) { > + const int j = mapping[i]; > + mastering->display_primaries[i][0] = av_make_q(mdcv- > >DisplayPrimariesX[j], chroma_den); > + mastering->display_primaries[i][1] = av_make_q(mdcv- > >DisplayPrimariesY[j], chroma_den); > + } > + > + mastering->white_point[0] = av_make_q(mdcv->WhitePointX, chroma_den); > + mastering->white_point[1] = av_make_q(mdcv->WhitePointY, chroma_den); > + > + mastering->max_luminance = av_make_q(mdcv- > >MaxDisplayMasteringLuminance, luma_den); > + mastering->min_luminance = av_make_q(mdcv- > >MinDisplayMasteringLuminance, luma_den); > + > + mastering->has_luminance = 1; > + mastering->has_primaries = 1; > + } > + > + // The SDK re-uses this flag for HDR SEI parsing > + if (clli->InsertPayloadToggle) { > + AVContentLightMetadata *light = > av_content_light_metadata_create_side_data(frame); > + > + if (!light) > + return AVERROR(ENOMEM); > + > + light->MaxCLL = clli->MaxContentLightLevel; > + light->MaxFALL = clli->MaxPicAverageLightLevel; > + } > + > + return 0; > +} > + > +#endif > + > static int qsv_decode(AVCodecContext *avctx, QSVContext *q, > AVFrame *frame, int *got_frame, > const AVPacket *avpkt) > @@ -749,6 +813,15 @@ static int qsv_decode(AVCodecContext *avctx, QSVContext > *q, > } > #endif > > +#if QSV_VERSION_ATLEAST(1, 35) > + if (QSV_RUNTIME_VERSION_ATLEAST(q->ver, 1, 35) && avctx->codec_id == > AV_CODEC_ID_HEVC) { > + ret = qsv_export_hdr_side_data(avctx, &aframe.frame->mdcv, > &aframe.frame->clli, frame); > + > + if (ret < 0) > + return ret; > + } > +#endif > + > frame->repeat_pict = > outsurf->Info.PicStruct & MFX_PICSTRUCT_FRAME_TRIPLING ? 4 : > outsurf->Info.PicStruct & MFX_PICSTRUCT_FRAME_DOUBLING ? 2 : Will apply, -Haihao _______________________________________________ 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".