作成日
2016/8/7
目的
- MIDIファイルの仕様の理解
- BlenderとPythonの学習
内容
MIDIファイルのバイナリを読み込んで解析し、ノートオン、ノートオフ情報に従って、対応する音階の鍵盤オブジェクトのトランスフォームにキーを打ち込みます。
感想
4/4拍子でテンポ120、分解能が480だった場合、1秒が960分割されます。鍵盤を連打する場合、鍵盤のオンオフが960分の1秒で起こる可能性があり、24fpsや30fpsでは同フレームで鍵盤のオンとオフが上書きされ、鍵盤が押しっぱなしになる、もしくは音が鳴ってるのに鍵盤が動かないという状況がよく起こりました。
キーを打つ前に鍵盤の状況を判定し、必要であれば直前のフレームに戻ってキーを打つ処理が必要になります。