FFmpeg
Macros | Functions | Variables
opt.c File Reference
#include "avutil.h"
#include "avassert.h"
#include "avstring.h"
#include "channel_layout.h"
#include "dict.h"
#include "eval.h"
#include "log.h"
#include "mem.h"
#include "parseutils.h"
#include "pixdesc.h"
#include "mathematics.h"
#include "opt.h"
#include "samplefmt.h"
#include "bprint.h"
#include "version.h"
#include <float.h>

Go to the source code of this file.

Macros

#define TYPE_BASE(type)   ((type) & ~AV_OPT_TYPE_FLAG_ARRAY)
 
#define DEFAULT_NUMVAL(opt)
 
#define OPT_EVAL_NUMBER(name, opttype, vartype)
 
#define WHITESPACES   " \n\t\r"
 

Functions

const AVOptionav_opt_next (const void *obj, const AVOption *last)
 Iterate over all AVOptions belonging to obj. More...
 
static int opt_is_pod (enum AVOptionType type)
 
static uint8_t opt_array_sep (const AVOption *o)
 
static void * opt_array_pelem (const AVOption *o, void *array, unsigned idx)
 
static unsigned * opt_array_pcount (const void *parray)
 
static void opt_free_elem (const AVOption *o, void *ptr)
 
static void opt_free_array (const AVOption *o, void *parray, unsigned *count)
 
static int read_number (const AVOption *o, const void *dst, double *num, int *den, int64_t *intnum)
 
static int write_number (void *obj, const AVOption *o, void *dst, double num, int den, int64_t intnum)
 
static int hexchar2int (char c)
 
static int set_string_binary (void *obj, const AVOption *o, const char *val, uint8_t **dst)
 
static int set_string (void *obj, const AVOption *o, const char *val, uint8_t **dst)
 
static int set_string_number (void *obj, void *target_obj, const AVOption *o, const char *val, void *dst)
 
static int set_string_image_size (void *obj, const AVOption *o, const char *val, int *dst)
 
static int set_string_video_rate (void *obj, const AVOption *o, const char *val, AVRational *dst)
 
static int set_string_color (void *obj, const AVOption *o, const char *val, uint8_t *dst)
 
static const char * get_bool_name (int val)
 
static int set_string_bool (void *obj, const AVOption *o, const char *val, int *dst)
 
static int set_string_fmt (void *obj, const AVOption *o, const char *val, uint8_t *dst, int fmt_nb, int((*get_fmt)(const char *)), const char *desc)
 
static int get_pix_fmt (const char *name)
 
static int set_string_pixel_fmt (void *obj, const AVOption *o, const char *val, uint8_t *dst)
 
static int get_sample_fmt (const char *name)
 
static int set_string_sample_fmt (void *obj, const AVOption *o, const char *val, uint8_t *dst)
 
static int set_string_dict (void *obj, const AVOption *o, const char *val, uint8_t **dst)
 
static int set_string_channel_layout (void *obj, const AVOption *o, const char *val, void *dst)
 
static int opt_set_elem (void *obj, void *target_obj, const AVOption *o, const char *val, void *dst)
 
static int opt_set_array (void *obj, void *target_obj, const AVOption *o, const char *val, void *dst)
 
int av_opt_set (void *obj, const char *name, const char *val, int search_flags)
 
static int set_number (void *obj, const char *name, double num, int den, int64_t intnum, 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 len, 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_video_rate (void *obj, const char *name, AVRational val, int search_flags)
 
static int set_format (void *obj, const char *name, int fmt, int search_flags, enum AVOptionType type, const char *desc, int nb_fmts)
 
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_dict_val (void *obj, const char *name, const AVDictionary *val, int search_flags)
 
int av_opt_set_chlayout (void *obj, const char *name, const AVChannelLayout *channel_layout, int search_flags)
 
static void format_duration (char *buf, size_t size, int64_t d)
 
static int opt_get_elem (const AVOption *o, uint8_t **pbuf, size_t buf_len, void *dst, int search_flags)
 
static int opt_get_array (const AVOption *o, void *dst, uint8_t **out_val)
 
int av_opt_get (void *obj, const char *name, int search_flags, uint8_t **out_val)
 
static int get_number (void *obj, const char *name, double *num, int *den, int64_t *intnum, int search_flags)
 
int av_opt_get_int (void *obj, const char *name, int search_flags, int64_t *out_val)
 
int av_opt_get_double (void *obj, const char *name, int search_flags, double *out_val)
 
int av_opt_get_q (void *obj, const char *name, int search_flags, AVRational *out_val)
 
int av_opt_get_image_size (void *obj, const char *name, int search_flags, int *w_out, int *h_out)
 
int av_opt_get_video_rate (void *obj, const char *name, int search_flags, AVRational *out_val)
 
static int get_format (void *obj, const char *name, int search_flags, int *out_fmt, enum AVOptionType type, const char *desc)
 
int av_opt_get_pixel_fmt (void *obj, const char *name, int search_flags, enum AVPixelFormat *out_fmt)
 
int av_opt_get_sample_fmt (void *obj, const char *name, int search_flags, enum AVSampleFormat *out_fmt)
 
int av_opt_get_chlayout (void *obj, const char *name, int search_flags, AVChannelLayout *cl)
 
int av_opt_get_dict_val (void *obj, const char *name, int search_flags, AVDictionary **out_val)
 
int av_opt_flag_is_set (void *obj, const char *field_name, const char *flag_name)
 Check whether a particular flag is set in a flags field. More...
 
static void log_int_value (void *av_log_obj, int level, int64_t i)
 
static void log_value (void *av_log_obj, int level, double d)
 
static const char * get_opt_const_name (void *obj, const char *unit, int64_t value)
 
static char * get_opt_flags_string (void *obj, const char *unit, int64_t value)
 
static void log_type (void *av_log_obj, const AVOption *o, enum AVOptionType parent_type)
 
static void log_default (void *obj, void *av_log_obj, const AVOption *opt)
 
static void opt_list (void *obj, void *av_log_obj, const char *unit, int req_flags, int rej_flags, enum AVOptionType parent_type)
 
int av_opt_show2 (void *obj, void *av_log_obj, int req_flags, int rej_flags)
 Show the obj options. More...
 
void av_opt_set_defaults (void *s)
 Set the values of all AVOption fields to their default values. More...
 
void av_opt_set_defaults2 (void *s, int mask, int flags)
 Set the values of all AVOption fields to their default values. More...
 
static int parse_key_value_pair (void *ctx, const char **buf, const char *key_val_sep, const char *pairs_sep)
 Store the value in the field in ctx that is named like key. More...
 
int av_set_options_string (void *ctx, const char *opts, const char *key_val_sep, const char *pairs_sep)
 Parse the key/value pairs list in opts. More...
 
static int is_key_char (char c)
 
static int get_key (const char **ropts, const char *delim, char **rkey)
 Read a key from a string. More...
 
int av_opt_get_key_value (const char **ropts, const char *key_val_sep, const char *pairs_sep, unsigned flags, char **rkey, char **rval)
 Extract a key-value pair from the beginning of a string. More...
 
int av_opt_set_from_string (void *ctx, const char *opts, const char *const *shorthand, const char *key_val_sep, const char *pairs_sep)
 Parse the key-value pairs list in opts. More...
 
void av_opt_free (void *obj)
 Free all allocated objects in obj. More...
 
int av_opt_set_dict2 (void *obj, AVDictionary **options, int search_flags)
 Set all the options from a given dictionary on an object. More...
 
int av_opt_set_dict (void *obj, AVDictionary **options)
 Set all the options from a given dictionary on an object. More...
 
const AVOptionav_opt_find (void *obj, const char *name, const char *unit, int opt_flags, int search_flags)
 Look for an option in an object. More...
 
const AVOptionav_opt_find2 (void *obj, const char *name, const char *unit, int opt_flags, int search_flags, void **target_obj)
 Look for an option in an object. More...
 
void * av_opt_child_next (void *obj, void *prev)
 Iterate over AVOptions-enabled children of obj. More...
 
const AVClassav_opt_child_class_iterate (const AVClass *parent, void **iter)
 Iterate over potential AVOptions-enabled children of parent. More...
 
void * av_opt_ptr (const AVClass *class, void *obj, const char *name)
 Gets a pointer to the requested field in a struct. More...
 
static int opt_copy_elem (void *logctx, enum AVOptionType type, void *dst, const void *src)
 
static int opt_copy_array (void *logctx, const AVOption *o, void **pdst, const void *const *psrc)
 
int av_opt_copy (void *dst, const void *src)
 Copy options from src object into dest object. More...
 
int av_opt_query_ranges (AVOptionRanges **ranges_arg, void *obj, const char *key, int flags)
 Get a list of allowed ranges for the given option. More...
 
int av_opt_query_ranges_default (AVOptionRanges **ranges_arg, void *obj, const char *key, int flags)
 Get a default list of allowed ranges for the given option. More...
 
void av_opt_freep_ranges (AVOptionRanges **rangesp)
 Free an AVOptionRanges struct and set it to NULL. More...
 
int av_opt_is_set_to_default (void *obj, const AVOption *o)
 Check if given option is set to its default value. More...
 
int av_opt_is_set_to_default_by_name (void *obj, const char *name, int search_flags)
 Check if given option is set to its default value. More...
 
static int opt_serialize (void *obj, int opt_flags, int flags, int *cnt, AVBPrint *bprint, const char key_val_sep, const char pairs_sep)
 
int av_opt_serialize (void *obj, int opt_flags, int flags, char **buffer, const char key_val_sep, const char pairs_sep)
 Serialize object's options. More...
 

Variables

static const size_t opt_elem_size []
 

Detailed Description

AVOptions

Author
Michael Niedermayer micha.nosp@m.elni.nosp@m.@gmx..nosp@m.at

Definition in file opt.c.

Macro Definition Documentation

◆ TYPE_BASE

#define TYPE_BASE (   type)    ((type) & ~AV_OPT_TYPE_FLAG_ARRAY)

Definition at line 46 of file opt.c.

◆ DEFAULT_NUMVAL

#define DEFAULT_NUMVAL (   opt)
Value:
((opt->type == AV_OPT_TYPE_INT64 || \
opt->type == AV_OPT_TYPE_UINT64 || \
opt->type == AV_OPT_TYPE_CONST || \
opt->type == AV_OPT_TYPE_FLAGS || \
opt->type == AV_OPT_TYPE_UINT || \
opt->type == AV_OPT_TYPE_INT) \
? opt->default_val.i64 \
: opt->default_val.dbl)

Definition at line 323 of file opt.c.

◆ OPT_EVAL_NUMBER

#define OPT_EVAL_NUMBER (   name,
  opttype,
  vartype 
)
Value:
int av_opt_eval_ ## name(void *obj, const AVOption *o, \
const char *val, vartype *name ## _out) \
{ \
if (!o || o->type != opttype || o->flags & AV_OPT_FLAG_READONLY) \
return AVERROR(EINVAL); \
return set_string_number(obj, obj, o, val, name ## _out); \
}

Definition at line 766 of file opt.c.

◆ WHITESPACES

#define WHITESPACES   " \n\t\r"

Definition at line 1813 of file opt.c.

Function Documentation

◆ opt_is_pod()

static int opt_is_pod ( enum AVOptionType  type)
static

Definition at line 84 of file opt.c.

Referenced by opt_copy_elem().

◆ opt_array_sep()

static uint8_t opt_array_sep ( const AVOption o)
static

Definition at line 106 of file opt.c.

Referenced by av_opt_set_defaults2(), opt_get_array(), and opt_set_array().

◆ opt_array_pelem()

static void* opt_array_pelem ( const AVOption o,
void *  array,
unsigned  idx 
)
static

Definition at line 113 of file opt.c.

Referenced by opt_copy_array(), opt_free_array(), opt_get_array(), and opt_set_array().

◆ opt_array_pcount()

static unsigned* opt_array_pcount ( const void *  parray)
static

Definition at line 119 of file opt.c.

Referenced by av_opt_free(), opt_copy_array(), opt_get_array(), and opt_set_array().

◆ opt_free_elem()

static void opt_free_elem ( const AVOption o,
void *  ptr 
)
static

Definition at line 124 of file opt.c.

Referenced by av_opt_free(), and opt_free_array().

◆ opt_free_array()

static void opt_free_array ( const AVOption o,
void *  parray,
unsigned *  count 
)
static

Definition at line 145 of file opt.c.

Referenced by av_opt_free(), opt_copy_array(), and opt_set_array().

◆ read_number()

static int read_number ( const AVOption o,
const void *  dst,
double num,
int den,
int64_t *  intnum 
)
static

Definition at line 154 of file opt.c.

Referenced by av_opt_is_set_to_default(), and get_number().

◆ write_number()

static int write_number ( void *  obj,
const AVOption o,
void *  dst,
double  num,
int  den,
int64_t  intnum 
)
static

Definition at line 195 of file opt.c.

Referenced by av_opt_set_defaults2(), opt_set_elem(), set_number(), and set_string_number().

◆ hexchar2int()

static int hexchar2int ( char  c)
static

Definition at line 270 of file opt.c.

Referenced by set_string_binary().

◆ set_string_binary()

static int set_string_binary ( void *  obj,
const AVOption o,
const char *  val,
uint8_t **  dst 
)
static

Definition at line 280 of file opt.c.

Referenced by av_opt_is_set_to_default(), av_opt_set_defaults2(), and opt_set_elem().

◆ set_string()

static int set_string ( void *  obj,
const AVOption o,
const char *  val,
uint8_t **  dst 
)
static

Definition at line 314 of file opt.c.

Referenced by av_opt_set_defaults2(), and opt_set_elem().

◆ set_string_number()

static int set_string_number ( void *  obj,
void *  target_obj,
const AVOption o,
const char *  val,
void *  dst 
)
static

Definition at line 332 of file opt.c.

Referenced by opt_set_elem().

◆ set_string_image_size()

static int set_string_image_size ( void *  obj,
const AVOption o,
const char *  val,
int dst 
)
static

Definition at line 426 of file opt.c.

Referenced by av_opt_set_defaults2(), and opt_set_elem().

◆ set_string_video_rate()

static int set_string_video_rate ( void *  obj,
const AVOption o,
const char *  val,
AVRational dst 
)
static

Definition at line 441 of file opt.c.

Referenced by av_opt_set_defaults2(), and opt_set_elem().

◆ set_string_color()

static int set_string_color ( void *  obj,
const AVOption o,
const char *  val,
uint8_t *  dst 
)
static

Definition at line 449 of file opt.c.

Referenced by av_opt_set_defaults2(), and opt_set_elem().

◆ get_bool_name()

static const char* get_bool_name ( int  val)
static

Definition at line 464 of file opt.c.

Referenced by log_default(), and opt_get_elem().

◆ set_string_bool()

static int set_string_bool ( void *  obj,
const AVOption o,
const char *  val,
int dst 
)
static

Definition at line 471 of file opt.c.

Referenced by opt_set_elem().

◆ set_string_fmt()

static int set_string_fmt ( void *  obj,
const AVOption o,
const char *  val,
uint8_t *  dst,
int  fmt_nb,
int((*get_fmt)(const char *))  ,
const char *  desc 
)
static

Definition at line 502 of file opt.c.

Referenced by set_string_pixel_fmt(), and set_string_sample_fmt().

◆ get_pix_fmt()

static int get_pix_fmt ( const char *  name)
static

Definition at line 542 of file opt.c.

Referenced by set_string_pixel_fmt().

◆ set_string_pixel_fmt()

static int set_string_pixel_fmt ( void *  obj,
const AVOption o,
const char *  val,
uint8_t *  dst 
)
static

Definition at line 547 of file opt.c.

Referenced by opt_set_elem().

◆ get_sample_fmt()

static int get_sample_fmt ( const char *  name)
static

Definition at line 553 of file opt.c.

Referenced by set_string_sample_fmt().

◆ set_string_sample_fmt()

static int set_string_sample_fmt ( void *  obj,
const AVOption o,
const char *  val,
uint8_t *  dst 
)
static

Definition at line 558 of file opt.c.

Referenced by opt_set_elem().

◆ set_string_dict()

static int set_string_dict ( void *  obj,
const AVOption o,
const char *  val,
uint8_t **  dst 
)
static

Definition at line 564 of file opt.c.

Referenced by av_opt_set_defaults2(), and opt_set_elem().

◆ set_string_channel_layout()

static int set_string_channel_layout ( void *  obj,
const AVOption o,
const char *  val,
void *  dst 
)
static

Definition at line 582 of file opt.c.

Referenced by av_opt_set_defaults2(), and opt_set_elem().

◆ opt_set_elem()

static int opt_set_elem ( void *  obj,
void *  target_obj,
const AVOption o,
const char *  val,
void *  dst 
)
static

Definition at line 592 of file opt.c.

Referenced by av_opt_set(), and opt_set_array().

◆ opt_set_array()

static int opt_set_array ( void *  obj,
void *  target_obj,
const AVOption o,
const char *  val,
void *  dst 
)
static

Definition at line 668 of file opt.c.

Referenced by av_opt_set(), and av_opt_set_defaults2().

◆ set_number()

static int set_number ( void *  obj,
const char *  name,
double  num,
int  den,
int64_t  intnum,
int  search_flags 
)
static

Definition at line 783 of file opt.c.

Referenced by av_opt_set_double(), av_opt_set_int(), av_opt_set_q(), and av_opt_set_video_rate().

◆ set_format()

static int set_format ( void *  obj,
const char *  name,
int  fmt,
int  search_flags,
enum AVOptionType  type,
const char *  desc,
int  nb_fmts 
)
static

Definition at line 884 of file opt.c.

Referenced by av_opt_set_pixel_fmt(), av_opt_set_sample_fmt(), and dshow_cycle_pins().

◆ format_duration()

static void format_duration ( char *  buf,
size_t  size,
int64_t  d 
)
static

Definition at line 959 of file opt.c.

Referenced by log_default(), and opt_get_elem().

◆ opt_get_elem()

static int opt_get_elem ( const AVOption o,
uint8_t **  pbuf,
size_t  buf_len,
void *  dst,
int  search_flags 
)
static

Definition at line 994 of file opt.c.

Referenced by av_opt_get(), and opt_get_array().

◆ opt_get_array()

static int opt_get_array ( const AVOption o,
void *  dst,
uint8_t **  out_val 
)
static

Definition at line 1099 of file opt.c.

Referenced by av_opt_get(), and av_opt_is_set_to_default().

◆ get_number()

static int get_number ( void *  obj,
const char *  name,
double num,
int den,
int64_t *  intnum,
int  search_flags 
)
static

Definition at line 1202 of file opt.c.

Referenced by av_opt_get_double(), av_opt_get_int(), av_opt_get_q(), and av_opt_get_video_rate().

◆ get_format()

static int get_format ( void *  obj,
const char *  name,
int  search_flags,
int out_fmt,
enum AVOptionType  type,
const char *  desc 
)
static

Definition at line 1294 of file opt.c.

Referenced by av_opt_get_pixel_fmt(), and av_opt_get_sample_fmt().

◆ log_int_value()

static void log_int_value ( void *  av_log_obj,
int  level,
int64_t  i 
)
static

Definition at line 1367 of file opt.c.

Referenced by log_default().

◆ log_value()

static void log_value ( void *  av_log_obj,
int  level,
double  d 
)
static

Definition at line 1384 of file opt.c.

Referenced by log_default(), and opt_list().

◆ get_opt_const_name()

static const char* get_opt_const_name ( void *  obj,
const char *  unit,
int64_t  value 
)
static

Definition at line 1417 of file opt.c.

Referenced by log_default().

◆ get_opt_flags_string()

static char* get_opt_flags_string ( void *  obj,
const char *  unit,
int64_t  value 
)
static

Definition at line 1430 of file opt.c.

Referenced by log_default().

◆ log_type()

static void log_type ( void *  av_log_obj,
const AVOption o,
enum AVOptionType  parent_type 
)
static

Definition at line 1451 of file opt.c.

Referenced by opt_list().

◆ log_default()

static void log_default ( void *  obj,
void *  av_log_obj,
const AVOption opt 
)
static

Definition at line 1489 of file opt.c.

Referenced by opt_list().

◆ opt_list()

static void opt_list ( void *  obj,
void *  av_log_obj,
const char *  unit,
int  req_flags,
int  rej_flags,
enum AVOptionType  parent_type 
)
static

Definition at line 1567 of file opt.c.

Referenced by av_opt_show2().

◆ parse_key_value_pair()

static int parse_key_value_pair ( void *  ctx,
const char **  buf,
const char *  key_val_sep,
const char *  pairs_sep 
)
static

Store the value in the field in ctx that is named like key.

ctx must be an AVClass context, storing is done using AVOptions.

Parameters
bufthe string to parse, buf will be updated to point at the separator just after the parsed key/value pair
key_val_sepa 0-terminated list of characters used to separate key from value
pairs_sepa 0-terminated list of characters used to separate two pairs from each other
Returns
0 if the key/value pair has been successfully parsed and set, or a negative value corresponding to an AVERROR code in case of error: AVERROR(EINVAL) if the key/value pair cannot be parsed, the error code issued by av_opt_set() if the key/value pair cannot be set

Definition at line 1759 of file opt.c.

Referenced by av_set_options_string().

◆ is_key_char()

static int is_key_char ( char  c)
static

Definition at line 1815 of file opt.c.

Referenced by get_key().

◆ get_key()

static int get_key ( const char **  ropts,
const char *  delim,
char **  rkey 
)
static

Read a key from a string.

The key consists of is_key_char characters and must be terminated by a character from the delim string; spaces are ignored.

Returns
0 for success (even with ellipsis), <0 for failure

Definition at line 1830 of file opt.c.

Referenced by av_opt_get_key_value().

◆ opt_copy_elem()

static int opt_copy_elem ( void *  logctx,
enum AVOptionType  type,
void *  dst,
const void *  src 
)
static

Definition at line 2043 of file opt.c.

Referenced by av_opt_copy(), and opt_copy_array().

◆ opt_copy_array()

static int opt_copy_array ( void *  logctx,
const AVOption o,
void **  pdst,
const void *const *  psrc 
)
static

Definition at line 2091 of file opt.c.

Referenced by av_opt_copy().

◆ opt_serialize()

static int opt_serialize ( void *  obj,
int  opt_flags,
int  flags,
int cnt,
AVBPrint *  bprint,
const char  key_val_sep,
const char  pairs_sep 
)
static

Definition at line 2408 of file opt.c.

Referenced by av_opt_serialize().

Variable Documentation

◆ opt_elem_size

const size_t opt_elem_size[]
static
Initial value:
= {
[AV_OPT_TYPE_FLAGS] = sizeof(unsigned),
[AV_OPT_TYPE_INT] = sizeof(int),
[AV_OPT_TYPE_INT64] = sizeof(int64_t),
[AV_OPT_TYPE_UINT] = sizeof(unsigned),
[AV_OPT_TYPE_UINT64] = sizeof(uint64_t),
[AV_OPT_TYPE_DOUBLE] = sizeof(double),
[AV_OPT_TYPE_FLOAT] = sizeof(float),
[AV_OPT_TYPE_STRING] = sizeof(char *),
[AV_OPT_TYPE_BINARY] = sizeof(uint8_t *),
[AV_OPT_TYPE_IMAGE_SIZE] = sizeof(int[2]),
[AV_OPT_TYPE_PIXEL_FMT] = sizeof(int),
[AV_OPT_TYPE_DURATION] = sizeof(int64_t),
[AV_OPT_TYPE_COLOR] = sizeof(uint8_t[4]),
[AV_OPT_TYPE_BOOL] = sizeof(int),
}

Definition at line 61 of file opt.c.

Referenced by opt_array_pelem(), opt_copy_array(), opt_copy_elem(), and opt_set_array().

name
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf default minimum maximum flags name is the option name
Definition: writing_filters.txt:88
AVERROR
Filter the word “frame” indicates either a video frame or a group of audio as stored in an AVFrame structure Format for each input and each output the list of supported formats For video that means pixel format For audio that means channel sample they are references to shared objects When the negotiation mechanism computes the intersection of the formats supported at each end of a all references to both lists are replaced with a reference to the intersection And when a single format is eventually chosen for a link amongst the remaining all references to the list are updated That means that if a filter requires that its input and output have the same format amongst a supported all it has to do is use a reference to the same list of formats query_formats can leave some formats unset and return AVERROR(EAGAIN) to cause the negotiation mechanism toagain later. That can be used by filters with complex requirements to use the format negotiated on one link to set the formats supported on another. Frame references ownership and permissions
AV_OPT_TYPE_SAMPLE_FMT
@ AV_OPT_TYPE_SAMPLE_FMT
Definition: opt.h:257
AV_OPT_TYPE_VIDEO_RATE
@ AV_OPT_TYPE_VIDEO_RATE
offset must point to AVRational
Definition: opt.h:258
AVOption
AVOption.
Definition: opt.h:357
AV_OPT_TYPE_DURATION
@ AV_OPT_TYPE_DURATION
Definition: opt.h:259
AVDictionary
Definition: dict.c:34
AV_OPT_TYPE_RATIONAL
@ AV_OPT_TYPE_RATIONAL
Definition: opt.h:250
AV_OPT_TYPE_BINARY
@ AV_OPT_TYPE_BINARY
offset must point to a pointer immediately followed by an int for the length
Definition: opt.h:251
val
static double val(void *priv, double ch)
Definition: aeval.c:78
float
float
Definition: af_crystalizer.c:121
AV_OPT_TYPE_DOUBLE
@ AV_OPT_TYPE_DOUBLE
Definition: opt.h:247
AV_OPT_TYPE_INT64
@ AV_OPT_TYPE_INT64
Definition: opt.h:246
AVRational
Rational number (pair of numerator and denominator).
Definition: rational.h:58
AV_OPT_TYPE_COLOR
@ AV_OPT_TYPE_COLOR
Definition: opt.h:260
AV_OPT_TYPE_IMAGE_SIZE
@ AV_OPT_TYPE_IMAGE_SIZE
offset must point to two consecutive ints
Definition: opt.h:255
AV_OPT_TYPE_DICT
@ AV_OPT_TYPE_DICT
Definition: opt.h:252
AV_OPT_TYPE_UINT
@ AV_OPT_TYPE_UINT
Definition: opt.h:263
AV_OPT_TYPE_CHLAYOUT
@ AV_OPT_TYPE_CHLAYOUT
Definition: opt.h:262
AVChannelLayout
An AVChannelLayout holds information about the channel layout of audio data.
Definition: channel_layout.h:303
AV_OPT_TYPE_FLOAT
@ AV_OPT_TYPE_FLOAT
Definition: opt.h:248
AV_OPT_FLAG_READONLY
#define AV_OPT_FLAG_READONLY
The option may not be set through the AVOptions API, only read.
Definition: opt.h:296
AV_OPT_TYPE_INT
@ AV_OPT_TYPE_INT
Definition: opt.h:245
AV_OPT_TYPE_PIXEL_FMT
@ AV_OPT_TYPE_PIXEL_FMT
Definition: opt.h:256
set_string_number
static int set_string_number(void *obj, void *target_obj, const AVOption *o, const char *val, void *dst)
Definition: opt.c:332
AV_OPT_TYPE_BOOL
@ AV_OPT_TYPE_BOOL
Definition: opt.h:261
AV_OPT_TYPE_FLAGS
@ AV_OPT_TYPE_FLAGS
Definition: opt.h:244
AV_OPT_TYPE_STRING
@ AV_OPT_TYPE_STRING
Definition: opt.h:249
int
int
Definition: ffmpeg_filter.c:424
AV_OPT_TYPE_CONST
@ AV_OPT_TYPE_CONST
Definition: opt.h:254
AV_OPT_TYPE_UINT64
@ AV_OPT_TYPE_UINT64
Definition: opt.h:253