utoroのJS解説

JavaScriptプログラムの解説。動作条件の説明があるので先頭から読んでください。

音色を選べるようにする

前回は標準のピアノの音で和音が鳴りましたが、今回は音色を変更してさまざまなサウンドで鳴らせるように改良します。下記のリンクを別ウインドウで開いてください。

サンプル2(音色が選べる)

「Sound」というセレクトボタンが追加されています。Jazz-Pluginのインスタンスは初回のみ表示してみましたが以降はすべて非表示とします。Soundを変更して上のボタンを押してみてください。GM音源相当の128音色から選べるようになっています。

ソースを見てみましょう。id「midiSnd」というセレクトを作り、変更が加えられれば「changeSnd()」を実行します。配列「gmidi」に128音色の名前を格納しています。「selSnd」という名前でid=midiSndのセレクトを登録し、それにgmidiの128要素をnew Optionとして一括登録しています。

音色変更を実行する部分である「changeSnd()」は、セレクタの選ばれている番号を「current_snd」に取得し、それを「Jazz.Midiout()」で内蔵音源に送るだけです。要素は「0xc0」がプログラムチェンジ送信で、2つ目がプログラムナンバー(current_snd)、3つ目は常に0を入れます。作成した様々なパラメータを「Jazz.Midiout()」で音源に送ってコントロールするというのが基本パターンです。

これで音色変更もできるようになりました。