Mix Multi‑Channel Sound into Stereo — User Guide
Mixes a selected multichannel Sound into stereo using eight fixed or user-defined routing modes. Supports group splits, evenly distributed stereo spreading, mono averaging, odd/even routing, Quad, 5.1 and 7.1 Lo/Ro-style fold-downs, and manual per-channel pan/gain control.
What this does
Mix Multi‑Channel to Stereo takes exactly one selected Sound with at least two channels and creates a two-channel stereo mix. Each input channel is assigned a left and right gain according to the selected mode, then all weighted channels are summed into the two output channels.
- Eight modes: Split L/R, Stereo Spread, Mono Sum, Front‑Back, Quad to Stereo, 5.1 Lo/Ro, 7.1 Lo/Ro, and Manual.
- Stereo Spread: places the existing input channels at evenly spaced positions from hard left to hard right; it does not move a mono source around a circle.
- Constant-power option: affects Stereo Spread and Manual modes only.
- Optional normalization: uses Praat
Scale peak: 0.99after the mix is built. - Visualization: shows channel-to-output routing, pan positions, and a compact summary.
original_stereo_ModeName, for example mix_stereo_StereoSpread or mix_stereo_5.1.Quick start
- Select exactly one Sound containing at least two channels.
- Run
Mix_Multi-Channel_to_Stereo.praat. - Choose a Mix_mode. The default is Stereo Spread.
- For Manual mode, enter one pan value and one gain value per input channel.
- Choose whether to use constant-power panning, normalize the result, draw the visualization, and play the output.
- Click OK. The script creates and selects the new stereo Sound.
Mix modes
| Mode | Input requirement | Routing |
|---|---|---|
| Split L/R | N ≥ 2 | First floor(N/2) channels are averaged to Left; all remaining channels are averaged to Right. |
| Stereo Spread | N ≥ 2 | Channels are placed evenly from pan 0 (Left) to pan 1 (Right): pan[ch] = (ch−1)/(N−1). |
| Mono Sum | N ≥ 2 | Every channel contributes 1/N to both outputs, producing identical L and R averages. |
| Front‑Back | N ≥ 2 | Odd-numbered channels are averaged to Left; even-numbered channels are averaged to Right. |
| Quad to Stereo | Exactly 4 ch | Fixed FL/FR/RL/RR fold-down. |
| 5.1 Downmix | Exactly 6 ch | Fixed Lo/Ro-style matrix; LFE omitted. |
| 7.1 Downmix | Exactly 8 ch | Fixed Lo/Ro-style matrix; LFE omitted. |
| Manual | N ≥ 2 | User supplies per-channel pan and linear gain lists. |
Stereo Spread panning law
pan = (ch − 1) / (N − 1)
With Use_constant_power_panning = yes:
angle = pan × π/2
gainL = cos(angle)
gainR = sin(angle)
With constant-power disabled:
gainL = 1 − pan
gainR = pan
For example, a four-channel input is placed at pan positions 0.00, 0.33, 0.67, and 1.00. The input channels themselves remain unchanged; only their contributions to the stereo output are weighted.
Quad / 5.1 / 7.1 routing
Quad to Stereo
Requires exactly four channels in the order FL, FR, RL, RR.
Lout = FL + 0.7 × RLRout = FR + 0.7 × RR
5.1 Downmix (Lo/Ro, LFE omitted)
Requires exactly six channels in the order L, R, C, LFE, Ls, Rs. The center and same-side surrounds use 1/√2 ≈ 0.707 (−3.01 dB). LFE is not included in either output.
Lout = L + 0.707 × C + 0.707 × LsRout = R + 0.707 × C + 0.707 × RsLFE → omitted
7.1 Downmix (Lo/Ro, LFE omitted)
Requires exactly eight channels in the order L, R, C, LFE, Ls, Rs, Lb, Rb. Side and rear surrounds fold to their corresponding stereo side at 1/√2; LFE is omitted.
Lout = L + 0.707 × C + 0.707 × Ls + 0.707 × LbRout = R + 0.707 × C + 0.707 × Rs + 0.707 × RbLFE → omitted
Parameters
| Parameter | Default | What it does |
|---|---|---|
| Mix_mode | Stereo Spread | Selects one of the eight routing modes. |
| Manual_pan | 0 0.5 1 | Manual-mode pan values. Space- or comma-separated; values are clamped to 0…1. |
| Manual_gain | 1 1 1 | Manual-mode linear gains. Negative values are clamped to 0; positive values are not upper-limited. |
| Use_constant_power_panning | yes | Chooses constant-power rather than linear pan law in Stereo Spread and Manual modes. It does not alter the fixed coefficients of the other modes. |
| Normalize_output | yes | If enabled, scales the final stereo Sound so its absolute peak is 0.99. |
| Draw_visualization | yes | Draws the routing diagram, pan-position band, and summary. |
| Play_result | yes | Plays the resulting stereo Sound after processing. |
Manual mode
Manual mode reads the nth value from each typed list for input channel n. Commas are converted to spaces before parsing.
- Missing or non-numeric pan entries default to
0.5. - Missing or non-numeric gain entries default to
1. - Pan values below 0 become 0; values above 1 become 1.
- Negative gain becomes 0. There is no maximum gain clamp.
- Extra list entries beyond the input channel count are ignored.
gainL = manualGain × cos(pan × π/2)gainR = manualGain × sin(pan × π/2)With linear panning:
gainL = manualGain × (1 − pan)gainR = manualGain × pan
Normalization & output
The script first creates silent Left and Right accumulators, extracts each input channel, multiplies it by its routing gain, and adds it to the appropriate accumulator. The two accumulators are then combined into one stereo Sound.
If Normalize_output = yes, Praat Scale peak: 0.99 is applied to the completed stereo object. This is full peak normalization: it can either attenuate or amplify the complete stereo result. If normalization is disabled, the matrix gains are left unchanged even if the sum exceeds ±1.
Naming: original_stereo_Split, original_stereo_StereoSpread, original_stereo_Mono, original_stereo_FrontBack, original_stereo_Quad, original_stereo_5.1, original_stereo_7.1, or original_stereo_Manual.
Visualization
When Draw_visualization is enabled, the script draws three functional regions:
- Channel routing diagram: one box per input channel and lines to the Left and/or Right output. Line width reflects the corresponding gain.
- Pan Position: one marker per active input channel on an L–C–R axis. In 5.1/7.1 modes, the omitted LFE is shown as OFF.
- Summary: input channel count, mode, constant-power setting, duration, sample rate, and normalization status.
Practical notes
- Stereo Spread is useful when an arbitrary multichannel Sound should be distributed predictably across a stereo panorama.
- Split and Front‑Back average channel groups, so their group gains decrease as more channels are assigned to a side.
- Mono Sum produces dual-mono stereo by averaging all channels equally into both outputs.
- Quad / 5.1 / 7.1 are fixed matrices and do not use
Use_constant_power_panning. - If preserving the exact matrix amplitude matters, disable Normalize_output.