Skip to content
 
 

Repository files navigation

NeuralAmpModelerCoreParametric

Build

Core C++ DSP library for NAM plugins.

This is a fork of NeuralAmpModelerCore that adds runtime support for parametric models (HyperWaveNet, ConcatWaveNet, ConcatLSTM) — architectures conditioned at runtime by a hypernetwork that generates their weights, or by control values concatenated onto the audio as extra input channels, enabling continuous, knob-controllable parameters on a loaded .nam model.

For an example of how to use, see NamParametricPlugin, since the upstream NeuralAmpModelerPlugin cannot load this fork's parametric models.

Included Tools

This repo includes a few helpful tools. For guidance on building them, have a look at the workflow provided in .github/workflows/build.yml.

  • run_tests, which runs a suite of unit tests.
  • loadmodel, which allows you to test loading a .nam file.
  • benchmodel, which allows you to test how quickly a model runs in real time. _Note: For more granular profiling tools, check out the main-profiling branch.

Sharp edges

This library uses Eigen to do the linear algebra routines that its neural networks require. Since these models hold their parameters as eigen object members, there is a risk with certain compilers and compiler optimizations that their memory is not aligned properly. This can be worked around by providing two preprocessor macros: EIGEN_MAX_ALIGN_BYTES 0 and EIGEN_DONT_VECTORIZE, though this will probably harm performance. See Structs Having Eigen Members for more information. This is being tracked as Issue 67.

Sponsors

Tone3000 logo

Development of version 0.4.0 of the upstream NeuralAmpModelerCore library (which this fork is based on) was generously supported by TONE3000. Note that TONE3000 has no involvement in this fork or its parametric-model features — please direct any questions about that work here, not to them. Thank you!

About

Core DSP library for NAM plugins

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages