‹ Plugin Player docs

Output — displays, fullscreen, the operator window, Resolume

1. One display or two

Plugin Player always opens as one window on your main display, with OUTPUT off, whatever is plugged in and whatever you did last time. Nothing takes over a screen by itself, so opening the app in the middle of a show is safe. The projector output is something you turn on:

  1. Plug the projector in (Windows: Win+P → Extend).
  2. Click the orange ⧉ OUTPUT button next to the PERFORM / MAP / CONTROLS tabs (Output to your TV screen, monitor, projector, or LED wall). A box opens: click OUTPUT TO SCREEN 2. Nothing goes out until you choose. With two or more, a picker opens (see Two, three or more screens below). With none, a panel says what to do (plug one in over HDMI / USB-C, Windows + P › Extend, click OUTPUT again) and offers FULL SCREEN ON THIS SCREEN or a test window.
  3. The projector gets the picture fullscreen, at once; your window stays exactly as it was (§3): nothing restarts, the scene, the look, the camera and your panels stay put, and the show never stops. Turning it off just takes the picture off the projector the same way.

Plugin Player remembers your last screen on this computer as a suggestion: next time, that screen sits on top of the box, marked LAST USED, and one click turns it on. It never turns on by itself, at launch or when a screen is plugged in, and a show file can't turn it on either (a show keeps its mapping, not the switch). While it is on, the button reads OUTPUT ON · SCREEN 2; click it for OUTPUT OFF · ONE WINDOW, another screen, or MAP IT ONTO THE WALL. A build that sends to Resolume over Spout keeps the button too: it says SPOUT ON, and the box holds the switch. Closing the app (the X, Alt+F4) always closes the projector picture with it.

SetupWhat happens at launch
Laptop onlyOne window with a title bar (maximized). The program monitor in it is the live picture
Laptop + projector, output never turned onOne window, on the laptop. The projector shows your desktop until you pick it in ⧉ OUTPUT
Laptop + projector, output turned on last timeThe same: one window, OUTPUT off. ⧉ OUTPUT has that screen on top, marked LAST USED. One click and the projector gets the picture only: fullscreen, no buttons, no panels. The laptop keeps the full app (scenes, presets, the controller plate, MAP) and its program monitor shows exactly what the projector shows
You want the two windows from a shortcutStart it with --output (one display: the output is a 1280×720 window)
You want no OUTPUT at allStart it with --no-output
A Spout build (Resolume owns the projector)One window, on your main display, however many displays are plugged in: the second display is where Resolume's own fullscreen output lives. The log says output window: off (Spout build: Resolume owns the displays). --output or ⧉ OUTPUT opens the output anyway
You want it on a specific displayStart it with --display N. N counts from 0 in the order Windows lists the displays
You want fullscreen, or a window againF11 toggles fullscreen (Esc leaves it). --fullscreen opens fullscreen. --windowed --size 1280x720 gives a fixed-size window

What resolution reaches the projector. Plugin Player always renders at 1920×1080, whatever the size of the app window, the screen it's on or the projector. Drag the window small, turn OUTPUT on or off, add a second projector: the picture doesn't change. Every screen OUTPUT is on gets the same 1920×1080. A projector that isn't 16:9 (a 1280×800, say) shows the whole picture with black bars, never stretched; a 4K screen shows the 1080p picture scaled up. Unlocked scenes and the free scenes go out at 1080p with no watermark. A scene you don't own yet goes out at 720p detail with the watermark, and the moment you buy it, it's 1080p and clean: no restart, no black frame. Spout and REC take the same 1920×1080. 4K output is planned for after the beta.

The OUT 1920×1080 badge on the monitor is the render size (--size WxH changes it, for Spout and REC too; --spout-size sets Spout alone). The ⋯ button right after ⧉ OUTPUT only appears on a narrow window, when a chip has to fold. The SHOW CHECKLIST's OUTPUT ON SCREEN 2 ▸ button opens the ⧉ OUTPUT box too.

Windows must be in Extend mode (Win+P → Extend). In Duplicate mode there is only one display and the laptop screen shows the same picture.

Two, three or more screens

⧉ OUTPUT never guesses: a click opens the screen picker, even with one extra screen. The button shows a small 2 SCREENS / 3 SCREENS badge so you can see at a glance that more than one is connected.

Every screen shows the same picture with the same MAP (corners, soft edges, slices). Each extra screen costs about 0.04 ms of CPU per frame (one GPU copy of the program), so two or three screens play just as smoothly as one. A separate map for each screen isn't available yet (see below).

Plugging and unplugging during a show. The list updates as soon as a screen is plugged in (the button shows +1 SCREEN for a moment) or unplugged. If a screen showing the picture is unplugged (a kicked HDMI cable), that screen just goes off: the show keeps playing in your window and on any other screens that are on, and a message tells you what happened. Plug the same screen back in during that session and the picture returns to it, even when Windows has given it a new number: that is a live show recovering, so it only happens if you didn't turn OUTPUT off. While it waits, the box says so and offers STAY OFF WHEN IT'S BACK. Any other screen you plug in just shows up in the list. The app never crashes and never leaves a full-screen window covering your laptop.

Remembered as a suggestion. Plugin Player remembers every screen you had on (the whole set). At the next launch they sit on top of the box marked LAST USED, found by their number or, if Windows has renumbered them, by their name and size. Output stays off until you click one; click a second one to add it.

A separate map per screen: not available yet. Right now the program is mapped once and every screen copies that mapped picture. A separate map for each screen means each mirror would draw the program through its own corner pins and soft edges: one mapping per screen saved in the show, a MAP screen picker, and a warp pass for each mirror (one extra GPU pass each) instead of a plain copy.

Already mapped in Resolume?

Drop your Arena Advanced Output preset (the .xml from Documents\Resolume Arena\Presets\Advanced Output) on Plugin Player and it uses the same slices: each slice takes the same part of the picture and lands in the same place on the projector, corner pins and bent edges included. Pick which screen when the preset has more than one. Plugin Player tells you in plain words what it could not take over (a disabled slice, a soft-edge blend, a colour trim, a polygon cut — polygons show as their rectangle for now). Starting from a terminal: --mapping "C:\…\Advanced Output\My Stage.xml", and --mapping-screen "Screen 2" to choose the screen. Edge blending and multi-projector stay in Resolume on purpose; Spout into Arena for those comes back after the beta (§4).

Output quality: 1080p or 720p

⧉ OUTPUT › OUTPUT QUALITY sets what Plugin Player renders at: 1080p (the default) or 720p. It sits at the bottom of the box ⧉ OUTPUT opens, with or without a second screen. While 720p is on, the box says 720P ON and the button carries a 720P tag. On a weaker computer 720p is the first thing to try: it's much less work for the graphics card, and most scenes run far smoother (a 2017 MacBook Pro goes from 7-32 fps at 1080p to 15-60 at 720p). The projector, Spout, Syphon and REC all follow it. It's remembered, and you can change it during a show: no restart, the picture dissolves across in under a second, and a scene with trails or fluid keeps them. Resolume sees the sender change size. The only time it waits is during a recording, because a recording keeps one size: stop REC first. An unlocked scene stays clean at either setting. A shortcut can set it too: --quality 720p.

2. Fullscreen output

The footer line while the chrome is on reads like 300 FPS · 1920×1080 · PLUGIN PLAYER · V0.1.8-beta · WIN. The fps number is capped by your display's refresh rate when the chrome is off and fullscreen.

3. The operator window

With a projector plugged in (Extend), the laptop window is the operator window (§1): everything you click, the controller plate and the full-size live program monitor, while the projector window carries only the picture. The projector never shows the buttons. The show runs in the laptop window and the projector shows a copy of the same picture, frame for frame, so switching the output on, off or to another screen never restarts anything (it takes a few hundredths of a second). Minimizing the laptop window does not stop the projector. Plug the projector in, then click it in ⧉ OUTPUT: no restart needed.

4. Spout into Resolume

Spout is built into Plugin Player: nothing extra to install (no Python, no helper program). It works both ways: Plugin Player's picture into Resolume Arena (or any Spout app), and Arena's composition into Plugin Player (below).

  1. Click ⧉ OUTPUT. At the bottom of the box, with or without a second screen, SPOUT OUT · SEND TO RESOLUME has the switch, the sender's name, and WAITING FOR AN APP while no app is receiving yet. It goes from SPOUT OFF to SPOUT ON, with no reload and no gap in the picture, and the ⧉ OUTPUT button says SPOUT ON on its small line. Click it again to stop: the source leaves Resolume's list. It is remembered on this computer. Off is the default. --spout or a Spout build (Flashpoint) always starts it on, --no-spout always starts it off (see Where to type flags below), and in GUEST MODE the switch is locked, like OUTPUT.
  2. In Arena: Sources › Spout › Plugin Player → drag it into an empty clip. Change scenes on the controller: Arena follows in the same frame.
  3. Picture upside down in Arena? Restart with --spout-invert.

The sender is called Plugin Player (--spout-name "My name" to change it). It sends 1920×1080 at 60 frames a second by default (--spout-size, --spout-fps, never above 60). --spout --no-window renders with nothing on screen, when Arena owns the projector.

Match Plugin Player's frame rate to Resolume's

Plugin Player draws at most 60 frames a second (it used to draw as fast as the monitor goes: 144, 240 or more on a gaming monitor, all of it on the graphics card Resolume needs). Spout sends no more than that either.

Plugin Player and Resolume on the same night

Use Resolume (or any Spout app) as the input picture

The other direction: Arena's composition comes INTO Plugin Player and becomes the picture every scene plays with, exactly like a camera. Built in, like Spout out (nothing to install):

  1. In Arena, send the composition out over Spout: Output › Advanced… → pick a screen → Device: Spout (a virtual output). Arena's Output menu also has a Composition output sharing section that can share the whole composition.
  2. In Plugin Player, click ⧉ INPUT. Under SPOUT you see every Spout sender that is sending right now, tagged SPOUT, with its size and frame rate (1920×1080 · 60 fps). The list updates by itself every few seconds.
  3. Click Arena's sender. It goes on the scene like a camera (ON SCENE): − / + take it off / put it back, CAMERA OFF SHOWS still decides what plays while it is off, REC records it, MEASURE DELAY works on it (below).
  4. Plugin Player remembers it by name. If Arena is not sending at the next launch, Plugin Player uses your camera and says so; pick Arena again under SPOUT when it sends.

Good to know:

On a Mac: Syphon

On a Mac the same thing is Syphon (the Mac's Spout), built in the same way: nothing to install.

Where to type flags

Run Plugin Player from a terminal: "Plugin Player.exe" --spout [to confirm at beta: the installed executable name and whether the shortcut accepts flags in its Target field].

5. OVERLAY ON OUTPUT [coming]

The toggle under the controller legend. When built, it draws the controller plate and its legend into the projector picture, so a room can see which button does what. Today the switch does nothing.

6. Recording [coming]

The REC — chip in the header is a placeholder. Capturing the output to a video file is planned. Until then use OBS or Windows Game Bar (Win+G) on Plugin Player's window.