Stream Deck and Companion control
Open Live runs its vision mixer in the cloud, but the operator does not have to drive it with a mouse. The open-source Open Live module for Bitfocus Companion puts cuts, transitions, keyers and audio on the buttons of a Stream Deck, and lights those buttons with what is on program and preview.
Can I control Open Live with a Stream Deck?
Yes, through Bitfocus Companion. Companion runs on a computer next to the Stream Deck, and the Open Live module for Companion connects that computer to your Open Live production. The same module works with any other surface Companion supports.
Studio, the Open Live controller in the browser, does not talk to a Stream Deck itself. The hardware always goes through Companion. In Studio, cut, auto, fade to black and the first downstream keyer also have keyboard shortcuts.
What can the Stream Deck buttons do in Open Live?
- Switching. Cut a source straight to program, load it to preview, take preview to program, or run a transition: a fade, or a push left, right, up or down, with a duration you set per button. The actions address up to 16 sources by their position in the production.
- Keyers and fade to black. Key the graphic on DSK 1 or DSK 2 in and out, fade the program to black, and set the opacity of the overlay layer.
- Audio. Mute a channel or the main mix and nudge its level up or down. On a surface with dials, turning a dial moves the level. One page of buttons can also pick a channel first and then mute or adjust whichever channel is picked.
Do the buttons show what is on air?
Yes. The source buttons turn red when that source is on program and green when it is on preview, and they show the source names from the production. Other buttons light when the program is faded to black, when a keyer is showing its graphic and when an audio channel is muted.
Companion and Studio are both clients of the same production. A cut made on the Stream Deck shows up in every open Studio, and a cut made in Studio lights the Stream Deck, because Open Live sends each change to every connected controller. A controller that connects in the middle of the show gets the current state first.
How do I set up the Open Live Companion module?
- Install Companion 3.0 or later on the computer the Stream Deck is plugged into.
- Load the module. The module is not yet in the list that ships with Companion. Download it from its GitHub repository, which includes a ready-built copy, and point Companion's developer modules setting at the folder it is in. Then add an Open Live connection.
- Connect it. Enter the address of your Open Live instance. For an instance on Open Source Cloud, also fill in the OSC PAT field with the personal access credential from your Open Source Cloud account. The module uses it to get short-lived access to the instance and renews that access before it runs out.
- Import the layout. The repository includes a Companion configuration file with four pages sized for a Stream Deck XL: your productions, video control, audio, and the pick-a-channel audio page. Import it in Companion and the buttons are ready.
- Pick a production. The first page lists the active productions, up to 31, and can show which ones already have a controller connected. Press one to start controlling it.
The Companion module guide on the community wiki has every step with screenshots and a list of all the preset buttons.
Does the Stream Deck need to be near the cloud production?
No. The module only makes outgoing connections to Open Live, to its REST API and to the controller WebSocket of the production, so nothing has to be opened in a firewall for it. If the connection drops, the module reconnects by itself. When the production is stopped, the module notices within about ten seconds and goes back to the list of productions. That makes it a fit for remote production over SRT, where the cameras are at the venue and the crew can be anywhere.
Can I build my own control surface integration?
Yes. Everything the module does goes over the documented controller WebSocket protocol, the same one Studio uses, and the module's source code is a working example of it. A read-only client such as a tally light can connect in watch-only mode, which receives every change but cannot send commands. The maintainers have not yet said whether the protocol will stay stable across releases, so check the release notes before you build on it.
Open Intercom, the open-source intercom that runs alongside Open Live, has its own Companion module, so the same Stream Deck can drive both.
What does the Companion module not do yet?
- It is not in the module list that ships with Companion, so it is loaded as a developer module.
- It has no field for the API key of a self-hosted backend, so it connects to a backend you host yourself only when that backend runs without one.
- It has no buttons for sending new parameters to an HTML source; that is only in the controller WebSocket API today.
- It has no button for running a production macro. Macros saved in Studio are run from Studio.
Is the Open Live Companion module free and open source?
Yes. The module is published on GitHub under the MIT licence, like the Open Live backend and Studio. Self-hosted, you run the backend and its CouchDB database, Studio and Strom yourself; the self-hosting guide covers what that involves. On Open Source Cloud you sign in, pick a monthly plan that includes production hours on shared Strom, and start producing. The vision mixer overview covers what the buttons control, and your first live show walks through a production from an empty account to on air.
Ready to put your production on a Stream Deck?
Sign in with your Open Source Cloud account, create an environment and a production, then connect Companion to it.