Comments (8)
I've got some really good results with the Lancsoz resampler, which has much less aliasing that the interpolation modes and is fast and only adds a tiny bit of latency: sdatkinson/NeuralAmpModelerPlugin#341
from neuralampmodelercore.
Once I fixed that bug. Lol. Glad to see it helps!
from neuralampmodelercore.
Coming back to this, I don't think it makes sense to implement the resampler here: same as AudioDSPTools, it's not "NAM-specific" and others may have their own favorites already.
Still, I definitely appreciate the input on this Issue and will be referencing it as I work on getting resampling in my plugin; thanks!
from neuralampmodelercore.
Yes! You can look at the resampler from JUCE for inspiration. I've been using it with NAM since last summer and it works perfectly for this exact purpose. So might as well port it to NAM. I use a LagrangeInterpolator
from here -> https://docs.juce.com/master/classGenericInterpolator.html
from neuralampmodelercore.
Oh, by the way, two more requests for that:
getLatency()
method that tells us how many frames is the resampler's latency, so we can report it to the DAW to adjust PDC.prepare()
method to call outside audio thread that resizes those internal buffers every time sample rate or block size changes.
(obviously method names are arbitrary)
from neuralampmodelercore.
A few years ago this was considered the highest quality open source resampling library from the master behind Voxengo plugins: https://github.com/avaneev/r8brain-free-src. I assume it still is, check it out!
from neuralampmodelercore.
I am not sure that the cubic resampler WIP in the NeuralAmpModelerCore repo will be of high enough quality. Cubic resampling will introduce a lot of aliasing. But r8brain-free-src is not designed for real time usage afaik, and will be too heavy. I propose to use either WDL_Resampler or perhaps this which @baconpaul kindly MIT'd for me.
from neuralampmodelercore.
Implementing WDL_Resampler in the plug-in code would be simple
from neuralampmodelercore.
Related Issues (20)
- Gating activations in WaveNet are handled wrong
- some IR files with uncommon subchunk1Size (>16) would fail to load HOT 3
- High-pass & low-pass filters
- Ensure Eigen members are aligned correctly for optimized CPU instructions
- Store and get sample rate from impulse response player
- Use Eigen::Ref<> ?
- Remove `dsp/`
- Remove `dsp/` HOT 1
- Make core NAM interfaces mono HOT 4
- Get rid of `DSP::_process_core_()` and `DSP::_apply_output_level_()`, make `process()` do what `_process_core_()` does HOT 3
- Remove parametric model code HOT 5
- Get rid of `TARGET_DSP_LOUDNESS`
- Add namespaces to the library HOT 1
- Add `DSP::HasExpectedSampleRate` HOT 1
- Remove constructors with loudness HOT 2
- Change dsp to nam? HOT 3
- Move pre-warm to overridable method
- LSTM input-output is backward
- `Reset` method HOT 1
- Get rid of `nam::DSP::finalize_()`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from neuralampmodelercore.