Pure Dataで書いたパッチをNTS-1 mkII用ユニットに変換するWebアプリを公開しました

前回紹介した、Pure Data→logue SDK変換ツール(hvccのexternal generator)のNTS-1 mkII対応をWebアプリ化しました。基本的には、logue SDK v1用のWebアプリを拡張して、ディレイ等の複数のタイプのユニットに対応させたものです。

こちらからアクセスできます。

Pure Data to NTS-1 mkII

このWebアプリが使っているhvcc用の外部ジェネレータや、サンプルのPure Dataパッチも以下で公開しています。

GitHub - boochow/hvcc_nts1mkii
Contribute to boochow/hvcc_nts1mkii development by creating an account on GitHub.
GitHub - boochow/nts1mkii_hvcc_examples
Contribute to boochow/nts1mkii_hvcc_examples development by creating an account on GitHub.

以下は個人的な開発メモです。

今回このWebアプリは、今後のNTS-3対応ができるだけ楽になるように、少し全体を手直ししました。

具体的には、実際の変換作業(hvcc→ビルド→zipファイル作成)を行うcelery workerは汎用(NTS-1 mkII以外のプラットフォームでも、稼働中の同一workerを利用可能)にしました。プラットフォームごとの違いはフロントエンドのHTMLだけに現れ、実際の内部処理は同じプロセスが走ります。

フロントエンドのHTMLも、テンプレートベースでタイトル、ロゴ画像、ユニットタイプ選択などを差し替える形にしています。

実は以前公開したprologue / minilogue-xd / NTS-1用のWebアプリも、内部的には今回のタイミングでこの新しいバージョンに差し替えています。

なお、こちらの記事で書いた、mapファイルからのメモリフットプリントの推定値出力も追加しました。NTS-1 mkII向けのlogue SDKでは、ユニットのサイズ制限を超えていても普通にビルドが完了してしまうので、この機能は重要性が増しています。

今回もChatGPTにはだいぶお世話になりました。機能追加に際して複数個所を整合性を保って修正するような作業は、やはりLLMが良いですね。

なお、今回の開発でdevinを使うかどうか迷ったのですが、今回は仕様そのものが若干流動的だったこともあり、基本は自分が作業してChatGPTが補助、という体制にしました。

コメント