Appearance
Stereo Tools
Stereo Tools decide where a sound sits between your left and right speakers and how wide or narrow it feels. Move a single (mono) sound anywhere across that left-right space, control how much a stereo sound spreads out, or split a sound into its centre and its sides so you can work on each part separately. Every control here can be set by hand or moved live by another node: each parameter pin accepts both a fixed Data value and a fast-moving CV signal (a control signal that can change thousands of times a second), so position and width can keep moving over time.
Pan
Takes a single (mono) sound and places it anywhere between the left and right speakers. It uses equal-power panning, a method that keeps the sound feeling equally loud as you sweep it across the centre.

| Parameter | Range | Default | Description |
|---|---|---|---|
| Pan | -1.0 to 1.0 | 0.0 | Position in the stereo field. -1 is hard left, 0 is centred, +1 is hard right. Equal-power law keeps the loudness consistent. Ideal for auto-pan when driven by an LFO. |
Inputs: In (mono audio); plus a Data/CV input pin for Pan.
Outputs: Out L, Out R (audio).
Spatial Pan
New in MNodes 1.1.6
Older versions of MNodes do not have Spatial Pan.
Places a single (mono) sound around you, as a game does, from two numbers: the Angle it is at and its Distance. Ahead, it sounds the same in both ears; to one side, mostly in that ear and duller in the other, as your head is in the way; behind, a little duller in both, so behind does not sound like ahead. As it goes away it gets quieter and, far off, loses its highs, as sounds do through air. Wire a Script, an LFO or anything else into Angle and Distance and the sound moves round you smoothly.

The node shows where the sound is, seen from above: your head in the middle, looking up (ahead), and the sound as a dot that dims and shrinks as it goes away. The inner ring is Near; the others are twice, five and fifteen times as far, on a squeezed scale so the whole range fits and close sounds get the room. Click or drag anywhere on it to move the sound, Angle and Distance at once (one undo step per drag); double-click puts it back ahead, at distance 1. With CV on Angle or Distance, the dot follows where the sound really is.
| Parameter | Range | Default | Description |
|---|---|---|---|
| Angle | -180 to 180 | 0 | Where the sound is round you, in degrees: 0 straight ahead, 90 to the right, -90 to the left, 180 behind. Takes CV, so it can circle you. |
| Distance | 0 to 100 | 1 | How far away it is, in the units of your world (a 3D Scene's, or metres). Takes CV. |
| Near | 0.1 to 20 | 1 | Within this distance the sound is at full level; it fades only beyond it. |
| Rolloff | 0 to 4 | 1 | How fast it fades beyond Near: at 1, twice as far is about half as loud (6 dB down), as in the open air; 0 never fades; higher fades sooner. |
| Air | 0 to 1 | 0.5 | How much far sounds lose their highs: 0 none, 1 a lot. At 0.5 a sound 20 away keeps only what is below about 3 kHz. |
In the Inspector, under Appearance: Body Background, Ring Colour, Listener Colour, Sound Colour, Text Colour, Frame Colour and Show Values (the angle and distance written in a corner). Copy Appearance and Paste Appearance carry them from one Spatial Pan to another, and an Appearance Changer wired into Appearance sets them from the patch.
For a sound in a 3D Scene there is no need to work this out: Scene 3D Sound plays it from where it is in the world. For anything else, the angle is where the sound is seen from the player: with dx and dz the steps from the player to the sound along the player's right and straight ahead, Angle is Math.atan2(dx, dz) * 180 / Math.PI and Distance is Math.hypot(dx, dz).
Inputs: In (mono audio); Angle and Distance (Data or CV); Near, Rolloff and Air (Data); Appearance.
Outputs: Out L, Out R (audio); Angle and Distance (Data): each says its value whenever it changes through the node, from the radar, its row, a cable, a preset or a State, so moving the sound by hand can move other things too. A CV stream on Angle or Distance goes straight to the sound and does not come out of them.
Stereo Width
Makes a stereo sound wider or narrower. Behind the scenes it works on the centre and the sides separately (Mid/Side). Pull the width down to squeeze everything toward the middle (mono), leave it at normal, or push it up to spread the sides for a bigger, wider feel.

| Parameter | Range | Default | Description |
|---|---|---|---|
| Mid | 0.0 to 2.0 | 1.0 | Amount of the centre (Mid) component. 0 removes the centre, 1 keeps it natural, 2 doubles it. |
| Width | 0.0 to 2.0 | 1.0 | Amount of the side (Width) component. 0 collapses to mono, 1 keeps the original width, 2 widens the stereo field. |
Inputs: In L, In R (audio); plus a Data/CV input pin for Mid and Width.
Outputs: Out L, Out R (audio).
Mid/Side Router
Splits a stereo sound into two parts: a Mid channel (the centre, the part shared by both sides) and a Side channel (only the difference between left and right, the part that makes it feel wide). This lets you treat the centre and the sides separately, then recombine them with the Mid/Side Decoder to put the stereo sound back together.

| Parameter | Range | Default | Description |
|---|---|---|---|
| Equal Power | Off / On | On | Encoding scale. On uses an equal-power factor so a mono input keeps its loudness when split into Mid and Side. Off uses the simpler classic scale. |
Inputs: In L, In R (audio); plus a Data/CV input pin for Equal Power (0 = Off, 1 = On).
Outputs: Mid, Side (audio). Mid carries the sum of Left and Right (the centred content); Side carries the difference between Left and Right (the stereo-only content).
Mid/Side Decoder
Puts a Mid/Side pair back together into a normal stereo sound. It is the partner of the Mid/Side Router: after you split a sound into its centre (Mid) and its sides (Side) and process each on its own, the Decoder recombines them into Left and Right. Keep its Equal Power switch set the same way as the Router that split the sound, and the two cancel out exactly, so your level is left untouched.

| Parameter | Range | Default | Description |
|---|---|---|---|
| Equal Power | Off / On | On | Decoding scale. Set it to match the Router that encoded the signal: On undoes the Router's equal-power split, Off undoes its classic split. Either way the Router and Decoder together leave the level unchanged. |
Inputs: Mid, Side (audio); plus a Data/CV input pin for Equal Power (0 = Off, 1 = On).
Outputs: Out L, Out R (audio). Out L is Mid plus Side; Out R is Mid minus Side.
Panner
A panner for stereo sounds that slides the whole sound left or right while keeping it feeling equally loud. Choose from several panning curves (pan laws) to control exactly how the volume behaves as the sound passes through the centre.

| Parameter | Range | Default | Description |
|---|---|---|---|
| Pan | -1.0 to 1.0 | 0.0 | Stereo position. -1 is hard left, 0 is centred, +1 is hard right. |
| Rule | Linear, Balanced, Sin 3 dB, Sin 4.5 dB, Sin 6 dB, Sqrt 3 dB, Sqrt 4.5 dB | Balanced | The pan law used for gain compensation as the signal moves across the field. |
Inputs: In L, In R (audio); plus a Data/CV input pin for Pan and Rule.
Outputs: Out L, Out R (audio).
Swap L/R
Swaps the left and right channels, so whatever was on the left comes out on the right and the other way around. The Swap toggle can be flipped by hand or driven by another node, which makes it easy to switch sides mid-performance; feed it a fast control signal and the sound can even bounce between the speakers for a ping-pong style effect. With Swap off the sound passes through unchanged.

| Parameter | Range | Default | Description |
|---|---|---|---|
| Swap | Off / On | Off | Swaps the two channels. Accepts a 0/1 value or a CV signal, so the swap can be gated live. |
Inputs: In L, In R (audio); plus a Data/CV input pin for Swap.
Outputs: Out L, Out R (audio).
Phase Invert
Flips the polarity of a channel: the waveform is turned upside down, which changes nothing on its own but matters as soon as the sound meets another copy of itself. Invert L and Invert R work independently. Flip both to invert the whole signal (useful for cancellation tests against another copy), or flip just one side to change how left and right interact, which can rescue a recording where one microphone was wired the wrong way around. Each toggle accepts a value or a CV signal.

| Parameter | Range | Default | Description |
|---|---|---|---|
| Invert L | Off / On | Off | Flips the polarity of the left channel. |
| Invert R | Off / On | Off | Flips the polarity of the right channel. |
Inputs: In L, In R (audio); plus a Data/CV input pin for Invert L and Invert R.
Outputs: Out L, Out R (audio).
