This article will show how to use bitfocus Companion together with PLAYDECK. Companion has a ready-to-use module for PLAYDECK. This is the most comfortable way to connect PLAYDECK to your ATEM Mixer or STREAMDECK.
The Companion Module has been developed and is maintained by Semonov Nick. He is a Community Developer and also a great guy to work with.
Installation
1. Start PLAYDECK, so Companion can find it
2. Download and install the latest stable Version of Companion
3. Start Companion and add the PLAYDECK Module

4. You are done, if Companion shows a GREEN Checkmark for this Connection. If you cant get a Connection, please disable your Firewall or allow TCP Port 11411.

Button Page with Presets
We will use Companion Presets to quickly create a fresh Page of Buttons for a casual Playout Situation.
1. Create a new Page, then goto PRESETS and select PLAYDECK

2. For our Sample we specifically want to target Channel 1. You could also use LISTS, which are dynamic and use the visible Channel in PLAYDECK (Left and Right). You could also control your ASSETS (Streams, Recordings). Select CHANNEL 1 to continue

3. With Drag & Drop we create a simple Playout Solution: Play Control with some Overlays. The Buttons are added with FEEDBACKS, meaning: You will get a RED Button according to the PLAY STATE (CUE, Playing, Paused, Stopped).

4. Undesired FEEDBACKS can quickly removed by clicking on the Buttons, going to Feedbacks and deleting

5. The Overlay Button also needs to get told, which Overlay to start. In our sample we start multiple Overlays at once

Custom Commands instead of Actions
We will add any PLAYDECK Command to a Companion Button. This is useful, if you are more of a “code” type of person or if there a new Commands in PLAYDECK, which are (not yet) available in Companion. Its also possible to add multiple Commands at the same time.
1. We create a new Button and add a new Action. We now select CUSTOM COMMAND and click DONE

2. In PLAYDECK we open the COMMANDS LIST to review, which Command we want to use

3. We decide that we want to start multiple Overlays on several Channel and after that start 2 Streams:
<startoverlay|1|1>
<startoverlay|1|3>
<startoverlay|2|1>
<startoverlay|2|5>
<startstream|1>
<startstream|2>
4. We wrap up all Commands into one Line and copy it into the COMMANDS Field. If we then press our Button, we start our Overlays and our Streams, as all Commands are executed in the written order.

5. Another good example is starting 2 Channel synchronized:
<cue|1><cue|2><wait|1000><play|1><play|2>
This will CUE both Channel, then wait 1 Second for CUE being ready (Clip Caching), then PLAY both Channel.
Custom Button Feedbacks
Instead of using the pre-defined Feedbacks (e.g. PLAY STATE), you can use Companion VARIABLES to use many more Feedbacks. In this example we will start a specific Block and show its remaining Time on the Button.
1. We add a new Block to Channel #1 in PLAYDECK and rename it MAIN PROGRAM

2. Now we add a new Button to Companion and rename it MAIN. We start the Playback of our new Block via the PLAY FLEX Action, which allows us to use the Block Name instead of the Number

3. Now we check, what VARIABLES we can use for our Button Feedback. In the left Menu we click VARIABLES and then PLAYDECK. For our example we will use the CURRENT BLOCK NAME as trigger for our Feedback and the CURRENT BLOCK REMAIN TIME for our Button Text. You can click the small Copy Icon next to the Variable for easy Copy&Paste

4. We now head back to our Button and add a new Feedback. But in the Popup we dont open PLAYDECK, but the INTERNAL Tab. We then select VARIABLE: CHECK VALUE

5. We want to check, if our Block MAIN PROGRAM is playing specifically, so we add the VARIABLE “$(Playdeck:channel_1_block_name)” as Check Value and compare it against our Block Name “Main Program”. If our Block is playing, we want the Remaining Time to display on our Button, so we add TEXT as CHANGE STYLE PROPERTY and use the VARIABLE “$(Playdeck:channel_1_block_remain)”
