サウンドプログラミング入門――音響合成の基本とC言語による実装
この本の概要
コンピュータはプログラムしだいでシンセサイザのようにさまざまな音を作り出すことができます。本書では,加算合成や減算合成といった基本的な音作りの仕組みとともに,音響合成の代表的な方式として,PSG音源,アナログシンセサイザ,FM音源,PCM音源を取り上げており,C言語のプログラムとともに,それぞれの方式による音作りのテクニックを具体的に紹介しています。フリーのコンパイラとしてBorland C++ Compiler 5.5を利用しており,Windows環境さえ用意すれば誰でも手軽にサウンドプログラミングに挑戦することができるようになっています。
こんな方におすすめ
- コンピュータを使って音を作り出すテクニックを実際に動作するプログラムで学びたい方
目次
第1章 サウンドプログラミングの基礎知識
- 1.1 サンプリング
- 1.2 標本化
- 1.3 量子化
- 1.4 メディアの規格
- 1.5 WAVEファイル
- 1.6 C言語によるサウンドプログラミング
- Column1 サウンドレコーダー
第2章 サイン波を鳴らしてみよう
- 2.1 サイン波
- 2.2 波形と周波数特性
- 2.3 12平均律音階
- Column2 フェード処理
第3章 サイン波を重ね合わせてみよう
- 3.1 サイン波の重ね合わせ
- 3.2 ノコギリ波
- 3.3 矩形波
- 3.4 三角波
- 3.5 位相
- 3.6 白色雑音
- Column3 音の三要素
第4章 周波数特性を分析してみよう
- 4.1 周波数分析
- 4.2 フーリエ変換
- 4.3 窓関数
- 4.4 楽器音の周波数分析
- 4.5 スペクトログラム
- 4.6 高速フーリエ変換
- Column4 バーチャルピッチ
第5章 加算合成 ~ 足し算で音を作ってみよう
- 5.1 加算合成
- 5.2 サイン波の重ね合わせ
- 5.3 時間エンベロープ
- 5.4 オルガン
- 5.5 ピアノ
- Column5 分析合成
第6章 周波数特性を加工してみよう
- 6.1 フィルタ
- 6.2 FIRフィルタ
- 6.3 IIRフィルタ
- 6.4 DFTフィルタ
- Column6 インパルス応答
第7章 減算合成 ~ 引き算で音を作ってみよう
- 7.1 減算合成
- 7.2 原音のフィルタリング
- 7.3 周波数エンベロープ
- 7.4 音声合成
- 7.5 ボコーダ
- Column7 パルス列
第8章 PSG音源 ~ 電子音を鳴らしてみよう
- 8.1 PSG音源
- 8.2 時間エンベロープ
- 8.3 ゲームミュージック
- 8.4 効果音
- 8.5 オーバーサンプリング
- Column8 MMLとMIDI
第9章 アナログシンセサイザ ~ 楽器音を鳴らしてみよう
- 9.1 アナログシンセサイザ
- 9.2 LFO
- 9.3 トレモロ
- 9.4 ビブラート
- 9.5 ワウ
- 9.6 ADSR
- 9.7 オルガン
- 9.8 バイオリン
- 9.9 ピアノ
- 9.1 ドラム
- 9.11 アナログ信号とディジタル信号
- Column9 デチューン
第10章 FM音源 ~ 金属音を鳴らしてみよう
- 10.1 FM音源
- 10.2 変調指数
- 10.3 周波数比
- 10.4 時間エンベロープ
- 10.5 チューブラーベル
- 10.6 エレクトリックピアノ
- 10.7 ディジタルシンセサイザ
- Column10 モジュレーション
第11章 PCM音源 ~ サンプリングした音を鳴らしてみよう
- 11.1 PCM音源
- 11.2 タイムストレッチ
- 11.3 ピッチシフト
- 11.4 Log-PCM
- 11.5 DPCM
- 11.6 ADPCM
- Column11 ループシーケンサ
第12章 リアルタイム処理のサウンドプログラミング
- 12.1 サウンドデバイスとサウンドドライバ
- 12.2 録音処理
- 12.3 再生処理
- 12.4 ループバック再生
- 12.5 ボイスチェンジャ
- Column12 Pure DataとSuperCollider