MIDI用の別スレッドを動かしてみたところ、問題なく動いてる。
-
高精度タイマーでスレッド内の間隔秒数を計測できるようにした。
-
実は以前ArduinoでMIDIシーケンサを作っていたんだけど、そのときは割り込み処理でループを流して、タイマーでタイミングを計測して出力してた。
Arduinoの時と同じ作りにできるのであれば、開発難易度はだいぶ下がる。
スレッドを作ったままケアせずアプリ終了するとメモリリークが発生するので、終了時にフラグを立ててきれいに終わるのと、join関数でスレッド終了を待つようにしておけば問題はなさそう。思ったよりもうまく動いてる。
最初再生時に接続命令を入れてデフォルト接続させたため、何故か本体のGM音源しか鳴らない状態だったけど、これも解決。