gavl
|
Modules | |
Video conversion flags | |
Typedefs | |
typedef struct gavl_video_options_s | gavl_video_options_t |
Enumerations | |
enum | gavl_alpha_mode_t { GAVL_ALPHA_IGNORE = 0 , GAVL_ALPHA_BLEND_COLOR } |
enum | gavl_deinterlace_mode_t { GAVL_DEINTERLACE_NONE = 0 , GAVL_DEINTERLACE_COPY = 1 , GAVL_DEINTERLACE_SCALE = 2 , GAVL_DEINTERLACE_BLEND = 3 } |
enum | gavl_deinterlace_drop_mode_t { GAVL_DEINTERLACE_DROP_TOP , GAVL_DEINTERLACE_DROP_BOTTOM } |
Specifies which field to drop when deinterlacing. More... | |
enum | gavl_scale_mode_t { GAVL_SCALE_AUTO , GAVL_SCALE_NEAREST , GAVL_SCALE_BILINEAR , GAVL_SCALE_QUADRATIC , GAVL_SCALE_CUBIC_BSPLINE , GAVL_SCALE_CUBIC_MITCHELL , GAVL_SCALE_CUBIC_CATMULL , GAVL_SCALE_SINC_LANCZOS , GAVL_SCALE_NONE } |
enum | gavl_downscale_filter_t { GAVL_DOWNSCALE_FILTER_AUTO = 0 , GAVL_DOWNSCALE_FILTER_NONE , GAVL_DOWNSCALE_FILTER_WIDE , GAVL_DOWNSCALE_FILTER_GAUSS } |
typedef struct gavl_video_options_s gavl_video_options_t |
Opaque container for video conversion options
You don't want to know what's inside.
enum gavl_alpha_mode_t |
enum gavl_scale_mode_t |
Scaling algorithm
Enumerator | |
---|---|
GAVL_SCALE_AUTO | Take mode from conversion quality |
GAVL_SCALE_NEAREST | Nearest neighbor |
GAVL_SCALE_BILINEAR | Bilinear |
GAVL_SCALE_QUADRATIC | Quadratic |
GAVL_SCALE_CUBIC_BSPLINE | Cubic B-Spline |
GAVL_SCALE_CUBIC_MITCHELL | Cubic Mitchell-Netravali |
GAVL_SCALE_CUBIC_CATMULL | Cubic Catmull-Rom |
GAVL_SCALE_SINC_LANCZOS | Sinc with Lanczos window. Set order with gavl_video_options_set_scale_order |
GAVL_SCALE_NONE | Used internally when the scaler is used as a convolver |
Antialiasing filters
Specifies the antialiasing filter to be used when downscaling images.
Since 1.1.0
GAVL_PUBLIC void gavl_video_options_set_defaults | ( | gavl_video_options_t * | opt | ) |
Set all options to their defaults.
opt | Video options |
GAVL_PUBLIC gavl_video_options_t * gavl_video_options_create | ( | ) |
Create an options container.
Use this to store options, which will apply for more than one converter instance. Applying the options will be done by gavl_*_get_options() followed by gavl_video_options_copy().
GAVL_PUBLIC void gavl_video_options_copy | ( | gavl_video_options_t * | dst, |
const gavl_video_options_t * | src | ||
) |
Copy video options.
dst | Destination |
src | Source |
GAVL_PUBLIC void gavl_video_options_destroy | ( | gavl_video_options_t * | opt | ) |
Destroy video options.
opt | Video options |
GAVL_PUBLIC void gavl_video_options_set_rectangles | ( | gavl_video_options_t * | opt, |
const gavl_rectangle_f_t * | src_rect, | ||
const gavl_rectangle_i_t * | dst_rect | ||
) |
Set source and destination rectangles.
opt | Video options |
src_rect | Rectangular area in the source frame or NULL |
dst_rect | Rectangular area in the destination frame or NULL |
Set the source and destination rectangles the converter or scaler will operate on. If you don't call this function, the rectangles will be set to the full image dimensions of the source and destination formats respectively. If one rectangle is NULL, BOTH rectangles will be cleared as if you never called this function. See Rectangles for convenience functions, which calculate the proper rectangles in some typical playback or transcoding situations.
GAVL_PUBLIC void gavl_video_options_get_rectangles | ( | gavl_video_options_t * | opt, |
gavl_rectangle_f_t * | src_rect, | ||
gavl_rectangle_i_t * | dst_rect | ||
) |
Get source and destination rectangles.
opt | Video options |
src_rect | Returns the rectangular area in the source frame |
dst_rect | Returns the rectangular area in the destination frame |
GAVL_PUBLIC void gavl_video_options_set_quality | ( | gavl_video_options_t * | opt, |
int | quality | ||
) |
Set the quality level for the converter.
opt | Video options |
quality | Quality level (see Quality settings) |
GAVL_PUBLIC int gavl_video_options_get_quality | ( | gavl_video_options_t * | opt | ) |
Get the quality level for the converter.
opt | Video options |
GAVL_PUBLIC void gavl_video_options_set_conversion_flags | ( | gavl_video_options_t * | opt, |
int | conversion_flags | ||
) |
Set the conversion flags.
opt | Video options |
conversion_flags | Conversion flags (see Video conversion flags) |
GAVL_PUBLIC int gavl_video_options_get_conversion_flags | ( | gavl_video_options_t * | opt | ) |
GAVL_PUBLIC void gavl_video_options_set_alpha_mode | ( | gavl_video_options_t * | opt, |
gavl_alpha_mode_t | alpha_mode | ||
) |
Set the alpha mode.
opt | Video options |
alpha_mode | Alpha mode |
GAVL_PUBLIC gavl_alpha_mode_t gavl_video_options_get_alpha_mode | ( | gavl_video_options_t * | opt | ) |
Get the alpha mode.
opt | Video options |
GAVL_PUBLIC void gavl_video_options_set_scale_mode | ( | gavl_video_options_t * | opt, |
gavl_scale_mode_t | scale_mode | ||
) |
Set the scale mode.
opt | Video options |
scale_mode | Scale mode |
GAVL_PUBLIC gavl_scale_mode_t gavl_video_options_get_scale_mode | ( | gavl_video_options_t * | opt | ) |
Get the scale mode.
opt | Video options |
GAVL_PUBLIC void gavl_video_options_set_scale_order | ( | gavl_video_options_t * | opt, |
int | order | ||
) |
Set the scale order for GAVL_SCALE_SINC_LANCZOS.
opt | Video options |
order | Order (must be at least 4) |
GAVL_PUBLIC int gavl_video_options_get_scale_order | ( | gavl_video_options_t * | opt | ) |
Get the scale order for GAVL_SCALE_SINC_LANCZOS.
opt | Video options |
GAVL_PUBLIC void gavl_video_options_set_background_color | ( | gavl_video_options_t * | opt, |
const float * | color | ||
) |
Set the background color for alpha blending.
opt | Video options |
color | Array of 3 float values (0.0 .. 1.0) in RGB order |
GAVL_PUBLIC void gavl_video_options_get_background_color | ( | gavl_video_options_t * | opt, |
float * | color | ||
) |
Get the background color for alpha blending.
opt | Video options |
color | Returns 3 float values (0.0 .. 1.0) in RGB order |
GAVL_PUBLIC void gavl_video_options_set_deinterlace_drop_mode | ( | gavl_video_options_t * | opt, |
gavl_deinterlace_drop_mode_t | deinterlace_drop_mode | ||
) |
Set the deinterlace drop mode.
opt | Video options |
deinterlace_drop_mode | Deinterlace drop mode |
GAVL_PUBLIC gavl_deinterlace_drop_mode_t gavl_video_options_get_deinterlace_drop_mode | ( | gavl_video_options_t * | opt | ) |
Get the deinterlace drop mode.
opt | Video options |
GAVL_PUBLIC void gavl_video_options_set_downscale_filter | ( | gavl_video_options_t * | opt, |
gavl_downscale_filter_t | f | ||
) |
Set antialiasing filter for downscaling.
opt | Video options |
f | Filter type (see gavl_downscale_filter_t) |
Since 1.1.0
GAVL_PUBLIC gavl_downscale_filter_t gavl_video_options_get_downscale_filter | ( | gavl_video_options_t * | opt | ) |
Get the antialiasing filter for downscaling.
opt | Video options |
Since 1.1.0
GAVL_PUBLIC void gavl_video_options_set_downscale_blur | ( | gavl_video_options_t * | opt, |
float | f | ||
) |
Set blur factor for downscaling.
opt | Video options |
f | Factor |
Specifies an additional blur-factor for downscaling. The default value of 1.0 calculates the preblur coefficients according the the downsample factor. Larger values mean more blurring (and slower scaling), smaller values mean less blurring (and probably more aliasing artifacts), 0 is equivalent to calling gavl_video_options_set_downscale_filter with GAVL_DOWNSCALE_FILTER_NONE as argument.
Since 1.1.0
GAVL_PUBLIC float gavl_video_options_get_downscale_blur | ( | gavl_video_options_t * | opt | ) |
Get blur factor for downscaling.
opt | Video options |
Since 1.1.0
GAVL_PUBLIC void gavl_video_options_set_num_threads | ( | gavl_video_options_t * | opt, |
int | n | ||
) |
Set number of threads.
opt | Video options |
n | Number of threads |
Since 1.1.1
GAVL_PUBLIC int gavl_video_options_get_num_threads | ( | gavl_video_options_t * | opt | ) |
Set number of threads.
opt | Video options |
Since 1.1.1
GAVL_PUBLIC void gavl_video_options_set_run_func | ( | gavl_video_options_t * | opt, |
gavl_video_run_func | func, | ||
void * | client_data | ||
) |
Set function to be passed to each thread.
opt | Video options |
func | Function to be passed to each thread |
client_data | Client data to be passed to the run function |
Since 1.1.1
GAVL_PUBLIC gavl_video_run_func gavl_video_options_get_run_func | ( | gavl_video_options_t * | opt, |
void ** | client_data | ||
) |
Get function to be passed to each thread.
opt | Video options |
client_data | Returns client data |
Since 1.1.1
GAVL_PUBLIC void gavl_video_options_set_stop_func | ( | gavl_video_options_t * | opt, |
gavl_video_stop_func | func, | ||
void * | client_data | ||
) |
Set function to be passed to each thread.
opt | Video options |
func | Function to be passed to each thread |
client_data | Client data to be passed to the run function |
Since 1.1.1
GAVL_PUBLIC gavl_video_stop_func gavl_video_options_get_stop_func | ( | gavl_video_options_t * | opt, |
void ** | client_data | ||
) |
Get function to be passed to each thread.
opt | Video options |
client_data | Returns client data |
Since 1.1.1