From patchwork Sat Dec 16 10:12:22 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul B Mahol X-Patchwork-Id: 6817 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp471512jah; Sat, 16 Dec 2017 02:19:53 -0800 (PST) X-Google-Smtp-Source: ACJfBovvz0xwOSHJbFHitukTBi+ISw0WKkFMJBxTrMTuML7d1z3vLQqfCE4mHxZOHD9bbIoYkN9E X-Received: by 10.223.134.216 with SMTP id 24mr12598380wry.156.1513419593616; Sat, 16 Dec 2017 02:19:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1513419593; cv=none; d=google.com; s=arc-20160816; b=nbs8y+tAloBt3hMJc+E4UCZzeSMxrMtvfbqbQq+fWJCAq/XKQjAkG6Yz56rXAN5D/h +5AZSwyrxqiYCdMW62C4wdZTa5y2dNKVE8kldE4mfE3oMSccDzwFFVz4t6+xFAPZx06h NKgvTiVhSVZj2qRRPvekBndAzRRQIrV/etiZZhK0Gi2vICZfedm+9NE5iFEI9pkIQcUG idQzeJgsz4K7/3kNLwugkB3MGToyQIHihxW3YNuU9a3IWmuVB8vZRcf5VJDZezIHPago IcMod3oA1se2StBJvE3fxiFgxAgDhZHc4tGmWs6nzs8Jt66Mo0B7JwkuDeZ7ZoYiPc5u q+3w== 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:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=fkpmyi5Ai5kbrHYljn8XnIBndUphw1FGY1UvwST7j1g=; b=GaOSf6ez9yl67LnDlhPKY6PdE9qBJ3z6JABHJa/mZPu6Yt35NAol0x0TX+2rYyBMSr 0LremrtpFb8UCtHDZJgEvNtuWz48Thypvr2APc9RnG1y04bkHf/7vvnuiiJFv3Y2J8P3 cvRuGX3M8A87DtNn60hrZGbcGKG3PmMaoMLL4xGXKppbjcs2zssBRVhQiDk9XSqB1ewC 7AACb3N71r6r5wJ42H+OVmyufiz+FY9g0nVex5vYS33XBQWdAHby+v/wEOBTElNVMUrY dJdd7LrfZLrc0ld5rWtrVy6MGqkbkYGCeit8pndQRz2LIUc8prDGOdiN45URC5WZN45a T1qQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=TjwCmP5u; 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 e9si5763339wmi.141.2017.12.16.02.19.53; Sat, 16 Dec 2017 02:19:53 -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=TjwCmP5u; 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 2FF19689CE5; Sat, 16 Dec 2017 12:19:40 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm0-f68.google.com (mail-wm0-f68.google.com [74.125.82.68]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 087B7689A39 for ; Sat, 16 Dec 2017 12:19:38 +0200 (EET) Received: by mail-wm0-f68.google.com with SMTP id f206so21537590wmf.5 for ; Sat, 16 Dec 2017 02:19:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references; bh=LytPAz6da4spyV0k3qVPsgrbqOvD4vCw1e7Jv5QevpM=; b=TjwCmP5uoe6LKe58w2UxD6Fww02pDYVfywdiqcU6tn3Du5Tj3Wl0siL7fYffI5hN3d 9qAPdMbwpP86uDCFR70YEsSX2TqI7268LEDDaO1Z956LfXenGJw+m8bAyJuxtecs0uOz JVDnI7nyJ3E7V5/E7KKcHCp/PwuNPns6SuYBNImCC1l9RZIoGdk6h5lG3yTUh6sMAfWN kMTKIejceJVaQrD06uTjHEsMnenEsBwEE+1St1/+hsv8DCxEh8cz0Y0GhGFRFZA2l0yx mbqy6+bKj5Iz0NoynX02ON6aniYFsaYaBQJwwtq2zNMuh+pex3ByzFA+RJ1xiTVT6lyQ 8Wvw== 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:in-reply-to :references; bh=LytPAz6da4spyV0k3qVPsgrbqOvD4vCw1e7Jv5QevpM=; b=OBp6ADkZpqR1nl9il/Bukfvnd7lnmCOlaP1do3HwbC+dmYLLgANK/QYBy+yxXwJ3RG COrufaQFdyEHwJl9iRJzn+EH1qkQKRuIpKD3ALEfiSbmv8BydGcOoNU9szdcqGTqeN0s kbxQU6KmM/HXKnQxAo/3XZBTpOG58crCH7LpRPs5so7PukJlzXRgTEN00JaclMSaT9o8 BhcVw4me4TsyrzM6RpUcXAd3moZYja9XpGfVIaJOi+QKNpNai7EB0hX9cx1ywUfAqTvv VIHUx0qYUWxzGUJEwC6JHkWLGsfd5WiAWGaIGvCPAPjcpXNHpFg/Rk7t9q4Wdkac4vj8 36AA== X-Gm-Message-State: AKGB3mJoUg9b6Ja8LdJU/EIo98dCXPr815bVFKz9BaMwrGSo2z/mKjIL 3eijwNWpDl7e79mXfWs3lBfBmw== X-Received: by 10.80.182.148 with SMTP id d20mr20969393ede.63.1513419210988; Sat, 16 Dec 2017 02:13:30 -0800 (PST) Received: from localhost.localdomain ([94.250.174.60]) by smtp.gmail.com with ESMTPSA id i6sm7100034eda.6.2017.12.16.02.13.29 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 16 Dec 2017 02:13:30 -0800 (PST) From: Paul B Mahol To: ffmpeg-devel@ffmpeg.org Date: Sat, 16 Dec 2017 11:12:22 +0100 Message-Id: <20171216101245.26977-2-onemda@gmail.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20171216101245.26977-1-onemda@gmail.com> References: <20171216101245.26977-1-onemda@gmail.com> Subject: [FFmpeg-devel] [PATCH 02/25] avfilter/avfilter: add color_range to AVFilterLink struct 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" Signed-off-by: Paul B Mahol --- libavfilter/avfilter.c | 2 ++ libavfilter/avfilter.h | 2 ++ libavfilter/video.c | 8 +++++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index b98b32bacb..4a579bb49d 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -336,6 +336,8 @@ int avfilter_config_links(AVFilterContext *filter) link->w = inlink->w; if (!link->h) link->h = inlink->h; + if (!link->color_range) + link->color_range = inlink->color_range; } else if (!link->w || !link->h) { av_log(link->src, AV_LOG_ERROR, "Video source filters must set their output link's " diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index 47546c15e5..40ad28ffd8 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -584,6 +584,8 @@ struct AVFilterLink { */ AVBufferRef *hw_frames_ctx; + enum AVColorRange color_range; ///< color range type, video only + #ifndef FF_INTERNAL_FIELDS /** diff --git a/libavfilter/video.c b/libavfilter/video.c index 6f9020b9fe..8f12cb7080 100644 --- a/libavfilter/video.c +++ b/libavfilter/video.c @@ -43,6 +43,7 @@ AVFrame *ff_null_get_video_buffer(AVFilterLink *link, int w, int h) AVFrame *ff_default_get_video_buffer(AVFilterLink *link, int w, int h) { + AVFrame *frame = NULL; int pool_width = 0; int pool_height = 0; int pool_align = 0; @@ -86,7 +87,12 @@ AVFrame *ff_default_get_video_buffer(AVFilterLink *link, int w, int h) } } - return ff_frame_pool_get(link->frame_pool); + frame = ff_frame_pool_get(link->frame_pool); + if (!frame) + return NULL; + frame->color_range = link->color_range; + + return frame; } AVFrame *ff_get_video_buffer(AVFilterLink *link, int w, int h)