Hacker News new | ask | show | jobs
by TrackerFF 2236 days ago
Isn't this essentially just learning the case of learning one function, with set parameters?

I.e, if you want to build a complete model of the tubescreamer, you'd essentially have to train a model for each possible setting on the pedal - or in other words, every combination of the knobs.

Sounds like a real chore, if you were to actually do that physically - and in the end, don't you just want to learn the impulse response of the circuit?

I know some tools - like the Kemper modelling gear, are made for that exact purpose, and with extremely convincing results.

1 comments

Not quite. As long as the knobs make consistent changes, just feed some large amount of tests and the model should generalize (smartly interpolate) the rest.

What I do have a problem with is that if the pedal is already implemented digitally, then all the human interpretability, along with the classic DSP machinery, is thrown out the window. A better approach would be to build the pedal via a differentiable programming language and then try to gradient descent toward some analog "can't get this juicy tube sound digitally" variant.

The knobs actually don't behave linearly on a tube screamer. Even the "tone" knob (EQ) doesn't behave at all linearly like you might expect out of consumer audio gear. Tube Screamers have an S-curve potentiometer in use for that knob.

That would be part of the problem with this approach.

Also with this approach you pretty much have to train the model with a near infinite collection of guitars in front of the model and a near infinite number of other effects turned on and off in front of the model.

The knobs don't have to be linear at all, just differentiable - that's the beauty of ML.

As for the collection of guitars and samples - not necessarily, it would depend on how you set up the training.