マルチトラック音楽録音アプリケーション — Version 0.1.1
2026-04-13
Musician's Canvasは、デスクトップPC向けのマルチトラック音楽録音アプリケーションです。マイクやライン入力デバイスからのオーディオ録音、キーボードやコントローラーからのMIDI録音、そしてすべてのトラックを単一のWAVまたはFLACファイルにミックスダウンする機能をサポートしています。コンパニオンアプリケーションであるVirtual MIDI Keyboardは、MIDIノートを送信するためのソフトウェアピアノキーボードを提供します。
Musician's Canvasは、デジタルオーディオワークステーション(DAW)に一般的に見られる機能を提供しながらも、使いやすさを重視して設計されています:
ビルドディレクトリまたはインストール先からmusicians_canvas実行ファイルを起動します:
./musicians_canvas
初回起動時、アプリケーションは空のプロジェクトで開きます。録音を開始する前にプロジェクトディレクトリを設定する必要があります。
起動時、アプリケーションは保存済みのテーマ(ダークまたはライト)を適用し、以前使用したプロジェクトディレクトリにproject.jsonファイルが含まれている場合、プロジェクトは自動的に読み込まれます。
プロジェクトディレクトリの設定: ウィンドウ上部の「Project Location」フィールドにフォルダのパスを入力するか、参照して選択します。ここに録音ファイルとプロジェクトファイルが保存されます。
トラックの追加: + Add Trackボタンをクリックします。デフォルト設定で新しいトラックが表示されます。プロジェクト内の唯一のトラックでまだ録音されていない場合、自動的に録音待機状態(アーム)になります。
トラックの命名: 「Options」ボタンの横にあるテキストフィールドに名前を入力します。この名前は録音されたオーディオファイルのファイル名として使用されます。

メニューバーのすぐ下に、クイックアクセスボタンを備えたツールバーがあります:

プロジェクトファイル(project.json)には、トラック名、タイプ、MIDIノート、オーディオファイル参照、およびすべてのプロジェクト固有の設定が保存されます。オーディオファイルはproject.jsonと同じディレクトリに保存され、トラック名にちなんで命名されます(例:My_Track.flac)。
未保存の変更がある状態でアプリケーションを閉じると、終了前に保存するかどうかを確認するダイアログが表示されます。
プロジェクトが開いている間、ファイルマネージャー(Windows エクスプローラー、 macOS Finder、Linux のファイルマネージャーなど)から 1 つ以上のサポートされた オーディオファイルを Musician's Canvas のウィンドウに直接ドラッグして、新しい オーディオトラックとして追加できます。
.wav および .flac。他のフォーマットのファイルは
自動的にスキップされ、最後にどのファイルがスキップされたかを示すダイアログ
が表示されます。Bass Line.wav をドロップすると「Bass Line」という
名前のオーディオトラックが作成されます。各トラックはAudio(マイク/ライン入力録音用)またはMIDI(キーボード/コントローラー録音用)のいずれかに設定できます。
トラックタイプを変更するには:
これによりトラック設定ダイアログが開き、入力ソースを選択できます。

各トラック行には以下のコントロールがあります:
プロジェクトにトラックが1つだけあり、そのトラックがまだ録音されていない場合、自動的に録音待機状態(アーム)になります。これは、新しいプロジェクトに最初のトラックを追加した場合と、単一の空トラックを持つ既存プロジェクトを開いた場合の両方に適用されます。
録音されたオーディオは、トラック名にちなんだFLACファイルとしてプロジェクトディレクトリに保存されます。
録音中および再生中は、誤操作を防ぐためにすべてのインタラクティブコントロール(トラックボタン、設定など)が無効になります。
オーディオトラックには Options の直下に エフェクト ボタンがあります。トラックエフェクト ダイアログで、そのトラックの録音用 順序付きエフェクトチェーン を組み立てられます。

リバーブ、コーラス、フランジャー、オーバードライブ/ディストーション、アンプ&キャビネット(アンプ種別、キャビネット、ゲイン、低/中/高域、エアー、ミックスなどのモデリング)に加えて、ビブラート(トレモロ)も追加できます。
ビブラート(トレモロ)は、Fenderアンプで“Vibrato”と呼ばれることの多い 音量の周期的な揺れ(トレモロ) です。Speed で揺れの速さ、Intensity(Depth)で揺れの深さ(控えめな揺らぎ〜強い刻み)を調整します。
アンプ&キャビネット の画面例:


エフェクトは 録音停止時 に、通常のキャプチャとSRCの後に適用されます。設定は project.json の audioEffectChain に保存されます。
Project → Project Settings → Mix Effects lets you build the same kind of ordered effect chain as Track effects (Reverb, Chorus, Flanger, Overdrive / distortion, Amp & cabinet, Vibrato (Tremolo)), but applied to the entire mixed program: when you press Play to hear all enabled tracks together, and when you export with Mix tracks to file (toolbar or Tools menu). The chain is saved in project.json under projectSettings → mixEffectChain.
Project → Project Settings → Aux / Send Bus configures a shared effect chain fed by each track’s Aux send slider (on the track row). The dry mix of all tracks is summed, each track’s post-gain/post-pan signal is scaled by its Aux level and sent through this bus, then the wet aux output is added back to the dry sum before Mix Effects run. Use it for a single shared reverb/delay while keeping per-track insert effects independent.
To reduce harsh digital clipping when processing pushes peaks toward full scale, the effect engine applies a soft limiter to normalized float samples immediately before conversion to 16-bit PCM. The EffectWidget base class documents guardFloatSampleForInt16Pcm() and softLimitFloatSampleForInt16Pcm() for any new real-time code that writes to 16-bit audio.
Each track row includes a compact mixer strip:
Options → Track Configuration also offers Clip trim (non-destructive): Trim start and Trim end skip that many seconds from the beginning and end of the clip for playback, mix, and export without deleting the underlying recording.
MIDI tracks can carry control change (CC) automation stored in the project and in exported .mid files; offline playback and mix use these events when rendering MIDI to audio.
Edit → Undo / Redo (standard shortcuts) apply to mixer and trim changes made on tracks.
タイム表示 の右にある 録音中にオーディオをモニター で、録音中に プロジェクトのオーディオ出力 へ ライブ入力 を送るかどうかを切り替えます。
設定は プロジェクト に保存されます(project.json の monitorWhileRecording)。マイクフィードバックを避けたい場合はオフにしてください。
他の有効なトラックにすでにオーディオまたはMIDIデータが含まれている状態で新しいトラックを録音する場合、Musician's Canvasはオーバーダブ録音を実行します。既存のトラックがミックスされ、新しいトラックの録音中にリアルタイムで再生されます。これにより、新しいパートを録音しながら以前に録音したパートを聴くことができます。
既存トラックのミックスはキャプチャ開始前に準備されるため、録音と再生はほぼ同時に開始され、すべてのトラックが同期されます。
Musician's Canvasは2つのオーディオキャプチャバックエンドをサポートしています:
録音バックエンドは、Project > Project Settings > Audioでプロジェクトごとに設定できます。
Musician's Canvasは、オーディオ入力デバイスのネイティブサンプルレートで録音し、高品質リサンプリングを使用してプロジェクトの設定サンプルレートに自動変換します。これにより、デバイスのネイティブレートに関係なく、任意のプロジェクトサンプルレート(例:44100 Hzまたは48000 Hz)を設定できます。変換ではピッチとデュレーションが正確に保持されます。
一部のオーディオデバイス(例:USBウェブカメラマイク)は物理的にモノラルですが、オペレーティングシステムによってステレオとして認識されます。Musician's Canvasはこれを自動的に検出し、チャンネル数を適切に調整します。プロジェクトがステレオに設定されている場合、モノラル信号は両チャンネルに複製されます。
MIDIノートはトラック上のピアノロールビジュアライゼーションに表示されます。
Musician's Canvasには、録音中にテンポを保つのに役立つ内蔵メトロノームが含まれています。メニューバーの下にあるボタンバーのメトロノームボタンをクリックすると、メトロノーム設定ダイアログが開きます:

ダイアログには次の項目があります:
メトロノームが有効な場合、録音が実際に開始されると(3秒のカウントダウンが完了した後)にティックが始まり、録音が終了すると停止します。
Playボタンをクリックすると、すべての有効なトラックがミックスされて再生されます。ボタンのツールチップは、トラックがアームされているかどうかに基づいて、再生か録音かを示すように変化します。無効なトラック(チェック解除)は再生から除外されます。
再生中、オーディオトラックはFLACファイルからデコードされ、MIDIトラックは内蔵のFluidSynthシンセサイザーを使用してオーディオにレンダリングされます。すべてのトラックがミックスされ、システムのオーディオ出力デバイスを通じて再生されます。
Stopボタンをクリックすると、いつでも再生を終了できます。
Tools > Mix tracks to file (Ctrl+M) を使用して、すべての有効なトラックを単一のオーディオファイルにエクスポートします。ダイアログで出力パスとフォーマットを選択できます:
ミックスにはプロジェクトの設定サンプルレートが使用されます。MIDIトラックは設定されたSoundFontを使用してレンダリングされます。
Settings > Configuration (Ctrl+,) を使用して、すべてのプロジェクトに適用されるグローバルデフォルトを設定します:

recording_debug.txtというファイルに書き込みます。
これにはキャプチャバックエンド、デバイス名、サンプルレート、チャンネル数、タイミング
データが含まれます。この設定はデフォルトで無効であり、主に録音の問題をトラブル
シューティングする際に役立ちます。

.sf2 SoundFontファイルを参照します。Linuxでは、fluid-soundfont-gmパッケージがインストールされている場合、システムSoundFontが自動検出されることがあります。WindowsとmacOSでは、SoundFontパスを手動で設定する必要があります。

Project > Project Settings (Ctrl+P) を使用して、現在のプロジェクトのみのグローバルデフォルトをオーバーライドします。特定のサンプルレート、SoundFont、またはオーディオデバイスが必要なプロジェクトに便利です。プロジェクト固有の設定はproject.jsonファイル内に保存されます。


The Mix Effects tab is a scrollable list with the same controls as Track effects (Add effect…, drag ≡ to reorder, ✕ to remove). Processing order is top to bottom on the combined mix of all enabled tracks. These effects run during whole-project playback and when mixing to a single WAV or FLAC file; they are not baked into individual track files on disk. An empty list leaves the mixed signal unchanged aside from the mixer's own level handling.
Configure the shared aux effect chain (same effect types as track inserts). Each track’s Aux slider on the track row controls how much of that track’s signal is sent through this bus; the wet aux return is summed with the dry mix before Mix Effects are applied.
| メニュー項目 | ショートカット | 説明 |
|---|---|---|
| Save Project | Ctrl+S | 現在のプロジェクトをディスクに保存 |
| Open Project | Ctrl+O | 既存のプロジェクトファイルを開く |
| Close | Ctrl+Q | アプリケーションを終了 |
| メニュー項目 | ショートカット | 説明 |
|---|---|---|
| Project Settings | Ctrl+P | プロジェクト設定(Aux / Send Bus を含む) |
| Tempo map | テンポ変化(秒と BPM)の編集:メトロノームと MIDI クオンタイズ | |
| Add Demo Data to Selected Track | デモ用のサンプルMIDIノートを追加 |
| メニュー項目 | ショートカット | 説明 |
|---|---|---|
| Undo | Ctrl+Z | ミキサー/トリムの変更を元に戻す |
| Redo | Ctrl+Shift+Z | やり直し |
| メニュー項目 | ショートカット | 説明 |
|---|---|---|
| Configuration | Ctrl+, | グローバルアプリケーション設定を開く |
| メニュー項目 | ショートカット | 説明 |
|---|---|---|
| Mix tracks to file | Ctrl+M | すべての有効なトラックをファイルにエクスポート |
| Export stems to folder | トラックごとに WAV(ゲイン/パン/トリム、マスター Mix Effects なし) | |
| Recording options | オーディオの パンチイン;プロジェクト全体の ループ再生 | |
| Quantize MIDI | MIDI ノート頭をグリッドにスナップ(全 MIDI またはアーム中のみ) | |
| Add drum track | D | MIDIドラムトラックを追加し .mid を書き出す(下記) |
| Virtual MIDI Keyboard | コンパニオンキーボードアプリを起動 |
| メニュー項目 | ショートカット | 説明 |
|---|---|---|
| Manual | Alt+M | 現在選択されている言語のPDFマニュアルを開く |
| About | バージョン情報とアプリ情報を表示 |
| ショートカット | アクション |
|---|---|
| Ctrl+S | プロジェクトを保存 |
| Ctrl+Z | 元に戻す(ミキサー/トリム) |
| Ctrl+Shift+Z | やり直し |
| Ctrl+O | プロジェクトを開く |
| Ctrl+M | トラックをファイルにミックス |
| D | ドラムトラックを追加(Toolsメニュー) |
| Ctrl+P | プロジェクト設定 |
| Ctrl+, | 設定 / Configuration |
| Alt+M | PDF マニュアルを開く(Help) |
| Ctrl+Q / Alt+F4 | 終了 |
Tools → Add drum track(ショートカット D)は General MIDI チャンネル10(内部インデックス9)の MIDI ドラムトラックを追加します。既定名は Drums(重複時は番号付き)。
プロジェクトフォルダに .mid をすぐ書き込みます(2小節・4/4、キック・スネア・クローズハイハット)。テンポは次のとおりです。
注意: 推定は簡易的です。
参考: Audient、MDrummer、Reddit、CS229 PDF。
Virtual MIDI Keyboardは、MIDIノートを送信するための画面上のピアノキーボードを提供するコンパニオンアプリケーション(virtual_midi_keyboard)です。メインアプリケーションのTools > Virtual MIDI Keyboardメニューから起動するか、独立して実行できます。

コンピューターキーボードは2オクターブにわたってピアノキーにマッピングされています:
下のオクターブ(現在のオクターブから開始):
| キー | ノート |
|---|---|
| Z | C |
| S | C#/Db |
| X | D |
| D | D#/Eb |
| C | E |
| V | F |
| G | F#/Gb |
| B | G |
| H | G#/Ab |
| N | A |
| J | A#/Bb |
| M | B |
上のオクターブ(1オクターブ上):
| キー | ノート |
|---|---|
| Q | C |
| 2 | C#/Db |
| W | D |
| 3 | D#/Eb |
| E | E |
| R | F |
| 5 | F#/Gb |
| T | G |
| 6 | G#/Ab |
| Y | A |
| 7 | A#/Bb |
| U | B |
| I | C(次のオクターブ) |
| 9 | C#/Db |
| O | D |
| 0 | D#/Eb |
| P | E |
キーを押すと視覚的にハイライトされます(白鍵は水色に、黒鍵は暗くなります)。
設定ダイアログ(Settings > Configuration、Ctrl+,)を開いて、MIDIおよびオーディオデバイスをセットアップします:

.sf2 SoundFontファイルを参照します。| ショートカット | アクション |
|---|---|
| Ctrl+, | 設定ダイアログ |
| Ctrl+U | ヘルプ / 使用方法 |
| Ctrl+Q | 閉じる |
.sf2)を選びます。ノートはピアノロールに表示されます。File > Save Projectでプロジェクトフォルダに.midとproject.jsonが書き出されます。
再生は設定のSoundFontを使ったFluidSynthで行われます。Settings > Configuration > MIDI(プロジェクト単位の上書きがある場合はProject > Project Settings)で、有効な.sf2パスが設定されているか確認してください。LinuxではシステムSoundFontが自動検出されることがあります。WindowsとmacOSでは手動でSoundFontを指定することが多いです。
別アプリケーションです。Tools > Virtual MIDI Keyboardから起動するか、単体で実行します。画面上のキーボードからMusician's CanvasのMIDIトラックへ録音するには、OSがキーボードのMIDI出力をMusician's Canvasが使う入力にルーティングする必要があります(仮想MIDIケーブルや、両方でポートを合わせるなど)。自動接続はされません。
Settings > Configurationはアプリ全体の既定値(テーマ、言語、MIDI/オーディオデバイス、SoundFontなど)です。Project > Project Settingsは現在のプロジェクトだけ上書きし、project.jsonに保存されます。プロジェクト側がデフォルトのままなら、Configurationのグローバル値が使われます。
プロジェクトフォルダが設定されており、かつ再生・録音中でないときだけ受け付けます。対応形式は.wavと.flacだけです。それ以外はスキップされ、ダイアログに一覧表示されます。各ファイルは拡張子を除いた名前の新しいオーディオトラックになります。
オーディオはプロジェクトフォルダに<トラック名>.flacとして保存されます(/ \ : * ? " < > |などはアンダースコアに置き換え)。プロジェクトファイルは同じフォルダのproject.jsonです。MIDIトラックはプロジェクト保存時に<トラック名>.midも書き出されます(ノート情報はproject.jsonにも含まれます)。
ミキスや再生では、まず内部で一時WAVにレンダリングします。プロジェクトパスが分かっている場合、プロジェクトフォルダに<サニタイズしたトラック名>.flacというキャッシュ用FLACも書き込みます(他のトラックファイルと同じサニタイズ規則)。名前はトラック名に基づき、内部IDではありません。
できません。Armできるのは常に1トラックだけで、次の録音の対象になります。オーバーダブで既存トラックを聞きながら、1本ずつ重ねて録音します。
いいえ。有効にするとシステムオーディオで聞こえるだけです。録音ファイルにはミックスされません。
Windowsでは本体アプリが低遅延・安定したオーディオのためにASIOドライバを想定しています。起動やオーディオで問題があればASIO4ALLやインターフェース製造元のドライバを入れてください。
.appバンドルでは、Virtual MIDI Keyboardの実行ファイルがMusician's Canvas.appの中(Contents/MacOS/)にコピーされ、フォルダ1つで配布しやすくなっています。メニューのTools > Virtual MIDI Keyboardから起動できます。
amixerまたはデスクトップのサウンド設定を使用して音量レベルを確認してください。.sf2ファイル)が設定されていることを確認してください。fluid-soundfont-gmパッケージがインストールされている場合、システムSoundFontが自動検出されることがあります。libpipewire-0.3-devパッケージがインストールされていることを確認してください(FluidSynthシンセサイザーとのPipeWire統合に必要です)。Linux、macOS、Windowsの完全なビルド手順(必要な依存関係すべてを含む)については、READMEを参照してください。