hvcc

The heavy hvcc compiler for Pure Data patches. Updated to python3 and additional generators

View the Project on GitHub

Supported vanilla objects

These are all the objects that hvcc is able to parse.

Here is a list of unsupported Pd objects.

Message Objects

!=
%
&
&&
|
||
*
+
-
/
<
<<
<=
==
>
>=
>>
abs
atan
atan2
b
bang
bendin
bendout
bng
change
clip
cnv
cos
ctlin
ctlout
dbtopow
dbtorms
declare
del
delay
div
exp
f
float
floatatom
ftom
hradio
hsl
i
inlet
int
line
loadbang
log
makenote
max
metro
min
midiin
midiout
midirealtimein
mod
moses
mtof
nbx
notein
noteout
outlet
pack
pgmin
pgmout
pipe
poly
pow
powtodb
print
r
random
receive
rmstodb
route
s
sel
select
send
sin
spigot
sqrt
stripnote
swap
symbol
symbolatom
t
table
tabread
tabwrite
tan
tgl
timer
touchin
touchout
trigger
unpack
until
vradio
vsl
wrap

Signal Objects

*~
+~
-~
/~
abs~
adc~
biquad~
bp~
catch~
clip~
cos~
cpole~
czero_rev~
czero~
dac~
dbtopow~
dbtorms~
delread~
delwrite~
env~
exp~
ftom~
hip~
inlet~
line~
lop~
max~
min~
mtof~
noise~
osc~
outlet~
phasor~
powtodb~
pow~
q8_rsqrt~
q8_sqrt~
receive~
rmstodb~
rpole~
rsqrt~
rzero_rev~
rzero~
r~
samphold~
samplerate~
send~
sig~
snapshot~
sqrt~
s~
tabosc4~
tabplay~
tabread4~
tabread~
tabwrite~
throw~
vcf~
vd~
wrap~

-p Search Paths

hvcc will iterate through various directories when resolving patch objects and abstractions. The -p or --search_paths argument can be used to add additional folders for hvcc to look in.

This can be handy when using a third-party patch library for example https://github.com/Wasted-Audio/heavylib.

$ hvcc ~/myProject/_main.pd -o ~/Desktop/somewhere/else/ -n mySynth -p "[~/Workspace/Projects/Enzien/heavylib/, ~/Desktop/myLib/]"