TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

CQTでスペクトログラムを描く その10(拡大縮小)

自作スペクトログラム解析VST3プラグインにマウスホイールによる拡大縮小とスクロール処理を実装した。

はじめ解析範囲をVSTのパラメータに使用としたが、マウスホイールの方が操作しやすいのでそちらで実装することにした。

操作

  • Ctrl + ホイール → 垂直方向のピッチ拡大・縮小
  • Shift + ホイール → 水平方向の時間拡大・縮小
  • 修飾キーなし → 垂直スクロール(表示位置の移動)

実装

解析範囲を動的に変更するのは処理が複雑になるため、表示範囲のみ変えることで対応した。

既存の描画処理にオフセットを加算して、縮尺の係数を掛けるだけで対応できた。

結果

拡大して、特定の音域にスクロールして、マウスでハイライトすることで、採譜が行いやすくなった。

まとめ

拡大縮小とスクロールを実装した。

これで、実装したい機能はほぼ実装できた。

Gumroadで配布しようと思っていたが、payoutの設定がうまくいかず別の手段を検討している。