60 #define OFFSET(x) offsetof(TestContext, x) 62 #define TEST_FLAG_COOL 01 63 #define TEST_FLAG_LAME 02 64 #define TEST_FLAG_MU 04 108 vfprintf(stdout, fmt, vl);
118 printf(
"Testing default values\n");
124 printf(
"num=%d\n", test_ctx.
num);
125 printf(
"toggle=%d\n", test_ctx.
toggle);
126 printf(
"string=%s\n", test_ctx.
string);
127 printf(
"escape=%s\n", test_ctx.
escape);
128 printf(
"flags=%d\n", test_ctx.
flags);
131 printf(
"width=%d height=%d\n", test_ctx.
w, test_ctx.
h);
134 printf(
"duration=%"PRId64
"\n", test_ctx.
duration);
135 printf(
"color=%d %d %d %d\n", test_ctx.
color[0], test_ctx.
color[1], test_ctx.
color[2], test_ctx.
color[3]);
140 printf(
"num64=%"PRId64
"\n", test_ctx.
num64);
141 printf(
"flt=%.6f\n", test_ctx.
flt);
142 printf(
"dbl=%.6f\n", test_ctx.
dbl);
149 printf(
"\nTesting av_opt_is_set_to_default()\n");
160 printf(
"name:%10s default:%d error:%s\n", o->
name, !!ret, ret < 0 ?
av_err2str(ret) :
"");
165 printf(
"name:%10s default:%d error:%s\n", o->
name, !!ret, ret < 0 ?
av_err2str(ret) :
"");
170 printf(
"\nTest av_opt_serialize()\n");
182 memset(&test_ctx, 0,
sizeof(test_ctx));
194 printf(
"\nTesting av_set_options_string()\n");
197 static const char *
const options[] = {
213 "flags=+mu-lame : num=42: toggle=0",
214 "num=42 : string=blahblah",
215 "rational=0 : rational=1/2 : rational=1/-1",
228 "video_rate=30000/1001",
229 "video_rate=30/1.001",
233 "duration=1\\:23\\:45.67",
267 int silence_log = !strcmp(options[i],
"rational=-1/0");
272 printf(
"Error '%s'\n", options[i]);
274 printf(
"OK '%s'\n", options[i]);
280 printf(
"\nTesting av_opt_set_from_string()\n");
283 static const char *
const options[] = {
291 " 5 : hello : size = pal ",
292 "a_very_long_option_name_that_will_need_to_be_ellipsized_around_here=42" 294 static const char *
const shorthand[] = {
"num",
"string",
NULL };
304 printf(
"Error '%s'\n", options[i]);
306 printf(
"OK '%s'\n", options[i]);
Memory handling functions.
void av_log_set_level(int level)
Set the log level.
enum AVPixelFormat pix_fmt
void av_opt_set_defaults(void *s)
Set the values of all AVOption fields to their default values.
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.
packed BGR 8:8:8, 32bpp, XBGRXBGR... X=unused/undefined
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.
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.
#define AV_LOG_QUIET
Print no output.
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.
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
enum AVSampleFormat sample_fmt
#define AV_CH_LAYOUT_HEXAGONAL
#define AV_LOG_DEBUG
Stuff which is only useful for libav* developers.
const AVOption * av_opt_next(const void *obj, const AVOption *last)
Iterate over all AVOptions belonging to obj.
const char * av_get_sample_fmt_name(enum AVSampleFormat sample_fmt)
Return the name of sample_fmt, or NULL if sample_fmt is not recognized.
static void log_callback_help(void *ptr, int level, const char *fmt, va_list vl)
audio channel layout utility functions
void av_log_set_callback(void(*callback)(void *, int, const char *, va_list))
Set the logging callback.
#define av_err2str(errnum)
Convenience macro, the return value should be used only directly in function arguments but never stan...
#define FF_ARRAY_ELEMS(a)
offset must point to a pointer immediately followed by an int for the length
static const AVClass test_class
AVSampleFormat
Audio sample formats.
int av_opt_show2(void *obj, void *av_log_obj, int req_flags, int rej_flags)
Show the obj options.
static const AVOption test_options[]
Describe the class of an AVClass context structure.
Rational number (pair of numerator and denominator).
offset must point to AVRational
offset must point to two consecutive integers
static const char * test_get_name(void *ctx)
void av_opt_free(void *obj)
Free all allocated objects in obj.
const OptionDef options[]
common internal and external API header
Utilties for rational number calculation.
const char * av_get_pix_fmt_name(enum AVPixelFormat pix_fmt)
Return the short name for a pixel format, NULL in case pix_fmt is unknown.
AVPixelFormat
Pixel format.