前回の続き。
リアルタイムにスペクトログラムを表示するVST3プラグインに、音高の軸をC4などのノート名の代わりに、ピアノロールを表示するようにした。

ピアノロール表示処理
白鍵は、オクターブを7分割して表示する。
黒鍵は、半音と同じ位置に白鍵の半分の幅で表示する。
この場合、黒鍵の中心は、白鍵の境界の位置にならない。
実際のピアノでも白鍵に対する黒鍵の位置はノートによって異なっている。
GPT-5でコード生成できなかった件
GPT-5でピアノロールを描く処理のコード生成を試みたが、何度やってもうまくいかなかった。
失敗例:
- 白鍵を12分割する
- オクターブが画面に収まる範囲しか描画しない
- 補助線位置とずれる
画面の一番上のノートが必ずしもオクターブの境界ではない条件が難しいらしい。
for (int i = 0; i < 7; ++i)のようなループを記述しがちで、オクターブが収まる範囲しか描画できなくなる。
結局、処理方法を具体的に指示して、生成されたコードを手直しして取り入れた。