[FFmpeg-devel] [PATCH] Re: How can I determine color_range from a filter?

Stefano Sabatini stefano.sabatini-lala
Mon Jan 10 11:10:57 CET 2011

On date Sunday 2011-01-09 23:30:59 +0100, Michael Niedermayer encoded:
> On Sun, Jan 09, 2011 at 08:26:25PM +0100, Stefano Sabatini wrote:
> > > > I want to avoid unconditional dependency of libavfilter on libavcodec.
> > > 
> > > using enums from avcodec.h does not create a runtime dependancy so i dont
> > > see a problem
> > 
> > I believe that assuming the existence of libavcodec headers when you
> > compile a libavfilter application is wrong, indeed you could even
> you have a point of course, still
> 1. its largely stylistic nitpickery IMHO

Not if you're trying to address some very specific constraints
(e.g. working with limited memory and space resources), in this case
having to depend on headers which are not strictly required (and which
need to be downloaded / installed etc) can be a significant annoyance.

> 2. we will have filters that will use libavcodec stuff like (i)dct / wavelets
>    for postprocessing and noise reduction
>    These filters will need libavcodec headers for compilation, at runtime
>    dlopen can be used to avoid a dependancy.
> Thus IMHO we have thousands of things that are more important than moving these
> enums around but iam not against them being moved if someone wants to do it.

I don't want this to be a blocker, I'll take care of the move as I'll
have more time.

> > compile/install libavfilter without installing libavcodec (configure
> > --enable-libavfilter --disable-libavcodec),
> no problem here
> > in a distro you could have
> > libavfilter-dev and yet not libavcodec-dev.
> it wouldnt work, we dont have 4 independant configure scripts, and
> quadruplicating the build system across 5 split -dev packages seems like a
> bad idea

We have one single flexible configure system which allows to
enable/disable compilation and installation of each component of the
system, libraries included.

Having an independent package for every FFmpeg library (lib*,
lib*-dev) helps modularity and makes perfect sense to me, and indeed
that's what all the distros I know of manage FFmpeg packaging.

> and if you meant the distro simply physically removd libavcodec.
> We should nozt support this castration and if someone still wanted he can
> leave the header there as well if he already manually cuts things randomly
> away
FFmpeg = Frightening & Fabulous Magnificient Peaceless Esoteric Gymnast

More information about the ffmpeg-devel mailing list