Giter VIP home page Giter VIP logo

Comments (6)

GuitarML avatar GuitarML commented on May 14, 2024

Glad to hear you are excited about it, and not a dumb question at all. The amp is intended to be more like a traditional guitar plugin, with no extra setup other than the VST, so the models are packed into the executable when compiling. Here are the steps to change out the models:

  1. Open up the project in Projucer and add your json models as a Resource. Right click "Resources", add existing files, and make sure to check "Binary Resource".

  2. Open the Visual Studio solution (or other target IDE). You should see the new .json model files under "Resources" in the solution explorer.

  3. Open PluginProcessor.cpp and edit lines 208 or 219 (this determines which model is used on the Lead or Clean channel):

     (208)  WaveNetLoader loader2(BinaryData::bluej_fullD_p0153_json);    --> 
                         WaveNetLoader loader2(BinaryData::YOUR_NEW_LEAD_MODEL_json);
    
     (219)  WaveNetLoader loader2(BinaryData::bluej_clean_p0088_json);   -->
                         WaveNetLoader loader2(BinaryData::YOUR_NEW_CLEAN_MODEL_json);
    

    Where "YOUR_NEW...MODEL" is just the filename of your json file. You can edit either one, or both, but keep in mind they are separately trained models.

  4. Build SmartAmp in Release mode.

If you have any issues let me know, but that should do it. If you have new models that you don't mind sharing I'd love to add them to the repo!

from smartguitaramp.

nikolayrantsev avatar nikolayrantsev commented on May 14, 2024

Hi Keith, thanks for the quick feedback and detailed instruction, it's helpful,

I wanted to experiment and upload the available SmartPedal and WaveNet model into Amp capabilities.

As far as I understand, the new model creation requires 2 audio samples - from clean in and effect out.
What about this? I'm dreaming about the super feature - upload one file (e.g. extracted solo stem, converted to FT32 .wav) and get .json with the particular tone. Then use it in the SmartAmp to be able to control EQ and other parameters,
Please share your thoughts!

from smartguitaramp.

GuitarML avatar GuitarML commented on May 14, 2024

I've thought some about that, it might be possible but it would be a very difficult problem to solve. The first part would be extracting a single guitar from the song. Say you wanted to extract Led Zeppelin's Stairway to Heaven solo guitar; there are lot's of layers in the same frequency range. I've seen a few different source separation software out there, but none that extract a guitar track yet.

If this could be done, there would then be the question of how to get a clean track. For the WaveNet technology, it needs a source signal to apply the "filter" of the WaveNet model over. Maybe through some method of machine learning you could generate a clean track based on the target track.

The next problem to tackle is that the WaveNet model is limited by the specific impulse it can handle (I think the paper states somewhere around 50ms). This can be extended at the cost of processing power. So it can handle distortion pedals and tube amps well, because what you play takes less than 50ms to run through the circuit. Things like reverb and delay extend out longer in time from the initial note, so you'd need a different kind of capture technology for that part of the signal.

The short answer is, I think it's possible and somebody will figure it out in the near future, but going from this code to that idea is a big leap. Glad you brought it up though!

from smartguitaramp.

nikolayrantsev avatar nikolayrantsev commented on May 14, 2024

Hi Keith,
Sharing my draft model - it's just fo the testing. Not real amp or pedal yet, it's only a clean guitar recorded and applied amp plugin. I've got very good results using https://github.com/keyth72/PedalNetRT on files y_test.wav, y_pred.wav, and x_test.wav.
Uploaded the custom model in the SmartGuitarAmp and hear something unexpected, like noise, delays, scratches and hyper distortion. The same result with WaveNetVA. Both works fine on the out-the-box models. I've probably built a plugins wrong (Xcode, release, eigen), could you please try the model on your configuration?
My gear and flow:

  • macOS 10.15.7 (19H2)
  • iRig HD2 (24/192 sound card)
  • Ableton 10 lite
  • Saved input files as wav, 32, mono with normalization.
    converted_model.json.zip

Thank you!!

from smartguitaramp.

nikolayrantsev avatar nikolayrantsev commented on May 14, 2024

Update: seems the question is related to the model conversion: GuitarML/PedalNetRT#2,
thank you

from smartguitaramp.

GuitarML avatar GuitarML commented on May 14, 2024

Issue resolved by reducing model size, closing

from smartguitaramp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.