AudioBlog Header

Having been satisfied with the previous experiments with a simple 2 stage valve preamp wrapped around the titl tone control and resonance/presence feedback loops I thought it would be interesting to hear what it had to do with several other effects. Using the models already available in the Guitarix source I went into mass production!

 

GxTubeTremelo - the valves with a tremelo emulation ( NOTE : tremelo is amplitude modulation but is misnamed in the majority of guitar amps as vibrato ).

 

GxTubeVibrato - the valves wrapped around a real vibrato ( NOTE : vibrato is frequency modulation ).

 

GxTubeDelay - simple delay with feedback and those valves again.

 

How does it all sound........maybe biased but pretty darned good to my ears. Compared to same effects without the valve wrapper there is a definite difference, sound is much "fatter" and more interesting.


Before I get lost in playing with effects back to the original plan of trying to accurately model the topology or real circuits.

 

While building a small practice amp I did some research into variations on a single tone control as I did not want the complexity of a full guitar tone stack.

After much experimentation I settled on a very simple circuit used in the famous Big Muff pedal from ElectroHarmonix as it provides a wide range of usable guitar tones and works extremely well in the amplifier which is lossely based on the Fender Champ topology. It comprises of 2 filters, one low pass the other high pass, blended together with a potentiometer.

Simulation is dsp code was trivial so I decided to see what I could do with this in some sort of distortion/overdrive pedal simulation. The result is the GxTiltTone valve overdrive. Basically a 2 valve preamp with simple drive, gain and tone control.

Faust Code.

 

By itself it gives a very usable range of distorted and clean tones, put it in front of an amp sim and it nicely overloads the input.

Next step is to try wrapping this valve preamp around a variety of other effects to see what it sounds like.

 

While I was busy experimenting with the dsp valve code the Guitarix team began releasing LV2 plugin versions their amps, at first these were hard wired configurations as the standalone amp has so many options it was not possible to make the plugin particularly usable unless it was simplified ( this is now not the case as a fully configurable plugin has now been produced ).

With the aim of becoming familiar with the LV2 architecture I decided to code a plugin based on my experiments and hence was born my first guitarix preamplifier.

This consist of a 2 stage valve preamplifier with a feedback loop and presence and resonance controls. Distortion/saturation is controlled by the level of the input gain.

Faust Code

Screenshot

Until recently one of the most common "complaints" about Linux audio plugins has been how they look, very little effort seems to have been made to make them "pretty" and thus many users are disappointed by the very computer like interfaces they are presented with. With recent releases from Calf Audio, Invada and LinuxDSP this is set to change as there is an obvious effort to bring them up to date with VST and other formats.

With this in mind I attempted to create a slick looking interface to the preamplifier plugin.

In use have found it very useful for adding a little bit of valve magic to individual instruments or to a whole mix. As is it is not intended to produce huge amounts of distortion, but just to add a little warmth and tone shaping, which it seems to do very well. It also works well as a boost in front of the Guitarix amplifiers.

Well chuffed!

 

In many guitar amps a presence control is inserted in the feedback loop. In effect this is high pass filter to ground, gradually bleeding more high frequencies to ground and thus decreasing the treble content of the feedback signal, which in turn means that the treble is accentuated in the final output.

To simulate the presence control a simple adjustable low pass filter was inserted into the feedback loop.

/*
	Experiments with Guitarix Components

	Series of experiments with aim of using the "tube" components 
	to build amplifiers as close as possible in topology as real valve amplifiers

	Steve Poskitt 2013

	Blog 1 - single valve stage
	Blog 2 - cascade valves to see effects of overload
	Blog 3 - add some NEGATIVE FEEDBACK and look at effects of filtering feedback loop
	Blog 4 -  Attempt to model simple guitar amp presence control

*/
import("math.lib");
import("music.lib");
import("effect.lib"); 
import("filter.lib");
import("guitarix.lib");

// Slider for the amount of treble bleed to ground.
vol = vslider( "Vol[style:knob]", -20, -70, 10, 0.1 ):db2linear:smooth(0.999) ;
feedback = vslider( "Feedback[style:knob]", -20, -70, 10, 0.1 ):db2linear:smooth(0.999) ;
presence = vslider( "Presence[style:knob]", 0, 0, 10, 0.1 ):*(-6) ;

// This is by experiment seems that main boost should be in the 1-4K area
// Looking ta various graphs online anywhere between 500-1.5kHz seems to be best cutoff point
// Presence uses a fixed frequency and varies the cutoff gain
// Guess from SPICE simulation is that cutoff is around 800Hz-1kHz
freq = 1000 ;
// Find a better low shelf
loop = high_shelf( presence, freq ):*(feedback):lowpass(1,6531.0) ;

// From guitarix stuff put in a tube stage
amp = *(vol):lowpass(1,6531.0):tubestage(TB_12AX7_250k,194.0,820.0,0.840703)  ;
//process = ( sub:amp)~loop;
process = (+:amp)~loop;

And it works!

Some experimentation needed with the filter cutoff but so far a pretty good presence control. Due to nature of the feedback circuit this has quite a different effect from the same filter in the main signal path.

Similarly a high pass filter in the same place produces a "resonance" control, boosting the lower frequencies.