[FFmpeg-devel] [PATCH] avfilter/vf_unsharp: Merge header into .c
Zhao Zhili
quinkblack at foxmail.com
Fri Aug 23 19:39:13 EEST 2024
> On Aug 14, 2024, at 21:36, Zhao Zhili <quinkblack at foxmail.com> wrote:
>
> From: Zhao Zhili <zhilizhao at tencent.com>
>
> It was shared with opencl implementation.
Ping. Any comments?
> ---
> libavfilter/unsharp.h | 62 ----------------------------------------
> libavfilter/vf_unsharp.c | 34 +++++++++++++++++++++-
> 2 files changed, 33 insertions(+), 63 deletions(-)
> delete mode 100644 libavfilter/unsharp.h
>
> diff --git a/libavfilter/unsharp.h b/libavfilter/unsharp.h
> deleted file mode 100644
> index 0da6f05036..0000000000
> --- a/libavfilter/unsharp.h
> +++ /dev/null
> @@ -1,62 +0,0 @@
> -/*
> - * Copyright (C) 2013 Wei Gao <weigao at multicorewareinc.com>
> - * Copyright (C) 2013 Lenny Wang
> - *
> - * This file is part of FFmpeg.
> - *
> - * FFmpeg is free software; you can redistribute it and/or
> - * modify it under the terms of the GNU Lesser General Public
> - * License as published by the Free Software Foundation; either
> - * version 2.1 of the License, or (at your option) any later version.
> - *
> - * FFmpeg is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> - * Lesser General Public License for more details.
> - *
> - * You should have received a copy of the GNU Lesser General Public
> - * License along with FFmpeg; if not, write to the Free Software
> - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
> - */
> -
> -#ifndef AVFILTER_UNSHARP_H
> -#define AVFILTER_UNSHARP_H
> -
> -#include "config.h"
> -#include "avfilter.h"
> -
> -#define MIN_MATRIX_SIZE 3
> -#define MAX_MATRIX_SIZE 63
> -
> -
> -typedef struct UnsharpFilterParam {
> - int msize_x; ///< matrix width
> - int msize_y; ///< matrix height
> - int amount; ///< effect amount
> - int steps_x; ///< horizontal step count
> - int steps_y; ///< vertical step count
> - int scalebits; ///< bits to shift pixel
> - int32_t halfscale; ///< amount to add to pixel
> - uint32_t *sr; ///< finite state machine storage within a row
> - uint32_t **sc; ///< finite state machine storage across rows
> -} UnsharpFilterParam;
> -
> -typedef struct UnsharpContext {
> - const AVClass *class;
> - int lmsize_x, lmsize_y, cmsize_x, cmsize_y;
> - int amsize_x, amsize_y;
> - float lamount, camount;
> - float aamount;
> - UnsharpFilterParam luma; ///< luma parameters (width, height, amount)
> - UnsharpFilterParam chroma; ///< chroma parameters (width, height, amount)
> - UnsharpFilterParam alpha; ///< alpha parameters (width, height, amount)
> - int hsub, vsub;
> - int nb_planes;
> - int bitdepth;
> - int bps;
> - int nb_threads;
> - int (* apply_unsharp)(AVFilterContext *ctx, AVFrame *in, AVFrame *out);
> - int (* unsharp_slice)(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs);
> -} UnsharpContext;
> -
> -#endif /* AVFILTER_UNSHARP_H */
> diff --git a/libavfilter/vf_unsharp.c b/libavfilter/vf_unsharp.c
> index 2705ac5270..01b5dae796 100644
> --- a/libavfilter/vf_unsharp.c
> +++ b/libavfilter/vf_unsharp.c
> @@ -44,7 +44,39 @@
> #include "libavutil/mem.h"
> #include "libavutil/opt.h"
> #include "libavutil/pixdesc.h"
> -#include "unsharp.h"
> +
> +#define MIN_MATRIX_SIZE 3
> +#define MAX_MATRIX_SIZE 63
> +
> +typedef struct UnsharpFilterParam {
> + int msize_x; ///< matrix width
> + int msize_y; ///< matrix height
> + int amount; ///< effect amount
> + int steps_x; ///< horizontal step count
> + int steps_y; ///< vertical step count
> + int scalebits; ///< bits to shift pixel
> + int32_t halfscale; ///< amount to add to pixel
> + uint32_t *sr; ///< finite state machine storage within a row
> + uint32_t **sc; ///< finite state machine storage across rows
> +} UnsharpFilterParam;
> +
> +typedef struct UnsharpContext {
> + const AVClass *class;
> + int lmsize_x, lmsize_y, cmsize_x, cmsize_y;
> + int amsize_x, amsize_y;
> + float lamount, camount;
> + float aamount;
> + UnsharpFilterParam luma; ///< luma parameters (width, height, amount)
> + UnsharpFilterParam chroma; ///< chroma parameters (width, height, amount)
> + UnsharpFilterParam alpha; ///< alpha parameters (width, height, amount)
> + int hsub, vsub;
> + int nb_planes;
> + int bitdepth;
> + int bps;
> + int nb_threads;
> + int (* apply_unsharp)(AVFilterContext *ctx, AVFrame *in, AVFrame *out);
> + int (* unsharp_slice)(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs);
> +} UnsharpContext;
>
> typedef struct TheadData {
> UnsharpFilterParam *fp;
> --
> 2.42.0
>
More information about the ffmpeg-devel
mailing list