The TRS Proposal

This collection of VCV Rack modules sketches out a preiminary approach to "modularizing" stereo audio processing. You can find more on our approach to this project here.

The functionality models a purely analog approach. -5V to 5V can be assumed for all inputs and outputs unless noted otherwise.

An unstable development version of the modules can be found on our GitHub. If you need help with installation, drop us a line.

Polyphony Notes

The TRS collection uses the polyphonic functionality of Rack cables to model real world TRS cables.

In an effort to not abuse this functionality, most of the modules follow standard polyphony rules, and you can use them like you would any other polyphonic module. These modules carry the "Polyphonic" tag. Nonstandard polyphonic implementations are highlighted in the module descriptions.

Refer to the TRS-TS and TRSMS module descriptions for details on encoding and decoding polyphonic stereo voices.

IO

TRS-TS

the link

Load and unload dual mono signals (L and R) to and from a TRS cable carrying the stereo pair.

With only one mono signal connected, the signal is copied to both channels of the stereo pair.

In Rack, the top two sections are TS inputs to TRS output. The bottom two are TRS input to TS outputs. In the real hardware module (which exists), all sections are passive and bidirectional.

Up to 8 stereo voices can be created by patching a pair of 8 voice poly signals to the left and right inputs. The number of poly voices encoded onto the dual mono outputs can be selected from the context menu.

MS2

dual mid/side encoding and decoding

The top and bottom sections are identical.

The top section encodes a stereo TRS signal to a dual mono M/S signal.

The bottom section decodes a dual mono M/S signal to a stereo TRS signal.

Up to 8 stereo voices can be created by patching a pair of 8 voice poly signals to the decoder inputs. The number of poly voices encoded onto the dual mono outputs can be selected from the context menu.

PREAMP

triple stereo gain

The knobs set the gain from fully attenuated to 4x.

The channels saturate just above 5V.

Each preamp has output monitoring LEDs for the left and right channels.

The green LED shows the output signal level, red is illuminated when the signal saturates at 5V.

Utilities

MULT

multiple and meter

In Rack, the top jack in each cluster is an input and the bottom three are outputs that are copies of the input. In the hardware version (which exists), the multiple is passive so the jacks are bidirectional.

The meters display the levels of the left and right channels with a volt per LED in the display.

The mult functionality is fully polyphonic, but the modules is not labelled as polyphonic because the LEDs are the only useful part in Rack and they just show the first voice on each channel.

ATTENUATORS

quad stereo attenuator

Each attenuator has a noninverted (+) and inverted (-) output.

The top and bottom offer ganged control over the stereo pairs, the middle pair offer independent control

Up to 8 stereo voices can be processed, but the module is not labelled as polyphonic because the independent L/R control does not make sense with a standard polyphonic signal.

TURN

3 panning utilities

The top section swaps the left and right channels.

The middle section fully attenuates the right channel at CCW and the left channel at CW.

The bottom section allows each channel to be placed in the output stereo field separately.

Up to 8 stereo voices can be processed, but the module is not labelled as polyphonic because the effect does not make sense with a standard polyphonic signal.

OPS

2 adders and 2 multipliers

The adders are 2->1 unity gain mixers

The multipliers are 4 quadrant multipliers, which can be used as VCAs, ring modulators, or "voltage controlled attenuverters".

Modulation

SPIN

dual quadrature LFO

The top and bottom sections are almost identical.

The RATE control and CV set the speed of the LFO, with a built in attenuator for the CV. The CV has an 8 voice polyphony limit, the other channels are discarded.

The outputs are each grouped into quadrature (sine/cosine) pairs and one is inverted

The mappings of the quadrature pairs to tip and ring are different in the top and bottom sections, causing the modulation effect to "spin" in different directions.

SIN/COS

quadrature waveshaper

MONO IN is mixed with each channel of STEREO IN. MONO IN has an 8 voice polyphony limit, the other channels are discarded.

The left channel is shaped with a sine shaper, the right with a cosine shaper, creating a quadrature pair atOUT much like the SPIN module.

The DEPTH control and CV set the level of the waveshaper inputs. With depth at maximum, a -5V - 5V signal scans across two full cycles of a sinusoid.

BIAS shifts the phase of the waveshaper function and is akin to the offset control of a wavefolder.

PEAK

peak detector

The controls resemble the timing and threshold section of a compressor.

The peak voltage of the INPUT over the THRESHold level is scaled by GAIN (analagous to a compression ratio control).

The time to rise to a higher peak level is set by ATTACK, the time to fall to a lower peak level is set by RELEASE.

+OUT and -OUT are postive going and negative going versions of the scaled peak value.

GATE is high when the peak value exceeds the threshhold.

Processors

VCA

dual complementary VCA

The top and bottom sections are identical.

The switch selects how the LEVEL CV is processed:

Top: Scale and bias a -5V to 5V signal to a 0V to 5V signal.

Middle: Positive CV amplifies.

Bottom: Positive and negative CV amplify.

The LEVEL control is an offset for the processed CV.

When LEVEL is at 5V (maximum), INPUT passes to OUTPUT at unity gain and is fully attenuated at ANTI OUT. ANTI IN passes to ANTI OUT at unity gain and is fully attenuated at OUTPUT.

When LEVEL is at 0V (minimum), INPUT is fully attenuated at OUTPUT and passes to ANTI OUT at unity gain. ANTI IN is fully attenuated at ANTI OUT and passes to OUTPUT at unity gain.

This facilitates panning and crossfading effects.

The VCA control law is linear.

SVF

state variable filter

The inputs, outputs, and controls are mostly standard VCF fare.

The input on the left is standard, the one on the right is attenuated as resonance increases, mimicking the response of a filter with "droop" in the passband at higher resonance. This is an experiment to see if that is useful.

BBD

voltage controlled delay line

No polyphony, all but first voice of right and left channels are discarded.

OUT is just a delayed copy of IN. Mix it with the input to create flangers and choruses.

TIME control and CV set the clock speed of the virtual bucket brigade and thus the delay time.

FEEDBACK control and CV add a resonant tail to the effect.

PHASER

voltage controlled phaser

No polyphony, all but first voice of right and left channels are discarded.

CV input is vital, it moves frequency of the notches.

WET output is just the phase shifted signal. Good for creating vibrato effects.

MIX output is a mix with the dry signal, creating the phaser effect. The control sets the level of the dry signal from 0 to a 50/50 mix.

FEEDBACK adds resonant peaks between the notches.

CV DEPTH scales the amount of modulation from the center frequency.