diff --git a/packages/mediacenter/xbmc/build b/packages/mediacenter/xbmc/build index a204715ec7..6687d74c8b 100755 --- a/packages/mediacenter/xbmc/build +++ b/packages/mediacenter/xbmc/build @@ -137,6 +137,7 @@ do_autoreconf xbmc/lib/libid3tag/libid3tag $XBMC_PULSEAUDIO \ --enable-ffmpeg-libvorbis \ --disable-faac \ + --enable-lame \ $XBMC_DVDCSS \ --disable-mid \ $XBMC_AVAHI \ diff --git a/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-404-add_lame_check-0.6.patch b/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-404-add_lame_check-0.6.patch new file mode 100644 index 0000000000..a51a41d4c7 --- /dev/null +++ b/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-404-add_lame_check-0.6.patch @@ -0,0 +1,124 @@ +diff -Naur xbmc-10.1-Dharma/configure.in xbmc-10.1-Dharma.patch/configure.in +--- xbmc-10.1-Dharma/configure.in 2011-03-08 02:49:24.000000000 +0100 ++++ xbmc-10.1-Dharma.patch/configure.in 2011-03-26 05:56:44.077454237 +0100 +@@ -69,6 +69,8 @@ + pulse_disabled="== PulseAudio support manually disabled. ==" + faac_not_found="== Could not find libfaac. FAAC support disabled. ==" + faac_disabled="== FAAC support manually disabled. ==" ++lame_not_found="== Could not find libmp3lame. LAME support disabled. ==" ++lame_disabled="== LAME support manually disabled. ==" + dvdcss_enabled="== DVDCSS support enabled. ==" + dvdcss_disabled="== DVDCSS support disabled. ==" + hal_not_found="== Could not find hal. HAL support disabled. ==" +@@ -234,6 +236,12 @@ + [use_faac=$enableval], + [use_faac=yes]) + ++AC_ARG_ENABLE([lame], ++ [AS_HELP_STRING([--enable-lame], ++ [enable lame support (default is yes)])], ++ [use_lame=$enableval], ++ [use_lame=yes]) ++ + AC_ARG_ENABLE([dvdcss], + [AS_HELP_STRING([--enable-dvdcss], + [enable DVDCSS support (default is yes)])], +@@ -747,6 +755,20 @@ + fi + fi + ++# LAME ++if test "$use_lame" = "yes"; then ++ AC_CHECK_LIB([mp3lame], [main], ++ AC_DEFINE([HAVE_LIBMP3LAME], [1], [Define to 1 if you have the 'libmp3lame' library (-lmp3lame).]), ++ use_lame=no;AC_MSG_RESULT($lame_not_found)) ++else ++ AC_MSG_RESULT($lame_disabled) ++fi ++if test "$use_lame" = "yes"; then ++ AC_SUBST([HAVE_LIBMP3LAME], 1) ++else ++ AC_SUBST([HAVE_LIBMP3LAME], 0) ++fi ++ + # HAL + if test "$host_vendor" = "apple" ; then + use_hal="no" +@@ -1262,6 +1284,12 @@ + final_message="$final_message\n FAAC:\t\tNo" + fi + ++if test "$use_lame" = "yes"; then ++ final_message="$final_message\n LAME:\t\tYes" ++else ++ final_message="$final_message\n LAME:\t\tNo" ++fi ++ + # DVDCSS + if test "$use_dvdcss" = "yes"; then + AC_MSG_NOTICE($dvdcss_enabled) +diff -Naur xbmc-10.1-Dharma/xbmc/cdrip/CDDARipper.cpp xbmc-10.1-Dharma.patch/xbmc/cdrip/CDDARipper.cpp +--- xbmc-10.1-Dharma/xbmc/cdrip/CDDARipper.cpp 2011-03-08 02:49:14.000000000 +0100 ++++ xbmc-10.1-Dharma.patch/xbmc/cdrip/CDDARipper.cpp 2011-03-26 04:56:03.594891023 +0100 +@@ -27,7 +27,11 @@ + #include "CDDAReader.h" + #include "StringUtils.h" + #include "Util.h" ++ ++#ifdef HAVE_LIBMP3LAME + #include "EncoderLame.h" ++#endif ++ + #include "EncoderWav.h" + #include "EncoderVorbis.h" + #include "EncoderFFmpeg.h" +@@ -77,9 +81,16 @@ + case CDDARIP_ENCODER_FLAC: + m_pEncoder = new CEncoderFlac(); + break; +- default: ++#ifdef HAVE_LIBMP3LAME ++ case CDDARIP_ENCODER_LAME: + m_pEncoder = new CEncoderLame(); + break; ++#else ++ default: ++ CLog::Log(LOGERROR,"invalid encoder selected"); ++ return false; ++ break; ++#endif + } + + // we have to set the tags before we init the Encoder +diff -Naur xbmc-10.1-Dharma/xbmc/cdrip/Makefile.in xbmc-10.1-Dharma.patch/xbmc/cdrip/Makefile.in +--- xbmc-10.1-Dharma/xbmc/cdrip/Makefile.in 2011-03-08 02:49:14.000000000 +0100 ++++ xbmc-10.1-Dharma.patch/xbmc/cdrip/Makefile.in 2011-03-26 04:55:12.286896848 +0100 +@@ -6,11 +6,14 @@ + CDDAReader.cpp \ + Encoder.cpp \ + EncoderFFmpeg.cpp \ +- EncoderLame.cpp \ + EncoderVorbis.cpp \ + EncoderWav.cpp \ + EncoderFlac.cpp \ + ++ifeq (@HAVE_LIBMP3LAME@,1) ++ SRCS+=EncoderLame.cpp ++endif ++ + LIB=cdrip.a + + include ../../Makefile.include +diff -Naur xbmc-10.1-Dharma/xbmc/GUISettings.cpp xbmc-10.1-Dharma.patch/xbmc/GUISettings.cpp +--- xbmc-10.1-Dharma/xbmc/GUISettings.cpp 2011-03-08 02:49:14.000000000 +0100 ++++ xbmc-10.1-Dharma.patch/xbmc/GUISettings.cpp 2011-03-26 04:55:12.288896808 +0100 +@@ -325,7 +325,9 @@ + AddPath(acd,"audiocds.recordingpath",20000,"select writable folder",BUTTON_CONTROL_PATH_INPUT,false,657); + AddString(acd, "audiocds.trackpathformat", 13307, "%A - %B/[%N. ][%A - ]%T", EDIT_CONTROL_INPUT, false, 16016); + map encoders; ++#ifdef HAVE_LIBMP3LAME + encoders.insert(make_pair(34000,CDDARIP_ENCODER_LAME)); ++#endif + encoders.insert(make_pair(34001,CDDARIP_ENCODER_VORBIS)); + encoders.insert(make_pair(34002,CDDARIP_ENCODER_WAV)); + encoders.insert(make_pair(34005,CDDARIP_ENCODER_FLAC));