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]
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
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 **]))
fi
if test "$enable_scheduler" != "no"; then
+ OPTION_SCHEDULER="yes";
AC_DEFINE(USE_SCHEDULER)
fi
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
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
%{_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
+