Snex_node Needs to be wrapped into a compileable DSP Network
-
Hey @d-healey, do you think you'll get any time soon to put together a video tutorial of this for us patreons?
Personally, I've been banging my head against the wall trying to get the Pitchshifter Tutorial working in an exported plugin.
I get as far as this after choosing to Wrap into DSP Network but things appear blank after Saving and reopening the project in HISE.
After saving an reopening things look like this:
I should note that I am using the develop branch to load this Pitchshifter tutorial project as I believe that the 'SNEX Workbench' is only available in develop.
Is this true?The instructions included in the tutorial project appear simple enough but attempting it seems far from trivial (see instructions below).
I'm also unable to find 'Tools/Compile All nodes' anywhere in HISEAny thoughts?... Sorry for the brain dump!
**Compile the PitchShift node
The first thing you should do is to compile the PitchShifter.xml network into a C++ node. Open the Network in the SNEX workbench, then go to Tools / Compile All nodes.The performance of the uncompiled node is around 5% CPU, and goes down to 0.9% CPU in Release mode.
Build the examples
When you compile the nodes in a project, they will also be copied to the AdditionalSourceCode directory of the project root and when you export a plugin from the project that uses one of the compiled nodes, it will compile them again and embed them into the binary of the plugin (so you don't need to ship that .dll that you've used in the SNEX workbench with your plugin). This is the recommended workflow for all non-trivial custom nodes in a project.** -
@LeeC said in Snex_node Needs to be wrapped into a compileable DSP Network:
ll get any time soon to put together a video tutorial of this for us patreons?
I won't do a tutorial for SNEX or scriptnode before HISE 3.0 is released, because this is still quite an active area of development and a lot might change (also I haven't spent that much time with it yet myself).
I believe that the 'SNEX Workbench' is only available in develop.
Is this true?Yes, as far as I know. You definitely want to be using the develop branch for this stuff anyway because there won't be any new updates for it to the master branch until HISE 3.0 is released.
'Tools/Compile All nodes'
That's in the workbench, I think it's been renamed to compile DSP networks.
-
Thanks for clarifying about the renamed "compile DSP networks" @d-healey.
Thought this might be the case but didn't want to assume. -
There are multiple locations where things might have gone wrong. Where did you get stuck?
- Compiling the pitch shifter to a dll
- Reload that as compiled node into the workbench.
- Open the compiled node in HISE.
-
@Christoph-Hart thanks for jumping in!
Really don't want to take up too much of your time on this one, but I guess I never saw instructions on how to compile this 'pitch shifter to a dll'.So step 1. I guess :beaming_face_with_smiling_eyes:
-
Check my first post in this thread, basically you just need to use the Tools / Compile Whatever function and it should run the exporter that compiles the dll you need. Then you will need to restart the SNEX workbench and the node should have been replaced by the dll one (indicated with the freeze icon).
-
@Christoph-Hart Ok, so by restarting the "SNEX workbench" do you mean restarting the whole of HISE? I don't see a specific option for the workbench.
I get as far as this after choosing to Wrap into DSP Network but things appear blank after Saving and reopening the project in HISE.
After saving an reopening things look like this:
-
@LeeC SNEX workbench is a separate application to HISE. It's in the Tools folder of the HISE source.
-
Hi, taking the opportunity to jump in :
On my side I can successfully wrap the nodes network into a DSP network but when I click on Tools/Compile DSP Network, the WB crashes.Everything is supposed to be set up correctly.
Using latest commit, Win10. -
@d-healey A ha... I was completely unaware of this!
Ok, I'll compile the SNEX workbench application and see how I get on :beaming_face_with_smiling_eyes:
-
@Matt_SF said in Snex_node Needs to be wrapped into a compileable DSP Network:
the WB crashes.
I have the same issue - https://forum.hise.audio/topic/4425/develop-branch-build-status/37?_=1629209779588 - Christoph is aware of it.
-
@d-healey Same Here
-
Actually I‘m not aware that it crashes on Windows so I just thought it‘s a Linux problem. Can you try to debug it in VS2017, it should point you to the crash location.
-
@Christoph-Hart I'll take a look
-
@Christoph-Hart No crash on Windows 10. I built with VS 2019. Because of this in order to compile the network I had to open the solution directly in VS and retartget it for 2019.
On GNU/Linux the crash happens instantly before the popup asking to select debug/release - but only in the release build.
-
Thanks @d-healey and @Christoph-Hart for clearing this up ! I'll check it on my side and keep you posted.
-
@Christoph-Hart First time I'm running a debug session but this is what the console outputs when I click on "compile DSP networks" :
JUCE Assertion failure in maincontroller.cpp:755
Then
Unhandled Exception at 0x00007FF77DF3F428 in snex_workbench.exe : 0xC00000FD: Stack overflow (paramètres : 0x0000000000000001, 0x0000003E40E63000).
Then
Unhandled Exception at 0x00007FF77DF3F428 in snex_workbench.exe : 0xC0000005:access violation writing location 0x0000003E40E60000.
Not sure if I'm helping or if I'm diving into something too complex for me that I don't understand but I gave it a try...
I'm using VS2017 (also built the WB with VS2019 but ended with the same crash) -
-
@d-healey said in Snex_node Needs to be wrapped into a compileable DSP Network:
Develop branch?
Yes sir
-
@Christoph-Hart custom math test-node successfully exported and used inside HISE. Great job !