《PUREDATA图形化音乐编程技术与应用》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:杨万钧
  • 出 版 社:
  • 出版年份:2017
  • ISBN:
  • 页数:0 页
图书介绍:

第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