FFmpeg
|
misc drawing utilities More...
Go to the source code of this file.
Data Structures | |
struct | FFDrawContext |
struct | FFDrawColor |
Macros | |
#define | MAX_PLANES 4 |
Typedefs | |
typedef struct FFDrawContext | FFDrawContext |
typedef struct FFDrawColor | FFDrawColor |
Functions | |
int | ff_fill_rgba_map (uint8_t *rgba_map, enum AVPixelFormat pix_fmt) |
int | ff_fill_line_with_color (uint8_t *line[4], int pixel_step[4], int w, uint8_t dst_color[4], enum AVPixelFormat pix_fmt, uint8_t rgba_color[4], int *is_packed_rgba, uint8_t rgba_map[4]) |
void | ff_draw_rectangle (uint8_t *dst[4], int dst_linesize[4], uint8_t *src[4], int pixelstep[4], int hsub, int vsub, int x, int y, int w, int h) |
void | ff_copy_rectangle (uint8_t *dst[4], int dst_linesize[4], uint8_t *src[4], int src_linesize[4], int pixelstep[4], int hsub, int vsub, int x, int y, int y2, int w, int h) |
int | ff_draw_init (FFDrawContext *draw, enum AVPixelFormat format, unsigned flags) |
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, 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... | |
AVFilterFormats * | ff_draw_supported_pixel_formats (unsigned flags) |
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
#define MAX_PLANES 4 |
Definition at line 46 of file drawutils.h.
Typedef Documentation
typedef struct FFDrawColor FFDrawColor |
typedef struct FFDrawContext FFDrawContext |
Function Documentation
void ff_blend_mask | ( | FFDrawContext * | draw, |
FFDrawColor * | color, | ||
uint8_t * | dst[], | ||
int | dst_linesize[], | ||
int | dst_w, | ||
int | dst_h, | ||
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 429 of file drawutils.c.
Referenced by draw_glyphs(), and overlay_ass_image().
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.
Definition at line 331 of file drawutils.c.
Referenced by draw_text().
void ff_copy_rectangle | ( | uint8_t * | dst[4], |
int | dst_linesize[4], | ||
uint8_t * | src[4], | ||
int | src_linesize[4], | ||
int | pixelstep[4], | ||
int | hsub, | ||
int | vsub, | ||
int | x, | ||
int | y, | ||
int | y2, | ||
int | w, | ||
int | h | ||
) |
Definition at line 115 of file drawutils.c.
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.
The coordinates must be as even as the subsampling requires.
Definition at line 214 of file drawutils.c.
Referenced by filter_frame().
void ff_draw_color | ( | FFDrawContext * | draw, |
FFDrawColor * | color, | ||
const uint8_t | rgba[4] | ||
) |
Prepare a color.
Definition at line 179 of file drawutils.c.
Referenced by config_input(), config_props(), ff_draw_supported_pixel_formats(), overlay_ass_image(), and request_frame().
int ff_draw_init | ( | FFDrawContext * | draw, |
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. No flags currently defined.
- Returns
- 0 for success, < 0 for error
Definition at line 135 of file drawutils.c.
Referenced by config_input(), config_props(), ff_draw_supported_pixel_formats(), and request_frame().
void ff_draw_rectangle | ( | uint8_t * | dst[4], |
int | dst_linesize[4], | ||
uint8_t * | src[4], | ||
int | pixelstep[4], | ||
int | hsub, | ||
int | vsub, | ||
int | x, | ||
int | y, | ||
int | w, | ||
int | h | ||
) |
Definition at line 95 of file drawutils.c.
int ff_draw_round_to_sub | ( | FFDrawContext * | draw, |
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 489 of file drawutils.c.
Referenced by config_input(), and request_frame().
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 501 of file drawutils.c.
Referenced by query_formats(), and request_frame().
int ff_fill_line_with_color | ( | uint8_t * | line[4], |
int | pixel_step[4], | ||
int | w, | ||
uint8_t | dst_color[4], | ||
enum AVPixelFormat | pix_fmt, | ||
uint8_t | rgba_color[4], | ||
int * | is_packed_rgba, | ||
uint8_t | rgba_map[4] | ||
) |
Definition at line 52 of file drawutils.c.
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.
The coordinates must be as even as the subsampling requires. The color needs to be inited with ff_draw_color.
Definition at line 236 of file drawutils.c.
Referenced by draw_blank_frame(), filter_frame(), and request_frame().
int ff_fill_rgba_map | ( | uint8_t * | rgba_map, |
enum AVPixelFormat | pix_fmt | ||
) |
Definition at line 33 of file drawutils.c.
Referenced by config_input(), config_input_main(), config_input_overlay(), config_output(), config_props(), ff_draw_color(), ff_fill_line_with_color(), and request_frame().
Generated on Fri Dec 20 2024 06:56:12 for FFmpeg by 1.8.11