|
FFmpeg
|
#include "libavutil/opt.h"#include "libavutil/avassert.h"#include "libavutil/pixdesc.h"#include "internal.h"Go to the source code of this file.
Data Structures | |
| struct | XBRContext |
| struct | ThreadData |
| Used for passing data between threads. More... | |
Macros | |
| #define | LB_MASK 0x00FEFEFE |
| #define | RED_BLUE_MASK 0x00FF00FF |
| #define | GREEN_MASK 0x0000FF00 |
| #define | OFFSET(x) offsetof(XBRContext, x) |
| #define | FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM |
| #define | YMASK 0xff0000 |
| #define | UMASK 0x00ff00 |
| #define | VMASK 0x0000ff |
| #define | ABSDIFF(a, b) (abs((int)(a)-(int)(b))) |
| #define | ALPHA_BLEND_128_W(a, b) ((((a) & LB_MASK) >> 1) + (((b) & LB_MASK) >> 1)) |
| #define | ALPHA_BLEND_BASE(a, b, m, s) |
| #define | ALPHA_BLEND_32_W(a, b) ALPHA_BLEND_BASE(a, b, 1, 3) |
| #define | ALPHA_BLEND_64_W(a, b) ALPHA_BLEND_BASE(a, b, 1, 2) |
| #define | ALPHA_BLEND_192_W(a, b) ALPHA_BLEND_BASE(a, b, 3, 2) |
| #define | ALPHA_BLEND_224_W(a, b) ALPHA_BLEND_BASE(a, b, 7, 3) |
| #define | df(A, B) pixel_diff(A, B, r2y) |
| #define | eq(A, B) (df(A, B) < 155) |
| #define | FILT2(PE, PI, PH, PF, PG, PC, PD, PB, PA, G5, C4, G0, D0, C1, B1, F4, I4, H5, I5, A0, A1, N0, N1, N2, N3) |
| #define | FILT3(PE, PI, PH, PF, PG, PC, PD, PB, PA, G5, C4, G0, D0, C1, B1, F4, I4, H5, I5, A0, A1, N0, N1, N2, N3, N4, N5, N6, N7, N8) |
| #define | FILT4(PE, PI, PH, PF, PG, PC, PD, PB, PA, G5, C4, G0, D0, C1, B1, F4, I4, H5, I5, A0, A1, N15, N14, N11, N3, N7, N10, N13, N12, N9, N6, N2, N1, N5, N8, N4, N0) |
| #define | XBR_FUNC(size) |
Typedefs | |
| typedef int(* | xbrfunc_t) (AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs) |
Functions | |
| AVFILTER_DEFINE_CLASS (xbr) | |
| static uint32_t | pixel_diff (uint32_t x, uint32_t y, const uint32_t *r2y) |
| static av_always_inline void | xbr_filter (const ThreadData *td, int jobnr, int nb_jobs, int n) |
| static int | config_output (AVFilterLink *outlink) |
| static int | query_formats (AVFilterContext *ctx) |
| static int | filter_frame (AVFilterLink *inlink, AVFrame *in) |
| static av_cold int | init (AVFilterContext *ctx) |
Variables | |
| static const AVOption | xbr_options [] |
| static const AVFilterPad | xbr_inputs [] |
| static const AVFilterPad | xbr_outputs [] |
| AVFilter | ff_vf_xbr |
XBR Filter is used for depixelization of image. This is based on Hyllian's xBR shader.
Definition in file vf_xbr.c.
| #define OFFSET | ( | x | ) | offsetof(XBRContext, x) |
| #define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM |
| #define YMASK 0xff0000 |
| #define UMASK 0x00ff00 |
| #define VMASK 0x0000ff |
| #define ALPHA_BLEND_32_W | ( | a, | |
| b | |||
| ) | ALPHA_BLEND_BASE(a, b, 1, 3) |
| #define ALPHA_BLEND_64_W | ( | a, | |
| b | |||
| ) | ALPHA_BLEND_BASE(a, b, 1, 2) |
| #define ALPHA_BLEND_192_W | ( | a, | |
| b | |||
| ) | ALPHA_BLEND_BASE(a, b, 3, 2) |
| #define ALPHA_BLEND_224_W | ( | a, | |
| b | |||
| ) | ALPHA_BLEND_BASE(a, b, 7, 3) |
| #define XBR_FUNC | ( | size | ) |
| AVFILTER_DEFINE_CLASS | ( | xbr | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
| AVFilter ff_vf_xbr |
1.8.17