Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Engine/ScriptNode/Faust] Compiling a Faust node with vbargraph outputs doesn't preserve them in the compiled node #619

Open
aaronventure opened this issue Nov 28, 2024 · 5 comments

Comments

@aaronventure
Copy link

If you use vbargraph in Faust, it will create a cable output in the node, but the cable outputs will not be present on the compiled node.

something = 0.3;
somethingElse = 0.5;
intermediary = something * somethingElse : vbargraph("[0]CableOut", -1, 1);

process _,_ : par(i, 2, *(intermediary));

macOS 14.5
376a199

@sletz
Copy link

sletz commented Jan 4, 2025

@aaronventure: look at the attach primititive here.

@aaronventure
Copy link
Author

Of course, it needs to be in the process chain otherwise it's not visible at all in the HISE Faust node, and attach is useful for cases where you're not already using a variable in the chain.

But this issue pertains to HISE's handling of bargraph in compiled nodes.

Here's a simple example of how vbargraph looks in action in HISE when used in the Faust node. The Faust node will not show parameters or bargraph outputs if they're not in the process chain, so there's no error there.
image

But in order to actually use that Faust program in the final product, one first needs to compile the node, and if you then want to use it in ScriptNode with other nodes, you need to add the compiled node from the Project tab in ScriptNode (which means that the compilation of the Faust nodes should take place in a separate network which is used specifically for that). Once you have the compiled node, it looks like this. There's no vbargraph cable output.

image

The code was

import("stdfaust.lib");

gain = hslider("Gain", 1, 0, 1, 0.001) : si.smoo;

diff = 1 - gain : vbargraph("Difference", 0, 1);

process = _, _ : si.bpar(2, attach(*(gain), diff));

@trummerschlunk
Copy link

This would be very helpful and appreciated, as it will make HISE a great shell for Faust programs.
+1 <3

@sletz
Copy link

sletz commented Jan 6, 2025

I'm still not clear what has to be done as I understand this is a HISE integration issue yes ?

@aaronventure
Copy link
Author

I'm still not clear what has to be done as I understand this is a HISE integration issue yes ?

Probably, yeah, because bargraph works fine until the node gets compiled in HISE and converted to a standalone ScriptNode node. Christoph will confirm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants