changeset 16802:a356a606bd66

replace mp3lame version detection by required features detection
author aurel
date Tue, 18 Oct 2005 21:40:17 +0000
parents 55b28be7a0e6
children f4501109e056
files configure libmpcodecs/ae_lame.c
diffstat 2 files changed, 21 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/configure	Tue Oct 18 21:37:28 2005 +0000
+++ b/configure	Tue Oct 18 21:40:17 2005 +0000
@@ -6181,6 +6181,8 @@
 
   echocheck "libmp3lame (for mencoder)"
   _mp3lame=no
+  _def_mp3lame_preset='#undef HAVE_MP3LAME_PRESET'
+  _def_mp3lame_preset_medium='#undef HAVE_MP3LAME_PRESET_MEDIUM'
   cat > $TMPC <<EOF
 #include <lame/lame.h>
 int main(void) { lame_version_t lv; (void) lame_init(); get_lame_version_numerical(&lv);  printf("%d%d\n",lv.major,lv.minor); return 0; }
@@ -6188,12 +6190,20 @@
   # Note: libmp3lame usually depends on vorbis
   cc_check -lmp3lame $_ld_vorbis $_ld_lm && "$TMPO" >> "$TMPLOG" 2>&1 && _mp3lame=yes
   if test "$_mp3lame" = yes ; then
-    _def_mp3lame="#define HAVE_MP3LAME `$TMPO`"
-    _def_cfg_mp3lame="#define CONFIG_MP3LAME `$TMPO`"
+    _def_mp3lame="#define HAVE_MP3LAME"
     _ld_mp3lame="-lmp3lame $_ld_vorbis"
+    cat > $TMPC << EOF
+#include <lame/lame.h>
+int main(void) { int p = STANDARD_FAST; return 0; }
+EOF
+    cc_check $_ld_mp3lame $_ld_lm && _def_mp3lame_preset="#define HAVE_MP3LAME_PRESET"
+    cat > $TMPC << EOF
+#include <lame/lame.h>
+int main(void) { int p = MEDIUM_FAST; return 0; }
+EOF
+    cc_check $_ld_mp3lame $_ld_lm && _def_mp3lame_preset_medium="#define HAVE_MP3LAME_PRESET_MEDIUM"
   else
     _def_mp3lame='#undef HAVE_MP3LAME'
-    _def_cfg_mp3lame='#undef CONFIG_MP3LAME'
   fi
   echores "$_mp3lame"
 
@@ -7184,7 +7194,8 @@
 /* Indicates if libmp3lame is available
    Note: for mencoder */
 $_def_mp3lame
-$_def_cfg_mp3lame
+$_def_mp3lame_preset
+$_def_mp3lame_preset_medium
 
 /* Define libmp1e for realtime mpeg encoding (for DXR3 and DVB cards) */
 $_def_mp1e
--- a/libmpcodecs/ae_lame.c	Tue Oct 18 21:37:28 2005 +0000
+++ b/libmpcodecs/ae_lame.c	Tue Oct 18 21:40:17 2005 +0000
@@ -32,7 +32,7 @@
 static int lame_param_br_min = 0; //not specified
 static int lame_param_br_max = 0; //not specified
 
-#if HAVE_MP3LAME >= 392
+#ifdef HAVE_MP3LAME_PRESET
 int lame_param_fast=0; // unset
 static char* lame_param_preset=NULL; // unset
 static int  lame_presets_set( lame_t gfp, int fast, int cbr, const char* preset_name );
@@ -57,7 +57,7 @@
 	{"free", &lame_param_free_format, CONF_TYPE_FLAG, 0, 0, 1, NULL},
 	{"br_min", &lame_param_br_min, CONF_TYPE_INT, CONF_RANGE, 0, 1024, NULL},
 	{"br_max", &lame_param_br_max, CONF_TYPE_INT, CONF_RANGE, 0, 1024, NULL},
-#if HAVE_MP3LAME >= 392
+#ifdef HAVE_MP3LAME_PRESET
 	{"fast", &lame_param_fast, CONF_TYPE_FLAG, 0, 0, 1, NULL},
 	{"preset", &lame_param_preset, CONF_TYPE_STRING, 0, 0, 0, NULL},
 #else
@@ -181,7 +181,7 @@
     }
     if(lame_param_lowpassfreq>=-1) lame_set_lowpassfreq(lame,lame_param_lowpassfreq);
     if(lame_param_highpassfreq>=-1) lame_set_highpassfreq(lame,lame_param_highpassfreq);
-#if HAVE_MP3LAME >= 392
+#ifdef HAVE_MP3LAME_PRESET
     if(lame_param_preset != NULL) {
         mp_msg(MSGT_FIXME, MSGL_FIXME, MSGTR_LamePresetEquals,lame_param_preset);
         if(lame_presets_set(lame,lame_param_fast, (lame_param_vbr==0), lame_param_preset) < 0)
@@ -205,7 +205,7 @@
     return 1;
 }
 
-#if HAVE_MP3LAME >= 392
+#ifdef HAVE_MP3LAME_PRESET
 /* lame_presets_set 
    taken out of presets_set in lame-3.93.1/frontend/parse.c and modified */
 static int  lame_presets_set( lame_t gfp, int fast, int cbr, const char* preset_name )
@@ -256,7 +256,7 @@
         preset_name = "256";
     }
 
-#if HAVE_MP3LAME >= 393
+#ifdef HAVE_MP3LAME_PRESET_MEDIUM
     if (strcmp(preset_name, "medium") == 0) {
         if (fast > 0)
            lame_set_preset(gfp, MEDIUM_FAST);
@@ -321,7 +321,7 @@
 }
 #endif
 
-#if HAVE_MP3LAME >= 392
+#ifdef HAVE_MP3LAME_PRESET
 /* lame_presets_longinfo_dm
    taken out of presets_longinfo_dm in lame-3.93.1/frontend/parse.c and modified */
 static void  lame_presets_longinfo_dm ( FILE* msgfp )