From patchwork Mon Mar 18 08:12:44 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xiang, Haihao" X-Patchwork-Id: 47159 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:958e:b0:1a3:31a3:7958 with SMTP id iu14csp864766pzb; Mon, 18 Mar 2024 01:13:19 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCV0vR0E8DvkgLtrDji/0L5rEMthuiN3JrVaKN03QtcjRD4mz9VzlE9gD2hO8YKE+XlL/MZZgFLBDv1OFxn5gdx7Oa2RumTVfoduTA== X-Google-Smtp-Source: AGHT+IFp2uieHCEKuPoPSBMo0as/MvSm/VME5J4YPp5ltyTnR/RWQdJZb12RWqxdTcdmS3D46GPU X-Received: by 2002:aa7:c3d0:0:b0:568:9700:eda0 with SMTP id l16-20020aa7c3d0000000b005689700eda0mr4493678edr.37.1710749599505; Mon, 18 Mar 2024 01:13:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1710749599; cv=none; d=google.com; s=arc-20160816; b=syzOIYlJ1wKmERHtWKbrL4XW24bY5BQ2zrUV6ZGsC4WdbcIHnu6XCB5PLBjStzIVOq +kXwUumLYchllaVOYTzIufmp+jdlZ5CtWXd9ZHxT7pAFoI9Ph7Sv1gdhbMph9plRHb01 ta3OUpISoHW2c4i37RhcRC3D70Q73KNkiMKUg2jTNMxo/rnKPjoKGPOcsyF5xmymFSZj c1zefwEPHU0RjSmf4w6RRTUDhcp8WF0M6y2DfzU9cKfBNMmyTo/Iy4P9oHeQxw9GYgTP dukJ6ebmxY2G8V9srA+nXAu6Gyfcfn9TNgjradbXr2o/Zq+WzcTkGweH+Zn7hUe76SRv NRjw== 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=Baof1+Yq8S2Zoe8jeYy6WHEvKU+gg5txXDNbZt7voMc=; fh=1kpmTRI1sW42eNCnNMby7VLIISQBX6KJuVYxOEG0t2A=; b=GfokDfcX/O1wCnFtXazxKLog6KrDqekKvdFkWHRVunKgooAp2h3svfCishly425dT2 mAw9sp0yB1fdjP1PK530G49PoicPeDkay1yMJAkCbcoi+jy6elxGHtlsYFmRHPUCoIND Q3j7t0IQZ5aR9VmAP77zWNamOdezuweqEJhstC8aYd/8iRsmD+rewkFdcX8kk2RXm6b0 Wcx4VzrNI6JO8tRl0LqgJ0CxhA+GDhd7jSrRRO/dmDWapOtPz0r4GQ/fq8kaA6VryB7D zJ8A6mQeYunR6ajKdPtWATRGX6toq2omOVmMlqActxH//Scg4iz8dDJ4wwQqvqUa//Eh YVUA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel.com header.s=Intel header.b=Hcub45E1; 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 x10-20020a056402414a00b005684974866bsi4215895eda.460.2024.03.18.01.13.19; Mon, 18 Mar 2024 01:13:19 -0700 (PDT) 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=Hcub45E1; 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 6847368D253; Mon, 18 Mar 2024 10:13:15 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.9]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2E29068D212 for ; Mon, 18 Mar 2024 10:13:06 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1710749593; x=1742285593; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=wsBNW5jWOgtXQHswsUHVBtY0Zxyqfn654LcBWLQBMm4=; b=Hcub45E1uvFYyG6e9gEi++jhzOUVbh4/BWCmBSPiuZvgzH1c6jNpW4BG 6ZfzXW2YtC3opURqWKffC8Q3Za8OFiDP7YnUT++yzmrK75Mr2a9qmSuZs Jl96ckEkPEGtvbPMeRnpxc0mC+9w6h4RkJlxA68iM3/eWKZ1syrEB/3fT yJ+gIvu9D+Bt18EI4KM8rdEAexkS7LGKzk1+GXbpoERnVuNX31JfVSRmb 7TUUyZNtEMzowGv0kxGLKS8Pbxb7QSCfbzo+QaxFifU7+ewQMN0/febpp WbhOnt9y2kSted9SGss/Aq95LOgYuGwdRL27LGR+WPNLGctCTZY8yYtQv Q==; X-IronPort-AV: E=McAfee;i="6600,9927,11016"; a="16270266" X-IronPort-AV: E=Sophos;i="6.07,134,1708416000"; d="scan'208";a="16270266" Received: from orviesa008.jf.intel.com ([10.64.159.148]) by fmvoesa103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Mar 2024 01:13:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,134,1708416000"; d="scan'208";a="14033606" Received: from xhh-dg264.sh.intel.com ([10.238.2.76]) by orviesa008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Mar 2024 01:13:03 -0700 From: "Xiang, Haihao" To: ffmpeg-devel@ffmpeg.org Date: Mon, 18 Mar 2024 16:12:44 +0800 Message-Id: <20240318081246.3649869-1-haihao.xiang@intel.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/3] lavfi/tonemap_vaapi: By default use bt709 for output frame 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: Haihao Xiang Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: WqNXjpjbpgPN From: Haihao Xiang By default don't use the color properties from input frame as output frame properties when performing HDR to SDR conversion Signed-off-by: Haihao Xiang --- doc/filters.texi | 4 ++-- libavfilter/vf_tonemap_vaapi.c | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/doc/filters.texi b/doc/filters.texi index 913365671d..2cb84c1476 100644 --- a/doc/filters.texi +++ b/doc/filters.texi @@ -27839,7 +27839,7 @@ Default is nv12. @item primaries, p Set the output color primaries. -Default is same as input. +Default is bt709. @item transfer, t Set the output transfer characteristics. @@ -27849,7 +27849,7 @@ Default is bt709. @item matrix, m Set the output colorspace matrix. -Default is same as input. +Default is bt709. @end table diff --git a/libavfilter/vf_tonemap_vaapi.c b/libavfilter/vf_tonemap_vaapi.c index 0b767202d2..a21f565e3a 100644 --- a/libavfilter/vf_tonemap_vaapi.c +++ b/libavfilter/vf_tonemap_vaapi.c @@ -278,13 +278,16 @@ static int tonemap_vaapi_filter_frame(AVFilterLink *inlink, AVFrame *input_frame if (err < 0) goto fail; + /* Use BT709 by default for HDR to SDR output frame */ + output_frame->color_primaries = AVCOL_PRI_BT709; + output_frame->color_trc = AVCOL_TRC_BT709; + output_frame->colorspace = AVCOL_SPC_BT709; + if (ctx->color_primaries != AVCOL_PRI_UNSPECIFIED) output_frame->color_primaries = ctx->color_primaries; if (ctx->color_transfer != AVCOL_TRC_UNSPECIFIED) output_frame->color_trc = ctx->color_transfer; - else - output_frame->color_trc = AVCOL_TRC_BT709; if (ctx->color_matrix != AVCOL_SPC_UNSPECIFIED) output_frame->colorspace = ctx->color_matrix;