[FFmpeg-devel] [PATCH 4/8] lavu/opt: extend AVOptionRange by second value
    Lukasz Marek 
    lukasz.m.luki at gmail.com
       
    Mon Mar  3 23:04:25 CET 2014
    
    
  
> IMO either there should be a AVOptionRange with an array in it
> or 3 AVOptionRange
OK, I tried to make it different, we have following function:
int av_opt_query_ranges(AVOptionRanges **, void *obj, const char *key, 
int flags);
AVOptionRanges is **. We can return more than one struct without any 
changes to API.
So querying option size will return 2 x AVOptionRanges, querying color 
may return 3/4 x AVOptionRanges.
AVOptionRanges may be extended by one filed "option_name" for example
typedef struct AVOptionRanges {
     AVOptionRange **range;
     int nb_ranges;
     char *option_name
} AVOptionRanges;
So, when querying for example "window_size" it would return one struct 
with option_name set to "window_size.width" and struct with option_name 
set to "window_size.height".
in general option_name param would return option name with suffix that 
would be defined per option type. all AVoptionRanges will require to 
return the same number of AVOptionRange structs.
av_opt_query_ranges so far returns >=0 for success, it can be redefined 
to return number of AVOptionRanges.
-- 
Best Regards,
Lukasz Marek
If you can't explain it simply, you don't understand it well enough. - 
Albert Einstein
    
    
More information about the ffmpeg-devel
mailing list