@HISEnberg Yes, that would be awesome.
BTW....thank you so much for the help. It's much appreciated.
Posts
-
RE: Changing Scriptnode Drop Down Parameter Via Script
-
RE: Changing Scriptnode Drop Down Parameter Via Script
@HISEnberg OHHHHH.....that might work! It ain't pretty.....but it might work...
-
RE: Changing Scriptnode Drop Down Parameter Via Script
@HISEnberg
So, I originally did that....each NN node had a different "model" loaded. But every time I switched between the nodes, there was an audible loud "click". You can also see from the first screenshot, I also used a Branch node....same problem. On the other hand, if I use just one NN node and switch the "model" in the dropdown parameter....no click. I just need to be able to control the value of the dropdown via script. The problem I'm having is that I can't figure out how to get a reference to the dropdown in the script. -
RE: Changing Scriptnode Drop Down Parameter Via Script
I cleaned up the network a bit. If I can get script access to the MODEL dropdown, I wouldn't need 5 neural nodes anyway.
So, hopefully this makes it easier to see what I'm trying to do...
Again, any help would be greatly appreciated.
-
Changing Scriptnode Drop Down Parameter Via Script
I am trying to change the "MODEL" dropdown value of a Neural node via script and I just can't seem to figure it out.
I had read that you reference the nodes by ID, but I don't see the IDs in the node properties.
If anyone could point me in the right direction, I would really appreciate it...
-
RE: 8 Times more CPU consumption on Aida-X Neural Models
@Christoph-Hart
If I might throw my humble 2 cents in....and my 2 cents are change left over from a whole career of working in guitar amp modeling software, having spent almost 20 years with the ReValver amp modeling software and another 4 years with the HeadRush pedals and software. The software market segment of simulating hardware has completely turned from component level modeling to leveraging NN modeling. Neural Network modeling allows us to do in a matter off days what took months or years to accomplish, with better results (most of the time). Beyond guitar products, NN modeling lends itself to preamp, channel strip, etc modeling, which is why it's such an opportunity for @orange. This has really nothing to do with simply downloading models from tonehunt.org, this is about implementing something that will be "how it's done" from this moment on. Here's a real-world scenario: I am currently working for a guitar amplifier manufacturer that has a 60+ year history in guitar amps. They would like to release plugin versions of every flagship amp they have ever made AND ship a plugin version with every new amp that they design and release. This is my project, NN modeling is how to do it, and I have to find the solution that lets me get it done.
Having said that, I have really fallen in love with HISE in a short time, but it might not be a realistic solution (at this point) for my project. I would hate to see all this not properly implemented in HISE. It would be such a missed opportunity.Having said all that.....we are about to enter the 2nd wave of NN modeling market disruption, which will truly change everything...again:
The first publicly-available parametric Neural Amp Model
Today, I'm releasing ParametricOD, a plugin that uses NAM's parametric modeling capabilities to give you a model of my overdrive pedal that is accurate across the full range of the pedal's knobs and switches.Get it here: Users | Neural Amp Modeler.GUI for the plugin.The plugin is available in VST3 and AU formats for macOS and VST3 for Windows with similar compatibility to the open-source snapshot plugin ("the NAM plugin"--or perhaps just "NAM"--to many users).This plugin is intended as a "concep
Neural Amp Modeler (www.neuralampmodeler.com)
Thanks for letting me get that out....
-
RE: Audio Spike when loading a Neural Network node.
@aaronventure
I placed the neural network node in a soft_bypass node and for the life of me, I can't seem to get a reference to the soft_bypass node. I am really struggling here....My network is called "theAmp" and the ID of soft_bypass node is "wrapneural1"......could you please show me how you would code the references?
-
RE: Audio Spike when loading a Neural Network node.
@aaronventure
Thank you so much for the response!
The problem is that I'm simulating the "GAIN" (or distortion) knob of a guitar amp by "mapping" multiple neural network amp models (each with increasing gain) to the different levels of a "GAIN" slider. As you turn the knob, NN models are being swapped out. It needs to be seamless. Whether it's a "pop" or a brief moment of silence, it's the same problem.
Again, it only does this once when you cycle through all of the NN models, after that, they are loaded and the "pop" goes away.My thinking is that, using the Branch node, only the first NN model is loaded and the rest are loaded as they are selected with the Branch node. If all of the NN nodes were outside of the Branch, they would all load at once. Is it possible to control the on/off of a node directly through script, without using a soft_bypass node?
-
RE: Audio Spike when loading a Neural Network node.
No thoughts here? I could really use some advise.
I hate to be a pest, but this might be a dealbreaker for this project. -
Audio Spike when loading a Neural Network node.
I have multiple Neural Network nodes that are wrapped in a Branch node. I am using a slider to control the branch to switch from one NN node to the next. Each NN is loaded with a model of the same guitar amp, but each model is of increasing distortion (Gain). This is all working fine, except that the first time you switch to any of the NN nodes, there is an audible audio spike (a pop, if you will). This only happens the first time. Once you have cycled through all of the NN nodes, it no longer "pops".
I have tried using soft_bypass instead on the branch node, but I have the same problem there.
The NN models are ADIA-X Json files and I am loading them into each NN node using the following method.
const var tf = Engine.createNeuralNetwork("TensorFlowNetwork");
//Loads ADIA-X JSON inot NNs
tf.loadTensorFlowModel(MLmodel_1);Does anyone has any insight into how I can stop or minimize this "pop?
-
RE: Advertisement and the use of brand names/famous equipment
@d-healey
Reading.....apparently so hard for me....
Per advice of the legal dept....when advertising/marketing and mentioning the "source" product we always have to say "based on" the source product AND have the disclaimer concerning ownership. We would make bold, general statements about how our product replicates famous hardware with "uncanny" accuracy, but we never would say that we were the best Marshall JCM800 emulation.
If that all makes sense? -
RE: Advertisement and the use of brand names/famous equipment
I have a great deal of experience with this, having worked on the HeadRush ReValver product for about 20 years. That product is all about representing famous gear. Legally, we do not have the right to use someone's trademark (logo, etc), so the common practice is to (1) name the product and design the logo in "spirit" of the source product and (2) put a disclaimer online and in the product stating that the brands implied are owned by the owners...lol. In the case of ReValver, we had an agreement with Peavey Electronics, Budda Amps, and Trace Elliot to use their actual logos and design, but you'd want that in writing.
If anyone has any specific questions regarding this....just hit me up. I'd be glad to help. -
RE: Things I've Learned about ML Audio Modelling
I believe the issue I'm seeing is that whenever a NN node is instantiated and loaded with a model the first time, there is a loud "pop" coming from the NN node. If you are trying to switch between multiple NN nodes, whether you are using a Branch node or a soft_bypass, the NN nodes are not instantiated UNTIL signal is passing through them. So, no matter what you use to switch between NN nodes, the first time they are selected, they pop. After that (at least with a Branch node), they no long "pop".
I could work around this, IF all the NN nodes instantiated at the same time (maybe on load). I could just mute the output of the node for a moment. But, it doesn't seem to work that way.
-
RE: Things I've Learned about ML Audio Modelling
@HISEnberg
I switched to a branch node and it does "pop" the very first time it cycles through each NN nodes. After that initial time, it doesn't "pop" as you cycle through. -
RE: Things I've Learned about ML Audio Modelling
@ccbl
So close!! I have 5 NN models, each wrapped in a soft bypass. All 5 are then loaded into a Split container. I have a slider mapped to a XFader module that controls the soft bypass states. As you turn the knob, the xfader controls the bypass. Think of it like the "GAIN" knob on an amp....as you turn up the slider, NN models of progressively more distortion are loaded. It's working.....BUT....when a NN is bypassed or unbypassed, there is an audible pop. Like I said, so close. LOL. -
RE: Swapping a neural network model at runtime.
@clevername27 LOL....I feel a bit bad about that. I didn't know it would do that.
-
RE: Swapping a neural network model at runtime.
@Christoph-Hart
I had assumed that "NeuralNetwork.clearModel()" would allow me to reset the NN, then I could follow with a new "NeuralNetwork.loadTensorFlowModel( var modelJSON)" function call. It obviously doesn't work this way.....but it would be amazing if it could....just sayin...lol. -
RE: Swapping a neural network model at runtime.
@sinewavekid
The snip found in this thread will get you goingHardcoded Neural Network does not work as expected
If anyone wants to start learning about RTneural, here's a snip that contains a model of the ProCo Rat pedal: HiseSnippet 20992.3oc6810imccdcmUKp1Rh1dlDj.ja4...
Forum (forum.hise.audio)
-
Swapping a neural network model at runtime.
I know the NN topic has had it's share of coverage for a while now. Thanks to all the hard work and efforts of so many here, I've got working NN that loads AIDA-X guitar amp captures. Now my challenge is that I want to be able to swap out NN models at runtime based on a user selection. What I am seeing is that once I instantiate the NN and load in the initial model, I cannot load another model at runtime. The first loaded models stays firmly in place.
I am creating and loading the NN using the following:
const MLmodel = {MODEL JSON HERE}; const var tf = Engine.createNeuralNetwork("TensorFlowNetwork"); tf.loadTensorFlowModel(MLmodel);
I had assumed that, if I created multiple vars to hold the different models (MLmodel_1, MLmodel_2, etc), I could simply swap them out by calling ".loadTensorFlowModel(model)". But alas no.
Has anyone gotten something like this working? Any advise would be greatly appreciated.
-
RE: Things I've Learned about ML Audio Modelling
@ccbl
After pounding my head against the wall for weeks, I finally feel like I'm making progress here. I've got the Aida-X models running! For the life of me, I can't seem to switch models once the NN is created and the first model is loaded. I am trying to load different Aida-x models based on a user selection. If I understand correctly, you got this working. Would you be willing to share how you are switching models?