第1章 初识Pure Data 1
1.1 什么是Pure Data 1
1.1.1 Pure Data简介 1
1.1.2 Pure Data的发展历史 3
1.1.3 关于Miller Puckette 4
1.1.4 Pure Data的基本功能 6
1.2 Pure Data的特点 7
1.2.1 图形化 7
1.2.2 实时性 10
1.2.3 开放性 11
1.3 Pure Data的发行版 13
1.3.1 Pure Data的主要发行版 13
1.3.2 Pure Data的其他发行版 13
1.4 Pure Data的安装 16
1.4.1 在Microsoft Windows系统下的安装 16
1.4.2 在Mac OS X系统下的安装 24
1.4.3 在Linux系统下的安装 32
第2章 Pure Data的设置与操作界面 36
2.1 Pure Data的操作界面 36
2.1.1 Pure Data的主窗口 36
2.1.2 Help Browser窗口 38
2.1.3 patch窗口 39
2.1.4 不同版本Pure Data的菜单 40
2.2 Pure Data的设置 42
2.2.1 Pure Data的音频设置 42
2.2.2 Pure Data的MIDI设置 46
2.2.3 音频和MIDI测试 48
2.2.4 启动项设置 50
2.2.5 查找路径设置 51
2.3 Deken Library Manager 53
2.3.1 什么是Deken 53
2.3.2 Deken的安装和打开 53
2.3.3 Deken的使用 54
2.3.4 库文件安全性 58
第3章 Pure Data的基本操作 59
3.1 初次使用Pure Data 59
3.1.1 新建第一个patch 59
3.1.2 patch的修改 63
3.1.3 patch的保存与关闭 65
3.2 Pure Data的基本操作 66
3.2.1 Patch中Object的基本操作 66
3.2.2 编辑模式和执行模式 69
3.2.3 修改字体大小 72
3.2.4 整理程序界面 72
3.3 Pure Data的其他操作 73
3.3.1 获取Pure Data的全部组件列表 73
3.3.2 帮助文件 73
3.3.3 创建组件副本 74
3.3.4 快捷键的使用 74
3.3.5 进行注释 75
3.3.6 atom 75
3.4 Pure Data组件应用的基本规则 76
3.4.1 hot inlet和cold inlet 76
3.4.2 connection 78
3.4.3 从右到左 78
3.4.4 自顶向下 79
3.4.5 纯数字表示 80
第4章 Pure Data的组件 81
4.1 Pure Data中的基本组件 81
4.1.1 Object 82
4.1.2 Message 83
4.1.3 Number 84
4.1.4 Symbol 86
4.1.5 Comment 87
4.2 GUI图形用户界面类组件 87
4.2.1 Bang 88
4.2.2 Toggle 88
4.2.3 Number2 88
4.2.4 Slider 88
4.2.5 Radio 89
4.2.6 VU 90
4.2.7 Canvas 90
4.3 Array和Graph组件 91
4.3.1 Array 91
4.3.2 Graph组件 92
4.4 GUI组件属性 92
4.4.1 GUI类组件的属性 92
4.4.2 Number和symbol 93
4.4.3 Bang功能 94
4.4.4 Toggle功能 96
4.4.5 Slider滑块功能 96
4.4.6 Radio选项 97
4.4.7 Canvas画布 98
4.4.8 使用GUI类组件时需注意的问题 99
第5章 Pure Data中的数学运算 100
5.1 算术运算 100
5.1.1 float浮点数与数的表示 100
5.1.2 简单算术运算 101
5.1.3 高级数学运算 105
5.1.4 三角函数 105
5.1.5 小数部分的运算 106
5.1.6 Number组件与取值范围 107
5.1.7 随机数的操作 108
5.1.8 表达式计算 109
5.2 逻辑运算 111
5.2.1 关系比较运算 111
5.2.2 逻辑运算 112
5.2.3 [moses]组件 112
5.2.4 [select]组件 113
5.3 list结构 113
5.3.1 list与list Message 113
5.3.2 list列表类型 114
5.3.3 分散list 116
5.3.4 数据与list之间的相互转换 116
5.4 运算顺序 118
5.4.1 hot inlet与cold inlet 118
5.4.2 组件连接的顺序 119
5.4.3 [trigger]组件 119
5.4.4 消息传递的深度 122
5.5 数学运算的应用 123
5.5.1 计数器 123
5.5.2 两个频率信号的音量控制 124
5.5.3 音程关系 125
5.5.4 随机旋律 125
5.5.5 作品长度计算 125
5.5.6 序列运算 126
5.5.7 不重复的随机数 126
5.5.8 声学单位之间的换算 127
第6章 控制级信号处理 129
6.1 控制相关的message 129
6.1.1 message消息 129
6.1.2 带变量的message 130
6.1.3 [set message] 130
6.1.4 [add message] 131
6.1.5 关于序列 132
6.1.6 bang的输入 132
6.1.7 bang相关的GUI对象 133
6.2 控制信号相关组件 133
6.2.1 [makefilename]组件 133
6.2.2 [openpanel]组件 133
6.2.3 简单的数据存储 134
6.2.4 [route]组件 134
6.2.5 [demultiplex]组件 135
6.2.6 [spigot]组件 136
6.2.7 [toggle]组件 136
6.2.8 组件框的特性 137
6.3 不同类型数据的应用 137
6.3.1 使用带有音高和音量的list 137
6.3.2 On/Off开关 138
6.3.3 命名的音高信息 138
6.3.4 简单的序列 138
6.3.5 有限计数器 139
6.4 Pure Data中时间的操作 140
6.4.1 [metro]节拍控制功能 140
6.4.2 [delay]延迟功能 140
6.4.3 [pipe]管道功能 141
6.4.4 [line]功能 142
6.4.5 [timer]计时器功能 143
6.5 时间相关的应用 144
6.5.1 自动化随机生成旋律 144
6.5.2 滑音效果 144
6.5.3 随机滑音旋律 145
6.5.4 不规则的随机节奏 145
6.5.5 卡农 146
6.5.6 休止 147
6.5.7 渐强和渐弱 147
6.5.8 节拍器 147
6.6 信息的发送与接收 148
6.6.1 发送与接收 149
6.6.2 使用list发送 150
6.6.3 send list序列 150
6.6.4 [value]变量 151
6.6.5 [loadbang]功能 151
6.6.6 用于控制数据的时间分辨率 152
第7章 数据流处理 153
7.1 Message消息 153
7.1.1 Message消息的结构 153
7.1.2 标准Message类型 154
7.1.3 Message框 155
7.1.4 Message框的特殊功能和方法 156
7.1.5 将多个元素和变量打包为一个list 157
7.1.6 通过[unpack]和[route]对message消息进行分解 158
7.2 组件间的无线信息传递 161
7.2.1 [send]和[receive] 161
7.2.2 可使用[send]发送的数据类型 162
7.2.3 [throw~]和[catch~] 163
7.3 Array,Graph和Table 164
7.3.1 Array的创建 165
7.3.2 使用Array显示音频信号波形 166
7.3.3 将数据写入Array 167
7.3.4 从Array中读取音频数据 168
7.3.5 使用Array回放音频采样 169
7.4 subpatch设计 170
7.4.1 对Pd进行扩展 170
7.4.2 subpatch的创建 171
7.4.3 subpatch的inlet和outlet 172
7.4.4 subpatch的关闭与复用 174
7.4.5 subpatch应用实例 174
7.4.6 自动创建patch 177
7.5 abstraction应用 178
7.5.1 abstraction的功能 178
7.5.2 abstraction的保存 180
7.5.3 abstraction的调用与编辑 180
7.5.4 在上层patch中绘制图形 184
7.6 $符号参数声明 188
7.6.1 用在Object组件框内的情况 189
7.6.2 用在Message组件框内的情况 191
第8章 音频信号处理基础 193
8.1 声学常识 193
8.1.1 声波 194
8.1.2 声波的测量 195
8.1.3 频率和增益 200
8.1.4 扬声器的数字化控制 201
8.1.5 声压和声能密度 201
8.1.6 周期性的噪声 202
8.2 数字音频基础 202
8.2.1 奈奎斯特采样定理和折叠效应 202
8.2.2 数模转换与模数转换 206
8.2.3 采样率和比特深度 206
8.2.4 控制数据与信号 207
8.2.5 DSP数字信号处理 210
8.2.6 其他“~”相关功能 212
8.3 基本振荡器 213
8.3.1 正弦波振荡器 213
8.3.2 锯齿波振荡器 213
8.4 其他波形的生成 214
8.4.1 使用正弦波叠加 215
8.4.2 锯齿波 216
8.4.3 三角波 217
8.4.4 方波 218
8.4.5 方波与逻辑运算 219
8.5 滤波器 222
8.5.1 低通滤波器 222
8.5.2 高通滤波器 223
8.5.3 带通滤波器 223
8.5.4 压控滤波器 224
8.6 包络发生器 224
8.6.1 声音信号包络 224
8.6.2 使用[line]实现的简单包络发生器 225
8.6.3 使用[vline~]实现的复杂包络发生器 226
8.6.4 使用数组保存包络 227
8.7 幅值与频率控制 228
8.7.1 声音信号的度量 228
8.7.2 音量的控制与混合 234
8.7.3 放大器 236
8.7.4 相位 238
8.7.5 声波的叠加特性 238
8.7.6 频率控制 240
8.8 基于声学原理的设计 242
8.8.1 反混叠功能 242
8.8.2 规格化与直流偏移 245
8.8.3 和弦 250
8.8.4 滑音 251
8.8.5 对ADC输入进行处理 251
8.8.6 随机化失谐旋律 252
8.8.7 振荡器的应用 252
8.8.8 将MIDI音符编号转换为频率值 254
第9章 声音合成与采样 256
9.1 声音的加法合成 256
9.1.1 谐波序列 256
9.1.2 随机产生音色 260
9.1.3 改变声音的色彩 260
9.1.4 自然律与十二平均律 260
9.2 声音的减法合成 261
9.2.1 白噪声 261
9.2.2 滤波器 262
9.2.3 粉红噪声 265
9.2.4 直流偏移 266
9.2.5 数字滤波器工作原理 267
9.3 声音的波塑形 269
9.3.1 不同波形信号 269
9.3.2 转移函数 273
9.3.3 受控随机波形 274
9.3.4 波形抢断 278
9.4 波塑形技术的应用 279
9.4.1 歌唱性波形 279
9.4.2 转移函数处理音频信号 280
9.4.3 偶次分量与奇次分量 280
9.5 调制合成 281
9.5.1 环形调制 281
9.5.2 频率调制 283
9.6 调制合成的应用设计 285
9.6.1 多声音材料复杂环形调制 285
9.6.2 实时环形调制 285
9.6.3 实时频率调制 285
9.6.4 相位调制 286
9.7 粒子合成 287
9.7.1 粒子合成原理 287
9.7.2 实时粒子合成 291
9.7.3 带反馈的实时粒子合成 292
9.7.4 粒子合成作为合成器功能 293
第10章 声音的采样 294
10.1 声音的采样 294
10.1.1 采样原理 294
10.1.2 声音文件 294
10.1.3 数据块 295
10.1.4 音频延迟 295
10.2 基于array的采样处理 296
10.2.1 array的功能 296
10.2.2 array的属性 298
10.2.3 用消息控制array 299
10.2.4 用array存储声音信息 301
10.2.5 播放存储的声音文件 304
10.2.6 用array实现波形的回放 308
10.3 采样技术的应用设计 309
10.3.1 简单采样器范例 309
10.3.2 带有变化速率的情况 310
10.3.3 任意位置采样 311
10.3.4 采样播放器 312
10.3.5 Loop发生器 313
10.3.6 混响 316
10.3.7 材质 316
10.3.8 梳状滤波器 316
10.3.9 八度倍频器 317
10.3.10 卡普拉斯—斯特朗算法 319
10.4 采样技术相关的其他内容 320
10.4.1 array振荡器 320
10.4.2 array的回放 321
10.4.3 以block方式回放array 321
10.4.4 基于采样的滑音效果 321
10.4.5 使用array的加法合成 324
10.4.6 延迟 325
10.4.7 4点插值算法 326
10.4.8 基于采样的延迟 326
第11章 声音调制与傅里叶变换 327
11.1 傅里叶分析 327
11.1.1 傅里叶变换原理 327
11.1.2 声音分量分析 328
11.1.3 对任何声音信号进行分析 330
11.2 傅里叶分析的应用设计 332
11.2.1 滤波器 332
11.2.2 折叠效应 333
11.2.3 压缩器 333
11.2.4 频谱延迟 335
11.2.5 [fiddle~]组件 335
11.2.6 调音器 337
11.2.7 八度倍频器第二版 338
11.2.8 音高跟随器 338
11.3 幅度校正 339
11.3.1 限制器 339
11.3.2 压缩器 341
11.3.3 积运算音 342
11.3.4 声源在空间中的运动 342
11.3.5 不同频谱窗口 344
第12章 MIDI控制技术 349
12.1 MIDI设置 349
12.1.1 MIDI设置 349
12.1.2 MIDI通道和端口 350
12.1.3 MIDI硬件 351
12.2 在Pd中处理Note事件 352
12.2.1 创建和处理Note事件 352
12.2.2 MIDI控制器 353
12.2.3 发送MIDI信息到其他软件 354
12.2.4 其他MIDI相关组件 354
第13章 基于GEM的影像处理 355
13.1 GEM与影像处理 355
13.1.1 GEM的功能 355
13.1.2 GEM与OpenGL 356
13.1.3 渲染基础 357
13.2 GEM中的基本组件 357
13.2.1 [gemwin]组件 357
13.2.2 [gemhead]组件 359
13.3 GEM窗口属性 363
13.3.1 fullscreen 363
13.3.2 Extended desktop 363
13.4 基本图像操作 364
13.4.1 [pix_image]组件 365
13.4.2 [pix_multiimage]组件 366
13.4.3 [pix_film]组件 367
13.4.4 [pix_movie]组件 367
13.5 图像处理 368
13.5.1 [pix_invert]组件 369
13.5.2 [pix_add]组件 370
13.5.3 [pix_mask]组件 371
13.5.4 [pix_convolve]组件 372
13.6 图形绘制 373
13.6.1 2D图形的绘制 373
13.6.2 3D图形的绘制 374
13.6.3 图形的处理和变换 375
13.6.4 材质与贴图 376
13.6.5 三维模型处理 378
13.7 lighting 380
13.7.1 图形与光源 380
13.7.2 [world_light]组件 381
13.7.3 [light]组件 382
13.7.4 [spot_light]组件 383
13.8 实时影像处理 384
13.8.1 [pix_video]组件 384
13.8.2 [pix_movement]组件 386
13.8.3 [pix_background]组件 386
13.8.4 [pix_blob]组件 387
13.8.5 [alpha]组件 388
13.8.6 [colorRGB]组件 388
13.8.7 实时视频输入 389
13.8.8 [pix_chroma_key]组件 390
13.8.9 视频混合 392
13.8.10 视频录制 394
第14章 网络数据与OSC控制 395
14.1 网络数据操作 395
14.1.1 [netsend]组件 395
14.1.2 [netreceive]组件 396
14.1.3 使用[netsend]和[netreceive]进行网络信号传递 397
14.1.4 与其他应用软件相连接 398
14.2 OSC 398
14.2.1 OSC协议 398
14.2.2 OSC连接的设置与建立 399
14.2.3 IP地址和主机名 400
14.2.4 OSC参数 401
14.2.5 连接到硬件或外部应用程序 405
14.3 TouchOSC 405
14.3.1 TouchOSC简介 405
14.3.2 TouchOSC的控制界面 406
14.3.3 TouchOSC的配置 408
14.3.4 在TouchOSC中设置CoreMIDI网络会话 412
14.3.5 使用TouchOSC控制Pure Data 413
第15章 人机界面设备设计应用 420
15.1 人机界面设备(HID) 420
15.1.1 键盘和鼠标 420
15.1.2 MIDI标准 423
15.1.3 使用信号来控制声音 424
15.2 人机界面设备的应用设计 425
15.2.1 实时回放patch 425
15.2.2 其他HID人机接口设备 426
15.2.3 视频输入 426
15.2.4 合成器控制 427
参考文献 430
后记 431
致谢 433
作者简介 434
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《Prometheus技术秘笈》百里燊 2019
- 《糊涂国王摸月亮 立体图形的组合》(韩)高滋贤文 2016
- 《英汉翻译理论的多维阐释及应用剖析》常瑞娟著 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《药剂学实验操作技术》刘芳,高森主编 2019
- 《林下养蜂技术》罗文华,黄勇,刘佳霖主编 2017
- 《脱硝运行技术1000问》朱国宇编 2019
- 《本草古籍辑注丛书 第1辑 《食疗本草》辑校》(唐)孟诜撰;(唐)张鼎增补;尚志钧辑校 2019
- 《本草古籍辑注丛书 第1辑 《吴氏本草经》》(魏)吴普著;尚志钧辑校;尚志钧辑注;尚元胜,尚云飞,尚元藕整理 2019
- 《潮剧闻见录》林淳钧编著 2019
- 《海洋油气计算流体力学》朱红钧编 2016
- 《我们村里的年轻人》赵明钧编绘 2019
- 《本草古籍辑注丛书 第1辑 《新修本草》辑复 下》(唐)苏敬撰;尚志钧辑复;尚志钧辑注;尚元胜,尚云飞,尚元藕整理 2019
- 《本草古籍辑注丛书 第1辑 《本草经集注》辑校》(梁)陶弘景编;尚志钧,尚元胜辑校 2019
- 《诚斋易传》(南宋)杨万里著;何善蒙点校 2019
- 《本草古籍辑注丛书 第1辑 中国本草要籍考》尚志钧撰;尚元胜,尚元藕整理 2019
- 《袁隆平》刘左钧编绘 2019