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.

You can read more about limitations in the getting started guide.

Here is a list of unsupported Pd objects.

Message Objects

object limitations
!=
%
&
&&
|
||
*
+
-
/
<
<<
<=
==
>
>=
>>
abs
atan
atan2
b
bang
bendin only some generators 1
bendout only some generators 1
bng
change
clip
cnv
cos
ctlin only some generators 1
ctlout only some generators 1
dbtopow
dbtorms
declare
del
delay does not accept tempo messages or unit argument
div
exp
else/knob converted to [f ]
f
float
floatatom
ftom
hradio converted to [f ]
hsl converted to [f ]
i
inlet
int
line
loadbang
log
makenote
max
metro does not accept tempo messages or unit argument
min
midiin only some generators 1
midiout only some generators 1
midirealtimein only some generators 1
mod
moses
mtof
nbx converted to [f ]
notein only some generators 1
noteout only some generators 1
outlet
pack no symbol on first inlet
pgmin only some generators 1
pgmout only some generators 1
pd
pipe
poly
polytouchin only some generators 1
polytouchout only some generators 1
pow
powtodb
print
r
random
receive
rmstodb
route right inlet not supported
s
sel
select right inlet not supported
send
sin
spigot
sqrt
stripnote
swap
symbol
symbolatom
t
table
tabread
tabwrite
tan
tgl
timer does not accept tempo messages or unit argument
touchin only some generators 1
touchout only some generators 1
trigger
unpack no initialization e.g. [unpack 0 0]
until
vradio converted to [f ]
vsl converted to [f ]
wrap

[1] Midi i/o objects are currently only supported for dpf, daisy and owl

Signal Objects

object limitations
*~
+~
-~
/~
abs~
adc~
bang~
biquad~
bp~
catch~
clip~
complex-mod~
cos~
cpole~
czero_rev~ arguments and control connections are ignored
czero~ arguments and control connections are ignored
dac~
dbtopow~
dbtorms~
delread~
delread4~
delwrite~
env~
exp~
ftom~
hilbert~
hip~
inlet~
line~
lop~
max~
min~
mtof~
noise~
osc~
outlet~
phasor~
powtodb~
pow~
q8_rsqrt~
q8_sqrt~
receive~
rmstodb~
rpole~
rsqrt~
rzero_rev~ arguments and control connections are ignored
rzero~ arguments and control connections are ignored
r~
samphold~
samplerate~
send~
sig~
snapshot~ outputs on the next audiocycle. does not support [set( messages.
sqrt~
s~
tabosc4~
tabplay~
tabread4~ right inlet does not do anything
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 such as heavylib.

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