* 機能 [#function] - loadSMF - play() - stop() - suspend() - resume() - fadein() - fadeout() * オブジェクト [#object] - WAPlayer.js - WAGenerator.js (PCM と SoundFont 用、後で FM 音源も) - WAModulator.js (主に pitchbend 用) - SMF.js, MFi.js, MML.js * プロセス [#process] - WSPlayer.loadSMF(smf); -- > 時系列のシーケンスデータを作成 -- > 利用する楽器の数を記録 - WSPlayer.setup(nMultiprex) -- > 同じチャネル内で同時に鳴らせる数を指定 -- > それを前提に WebAudio のノードを繋げる。 -- > 但し、全 gain を 0 にして音が鳴らない状態で * 発火 [#fire] -- > ボタンを押された所で全 note を on にする。 * play [#cb9ce049] -- > シーケンスデータから定期的に、かつ少し早いタイミングで AudioParam を設定していく。 -- > 初めに全ノードを設定して使いまわすので、GC は要らない。 |