From patchwork Wed Feb 24 14:22:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 25969 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id A83DB44B7FE for ; Wed, 24 Feb 2021 16:22:57 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 80E4368A141; Wed, 24 Feb 2021 16:22:57 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8D68468811F for ; Wed, 24 Feb 2021 16:22:50 +0200 (EET) Received: by mail-wr1-f51.google.com with SMTP id e10so1844380wro.12 for ; Wed, 24 Feb 2021 06:22:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=+W94pvFtcStmqGvtm9bKHEWTK+XVmHsFmfDlZiF5dk0=; b=mrIMvCk481oINve4T9ZTm0beex9pFerdsc7FBV6SB3+pNTeAfffquCxDofuDabu4Oy lnWeGTezWU9O73TcYcVz3WJhbm+s4tIjo96RrJ7CGBN/+V78OvrqMBdIX6xSpJACFyE5 UB3kJMud9Ear7W8x+FSRiZ77cLjnTHpPLvq511emofc/4N/gXRLJ/KdYYmE4y4SWoJum dqzqroStMqct752zCGjruMPKjG9KJuB1FH7TvbsS4Ljv4JbsXKTNxFiT5xgeGD/XOjyC ZGzQ187bgtkcdIl6Lj/OGy6T0oxcEunJQVr92yzZ42QgtJo3TXnwzwEh3an3UID0Hip1 yoVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=+W94pvFtcStmqGvtm9bKHEWTK+XVmHsFmfDlZiF5dk0=; b=atOpuhSbZtngLKQju7nX4Rcj9WPWfOHpvP5TbPP+Tq5Xbc/wHZR6ZVcdcC/jMrY2rB ovQkiffqq482DGWAD3UpK2Oghj/xkNgYqeWZvOCokV9B67EXrX0/UyEe5qAHabywphfM QnIKK9m8hEwZItEQeWw3zMRHWRG9bQr3vYRyrsgGEzXGeYHnw8mBDe8it6cF9BSJCxTU WgoaiBDh7ee6WKb31D+m6gjLiSUQK9x5Il/+bfemLHa0dQkCVX97+GO+kAaophunDFWl wmFlgaGb8aTRz0SFzwGwfdZxa+6FRDU8hN1WZcHNBl1ytLgEq08scZH9LfBEVJfooPbg VrzA== X-Gm-Message-State: AOAM532da9EmjV2aPp0Mu9+/4olQx+YaAsPwDxKWppdA7iVMaKjW8Byv eJ3D9WglIYdnkDuxhPb0LjnGbsy2LaQ= X-Google-Smtp-Source: ABdhPJy/cpd1xEJ04mdaetpcuuZvwnOrHeH6g+SOwSn+C844U4b4wCsJJHpP3KdaymbdLVjLxtk9eg== X-Received: by 2002:adf:fe09:: with SMTP id n9mr21029732wrr.104.1614176569762; Wed, 24 Feb 2021 06:22:49 -0800 (PST) Received: from sblaptop.fritz.box (ipbcc1aa4b.dynamic.kabel-deutschland.de. [188.193.170.75]) by smtp.gmail.com with ESMTPSA id 36sm4476772wrj.97.2021.02.24.06.22.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Feb 2021 06:22:49 -0800 (PST) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 24 Feb 2021 15:22:41 +0100 Message-Id: <20210224142242.911865-1-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] avfilter/transform: Stop exporting internal functions 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 Cc: Andreas Rheinhardt , Anton Khirnov Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" avfilter_transform, avfilter_(add|sub|mult)_matrix are not part of the public API (transform.h is not a public header), yet they are currently exported because of their name. This commit changes this: avfilter_transform is renamed to ff_affine_transform; the other functions are just removed as they have never been used at all. Found-by: Anton Khirnov Signed-off-by: Andreas Rheinhardt --- libavfilter/transform.c | 23 +---------------------- libavfilter/transform.h | 29 +---------------------------- libavfilter/vf_deshake.c | 5 +++-- 3 files changed, 5 insertions(+), 52 deletions(-) diff --git a/libavfilter/transform.c b/libavfilter/transform.c index f4f9e0a47d..1f91436f73 100644 --- a/libavfilter/transform.c +++ b/libavfilter/transform.c @@ -122,28 +122,7 @@ void ff_get_matrix( matrix[8] = 1; } -void avfilter_add_matrix(const float *m1, const float *m2, float *result) -{ - int i; - for (i = 0; i < 9; i++) - result[i] = m1[i] + m2[i]; -} - -void avfilter_sub_matrix(const float *m1, const float *m2, float *result) -{ - int i; - for (i = 0; i < 9; i++) - result[i] = m1[i] - m2[i]; -} - -void avfilter_mul_matrix(const float *m1, float scalar, float *result) -{ - int i; - for (i = 0; i < 9; i++) - result[i] = m1[i] * scalar; -} - -int avfilter_transform(const uint8_t *src, uint8_t *dst, +int ff_affine_transform(const uint8_t *src, uint8_t *dst, int src_stride, int dst_stride, int width, int height, const float *matrix, enum InterpolateMethod interpolate, diff --git a/libavfilter/transform.h b/libavfilter/transform.h index 9b0c19ceca..0344f9c228 100644 --- a/libavfilter/transform.h +++ b/libavfilter/transform.h @@ -83,33 +83,6 @@ void ff_get_matrix( float *matrix ); -/** - * Add two matrices together. result = m1 + m2. - * - * @param m1 9-item transformation matrix - * @param m2 9-item transformation matrix - * @param result 9-item transformation matrix - */ -void avfilter_add_matrix(const float *m1, const float *m2, float *result); - -/** - * Subtract one matrix from another. result = m1 - m2. - * - * @param m1 9-item transformation matrix - * @param m2 9-item transformation matrix - * @param result 9-item transformation matrix - */ -void avfilter_sub_matrix(const float *m1, const float *m2, float *result); - -/** - * Multiply a matrix by a scalar value. result = m1 * scalar. - * - * @param m1 9-item transformation matrix - * @param scalar a number - * @param result 9-item transformation matrix - */ -void avfilter_mul_matrix(const float *m1, float scalar, float *result); - /** * Do an affine transformation with the given interpolation method. This * multiplies each vector [x,y,1] by the matrix and then interpolates to @@ -126,7 +99,7 @@ void avfilter_mul_matrix(const float *m1, float scalar, float *result); * @param fill edge fill method * @return negative on error */ -int avfilter_transform(const uint8_t *src, uint8_t *dst, +int ff_affine_transform(const uint8_t *src, uint8_t *dst, int src_stride, int dst_stride, int width, int height, const float *matrix, enum InterpolateMethod interpolate, diff --git a/libavfilter/vf_deshake.c b/libavfilter/vf_deshake.c index 28a541b94a..8771399351 100644 --- a/libavfilter/vf_deshake.c +++ b/libavfilter/vf_deshake.c @@ -330,8 +330,9 @@ static int deshake_transform_c(AVFilterContext *ctx, for (i = 0; i < 3; i++) { // Transform the luma and chroma planes - ret = avfilter_transform(in->data[i], out->data[i], in->linesize[i], out->linesize[i], - plane_w[i], plane_h[i], matrixs[i], interpolate, fill); + ret = ff_affine_transform(in->data[i], out->data[i], in->linesize[i], + out->linesize[i], plane_w[i], plane_h[i], + matrixs[i], interpolate, fill); if (ret < 0) return ret; } From patchwork Wed Feb 24 14:22:42 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 25971 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 136C644B949 for ; Wed, 24 Feb 2021 16:23:16 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id EBFC568A21C; Wed, 24 Feb 2021 16:23:15 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 632A7687FDA for ; Wed, 24 Feb 2021 16:23:10 +0200 (EET) Received: by mail-wm1-f41.google.com with SMTP id j187so1952372wmj.1 for ; Wed, 24 Feb 2021 06:23:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZWD9lZEpU3Ja+zELIggXcQ3mvzTqXwGfctvrExzY4T4=; b=Dsj7b1qh51mreVFLmyYYMDBP+P8T9G3S9i5yoxbs5Ov4taJkBoQuzupPeGpOVC7Vag b53UDdEBxZLi7ob32xVMsMxE4Nmw8/o00afk8M9MercpnBzWDFAKkcMfMViAgJsXDwGt qNO2PdAMA9+uRf+O/iio+c4wN1mjzj8rm1TwRdHaxVBeZW46k4ixdTCRZp4OWXP4XeDP jS6CDkZCYfBjEvCPnt3QLPRD0XTvPDu9qXn+pzecWzBIYda4kjBkTfyUOUi5jCOqNzK5 4akXVzLCLV1K/oahAaiY6bAdHjMBo92uNEtSbjD7fL3N9JSoqWPgvl+RNWO413chNPs4 t8+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ZWD9lZEpU3Ja+zELIggXcQ3mvzTqXwGfctvrExzY4T4=; b=DhVDRGSy+yBjXiWCFY9Ov5Y+SFK+ZOiA8PL5i/sI6QBdql3RobAJQQWER0fT6+3B6y HbSvKv5xGrp82mZ4xr+9yu4SrCAhSNv5vOjQ9J7VbpevhqLeL/LR7ToRg5IpYWNoIuMN f+TMdozDFi8bPCO+u1OS2ugKkaHgRxS5aKsPcNomflAzYKPcEK9VktxxuQqPTRTqt0QB MKe+Nr28CUuWT9OZuy8WWrHXCQXhBpI8jLX/LdF01rBfO3OGU4tlo1I1zlESgLaagg/y CP64NZTYT3bM4wn87mYrE846mOwuTozDUGXYAt9XOzKrpl5p8Z5MCjT1a2NPPOuhuUB6 AzpQ== X-Gm-Message-State: AOAM5319l2PBddmimFbMBTMKGISzG/HpHlWEwU+dlxkwD/BQOA9Fhvw3 AhjIwhPXEyP9JfI+3T/OHfw65BLvpd0= X-Google-Smtp-Source: ABdhPJyKMxVWrp4cAu3w2eWF0HMkw9l32JZSRSBa/FTNlOPWxuEQPweqIxyNeaVKs2Ap78NJMCVueQ== X-Received: by 2002:a05:600c:2298:: with SMTP id 24mr4090122wmf.136.1614176589540; Wed, 24 Feb 2021 06:23:09 -0800 (PST) Received: from sblaptop.fritz.box (ipbcc1aa4b.dynamic.kabel-deutschland.de. [188.193.170.75]) by smtp.gmail.com with ESMTPSA id 36sm4476772wrj.97.2021.02.24.06.23.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Feb 2021 06:23:08 -0800 (PST) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 24 Feb 2021 15:22:42 +0100 Message-Id: <20210224142242.911865-2-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20210224142242.911865-1-andreas.rheinhardt@gmail.com> References: <20210224142242.911865-1-andreas.rheinhardt@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/2] avfilter/Makefile: Don't compile transform.c unconditionally 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 Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Rheinhardt --- libavfilter/Makefile | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libavfilter/Makefile b/libavfilter/Makefile index 359ea7f903..f63b395fbd 100644 --- a/libavfilter/Makefile +++ b/libavfilter/Makefile @@ -19,7 +19,6 @@ OBJS = allfilters.o \ framequeue.o \ graphdump.o \ graphparser.o \ - transform.o \ video.o \ OBJS-$(HAVE_THREADS) += pthread.o @@ -237,8 +236,8 @@ OBJS-$(CONFIG_DEJUDDER_FILTER) += vf_dejudder.o OBJS-$(CONFIG_DELOGO_FILTER) += vf_delogo.o OBJS-$(CONFIG_DENOISE_VAAPI_FILTER) += vf_misc_vaapi.o vaapi_vpp.o OBJS-$(CONFIG_DESHAKE_OPENCL_FILTER) += vf_deshake_opencl.o opencl.o \ - opencl/deshake.o -OBJS-$(CONFIG_DESHAKE_FILTER) += vf_deshake.o + opencl/deshake.o transform.o +OBJS-$(CONFIG_DESHAKE_FILTER) += vf_deshake.o transform.o OBJS-$(CONFIG_DESPILL_FILTER) += vf_despill.o OBJS-$(CONFIG_DETELECINE_FILTER) += vf_detelecine.o OBJS-$(CONFIG_DILATION_FILTER) += vf_neighbor.o