Spec stuff - Alex
authorterminatorX <>
Tue, 17 Sep 2002 23:47:55 +0000 (23:47 +0000)
committerterminatorX <>
Tue, 17 Sep 2002 23:47:55 +0000 (23:47 +0000)
ChangeLog
INSTALL
configure.in
terminatorX.spec.in

index 0204608f8820b629dec9fc78b2598fab046cec25..4d5a1f995016cc369320a41f695ca4d32585c67d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -41,6 +41,17 @@ changed.
   is the pthread "manager thread" is out of control of terminatorX code - so
   I cannot tell that thread to drop privileges.
 - Fixed Drag'n'Drop for GNOME 2
+- To enhance the loading of audiofiles terminatorX now contains code to use
+  mad (MPEG Audio Decoder), libvorbis and libaudiofile directly instead of 
+  pipeing audio data through mpg123, ogg123 or sox. As a result the new routines
+  bring following advantages:
+       - tX loads audiofiles significantly faster
+       - tX now honours the samplerate of an audiofile
+         (by adjusting the pitch of the turntable)
+       - tX provides much better feedback on the loading progress
+  Although the old loading-methods are still available (and piped loading has
+  been improved, too) I highly recommend installing the libraries above as the
+  new routines simply work better.
 - Deleted tons of old outdated code in tX_engine.cc and tX_mastergui.cc
 
 [v3.72]
diff --git a/INSTALL b/INSTALL
index 02626ae42462b86c1f026dcad044215d04a943b0..a6110a7fa286698d266594ddf0a4672ddbe33263 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -80,6 +80,27 @@ Step 1: Configure terminatorX.
                them - or check your distribution first, AFAIK all bring these
                tools nowaday.
                
+               --enable-mad
+               
+               This will make terminatorX use the MPEG Audio Decoder library if 
+               it's detected. This allows terminatorX to load mp3 files
+               significantly faster than with the mpg123 method. Additionally
+               terminatorX will find out about the sampling rate of an mp3 file
+               and adjust the playback speed accordingly.
+               
+               --enable-vorbis
+               
+               This will make terminatorX use the OGG Vobris libraries to load
+               OGG files directly. This method has the same advantages over 
+               loading through ogg123 as the "mad" method has over loading 
+               through mpg123.
+               
+               --enable-audiofile
+               
+               This enables the use of libaudiofile on loading audio files.
+               The library supports a wide range of common audio file formats
+               (eg WAV/AIFF/AU etc) therefor its use highly recommended.
+               
                --enable-wav
                
                This enables the builtin wav routines. They load 16Bit/44Khz
index 0defc786ca20e89734357d6c35daa50a545a0909..19da98cc8faf6ed43c126a09539d9f6418cb6a04 100644 (file)
@@ -43,6 +43,7 @@ OPTION_AUDIOFILE="no"
 OPTION_WAV="no"
 OPTION_GTK_VERSION="none"
 OPTION_GNOME="no"
+OPTION_SCHEDULER="no"
 
 dnl Checks for libraries.
 AC_CHECK_LIB(m, floor,, AC_MSG_ERROR([** math-lib not installed or broken **]))
@@ -353,6 +354,7 @@ if test "$enable_3dnow" = "yes"; then
 fi 
 
 if test "$enable_scheduler" != "no"; then
+       OPTION_SCHEDULER="yes";
        AC_DEFINE(USE_SCHEDULER)
 fi
 
@@ -473,18 +475,46 @@ if test "$enable_dga2" = yes; then
 fi
 AC_OUTPUT(Makefile src/Makefile gnome-support/Makefile gnome-support/terminatorX.keys src/gui_icons/Makefile src/smallknob/Makefile doc/Makefile doc/img/Makefile terminatorX.spec terminatorX.1)
 
+function option_info() {
+       echo "$option support: $option_val"
+       if test "$option_val" != "yes"; then
+               echo "  - If you want $option support get $option from"
+               echo "  -       $option_url"
+               echo "  - and reconfigure terminatorX"
+       fi
+}
+
 echo
 echo configured terminatorX for:
 echo ---------------------------
 echo
-echo "sox support:             $OPTION_SOX"
-echo "mpg123 support:          $OPTION_MPG123"
-echo "mad support:             $OPTION_MAD"
-echo "ogg123 support:          $OPTION_OGG123"
-echo "vorbis support:          $OPTION_VORBIS"
-echo "audiofile support:       $OPTION_AUDIOFILE"
-echo "builtin-wav support:     $OPTION_WAV"
-echo "gtk+ Version:            $OPTION_GTK_VERSION"
-echo "GNOME support:           $OPTION_GNOME"
+
+option=sox; option_val=$OPTION_SOX; option_url=http://sox.sourceforge.net/
+option_info;
+
+echo "mpg123 support: $OPTION_MPG123"
+if test "$OPTION_MPG123" = "no"; then
+echo " - If you want mpg123 support get either mpg321 from"
+echo " -       http://mpg321.sourceforge.net/ or mpg123 from"
+echo " -       http://www.mpg123.de/"
+echo " - and reconfigure terminatorX"
+fi
+
+option=mad; option_val=$OPTION_MAD; option_url=http://www.mars.org/home/rob/proj/mpeg/
+option_info;
+
+option=ogg123; option_val=$OPTION_OGG123; option_url=http://www.xiph.org/ogg/vorbis/
+option_info;
+
+option=libvorbis; option_val=$OPTION_VORBIS; option_url=http://www.xiph.org/ogg/vorbis/
+option_info;
+
+option=audiofile; option_val=$OPTION_AUDIOFILE; option_url=http://www.68k.org/~michael/audiofile/
+option_info;
+
+echo "builtin-wav support: $OPTION_WAV"
+echo "enhanced scheduling support: $OPTION_SCHEDULER"
+echo "gtk+ Version: $OPTION_GTK_VERSION"
+echo "GNOME support: $OPTION_GNOME"
 echo
 echo You can now run \'make\' to compile terminatorX
index 641b811d41acd42941af848c56901c94222873fb..e4d991be07d553ee08b2dd1e29efe5faf6572a34 100644 (file)
@@ -12,7 +12,8 @@ Copyright: GPL2
 URL: http://www.terminatorX.cx
 Source: %{name}-%{version}.tar.gz
 Buildroot: %{_tmppath}/%{name}-%{version}-root
-Requires: gtk+ >= 1.2.5
+Requires: gtk2, libvorbis, audiofile, libxml2
+BuildPrereq: gtk2-devel, libvorbis-devel, audiofile-devel, libxml2-devel, libmad
 
 %description
 terminatorX is a realtime audio synthesizer that allows you to "scratch" on
@@ -92,3 +93,11 @@ find . -name "Makefile*" -print -exec rm -rf {} \;
 %{_datadir}/pixmaps/terminatorX-app.png
 %{_datadir}/pixmaps/terminatorX-mime.png
 %{_datadir}/gnome/apps/Multimedia/terminatorX.desktop
+
+%post
+echo Note: Installing terminatorX \"suid root\" improves terminatorX\' performance 
+echo for non-root users, but poses a potential security threat. See \'INSTALL\' for
+echo details. To install terminatorX \"suid root\" run the following command:
+echo
+echo chmod u+s /usr/bin/terminatorX
+