Loading...
Searching...
No Matches
Option setting functions
libavutil » Data Structures » AVOptions » Setting and modifying option values

Those functions set the field of obj with the given name to value. More...

## Functions

int | av_opt_set (void *obj, const char *name, const char *val, int search_flags)
int | av_opt_set_int (void *obj, const char *name, int64_t val, int search_flags)
int | av_opt_set_double (void *obj, const char *name, double val, int search_flags)
int | av_opt_set_q (void *obj, const char *name, AVRational val, int search_flags)
int | av_opt_set_bin (void *obj, const char *name, const uint8_t *val, int size, int search_flags)
int | av_opt_set_image_size (void *obj, const char *name, int w, int h, int search_flags)
int | av_opt_set_pixel_fmt (void *obj, const char *name, enum AVPixelFormat fmt, int search_flags)
int | av_opt_set_sample_fmt (void *obj, const char *name, enum AVSampleFormat fmt, int search_flags)
int | av_opt_set_video_rate (void *obj, const char *name, AVRational val, int search_flags)
int | av_opt_set_chlayout (void *obj, const char *name, const AVChannelLayout *layout, int search_flags)
int | av_opt_set_dict_val (void *obj, const char *name, const AVDictionary *val, int search_flags)
int | av_opt_set_array (void *obj, const char *name, int search_flags, unsigned int start_elem, unsigned int nb_elems, enum AVOptionType val_type, const void *val)
| Add, replace, or remove elements for an array option.

## Detailed Description

Those functions set the field of obj with the given name to value.

Parameters

  [in] | obj | A struct whose first element is a pointer to an AVClass.
  [in] | name | the name of the field to set

  [in]

  val

  The value to set. In case of av_opt_set() if the field is not of a string type, then the given string is parsed. SI postfixes and some named scalars are supported. If the field is of a numeric type, it has to be a numeric or named scalar. Behavior with more than one scalar and +- infix operators is undefined. If the field is of a flags type, it has to be a sequence of numeric scalars or named flags separated by '+' or '-'. Prefixing a flag with '+' causes it to be set without affecting the other flags; similarly, '-' unsets a flag. If the field is of a dictionary type, it has to be a ':' separated list of key=value parameters. Values containing ':' special characters must be escaped.

  | search_flags | flags passed to av_opt_find2. I.e. if AV_OPT_SEARCH_CHILDREN is passed here, then the option may be set on a child of obj.

Returns
  0 if the value has been set, or an AVERROR code in case of error: AVERROR_OPTION_NOT_FOUND if no matching option exists AVERROR(ERANGE) if the value is out of range AVERROR(EINVAL) if the value is not valid

## Function Documentation

## av_opt_set()

int av_opt_set | ( | void * | obj,
|  | const char * | name,
|  | const char * | val,
|  | int | search_flags )

Examples
  decode_filter_audio.c, decode_filter_video.c, encode_video.c, filter_audio.c, and transcode.c.

Referenced by init_filter(), init_filter_graph(), init_filters(), init_filters(), and main().

## av_opt_set_int()

int av_opt_set_int | ( | void * | obj,
|  | const char * | name,
|  | int64_t | val,
|  | int | search_flags )

Examples
  filter_audio.c, mux.c, and resample_audio.c.

Referenced by init_filter_graph(), main(), and open_audio().

## av_opt_set_double()

int av_opt_set_double | ( | void * | obj,
|  | const char * | name,
|  | double | val,
|  | int | search_flags )

## av_opt_set_q()

int av_opt_set_q | ( | void * | obj,
|  | const char * | name,
|  | AVRational | val,
|  | int | search_flags )

Examples
  filter_audio.c.

Referenced by init_filter_graph().

## av_opt_set_bin()

int av_opt_set_bin | ( | void * | obj,
|  | const char * | name,
|  | const uint8_t * | val,
|  | int | size,
|  | int | search_flags )

Examples
  transcode.c.

Referenced by init_filter().

## av_opt_set_image_size()

int av_opt_set_image_size | ( | void * | obj,
|  | const char * | name,
|  | int | w,
|  | int | h,
|  | int | search_flags )

## av_opt_set_pixel_fmt()

int av_opt_set_pixel_fmt | ( | void * | obj,
|  | const char * | name,
|  | enum AVPixelFormat | fmt,
|  | int | search_flags )

## av_opt_set_sample_fmt()

int av_opt_set_sample_fmt | ( | void * | obj,
|  | const char * | name,
|  | enum AVSampleFormat | fmt,
|  | int | search_flags )

Examples
  mux.c, and resample_audio.c.

Referenced by main(), and open_audio().

## av_opt_set_video_rate()

int av_opt_set_video_rate | ( | void * | obj,
|  | const char * | name,
|  | AVRational | val,
|  | int | search_flags )

## av_opt_set_chlayout()

int av_opt_set_chlayout | ( | void * | obj,
|  | const char * | name,
|  | const AVChannelLayout * | layout,
|  | int | search_flags )

Note
  Any old chlayout present is discarded and replaced with a copy of the new one. The caller still owns layout and is responsible for uninitializing it.

Examples
  mux.c, and resample_audio.c.

Referenced by main(), and open_audio().

## av_opt_set_dict_val()

int av_opt_set_dict_val | ( | void * | obj,
|  | const char * | name,
|  | const AVDictionary * | val,
|  | int | search_flags )

Note
  Any old dictionary present is discarded and replaced with a copy of the new one. The caller still owns val is and responsible for freeing it.

## av_opt_set_array()

int av_opt_set_array | ( | void * | obj,
|  | const char * | name,
|  | int | search_flags,
|  | unsigned int | start_elem,
|  | unsigned int | nb_elems,
|  | enum AVOptionType | val_type,
|  | const void * | val )

Add, replace, or remove elements for an array option.

Which of these operations is performed depends on the values of val and search_flags.

Parameters

  start_elem | Index of the first array element to modify; must not be larger than array size as returned by av_opt_get_array_size().
  nb_elems | number of array elements to modify; when val is NULL, start_elem+nb_elems must not be larger than array size as returned by av_opt_get_array_size()
  val_type | Option type corresponding to the type of val, ignored when val is NULL.

The effect of this function will will be as if av_opt_setX() was called for each element, where X is specified by type. E.g. AV_OPT_TYPE_STRING corresponds to av_opt_set().

Typically this should be the same as the scalarized type of the AVOption being set, but certain conversions are also possible - the same as those done by the corresponding av_opt_set*() function. E.g. any option type can be set from a string, numeric types can be set from int64, double, or rational, etc.

Parameters

  val

  Array with nb_elems elements or NULL.

             When NULL, nb_elems array elements starting at start_elem are
             removed from the array. Any array elements remaining at the end
             are shifted by nb_elems towards the first element in order to keep
             the array contiguous.

             Otherwise (val is non-NULL), the type of val must match the
             underlying C type as documented for val_type.

             When AV_OPT_ARRAY_REPLACE is not set in search_flags, the array is
             enlarged by nb_elems, and the contents of val are inserted at
             start_elem. Previously existing array elements from start_elem
             onwards (if present) are shifted by nb_elems away from the first
             element in order to make space for the new elements.

             When AV_OPT_ARRAY_REPLACE is set in search_flags, the contents
             of val replace existing array elements from start_elem to
             start_elem+nb_elems (if present). New array size is
             max(start_elem + nb_elems, old array size).

Examples
  decode_filter_audio.c.

Referenced by init_filters().