mirror of
https://github.com/mikeoliphant/neural-amp-modeler-lv2.git
synced 2026-05-07 12:00:16 +02:00
Compare commits
27 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 40a58b8ef2 | |||
| 3ca0fdc51f | |||
| 0227fdc1fc | |||
| b8dee789b5 | |||
| f8f73bff29 | |||
| fc5ff29f12 | |||
| ae14f2f13b | |||
| c747bb8f4d | |||
| 937e7764b8 | |||
| 1590c9c53b | |||
| c21f7d7254 | |||
| 9bb3a3f34d | |||
| 46a9691259 | |||
| 2b27baa15e | |||
| 2d3e4115e4 | |||
| 2da7a84a4d | |||
| 2f525e1a2a | |||
| 9c55e904cb | |||
| 3960aa75e7 | |||
| 436fb12664 | |||
| 7e03d2bd3d | |||
| 46c2bb823f | |||
| 5f91734de9 | |||
| d60ae6f369 | |||
| 6905406e95 | |||
| 011b741bbc | |||
| c4733d53bc |
@@ -20,10 +20,14 @@ jobs:
|
||||
env:
|
||||
CXX: clang++
|
||||
run: |
|
||||
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
|
||||
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DBUILD_UTILS=ON -DBUILD_NAMCORE=ON -DBUILD_STATIC_RTNEURAL=ON
|
||||
cmake --build . --config $BUILD_TYPE -j4
|
||||
cpack
|
||||
|
||||
- name: Run ModelTest
|
||||
working-directory: ${{github.workspace}}/build/src/NeuralAudio/Utils/ModelTest
|
||||
run: ./ModelTest
|
||||
|
||||
- name: Upload binary
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
@@ -47,8 +51,12 @@ jobs:
|
||||
- name: Build Plugin
|
||||
working-directory: ${{github.workspace}}/build
|
||||
run: |
|
||||
cmake.exe -G "Visual Studio 17 2022" -A x64 -T ClangCL ..
|
||||
cmake.exe -G "Visual Studio 17 2022" -A x64 -DBUILD_UTILS=ON -DBUILD_NAMCORE=ON -DBUILD_STATIC_RTNEURAL=ON -T ClangCL ..
|
||||
cmake --build . --config=release -j4
|
||||
|
||||
- name: Run ModelTest
|
||||
working-directory: ${{github.workspace}}/build/src/NeuralAudio/Utils/ModelTest/Release
|
||||
run: ./ModelTest.exe
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
|
||||
@@ -42,7 +42,7 @@ jobs:
|
||||
env:
|
||||
CXX: clang++
|
||||
run: |
|
||||
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
|
||||
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DLSTM_PREFER_NAM=OFF -DWAVENET_PREFER_NAM=OFF
|
||||
cmake --build . --config $BUILD_TYPE -j4
|
||||
|
||||
- name: Add LV2 Archive
|
||||
@@ -73,7 +73,7 @@ jobs:
|
||||
env:
|
||||
CXX: clang++
|
||||
run: |
|
||||
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DUSE_NATIVE_ARCH=ON
|
||||
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DUSE_NATIVE_ARCH=ON -DLSTM_PREFER_NAM=OFF -DWAVENET_PREFER_NAM=OFF
|
||||
cmake --build . --config $BUILD_TYPE -j4
|
||||
|
||||
- name: Add LV2 Archive
|
||||
@@ -102,7 +102,7 @@ jobs:
|
||||
- name: Build Plugin
|
||||
working-directory: ${{github.workspace}}/build
|
||||
run: |
|
||||
cmake.exe -G "Visual Studio 17 2022" -A x64 -T ClangCL ..
|
||||
cmake.exe -G "Visual Studio 17 2022" -A x64 -T ClangCL -DLSTM_PREFER_NAM=OFF -DWAVENET_PREFER_NAM=OFF ..
|
||||
cmake --build . --config=release -j4
|
||||
|
||||
- name: Add LV2 Archive
|
||||
@@ -130,7 +130,7 @@ jobs:
|
||||
- name: Build Plugin
|
||||
working-directory: ${{github.workspace}}/build
|
||||
run: |
|
||||
cmake.exe -G "Visual Studio 17 2022" -A x64 -DUSE_NATIVE_ARCH=ON -T ClangCL ..
|
||||
cmake.exe -G "Visual Studio 17 2022" -A x64 -DUSE_NATIVE_ARCH=ON -DLSTM_PREFER_NAM=OFF -DWAVENET_PREFER_NAM=OFF -T ClangCL ..
|
||||
cmake --build . --config=release -j4
|
||||
|
||||
- name: Add LV2 Archive
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
project(NeuralAmpModelerLv2 VERSION 0.1.6)
|
||||
project(NeuralAmpModelerLv2 VERSION 0.1.7)
|
||||
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
||||
|
||||
|
||||
+2
-6
@@ -1,10 +1,6 @@
|
||||
This repository uses code from a number of sources:
|
||||
This repository uses code from a number of sources. Please see them for code licensing information:
|
||||
|
||||
https://github.com/sdatkinson/NeuralAmpModelerCore
|
||||
|
||||
https://gitlab.com/libeigen/eigen
|
||||
|
||||
https://github.com/jatinchowdhury18/RTNeural
|
||||
https://github.com/mikeoliphant/NeuralAudio
|
||||
|
||||
https://github.com/lv2/lv2
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ To get the intended behavior, **you must run your audio host at the same sample
|
||||
|
||||
For amp-only models (the most typical), **you will need to run an impulse reponse after this plugin** to model the cabinet.
|
||||
|
||||
### Models and Performance
|
||||
## Models and Performance
|
||||
|
||||
The plugin supports both [Neural Amp Modeler (NAM)](https://github.com/sdatkinson/neural-amp-modeler) models and [RTNeural keras json models](https://github.com/jatinchowdhury18/RTNeural) (like those used by [Aida-X](https://github.com/AidaDSP/AIDA-X)).
|
||||
|
||||
@@ -17,7 +17,7 @@ The best source of models is [ToneHunt](https://tonehunt.org/).
|
||||
|
||||
NAM WaveNet models are generally quite expensive to run. This isn't (much of) an issue on modern PCs, but you may have trouble running on less powerful hardware.
|
||||
|
||||
A Raspberry Pi 4 running a 64bit OS can run "standard" NAM models with a bit of room to spare for a cabinet IR and some lightweight effects.
|
||||
A Raspberry Pi 4 running a 64bit OS can run "standard" NAM models with plenty of room to spare for a cabinet IR and some effects. It is also capable of running two "standard" NAM models, but with less headroom for other effects.
|
||||
|
||||
If you are having trouble running a "standard" model, try looking for "feather", or even "nano" (the least expensive) models. You can find a list of ["feather"-tagged models on ToneHunt](https://tonehunt.org/models?tags%5B0%5D=feather-mdl). Note that tagging models is up to the submitter, so not all "feather" models are tagged as such - you should be able to find more if you dig around.
|
||||
|
||||
@@ -27,7 +27,7 @@ For more information on model type support, see the [NeuralAudio](https://github
|
||||
|
||||
The expected input level to the plugin is 12dBu. For models that include input level information, they will be calibrated against this level. If you know the input level of your audio interface, you should adjust the input level relative to the expected 12dBu to provide the appropriate signal level to the model.
|
||||
|
||||
### Building
|
||||
## Building
|
||||
|
||||
First clone the repository:
|
||||
```bash
|
||||
@@ -53,8 +53,8 @@ Note - you'll have to change the Visual Studio version if you are using a differ
|
||||
|
||||
After building, the plugin will be in **build/neural_amp_modeler.lv2**.
|
||||
|
||||
### Optimization
|
||||
## CMake Options
|
||||
|
||||
If you have a relatively modern x64 processor, you can pass ```-DUSE_NATIVE_ARCH=ON``` on your cmake command line to enable certain processor-specific optimizations.
|
||||
```-DUSE_NATIVE_ARCH=ON```: If you have a relatively modern x64 processor, you can pass ```-DUSE_NATIVE_ARCH=ON``` on your cmake command line to enable certain processor-specific optimizations.
|
||||
|
||||
You can also alter the default model loading behavior with ```-DLSTM_PREFER_NAM=ON``` (use NAM Core instead of RTNeural for NAM LSTM models) and ```-DWAVENET_PREFER_NAM=ON``` (use NAM Core instead of RTNeural or NAM WaveNet models).
|
||||
Also see the [NeuralAudio CMake options](https://github.com/mikeoliphant/NeuralAudio#cmake-options) - adding these to your neural-amp-modeler-lv2 cmake will pass them to the NeuralAudio build.
|
||||
|
||||
Vendored
+1
-1
Submodule deps/NeuralAudio updated: 84ef71b318...cddc6afcd1
@@ -16,7 +16,7 @@
|
||||
|
||||
<@NAM_LV2_ID@#model>
|
||||
a lv2:Parameter;
|
||||
mod:fileTypes "nam,nammodel,json,aidax";
|
||||
mod:fileTypes "nam,nammodel,json,aidax,aidadspmodel";
|
||||
rdfs:label "Neural Model";
|
||||
rdfs:range atom:Path.
|
||||
|
||||
|
||||
@@ -48,24 +48,6 @@ if (DISABLE_DENORMALS)
|
||||
add_definitions(-DDISABLE_DENORMALS)
|
||||
endif (DISABLE_DENORMALS)
|
||||
|
||||
option(LSTM_PREFER_NAM "Always use NAM Core for NAM LSTM models" ON)
|
||||
|
||||
if (LSTM_PREFER_NAM)
|
||||
add_definitions(-DLSTM_PREFER_NAM)
|
||||
message("Using NAM Core for LSTM models")
|
||||
else()
|
||||
message("Using RTNeural for LSTM models")
|
||||
endif (LSTM_PREFER_NAM)
|
||||
|
||||
option(WAVENET_PREFER_NAM "Always use NAM Core for NAM WaveNet models" OFF)
|
||||
|
||||
if (WAVENET_PREFER_NAM)
|
||||
add_definitions(-DWAVENET_PREFER_NAM)
|
||||
message("Using NAM Core for WaveNet models")
|
||||
else()
|
||||
message("Using RTNeural for WaveNet models")
|
||||
endif (WAVENET_PREFER_NAM)
|
||||
|
||||
set_target_properties(neural_amp_modeler
|
||||
PROPERTIES
|
||||
CXX_VISIBILITY_PRESET hidden
|
||||
|
||||
+15
-15
@@ -13,21 +13,21 @@ namespace NAM {
|
||||
// prevent allocations on the audio thread
|
||||
currentModelPath.reserve(MAX_FILE_NAME + 1);
|
||||
|
||||
NeuralAudio::NeuralModel::SetLSTMLoadMode(
|
||||
#ifdef LSTM_PREFER_NAM
|
||||
NeuralAudio::PreferNAMCore
|
||||
#else
|
||||
NeuralAudio::PreferRTNeural
|
||||
#endif
|
||||
);
|
||||
|
||||
NeuralAudio::NeuralModel::SetWaveNetLoadMode(
|
||||
#ifdef WAVENET_PREFER_NAM
|
||||
NeuralAudio::PreferNAMCore
|
||||
#else
|
||||
NeuralAudio::PreferRTNeural
|
||||
#endif
|
||||
);
|
||||
// NeuralAudio::NeuralModel::SetLSTMLoadMode(
|
||||
//#ifdef LSTM_PREFER_NAM
|
||||
// NeuralAudio::PreferNAMCore
|
||||
//#else
|
||||
// NeuralAudio::PreferRTNeural
|
||||
//#endif
|
||||
// );
|
||||
//
|
||||
// NeuralAudio::NeuralModel::SetWaveNetLoadMode(
|
||||
//#ifdef WAVENET_PREFER_NAM
|
||||
// NeuralAudio::PreferNAMCore
|
||||
//#else
|
||||
// NeuralAudio::PreferRTNeural
|
||||
//#endif
|
||||
//);
|
||||
}
|
||||
|
||||
Plugin::~Plugin()
|
||||
|
||||
Reference in New Issue
Block a user