1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
|
Installation-guide for iemlib under linux
iemlib_R1.15 is written by Thomas Musil from IEM Graz Austria
and it is compatible to miller puckette's pd-0.36-0 and pd-0.37-0.
see also LICENCE.txt, GnuLGPL.txt and README.txt.
1.) open a unix-shell, login as superuser, download and copy iemlib_R1.15_lin.tgz into your source-directory
(e.g. /usr/local/src/iemlib_R1.15_lin.tgz)
2.) untar and unzip iemlib_R1.15_lin.tgz
"shell"> tar xzvf iemlib_R1.15_lin.tgz
(and a directory iemlib_R1.15 will be created)
3.) create an externs-directory in your pd-installation-directory (if it does not exist)
"shell"> mkdir /usr/local/lib/pd/externs
4.) copy external-libraries
iemlib contains 4 *.pd_linux files (iem_mp3.pd_linux, iem_t3_lib.pd_linux, iemlib1.pd_linux, iemlib2.pd_linux)
"shell"> cp /usr/local/src/iemlib_R1.15/lib/*.pd_linux /usr/local/lib/pd/externs/
5.) copy pd-abstractions-folder
"shell"> cp -r /usr/local/src/iemlib_R1.15/iemabs /usr/local/lib/pd
6.) copy pd-help-files-folder
"shell"> cp -r /usr/local/src/iemlib_R1.15/iemhelp /usr/local/lib/pd/doc/5.reference/
7.) add to your pd_start_script, or into your pd-resource-file ~/.pdrc,
the following configuration-options:
-path /usr/local/lib/pd/externs -path /usr/local/lib/pd/iemabs -lib iemlib1:iemlib2:iem_mp3:iem_t3_lib
or create an executable textfile start_pd36 with this content:
#!/bin/sh
/usr/local/bin/pd -r 44100 -channels 2 -audiobuf 160 -audiodev 1 -nomidi \
-path /usr/local/lib/pd/externs -path /usr/local/lib/pd/iemabs \
-lib iemlib1 -lib iemlib2 -lib iem_mp3 -lib iem_t3_lib
How to compile iemlib under linux
after installing iemlib:
8.a) edit makefile of iemlib1
change to directory /usr/local/src/iemlib_R1.15/src/iemlib1
and edit the following line of makefile and save
( INCLUDE = -I. -I/usr/local/src/pd/src )
8.b) compile iemlib1
"shell"> make
( after this command, iemlib1.pd_linux will be created in /usr/local/src/iemlib_R1.15/lib/ ).
9.a) edit makefile of iemlib2
change to directory /usr/local/src/iemlib_R1.15/src/iemlib2
and edit the following line of makefile and save
( INCLUDE = -I. -I/usr/local/src/pd/src )
9.b) compile iemlib2
"shell"> make
( after this command, iemlib2.pd_linux will be created in /usr/local/src/iemlib_R1.15/lib/ ).
10.a) edit makefile of iem_mp3
change to directory /usr/local/src/iemlib_R1.15/src/iem_mp3
and edit the following line of makefile and save
( INCLUDE = -I. -I/usr/local/src/pd/src )
10.b) compile iem_mp3
"shell"> make
( after this command, iem_mp3.pd_linux will be created in /usr/local/src/iemlib_R1.15/lib/ ).
11.a) edit makefile of iem_t3_lib
change to directory /usr/local/src/iemlib_R1.15/src/iem_t3_lib
and edit the following line of makefile and save
( INCLUDE = -I. -I/usr/local/src/pd/src )
11.b) compile iem_t3_lib
"shell"> make
( after this command, iem_t3_lib.pd_linux will be created in /usr/local/src/iemlib_R1.15/lib/ ).
12.) copy external-libraries
"shell"> cd /usr/local/src/iemlib_R1.15/lib
"shell"> cp /usr/local/src/iemlib_R1.15/lib/*.pd_linux /usr/local/lib/externs/
contents of iemlib Release 1.15 from December 2003
============================ DSP~ ===============================
------------------------- filter~ -------------------------------
FIR~ finite impuls response filter, with array-coefficients
maverage~ moving average filter, (IIR + delay)
ap1~ allpass 1.order
ap2~ allpass 2.order
bpq2~ bandpass 2.order with Q-inlet
bpw2~ bandpass 2.order with bandwidth-inlet
bsq2~ bandstop 2.order (notch) with Q-inlet
bsw2~ bandstop 2.order (notch) with bandwidth-inlet
hp1~ highpass 1.order
hp2~ highpass 2.order
lp1~ lowpass 1.order
lp2~ lowpass 2.order
rbpq2~ resonance-bandpass 2.order with Q-inlet
rbpw2~ resonance-bandpass 2.order with bandwidth-inlet
hml_shelf~ high-middle-low shelving-filter with freq- and gain-inlets
lp1_t~ lowpass 1.order with time_constant inlet
para_bp2~ parametrical bandpass 2. order with freq-, Q- and gain-inlet
hp2_butt~, hp3_butt~, hp4_butt~, hp5_butt~, hp6_butt~, hp7_butt~,
hp8_butt~, hp9_butt~, hp10_butt~
highpass 2.3.4.5.6.7.8.9.10.order with butterworth characteristic
hp2_cheb~, hp3_cheb~, hp4_cheb~, hp5_cheb~, hp6_cheb~, hp7_cheb~,
hp8_cheb~, hp9_cheb~, hp10_cheb~
highpass 2.3.4.5.6.7.8.9.10.order with chebyshev characteristic
hp2_bess~, hp3_bess~, hp4_bess~, hp5_bess~, hp6_bess~, hp7_bess~,
hp8_bess~, hp9_bess~, hp10_bess~
highpass 2.3.4.5.6.7.8.9.10.order with bessel characteristic
hp2_crit~, hp3_crit~, hp4_crit~, hp5_crit~, hp6_crit~, hp7_crit~,
hp8_crit~, hp9_crit~, hp10_crit~
highpass 2.3.4.5.6.7.8.9.10.order with critical damping
lp2_butt~, lp3_butt~, lp4_butt~, lp5_butt~, lp6_butt~, lp7_butt~,
lp8_butt~, lp9_butt~, lp10_butt~
lowpass 2.3.4.5.6.7.8.9.10.order with butterworth characteristic
lp2_cheb~, lp3_cheb~, lp4_cheb~, lp5_cheb~, lp6_cheb~, lp7_cheb~,
lp8_cheb~, lp9_cheb~, lp10_cheb~
lowpass 2.3.4.5.6.7.8.9.10.order with chebyshev characteristic
lp2_bess~, lp3_bess~, lp4_bess~, lp5_bess~, lp6_bess~, lp7_bess~,
lp8_bess~, lp9_bess~, lp10_bess~
lowpass 2.3.4.5.6.7.8.9.10.order with bessel characteristic
lp2_crit~, lp3_crit~, lp4_crit~, lp5_crit~, lp6_crit~, lp7_crit~,
lp8_crit~, lp9_crit~, lp10_crit~
lowpass 2.3.4.5.6.7.8.9.10.order with critical damping
vcf_hp2~, vcf_hp4~, vcf_hp6~, vcf_hp8~
highpass 2.4.6.8.order with freq- and Q-signal-inlets
vcf_lp2~, vcf_lp4~, vcf_lp6~, vcf_lp8~
lowpass 2.4.6.8.order with freq- and Q-signal-inlets
vcf_bp2~, vcf_bp4~, vcf_bp6~, vcf_bp8~
bandpass 2.4.6.8.order with freq- and Q-signal-inlets
vcf_rbp2~, vcf_rbp4~, vcf_rbp6~, vcf_rbp8~
resonance-bandpass 2.4.6.8.order with freq- and Q-signal-inlets
------------------------ arithmetic~ ----------------------------
addl~ signal-addition with line~
divl~ signal-divison with line~
mull~ signal-multiplication with line~
subl~ signal-subtraction with line~
------------------------- converter~ ----------------------------
prvu~ peak and rms VU-meter interface
pvu~ peak VU-meter interface
rvu~ rms VU-meter interface
unsig~ signal to float converter
------------------ t3~ - time-tagged-trigger --------------------
-- inputmessages allow a sample-accurate access to signalshape --
t3_sig~ time tagged trigger sig~
t3_line~ time tagged trigger line~
--------------------------- misc~ -------------------------------
fade~ fade-in fade-out shaper (need line~)
iem_blocksize~ blocksize of a window in samples
iem_samplerate~ samplerate of a window in Hertz
int_fract~ split signal-float to integer- and fractal-part
LFO_noise~ downsampled 2-point interpolated white noise
mp3play~ mp3 stereo player
peakenv~ peak envelope shaper
pink~ pink noise
round~ round signal-float to nearest integer
sin_phase~ output phase-difference of 2 sinewaves in samples
========================= control ==============================
------------- gui (included into millers pd) --------------------
bng bang, display and generate a bang-message
cnv canvas, colored background and text
hdl horizontal dial, for multiplex usage
hradio horizontal radiobutton, only float in/out
hsl horizontal slider
nbx numberbox, the second
tgl 2 state toggle
vdl vertical dial, for multiplex usage
vradio vertical radiobutton, only float in/out
vsl vertical slider
vu vu-meter, display rms- + peak-level in dB
--------------------- float operating -------------------------
1p1z float-message-filter 1.order
db2v db to rms
dbtofad midi-db to fader-characteristic
fadtodb fader-characteristic to midi-db
fadtorms fader-characteristic to rms
rmstofad rms to fader-characteristic
round_zero round numbers near zero to zero
speedlim reduce speed of a numeric stream
split3 part a numeric stream into 3 ways
split part a numeric stream into 2 ways (like moses)
transf_fader partial linear characteristic diagram (like table)
v2db rms to db
wrap wraparound
-------------------- symbol operating -------------------------
mergefilename merge a list of symbols together
splitfilename divide a symbol into 2 parts
stripfilename strip n characters of a symbol
unsymbol convert a symbol- to a anything-message
------------------- anything operating ------------------------
any store and recall any message (like f, or symbol)
iem_append append a message to any messages (obsolete: merge_any)
iem_prepend prepend a message to any messages (abbr. pp or prepend)
-------------------------- init -------------------------------
default replace initial-argument, if it is zero
dollarg receive parent initial-arguments (abbr. $n)
dsp control audio-engine, calculate dsp-performance (aka. dsp~)
float24 store a 24-bit accurate float-number
init initialize a message via loadbang (abbr. ii)
once any message pass through only the first time
------------------------- counter -----------------------------
exp_inc exponential increment counter (bang triggered)
for++ incremental counter (triggered by internal metro)
modulo_counter endless loop counter (bang triggered)
-------------------------- misc -------------------------------
add2_comma add a comma-separated message to a messagebox
bpe break point envelope controller
f2note frequency to midi+cents+note
gate interruptible message connection (like spigot)
iem_i_route variation of route (abbr. iiroute)
iem_receive catch "sent" messages (receive-name-input) (abbr. iem_r)
iem_route improvement of route
iem_sel_any control a message-box with multiple content
iem_send send messages to named object (send-name-input)(ab. iem_s)
pre_inlet output an identifier-message and then the incoming message
prepend_ascii output an identifier-message and then the incoming message
soundfile_info output header-info of a wav-file
toggle_mess control a message-box with multiple content (abbr. tm)
------------------- parameter handling ------------------------
iem_pbank_csv parameter memory manager (csv-format) (like textfile)
list2send array of send-objects
receive2list array of receive-objects
--------------- t3 - time-tagged-trigger ---------------------
----------- a time-tag is prepended to each message -----------
----- so these objects allow a sample-accurate access to ------
---------- the signal-objects t3_sig~ and t3_line~ ------------
t3_bpe time tagged trigger break point envelope
t3_delay time tagged trigger delay
t3_metro time tagged trigger metronom
t3_timer time tagged trigger timer
-------------- obsolete ---------------------------------------
post_netreceive
pre_netsend
|