How do we treat additional/optional library (read codecs) in the vlc source tree?

Samuel Hocevar sam at
Sun Dec 2 22:27:45 CET 2001

On Sun, Nov 25, 2001, Jean-Paul Saman wrote:

> 1. How do we treat additional/optional library (read codecs) in the vlc
> source tree?

   I wouldn't exactly call libmad a codec ; your plugin which uses
libmad is the codec, but libmad itself shouldn't be added to the vlc
tree, for all the reasons you already mentioned.

   libdvdcss doesn't really follow this rule, because at the beginning
all its code was part of vlc and we weren't exactly sure which parts
should stay within vlc and which ones would have to go into the lib. But
libdvdcss will eventually be a completely standalone piece of software.

> - Treat libmad audio decoder as a library (either static or dynamic). In
> this way it is possible on an iPaq to let applications share the library
> without having to staticly link it with every app. This saves valuable
> FlashROM space.

   Having the module as a plugin dynamically linked to libmad is a good
idea, since it will only be loaded (and useful at all) if libmad is

> - Where to put those optional or additional codec libraries? My first
> thought was to use <top-level dir>/extras for this, but it can also be
> e.g.: <top-level dir>/lib which is perhaps a better place.

   They should be installed separately. And plugins using these
libraries should be treated exactly like any other vlc plugin.

> 2. Is vlc going to support 'make dist-ipaq' ?

   I'm not qualified to answer this question. But isn't the ipkg/
directory Christophe created enough?

> The current source code directory does not provide a generic mechanism
> for where to keep the necessary files for this. E.g. vlc.spec (redhat)
> is in the top-level directory and there is a debian directory. Shouldn't
> we solve this in a more generic way, e.g.: 
> <top-level dir>/dist/redhat
> <top-level dir>/dist/debian
> <top-level dir>/dist/familiar (for ipaq)
> etc.

   This won't work for Debian, for instance. dpkg-buildpackage expects
the debian/ directory to be located in the top-level directory. I don't
think we should panic about this issue yet, there are only "debian",
"ipkg" and "vlc.spec" for the moment. Let's start thinking about this
when we have ten of them :-)


More information about the vlc-devel mailing list