HISE Logo Forum
    • Categories
    • Register
    • Login

    NeuralNetwork.loadNAMModel() functional?

    Scheduled Pinned Locked Moved General Questions
    14 Posts 4 Posters 262 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • OrvillainO
      Orvillain
      last edited by

      Link Preview Image
      Neural Amp Modeler (NAM) in HISE

      @Lurch I mean, it works? The performance is seemingly twice as bad as the NAM plugin, but only because the neural node in HISE is processing two channels, an...

      favicon

      Forum (forum.hise.audio)

      See this post.

      Musician - Instrument Designer - Sonic Architect - Creative Product Owner
      Crafting sound at every level. From strings to signal paths, samples to systems.

      iamlampreyI 1 Reply Last reply Reply Quote 0
      • iamlampreyI
        iamlamprey @Orvillain
        last edited by

        @Orvillain Yeah that thread got me to where I am 🙂 my use-case can't store the JSON data inside the plugin since I want the end-user to be able to load their own NAM models, I need dynamic save/load (working-ish) and persistence (apparently not working)

        1 Reply Last reply Reply Quote 0
        • iamlampreyI
          iamlamprey
          last edited by iamlamprey

          Alright I'm officially stumped:

          For the record, this behavior happens for any container, not just the soft_bypass.

          resonantR 1 Reply Last reply Reply Quote 0
          • resonantR
            resonant @iamlamprey
            last edited by

            @iamlamprey what about loading the nam models as json objects?

            iamlampreyI 1 Reply Last reply Reply Quote 0
            • iamlampreyI
              iamlamprey @resonant
              last edited by

              @resonant said in NeuralNetwork.loadNAMModel() functional?:

              @iamlamprey what about loading the nam models as json objects?

              Yeah that's how I'm loading them. It was working fine at first but it seems like the more I tinker with it the worse it gets, now the original code isn't working at all

              1 Reply Last reply Reply Quote 0
              • iamlampreyI
                iamlamprey
                last edited by

                Here's a minimal snippet:

                HiseSnippet 1503.3oc2W80aZbDDeOvWRflH0zlGpTeYkUkJoxhXHD6zVUUiwPqSMXjOWq7VzxcKvFu2tmtaObnQ489Z+1zOF8iR+FzNycGvQBwwgzF0TPBtclcl42N67uqen1kGEoCIVkOcZ.mXcSamoJy3ViYBE4vC.518Z10viL0I6OMfEEw8HVVE+AjuUoMHIe9yueeljob4KHQHmoEt7iD9ByBp826mDRYGlG+Tgetc2XuCc0pVZoNFvRQ6sIAL2yYi38X31JXS9QVzXh0WY65Mn988Z3VuA+quOeXiGtas56NrV8Grai5rcZz.3w2cGVch00Z6IL5PGCCfOwZi80dScFquPkZfyDQhARNtnFwArbJ4NZoGdDQpjViERu9ybRQDhkc+Etrhotr6X2U3IlSegq6iSXPWHQdGnUgkgWwkfWs7va6bvaEPxJGj1HER211wMTDXVvAwyGYenxvCGxf6o7PIcujB5B1szvNTlp9ry4cBgEyknxNau8VT3m69skKC2UQFpRQ+NZa0HghW0MjCmid73PlrG2bgN77Jap3Wzq2lf.o6enPxAI5.+4LMxv8qNLT62bPjVFa38YlwU1bJD.fOcO7gtZOtr5SizJPIz6cOZbDmxnfojz.XSkKCzFIlvolw.iAZ3oMQqrIcBKTv.+W9sSMZXIDNS8QESq.vZBOzv8PNOx43d2EUHnKEMV4p88AWQhpU7mYnR3b9MnISOMHrfSCZtpRMyqYzwCdJ20TAcPHVyoAQD8BTq.T7lhLECoBC0SyiTeoghdqsndgrQIVqKf0potRpBPJUGan5gI7.aaf3Kd3Vo3b.jlPEJzhJUBNfyWheqBBPDKCAjXD.X0pdZC+XUk6V94kKU9EkouLqgCWIOLpHTKk7vUxFSkCuLAqnh8GfPdBSFymuQHbc4b.6WeNP9TT2zfzbaTqNTILGGvUutDWRVjM7zOe3ALCCSbxnA6K.BCDHDrNfOAJaklFUx9.dz4Fc.T35UxwfrasWrjYVNkGKLlw.7AKkmg4RpHgYZ9Bm+iUG3pBwaa2WXbGuZLVXEXD7T+afwrpm2xt8vgPZyB.tgcmG+9qTY4rRkfMQieyrkzNOt1pJRZ8q1KBvCB4ArP9o59R1zJQL+.I+D.iaQGH0tm6H9E9qlUDjBg8wcTwcLSo3xn0I44ZWYuRsK+R4Dn9hPMBJ6DJdFjE1K12Ap95xakgNflUALGJc813ZLtvgq7RV7WvmLl0v0VYLqMiYtzurtCIWGYOSrtA56uFNpQcxY7vHLrz551aWE9RZJk5KZo8CDYArv0QBs9Z4zfwZkvEIktiYftouNFrWFxWDsu+ralYGBXvhSYBIF76DGAkP7NV4.5IYZFH3ypGTME.WGlK3smhMmvjn4Ehq5NOxM6.rHrAc3oSvjwB00robRMeqzlDIy3XUD4m5YRMJp0qamZg2..VkUmI55X1aXqRZAsrcuksO1cJi0pr4b4dCFsPtxtoYl3JntSgzCcRSLxYXPOtLYVBn.BKDrBLSRR0jkVbYp6l1GFcFx0kMWmPfw6rBdW6k7oyJB1L1SnORiBmDJcmTJTjDEKuvCqcICf+GW0AvCtxCfCuGfa2jvgEMqR5bbZHLyATuHuoPX1VgCb4km7IZsAGrH+K.3jTlDpZEZ.0uzt4vzXQKqAbXwz3pO2948O43G0t0oOoywGcP6SdwSgSgW0KXSH9nuv152KQH9LrDl0Q+VIhD.UhclwSlfRuY7sJdYugPs07MD13+bugvG.CurTm4Ryvni.CUZCCoKgDiDL9IPZzPVrzLi5xYEc0J8rNB4CrfNaiFwCyi8UdfZZLPv8BJ2YuS3RNKJWD7Wr2QPUWV3Kma7V3Kp8VOkxJuu9L6T3RwTY5GtCcV7+0Cc9dY7p2G1vm4Fpeha5ToXb5MRn.maURA5R1cw0zZjIo8GWbW5CU4dhq6xp5UDr95J38WWAartB9f0UvcVWA2ccE7guYAwlPMiMZ+zTSXb49sSlqwxZdScqhj+FPQfL4d
                

                Unless I'm doing something horribly wrong (or my HISE installation is broken), I don't think this is in a usable state unfortunately, which is a shame because the NAM stuff provides a lot of agency for end-users that don't have the money for expensive amps

                Dan KorneffD 1 Reply Last reply Reply Quote 0
                • Dan KorneffD
                  Dan Korneff @iamlamprey
                  last edited by

                  @iamlamprey Does this work on your system?

                  https://hub.korneffaudio.com/index.php/s/J2XXWaB4HRKJRx7
                  I can't post this snippet directly cause I get an error

                  
                  Please enter a shorter post. Posts can't be longer than 64000 character(s).
                  

                  It's a pretty large cause it has the profile embedded instead of using an external file.

                  Dan Korneff - Producer / Mixer / Audio Nerd

                  OrvillainO iamlampreyI 2 Replies Last reply Reply Quote 0
                  • OrvillainO
                    Orvillain @Dan Korneff
                    last edited by

                    @Dan-Korneff Works here Dan. BTW, you can reduce your CPU usage by doing this:
                    0591e0b0-e5f4-47b1-ab39-e91eef083bad-image.png

                    In case you weren't aware. Trick from @aaronventure from another thread.

                    Musician - Instrument Designer - Sonic Architect - Creative Product Owner
                    Crafting sound at every level. From strings to signal paths, samples to systems.

                    Dan KorneffD 1 Reply Last reply Reply Quote 1
                    • Dan KorneffD
                      Dan Korneff @Orvillain
                      last edited by

                      @Orvillain nice! I was just trying to keep the original example intact.

                      Dan Korneff - Producer / Mixer / Audio Nerd

                      1 Reply Last reply Reply Quote 1
                      • iamlampreyI
                        iamlamprey @Dan Korneff
                        last edited by iamlamprey

                        @Dan-Korneff said in NeuralNetwork.loadNAMModel() functional?:

                        @iamlamprey Does this work on your system?

                        Yeah that one works fine, but if I try and save the object as a .nam again and load it:

                        Content.makeFrontInterface(600, 600);
                        
                        const nn = Engine.createNeuralNetwork("newNN");
                        const af = FileSystem.getFolder(FileSystem.AudioFiles); // thought a wildcard might play nicer
                        
                        // Any of these:
                        const file = FileSystem.fromAbsolutePath("myCoolProjectFolder/Scripts/model.nam");
                        //const file = FileSystem.fromAbsolutePath("myCoolProjectFolder/AudioFiles/model.nam");
                        //const file = af.getChildFile("model.nam");
                        
                        // Then convert to json
                        // Also tried loading the raw .json without the loadAsObject method
                        const json = file.loadAsObject();
                        
                        nn.loadNAMModel(json);
                        

                        Same issue, have to move it to/from a container before it works.

                        Dan KorneffD 1 Reply Last reply Reply Quote 0
                        • Dan KorneffD
                          Dan Korneff @iamlamprey
                          last edited by

                          @iamlamprey so you're having a file extension issue with .nam?
                          Rename it to .js and include it like any other script and see if that works.

                          Dan Korneff - Producer / Mixer / Audio Nerd

                          iamlampreyI 1 Reply Last reply Reply Quote 0
                          • iamlampreyI
                            iamlamprey @Dan Korneff
                            last edited by

                            @Dan-Korneff said in NeuralNetwork.loadNAMModel() functional?:

                            @iamlamprey so you're having a file extension issue with .nam?

                            I'm not sure it's the .nam being a problem, I can convert it to .json and import it just fine:

                            1a89ab2b-1f66-4496-ac6f-6439c6ee2e65-{54D58F6B-1919-4F79-B0B8-A2DF183961E9}.png

                            This object is what I'm passing to the NN, it's just not updating when I call loadNAMModel() or clearModel() until I move it out of the container. At this point I'd say it's my HISE installation, I'll try debugging it today.

                            1 Reply Last reply Reply Quote 0
                            • resonantR
                              resonant
                              last edited by resonant

                              @Christoph-Hart Just a friendly bump. I hope you resolve the issues previously reported here regarding the Neural node (multiple neural model loading, CPU usage, crashes...etc.) as soon as possible. There are many people here waiting to use this node.

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              20

                              Online

                              1.9k

                              Users

                              12.4k

                              Topics

                              107.8k

                              Posts