コンピュータ音楽~歴史・テクノロジー・アート~
ローズ・カーチス 著
内容
目次
第Ⅰ部 基本的な概念 第1章 デジタルオーディオの概念 John Strawn との共著 1.1 基礎知識:デジタルオーディオ録音の歴史 1.1.1 実験的なデジタル録音 1.1.2 デジタル音の大衆化 1.1.3 音楽家のためのデジタルサウンド 1.1.4 デジタル多重トラック録音 1.2 音信号の基礎 1.2.1 周波数と振幅 1.2.1.1 時間領域における表現 1.2.1.2 周波数領域における表現 1.2.2 位相 1.2.3 位相の重要性 1.3 音のアナログ表現 1.4 音のデジタル表現 1.4.1 アナログからデジタルへの変換 1.4.2 二進数 1.4.3 デジタルからアナログへの変換 1.4.4 デジタルオーディオ録音とMIDI録音 1.4.5 サンプリング 1.4.5.1 アナログ信号の再構成 1.4.6 エイリアシング(折り返し) 1.4.7 サンプリング定理 1.4.7.1 理想的なサンプリング周波数 1.4.8 アンチエイリアシングとアンチ・イメージング・フィルタ 1.4.9 位相補正 1.4.10 量子化 1.4.10.1 量子化雑音 1.4.10.2 低レベルの量子化雑音とディザ 1.4.10.3 変換器の線型性 1.5 デジタル・オーディオ・システムのダイナミックレンジ 1.5.1 デシベル 1.5.2 デジタルシステムのダイナミックレンジ 1.6 オーバーサンプリング 1.6.1 複数ビットのオーバーサンプリング 1.6.2 1ビットのオーバーサンプリング 1.7 デジタル・オーディオ・メディア 1.8 音合成と信号処理 1.9 まとめ 第2章 音楽システムのプログラミング Curtis Abbottとの共著 2.1 プログラミングは問題解決である 2.2 プログラミング言語の基本的な概念 2.2.1 プログラムの実行 2.2.2 フローグラフと構造化プログラミング 2.2.3 手続き 2.2.4 代入 2.3 制御構造 2.3.1 分岐 2.3.2 繰返し 2.4 データ構造 2.4.1 データ型 2.4.2 型宣言 2.4.3 型を構成するための操作 2.4.3.1 配列 2.4.3.2 レコード 2.4.3.3 ポインタとその問題点 2.4.4 より抽象的なデータ型 2.4.4.1 オブジェクト指向プログラミング 2.4.4.2 継承 2.4.5 高度に抽象化されたデータ型 2.5 プログラミング言語について 2.5.1 関数型プログラミング 2.5.2 論理型プログラミング 2.5.3 LispとPrologのプログラミング例 2.5.4 制約プログラミング 2.6 まとめ 第Ⅱ部 音合成 第3章 デジタル音合成入門 John Strawn との共著 3.1 背景:デジタル音合成の歴史 3.1.1 Music I と Music II 3.1.2 ユニットジェネレータの概念 3.1.2.1 Music N言語 3.2 固定波形のテーブル参照合成 3.2.1 周波数の変更 3.2.2 デジタル発振器のアルゴリズム 3.3 テーブル参照雑音および補間発振器 3.4 時変波形合成 3.4.1 エンベロープ,ユニットジェネレータ,パッチ 3.4.1.1 合成楽器のためのグラフィック表示 3.4.1.2 パッチでのエンベロープの使用 3.5 ソフトウェア合成 3.5.1 楽器エディタと合成言語 3.5.2 合成計算上の必要条件 3.5.3 非実時間合成 3.5.4 音ファイル 3.6 実時間デジタル合成 3.7 非実時間合成と実時間合成との比較 3.8 楽音の具体化 3.8.1 音オブジェクト 3.8.2 加算合成の具体化問題の例 3.8.3 音楽家のインタフェース 3.8.3.1 音楽入力装置 3.8.3.2 演奏ソフトウェア 3.8.3.3 エディタ 3.8.3.4 言語 3.8.3.5 アルゴリズム作曲プログラム 3.8.3.6 音分析 3.9 まとめ 第4章 サンプリングと加算合成 4.1 サンプリング合成 4.1.1 ミュージックコンクレートとサンプリング:背景 4.1.2 ルーピング 4.1.3 ピッチシフト 4.1.4 ピッチシフトのないサンプルレート変換 4.1.5 リサンプリングの問題点 4.1.6 サンプラのデータ削減とデータ圧縮 4.1.6.1 データ削減 4.1.6.2 データ圧縮 4.1.7 音ライブラリ 4.1.8 サンプラの評価 4.1.9 音符から音符への遷移のモデル化 4.2 加算合成 4.2.1 加算合成:背景 4.2.2 固定波形加算合成 4.2.2.1 位相について 4.2.2.2 部分音の加算 4.2.3 時変加算合成 4.2.4 加算合成に必要な演算量 4.2.5 加算合成の制御データ源 4.3 加算分析/再合成 4.3.1 加算分析/再合成の音楽的応用 4.3.2 加算合成のための音分析手法 4.3.3 分析/再合成のデータ量の削減 4.3.3.1 折線近似 4.3.3.2 主成分分析 4.3.3.3 スペクトル補間合成 4.3.3.4 スペクトルモデル合成 4.3.4 ウォルシュ関数合成 4.4 まとめ 第5章 多重波形テーブル合成,地表面軌道合成,細粒合成,減産合成 5.1 多重波形テーブル合成 5.1.1 波形テーブルクロスフェード 5.1.2 波形積算合成 5.2 波形地表面合成 5.2.1 地表面と軌道 5.2.2 波形地表面合成からの予測可能な波形の発生 5.2.3 周期軌道 5.2.4 時変軌道 5.3 細粒合成 5.3.1 細粒合成:背景 5.3.2 音の粒子 5.3.3 粒子生成に基づく音源 5.3.3.1 高レベル細粒構造 5.3.3.2 フーリエ/ウェーブレット格子およびスクリーン 5.3.3.3 ピッチ同期細粒合成 5.3.3.4 準同期細粒合成 5.3.3.5 非同期細粒合成 5.3.3.6 サンプル音の時間細粒化 5.3.4 細粒合成の評価 5.4 減算合成 5.4.1 フィルタ入門 5.4.2 フィルタの型と周波数特性 5.4.3 フィルタのQとゲイン 5.4.4 フィルタバンクとイコライザ 5.4.5 くし型およびオールパスフィルタ 5.4.6 時変の減算合成 5.5 減算分析/再合成 5.5.1 ボコーダ 5.6 線形予測符号化 5.6.1 線形予測とは何か? 5.6.2 LPC分析 5.6.2.1 フィルタ推定 5.6.2.2 ピッチおよび振幅分析 5.6.2.3 有声/無声判定 5.6.2.4 分析フレーム 5.6.3 LPC合成 5.6.4 LPCフレームデータの編集 5.6.5 標準LPCの音楽への延長 5.6.6 LPCの評価 5.6.7 二重音素分析/再合成 5.7 まとめ 第6章 変調合成 6.1 双極および単極信号 6.2 リング変調 6.2.1 負周波数 6.2.2 RMの応用 6.2.3 アナログリング変調と周波数移動 6.3 振幅変調 6.3.1 AM合成器 6.3.2 変調指数 6.4 周波数変調 6.4.1 背景:周波数変調 6.4.2 周波数変調と位相変調 6.4.3 単純FM 6.4.4 C:M比 6.4.5 変調指数と帯域幅 6.4.6 反射側帯波 6.4.7 FM式 6.4.8 ベッセル関数 6.4.9 FMのデジタルでの実装 6.4.10 単純FMの応用 6.4.11 指数FM 6.4.12 分析とFM 6.5 多重キャリアFM 6.5.1 MC FMの音楽的応用 6.6 多重モジュレータFM 6.6.1 並列MM FM 6.6.2 直列MM FM 6.6.3 MM FMの音楽的応用 6.6.4 フィードバックFM 6.6.5 背景:フィードバック発振器 6.6.6 1発振器フィードバック 6.6.7 2発振器フィードバック 6.6.8 3発振器間接フィードバック 6.7 位相ひずみ 6.8 ウェーブシェーピング合成 6.8.1 単純ウェーブシェーピング合成器 6.8.2 シェーピング関数の例 6.8.2.1 ウェーブシェーピングスペクトルの振幅感度 6.8.2.2 チェビシェフシェーピング関数 6.8.3 振幅正規化 6.8.4 ウェーブシェーピングのバリエーション 6.8.5 可動ウェーブシェーピング 6.8.6 分数ウェーブシェーピング 6.8.7 後処理およびパラメータ推定 6.9 一般的な変調 6.10 まとめ 第7章 物理モデル合成とフォルマント合成 7.1 物理モデル合成 7.1.1 物理モデル合成の効果 7.1.2 物理モデルの背景 7.1.3 励起と共振 7.1.4 古典的物理モデルの方法論 7.1.4.1 微分方程式 7.1.4.2 振動弦の力学モデル 7.1.4.3 面と立体の振動に対する力学モデル 7.1.4.4 励起に対する力学モデル 7.1.5 モード合成 7.1.5.1 MOSAIC: モード合成の実用的実装 7.1.6 McIntyre, Schumacher, Woodhouse の合成法 7.1.6.1 非線形励起と線形共振 7.1.6.2 MSW合成の概要 7.1.7 ウェーブガイド合成 7.1.7.1 打弦のウェーブガイドモデル 7.1.7.2 一般的なウェーブガイド楽器 7.1.7.3 ウェーブガイドクラリネット 7.1.7.4 ウェーブガイドホルン 7.1.8 物理モデル合成の入力デバイス 7.1.9 物理モデル合成の評価 7.2 物理モデルの音源とパラメータ分析 7.2.1 パラメータ推定実験 7.2.1.1 音源分離 7.2.2 高次スペクトル分析 7.3 KARPLUS-STRONG(撥弦とドラム)合成 7.3.1 撥弦 7.3.2 ドラム音 7.3.3 減衰時間の伸長 7.3.4 KSアルゴリズムの拡張 7.4 フォルマント合成 7.4.1 フォルマント波形関数合成とCHANT 7.4.1.1 FOF合成の基礎 7.4.1.2 FOFの解剖学 7.4.1.3 FOFパラメータ 7.4.1.4 CHANTプログラム 7.4.2 FOF分析再合成 7.4.2.1 共振モデル 7.4.2.2 MOR変換 7.4.2.3 FOFとのスペクトル包絡のマッチング 7.4.3 VOSIM 7.4.4 VOSIM波形 7.4.5 窓関数合成 7.5 まとめ 第8章 波形セグメント合成,図式合成,及び確率合成 8.1 波形セグメント技術 8.1.1 波形補間 8.1.1.1 線形補間の式 8.1.1.2 発振器とエンベロープ発生器における補間 8.1.1.3 GEN関数における補間 8.1.1.4 補間合成 8.1.2 SAWDUST 8.1.3 SSP 8.1.4 命令合成 8.2 図式合成 8.2.1 音合成における図の利用:背景 8.2.2 UPICの操作 8.2.2.1 初期のUPIC 8.2.2.2 実時間UPIC 8.2.3 MIDIを用いた図式合成 8.2.4 図式合成の評価 8.3 雑音変調 8.3.1 雑音に関する議論 8.3.2 雑音変調されたAMとFM 8.3.3 ランダムシェーピング関数によるウェーブシェーピング 8.4 確率波形合成 8.4.1 動的確率合成 8.4.1.1 GENDY 8.5 まとめ 第Ⅲ部 ミキシングと信号処理 第9章 音のミキシング 9.1 ミキシングとダイナミックレンジ 9.2 非実時間のソフトウェアミキシング 9.2.1 スクリプトによるミキシング 9.2.2 オブジェクト指向ミキシング 9.2.3 グラフィカルミキシング 9.2.4 ソフトウェアミキシングの評価 9.3 ミキシングコンソール 9.3.1 ミキサの特徴 9.3.2 入力部 9.3.3 出力部 9.3.4 AUXリターン部 9.3.5 トークバック部 9.3.6 モニタ部 9.3.7 メータ部 9.3.8 グループ化機能 9.4 ハイブリッド型コンソール 9.4.1 ミキシング操作の再生 9.5 デジタルミキシングコンソールの特徴 9.5.1 独立型ミキサ対オーディオワークステーション 9.6 マルチトラック録音とリミックス 9.6.1 マルチトラック録音:背景 9.6.2 マルチトラック録音の長所 9.6.3 マルチトラックミキシングがもたらす問題 9.7 オーディオのモニタ 9.7.1 ヘッドホン 9.7.2 スピーカでのモニタ 9.7.2.1 近距離でのモニタ 9.7.2.2 コントロールルームでのモニタ 9.7.2.3 試聴室でのモニタ 9.7.3 演奏時のミキシングとモニタ 9.8 自動ミキシング 9.8.1 オーディオミキサのMIDI制御:パッチとチャネルミュート 9.9 オーディオミキシングとビデオの同期 9.9.1 複数マシンの同期 9.9.2 SMPTEタイムコード 9.9.3 MIDIタイムコード 9.10 まとめ 第10章 信号処理の基本的概念 10.1 ダイナミックレンジ処理 10.1.1 エンベロープシェイパ 10.1.2 ノイズゲート 10.1.3 コンプレッサ 10.1.3.1 ピーク検出器vs平均検出器 10.1.3.2 圧縮比 10.1.4 エクスパンダ 10.1.5 リミッタ 10.1.6 ノイズリダクションユニットとコンパンダ 10.1.7 ダイナミックレンジ処理における危険性 10.2 デジタルフィルタ 10.2.1 音楽家のためのフィルタ理論 10.2.2