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.

Author: Shai Cohen Affiliation: Department of Music, Bar‑Ilan University, Israel Version: 0.5.1 (2026) Praat
Contents:

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.

Output: A stereo Sound named original_stereo_ModeName, for example mix_stereo_StereoSpread or mix_stereo_5.1.

Quick start

  1. Select exactly one Sound containing at least two channels.
  2. Run Mix_Multi-Channel_to_Stereo.praat.
  3. Choose a Mix_mode. The default is Stereo Spread.
  4. For Manual mode, enter one pan value and one gain value per input channel.
  5. Choose whether to use constant-power panning, normalize the result, draw the visualization, and play the output.
  6. Click OK. The script creates and selects the new stereo Sound.
Important: There is no automatic layout detection. Quad, 5.1, and 7.1 modes assume the exact channel orders documented below and reject other channel counts.

Mix modes

ModeInput requirementRouting
Split L/RN ≥ 2First floor(N/2) channels are averaged to Left; all remaining channels are averaged to Right.
Stereo SpreadN ≥ 2Channels are placed evenly from pan 0 (Left) to pan 1 (Right): pan[ch] = (ch−1)/(N−1).
Mono SumN ≥ 2Every channel contributes 1/N to both outputs, producing identical L and R averages.
Front‑BackN ≥ 2Odd-numbered channels are averaged to Left; even-numbered channels are averaged to Right.
Quad to StereoExactly 4 chFixed FL/FR/RL/RR fold-down.
5.1 DownmixExactly 6 chFixed Lo/Ro-style matrix; LFE omitted.
7.1 DownmixExactly 8 chFixed Lo/Ro-style matrix; LFE omitted.
ManualN ≥ 2User supplies per-channel pan and linear gain lists.

Stereo Spread panning law

For channel ch in an N-channel input:
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 × RL
Rout = 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 × Ls
Rout = R + 0.707 × C + 0.707 × Rs
LFE → 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 × Lb
Rout = R + 0.707 × C + 0.707 × Rs + 0.707 × Rb
LFE → omitted
Channel order is not detected from metadata. The script interprets channels solely by their numeric position. Use these layout-specific modes only when the input order matches exactly.

Parameters

ParameterDefaultWhat it does
Mix_modeStereo SpreadSelects one of the eight routing modes.
Manual_pan0 0.5 1Manual-mode pan values. Space- or comma-separated; values are clamped to 0…1.
Manual_gain1 1 1Manual-mode linear gains. Negative values are clamped to 0; positive values are not upper-limited.
Use_constant_power_panningyesChooses 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_outputyesIf enabled, scales the final stereo Sound so its absolute peak is 0.99.
Draw_visualizationyesDraws the routing diagram, pan-position band, and summary.
Play_resultyesPlays 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.

With constant-power panning:
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.

No additional processing: the script does not apply filtering, limiting, phase correction, decorrelation, delays, LFE low-pass filtering, resampling, or per-channel normalization.

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:

Interpretation: The pan marker is a routing summary, not a spatial-acoustics model. Fixed layout modes use their explicit L/R gain matrices; Stereo Spread and Manual use the selected panning law.

Practical notes