Muse は Microsoft Windows 用のソフトウェアですが、Wine というソフトウェアを使用することで、Linux 上でも実行することができます。
Wine は、80x86(IA-32) CPU で動作する広義の UNIX 上で Windows API を実行するプロジェクトです。
具体的には、Linux、FreeBSD、Mac OS X、Solaris などをターゲットとしているので、これらの全ての OS 上で Muse が動作する可能性があります。
Wine HQ → Get Wine Now と辿って、お使いの Linux ディストリビューション用のバイナリパッケージがあれば、それをインストールします。
なければ、更に SourceForge.net を辿ってソース(Source Packages)を入手します。
ソースからのインストールの場合、
tar jxf wine-0.9.23.tar.bz2 cd wine-0.9.23 ./configure --with-x make depend make su make install exit
という手順でいけると思います。
もちろん、事前に README と ./configure --help をよく読んで下さい。
インストールが終了したら、
winemine
を実行してみましょう(マインスイーパです)。
実行してみると、延々と、
Font metrics: xx.x% done
というメッセージが出て、何回か 100% に達してからやっとマインスイーパが実行されます。
何度やっても、毎回この作業が繰り返されます。
私は、
cd ~/.wine/drive_c/windows/fonts/ cp /usr/X11R6/lib/X11/fonts/TrueType/ipa*.ttf .
で幸せになれました。
MUSE WORLD → ダウンロード と辿って、Muse Ver X.X をダウンロードします。
museXXX.exe を適当なディレクトリで展開します。
私は、~/lib/muse/ にインストールしました。
mkdir -p ~/lib/muse cd ~/lib/muse lha e ~/muse491.exe rm ! $
早速、Muse を起動してみましょう。
wine muse.exe
ハードウェア音源があって適切に設定されていれば、Windows 環境と同様に音がなるはずです。
音源がなくて音がならない場合、一旦 Muse を終了して、
timidity -iA &
として、TiMidity?++ を ALSA シーケンサ クライアントモードで起動してから上記を実行します。
timidity -iA でエラーが出る、つまり、TiMidity?++ のコンパイル時に ALSA シーケンサ クライアントモードインタフェイスを組み込んでいない、または、そもそも TiMidity?++ がインストールされていない場合には、適切なパッケージを拾ってきてインストールするか、TiMidity++ からソースをダウンロードしてきて、./configure に --enable-audio=alsa --enable-alsaseq のオプションをつけてコンパイル・インストールして下さい。
wine muse.exe sample1.mus
で、最後の拍手(applause.wav)が再生されない場合、
winecfg
で、オーディオ タブを選択して、ALSA Driver にチェックを入れてみましょう。
ただし、Wine + Muse + TiMidity?++ では、かなりのマシンパワーがないと、演奏・表示にもたれが出ます。
毎回々々 wine ~/lib/muse/muse.exe hogehoge.mus などと打ち込むのは面倒だし、Muse のコマンドオプションは *a などの形式で、UNIX のシェルと相性が悪いので、~/bin/muse という下記のコマンドを作ってみました。
chmod u+x ~/bin/muse で実行属性をつけます。
muse.exe *a *e *p *s sample3.mus なら muse -aeps sample3.mus とまとめて指定できます。
#! /usr/local/bin/ruby WINE = 'wine' MUSE = '~/lib/muse/muse.exe' REDIRECTION = '> /dev/null 2>&1' def usage() print <<EOM Usage: muse [options] [filename] Options: -a Flip score automatically -e Exit Muse just after the performance -f Show finger meter dialog -h Show this help -i Run Muse with minimized window -m Show member color dialog -o Compile muse data file into MIDI -p Start performance after activation -s Show score monitor window -x Inhibit multi-activation EOM end require 'getopts' command = "#{WINE} #{File.expand_path(MUSE)} " unless getopts('aefhimopsx', 'help') abort("Invalid option(s).\nTry muse --help for more information.\n") end if $OPT_h or $OPT_help usage() exit(0) end command += "'*a' " if $OPT_a command += "'*e' " if $OPT_e command += "'*f' " if $OPT_f command += "'*i' " if $OPT_i command += "'*m' " if $OPT_m command += "'*o' " if $OPT_o command += "'*p' " if $OPT_p command += "'*s' " if $OPT_s command += "'*x' " if $OPT_x command += "#{ARGV.join(' ')} #{REDIRECTION}" system(command)
実行には Ruby が必要です。
最初の 4行をそれぞれの環境に合わせて修正すれば、大抵動作すると思います。
Let's happy musing !