Pd Recipe Book Pure Dataではじめるサウンドプログラミング
Preview
Preview

Pd Recipe Book
Pure Dataではじめるサウンドプログラミング

Share
Preview
  1. Pd Recipe Book Pure Dataではじめるサウンドプログラミング
  2. Pd Recipe Book Pure Dataではじめるサウンドプログラミング
  3. Pd Recipe Book Pure Dataではじめるサウンドプログラミング
  4. Pd Recipe Book Pure Dataではじめるサウンドプログラミング
  5. Pd Recipe Book Pure Dataではじめるサウンドプログラミング
¥3,740 (税込み)
BNNストア / 品切れ
Amazonで購入

Description

本書は、「Pure Data(Pd)」というオープンソースのグラフィカルプログラミング環境を使って、サウンドプログラミングを基礎から学ぶために書かれた本です。Max/MSPと同じルーツを持つPdは、「オブジェクト」という小さな箱を線でつなげていくことでデータの流れコントロールし、音を鳴らします。本書では、レシピとしてリズムマシン、シンセサイザー、そしていくつかのインタラクティブなシステムの作り方をとりあげ、初心者にもわかりやすく解説しています。

はじめに

本書は、Pure Data(Pd)というオープンソースのプログラミング環境を使って、「サウンドプログラミング」を基礎から学ぶために書かれた本です。

「サウンドプログラミングって、どんなことをするのだろう?」
「普通の音楽を作るのと何が違うの?」
「Pure Dataって初めて聞くけど、どうやって使うんだろう?」

等々、いろいろな疑問が湧いてくるかと思います。

まず、サウンドプログラミングというのは、一言でいうと「コンピュータのプログラムによって、鳴らす音をデザインすること」です。それが「普通の音楽」を作ることになるのかどうかは使う人次第と言えます。もしかしたら、サウンドプログラミングをやっていくうちに、「普通の音楽」の定義が曖昧になってきてしまうかもしれません。サウンドプログラミングはきれいな音楽を作ることが目的というよりも、音のデータに直接アプローチして、

「こんな条件で音を鳴らしてみたらどうだろう?」
「こんなデータを音にしてみたらどうだろう?」
「この音をバラバラにしてから、ある法則に基づいて再構築するようなプロセスを通したらどうだろう?」

と、ああでもないこうでもないと試行錯誤することにその面白さと醍醐味があります。その試行錯誤の果てにできたものは、「普通の音楽」であるかどうかとは別の価値が出てきます。

それは、たくさんの試行錯誤をした「あなたの音」であるという価値です。

コンピュータテクノロジーがめざましい進歩を遂げ、音楽制作を取り巻く環境も大きく変わりました。中でもいちばんの変化は、音楽制作の機材が「高性能」で「安価」になったことです。もし、迫力のあるオーケストラのような音を出したいと思ったら、3万円代のシンセサイザーでそれが可能になりますし、リッチなリバーブのエフェクトを音につけたいと思ったら、コンピュータの無料のプラグインソフトウェアが有志によって開発され、インターネットで公開されています。音楽のシーケンスデータ(演奏データ)を作ったり演奏を録音して編集するシーケンサーやDAWソフトウェアといった、かつては10万円以上していたような音楽用ソフトウェアが2万円程度まで値下がりしています。まさに、音楽を作りたい人、作る意志のある人には至れり尽くせりの環境です。そして、このような道具はとても使いやすく、操作方法を身につけるのもそれほど大変ではありません。その道具の中がどのように動作して処理をしているかを知らなくても、すぐに使いこなすことができるようになっています。それはちょうど、車のエンジンの構造を知らなくても車の運転ができるのに似ています。

もちろん、このように巷に溢れている便利な道具をユーザーとして使いこなして、目的の音や音楽を作ることを否定するつもりはまったくありません。誰でも簡単に思った通りの効果を短時間で得られるメリットは、音楽制作においては計り知れないほどの恩恵をもたらすものですし、イメージ通りの音を作り上げる喜びは格別なものでしょう。そしてその実現を手助けする道具たちの存在は必要不可欠なものです。

しかし、もし本書を手にしているあなたが、もう少し違った視点から音楽や音の表現を捉えたいと思っていたらどうでしょうか? 便利な道具である電子楽器やソフトウェア製品があっさり実現している、音をデジタルデータとして処理をするとはいったい何なのかの原理に触れたうえで、自分の持っている音についてのアイデアをいろいろ試してみたいと考えていたらどうでしょうか?

それは、「表現したい音楽」という目標に向かって、便利な道具を駆使して一直線に進んでいく類いの道のりではなく、あちらこちらに寄り道しながら進んでいく非効率的な道のりと言えるかもしれません。

けれども、車のプラモデルの完成品を眺めて楽しむよりも、そのプラモデルを部品を組み合わせ、時間をかけて仕上げていくプロセスを楽しんでみたいと思っている人がいることも、また真実でしょう。音の表現に関しても、同様の趣味嗜好があってもまったく不思議ではありません。便利な道具が溢れている現在の環境の中で、あえて試行錯誤をすることを選ぶのはイバラの道でしょうか? それともとても贅沢なことなのでしょうか?

いずれにしても、本書はPure Dataという、音のデジタルデータにアプローチをして試行錯誤をするための優れたプログラミング環境を使って、みなさんがサウンドプログラミングの世界に入っていくお手伝いをします。

本書は2つのミッションをクリアするために書かれました。

ひとつは、プログラミングの未経験者に、プログラミングの考え方やデータの流れのコントロールに触れてもらいながら、サウンドプログラミングの世界を味わってもらうことです。

Pure Dataは、文字を入力してプログラムのソースコードを書いていく種類のプログラミング環境ではなく、画面の中で、オブジェクトと呼ばれる箱と箱を線でつないでいき、パッチと呼ばれるプログラムを作っていくというグラフィカルなユーザーインターフェイスを持ったプログラミング環境です。それは他のプログラミング言語とはかなり異なるインターフェイスのため、これまでにプログラミングを経験したことのない人でも入りやすい一面があります。

しかし、入りやすいからできることがおもちゃのようかというと決してそんなことはなく、本格的な音の処理(サウンドプロセッシング)が可能です。そんなPureDataのパッチの組み立て方についてステップを踏んで解説していき、同時にサウンドプログラミングのエッセンスを学んでいきます。そして本書のタイトルにもある通り、「レシピ」としていろいろな「音のアイデア」を実現化するパッチを紹介していきます。

もうひとつは、言葉の壁を越えることです。

Pure Dataはオープンソースのソフトウェアで無料です。そのため、ヨーロッパや北米、南米、ロシア等、世界中のユーザーに受け入れられ、数多くのユーザーや開発者がいます。ネット上に活発に活動するコミュニティもあり、毎月のように世界のどこかでPure Dataのワークショップが開催されています。サウンドプログラミングを学ぶためにPure Dataを使っている海外の教育機関もたくさんあります。アカデミックな世界だけではなく、コマーシャルな世界でもPure Dataを活用している例が少なくありません。

けれど、残念ながら日本ではあまり普及をしていません。その原因のひとつは言葉の壁です。Pure Dataは、メニューの表示からヘルプファイル、そしてネット上のコミュニティのコミュニケーションに至るまで、すべて英語が使われています。また、オープンソースゆえかすべてのオブジェクト(コマンド)のヘルプファイルがそろっていなかったり、ある程度サウンドプログラミングの知識のある人を対象とした内容となっているものもあります。しかし、言葉の壁や多少の専門性のために、世界中で使われているPure Dataを使わず、サウンドプログラミングの世界に入っていかないのは、とてももったいないと思います。そこで本書では、初めてPure Dataを使い始める人を想定して、細かい手順まで解説しています。それは少しでもその言葉の違いが生み出している壁を越えていただきたいからです。

本書がきっかけとなって、ひとりでも多くの人がサウンドプログラミングの世界に足を踏み入れ、自分のアイデアをかたちにし始めるようになっていく未来を夢見ています。

松村 誠一郎

ISBN:978-4-86100-780-4
定価:本体3,400円+税
仕様:B5判/344ページ
発売日:2012年02月24日
著者:松村 誠一郎(www.low-tech-ism.com)

Contents

CHAPTER 1 Introduction
 INTERVIEW Frank Barknecht

CHAPTER 2 Basic
2.1 Pdのパッチを作る
2.2 Putメニュー/ヘルプファイル
2.3 オブジェクトとヘルプファイル
2.4 各種メニューの詳細
 INTERVIEW Gunter Geiger

CHAPTER 3 Rhythm Machine
3.1 リズムマシンの概要
3.2 step 1 音ファイルを読み込む
3.3 step 2 Arrayに読み込んだ音データを再生する
3.4 step 3 シーケンスを記録する
3.5 step 4 シーケンスを再生する
3.6 step 5 音の再生パートとシーケンスのループ再生パートを合体する
3.7 step 6 見やすいようにサブパッチ化する
3.8 step 7 音の状態を見るオシロスコープをつける
3.9 step 8 パッチを開いた時に動作する
3.10 step 9 トラック数を増やす
 INTERVIEW Chun Lee

CHAPTER 4 Synthesizer
4.1 シンセサイザーの概要
4.2 step 1 シンプルなサイン波シンセサイザーを作る
4.3 step 2 音の立ち上がりと消える部分を作る
4.4 step 3 音の立ち上がりと消える時間を自由に設定する
4.5 step 4 音の立ち上がりと消える間の音量の変化
4.6 step 5 エンベロープジェネレータ(EG)の改良
4.7 step 6 スライダーを配置する
4.8 step 7 エンベロープジェネレータ(EG)パートをAbstractionにする
4.9 step 8 音のON/OFF、Pitch、Velocityのシーケンサーを作る
4.10 step 9 サイン波シンセサイザーとシーケンサーを合体する
4.11 step 10 音量にモジュレーションをかける
4.12 step 11 エフェクトをかける
4.13 step 12 オシレータの波形を変更する
4.14 step 13 いろいろなシンセサイザー音源を作る
4.15 step 14 フィルタをかける
 INTERVIEW Aymeric Mansoux

CHAPTER 5 Interactive System
5.1 フリールーパー(Free Looper)
5.2 時間経過とランダムな音
5.3 声で楽器音をコントロール
5.4 声の高さで映像をコントロール
5.5 Webカメラでエアドラミング
5.6 音の高さと長さを自由自在にチェンジして再生
5.7 フレーズスライサー(Phrase Slicer)
 REPORT Pd-conレポート

APPENDIX:Pdオブジェクトリファレンス

Errata

初版第1刷
P.18 下 コラム 誤:Squeak
正:Scratch
P.59 Preference 誤:Pdの初期設定を行う。
正:Pdの環境設定を行う。
P.59 Audio Settings 誤:ここ複数の
正:ここに複数の
P.67 下 誤:実験電子音楽の分野ご自分で
正:実験電子音楽の分野でご自分で
P.76 下 コラム 誤:先頭からArrayの格納されていくことが、
正:先頭から格納されていくことが、
P.80 上 誤:65,536段階=21616bit
正:65,536段階=216=16bit
P.83 下 誤:材料
正:材料(新規追加分)
P.85 下 誤:パッチch-step2.pd
正:パッチch3-step2.pd
P.96 下 誤:材料
正:材料(新規追加分)
P.100 下 誤:key
  select
  dac~
正:key×1
  select×1
  dac~×1
P.105 下 誤:材料
正:材料(新規追加分)
P.105 下 誤:inlet
  outlet
  pd
正:inlet×1
  outlet×1
  pd×3
P.113 下 誤:材料
正:材料(新規追加分)
P.121, 124 下 誤:材料
正:材料(新規追加分)
P.126 いちばん上の図 青囲みの位置 pd seq_play2のみを囲む
P.126 上から2番目の図 青囲みの位置 nameのsnd2を囲む
P.131 誤:別の場所に[receive~ scope_output][receive~ scope_output2]と
正:別の場所に[receive~ out_tr1][receive~ out_tr2]と
P.131 図 青囲みの位置 [send~ out_tr1]を囲む
P.142 下 誤:「Amplifier Envelope(アンプリファイアー・エンベロープ)」
正:「Amplitude Envelope(アンプリチュード・エンベロープ)」
P.145 中 誤:基本周波数の整数信の
正:基本周波数の整数倍の
P.155 完成パッチ図 中央下のメッセージボックス 誤:メッセージボックス[1 100] [0 100]
正:メッセージボックス[0 200] [1 100] →画像
P.168 上 誤:パッチを開いた直後は、[pack f f]に左インレットに
正:パッチを開いた直後は、[pack f f]の左インレットに
P.168 下 正:bangデータが左インレットに
誤:bangデータが[f 1]の左インレットに
P.170 下 誤:4つ問題の
正:4つの問題の
P.176 上 誤:Sustain、Releaseの7つが
正:Sustain(level)、Releaseの7つが
P.179 右下 誤:(最大128のうち)
正:(最大127のうち)
P.179 右下 誤:5番目:Sustain 50ミリ秒
正:5番目:Sustain(level) 50(最大100のうち)
P.180 上 誤:Sustain、Releaseの
正:Sustain(level)、Releaseの
P.182 完成パッチ図のところ 追加:sample/ch4/seq_trig_pitch_vol.pd
P.186 上 誤:Array $0-sequnit-trigの
正:Array[$0-sequnit-trig]の
P.186 下 誤:Array $0-sequnit-trigに
正:Array[$0-sequnit-trig]に
P.188 上 誤:Array $0-sequnit-pitchの
正:Array[$0-sequnit-pitch]の
P.188 中 誤:Array $0-sequnit-pitchと
正:Array[$0-sequnit-pitch]と
P.188 下 誤:Array $0-sequnit-pitchの
正:Array[$0-sequnit-pitch]の
P.189 上 誤:Array $0-sequnit-volの
正:Array[$0-sequnit-vol]の
P.205 上 誤:Mod ulator:変調波
正:Modulator:変調波
P.205 中 誤:図のように[intet~]
正:図のように[inlet~]
P.211 中 誤:アーギュメントの[$0- delayline]は、
正:アーギュメントの[$0-delayline]は、
P.216 中 誤:フィードバックの機能を加わります。
正:フィードバックの機能が加わります。
P.216 中 誤:親パッチでの表示するパート
正:親パッチで表示するパート
P.218 右中の図のキャプション 誤:短形波
正:矩形波
P.220 中 誤:Abstraction[ph asor_osc~]を
正:Abstraction[phasor_osc~]を
P.223 図 パッチの数値 upとdownのナンバーボックスを30に。
P.224 上 誤:デジタルの音波形を
正:デジタルのオシレータを
P.228 上 誤:パッチ「fm_osc~.pd」という名前をつけてを保存
正:パッチを「fm_osc~.pd」という名前をつけて保存
P.230 上の図 [outlet~]に青囲みを追加
P.233 上 誤:試しにシーケンサーパートで、
正:試しにch4-step13-1.pdのシーケンサーパートで、
P.233 右下の図のキャプション 誤:キャリア1Hz(y=sinx)
正:Modulation_indexが2の波形
y=sin(x+sin2x*2)
P.238 中 誤:Array[$0-wavef orm]
正:Array[$0-waveform]
P.242 上 誤:Abstraction[wave table_osc~]を
正:Abstraction[wavetable_osc~]を
P.253 下 誤:フィルタのVelocity、EGパート、
正:フィルタのVelocityとEGパート、
P.263 – Abstractionのところに追加 loop_track×1
P.268 ①の末尾に追加 このArray[$0-track]のみが呼び出された親パッチで表示されるように設定しています。
P.273 – Abstractionのところに追加 slider_adsr_vol_def×1
delayunit_def×1
P.277 ④ 誤:メッセージボックス[30 1500 40]
正:メッセージボックス[30 1500 30]
P.277 ④ 誤:フィードバック量40%
正:フィードバック量30%
P.285 右上図 右下の3つのオブジェクトを青で囲む⇒⑤
P.291 ③ 誤:[separat or]
正:[separator]
P.304 右下図の青囲み [pix_crop]までが①。[pix_blob]だけを②として青囲み。[pix_texture]から下が③。
P.320 中 誤:グレインの終わりと次のグレイン始まりの
正:グレインの終わりと次のグレインの始まりの
P.326 上 コラムタイトル 誤:[wrap~]での波形の変形する
正:[wrap~]で波形を変形する
P.334 ① 誤:Abstraction[seq_phrase]
正:Abstraction[seq_phrase_rec]
P.334 図のキャプション 誤:Abstraction[seq_phrase]
正:Abstraction[seq_phrase_rec]
P.335 ④ 誤:メッセージボックス[(0〜15のリスト”]
正:メッセージボックス[“0〜15のリスト”]
P.338 上 誤:ライブラリの開発者それらの質問
正:ライブラリの開発者がそれらの質問
P.339 上 誤:リスエスト
正:リクエスト
Related Books