Faust to Juce - buffers seem to be connected to mic not track

#1

​Hi

I exported freeverb_demo to Juce using the instructions at https://faust.grame.fr/doc/tutorials/index.html​

The project compiles and then loads into my DAW (Logic Pro X). However the input is always the onboard mic and never the audio that is in the track. Is there a way to get the audio to come from the Juce buffers rather than the onboard mic?

It would be good to know where the equivalent for processBlock is in the DspFaust code - there is so much code.

Thanks

Oliver

0 Likes

#2

This is probably the same problem described here ? https://github.com/grame-cncm/faust/issues/273

0 Likes

#3

Have you tried the other method ?
https://faust.grame.fr/community/news/index.html#faust-meets-juce
and :

0 Likes

#4

Thanks Stéphane
I will give that a go.

0 Likes

#5

I tried faust2juce but that didn’t do anything - the program just ends. Running from terminal on a Mac with the latest version of Xcode (I assume that the LLVM here would be fine).

faust2juce freeverb.dsp

Are there any other dependancies to run faust2juce?

I might also have a stab at using the other method to manually call compute in the processBlock call.

0 Likes

#6
  1. Read again : https://github.com/grame-cncm/faust/tree/master-dev/architecture/juce

By default it will create a plugin project, with a folder named with the dsp file name, containing a .jucer project with a FaustPluginProcessor.cpp file to be used by JUCE. The resulting folder has to be moved on the “examples” folder of your JUCE installation, the .jucer file has to be opened, and projects for specific native platforms can be generated.

  1. “I might also have a stab at using the other method to manually call compute in the processBlock call.”

Currently the DspFaust model does not play so well when deployed in a plugin context. I could not find an easy way to solve that for now, but I hope one can be found at some point. I suggest to try 1) again.

0 Likes

#7

Worked perfectly! Thankyou. (I wasn’t looking in the right place for the files - they were there all along)

0 Likes

#8

Hi Stéphane

I successfully created another plugin using the faust2juce method, based on compressor_stereo, however noticed that the horizontal sliders with a logarithmic scale have an issue when the plugin display is reopened. Any value that is not 1 causes the slider value to increase in a logarithmic way each time the display is reopened. I tried to dig around in the code and can see that the scale is managed each time the slider display is created by uiSlider and a LogValueConverter call is issued. It looks like the slider value is being changed there. I am not sure how to prevent this from happening - do you have any suggestions?

Thanks

0 Likes

#9

Can you send me the JUCE project ? Thanks.

0 Likes

#10

Hi Stephane

I noticed that the logarithmic scale was applied to the attack and response times, so maybe they should be linear scale anyway. In any case, I have included the code on the link below with the issue when the scale is set to log on a horizontal slider. Thanks

The files can be downloaded here:

0 Likes

#11

Thanks, but not sure to understand the issue :confused:, 1) how do you test it ? 2) Can you send some screen shots ? 3) can you send me the DSP source code ? 5) maybe we can use the Faust slack channel here : https://faustaudio.slack.com/

0 Likes