From af6915a2bc395a6af937e0e6bd09c7d09b061d66 Mon Sep 17 00:00:00 2001 From: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com> Date: Wed, 18 Feb 2009 18:20:18 -0500 Subject: [PATCH] Use speexdsp only if available 3 --- configure.ac | 11 ++++++----- src/audio/codecs/Makefile.am | 6 +++--- src/audio/codecs/speexcodec.cpp | 6 +++--- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/configure.ac b/configure.ac index 248a2752ca..9a3b2af982 100644 --- a/configure.ac +++ b/configure.ac @@ -231,19 +231,20 @@ AS_IF([test "x$with_speex" != xno], [AC_MSG_FAILURE( [libspeex link test failed. You may use --without-speex to compile without speex codec support.])] ) - ] + ] dnl More advanced check in case the libspeexdsp is not installed -AC_CHECK_LIB(speex, speex_preprocess_run, HAVE_SPEEXDSP=true, HAVE_SPEEXDSP=false) +AC_SEARCH_LIBS(speex_preprocess_run, speexdsp, HAVE_SPEEXDSP="yes", HAVE_SPEEXDSP="no", []) -if test $HAVE_SPEEXDSP = false; then - AC_MSG_WARN([The silence detection in speex could not have been enabled]) +if test $HAVE_SPEEXDSP="no"; then + echo $HAVE_SPEEXDSP; + AC_MSG_WARN([The silence detection in speex could not have been enabled]) fi ) AC_DEFINE([HAVE_SPEEX], test "x$with_speex" = "xyes", [Define if you have libspeex]) AM_CONDITIONAL(BUILD_SPEEX, test "x$with_speex" = "xyes" ) -AM_CONDITIONAL(ENABLE_SPEEXDSP, $HAVE_SPEEXDSP) +AM_CONDITIONAL(ENABLE_SPEEXDSP, test $HAVE_SPEEXDSP = yes) dnl Check for ilbc support AC_ARG_WITH([ilbc], diff --git a/src/audio/codecs/Makefile.am b/src/audio/codecs/Makefile.am index 6b8097c6ba..8c7d480384 100644 --- a/src/audio/codecs/Makefile.am +++ b/src/audio/codecs/Makefile.am @@ -10,15 +10,15 @@ INSTALL_GSM_RULE = install-libcodec_gsm_so endif if ENABLE_SPEEXDSP -SPEEXDSP_LIB = -lspeexdsp +SPEEXDSP= -DHAVE_SPEEXDSP_LIB endif if BUILD_SPEEX SPEEX_LIB = libcodec_speex.so libcodec_speex_so_SOURCES = speexcodec.cpp libcodec_speex_so_CFLAGS = -fPIC -g -Wall -libcodec_speex_so_CXXFLAGS = -fPIC -g -Wall -libcodec_speex_so_LDFLAGS = --shared -lc -lspeex $(SPEEXDSP_LIB) -lm +libcodec_speex_so_CXXFLAGS = -fPIC -g -Wall $(SPEEXDSP) +libcodec_speex_so_LDFLAGS = --shared -lc -lspeex $(SPEEX_NIMP) INSTALL_SPEEX_RULE = install-libcodec_speex_so endif diff --git a/src/audio/codecs/speexcodec.cpp b/src/audio/codecs/speexcodec.cpp index f325015b1f..a2442cbfe8 100644 --- a/src/audio/codecs/speexcodec.cpp +++ b/src/audio/codecs/speexcodec.cpp @@ -59,7 +59,7 @@ class Speex : public AudioCodec{ speex_bits_init(&_speex_enc_bits); _speex_enc_state = speex_encoder_init(_speexModePtr); -#if ENABLE_SPEEXDSP +#ifdef HAVE_SPEEXDSP_LIB int enable = 1; int quality = 10; @@ -114,10 +114,10 @@ class Speex : public AudioCodec{ { speex_bits_reset(&_speex_enc_bits); -#if ENABLE_SPEEXDSP +#ifdef HAVE_SPEEXDSP_LIB speex_encoder_ctl(_speex_enc_state,SPEEX_SET_SAMPLING_RATE,&_clockRate); speex_preprocess_run(_preprocess_state, src); -#endif +#endif speex_encode_int(_speex_enc_state, src, &_speex_enc_bits); int nbBytes = speex_bits_write(&_speex_enc_bits, (char*)dst, size); -- GitLab