[Ffmpeg-devel] The "Intermingled Mess" issue.
Colin Ward
lists
Tue Sep 20 02:55:10 CEST 2005
Christian Iversen wrote:
>
[Snip]
> Just my 5c, but wouldn't something like "make menuconfig" from the Linux
> kernel be the perfect way to configure ffmpeg? For instance, MP3_DECODER
> could depend on COMMON_MPEG_ROUTINES which could pull in SOME_IDCT_ROUTINE,
> etc. All this would happen automatically, and the user would have no problem
> configuring this library.
>
> This is just a loose idea, of course - any comments?
This is a good idea, but one thing to keep in mind is that FFMPEG
runs on many, many different systems. So we can't assume that all of
those systems will have these tools for making makefiles, that people
have talked about elsewhere in this thread. For instance, my Amiga
operating system has very primitive build tools compared to say, Linux.
Also, what tool is used to make the makefile is actually a separate
conversation. Before *any* tool can be used we need to ensure that the
source code has an adequate number of #ifdef CONFIG_* and #ifdef HAVE_*
and #ifdef USE_* (or whatever) so that it can be built to target
different uses. Currently it doesn't have quite enough of those
#ifdefs, so things can be interdependent.
I once wrote an audio/video engine in my work that could be
configured with #ifdefs to compile as something as small as a 64k video
player, and which could then scale right up to a 350k multimedia system
with support for multiple video and audio codecs, Flash style
functionality, vector graphics and text. Plus you could configure it to
use any combination of this functionality. So it can be done, but it
requires a much smaller configuration granularity than including or not
including certain modules.
I noticed in the "[Ffmpeg-devel] [PATCH] disabling encoders in
libavformat" thread someone else submitted a (rejected) patch to disable
encoders, so obviously I am not the only one having problems. I will
try to find time to make a patch myself tonight.
/-------------------------------------------------------------------\
[Hitman/Code HQ - 6502/z80/68000/604e/80x86/ARM coder - Amiga rulez!]
[VZ-200/VIC-20/MZ-700/c16/c64*10/c128*8/Plus-4/CPC464/CD32/500*2 ]
[600/1000/1200*2/A4000/SNES/N64/Dreamcast/Athlon 1100/AmigaOne ]
[Assembly Language: The most fun you can have with your clothes on! ]
\-------------------------------------------------------------------/
More information about the ffmpeg-devel
mailing list