Muse は Microsoft Windows 用のソフトウェアですが、Wine というソフトウェアを使用することで、Linux 上でも実行することができます。

Wine とは

Wine は、80x86IA-32) CPU で動作する広義の UNIX 上で Windows API を実行するプロジェクトです。

具体的には、LinuxFreeBSDMac OS XSolaris などをターゲットとしているので、これらの全ての OS 上で Muse が動作する可能性があります。

Wine のインストール

Wine HQGet Wine Now と辿って、お使いの Linux ディストリビューション用のバイナリパッケージがあれば、それをインストールします。

なければ、更に SourceForge.net を辿ってソース(Source Packages)を入手します。
ソースからのインストールの場合、

tar jxf wine-0.9.24.tar.bz2
cd wine-0.9.24
./configure
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 .

で幸せになれました(ln -s でもいいでしょう)。

Muse のインストール

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?++ では、かなりのマシンパワーがないと、演奏・表示に多少のもたれが出ます。

Muse にオプションを渡す場合、オプションをクォーテーションで括ってやらないとおかしなことになります
これは、例えば *a というオプションはシェルによって末尾が a の全てのファイルに展開されるからです
これを防ぐために、ダブルクォーテーションかシングルクォーテーションで括ります

wine muse.exe "*a" "*e" "*p" "*s" sample1.mus

ダブルクォーテーションとシングルクォーテーションの働きの違いは、この場合には問題になりませんので、どちらを使っても大丈夫です
2つの働きの違いについては、シェルについての参考書やサイトを参照して下さい

muse コマンドの作製

毎回々々 wine ~/lib/muse/muse.exe hogehoge.mus などと打ち込むのは面倒だし、Muse のコマンドオプションは UNIX のシェルと相性が良くないので、~/bin/muse という下記のコマンドを作ってみました。
chmod u+x ~/bin/muse で実行属性をつけます。
wine 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
  -r    Repeat
  -s    Show score monitor window
  -t    Stay on top
  -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 += "'*r' " if $OPT_r
command += "'*s' " if $OPT_s
command += "'*t' " if $OPT_t
command += "'*x' " if $OPT_x
command += "#{ARGV.join(' ')} #{REDIRECTION}"
system(command)

実行には Ruby が必要です。

最初の 4行をそれぞれの環境に合わせて修正すれば、大抵動作すると思います。

Let's happy musing !


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS