Zones and Players
Players
Section titled “Players”A player is an audio source. Each player is one of these types:
- Playlist — Play tracks from a playlist (sequential, shuffle, or repeat modes).
- Input — Capture live audio from a microphone, line-in, or an ASIO input channel.
- Loopback — Capture the audio output of another device (what-you-hear).
- Capture — Capture audio from a specific running application (Windows 10 19041+, license-gated).
Each player has its own:
- Volume control
- 10-band parametric EQ
- Compressor
- Crossfade settings (for smooth transitions between playlist tracks)
- Playback mode (sequential, shuffle, repeat one, repeat all)
- Real-time VU meter
A colored type badge (Playlist — green, Input — blue, Loopback — purple, Capture — amber) appears next to the play state in both the Players list and the player detail header.
Creating players
Section titled “Creating players”The Players view Create button is a dropdown:
- Playlist player… — a player that plays from a playlist.
- Add input… — a microphone, line-in, or ASIO input player. Pick an input device, then a channel (All channels or a specific channel index for multi-channel/ASIO hardware). The name auto-fills from the device and channel if you leave it blank.
- Capture system audio… — a loopback player. Pick a loopback (system-audio) device/channel.
- Capture app… — a per-application capture player (only shown when the
ProcessLoopbackfeature is licensed).
Loopback players are also created automatically for the system-audio devices present on first run (when you choose the demo workspace). Microphone, line-in, and ASIO input players are only created on demand — they are no longer auto-created one-per-channel at startup, which previously flooded the list on multi-channel hardware.
Re-pointing an input source
Section titled “Re-pointing an input source”Input and loopback players have a pencil (edit) button in the detail header that opens an Edit input source dialog, letting you re-point the player to a different input device or channel without deleting and recreating it. Capture players use the same pencil to re-pick the application they capture.
Re-pointing a stereo input to a mono one (or the reverse) does not rename the player automatically — rename it yourself if the old name no longer fits.
Mono sources and stereo output
Section titled “Mono sources and stereo output”Every player's output is stereo (two channels). When a source is mono — a single-channel input such as the mic/line input on a Focusrite Solo, or a mono audio file — the engine duplicates it equally to the left and right channels. The signal itself is unchanged; it simply appears identically on both sides.
This is why a mono input's level meter shows two identical lanes: both lanes are the same duplicated signal, not a real stereo image. Hovering the level meter on such a player shows a tooltip explaining this.
A zone is a user-defined output target — you choose its device, its channel (or a stereo channel pair), and its name. The same physical device can host both mono and stereo zones at once.
Zone definitions are stored independently of devices (in %APPDATA%\MZAP\zones.json), so a zone layout built on one PC is portable: open it on another machine and re-point each zone at whatever devices exist there.
Each zone has its own:
- Volume control
- Mute toggle
- 10-band parametric EQ
- Compressor
- Real-time VU meter
Creating, editing, and deleting zones
Section titled “Creating, editing, and deleting zones”- Create a zone: pick a device, a channel (or stereo channel pair), and a name. By default every channel is listed; channels already used by another zone are labelled with the owning zone (e.g.
Channel 3 — used by "Bar") and picking one shows a non-blocking warning. Where the driver exposes them (ASIO), real channel names are shown in parentheses, e.g.Channel 3 (SPEAKER_PAIR2). - Edit a zone: change its device, channel, mono/stereo layout, or name. Volume, mute, EQ, and compressor settings are preserved across the edit and persist with the zone.
- Delete a zone: confirms first and warns which players are routed to it; those players are automatically detached on delete.
Offline zones
Section titled “Offline zones”If a saved zone's device is not connected, the zone is shown as offline (no audio) instead of disappearing, and offers a Reassign action to bind it to a present device/channel.
Zone layout: mono vs. stereo
Section titled “Zone layout: mono vs. stereo”A zone is either mono (one device channel) or stereo (a pair of even-aligned channels, e.g. 1+2, 3+4). A stereo zone spans both physical channels: volume, mute, EQ, compressor, VU metering, and jingles all apply across the pair, and a mono source routed to it is centered across both channels. You choose the layout per zone when you create or edit it.
Zone sources
Section titled “Zone sources”A zone's Sources section lists which players feed it, so routing can be seen and changed without opening the Matrix:
- Zone detail has a Sources checklist — a ticked player is routed to that zone. It mirrors the player-side routing tab.
- The Zones list shows each zone's assigned players on a summary line; click it to open a "Players for <zone>" picker with search, Select all / Clear all, and multi-column player checkboxes.
Because routing is many-to-many, a zone can be fed by more than one player — those players mix together at the output. When a zone has two or more sources, MZAP flags it: the zone header's source-count chip turns into an amber "N mixing" warning, and the card summary highlights the count. The warning is stronger for a mono zone, where multiple sources are almost always unintentional.
Editing sources is admin-only; operators and viewers see the checklist read-only.
Shared channels
Section titled “Shared channels”By default, multiple zones may target the same device channel — their audio sums at the shared output. This makes a layout portable: define several zones on one PC (even pointing at the same output) and re-point each to a different device/channel on another machine.
To enforce one zone per channel, turn on Strict zone channels in Settings → Audio. When strict mode is on, occupied channels are disabled in the create/edit dialog and the API rejects overlap.
Bulk-create zones for a device
Section titled “Bulk-create zones for a device”A device detail page (for an output device) has a Create Zone dropdown with two choices:
- Create Zone — a single zone (the standard form).
- Create all zones — fills every free channel of the device with a zone in one step. A dialog lets you choose Mono (one zone per free channel) or Stereo (one zone per free even-aligned channel pair) and an optional name prefix (defaults to the device name). Generated names follow the convention
"{prefix} ch3"(mono) or"{prefix} ch3-4"(stereo).
Only currently-free channels are filled; channels already claimed by a zone are skipped. The dialog shows a live preview ("Will create N zones, M skipped"). This is admin-only and applies to output devices — it is ideal for high-channel hardware like a 64-channel Dante Virtual Soundcard, where creating zones one at a time is tedious.
Ordering zones and players
Section titled “Ordering zones and players”Both the Zones and Players views have an Auto / Custom order toggle — in the Zones page header, and inline at the start of the Players filter row.
- Auto (the default) sorts automatically and disables drag-and-drop.
- Zones sort by name with numeric awareness, so
zone1, zone2, … zone10read in natural order rather than puttingzone10beforezone2. Ties break by device, then channel. - Players sort by type — Playlist, then Input, then Loopback — and then by name.
- Zones sort by name with numeric awareness, so
- Custom re-enables drag-and-drop so you can arrange items freely, and saves the arrangement.
Switching to Auto does not discard a custom arrangement: toggle back to Custom and your order returns. Both the toggle state and the manual order are saved with the workspace and restored when it loads, so desktop and mobile stay in agreement.
The player detail panel
Section titled “The player detail panel”Every player type — playlist, stream, capture, live input, and loopback — uses the same vertical layout, so panels line up when placed side by side.
- All panels show a Now Playing block. For input and loopback players it names the source and channel (for example "All channels" or "Channel 2").
- Playlist players show a progress bar; stream players show a Live Stream pill; capture, input, and loopback players show a status pill that pulses Live while active and reads Idle when stopped.
- Every panel reserves the same height for the Now Playing block and the progress/status row, so volume, tabs, and zones begin at the same position in each.
- The Zones tab sizes its column count (1–4) from the panel's own width, so zone names stay readable when a player is docked into a narrow column.
Metering
Section titled “Metering”Every player and zone shows a real-time VU meter that reads like a professional audio console:
- dBFS color thresholds following the EBU R128 / SMPTE alignment standard: green below −18 dBFS (the "digital 0 VU" alignment level), amber −18 to −6, red −6 to 0.
- Scale runs from −48 dBFS to 0, with ticks at −48, −36, −24, −18, −12, −6, 0.
- A peak-hold marker shows the maximum peak observed and falls slowly, like hardware.
- A latching clip indicator lights when any sample reaches 0 dBFS and stays lit for ~1.5 s, or until you click it to reset, so overs are unmissable.
Stereo meters
Section titled “Stereo meters”Meters on player and zone cards, and in their detail views, show independent left and right bars for stereo sources — playlist players, stereo input players, and stereo zones. The dual lanes occupy the same footprint as the single bar, so card sizes are unchanged.
- Mono sources keep the single full-height bar.
- The clip indicator is shared: it latches when either channel clips.
- Stereo input players also carry a Stereo badge on their card, and device detail zone rows show stereo and mixing badges.
Remember that a mono source duplicated to both channels also shows two lanes — but they are identical, because it is the same signal on both sides.
Meter behavior
Section titled “Meter behavior”A player meter always shows the post-fader source level (level × the player's volume). A muted player still shows its source level, but the bar is desaturated — so "the source is alive but not going out" is visible at a glance. An idle zone (nothing playing to it) shows a flat (zero) meter.
Routing
Section titled “Routing”Players and zones are connected through MZAP's matrix router. This is a many-to-many relationship:
- One player can route to multiple zones (e.g., send lobby music to all lobby speakers).
- Multiple players can route to the same zone (e.g., mix background music and announcements into one speaker).
Audio is mixed in real-time with zero interruption when routing changes are made.