メインコンテンツへスキップ
見出し画像

Claude Codeで、オーディオ、MIDI、プラグインをフル装備した自分好みのDAWソフトを作ってみた

    ここまでの経緯

    「AIを使えば、どこまで簡単にDAWを作れるのだろう?」という興味から、DAWソフトの開発を始めて2週間が経ちました。

    最初の3日間は無料版AIを駆使して、基本機能を備えたバージョン1.0を完成。その後、Claude Codeを契約し、機能の追加とデバッグを続けてきました。開発開始から10日目には、当初計画していた機能がほぼ揃い、バージョン2.0になりました。

    今回は、さらに一歩進めて、エフェクトプラグインを自作、MIDI機能を追加することにしました。

    下は、これまでの活動の記録です。

    自前のエフェクトプラグインが欲しい

    開発しているのは、Macで動作する「MyDAW」です。実際に曲を録音してミックスするには、リバーブやEQ、コンプレッサーといった基本的なエフェクトプラグインが必要になります。

    そこで、Claude Codeを使って、MyDAWに内蔵するプラグインを作ることにしました。まずは、使用頻度の高い4種類に絞って開発しました。

    • プレートリバーブ(オーソドックスなリバーブ)

    • チャンネルストリップ(5バンドEQ+コンプレッサー)

    • ステレオディレイ(シンプルディレイ、ピンポン、ダブラー)

    • マキシマイザー(マスタートラック用のファイナルリミッター)

    これらが揃えば、録音したギターなどの音にエフェクトをかけ、各トラックをミックスし、最終的な音量を調整するところまで、MyDAWだけで完結できるようになります。

    バイブコーディングで、すべてをAIに任せる

    開発の進め方は、DAW本体を作ったときと基本的に同じです。

    まず、実現したい機能について大まかな仕様を提示します。そこからClaude Codeと相談しながら具体的な実装仕様を詰め、コーディングはすべてAIに任せます。

    完成したプラグインを実際に操作して動作や音を確認し、想定と違うところがあればフィードバックして修正してもらう。この繰り返しです。

    エフェクトプラグインは、すでに世の中に数多くの製品があります。今回は、まったく新しいものを発明するわけではありません。プロンプトで説明するのが難しい場合は、市販プラグインの画面キャプチャをClaude Codeに送り、「この画面を参考にして作ってほしい」といった指示も活用しました。

    一方、エフェクトの内部処理については、製品ごとに独自の工夫があり、それが音の特徴につながっているはずです。

    私は、ギターペダルをたくさん作った経験があります。電子回路によるアナログですが、EQやコンプは自分で設計したこともあります。

    ただ、今回は、私が知っているような技術的な知識などClaude Codeに与える必要はありませんでした。逆に、より詳細な処理の仕組みや仕様について、Claude Codeから提案を出されたくらいです。

    画像
    開発したプラグイン(EQ+コンプ、ディレイ、リバーブ、マキシマイザー)

    リバーブについては出音にこだわった

    リバーブの良し悪しは、個人的な趣向があると思います。私は、80年代後半に登場したLexicon 480Lの音が好きで、Relab Development のシミュレータプラグインを使っています。Claude Codeに基本的な構造を作らせたあと、10パターンくらいの候補をつくらせ、聴き比べをしながら最も良いものを1つだけ選択しました。

    自分なりのこだわりとしては、リバーブの構造を実際の音響現象に近づけたいと考えました。そこで、時間の経過とともに音の密度が増していくように、ディレイラインのフィードバック経路にAPF(オールパスフィルタ)を組み込むよう、AIに指示してみました。

    さらに、Lexicon 480Lの18ビット内部演算による存在感をもつリバーブの出音に近づけるため、演算器内部でのビット切り捨て処理も入れてみました。

    下は、ボーカルサンプルです。かなり納得できる音になったのではないかと思っています。

    不具合はほとんど発生しなかった

    MyDAWでAUプラグインをサポートする際、Claude Codeはプラグインの仕組みやインターフェースについて詳しく調査していました。そのため、今回はプラグインそのものを開発するにあたって、基本的な仕組みを一から調べ直す必要がなかったようです。

    さらに実装後には、Claude Code自身がサンドボックス環境でテストして不具合を自動修正する様になり、私に動作確認を求める時には、必ず動く様になっていました。

    DAW本体の開発を始めた当初に頻発していた、異常終了やハングアップといったトラブルは、今回はまったく発生しませんでした。

    開発を始めてまだ10日ほどですが、Claude Codeは、すっかりDAWソフト開発のエキスパートになったような印象です。

    さらに3つプラグインを追加した

    あまりに簡単にできるので楽しくなり、さらに3つ追加しました。

    • コーラス/フランジャー/オートパン(オーソドックスなエフェクト)

    • ディエッサー(ボーカルのヒスを弱める)

    • チューナー(ギター、クロマチック)

    画像
    さらに追加したプラグイン

    さらに開発を続けMIDIに対応した

    オーディオ機能が一段落した後、さらにMIDI機能の追加を行いました。4日間を欠けて、自分好みのMIDI機能をサポートしたV4.0を作ることができました。

    画像
    開発したMIDIピアノロール

    自作DAWが、いよいよ実用的になってきた

    DAW本体に加えて、基本的なエフェクトプラグインまで自作できたことで、MyDAWは単に動作するソフトから、実際に曲作りに使えるソフトへと一歩進みました。

    もちろん、市販のDAWやプラグインと比べれば、機能や音質など、これから検証・改善していくべき点はたくさんあると思います。それでも、自分が欲しい機能をAIに伝え、実際に使いながら改善していけるのは、バイブコーディングならではの面白さだと感じています。

    プログラムのコードを自分で書かなくても、アイデアを出し、仕様を相談し、動作や音を確認してフィードバックすることで、ここまで作れるようになりました。

    これからMyDAWで実際に曲を作りながら、使い勝手や音質をさらに改善していきたいと思います。

    MyDAW紹介動画

    Claude Codeを使ってどのようにして開発したか、完成したV4.0がどんな機能を持っているかを示した動画を作成しました。

    開発したソフトの機能詳細を説明したい訳ではなく、AIを使って約1ヶ月かければ、十分に実用に耐えるDAWソフトができることを、体感していただくのが目的です。

    開発した「MyDAW」を試してみてください

    AU/VSTプラグインも動作しますし、プラグインによるレイテンシーや、オーディオインターフェースによるレイテンシー補償も行っています。たった3日間しかやっていないのに、自分でも感動するほど、よくできています。

    MyDAWアプリダウンロード

    DTMに興味があり、Apple Silicon搭載Macを持っている方は、ぜひ試してみてください。この直ぐ下に、3つサンプルプロジェクトが掲載されています。

    画像

    ⚫️ MyDAWアプリ(3.4MB ZIP)
    ⚫️ MyDAW 操作マニュアル(11.8MB PDF)

    MyDAWを使うには、ひと手間必要です

    このソフトはAppleに署名申請を行っていないため、初回の使用時に、ご自身でアプリケーション「MyDAW.app」の実行を許可する必要があります。

    上記のMyDAWアプリ(MyDAW.zipを解凍)を、アプリケーションフォルダに入れてください。
    1. MyDAWアプリアイコンをダブルクリック
    2. 「"MyDAW.app"は開いていません」ダイアログの「?」から、システム設定の「プライバシーとセキュリティ」を開く
     ※自分でシステム設定から開いても構いません
    3.「完了」ボタンを押す
    4. 下図を参考に「セキュリティ」でMyDAW.appの「このまま開く」を押す
    5. 「"MyDAW.app"を開きますか」ダイアログで「このまま開く」を押す
    6. MyDAWアプリが起動する
    ※ これを一度行えば、次回からは直ぐに起動するようになります。

    画像
    セキュリティ画面でMyDAW.appを「このまま開く」

    すぐ試せる サンプルソングプロジェクト

    MyDAWを実際に試してみたい方のために、サンプルソングのプロジェクトを用意しました。すべて、内蔵プラグインのみを使用していますので、MyDAWをインストールすれば、直ぐに試せます。

    【このソフトで録音した5トラックプロジェクト】
    ダウンロードして解凍したら、「FirstTake.mydaw」をMyDAWで開いてみてください。ドラムはWAVのループですが、他のギター、ベースは、このソフトで録りました。MIDIは使っていません。
    ⚫️ 「FirstTake」サンプルプロジェクト(21MB, ZIP, 35秒)

    【16トラックのギターインスト プロジェクト】
    ダウンロードしてZIP解凍したら、「BalloonAdventure.mydaw」をMyDAWで開いてみてください。ギター中心のオリジナルインストです。他のDAWで作った曲から書き出したステムを貼り付け、演奏部分を切り出し編集しています。MIDIは使っていません。
    DTM初心者の方は、SOLOボタンで各パートを聞いてみてください。あまり上手ではない演奏ですが、MIXすると、それなりの曲になることが分かります。
    ⚫️ BalloonAdventureサンプルプロジェクト(99MB, ZIP, 2分10秒)

    【17トラックのボーカルが入ったプロジェクト】
    ダウンロードしてZIP解凍したら、「FuwariYurari.mydaw」をMyDAWで開いてみてください。ボーカル、コーラスの入ったサンプルです。他のDAWで録ったオリジナル曲のステムを取りこみ編集しています。MIDIは使っていません。
    ⚫️ 「ふわりゆらり」サンプルプロジェクト(252MB, ZIP, 4分2秒)

    開発リソース

    開発リソース(プロジェクト、ソースコード、マニュアル、開発書類)は全てgithubに公開しています。

    本体:ToshiSoftware/MyDAW
    エフェクトプラグイン:ToshiSoftware/MyPlugIn

    AIを当たり前のものに感じ始めた

    AIを使ったコーディングを始めて、まだ12日間しか経っていません。それでも、AIを活用したソフトウェア開発の進め方に、だいぶ慣れてきました。

    最初は「なぜ、こんなことができるのだろう」と、AIの能力に驚き、信じられない思いでした。しかし、今ではそれが当たり前のことになりつつあります。

    私はすでに定年退職し、開発の現場を離れていますが、今まさに現役で働いている若いエンジニアたちも、同じような変化を体験しているのだと思います。

    世の中に前例があるものは、誰でも作れる

    今回のプラグイン開発で特に驚いたのは、既製品の画面を見せるだけで、AIがその機能を読み取り、仕様を設計してくれたことです。AI全体の進化もあるのでしょうが、今回使用したモデル「Opus 5.5」の能力が、特に優れているのかもしれません。

    すでに世の中に存在し、インターネットで調べれば情報が見つかるようなものであれば、「これを作って」と指示するだけで、誰でも自分のソフトウェアとして実現できる。そんな時代になりつつあるのだと感じました。

    気になることは…

    今回の開発を通して感じたことは、短期間でこれだけの規模のソフトを1人で開発すると、ソースやデータの中身を自分ですべて確認することはできません。

    例えば、作ったものの中に他者の権利を侵害するものが含まれていないか、自分の個人情報が含まれていないかなどClaudeCodeに確認させましたが、結局は、その結果を信用するしかありません。

    もしも、ClaudeCodeが私の意思と違うことを行っていたら、これを見抜くことは難しいと思います。

    最近、「AnthropicのAI暴走」のニュースが報道されました。LLMの思考は人間とは根本的に違い、与えた文脈を読み取って次に来るべきものを予測するだけです。良心に従って行動する訳ではないので、過度に信用することは避けたいと思っています。

    さいごに

    若い頃から、いつかは自分で作ってみたいと思っていたDAWソフト。それが、AIを使い始めてから1ヶ月で、あっけなく形になってしまいました。

    これからは、すでにあるソフトを再現するだけでなく、何か新しいものを考え、試作するための道具として、AIを活用していきたいと思っています。

    最後まで読んでいただき、ありがとうございました。

    著者:ToshiMUSIC


     
     
    定年退職後も好奇心の向くまま、ギターや音楽、DIY、AIなどを楽しむ、元エンジニアです。 ブログ:https://toshi.life.coocan.jp/blog/ ギターを弾き始めて、50年近くになります。最近、費用をかけずに、自分好みの2本のギターを作ってみました。

    あなたへのおすすめ