Appearance
Part 2: すべての DAW に共通するアーキテクチャ
本 Part では、Cubase / Logic Pro / Ableton Live / FL Studio / Studio One / Pro Tools / Bitwig Studio / Reaper をはじめとする現代の DAW が、内部アーキテクチャとしてどのような共通項を備えているかを扱います。各 DAW 固有の機能名や実装差は Part 3、VST3 SDK 固有の API(IAudioProcessor など)は Part 4 で扱い、本 Part ではフォーマット非依存・DAW 非依存の上位概念に限定します。
本 Part の読み方
本 Part の各章は、プラグインホスト(DAW)とプラグインの間に横たわる「契約」と、その契約が生まれた技術的理由を説明します。読者がオーディオ知識ゼロであることを前提とし、Part 1 の基礎用語(サンプル、フレーム、ブロック、バッファサイズ)を既知としています。
| 章 | テーマ | 重要度 |
|---|---|---|
| 2.1 | DAW 全体俯瞰図 | 入口 |
| 2.2 | オーディオエンジンの基本契約(RT 制約) | 最重要 |
| 2.3 | オーディオグラフとスケジューリング | 高 |
| 2.4 | レイテンシ管理(PDC / Lookahead) | 最重要 |
| 2.5 | プラグインホスティングの共通契約 | 高 |
| 2.6 | MIDI とイベントモデル | 中 |
| 2.7 | トランスポートと同期 | 中 |
| 2.8 | 編集モデル | 中 |
| 2.9 | オートメーション | 高 |
| 2.10 | メータリング | 中 |
| 2.11 | レンダリング | 中 |
| 2.12 | セッションの永続化 | 中 |
前提と参照
- Part 1 の用語(sample / frame / block / bus / track / clip、dBFS、pan law、Nyquist、デノーマル)を既知とします。
- 本 Part で導入するリアルタイム制約は、Part 5「橋渡し章」で V8 / AudioWorklet 側と突き合わせます。
- 本 Part に登場する抽象概念の VST3 での具体化は、Part 4 で対応する節へリンクします。
Mermaid 図表の表記
本 Part の図は、構造を示す flowchart と classDiagram、時間軸を示す sequenceDiagram と gantt、状態遷移を示す stateDiagram-v2 を使い分けます。詳細は スタイルガイド §7 を参照してください。