|
FFmpeg
|
ColorMatrix 2.0 is based on the original ColorMatrix filter by Wilbert Dijkhof. More...
#include <float.h>#include "avfilter.h"#include "formats.h"#include "internal.h"#include "video.h"#include "libavutil/opt.h"#include "libavutil/pixdesc.h"#include "libavutil/avstring.h"Go to the source code of this file.
Data Structures | |
| struct | ColorMatrixContext |
Macros | |
| #define | NS(n) ((n) < 0 ? (int)((n)*65536.0-0.5+DBL_EPSILON) : (int)((n)*65536.0+0.5)) |
| #define | CB(n) av_clip_uint8(n) |
| #define | OFFSET(x) offsetof(ColorMatrixContext, x) |
| #define | FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
| #define | ma m[0][0] |
| #define | mb m[0][1] |
| #define | mc m[0][2] |
| #define | md m[1][0] |
| #define | me m[1][1] |
| #define | mf m[1][2] |
| #define | mg m[2][0] |
| #define | mh m[2][1] |
| #define | mi m[2][2] |
| #define | ima im[0][0] |
| #define | imb im[0][1] |
| #define | imc im[0][2] |
| #define | imd im[1][0] |
| #define | ime im[1][1] |
| #define | imf im[1][2] |
| #define | img im[2][0] |
| #define | imh im[2][1] |
| #define | imi im[2][2] |
Enumerations | |
| enum | ColorMode { CHANNEL, INTENSITY, NB_CLMODES, COLOR_MODE_NONE = -1, COLOR_MODE_BT709, COLOR_MODE_FCC, COLOR_MODE_BT601, COLOR_MODE_SMPTE240M, COLOR_MODE_COUNT } |
Functions | |
| AVFILTER_DEFINE_CLASS (colormatrix) | |
| static void | inverse3x3 (double im[3][3], const double m[3][3]) |
| static void | solve_coefficients (double cm[3][3], double rgb[3][3], const double yuv[3][3]) |
| static void | calc_coefficients (AVFilterContext *ctx) |
| static av_cold int | init (AVFilterContext *ctx) |
| static void | process_frame_uyvy422 (ColorMatrixContext *color, AVFrame *dst, AVFrame *src) |
| static void | process_frame_yuv422p (ColorMatrixContext *color, AVFrame *dst, AVFrame *src) |
| static void | process_frame_yuv420p (ColorMatrixContext *color, AVFrame *dst, AVFrame *src) |
| static int | config_input (AVFilterLink *inlink) |
| static int | query_formats (AVFilterContext *ctx) |
| static int | filter_frame (AVFilterLink *link, AVFrame *in) |
Variables | |
| static const double | yuv_coeff [4][3][3] |
| static const AVOption | colormatrix_options [] |
| static const char *const | color_modes [] = {"bt709", "fcc", "bt601", "smpte240m"} |
| static const AVFilterPad | colormatrix_inputs [] |
| static const AVFilterPad | colormatrix_outputs [] |
| AVFilter | ff_vf_colormatrix |
ColorMatrix 2.0 is based on the original ColorMatrix filter by Wilbert Dijkhof.
It adds the ability to convert between any of: Rec.709, FCC, Rec.601, and SMPTE 240M. It also makes pre and post clipping optional, adds an option to use scaled or non-scaled coefficients, and more...
Definition in file vf_colormatrix.c.
Definition at line 40 of file vf_colormatrix.c.
Referenced by calc_coefficients().
Definition at line 41 of file vf_colormatrix.c.
Referenced by process_frame_uyvy422(), process_frame_yuv420p(), and process_frame_yuv422p().
| #define OFFSET | ( | x | ) | offsetof(ColorMatrixContext, x) |
Definition at line 76 of file vf_colormatrix.c.
| #define FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
Definition at line 77 of file vf_colormatrix.c.
| #define ma m[0][0] |
Definition at line 91 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define mb m[0][1] |
Definition at line 92 of file vf_colormatrix.c.
Referenced by aic_decode_coeffs(), aic_decode_slice(), calculate_mode_score(), config_props(), decode_mb_info(), decode_mb_row_no_filter(), dnxhd_calc_bits_thread(), dnxhd_encode_fast(), dnxhd_encode_rdo(), dnxhd_encode_thread(), dnxhd_mb_var_thread(), dnxhd_setup_threads_slices(), draw_mandelbrot(), dv_decode_video_segment(), dv_encode_video_segment(), encode_frame(), encode_mode(), escape124_decode_frame(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), fill_from_cache(), filter_mb_row(), find_quant_thread(), h264_find_frame_end(), init(), inverse3x3(), ivi_decode_blocks(), ivi_process_empty_tile(), main(), mpc7_decode_frame(), parse_value(), quantize(), request_frame(), tm2_read_deltas(), uninit(), and vp78_decode_mv_mb_modes().
| #define mc m[0][2] |
Definition at line 93 of file vf_colormatrix.c.
Referenced by create_vorbis_context(), inverse3x3(), ivi_mc(), mc_chroma_dir(), mc_luma_dir(), put_main_header(), and qt_rtp_parse_packet().
| #define md m[1][0] |
Definition at line 94 of file vf_colormatrix.c.
Referenced by ac3_sum_square_butterfly_float_c(), ac3_sum_square_butterfly_int32_c(), config_input(), filter_frame(), inverse3x3(), and uninit().
| #define me m[1][1] |
Definition at line 95 of file vf_colormatrix.c.
Referenced by backup_duplicate_context(), inverse3x3(), merge_context_after_me(), and read_ts().
| #define mf m[1][2] |
Definition at line 96 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define mg m[2][0] |
Definition at line 97 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define mh m[2][1] |
Definition at line 98 of file vf_colormatrix.c.
Referenced by av_file_map(), dwt_decode53(), dwt_decode97_float(), dwt_decode97_int(), dwt_encode53(), dwt_encode97_float(), dwt_encode97_int(), inverse3x3(), mlp_parse(), and read_major_sync().
| #define mi m[2][2] |
Definition at line 99 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define ima im[0][0] |
Definition at line 101 of file vf_colormatrix.c.
Referenced by adpcm_compress_trellis(), and inverse3x3().
| #define imb im[0][1] |
Definition at line 102 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define imc im[0][2] |
Definition at line 103 of file vf_colormatrix.c.
Referenced by avcodec_register_all(), and inverse3x3().
| #define imd im[1][0] |
Definition at line 104 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define ime im[1][1] |
Definition at line 105 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define imf im[1][2] |
Definition at line 106 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define img im[2][0] |
Definition at line 107 of file vf_colormatrix.c.
Referenced by apply_color_indexing_transform(), apply_color_transform(), apply_predictor_transform(), apply_subtract_green_transform(), decode_entropy_coded_image(), decode_entropy_image(), inverse3x3(), mj2_create_image(), parse_transform_color_indexing(), setup_shm(), vp8_decode(), write_header(), write_packet(), write_picture(), and xcbgrab_frame().
| #define imh im[2][1] |
Definition at line 108 of file vf_colormatrix.c.
Referenced by inverse3x3().
| #define imi im[2][2] |
Definition at line 109 of file vf_colormatrix.c.
Referenced by inverse3x3().
| enum ColorMode |
| CHANNEL | |
| INTENSITY | |
| NB_CLMODES | |
| COLOR_MODE_NONE | |
| COLOR_MODE_BT709 | |
| COLOR_MODE_FCC | |
| COLOR_MODE_BT601 | |
| COLOR_MODE_SMPTE240M | |
| COLOR_MODE_COUNT |
Definition at line 58 of file vf_colormatrix.c.
| AVFILTER_DEFINE_CLASS | ( | colormatrix | ) |
|
static |
Definition at line 111 of file vf_colormatrix.c.
Referenced by calc_coefficients().
|
static |
Definition at line 126 of file vf_colormatrix.c.
Referenced by calc_coefficients().
|
static |
Definition at line 134 of file vf_colormatrix.c.
Referenced by filter_frame().
|
static |
Definition at line 163 of file vf_colormatrix.c.
|
static |
Definition at line 180 of file vf_colormatrix.c.
Referenced by filter_frame().
|
static |
Definition at line 212 of file vf_colormatrix.c.
Referenced by filter_frame().
|
static |
Definition at line 254 of file vf_colormatrix.c.
Referenced by filter_frame().
|
static |
Definition at line 302 of file vf_colormatrix.c.
|
static |
Definition at line 317 of file vf_colormatrix.c.
|
static |
Definition at line 331 of file vf_colormatrix.c.
|
static |
Definition at line 43 of file vf_colormatrix.c.
Referenced by calc_coefficients().
|
static |
Definition at line 79 of file vf_colormatrix.c.
|
static |
Definition at line 161 of file vf_colormatrix.c.
Referenced by config_input().
|
static |
Definition at line 383 of file vf_colormatrix.c.
|
static |
Definition at line 393 of file vf_colormatrix.c.
| AVFilter ff_vf_colormatrix |
Definition at line 401 of file vf_colormatrix.c.
1.8.2