「自分好みのDAW環境をDIYする共通プラットフォーム」…を目指している
※画像は2026年3月9日時点
論文等でこのリポジトリを使用する場合は、参考文献(.bibファイル想定?)に以下の文献を引用してください、とのこと:
@inproceedings{buffa2023wam,
title={WAM-studio, a Digital Audio Workstation (DAW) for the Web},
author={Buffa, Michel and Vidal-Mazuy, Antoine},
booktitle={Companion Proceedings of the ACM Web Conference 2023},
pages={543--548},
year={2023}
}このプロジェクトは、WAM-studio (Copyright (c) 2023 Antoine-Vidal-Mazuy) をベースにしています
元のコード部分には MIT License が適用されます(詳細はLICENSE.origを参照してください)
ただし、私(No.0)が追加・変更した部分については MIT No Attribution (MIT-0) を適用します
したがって、私の著作権を表示する義務はありませんが、責任は負いかねます(詳細はLICENSEを参照してください)
run_dev.cmdをダブルクリックするか、ターミナルで.\run_dev.cmdを実行
シェルでsh run_dev.cmdまたはbash run_dev.cmdを実行
※注意!:
初めてコンパイルする際にものすごく色々インストールされるので、ウェブ版に比べてファイルサイズがかなり(4~8GBくらい)増えることが予想されます
ストレージに20GB以上余裕のある方以外は非推奨です
Rust環境(cargo)がインストールされている必要があります
- rustupのサイトから
rustup-init.exeをダウンロードしてきて実行してください
また、Windows環境でビルドエラー(linker link.exe not found や cannot open input file 'kernel32.lib')が発生する場合は、以下のツールが必要です
(※MSVCの前提条件というページにほぼ同じことが書かれています):
-
Visual Studio Build Tools 2022(「C++によるデスクトップ開発」ワークロード)
-
Windows 10/11 SDK(Visual Studio Installerの「個別のコンポーネント」からインストール可能)
- 「C++によるデスクトップ開発」にチェックを入れた後、画面右側のオプションはこのチェックだけで動きます
-
各項目のインストールが終了したら、ターミナルで
npm run desktopを実行- フロントエンド、バックエンド、そしてTauriアプリウィンドウが同時に起動します
以上でアプリケーションが実行されるはず
ブラウザで http://localhost:5002 にてフロントエンドにアクセスできる
(自分でpublicの.envファイルを変更した場合は、http://localhost:[任意のPORT]になるので注意)
変数を変更する必要がありましたら env.md を参照のうえ、適宜書き換えて下さい
→ docker.md を参照してください
- DAWの画面内に対応するTypeScript(
.ts)ファイルをドラッグアンドドロップする - 「DAWIYプラグイン」ウィンドウ → 手動でインストール → エクスプローラーを開いて対応する
.tsファイルを選択
DAWIYプラグイン開発ガイド(開発者さん向け)
だいぶ大まかやけど・・・
-
ピアノロール
- ノートの追加・削除
- 再生バー
- ノートの伸び縮み
- 直感的な範囲選択
- ショートカットキー
- ベロシティレーン
- etc.
- まだまだ改良の余地あり
-
dawprojectファイルの入出力機能の追加
- dawprojectを読み込み、プロジェクトとして展開
- DAW上のイベント等を読み取り、
.dawprojectに出力
-
オートメーション機能
- WAM-Studioの時点で元々実装されてはいたが、仕様をよりCakewalkっぽいものに寄せてみた
-
VSTプラグインに対応
- まだまだ不安定。VSTによってはクラッシュする可能性アリ
-
DAWIYプラグインという概念を用意、実装
- DAW の入出力・UI・操作等に介入する処理を拡張
- ノート,オーディオ,パターンの生成
- 既存のノートやオーディオデータを選択・加工
- 楽曲情報の可視化・分析
- 外部/独自ファイル形式の設計
- 外観の変更,操作性の拡張
- TypeScriptで自作可能
- 指定したディレクトリ内部にファイルを配置することで利用可能
- DAW の入出力・UI・操作等に介入する処理を拡張
-
作成例
- Memo / Sticky Notes
- 画面上にフリーハンドで線を描いたり、テキストボックスを自由に配置
- Stochastic Note Generator
- 確率的に音符を配置しメロディを生成
- Sample IO & UI Plugin
- 独自のファイル形式(. sampletext)の入出力に対応
- Memo / Sticky Notes
-
プラグインのパッケージマネージャーのプロトタイプも実装
-
機能の自由な追加・削除には程遠い
- サーバとの連携・インストール等々・・・ 課題は山積み
-
AIアシスタント機能を実装
- GeminiやOpenAIのAPIを利用
- 用途1. プラグイン開発のバイブコーディング
- 自然言語で要望を入力
- LLMがコードを生成
- ユーザが承認
- .tsファイルが自動生成される
- ページをリロードするとプラグインとして反映される
- 実行→テスト
- 楽曲制作の補助
- 自然言語で要望を入力
- LLMが自動的に、
- メロディの生成
- トラック名の変更
- 等、楽曲の情報に介入
- ProjectDAWIY - GriCo: Excel VBAを用いた確率的自動作曲システム(EC2025)
- ProjectDAWIY - GriCo: 自分好みのDAW環境をDIYする共通プラットフォームの構築に向けて(MUS144-夏25)
- ProjectDAWIY:自分好みのDAW環境をDIYする共通プラットフォームの構築
私は趣味でDTMをやっているのですが、DAWを使っているうちに、いくつか課題点や問題点を考えるようになりました。
まず、DAWごとに操作感や拡張子やフォーマットなどの環境が異なるため、共同で音楽制作を行うのが難しい、と思いました。
そして、DAWによってはサービスを終了してしまうので、それによって今まで使い慣れてきたDAWを手放すことになり、新しい環境で1から制作をやるのは中々面倒です。
次に、機能やUIなどで、「もっとこうだったらいいのに...」という不満を感じることがあります。
- DAWによってはある程度設定を変更することで操作感や見た目を変えることが出来ますが、機能単位で、自分好みにカスタマイズ出来ると尚嬉しいな、と思いました。
- もちろん、VSTプラグイン等のエフェクターやインストゥルメント系のプラグインは豊富にあり、多くのDAWではそれらが使えるようになっているので、音色や効果についてはユーザーはかなり自由に操作することができるのですが、もっと、制作フローというか、ワークステーションそのものを思い通りにカスタマイズ出来るといいな、ということです。
これらの課題を解決するために、私は、「自分好みのDAW環境をDIYする、共通プラットフォームの構築」という研究テーマを掲げました。
このプラットフォームを私はDAWとDIYの造語で「DAWIY」と名付けました。
ユーザーそれぞれが自分好みの音楽制作環境を自ら構築出来るようにしたい、ということです。
要は音楽版のAviUtlを作りてぇなぁってことですよ
- DAWでもユーザ主導の設計・展開を!
- 誰もが機能を追加・改良できる「DAWツールキット」を開発したい
- もっと思い通りに、もっと手早く、もっとわかりやすくやりたい
- もっと自由に音作りがしたい!
- 作曲を、もっと楽しく!
- クリエイターが理想の環境を自力で手に入れ、音楽の可能性をさらに探究できる未来を目指す
やや具体化して要件をいくつか挙げるとするなら、
- 試したい新しい機能の自由な取捨選択が可能であること
- AviUtlのプラグインのノリ。機能の開発も自分たちで出来ちゃう!
- パッケージマネージャーがあると嬉しい
- GUIを柔軟に調整出来ること
- ショートカットキーなど、馴染みのある操作が可能であること
- なるべくPCスペックに優しく、またOSによる不自由(Windows・Macだから導入出来ない、など)が少ないこと
- 非プログラマーであっても、なるべく直感的に機能の追加・削除やUIの調整が行えること
などです。
理想形としては、「2人のDTMerがいた時に、それぞれ全く違う見た目・制作環境に見えるのに、実は内部的には同じフォーマットのプロジェクトファイルで動作しており、容易にファイルの共有や共同編集が出来てしまう」というイメージです。
モチベアップのためにも具体的に書き出してみよう(出来そうか出来なさそうか既にありそうかどうかに関わらず)
- DAWにMIDIアニメーション的な要素を追加
- ピアノ系の動画みたいな良い感じの動画がさっと作れるといいよね
- ピアノロールの上をちびキャラが走るとか良いのでは?
- ピアノロールを操作可能な状態でそのまま縦にしてみたりとかね
- 楽譜の作法をDAWに持ち込むシリーズ
‐ MIDIノートを音符表記(♪)にする
- 楽譜の「繰り返し記号」のように、特定の再生位置に来たら自動的に別の再生場所にジャンプする
- MuseScoreとか、楽譜エディタ系のほうで作曲してた人が、何らかの理由でDAWを利用しなければいけなくなった時に助かるかも?
- UTAU-歌声合成ツール、NEUTRINOなど、音声合成ソフトウェアでのマルチトラック化
- というかDAWの中で直接いじりたいよね(スタンドアロンのものが割とあるため)
- ピアノロールに音素を打ち込めるようにできないかしら
- というかDAWの中で直接いじりたいよね(スタンドアロンのものが割とあるため)
- メロディの確率的生成
- GriCoでやった通りではある メロディのポン出しや、アイディア出しに使える?
- とにかく、「新しいメロディ」なるよくわからないものを模索していた
- パートのどこかに実験的に組み込むことで面白い効果があるかもしれない
- AIに操作を代行させる
- ウェブ系なら比較的やりやすいかもしれない
- オーディオを生成してもらう、というよりは、「こういうエフェクトをかけたいんだけど手持ちのVSTの中から探してー」とか「ここからここまでのトラックに一括でこういう処理をしたいからやってー」とか「ここに適当にベース入れといてー」とか、自分にとってやりたくない、めんどくさい操作が仮にあったとしよう。それを代行してもらうことでモチベをなるべく下げずにやりたい操作に集中出来るのではないだろうか
- UIの中にGIFを仕込んだり、イラストを入れたり、めちゃめちゃヲタクチックに見た目を魔改造
- あんまり俺はやるほうじゃないけど、時々PCをこういう風にヲタク全開にしてる人いるじゃない。DAWもそういう見た目に改造出来たりしたらやる気出るんじゃない?(ピアノロール画面の背景とかにイラストを薄く差し込む、などなど)(ピアノロールの上をキャラに走らせる、とかも面白いかもしれない)
- REAPERは既にプラグインなどの発達もあり結構UIいじれる印象
- VSTプラグインをお手軽に試用する機能
- 新しいプラグインが発売された時とかに、プロモーション動画とかよくあるけど、それだけじゃどういう使い勝手なのか、とか、実際自分が求めているものなのか、とか、わかり辛いところがある。
- なので、無料トライアルとして、エフェクターなりインストゥルメンタルなり、一旦挿せる!
- ただそれを試用している状態なら音声のエクスポートはできないなどで制限をかける、購入までのフローを構築
- 申し込んだプラグイン、会社など、そのリストに登録されたものだけを試用出来るようにする(世の中の全てのVSTプラグインを試用出来るようにしろと言っているわけではない)
- 宣伝にもなるし、トライアルから購入までをDAW内でシームレスに出来ると、売上も上がるんじゃないかな(希望的観測)
- ピアノロールを微分音等のように音律をいじれるようにする
- 現在の微分音作曲環境は厳しい、手間がかかる、めんどい
- Ableton Liveとかならそれらしいことが出来るみたい?
- もっとお手軽に直感的に微分音作曲が出来るようにしたい
- ピアノロールのそれぞれのHz等を細かく指定出来たりすると良いのではないか
- インストゥルメンタル側も対応している必要がある
- 駒沢大が関係のあることをやっていたはず
- 現在の微分音作曲環境は厳しい、手間がかかる、めんどい
- ピアノロールからピアノ要素を消す、アナログに周波数を変化させられるようにする(ピッチを描く!)
- もう出来るプラグイン自体はあるはず
- 要はCeVIOとかならピッチが描けるけど、それの楽器版をやりたいってこと
- ヴァイオリンやギターなどの弦楽器ならわかりやすいと思う
- ピアノとかドラムとか、本来音程がデジタル的なもの(?)でピッチを曲線にすると新しい音作りが出来るのではないか?
- これの応用で、SVGとか、PNGとか、画像ファイルなどを取り込んでピッチに変換し、音にしてしまう、というのは、そういうコンセプトの曲とかMVとかならアリなのでは
- MIDIアートの亜種、もっと解像度高い版?
- これは既にありそう
- 再生する度に演奏が(MIDI配列などの大規模なものから、若干響きが変わるみたいな軽度のものまで)変化する音源の作成
- バイノーラルなど、立体音響、3D音響などの制作をもっと手軽に
- 現行のDAWでも5.1chとか割とあるが、有料のものが多い印象
- これは実際そこまで触れてないのでにわか状態、そこまで実現したいのかどうかもわからん
- フォルダーに入ってる音源達の波形を分析して、元のオーディオに似た波形を毎秒探してコラージュして似たようなオーディオを再生成する、自動音MAD製造機
- こいつはVSTプラグインのノリな気もするが、まぁブレインストーミングなので...
- 純粋にマクロ機能が欲しい
- AI代行でも似たようなことは言ったが、VBAのノリで、手動でも出来る操作を記憶させて、関数を選択して一括で自動的に実行してもらう、ということが出来ると嬉しいんじゃないだろうか
- コミュニティでマクロを共有なんかあるとより良い
- AI代行でも似たようなことは言ったが、VBAのノリで、手動でも出来る操作を記憶させて、関数を選択して一括で自動的に実行してもらう、ということが出来ると嬉しいんじゃないだろうか
- VSTプラグインのツリー構造をもっとわかりやすく
- プラグインマネージャーでいくらでも出来るという意見は首肯。これは私が手を抜いているところが多分にありますごめんなさい
- ただ、プラグインのサムネイルを表示、というかですね、パット見でどんなプラグインなのか、どういう機能があるのか、今欲しいやつなのかがわかると嬉しいと思うんですよ
- 現行の作業だと一旦挿入して起動させて触ってみてやっとどういう働きをするかがわかるのでね
- それこそLLMを組み込んで作曲を実践しながら音楽理論とかDAWの使い方とかの講座を家庭教師みたいに個々人に合わせてフレキシブルに出来たら面白いかもね
- とにかく、最近Copilot君とかLLMがPCを操作出来るムーブメントが来ているので、そのままLLM君がDAWを操作出来る、という時代が来れば得られるものは大きいと思っている
- オンライン同期リアルタイム同時共同音楽制作(アホみたいなネーミング)
- scrapboxとか、wordとかみたいに、共同で編集出来たら面白いかもしれない
- 実装には非常に困難を伴う
- 動画編集、MV制作などと合体
- 制作する動画にMIDIの情報をリアルタイムに反映させたり、打ち込んだ歌詞をそのまま字幕情報として利用するなどして、今よりも楽にMVもどきが作れるかも
- DAWを録画してちょっと編集して投稿、みたいな動画結構あるじゃないですか。あれをもっと華やかに出来ればなーとか
- デイリーミッション的なものをつけてみる?
- やはり毎日コツコツやるのが大事なので、チェックボックス的な?デイリーミッション的な?報酬はよくわからんけど
- 少しずつでもいいからちょっとずつ進める、進めざるを得ない、といった状態は欲しいかもしれない
- 意見は随時募集。要はもっと楽して思い通りの曲が作りたいんですよ、作曲の美味しい場所だけ食べていたいんですよ、人間って怠惰なんですよ、そんなもんすよね
- 実は大半の機能がMaxで出来てしまうのではないかという恐怖が常につきまとい続ける
- 「既存のこれを使えば出来そう」というものが見つかり次第書き込みたいところ
- とにかくかゆいところに手を届けようぜ




