Software Design plusシリーズサウンドプログラミング入門
――音響合成の基本とC言語による実装

書籍の概要

この本の概要

コンピュータはプログラムしだいでシンセサイザのようにさまざまな音を作り出すことができます。本書では,加算合成や減算合成といった基本的な音作りの仕組みとともに,音響合成の代表的な方式として,PSG音源,アナログシンセサイザ,FM音源,PCM音源を取り上げており,C言語のプログラムとともに,それぞれの方式による音作りのテクニックを具体的に紹介しています。フリーのコンパイラとしてBorland C++ Compiler 5.5を利用しており,Windows環境さえ用意すれば誰でも手軽にサウンドプログラミングに挑戦することができるようになっています。

こんな方におすすめ

  • コンピュータを使って音を作り出すテクニックを実際に動作するプログラムで学びたい方

この書籍に関連する記事があります!

音を作り出すプログラミングテクニックが満載!
本来,音はすべての時刻で値をとる「アナログ信号」の物理現象で,コンピュータはアナログ信号をそのままの状態では処理できません。

本書のサンプル

本書の一部ページを,PDFで確認することができます。

目次

第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

著者プロフィール

青木直史(あおきなおふみ)

1972年 札幌市に生まれる/1995年 北海道大学工学部電子工学科卒業/1997年 北海道大学大学院工学研究科修士課程修了/2000年 北海道大学大学院工学研究科博士課程修了(工学博士)/2000年 北海道大学大学院工学研究科助手/2007年 北海道大学大学院情報科学研究科助教

専門:マルチメディア情報処理,趣味:音楽鑑賞,楽器演奏

著書:『ディジタル・サウンド処理入門』/CQ出版社/2006