Hey!
I stumbled upon a software called neural-amp-modeler that can can train a model of amplifier or distortion pedal so that guitar players can use it without having the pedal/amp itself. The procedure requires recording a processed input signal, providing the software with un-processed and processed versions of the file which is about ~3 min of length and after some time it outputs a .nam file which is used by a VST plugin. One can capture the cab as well using microphone.
So I was thinking if it is possible to use it by creating a model of an active subwoofer which adds distortion to the signal and then, when one has the model, derive an inverted error signal by subtracting original signal from the one processed by the plugin (sorta predicted) and mixing in this inverted error signal into the signal chain and hoping to reduce distortion in the subwoofer?
I understand that a lot of properties will change on both long and short term basis like heating voice coil and cone sag, for example, there is still a chance that having a model of loudspeaker may improve sound. It can probably be used as smart EQ, so that we deal with frequency response and distortion. Well, in my perfect imaginary world that is 🙂
I know that Klippel does something like this:
ACTIVE REDUCTION OF NONLINEAR LOUDSPEAKER DISTORTION
...However, recent activities in loudspeaker research have developed physical models for the nonlinear mechanisms. They are the basis for digital controllers which compensate actively for loudspeaker distortion by preprocessing the electric input signal inversely. This paper gives a summary of this work and shows possible applications to active noise control.
There are a lot of papers available where Volterra kernels are used and they date back a few decades, so the idea to model a non-linear system and use a kind of pre-distorted signal is not new. I am just thinking whether todays advances in AI/NN can be utilized in fruitful ways for us, hobbyists.
Thoughts?
I stumbled upon a software called neural-amp-modeler that can can train a model of amplifier or distortion pedal so that guitar players can use it without having the pedal/amp itself. The procedure requires recording a processed input signal, providing the software with un-processed and processed versions of the file which is about ~3 min of length and after some time it outputs a .nam file which is used by a VST plugin. One can capture the cab as well using microphone.
So I was thinking if it is possible to use it by creating a model of an active subwoofer which adds distortion to the signal and then, when one has the model, derive an inverted error signal by subtracting original signal from the one processed by the plugin (sorta predicted) and mixing in this inverted error signal into the signal chain and hoping to reduce distortion in the subwoofer?
I understand that a lot of properties will change on both long and short term basis like heating voice coil and cone sag, for example, there is still a chance that having a model of loudspeaker may improve sound. It can probably be used as smart EQ, so that we deal with frequency response and distortion. Well, in my perfect imaginary world that is 🙂
I know that Klippel does something like this:
ACTIVE REDUCTION OF NONLINEAR LOUDSPEAKER DISTORTION
...However, recent activities in loudspeaker research have developed physical models for the nonlinear mechanisms. They are the basis for digital controllers which compensate actively for loudspeaker distortion by preprocessing the electric input signal inversely. This paper gives a summary of this work and shows possible applications to active noise control.
There are a lot of papers available where Volterra kernels are used and they date back a few decades, so the idea to model a non-linear system and use a kind of pre-distorted signal is not new. I am just thinking whether todays advances in AI/NN can be utilized in fruitful ways for us, hobbyists.
Thoughts?
There is a lot of work in Physics guided neural networks (PGNN) with the aim of feedforward control. The issue is that you a specific dataset (of high quality) for each driver for it to work well. This is expensive to do in commercial productions. You would also need some form of feedback mechanism to keep the feedforward "in check". No matter how good your model is, its always wrong to a certain extend. This leads it to drift over time and feedback should keep it in check.
I do not know about reinforcement learning (but that's not really predistorting anyway).
There is also work by Thomas Helie and Pascal Brunet regarding the differential flatness approach.
Klippel still uses their "mirror filter" (which really is just adaptive feedforward similar to LPV feedforwards). Though it works very well!
I do not know about reinforcement learning (but that's not really predistorting anyway).
There is also work by Thomas Helie and Pascal Brunet regarding the differential flatness approach.
Klippel still uses their "mirror filter" (which really is just adaptive feedforward similar to LPV feedforwards). Though it works very well!