I have been using
faust2puredata successfully both on Bela and macos, with my latest fixes. This builds a Puredata external that can be used inside a Pd patch.
With a working installation of faust (commit 5bc96ce3080856ddb958aa24121170e89d321332 or above), you could do
faust2puredata myfile.dsp and obtain a compiled Pd external. For instance, using Faust's examples/delayEcho/smoothDelay.dsp:
will generate a file
smoothDelay~.pd_darwin on Mac (which you'd want to move e.g.: to
on Bela (which you'd want to move either to your project folder or to~/Bela/projects/pd-externals
). Then you can interact with it sending messages named after the interface of the.dsp` file, i.e.:
Now, how do you get the same benefit on Bela without having to install faust on the board? Here's the solution:
on the host you install the full faust distribution. Then you can run
faust2puredata -tosource smoothDelay.dsp
which eventually generates a
smoothDelay.cpp file, which you then copy on to the board and can compile there into a Pd external with
clang++ -std=c++11 -O3 -mfpu=neon -I/usr/local/include/libpd -fPIC -shared -Dmydsp=smoothDelay -o /root/Bela/projects/pd-externals/smoothDelay~.pd_linux smoothDelay.cpp
and off you go!