...

サウンド信号処理

by user

on
Category: Documents
26

views

Report

Comments

Transcript

サウンド信号処理
フリー・ソフト活用
Windows/Mac/Linux 対応で I/O もサクッ !
オープンソースのブロック型言語
Pure Data ではじめる
サウンド信号処理
第2回
振幅
れませんが,実は PSG 音源にはサウンド・プログラ
ミングの基本がぎっしりと詰まっています.
1
0.5
時間
0
振幅
(a)ノコギリ波
1
時間
0
振幅
(b)矩形波
1
時間
0
(c)パルス波
振幅
青木 直史,藍 圭介
サウンド処理の基本満載! レガシ・ピコピコ音 BGM
ノコギリ波に対するしきい値処理を行う
1
時間
0
(d)三角波
図 1 レガシなピコピコ PSG 音源をあなどるなかれ! サウンド・
プログラミングの基本が詰まっている
前回(第 1 回,2015 年 12 月号)は,オープンソース
の音響処理プログラミング言語 Pure Data ではじめ
るサウンド信号処理として,正弦波 / ノコギリ波 /
矩形波を生成して鳴らしてみました.
今回は,Pure Dataによる PSG(Programmable
Sound Generator)音源の再現をテーマに,サウン
ド・プログラミングの実例を紹介します.(編集部)
サウンド信号処理のヒント満載!
レガシ・ピコピコ音…PSG 音源
最も簡単に音を鳴らすしくみとして黎明期のコン
ピュータが採用していたのが,いわゆるピコピコの電
子音を鳴らす PSG 音源です.
いまさら時代遅れの技術と思われる方もいるかもし
170
ご購入はこちら
● その 1:周期的信号
ひと口に PSG 音源といっても,実際に鳴っている
音の波形にはいくつかのバリエーションがあります.
その中で最も基本になるのは,0 と 1 の信号を交互に
切り替えて音を鳴らす矩形波です.一般的な PSG 音
源には,そのほか,パルス波や三角波といった,いず
れも見た目の単純な波形が用意されています.
前回は,二つのノコギリ波を組み合わせて矩形波を
作り出してみましたが,図 1 のように,矩形波をはじ
め PSG 音源のそれぞれの波形は,実はノコギリ波に
対するしきい値処理でも作り出すことができます.
PSG 音源の波形を作り出すプログラムを図 2 に示し
ます.
[expr ∼]は,インレットに入力された信号
$v1 に対して四則演算や条件分岐などの処理を行い,
その結果をアウトレットから出力するブロックになっ
ています.
● その 2:白色雑音
PSG 音源の波形は,こうした周期的なものばかりで
はありません.表現の幅を広げるうえで重要な要素に
なっているのは非周期的な波形の白色雑音です.
Pure Data の場合,白色雑音は[noise ∼]を使っ
て鳴らすことができます.ただし,本来の PSG 音源
は,0 と 1 の 2 値からなる雑音をゆっくり再生したも
のを白色雑音として定義しているため,通常の白色雑
音とは音色が異なることに注意が必要です.図 3 のよ
うに,こうした音色を再現するには,サンプル&ホー
ルドというサウンド・エフェクトによって再生速度を
コントロールするといった処理が必要になります.
図 4 に Pure Data のプログラムを示します.
ちょっとした効果音を鳴らしてみる
● 矩形波×時間エンベロープで効果音を作る
PSG 音源は,フェードインやフェードアウトといっ
第 1 回 正弦波 / ノコギリ波 / 矩形波…まずは基本音を鳴らす(2015 年 12 月号)
2016 年 1 月号
Fly UP