FFmpeg
|
#include "libavutil/avassert.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/opt.h"
#include "libavutil/parseutils.h"
#include "libavutil/pixdesc.h"
#include "avfilter.h"
#include "formats.h"
#include "internal.h"
#include "video.h"
Go to the source code of this file.
Data Structures | |
struct | CiescopeContext |
struct | ColorSystem |
Macros | |
#define | OFFSET(x) offsetof(CiescopeContext, x) |
#define | FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM |
#define | C 0.310063, 0.316158 |
#define | E 1.0/3.0, 1.0/3.0 |
#define | D50 0.34570, 0.3585 |
#define | D65 0.312713, 0.329016 |
#define | GAMMA_REC709 0. /* Rec. 709 */ |
#define | Sz(x) (((x) * (int)FFMIN(w, h)) / 512) |
Enumerations | |
enum | CieSystem { XYY, UCS, LUV, NB_CIE } |
enum | ColorsSystems { NTSCsystem, EBUsystem, SMPTEsystem, SMPTE240Msystem, APPLEsystem, wRGBsystem, CIE1931system, Rec709system, Rec2020system, NB_CS } |
Functions | |
AVFILTER_DEFINE_CLASS (ciescope) | |
static int | query_formats (AVFilterContext *ctx) |
static int | config_output (AVFilterLink *outlink) |
static void | uv_to_xy (double const u, double const v, double *const xc, double *const yc) |
static void | upvp_to_xy (double const up, double const vp, double *const xc, double *const yc) |
static void | xy_to_upvp (double xc, double yc, double *const up, double *const vp) |
static void | xy_to_uv (double xc, double yc, double *const u, double *const v) |
static void | xyz_to_rgb (const double m[3][3], double xc, double yc, double zc, double *const r, double *const g, double *const b) |
static void | invert_matrix3x3 (double in[3][3], double out[3][3]) |
static void | get_rgb2xyz_matrix (struct ColorSystem system, double m[3][3]) |
static void | rgb_to_xy (double rc, double gc, double bc, double *const x, double *const y, double *const z, const double m[3][3]) |
static int | constrain_rgb (double *const r, double *const g, double *const b) |
static void | gamma_correct (const struct ColorSystem *const cs, double *const c) |
static void | gamma_correct_rgb (const struct ColorSystem *const cs, double *const r, double *const g, double *const b) |
static void | monochrome_color_location (double waveLength, int w, int h, int cie, int *xP, int *yP) |
static void | find_tongue (uint16_t *const pixels, int const w, int const linesize, int const row, int *const presentP, int *const leftEdgeP, int *const rightEdgeP) |
static void | draw_line (uint16_t *const pixels, int linesize, int x0, int y0, int x1, int y1, int w, int h, const uint16_t *const rgbcolor) |
static void | draw_rline (uint16_t *const pixels, int linesize, int x0, int y0, int x1, int y1, int w, int h) |
static void | tongue_outline (uint16_t *const pixels, int const linesize, int const w, int const h, uint16_t const maxval, int const cie) |
static void | fill_in_tongue (uint16_t *const pixels, int const linesize, int const w, int const h, uint16_t const maxval, const struct ColorSystem *const cs, double const m[3][3], int const cie, int const correct_gamma, float const contrast) |
static void | plot_white_point (uint16_t *pixels, int const linesize, int const w, int const h, int const maxval, int const color_system, int const cie) |
static int | draw_background (AVFilterContext *ctx) |
static void | filter_rgb48 (AVFilterContext *ctx, AVFrame *in, double *cx, double *cy, int x, int y) |
static void | filter_rgba64 (AVFilterContext *ctx, AVFrame *in, double *cx, double *cy, int x, int y) |
static void | filter_rgb24 (AVFilterContext *ctx, AVFrame *in, double *cx, double *cy, int x, int y) |
static void | filter_rgba (AVFilterContext *ctx, AVFrame *in, double *cx, double *cy, int x, int y) |
static void | filter_xyz (AVFilterContext *ctx, AVFrame *in, double *cx, double *cy, int x, int y) |
static void | plot_gamuts (uint16_t *pixels, int linesize, int w, int h, int cie, int gamuts) |
static int | filter_frame (AVFilterLink *inlink, AVFrame *in) |
static void av_cold | uninit (AVFilterContext *ctx) |
static int | config_input (AVFilterLink *inlink) |
Variables | |
static const AVOption | ciescope_options [] |
static enum AVPixelFormat | in_pix_fmts [] |
static enum AVPixelFormat | out_pix_fmts [] |
static const float | spectral_chromaticity [][3] |
static const struct ColorSystem | color_systems [] |
static const AVFilterPad | inputs [] |
static const AVFilterPad | outputs [] |
AVFilter | ff_vf_ciescope |
#define OFFSET | ( | x | ) | offsetof(CiescopeContext, x) |
Definition at line 72 of file vf_ciescope.c.
#define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM |
Definition at line 73 of file vf_ciescope.c.
#define C 0.310063, 0.316158 |
Definition at line 647 of file vf_ciescope.c.
#define E 1.0/3.0, 1.0/3.0 |
Definition at line 648 of file vf_ciescope.c.
#define D50 0.34570, 0.3585 |
Definition at line 649 of file vf_ciescope.c.
#define D65 0.312713, 0.329016 |
Definition at line 650 of file vf_ciescope.c.
#define GAMMA_REC709 0. /* Rec. 709 */ |
Definition at line 658 of file vf_ciescope.c.
enum CieSystem |
Enumerator | |
---|---|
XYY | |
UCS | |
LUV | |
NB_CIE |
Definition at line 32 of file vf_ciescope.c.
enum ColorsSystems |
Enumerator | |
---|---|
NTSCsystem | |
EBUsystem | |
SMPTEsystem | |
SMPTE240Msystem | |
APPLEsystem | |
wRGBsystem | |
CIE1931system | |
Rec709system | |
Rec2020system | |
NB_CS |
Definition at line 39 of file vf_ciescope.c.
AVFILTER_DEFINE_CLASS | ( | ciescope | ) |
|
static |
Definition at line 135 of file vf_ciescope.c.
|
static |
Definition at line 148 of file vf_ciescope.c.
|
static |
Definition at line 708 of file vf_ciescope.c.
Referenced by fill_in_tongue().
|
static |
Definition at line 721 of file vf_ciescope.c.
Referenced by fill_in_tongue().
|
static |
Definition at line 734 of file vf_ciescope.c.
Referenced by filter_frame(), monochrome_color_location(), plot_gamuts(), and plot_white_point().
|
static |
Definition at line 747 of file vf_ciescope.c.
Referenced by filter_frame(), monochrome_color_location(), plot_gamuts(), and plot_white_point().
|
static |
Definition at line 760 of file vf_ciescope.c.
Referenced by fill_in_tongue().
|
static |
Definition at line 769 of file vf_ciescope.c.
Referenced by config_input(), and get_rgb2xyz_matrix().
|
static |
Definition at line 796 of file vf_ciescope.c.
Referenced by config_input().
|
static |
Definition at line 830 of file vf_ciescope.c.
Referenced by filter_rgb24(), filter_rgb48(), filter_rgba(), and filter_rgba64().
|
static |
Definition at line 852 of file vf_ciescope.c.
Referenced by fill_in_tongue().
|
static |
Definition at line 881 of file vf_ciescope.c.
Referenced by gamma_correct_rgb().
|
static |
Definition at line 917 of file vf_ciescope.c.
Referenced by fill_in_tongue().
|
static |
Definition at line 934 of file vf_ciescope.c.
Referenced by tongue_outline().
|
static |
Definition at line 965 of file vf_ciescope.c.
Referenced by fill_in_tongue().
|
static |
Definition at line 994 of file vf_ciescope.c.
Referenced by tongue_outline().
|
static |
Definition at line 1026 of file vf_ciescope.c.
Referenced by plot_gamuts(), and plot_white_point().
|
static |
Definition at line 1058 of file vf_ciescope.c.
Referenced by draw_background().
|
static |
Definition at line 1089 of file vf_ciescope.c.
Referenced by draw_background().
|
static |
Definition at line 1173 of file vf_ciescope.c.
Referenced by filter_frame().
|
static |
Definition at line 1219 of file vf_ciescope.c.
Referenced by filter_frame().
|
static |
Definition at line 1240 of file vf_ciescope.c.
Referenced by config_input().
|
static |
Definition at line 1252 of file vf_ciescope.c.
Referenced by config_input().
|
static |
Definition at line 1264 of file vf_ciescope.c.
Referenced by config_input().
|
static |
Definition at line 1276 of file vf_ciescope.c.
Referenced by config_input().
|
static |
Definition at line 1288 of file vf_ciescope.c.
Referenced by config_input().
|
static |
Definition at line 1303 of file vf_ciescope.c.
Referenced by filter_frame().
|
static |
Definition at line 1353 of file vf_ciescope.c.
|
static |
Definition at line 1445 of file vf_ciescope.c.
|
static |
Definition at line 1452 of file vf_ciescope.c.
|
static |
Definition at line 75 of file vf_ciescope.c.
|
static |
|
static |
Definition at line 130 of file vf_ciescope.c.
Referenced by overlay_qsv_query_formats(), and query_formats().
|
static |
Definition at line 170 of file vf_ciescope.c.
Referenced by monochrome_color_location().
|
static |
Definition at line 660 of file vf_ciescope.c.
Referenced by config_input(), draw_background(), plot_gamuts(), and plot_white_point().
|
static |
Definition at line 1485 of file vf_ciescope.c.
|
static |
Definition at line 1495 of file vf_ciescope.c.
AVFilter ff_vf_ciescope |
Definition at line 1504 of file vf_ciescope.c.