--- linuxsampler/trunk/configure.in 2005/07/23 21:55:38 714 +++ linuxsampler/trunk/configure.in 2005/07/24 18:22:56 720 @@ -591,6 +591,12 @@ Uses integer math without any branch will then be converted to floating point value for each sample point. This int->float conversion might hurt on some systems. + intmathabs: + Similar to intmath but uses abs() function. + Depending on compiler and platrofm this could + perform better than integer math as it avoids + an extra integer multiply instruction. + diharmonic: The triangular wave will be approximated by adding two sinusoidials. This solution might especially hurt on @@ -602,6 +608,7 @@ benchmark between the algorithms mentioned above. This will NOT work for cross compilation!], [ if test ! "(" "${enableval}" = "intmath" \ + -o "${enableval}" = "intmathabs" \ -o "${enableval}" = "diharmonic" ")" ; then AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-signed-triang-algo]) else @@ -619,6 +626,12 @@ Uses integer math without any branch will then be converted to floating point value for each sample point. This int->float conversion might hurt on some systems. + intmathabs: + Similar to intmath but uses abs() function. + Depending on compiler and platrofm this could + perform better than integer math as it avoids + an extra integer multiply instruction. + diharmonic: The triangular wave will be approximated by adding two sinusoidials. This solution might especially hurt on @@ -630,6 +643,7 @@ benchmark between the algorithms mentioned above. This will NOT work for cross compilation!], [ if test ! "(" "${enableval}" = "intmath" \ + -o "${enableval}" = "intmathabs" \ -o "${enableval}" = "diharmonic" ")" ; then AC_MSG_ERROR([Unknown triangular wave algorithm for parameter --enable-unsigned-triang-algo]) else @@ -639,6 +653,22 @@ [config_unsigned_triang_algo="benchmark"] ) +AC_ARG_ENABLE(process-muted-channels, + [ --enable-process-muted-channels + Enable processing of muted channels (default=no). + In that mode all MIDI events in the muted channels + will be processed. This will provide information + about the active voices in the muted channels and + will not discard notes, triggered in mute mode, + when the channel is unmuted. But also will reduce + the efficiency.], + [config_process_muted_channels="yes"], + [config_process_muted_channels="no"] +) +if test "$config_process_muted_channels" = "yes"; then + AC_DEFINE_UNQUOTED(CONFIG_PROCESS_MUTED_CHANNELS, 1, [Define to 1 if you want to enable processing of muted channels.]) +fi + ########################################################################### # Automatic Benchmarks (to detect the best algorithms for the system) @@ -663,6 +693,9 @@ elif test "$triang_signed" = "3"; then config_signed_triang_algo="diharmonic" echo "di harmonics" + elif test "$triang_signed" = "5"; then + config_signed_triang_algo="intmathabs" + echo "integer math using abs()" else echo "Benchmark of signed triangular wave algorithms failed!" echo "Maybe you are doing cross compilation? In that case you have to select" @@ -691,6 +724,9 @@ elif test "$triang_unsigned" = "3"; then config_unsigned_triang_algo="diharmonic" echo "di harmonics" + elif test "$triang_unsigned" = "5"; then + config_signed_triang_algo="intmathabs" + echo "integer math using abs()" else echo "Benchmark of unsigned triangular wave algorithms failed!" echo "Maybe you are doing cross compilation? In that case you have to select" @@ -788,6 +824,7 @@ echo "# Override Filter Resonance Controller: ${config_override_resonance_ctrl}" echo "# Override Filter Type: ${config_override_filter_type}" echo "# Assert GS SysEx Checksum: ${config_assert_gs_sysex_checksum}" +echo "# Process Muted Channels: ${config_process_muted_channels}" echo "#-------------------------------------------------------------------#" echo "# Read './configure --help' or file 'configure.in' for details. #" echo "#####################################################################"