From patchwork Wed Nov 15 16:26:06 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vittorio Giovara X-Patchwork-Id: 6100 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp4781109jah; Wed, 15 Nov 2017 08:34:12 -0800 (PST) X-Google-Smtp-Source: AGs4zMYneWOmjWl8T2mFMQ5E1PPvHlhDi83Y2UQEnMstqs1LOLh741SjpEk6W8444XXAfDkvW/by X-Received: by 10.28.104.6 with SMTP id d6mr10555207wmc.101.1510763652058; Wed, 15 Nov 2017 08:34:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510763652; cv=none; d=google.com; s=arc-20160816; b=09WafTyROlhGTNF0wdoogD92HOM68ROv9Fz6zZWWMs3GRB0hsqEYDaHNXxBYo9ytna 7Xd4VeTPwNqOR58orWzSiSQcUK9GcxGCU2JEYTQhDF1OSvIkeZjlb90vP+nVvVDgJs+A FLLaRNZyxK1SkWhcTGrl8z8+z4/JCqZ7jClO4Sk0vZK0Y1ugkqeQ6TlbIbRb6mcQs3x4 m7ys+kH16OJIu1QCQIx8Z8OjatZifEpt+JyWzZw+BBnJaxxpG0TbgGAeI1NgZ4dp9/1P /gmb/X533io7VEDh+ajs/egImKjmQRjkw6MHze0ZTuN+RihjXSwF57W3HADARbc0QbFu M+xQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:dkim-signature :delivered-to:arc-authentication-results; bh=qR2bxEiCWj6Q5Mt09cl9VEyaEYr+8/RagcfbVEw8dBc=; b=C6Tl9PKoXOxTylMBaTbdqJoE0ZK/iB+2I06jm2cG6pf/DjO3+WiLQ9YkJnmGWyhS2P NJSmeNTaLgbvMD4SCS7U+m/1YJ8QUVlRX8VcWQbHb89ZmZ//qAOp0lF4Q49nliia2zFn A4+OwUXLHI377/4mg1OUh3YHgFd+buTkEno4ejw0+N8YPIKb9C15l2mzAPZKzjS16878 7Zf9AZ00WZgZVv59Th7SllUN+WwNbAC4gu6eunRDDtYxBf/RVSYNqtuMKRyZr3rpHVse 8I9inBvsioJLrNyz6aQSpqw7RK5IUSvd8mwfnthfK+i4nBJNqGTpAKAJZKhF+dW64+r1 8pmw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=r3S+idra; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id u9si17521374wrd.45.2017.11.15.08.34.11; Wed, 15 Nov 2017 08:34:12 -0800 (PST) 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=@gmail.com header.s=20161025 header.b=r3S+idra; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0FAA568A0CE; Wed, 15 Nov 2017 18:33:55 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qt0-f194.google.com (mail-qt0-f194.google.com [209.85.216.194]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 250CB68A08E for ; Wed, 15 Nov 2017 18:33:48 +0200 (EET) Received: by mail-qt0-f194.google.com with SMTP id n61so35664617qte.10 for ; Wed, 15 Nov 2017 08:34:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id; bh=hfdvHtuwoiPPgKIb8OuPAie3XnH+2rQ8Htgu9HUczkM=; b=r3S+idrapWGZaIxQ2djzPOd+MFNZF20WsgtOb+0QRybPguvvtf7b6086XGsGPCvZGY KPZo7MBAlj61IzwEDnx57IwN8Jn8ScW8LIwZLQjT42qdv6J65VHfswm69gms8rc1oo+7 WEVtnlEgA6W9pA55UjUMW/nVX5LUOs/cghDMJ3oKl3H+sdBf3WdUg5DuNXF4BddeBNbn EstDJXWjxSqV8xpbTt63v4H1kzypld6+fU9TfbkZr3oXwsyMjiwVFl7Gapa9AIdubsCZ NvlQpO9CFfhIg2vuYA9mG9nHl2WeRYWTIuBS9Ui5dzs4mUytw533MlldayF9wM5fSldO NXmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id; bh=hfdvHtuwoiPPgKIb8OuPAie3XnH+2rQ8Htgu9HUczkM=; b=GPwP4lk3C0g0jiXbjzFHAuR3xvGW+u/GmPhpPgrdkUGGgFVS/i6tDc56RpsbsRKr/i WH2yxqBHz70LZD9aWIv/BAf1Bv+0UvmRganX+4qQlye/hGCXwTfMo74cxxblHJHakp+i 2pRPRQlJvcTbjy9GDinCQRG+rzU5wAXIFaMehDsJt64r4dgob+Su10D7WCnZoDZs+sTC t+6C+4OPcds0rCInmrEVUu2a9KRku+adstN6gMbS6gPoKVaHYJK90u1F5YpKOgKtFmrS 75wS6xA0EjELpd9bPChwUnGvVF4VEnJ+mz8BFggkJtAGxlOQsCc5ZaALvEjs0LBzuBUQ 9eew== X-Gm-Message-State: AJaThX62TV2MtqbQ9B9Mmp4KeocbkHq0+aDa7x8SDo2CoZKOGwUAGGX1 x1DtQQxkebw6pbLbs7vRpKYujg== X-Received: by 10.200.44.251 with SMTP id 56mr11562882qtx.87.1510763168460; Wed, 15 Nov 2017 08:26:08 -0800 (PST) Received: from vimacbookpro.vimeows.com ([8.40.92.161]) by smtp.gmail.com with ESMTPSA id c72sm9445667qka.31.2017.11.15.08.26.07 for (version=TLS1 cipher=AES128-SHA bits=128/128); Wed, 15 Nov 2017 08:26:07 -0800 (PST) From: Vittorio Giovara To: ffmpeg-devel@ffmpeg.org Date: Wed, 15 Nov 2017 11:26:06 -0500 Message-Id: <20171115162606.33605-1-vittorio.giovara@gmail.com> X-Mailer: git-send-email 2.14.2 Subject: [FFmpeg-devel] [PATCH] vf_zscale: Add more supported input properties X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" --- Now without mxf code >_> There is a stable release with this code, and it's a minor update, not sure if it warrants a configure check, but I'll add it if requested. Vittorio libavfilter/vf_zscale.c | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/libavfilter/vf_zscale.c b/libavfilter/vf_zscale.c index 09fd842fe5..7d048da1ef 100644 --- a/libavfilter/vf_zscale.c +++ b/libavfilter/vf_zscale.c @@ -353,10 +353,10 @@ static int convert_matrix(enum AVColorSpace colorspace) return ZIMG_MATRIX_709; case AVCOL_SPC_UNSPECIFIED: return ZIMG_MATRIX_UNSPECIFIED; - case AVCOL_SPC_BT470BG: - return ZIMG_MATRIX_470BG; case AVCOL_SPC_SMPTE170M: return ZIMG_MATRIX_170M; + case AVCOL_SPC_SMPTE240M: + return ZIMG_MATRIX_240M; case AVCOL_SPC_YCGCO: return ZIMG_MATRIX_YCGCO; case AVCOL_SPC_BT2020_NCL: @@ -374,10 +374,22 @@ static int convert_trc(enum AVColorTransferCharacteristic color_trc) return ZIMG_TRANSFER_UNSPECIFIED; case AVCOL_TRC_BT709: return ZIMG_TRANSFER_709; + case AVCOL_TRC_GAMMA22: + return ZIMG_TRANSFER_470_M; + case AVCOL_TRC_GAMMA28: + return ZIMG_TRANSFER_470_BG; case AVCOL_TRC_SMPTE170M: return ZIMG_TRANSFER_601; + case AVCOL_TRC_SMPTE240M: + return ZIMG_TRANSFER_240M; case AVCOL_TRC_LINEAR: return ZIMG_TRANSFER_LINEAR; + case AVCOL_TRC_LOG: + return ZIMG_TRANSFER_LOG_100; + case AVCOL_TRC_LOG_SQRT: + return ZIMG_TRANSFER_LOG_316; + case AVCOL_TRC_IEC61966_2_4: + return ZIMG_TRANSFER_IEC_61966_2_4; case AVCOL_TRC_BT2020_10: return ZIMG_TRANSFER_2020_10; case AVCOL_TRC_BT2020_12: @@ -399,6 +411,10 @@ static int convert_primaries(enum AVColorPrimaries color_primaries) return ZIMG_PRIMARIES_UNSPECIFIED; case AVCOL_PRI_BT709: return ZIMG_PRIMARIES_709; + case AVCOL_PRI_BT470M: + return ZIMG_PRIMARIES_470_M; + case AVCOL_PRI_BT470BG: + return ZIMG_PRIMARIES_470_BG; case AVCOL_PRI_SMPTE170M: return ZIMG_PRIMARIES_170M; case AVCOL_PRI_SMPTE240M: @@ -745,6 +761,8 @@ static const AVOption zscale_options[] = { { "2020", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_2020}, 0, 0, FLAGS, "primaries" }, { "unknown", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_UNSPECIFIED}, 0, 0, FLAGS, "primaries" }, { "bt709", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_709}, 0, 0, FLAGS, "primaries" }, + { "bt470m", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_470_M}, 0, 0, FLAGS, "primaries" }, + { "bt470bg", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_470_BG}, 0, 0, FLAGS, "primaries" }, { "smpte170m", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_170M}, 0, 0, FLAGS, "primaries" }, { "smpte240m", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_240M}, 0, 0, FLAGS, "primaries" }, { "bt2020", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_2020}, 0, 0, FLAGS, "primaries" }, @@ -756,9 +774,13 @@ static const AVOption zscale_options[] = { { "unspecified", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_UNSPECIFIED}, 0, 0, FLAGS, "transfer" }, { "601", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_601}, 0, 0, FLAGS, "transfer" }, { "linear", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_LINEAR}, 0, 0, FLAGS, "transfer" }, + { "log100", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_LOG_100}, 0, 0, FLAGS, "transfer" }, + { "log316", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_LOG_316}, 0, 0, FLAGS, "transfer" }, { "2020_10", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_2020_10}, 0, 0, FLAGS, "transfer" }, { "2020_12", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_2020_12}, 0, 0, FLAGS, "transfer" }, { "unknown", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_UNSPECIFIED}, 0, 0, FLAGS, "transfer" }, + { "bt470m", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_470_M}, 0, 0, FLAGS, "transfer" }, + { "bt470bg", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_470_BG}, 0, 0, FLAGS, "transfer" }, { "smpte170m", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_601}, 0, 0, FLAGS, "transfer" }, { "bt709", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_709}, 0, 0, FLAGS, "transfer" }, { "linear", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_LINEAR}, 0, 0, FLAGS, "transfer" },