MidiPlayerとWeb_Jukeがある。前者はJavaスクリプト、後者はPerlで書かれている。一長一短だが基本はおなじである。自動演奏だけのシンプルなJavaスクリプトもある。
MidiPlayer
概要
・midi形式の曲を登録して、選曲・演奏できる。MidiPlayerをクリックすると180x120のポップアップ・ウィンドウに表示される。
・演奏したい曲は、select.htmのなかのスクリプトに直接書く。qmid:midiファイル名、qname:曲名(演奏画面に表示される)、qtime:演奏時間を秒単位で書く(この間隔で自動的につぎの曲の演奏に移る)
【参考】
・日本のhttp://CGIScriptMarket.com/から無料配布されているWeb_JukeはPerlで書かれており、プラグイン・プレイヤにYamahaを使っている。このサイト(http://www.yamaha.co.jp/xg/)は2004年3月に閉鎖された。ただし、Web_JukeのCGIは問題なく動作する。ただし、演奏開始のたびに「ActiveX・・・」を聞いてくるのが煩わしい。
・MidiPlayerでは、Web_Jukeにはない連続演奏の機能があるのがよい。一方、Web_Jukeでは曲の登録・削除がオンラインでできるので便利である。
スクリプトの入手と設置
・Javascript Kitサイト(http://www.javascriptkit.com/)から提供されており、個人的に改造し使用できる。
・入手した select.htm と下記のスクリプトをHEADに書いたHTMLファイルをおなじフォルダーに保存する。
・このままだと演奏のたびにブラウザーがActiveXを使うか?と聞いてわずらわしい。スクリプト部分を別のmidiplayer.jsファイルにおいて呼び出すように改造する。
<SCRIPT><!--
window.open("select.htm","OmegaMidiPlayerWin","width=180,height=120")
//-->
</SCRIPT>
Web_Juke
・http://CGIScriptMarket.com/から無料配布されている。
・web_juke.cgi,
jcode.pl, web_juke.datをおなじフォルダーに保存する。
・web_juke.cgiの属性は700にする。
Sample
Auto BGM
・midiファイル名をBGM配列に書くだけで自動的に連続演奏してくれるシンプルなスクリプトです。Sample
BGM = new
Array(3);
BGM[0]="abe.mid"; // 最初に演奏するmidiファイル名
BGM[1]="akaikutu.mid";
BGM[2]="aogeba.mid"; // 以下同様にmidiファイル名を指定
maxSound
= 30; // 最大サウンド番号
function setBGM()
{
soundNo =
Math.floor(Math.random()*maxSound);
document.write("<EMBED
SRC='",BGM[soundNo],"' autostart='true' volume='50' width='145' height='50'
panel='1' save='true' repeat='true' loop='true'
controls='console'>");
}