[FFmpeg-devel] [PATCH] Document opt.h:av_find_opt()

Stefano Sabatini stefano.sabatini-lala
Tue Jul 1 16:48:47 CEST 2008


On date Tuesday 2008-07-01 02:55:13 +0200, Michael Niedermayer encoded:
> On Tue, Jul 01, 2008 at 01:32:10AM +0200, Stefano Sabatini wrote:
> > On date Monday 2008-06-30 19:14:24 -0400, The Wanderer encoded:
> > > Stefano Sabatini wrote:
> > > 
> > > > Hi all,
> > > > continues the opt.h documentation saga.
> > > > 
> > > > I took account in this patch to all the previous remarks done by
> > > > Diego, Michael, The Wanderer as much as my mind made it possible ;-).
> > > 
> > > Not bad, but I see a couple of possible improvements. (This is almost on 
> > > the level of nitpicking, but I points 'em out as I sees 'em...)
> > > 
> > > > + * Looks for an option in \p obj. Looks only for the options which
> > > > + * have the flags set as specified in \p mask and \p flags (that is,
> > > > + * for which is: opt->flags & mask == flags).
> > > 
> > > I would probably say something more like "for which it is the case that"
> > > (or, less precisely but more simply, just "for which") and drop the
> > > colon.
> > > 
> > > > + * @param[in] obj a pointer to an #AVClass struct or to an #AVClass
> > > > + * context struct
> > > > + * @param[in] name the name of the option to look for
> > > > + * @param[in[ unit the unit of the option to look for or any if NULL
> > > > + * @return a pointer to the option found or NULL if no option
> > > > + * has been found
> > > 
> > > I would add a comma before the "or" on both of these last two.
> > 
> > Mmh... this still continues to seem strange to me, nonetheless I
> > applied all your suggestions.
> > 
> > > Other than that, looks fairly good to me.
> > 
> > Thanks for the review, new patch attached.
> > -- 
> > FFmpeg = Fantastic Fostering Maxi Pitiless Exploitable Guru
> 
> > Index: libavcodec/opt.h
> > ===================================================================
> > --- libavcodec/opt.h	(revision 14043)
> > +++ libavcodec/opt.h	(working copy)
> > @@ -85,6 +85,18 @@
> >  } AVOption;
> >  
> >  
> > +/**
> > + * Looks for an option in \p obj. Looks only for the options which
> > + * have the flags set as specified in \p mask and \p flags (that is,
> > + * for which it is the case that opt->flags & mask == flags).
> > + *
> 
> > + * @param[in] obj a pointer to an #AVClass struct or to an #AVClass
> > + * context struct
> 
> Whats the difference between a "#AVClass struct" and a 
> "#AVClass context struct" ?

The AVClass context struct(ure) is defined in libavutil/log.h as
follows:
/**
 * Describes the class of an AVClass context structure, that is an
 * arbitrary struct of which the first field is a pointer to an
 * AVClass struct (e.g. AVCodecContext, AVFormatContext etc.).
 */
typedef struct AVCLASS AVClass;

(yes I know, this definition is somehow circular...)

Regards.
-- 
FFmpeg = Freak & Foolish Mega Pitiful Efficient God




More information about the ffmpeg-devel mailing list