easy-web-midi-sequencer-template
- Demo
- 音を鳴らすには、Usageを参照ください
- webpageを開くだけでMIDI楽器を鳴らせます
- バックグラウンドでスロットリングされない
- ソースコードをテンプレートとして利用しやすい、小規模、シンプル、easyな構成
- Windows + loopMIDI + ブラウザ
- 物理
Midi Device
を鳴らせる場合は、loopMIDIなしでもOK
- 他の環境でも、
Midi Device
さえあれば利用可能な想定です
- Chromeで動作確認しています
- loopMIDIのinstallと、port設定
- portは一つ
+
ボタンで登録すれば十分です。
- うまくいかない場合はOS再起動もお試しください。
MIDI楽器
の接続
- 演奏
clone
のちソースを開いてLive Server
を立ち上げる等で、すぐ改造できます
Web MIDI
の先頭portに Note On
を送信します
- Shared Piano を開いておけばすぐ音が出て確認できます
- (Shared Pianoは
Web MIDI
を受信できます)
ソースコードをテンプレートとして利用しやすい、小規模、シンプル、easyな構成
- テンプレートとしてのソースコード利用を楽にすることを優先しています。
MIDI OUTするだけなので、発音部分は別アプリ
- 逆を言えば、
Midi Device
からの入力を受け付けるアプリ(MIDI IN
のあるアプリ)なら、なんでも鳴らせます
複数 Midi Device
があったときは先頭決め打ちでMIDI出力する
- 以下は今後の課題です
- ドロップダウンリストで選択(Shared Pianoの
Midi Device
設定のように)
- 自動設定
- 例えば当アプリを
seq_out
という識別子で識別として、それを含むportをデフォルトで設定する
MIDI OUT
する
- webpageを開くだけで演奏開始する
- 連続的に
Note On
を送信する
- シンプルで利用しやすいソースコードにする
- 演奏規模は最低限にする、例えばド、ミ、ソのランダムフレーズ
- 鳴らなくなったら、できるだけ鳴るように行動することを優先します
Web MIDI
未対応ブラウザや、Midi Device
を検出しなかった場合に、Web Audio
で代替の音を鳴らす方法の検討と実装と提供
Web MIDI
未対応ブラウザの調査と対応
- webpageを開くだけで
Note On
送信開始してよいものか?ユーザー操作を待つことを必須にするか?お作法は?などの調査と考察
- スロットリング問題の調査と解決
Note On
以外の MIDIメッセージ
の送信サンプル
和音
を鳴らす、ch.1だけでなくch.2~ch.16で鳴らす、複数MIDI portを利用して32ch.演奏
する、その他
豊富なDemo Songs
、別のフレーズにする、フレーズを洗練する、その他
- 鳴らす楽曲データをtextarea等から
edit
可能にする
スタンダードMIDIファイル
を鳴らす
MML
を鳴らす
コード進行
を鳴らす(chord2mmlで生成 )
- その他、各種音楽ファイルを鳴らす