Pure Data キーワード一覧
Pdパッチで使用するオブジェクトやコマンドのリファレンスです。
基本操作
| 操作 | ショートカット |
|---|---|
| オブジェクトの配置 | Cmd (Ctrl) + 1 |
| メッセージの配置 | Cmd (Ctrl) + 2 |
| ナンバーの配置 | Cmd (Ctrl) + 3 |
| シンボルの配置 | Cmd (Ctrl) + 4 |
| コメントの配置 | Cmd (Ctrl) + 5 |
| 編集/実行モードの切替 | Cmd (Ctrl) + E |
| 表示の拡大 | Cmd (Ctrl) + Shift + ; |
| 一時的な実行モード | Cmd (Ctrl) 押しっぱなし |
| ヘルプブラウザ | Cmd (Ctrl) + B |
| bangの配置 | Shift + Cmd (Ctrl) + B |
| toggleの配置 | Shift + Cmd (Ctrl) + T |
| 水平スライダの配置 | Shift + Cmd (Ctrl) + J |
| 配列の配置 | Cmd + Shift + A |
| オブジェクトの削除 | 選択 → Backspace |
| オブジェクトのヘルプ | 右クリック → ヘルプ |
音の生成
| オブジェクト | 説明 | 使い方 |
|---|---|---|
osc~ | 正弦波オシレーター | [osc~ 周波数] |
phasor~ | ノコギリ波 | [phasor~ 周波数] |
noise~ | ホワイトノイズ | [noise~] |
else/tri~ | 三角波(ELSEライブラリ) | [else/tri~ 周波数] |
else/square~ | 矩形波(ELSEライブラリ) | [else/square~ 周波数] |
オーディオ入出力
| オブジェクト | 説明 | 使い方 |
|---|---|---|
output~ | オーディオ出力 | level 値 メッセージで音量設定 |
else/out~ | オーディオ出力(DSP ON/OFFスイッチ付) | ELSEライブラリ |
dac~ | デジタル-アナログ変換(オーディオ出力) | [dac~ チャンネル番号] |
adc~ | アナログ-デジタル変換(オーディオ入力) | [adc~] |
音量・エンベロープ
| オブジェクト | 説明 | 使い方 |
|---|---|---|
*~ | シグナルの乗算(音量制御に使用) | シグナル × シグナル or 数値 |
line~ | 値の自動変化(シグナル) | [目標値 時間(ms)] のメッセージ |
vline~ | 連続的な値変化 | [値1 時間1, 値2 時間2 開始時間, ...] |
delay | 一定時間後にbang出力 | [delay 時間(ms)] |
else/asr~ | ASRエンベロープ | ELSEライブラリ |
else/adsr~ | ADSRエンベロープ | ELSEライブラリ |
else/envgen~ | 自由なエンベロープ | [else/envgen~ -curve] |
演算
| オブジェクト | 説明 | 使い方 |
|---|---|---|
+, -, *, / | 四則演算(値) | [+ 数値] |
expr | 数式で計算 | [expr $f1 * 2 + $f2] |
mtof | MIDIノート→周波数(Hz)変換 | 中央ドが60 |
データのルーティング
| オブジェクト | 説明 | 使い方 |
|---|---|---|
s (send) | 値の送信 | [s 宛先名] |
r (receive) | 値の受信 | [r 宛先名] |
sel | 値の振り分け | [sel 値1 値2 ...] |
route | 最初の値で振り分け | [route アドレス1 アドレス2] |
change | 値が変化した時だけ出力 | [change] |
t (trigger) | 右→左の順に値を送る | [t f b] (f:数値, b:bang, a:文字列) |
フィルタ
| オブジェクト | 説明 | 使い方 |
|---|---|---|
lop~ | ローパスフィルタ | [lop~ カットオフ周波数] |
hip~ | ハイパスフィルタ | [hip~ カットオフ周波数] |
bp~ | バンドパスフィルタ | 中央:カットオフ, 右:Q値 |
フィルタの注意点
lop~以外は右インレットにvline~のアウトレットを直接接続できません- 値(細い線)とシグナル(太い線)の違いに注意してください
ディレイ
| オブジェクト | 説明 | 使い方 |
|---|---|---|
delwrite~ | ディレイバッファへの書き込み | [delwrite~ $0-delay バッファサイズ(ms)] |
delread~ | ディレイバッファからの読み出し | [delread~ $0-delay 遅延時間(ms)] |
cyclone/delay~ | ディレイ(cycloneライブラリ) | cycloneライブラリ |
$0 について
$0 はPdのパッチそれぞれに割り当てられたID番号です。$0-delay のようにバッファ名に使うと、パッチを複製した際の名前の衝突を防げます。
シグナルと値の変換
| オブジェクト | 説明 | 使い方 |
|---|---|---|
sig~ | 値→シグナル変換 | [sig~] |
snapshot~ | シグナル→値変換 | bangが来た時のシグナル値を出力 |
metro | 定期的にbang出力 | [metro 周期(ms)] |
else/s2f~ | シグナル→値(自動) | bangなしで常時出力 |
else/f2s~ | 値→シグナル | ELSEライブラリ |
else/numbox~ | シグナル値の表示 | 表示用GUI |
DSPに注意
シグナル関連のオブジェクトは、DSPをオンにしないと動作しません。コンソール右上のチェックボックスをONにするか、output~ のボリュームを上げてください。
音源ファイル処理
| オブジェクト | 説明 | 使い方 |
|---|---|---|
else/play.file~ | 音源ファイルの再生 | [else/play.file~ ファイル名 ループ(0/1) 自動再生(0/1)] |
else/stretch.shift~ | ピッチシフト・タイムストレッチ | ピッチ: 0=元, 1200=1oct, テンポ: 100=元 |
else/xselect~ | クロスフェード切り替え | [else/xselect~ チャンネル数 フェード時間(ms)] |
else/xfade~ | クロスフェード | ELSEライブラリ |
else/rec.file~ | 録音 | [else/rec.file~ ファイル名] |
soundfiler | wavデータを配列に読み込み | read ファイル名 配列名 |
tabplay~ | 配列のオーディオ再生 | [tabplay~ 配列名] |
自動演奏
| オブジェクト | 説明 | 使い方 |
|---|---|---|
text define | テキストデータの定義 | [text define -k ファイル名] |
text sequence | テキストの順次出力 | auto:自動, bang:1ステップ, line 0:先頭へ |
else/drum.seq | リズムマシンGUI | [else/drum.seq 行数 列数] |
else/tempo | BPMテンポ出力 | [else/tempo BPM -mul 倍数] |
random | ランダム整数出力 | [random 最大値] |
micro:bit連携(OSC)
| オブジェクト | 説明 | 使い方 |
|---|---|---|
else/osc.receive | OSCデータ受信 | [else/osc.receive ポート番号] |
else/osc.route | OSCアドレスで振り分け | [else/osc.route /アドレス1 /アドレス2] |
cyclone/scale | 値のマッピング | [scale 入力min 入力max 出力min 出力max] |
clip | 値のクリッピング | [clip 下限 上限] |
else/smooth~ | 平滑化(シグナル) | ELSEライブラリ |
GUI
| オブジェクト | 説明 | 操作 |
|---|---|---|
| bang | トリガー送信 | クリックで送信 |
| toggle | 0/1切り替え | クリックで切替 |
| ナンバーボックス | 数値表示・入力 | ドラッグで値変更 |
| 水平スライダ | 値の連続入力 | 右クリック→プロパティで上限・下限設定 |
その他
| オブジェクト | 説明 | 使い方 |
|---|---|---|
print | コンソールに表示 | デバッグ用 |
comport | シリアル通信 | [comport デバイス番号 ボーレート] |
pd サブパッチ名 | サブパッチ | パッチ内にサブパッチを作成 |
clone パッチ名 | パッチの複製 | 同じパッチを複数生成 |
豆知識
ウェーバー・フェヒナーの法則
人間の主観的な感覚量は物理量の対数に比例するという法則。音量の変化を自然に感じさせるには、音量値を4乗するとよい。
楽音の構造
楽器のような音は、基音(一番低い音)とその正数倍の倍音が合成された構造を持つ。osc~ を複数組み合わせることで、さまざまな音色を作ることができる(加算合成)。