History

avfilter/unsharp: Merge header into .c

It was shared with opencl implementation.

Zhao Zhili committed 2 years ago

Commit 2e370801 parent d42cd5b2 files · +33 −63Browse files

Showing the changes to libavfilter (2 of 2 files). Show all

Unified · Split

2 files
  1. libavfilter/unsharp.h +0 −62
  2. libavfilter/vf_unsharp.c +33 −1
libavfilter/unsharp.h+0−62
@@ -1,62 +0,0 @@
1−/*
2− * Copyright (C) 2013 Wei Gao <weigao@multicorewareinc.com>
3− * Copyright (C) 2013 Lenny Wang
4− *
5− * This file is part of FFmpeg.
6− *
7− * FFmpeg is free software; you can redistribute it and/or
8− * modify it under the terms of the GNU Lesser General Public
9− * License as published by the Free Software Foundation; either
10− * version 2.1 of the License, or (at your option) any later version.
11− *
12− * FFmpeg is distributed in the hope that it will be useful,
13− * but WITHOUT ANY WARRANTY; without even the implied warranty of
14− * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15− * Lesser General Public License for more details.
16− *
17− * You should have received a copy of the GNU Lesser General Public
18− * License along with FFmpeg; if not, write to the Free Software
19− * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20− */
21−
22−#ifndef AVFILTER_UNSHARP_H
23−#define AVFILTER_UNSHARP_H
24−
25−#include "config.h"
26−#include "avfilter.h"
27−
28−#define MIN_MATRIX_SIZE 3
29−#define MAX_MATRIX_SIZE 63
30−
31−
32−typedef struct UnsharpFilterParam {
33− int msize_x; ///< matrix width
34− int msize_y; ///< matrix height
35− int amount; ///< effect amount
36− int steps_x; ///< horizontal step count
37− int steps_y; ///< vertical step count
38− int scalebits; ///< bits to shift pixel
39− int32_t halfscale; ///< amount to add to pixel
40− uint32_t *sr; ///< finite state machine storage within a row
41− uint32_t **sc; ///< finite state machine storage across rows
42−} UnsharpFilterParam;
43−
44−typedef struct UnsharpContext {
45− const AVClass *class;
46− int lmsize_x, lmsize_y, cmsize_x, cmsize_y;
47− int amsize_x, amsize_y;
48− float lamount, camount;
49− float aamount;
50− UnsharpFilterParam luma; ///< luma parameters (width, height, amount)
51− UnsharpFilterParam chroma; ///< chroma parameters (width, height, amount)
52− UnsharpFilterParam alpha; ///< alpha parameters (width, height, amount)
53− int hsub, vsub;
54− int nb_planes;
55− int bitdepth;
56− int bps;
57− int nb_threads;
58− int (* apply_unsharp)(AVFilterContext *ctx, AVFrame *in, AVFrame *out);
59− int (* unsharp_slice)(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs);
60−} UnsharpContext;
61−
62−#endif /* AVFILTER_UNSHARP_H */
libavfilter/vf_unsharp.c+33−1
@@ -44,7 +44,39 @@ · 43 unmodified lines
4444 #include "libavutil/mem.h"
4545 #include "libavutil/opt.h"
4646 #include "libavutil/pixdesc.h"
47−#include "unsharp.h"
47+
48+#define MIN_MATRIX_SIZE 3
49+#define MAX_MATRIX_SIZE 63
50+
51+typedef struct UnsharpFilterParam {
52+ int msize_x; ///< matrix width
53+ int msize_y; ///< matrix height
54+ int amount; ///< effect amount
55+ int steps_x; ///< horizontal step count
56+ int steps_y; ///< vertical step count
57+ int scalebits; ///< bits to shift pixel
58+ int32_t halfscale; ///< amount to add to pixel
59+ uint32_t *sr; ///< finite state machine storage within a row
60+ uint32_t **sc; ///< finite state machine storage across rows
61+} UnsharpFilterParam;
62+
63+typedef struct UnsharpContext {
64+ const AVClass *class;
65+ int lmsize_x, lmsize_y, cmsize_x, cmsize_y;
66+ int amsize_x, amsize_y;
67+ float lamount, camount;
68+ float aamount;
69+ UnsharpFilterParam luma; ///< luma parameters (width, height, amount)
70+ UnsharpFilterParam chroma; ///< chroma parameters (width, height, amount)
71+ UnsharpFilterParam alpha; ///< alpha parameters (width, height, amount)
72+ int hsub, vsub;
73+ int nb_planes;
74+ int bitdepth;
75+ int bps;
76+ int nb_threads;
77+ int (* apply_unsharp)(AVFilterContext *ctx, AVFrame *in, AVFrame *out);
78+ int (* unsharp_slice)(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs);
79+} UnsharpContext;
4880
4981 typedef struct TheadData {
5082 UnsharpFilterParam *fp;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t