MultiScreener


Free Synchronized Multi-Channel Video Player

MultiScreener is a set of free applications that synchronize the playback of Quicktime movies on multiple computers, using a local network to tie them all together. (It can also sync multiple movies on the same computer using multiple monitors.)

It is intended for multi-channel video art, video walls, trade shows, and digital signage. I wanted an artist-friendly alternative to the expensive combo of industrial DVD players (Pioneer DVD-V7400, DVD-V5000) and Dave Jones Design sync boxes. Those systems are fantastic, but MultiScreener provides synchronized multi-channel video playback using commodity computer hardware.

How It Works

There is a Server and a Client. The server plays a movie and also sends position information over the network. Each client “listens” to the server and subtly adapts its movie playback speed to stay in sync. There is no limit to the number of clients.

Originally, I assumed that each client would run on its own machine, but you can also run multiple clients on the same computer, with each client feeding a different monitor.

Looping and de-interlacing are available, and all settings are automatically saved for unattended startup. MultiScreener can output to the computer screen or external video devices (like DV cameras or decks). There is no native resolution or frame-rate, so all Quicktime video formats are supported.

Who Uses It

Since 2008 I’ve received feedback from hundreds of MultiScreener users. Check out some of the people whose work was Made with MultiScreener.

If MultiScreener Doesn’t Do What You Want

  • Read the MultiScreener Guide. It’s included in the download, and updated more frequently online.
  • Looking for a Windows version? I don’t have one. There is an unsupported version below, for Windows XP, contributed by somebody else. (I don’t have a Windows machine so I cannot help you in any way.) Also see the visual patching language VVVV and its tonfilm-videosync module (free for non-commercial use).
  • Looking for an iPad version? I don’t have one. iVideoShow works OK, but sync is not accurate and there’s a long pause at each loop. MultiVid is similar but I couldn’t get it to sync at all. Others might have better luck.
  • Looking for an Android version? I don’t have one. The closest I’ve found is Blinkendroid and it doesn’t work for this kind of stuff.
  • You can modify MultiScreener. The source code is included under a GPL license. You will need MAX/MSP/Jitter, which costs money, but there is a free 30-day demo.
  • The BrightSign HD220 is an inexpensive ($350) hardware HD player that can be synced over ethernet. Usually you need to use their (Windows only) authoring software to setup the boxes for each show, but there is an easier Mac-compatible way to configure them via script files.
  • Spend $$$$ on well-supported professional software like Dataton’s Watchout, Renewed Vision’s ProVideoPlayerScalableplayer from Scalable Display Technologies, or VirtualVTR.
  • ArraySync from NaSoLab is a semi-affordable set of apps that do exactly what MultiScreener does. I haven’t tried it but maybe it’s better?
  • ygboX is a free and open source solution, based on Quartz Composer, which has deep hooks into the guts of Mac OS X so it plays back HD content with fewer dropped-frames than MultiScreener. There is one major caveat (as of Feb 2009): The server plays video and sound, but clients cannot play sound. (It’s a limitation of Quartz Composer so the author can’t do anything about it.)
  • Most Pixels Ever (MPE) is a free, open source library for the Processing programming language that allows Processing sketches to run across multiple computers on a network. Processing is too slow to play broadcast-quality video but perfect for computer-generated graphics.
  • VPT (Video Projection Tool) is a free app by HC Gilje that handles all kinds of complicated video projection tasks (cueing, mixing, effects, keystoning, etc…). It doesn’t explicitly handle syncing of multiple videos on different machines, but it can play multiple videos on one machine, and it supports a rich set of OSC messages for remote control.
  • LPMT (Little Projection Mapping Tool) is an open source app for projecting multiple channels of video stills, colors, or live feeds onto real-world objects. It doesn’t handle syncing of multiple videos on different machines, though. (It was made with OpenFrameworks and distributed primarily as source code. Compiled Windows and Mac versions are available as a trial download).
  • HDsync is being developed by NIMk in the Netherlands to synchronize HD playback on modified Western Digital TV Live players.
  • If you want to have 3 synced displays from a single computer (with a single monitor port) you can also try the Matrox TripleHead2Go. (You make a super-wide movie, played from your single monitor port via Quicktime Player. The Matrox box splits the signal across 3 separate monitors.)
  • MSA Quicktime Player is a free Mac player that spans a super-wide movie across multiple monitor ports, similar to the Matrox, except it’s software, and it requires a monitor port for each display.
  • Bino is a free Mac/Windows/Linux video player designed for 3D projection. We can use it to play two videos on two connected displays. It’s scriptable and seems to work great. (How To: Launch Bino, Set Bino’s Fullscreen settings to “Dual Screen”, Select both movies simultaneously in the “File / Open” menu, set Input mode to “Separate Streams, Left First”, set Output mode to “Left/Right”)

Download Current Version

0.95 (Mac Intel/PPC)

Feb 03, 2009, 24MB with source “patches” for MAX/MSP/Jitter 5.
Please read the MultiScreener Guide for instructions and a detailed Changelog.
You may need to adjust your security settings and/or install Java. See Installation Instructions.

Changes in this version:

  • Changed to GPL 3.0 license
  • Recompiled with MAX5
  • Tested HD playback
  • Fixed: Fixed error in client timing comparison. (improved sync accuracy).
  • Fixed: Fixed occasional loss or overwrite of xml preferences file
  • Fixed: client sync meter was sometimes inaccurate
  • Fixed: Simplified and optimized speed-control math
  • Fixed: Simplified window-position save/recall at startup
  • Fixed: Counters sometimes displayed wrong times
  • Fixed: Now uses more conservative timing when entering/exiting fullscreen
  • Fixed: Changed size of filename display to accommodate long filenames
  • Fixed: changed “Way Off!” indicator into “Finding Frame” indicator
  • Added: “Mute Sound” button added
  • Added: “Hide Mouse in Full-Screen” button added
  • Added: Client now indicates playback speed
  • Added: Client now has user-settable frame offset

Known Bugs in this version:

  • If you launch MultiScreener via Applescript, it sometimes fails to load preferences. This is a vexing problem that only happens on certain machines under certain conditions. I’m investigating solutions for the next release.
  • If you put the computer to sleep while MultiScreener is running in fullscreen mode, it wakes up OK but the mouse pointer becomes visible. A fix is in the works.
  • One user reported red flashes in full screen mode and frequent crashes (MultiScreener Client, OS 10.6.6 and 10.6.7). He disabled Apple Remote Desktop and the problem disappeared. When running OS 10.6.2, ARD and MultiScreener coexisted peacefully.
Like MultiScreener? Donations are appreciated. (sorry, not tax-deductible)

Other Versions

  • MultiScreener 0.95 (Windows – experimental un-supported build)
    (17MB, no source patches included) … but you can download mine in zip format
    Many people have asked for a Windows build and I’ve told them to compile it themselves, using the free MAX5 demo for windows. Finally somebody did, so thank Jake Rugino for this. I haven’t tested it because I don’t have Windows machines, so you’re on your own. (Some people have reported that it doesn’t work with Windows 7.)