[vlc-devel] [PATCH] Add marq filter to libvlc
olivier.aubert at liris.cnrs.fr
Tue Jul 7 10:45:58 CEST 2009
On Mon, 2009-07-06 at 13:02 -0700, Pierre d'Herbemont wrote:
> Functions are cheap, API safe, and doc friendly.
Could be. It could also be argued that, given the dynamic nature of VLC,
a stable API is desirable, but a means to take advantage of more
advanced aspects of VLC is desirable too. So both approaches seem to me
perfectly valid, although possibly conflicting.
Moreover, the cheapness of functions can be argued. Using functions
means that compatibility is ensured at the compilation/linkage level.
Using options (for which there should be some introspection facilities)
means that compatibility can be dynamically achieved at runtime. I admit
that I am biased towards the second approach through my use of dynamic
languages such as python or smalltalk. But, pragmatically speaking, it
can be more flexible. YMMV.
> > If you are interested search in the mailing list archives for the latest
> > libvlc_config_update patch. Feedback is welcome.
> The problem with this kind of approach is that it tends to be a mess.
> There is no static check possible for the parameters, and there is no
> actual exported documentation, not even raw headers.
> And even the goal for libvlc is not to be that versatile. I think we
> want it to be a *stable* API for VLC.
The proposed approach (dynamic update of config options) is perfectly
stable as an API (it would be nice to have some introspection
capabilities, though). Documentation exists (vlc --full-help --longhelp
--help-verbose). What the approach uncovers is that option evolution
should be treated with the same care as API evolution, with deprecated
features, freezing phases, etc.
More information about the vlc-devel