[Ffmpeg-cvslog] r7945 - in trunk: configure libavcodec/Makefile libavcodec/a52dec.c
Diego Biurrun
diego
Mon Feb 12 12:25:02 CET 2007
On Mon, Feb 12, 2007 at 12:16:29PM +0100, Michel Bardiaux wrote:
> diego wrote:
> >
> >Modified:
> > trunk/configure
> > trunk/libavcodec/Makefile
> > trunk/libavcodec/a52dec.c
>
> Please clarify a few things for me. The local copy of liba52 that was in
> the tree remains definitely out, and one always uses an external liba52
> (at least right now). Correct?
Correct.
> >Log:
> >Restore the possibility to link liba52 instead of dlopening.
> >
> >--- trunk/configure (original)
> >+++ trunk/configure Mon Feb 12 11:05:19 2007
> >@@ -78,6 +78,7 @@
> > echo " --enable-x11grab enable X11 grabbing [default=no]"
> > echo " --enable-dc1394 enable IIDC-1394 grabbing using
> > libdc1394"
> > echo " and libraw1394 [default=no]"
> >+ echo " --enable-a52 enable GPLed liba52 support [default=no]"
> > echo " --enable-a52bin open liba52.so.0 at runtime [default=no]"
>
> It is far from clear in that help that a52bin requires a52. That seems
> proved by the fact here is only 1 OBJ line below. But there is no code
> anywhere forcing a52, neither code requiring it, when a52bin is used.
Yes, you have to specify both, same as --enable-faad and --enable-faadbin.
I plan on fixing that but it's an independent issue.
> > echo " --enable-avisynth allow reading AVISynth script files
> > [default=no]"
> > echo " --enable-dts enable GPLed libdts support
> > [default=no]"
> >@@ -486,6 +487,7 @@
> > gpl
> > gprof
> > ipv6
> >+ liba52
> > liba52bin
> > libdts
> > libfaac
> >@@ -595,7 +597,7 @@
> > amr_wb_encoder_deps="amr_wb"
> > dts_decoder_deps="libdts"
> > faac_encoder_deps="libfaac"
> >-liba52_decoder_deps="liba52bin"
> >+liba52_decoder_deps="liba52"
> > libgsm_decoder_deps="libgsm"
> > libgsm_encoder_deps="libgsm"
> > libtheora_encoder_deps="libtheora"
> >@@ -754,6 +756,7 @@
> > dc1394="no"
> > dlfcn_h="no"
> > dlopen="no"
> >+liba52="no"
> > liba52bin="no"
> > libdts="no"
> > libfaac="no"
> >@@ -1032,6 +1035,8 @@
> > ;;
> > --disable-v4l2) video4linux2="no"
> > ;;
> >+ --enable-a52) liba52="yes"
> >+ ;;
> > --enable-a52bin) liba52bin="yes"
> > ;;
> > --enable-dts) libdts="yes"
> >@@ -1182,7 +1187,7 @@
> > enabled_any $@ && die "$name is under GPL and --enable-gpl is not
> > specified."
> > }
> > die_gpl_disabled "The Postprocessing code" pp
> >- die_gpl_disabled "liba52" liba52bin
> >+ die_gpl_disabled "liba52" liba52
> > die_gpl_disabled "libxvidcore" xvid
> > die_gpl_disabled "x264" x264
> > die_gpl_disabled "libdts" libdts
> >@@ -1494,6 +1499,7 @@
> > die "Only one of amr_nb and amr_nb_fixed may be enabled."
> >
> > # these are off by default, so fail if requested and not available
> >+enabled liba52 && require liba52 a52dec/a52.h a52_init -la52
> > enabled libdts && require libdts dts.h dts_init -ldts -lm
> > enabled libgsm && require libgsm gsm.h gsm_create -lgsm
> > enabled libmp3lame && require LAME lame/lame.h lame_init -lmp3lame -lm
> >@@ -1815,6 +1821,7 @@
> > fi
> > echo "Sun medialib support $mlib"
> > echo "AVISynth enabled $avisynth"
> >+echo "liba52 support $liba52"
> > echo "liba52 dlopened $liba52bin"
> > echo "libdts support $libdts"
> > echo "libfaac enabled $libfaac"
> >
> >Modified: trunk/libavcodec/Makefile
> >==============================================================================
> >--- trunk/libavcodec/Makefile (original)
> >+++ trunk/libavcodec/Makefile Mon Feb 12 11:05:19 2007
> >@@ -248,7 +248,7 @@
> > OBJS-$(CONFIG_ADPCM_YAMAHA_ENCODER) += adpcm.o
> >
> > # external codec libraries
> >-OBJS-$(CONFIG_LIBA52BIN) += a52dec.o
> >+OBJS-$(CONFIG_LIBA52) += a52dec.o
> > OBJS-$(CONFIG_LIBDTS) += dtsdec.o
> > OBJS-$(CONFIG_LIBFAAC) += faac.o
> > OBJS-$(CONFIG_LIBFAAD) += faad.o
> >
> >Modified: trunk/libavcodec/a52dec.c
> >==============================================================================
> >--- trunk/libavcodec/a52dec.c (original)
> >+++ trunk/libavcodec/a52dec.c Mon Feb 12 11:05:19 2007
> >@@ -26,8 +26,11 @@
> >
> > #include "avcodec.h"
> > #include <a52dec/a52.h>
> >+
> >+#ifdef CONFIG_LIBA52BIN
> > #include <dlfcn.h>
> > static const char* liba52name = "liba52.so.0";
> >+#endif
> >
> > /**
> > * liba52 - Copyright (C) Aaron Holtzman
> >@@ -79,6 +82,7 @@
> > {
> > AC3DecodeState *s = avctx->priv_data;
> >
> >+#ifdef CONFIG_LIBA52BIN
> > s->handle = dlopen(liba52name, RTLD_LAZY);
> > if (!s->handle)
> > {
> >@@ -97,6 +101,15 @@
> > dlclose(s->handle);
> > return -1;
> > }
> >+#else
> >+ s->handle = 0;
> >+ s->a52_init = a52_init;
> >+ s->a52_samples = a52_samples;
> >+ s->a52_syncinfo = a52_syncinfo;
> >+ s->a52_frame = a52_frame;
> >+ s->a52_block = a52_block;
> >+ s->a52_free = a52_free;
> >+#endif
> > s->state = s->a52_init(0); /* later use CPU flags */
> > s->samples = s->a52_samples(s->state);
> > s->inbuf_ptr = s->inbuf;
> >@@ -226,7 +239,9 @@
> > {
> > AC3DecodeState *s = avctx->priv_data;
> > s->a52_free(s->state);
> >+#ifdef CONFIG_LIBA52BIN
> > dlclose(s->handle);
> >+#endif
> > return 0;
> > }
Could you *please* snip stuff you don't reply to? You complain about
the quoting style of others after all ..
Diego
More information about the ffmpeg-cvslog
mailing list