WebAudio の機能を断片的に引き出す。というだけのノリで付けた名前。

  • MIDI が鳴らせる (とりあえず PSG モードで)
  • サンプリング音が鳴らせる
  • サスペンドやリジュームが出来る
  • フェイドイン、フェイドアウトが出来る
  • 秒単位でシークが出来る

仕様

オブジェクト

  • WAFrag
    • 全体のコントローラー
  • WAPlayer
    • プレイヤー (MIDI メッセージを送る)
  • WASynth
    • シンセサイザー (MIDI メッセージを解釈して音を鳴らす)
  • WAGen ジェネレーター
    • 音声生成器 (とりあえず PSG のみ)
  • WACont コントローラ
    • MIDI コントローラー相当

内部仕様

  • 内部インターフェースは WebMidiLink のメッセージフォーマット
    midi,cc,nn[,nn[...]]
    - MIDI chunk の内 deltatime より後ろのバイナリを , 区切りで 1 byte ずつ 16進文字列で。

使用例

wafrag = new WAFrag();
wafrag.loadSMF(url);
button => wafrag.start();

メソッド

予定

loadSMF(data or url), loadMP3(data or url), loadSMAF(data or url);
progressListener()
play(), stop()
rewind(), seek(secs);
suspend(), resume()
fadeout(secs), fedain(secs)
midiListener(); => event.midi (歌詞表示や、鍵盤on/off表示に使いたい)