Comments
Description
Transcript
サウンドプログラミング演習 第 3 回
サウンドプログラミング演習 第 3 回 今回の演習の目的 音の高さの変更について学ぶ。 音量のエンベロープについて学ぶ。 リバーブ、モジュレーション、ディレイ、フィルタについて学ぶ。 サンプルファイルのダウンロード http://www.low-tech-ism.com/files/puredata/pdlesson03.zip 音の用語 Pitch(ピッチ):音高(音の周波数)→MIDI ノートナンバー(0〜127) Velocity(ベロシティ):音の強さ(0〜127) Duration(デュレーション):音の長さ(秒) MIDI:Musical Instrument Digital Interface ミディと読みます。 音名:ドレミファソラシド=CDEFGABC (http://homepage2.nifty.com/nori-no_dtm-seikatsu/append/midi/nNum.htm より転載) MIDI ノートでサイン波を鳴らす midi_to_freq01.pd [mtof]:MIDI to Frequency MIDI から周波数に変換 [osc~]:サイン波を出力するオブジェクト [tabwrite~]:bang シグナルが入ると音の数値データを Array に書き込む 音量の変化 音量の変化は[*~]オブジェクトを使う。 音の数値データ:音の強さの変化→Y 軸方向の数値→音量 [readsf~]:サウンドファイルを HDD から読み出しながら再生。 read_sound_file01.pd 数値の変化カーブ(エンベロープ) Attack(アタック)-Decay(ディケイ)-Sustain(サステイン)-Release(リリース) 音量の ADSR のエンベロープ実現に adsr_vol.pd を Abstraction として使う。 read_sound_file02.pd ※Abstraction[adsr_vol]のアーギュメントはどうやってできているか? サイン波を ADSR エンベロープで鳴らす。 midi_to_freq02.pd midi_to_freq01.pd に adsr_vol.pd の ADSR を組み込んで midi_to_freq02.pd として保存した もの。 MIDI キーボードを接続してサイン波を鳴らす。エンベロープ付き midi_to_freq03.pd [notein]:接続した MIDI キーボードの情報入力 [trigger]:データの流れを整える モジュレーション 音量を上下に揺らす。 modulation01.pd 課題 ★ read_sound_file02.pd にモジュレーションを組み込んで read_sound_file02_modu.pd と して保存する。 ★ midi_to_freq03.pd にモジュレーションを組み込んで midi_to_freq03_modu.pd として 保存する。 リバーブ reverb_sample01.pd 課題 ★read_sound_file01.pd に[freeverb~]を組み込んで read_sound_file01_rev.pd として保存す る。 ディレイ delay_unit.pd を使う。 delay_unit.pd 課題 ★read_sound_file01.pd に[delayunit]を組み込んで read_sound_file01_del.pd として保存す る。 フィルタ filter_unit.pd 課題 ★ read_sound_file01.pd に[filter_unit]を組み込んで read_sound_file01_filt.pd として保存 する。 宿題 Pd Recipe Book の第 4 章を再度おさらいする。 Pure Data を使って作る音のパッチを考え、少しでも作ることをトライする。 パッチのアイデアは簡単なもので構わない。 キーを押すと音が鳴る、ランダムに Pitch が変わるなど。 次回授業の最初に発表。