FFmpeg
Data Structures | Macros | Functions
drawutils.h File Reference
#include <stdint.h>
#include "avfilter.h"
#include "libavutil/pixfmt.h"

Go to the source code of this file.

Data Structures

struct   FFDrawContext
 
struct   FFDrawColor
 

Macros

#define  MAX_PLANES   4
 
#define  FF_DRAW_PROCESS_ALPHA   1
  Process alpha pixel component. More...
 

Functions

int  ff_fill_rgba_map (uint8_t *rgba_map, enum AVPixelFormat pix_fmt)
 
  Init a draw context. More...
 
void  ff_draw_color (FFDrawContext *draw, FFDrawColor *color, const uint8_t rgba[4])
  Prepare a color. More...
 
void  ff_copy_rectangle2 (FFDrawContext *draw, uint8_t *dst[], int dst_linesize[], uint8_t *src[], int src_linesize[], int dst_x, int dst_y, int src_x, int src_y, int w, int h)
  Copy a rectangle from an image to another. More...
 
void  ff_fill_rectangle (FFDrawContext *draw, FFDrawColor *color, uint8_t *dst[], int dst_linesize[], int dst_x, int dst_y, int w, int h)
  Fill a rectangle with an uniform color. More...
 
void  ff_blend_rectangle (FFDrawContext *draw, FFDrawColor *color, uint8_t *dst[], int dst_linesize[], int dst_w, int dst_h, int x0, int y0, int w, int h)
  Blend a rectangle with an uniform color. More...
 
void  ff_blend_mask (FFDrawContext *draw, FFDrawColor *color, uint8_t *dst[], int dst_linesize[], int dst_w, int dst_h, const uint8_t *mask, int mask_linesize, int mask_w, int mask_h, int l2depth, unsigned endianness, int x0, int y0)
  Blend an alpha mask with an uniform color. More...
 
int  ff_draw_round_to_sub (FFDrawContext *draw, int sub_dir, int round_dir, int value)
  Round a dimension according to subsampling. More...
 
  Return the list of pixel formats supported by the draw functions. More...
 

Detailed Description

misc drawing utilities

Definition in file drawutils.h.

Macro Definition Documentation

MAX_PLANES

#define MAX_PLANES   4

Definition at line 33 of file drawutils.h.

FF_DRAW_PROCESS_ALPHA

#define FF_DRAW_PROCESS_ALPHA   1

Process alpha pixel component.

Definition at line 60 of file drawutils.h.

Function Documentation

ff_fill_rgba_map()

int ff_fill_rgba_map ( uint8_t *  rgba_map,
enum AVPixelFormat  pix_fmt 
)

Definition at line 34 of file drawutils.c.

Referenced by config_input(), config_input_main(), config_input_overlay(), config_input_ref(), config_output(), config_props(), oscilloscope_config_input(), pad_opencl_init(), and pixscope_config_input().

ff_draw_init()

int ff_draw_init ( FFDrawContextdraw,
enum AVPixelFormat  format,
unsigned  flags 
)

Init a draw context.

Only a limited number of pixel formats are supported, if format is not supported the function will return an error. flags is combination of FF_DRAW_* flags.

Returns
0 for success, < 0 for error

Definition at line 79 of file drawutils.c.

Referenced by config_input(), config_out_props(), config_output(), config_props(), ff_draw_supported_pixel_formats(), main(), oscilloscope_config_input(), and pixscope_config_input().

ff_draw_color()

void ff_draw_color ( FFDrawContextdraw,
FFDrawColorcolor,
const uint8_t  rgba[4] 
)

Prepare a color.

Definition at line 141 of file drawutils.c.

Referenced by config_input(), config_out_props(), config_output(), config_props(), draw_text(), main(), oscilloscope_config_input(), overlay_ass_image(), pixscope_config_input(), process_command(), update_color_with_alpha(), and update_oscilloscope().

ff_copy_rectangle2()

void ff_copy_rectangle2 ( FFDrawContextdraw,
uint8_t *  dst[],
int  dst_linesize[],
uint8_t *  src[],
int  src_linesize[],
int  dst_x,
int  dst_y,
int  src_x,
int  src_y,
int  w,
int  h 
)

Copy a rectangle from an image to another.

The coordinates must be as even as the subsampling requires.

Definition at line 192 of file drawutils.c.

Referenced by filter_frame().

ff_fill_rectangle()

void ff_fill_rectangle ( FFDrawContextdraw,
FFDrawColorcolor,
uint8_t *  dst[],
int  dst_linesize[],
int  dst_x,
int  dst_y,
int  w,
int  h 
)

Fill a rectangle with an uniform color.

The coordinates must be as even as the subsampling requires. The color needs to be inited with ff_draw_color.

Definition at line 214 of file drawutils.c.

Referenced by activate(), config_out_props(), draw_blank_frame(), filter_color2(), filter_frame(), oscilloscope_filter_frame(), pixscope_filter_frame(), and process_frame().

ff_blend_rectangle()

void ff_blend_rectangle ( FFDrawContextdraw,
FFDrawColorcolor,
uint8_t *  dst[],
int  dst_linesize[],
int  dst_w,
int  dst_h,
int  x0,
int  y0,
int  w,
int  h 
)

Blend a rectangle with an uniform color.

Definition at line 336 of file drawutils.c.

Referenced by draw_text(), oscilloscope_filter_frame(), and pixscope_filter_frame().

ff_blend_mask()

void ff_blend_mask ( FFDrawContextdraw,
FFDrawColorcolor,
uint8_t *  dst[],
int  dst_linesize[],
int  dst_w,
int  dst_h,
const uint8_t *  mask,
int  mask_linesize,
int  mask_w,
int  mask_h,
int  l2depth,
unsigned  endianness,
int  x0,
int  y0 
)

Blend an alpha mask with an uniform color.

Parameters
draw draw context
color color for the overlay;
dst destination image
dst_linesize line stride of the destination
dst_w width of the destination image
dst_h height of the destination image
mask mask
mask_linesize line stride of the mask
mask_w width of the mask
mask_h height of the mask
l2depth log2 of depth of the mask (0 for 1bpp, 3 for 8bpp)
endianness bit order of the mask (0: MSB to the left)
x0 horizontal position of the overlay
y0 vertical position of the overlay

Definition at line 517 of file drawutils.c.

Referenced by draw_glyphs(), draw_text(), and overlay_ass_image().

ff_draw_round_to_sub()

int ff_draw_round_to_sub ( FFDrawContextdraw,
int  sub_dir,
int  round_dir,
int  value 
)

Round a dimension according to subsampling.

Parameters
draw draw context
sub_dir 0 for horizontal, 1 for vertical
round_dir 0 nearest, -1 round down, +1 round up
value value to round
Returns
the rounded value

Definition at line 618 of file drawutils.c.

Referenced by config_input().

ff_draw_supported_pixel_formats()

AVFilterFormats* ff_draw_supported_pixel_formats ( unsigned  flags )

Return the list of pixel formats supported by the draw functions.

The flags are the same as ff_draw_init, i.e., none currently.

Definition at line 630 of file drawutils.c.

Referenced by query_formats().


Generated on Wed Aug 24 2022 21:38:45 for FFmpeg by   doxygen 1.8.17

AltStyle によって変換されたページ (->オリジナル) /