comparison opt.c @ 3702:7e7d8a3fe080 libavcodec

make AVOptions default value field work. Patch by Panagiotis Issaris % takis P issaris A uhasselt P be % Original thread: Date: Sep 8, 2006 3:22 PM Subject: [Ffmpeg-devel] [PATCH 1/2] Enable usage of AVOption default value
author gpoirier
date Sun, 10 Sep 2006 20:21:40 +0000
parents 25493c849d70
children 301d975b69e3
comparison
equal deleted inserted replaced
3701:4ba77dc980f1 3702:7e7d8a3fe080
297 av_log(av_log_obj, AV_LOG_INFO, " %s", opt->help); 297 av_log(av_log_obj, AV_LOG_INFO, " %s", opt->help);
298 av_log(av_log_obj, AV_LOG_INFO, "\n"); 298 av_log(av_log_obj, AV_LOG_INFO, "\n");
299 } 299 }
300 return 0; 300 return 0;
301 } 301 }
302
303 void av_opt_set_defaults(void *s)
304 {
305 AVOption *opt = NULL;
306 while ((opt = av_next_option(s, opt)) != NULL) {
307 switch(opt->type) {
308 case FF_OPT_TYPE_CONST:
309 /* Nothing to be done here */
310 break;
311 case FF_OPT_TYPE_FLAGS:
312 case FF_OPT_TYPE_INT: {
313 int val;
314 val = opt->default_val;
315 av_set_int(s, opt->name, val);
316 }
317 break;
318 case FF_OPT_TYPE_FLOAT: {
319 double val;
320 val = opt->default_val;
321 av_set_double(s, opt->name, val);
322 }
323 break;
324 case FF_OPT_TYPE_RATIONAL: {
325 AVRational val;
326 val = av_d2q(opt->default_val, INT_MAX);
327 av_set_q(s, opt->name, val);
328 }
329 break;
330 case FF_OPT_TYPE_STRING:
331 /* Cannot set default for string as default_val is of type * double */
332 break;
333 default:
334 av_log(s, AV_LOG_DEBUG, "AVOption type %d of option %s not implemented yet\n", opt->type, opt->name);
335 }
336 }
337 }
338