Play the video.
Cut back to the speaker.

zlist plays a playlist into a virtual camera and microphone that Zoom can pick. Between cues it relays your own camera and microphone, so one operator runs the whole talk.

macOS 14 or later, Apple silicon and Intel. Windows 11. Works with Zoom and other meeting apps that let you pick a camera and a microphone.

The zlist icon: a flying fish leaping out of the sea at sunrise.
The zlist window with the sample playlist open. PREVIEW shows the welcome card that plays next, PROGRAM shows the presenter's camera, and the cue list below marks the welcome card as NEXT.
  1. 1
    Presentation timerA stopwatch for the whole talk, against a planned length or an end time.
  2. 2
    PreviewWhat goes to the meeting next. Click it to play.
  3. 3
    ProgramExactly what the meeting sees, edged in red while a cue is on air.
  4. 4
    Playlist and audioTime left in the cues, and meters for your microphone and what the meeting hears.
  5. 5
    Cued and transportThe next cue, its length, and Previous, Play, Stop, Next and FTB with their keys.
  6. 6
    Cue listAn arrow joins a cue that runs straight on into the next one.
How it fits in

The meeting sees one camera

Pick zlist as the camera and microphone in Zoom once. From then on, what you play in zlist is what the meeting gets.

Into zlist
  • Your camera and microphone
  • Video and picture cues from a playlist
zlist
  • A cue on air replaces the camera, and its sound replaces the microphone.
  • Between cues, the camera and microphone go straight through.
  • Everything is fitted into 1920×1080 at 30 frames a second.
Out to the meeting
  • zlist Camera
  • zlist Audio on Mac, a loopback cable such as VB-CABLE on Windows

The monitors, clocks and cue list are for you alone. The meeting never sees them.

Features

Made for the person running the talk

The operator also watches the clock, the speaker and the chat. zlist keeps everything else in one window, and out of the meeting.

Bring the playlist you have

VLC playlists (.xspf, .m3u, .m3u8) keep each title, and VLC's start and stop times become the part that plays. Mitti projects keep cue names, in and out points, and whether a cue holds its last frame or runs on Mac. A folder of videos and pictures plays in name order.

Have slides? Export a Keynote or PowerPoint deck as images and open the folder: each slide becomes a cue, in slide order. A picture stays up for five seconds, then zlist cuts back to the camera. Export the deck as a movie instead to keep its timings and animations.

Every talk of the day, ready

Add all of the day's playlists to the sidebar. zlist prepares each one ahead, shows a check mark when it is ready, and opens them all again at the next launch. Click to switch between talks. Mac

Know what goes out next

PROGRAM shows what the meeting sees. PREVIEW shows what comes next: the cued cue, or the camera while a cue plays. The cue clock turns amber at 10 seconds and red at 5, and the playlist clock shows what is left of the talk.

Cut cleanly

Play, Stop, Next and Previous, or double-click any cue. FTB fades picture and sound to black over half a second, and back again. Drag the CUED bar to start a clip later than the playlist says, and PREVIEW shows that frame Mac.

Sound that follows the picture

Your microphone is live while the camera is on. A cue with sound takes its place and gives it back when it ends; a still or a silent clip leaves the microphone open. Mute never silences a cue. Send the cue sound to headphones or room speakers too.

Drive it from anywhere

Global hotkeys that work while Zoom is in front, the keyboard's media keys, and OSC on UDP port 9000 for Bitfocus Companion and Stream Deck. Each button shows its keys. A second zlist can follow the first over OSC, a set delay later Windows.

Stay out of the meeting's way

Overlay mode floats a short strip across the top of the screen and the cue list down one side, so Zoom's gallery stays in view. Keep the window on top and dim it.

Feed the room as well

External output sends the meeting's picture to a second display, or to a window of a fixed size for OBS or screen sharing. Choose whether it shows the camera or black between cues.

Fails safe

If the chosen camera is gone, zlist tries real cameras before capture cards and virtual cameras, and says which one it took. When zlist is closed, the meeting sees a quiet placeholder, never a frozen frame. A cue that cannot play says why in red, and Play refuses it.

Try it before the talk

Open the sample playlist from the empty cue list: title cards, colour clips, a cue that runs on, and a Sync test that flashes and beeps once a second.

Measured

Sound and picture land together

A meeting app gets a video frame later than the sound that goes with it. zlist measured the gap with a flash-and-beep clip, recorded the way a meeting app records, and now draws each frame early so the two arrive together.

Play the sample's Sync test in a test meeting to check it on your own setup.

Sound minus picture, in milliseconds Before the fix, sound arrived 55 to 64 ms early on macOS and 51 to 69 ms early on Windows. Now macOS lands between 17 ms early and 22 ms late, and Windows between 20 ms early and 13 ms late, inside one frame either way. within one frame −80 −60 −40 −20 0 +20 +40 ms sound early sound late macOS, before −64 to −55 macOS, now −17 to +22 Windows, before −69 to −51 Windows, now −20 to +13
By arrival time. macOS: three launches. Windows: the median of each of six launches. One frame at 30 frames a second is 33 ms.
Mac and Windows

Two native apps, one way of working

The Mac app is written in Swift with a CoreMediaIO camera extension and a Core Audio driver. The Windows app is written in C# and WinUI with a Media Foundation virtual camera. The playlist readers and the transport are the same logic on both, with the same tests.

WhatmacOSWindows
Virtual camerazlist Camerazlist Camera
Sound to the meetingzlist Audio, a virtual microphoneA loopback cable such as VB-CABLE
VLC playlists and foldersYesYes
Mitti projectsYesOpen them on a Mac
Monitors, clocks, FTB, overlay, external output, presentation timerYesYes
Hotkeys, media keys and OSCYesYes
Playlist sidebar and cued startYesComing
Lead a second zlistComingYes
UpdatesBuilt inInstall each new release for now
SignatureDeveloper ID, notarized by AppleNot signed yet; needs Developer Mode

Curious how the frames and the sound travel? The technical notes draw the whole path on each platform.

Coming next

For the control room

These are written and being tested. They are not in a release yet.

  • Blackmagic DeckLink

    Send the program picture out of an SDI card, 720p to 2160p, with the meeting's sound on channels 1 and 2. Take an SDI camera in as zlist's camera. Windows first.

  • HyperDeck control

    zlist answers as a HyperDeck, so an ATEM switcher's Auto Roll plays the cued cue on the cut. Windows first.

  • Windows catches up

    The playlist sidebar, the cued start, and a signed installer that updates itself.

  • Mac catches up

    Lead a second zlist over OSC, for a room and a meeting that should see the same cues.

Install

Ready in a few minutes

Download the latest release, then pick zlist in your meeting app.

On a Mac

  1. Download zlist-<version>.zip and move zlist.app to Applications.
  2. Open zlist and allow the camera and the microphone.
  3. Click Camera in the toolbar and turn on zlist Camera in System Settings.
  4. In Settings ▸ Audio, click Install for zlist Audio.
  5. In Zoom, pick zlist Camera and zlist Audio.
Download for Mac

On Windows 11

  1. Install VB-CABLE, and turn on Developer Mode.
  2. Download the x64 or Arm zip, extract it, and run install.ps1.
  3. Click Camera in the toolbar and install zlist Camera.
  4. In Settings ▸ Audio ▸ Send to, pick CABLE Input.
  5. In Zoom, pick zlist Camera and CABLE Output.
Download for Windows

Every step, and how to check a download against its SHA256SUMS, is in the install guide. Something not working, or a player you want zlist to read? Tell us in an issue.