Video conversion options
[Video]


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
}

Functions

void gavl_video_options_set_defaults (gavl_video_options_t *opt)
 Set all options to their defaults.
gavl_video_options_tgavl_video_options_create ()
 Create an options container.
void gavl_video_options_copy (gavl_video_options_t *dst, const gavl_video_options_t *src)
 Copy video options.
void gavl_video_options_destroy (gavl_video_options_t *opt)
 Destroy video options.
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.
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.
void gavl_video_options_set_quality (gavl_video_options_t *opt, int quality)
 Set the quality level for the converter.
int gavl_video_options_get_quality (gavl_video_options_t *opt)
 Get the quality level for the converter.
void gavl_video_options_set_conversion_flags (gavl_video_options_t *opt, int conversion_flags)
 Set the conversion flags.
int gavl_video_options_get_conversion_flags (gavl_video_options_t *opt)
 Get the conversion flags.
void gavl_video_options_set_alpha_mode (gavl_video_options_t *opt, gavl_alpha_mode_t alpha_mode)
 Set the alpha mode.
gavl_alpha_mode_t gavl_video_options_get_alpha_mode (gavl_video_options_t *opt)
 Get the alpha mode.
void gavl_video_options_set_scale_mode (gavl_video_options_t *opt, gavl_scale_mode_t scale_mode)
 Set the scale mode.
gavl_scale_mode_t gavl_video_options_get_scale_mode (gavl_video_options_t *opt)
 Get the scale mode.
void gavl_video_options_set_scale_order (gavl_video_options_t *opt, int order)
 Set the scale order for GAVL_SCALE_SINC_LANCZOS.
int gavl_video_options_get_scale_order (gavl_video_options_t *opt)
 Get the scale order for GAVL_SCALE_SINC_LANCZOS.
void gavl_video_options_set_background_color (gavl_video_options_t *opt, const float *color)
 Set the background color for alpha blending.
void gavl_video_options_get_background_color (gavl_video_options_t *opt, float *color)
 Get the background color for alpha blending.
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.
gavl_deinterlace_drop_mode_t gavl_video_options_get_deinterlace_drop_mode (gavl_video_options_t *opt)
 Get the deinterlace drop mode.
void gavl_video_options_set_downscale_filter (gavl_video_options_t *opt, gavl_downscale_filter_t f)
 Set antialiasing filter for downscaling.
gavl_downscale_filter_t gavl_video_options_get_downscale_filter (gavl_video_options_t *opt)
 Get the antialiasing filter for downscaling.
void gavl_video_options_set_downscale_blur (gavl_video_options_t *opt, float f)
 Set blur factor for downscaling.
float gavl_video_options_get_downscale_blur (gavl_video_options_t *opt)
 Get blur factor for downscaling.

Typedef Documentation

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.


Enumeration Type Documentation

Alpha handling mode

Set the desired behaviour if the source format has a transparency channel but the destination doesn't.

Enumerator:
GAVL_ALPHA_IGNORE  Ignore alpha channel
GAVL_ALPHA_BLEND_COLOR  Blend over a specified background color

Deinterlace mode

Specifies a deinterlacing mode

Enumerator:
GAVL_DEINTERLACE_NONE  Don't care about interlacing
GAVL_DEINTERLACE_COPY  Take one field and copy it to the other
GAVL_DEINTERLACE_SCALE  Take one field and scale it vertically by 2
GAVL_DEINTERLACE_BLEND  Linear blend fields together

Specifies which field to drop when deinterlacing.

This is used for deinterlacing with GAVL_DEINTERLACE_COPY and GAVL_DEINTERLACE_SCALE.

Enumerator:
GAVL_DEINTERLACE_DROP_TOP  Drop top field, use bottom field
GAVL_DEINTERLACE_DROP_BOTTOM  Drop bottom field, use top field

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

Enumerator:
GAVL_DOWNSCALE_FILTER_AUTO  Auto selection based on quality.
GAVL_DOWNSCALE_FILTER_NONE  Fastest method, might produce heavy aliasing artifacts.
GAVL_DOWNSCALE_FILTER_WIDE  Widen the filter curve according to the scaling ratio.
GAVL_DOWNSCALE_FILTER_GAUSS  Do a Gaussian preblur.


Function Documentation

void gavl_video_options_set_defaults ( gavl_video_options_t opt  ) 

Set all options to their defaults.

Parameters:
opt Video options

gavl_video_options_t* gavl_video_options_create (  ) 

Create an options container.

Returns:
Newly allocated udio options with default values
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().

void gavl_video_options_copy ( gavl_video_options_t dst,
const gavl_video_options_t src 
)

Copy video options.

Parameters:
dst Destination
src Source

void gavl_video_options_destroy ( gavl_video_options_t opt  ) 

Destroy video options.

Parameters:
opt Video options

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.

Parameters:
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.

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.

Parameters:
opt Video options
src_rect Returns the rectangular area in the source frame
dst_rect Returns the rectangular area in the destination frame

void gavl_video_options_set_quality ( gavl_video_options_t opt,
int  quality 
)

Set the quality level for the converter.

Parameters:
opt Video options
quality Quality level (see Quality settings)

int gavl_video_options_get_quality ( gavl_video_options_t opt  ) 

Get the quality level for the converter.

Parameters:
opt Video options
Returns:
Quality level (see Quality settings)

void gavl_video_options_set_conversion_flags ( gavl_video_options_t opt,
int  conversion_flags 
)

Set the conversion flags.

Parameters:
opt Video options
conversion_flags Conversion flags (see Video conversion flags)

int gavl_video_options_get_conversion_flags ( gavl_video_options_t opt  ) 

Get the conversion flags.

Parameters:
opt Video options
Returns:
Flags (see Video conversion flags)

void gavl_video_options_set_alpha_mode ( gavl_video_options_t opt,
gavl_alpha_mode_t  alpha_mode 
)

Set the alpha mode.

Parameters:
opt Video options
alpha_mode Alpha mode

gavl_alpha_mode_t gavl_video_options_get_alpha_mode ( gavl_video_options_t opt  ) 

Get the alpha mode.

Parameters:
opt Video options
Returns:
Alpha mode

void gavl_video_options_set_scale_mode ( gavl_video_options_t opt,
gavl_scale_mode_t  scale_mode 
)

Set the scale mode.

Parameters:
opt Video options
scale_mode Scale mode

gavl_scale_mode_t gavl_video_options_get_scale_mode ( gavl_video_options_t opt  ) 

Get the scale mode.

Parameters:
opt Video options
Returns:
Scale mode

void gavl_video_options_set_scale_order ( gavl_video_options_t opt,
int  order 
)

Set the scale order for GAVL_SCALE_SINC_LANCZOS.

Parameters:
opt Video options
order Order (must be at least 4)

int gavl_video_options_get_scale_order ( gavl_video_options_t opt  ) 

Get the scale order for GAVL_SCALE_SINC_LANCZOS.

Parameters:
opt Video options
Returns:
Order

void gavl_video_options_set_background_color ( gavl_video_options_t opt,
const float *  color 
)

Set the background color for alpha blending.

Parameters:
opt Video options
color Array of 3 float values (0.0 .. 1.0) in RGB order

void gavl_video_options_get_background_color ( gavl_video_options_t opt,
float *  color 
)

Get the background color for alpha blending.

Parameters:
opt Video options
color Returns 3 float values (0.0 .. 1.0) in RGB order

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.

Parameters:
opt Video options
deinterlace_drop_mode Deinterlace drop mode

gavl_deinterlace_drop_mode_t gavl_video_options_get_deinterlace_drop_mode ( gavl_video_options_t opt  ) 

Get the deinterlace drop mode.

Parameters:
opt Video options
Returns:
Deinterlace drop mode

void gavl_video_options_set_downscale_filter ( gavl_video_options_t opt,
gavl_downscale_filter_t  f 
)

Set antialiasing filter for downscaling.

Parameters:
opt Video options
f Filter type (see gavl_downscale_filter_t)
Since 1.1.0

gavl_downscale_filter_t gavl_video_options_get_downscale_filter ( gavl_video_options_t opt  ) 

Get the antialiasing filter for downscaling.

Parameters:
opt Video options
Returns:
antialiasing filter for downscaling
Since 1.1.0

void gavl_video_options_set_downscale_blur ( gavl_video_options_t opt,
float  f 
)

Set blur factor for downscaling.

Parameters:
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

float gavl_video_options_get_downscale_blur ( gavl_video_options_t opt  ) 

Get blur factor for downscaling.

Parameters:
opt Video options
Returns:
Factor
Since 1.1.0


Generated on Thu Dec 18 04:19:16 2008 for gavl by  doxygen 1.5.7.1