Install VLC Playback Control on Stream Deck XL

Get the pre-configured DJF VLC Companion Profile (v1.0)

If you’re looking for a video and audio playback solution across multiple platforms, VLC is your answer!

This famous media player can pretty much handle any format you throw at it, so if your client comes to you with an obscure file a minute before showtime, you’ll be fine.

It’s very easy to drop files into the playlist and rearrange the cue list on the fly – all of which is updated on the Stream Deck instantly.

VLC Console Features

The DJF VLC Companion Profile has been thoughtfully designed to fit all essential playback features into a single page of a Stream Deck XL:

  • Time Of Day clock
  • Elapsed Time Counter (green)
  • Remaining Time Counter (red, with warning colors at under 10-seconds remaining)
  • Loop 1, Loop All, Full Screen buttons
  • Seek forwards/backwards by 1-second and by 10-seconds
  • Play, Pause, Stop, Next, Previous
  • Cue button, to load & pause the first frame of the next video
  • Playlist Cue buttons for 10 items (long-press to delete items from cue)
  • VLC Audio Volume presets for 0, 50%, 85%, 100%, as well as increase/decrease audio volume by 5%
  • ATEM Audio button (for channel audio On/Off, and long-press for Audio-follows-video (AFV))
  • ATEM Auto and Cut buttons
  • Auto In & Auto Out Triggers, for automated Hyperdeck-like control with ATEMs (requires adding the triggers, as outlined below)

 

Stream Deck XL control of VLC Video Playback

 

Download VLC

Download the free VLC application (3.0.17.3) for Mac, PC, Linux

 

Install Companion on your Mac, PC, or Raspberry Pi

Installation instructions for Mac and PC

Installation instructions for “CompanionPi” (a preconfigured Raspberry Pi 4 disk image)

 

Import VLC v1.0 Configuration file into Companion

Open Companion in your web browser (likely the local “127.0.0.1:8000” address, as per the “Install Companion” instructions above)

Within Companion:

  • Navigate tabs to Buttons > Import/Export > click on “Import
  • Find the “djf-vlc-1.0.companionconfig” file on your local drive that you downloaded from this website
  • Choose a blank page within your 99 Companion pages
  • Click “Import to page XX” to overwrite the selected page

 

Set up a Page Jump in Companion

By default, Button #1 (with the big “X”) in your new DJF VLC v1.0 profile will exit you out of the VLC playback page and take you back to Page 1 of Companion.

You can update this button to jump to any of Companion’s 99 Pages, but let’s use Page 1 as our default “Home page” that we will use to be about to access VLC.

  • In your VLC page, select Button #1 and copy using “Command+C”.
  • Navigate back to Page 1 (or type “1” in the page field and hit enter)
  • Select a new blank button on Page 1.
  • Press Paste (Command+V), and a copy of the “X” button will be created.
  • Select this new button, and rename “X” to “VLC” in the “Button text” field.
    • Under “Press actions“, navigate to the “internal: Set surface with s/n to page” action
      • Change the “Page” field to the page number that you installed VLC on to.

You’ve now created a navigational loop.

On your Stream Deck surface, you will be able to click into and out of the VLC Playback page.

 

Configure Companion to connect to VLC

In the Companion web browser, navigate to:

  • Connections tab > module > vlc > EDIT

Under the Edit Connections tab, ensure the following settings:

  • Label: vlc
  • Target IP: 127.0.0.1
  • HTTP Password (required): vlcpassword
  • Number of clip names to reserve: 10
  • Target Port: 8080
  • Increase timer resolution: Checked
  • Use • for empty: Unchecked

Alternative setup for VLC running on a remote computer:

  • If you are not running VLC on the same local computer as your Companion installation, you can change the Target IP to a different computer on your local network.
  • This helps if you want to have VLC running on a separate, dedicated computer, but be controlled by the main Companion installation.
    • Simply change the “Target IP” from the local 127.0.0.1 address to the IP address of the remote computer (find that address in that computer’s network settings).

 

Configure VLC to connect to Companion

There are many playback behaviors you can customize within VLC. We’ll focus here on the main items to get you up and running.

General Preferences

In the VLC application, go to Preferences:

  • Interface tab
    • Playback Behavior:
      • Control external music players: Do nothing (select “Do nothing” if you don’t want external music sources to be affected by VLC control; otherwise, select Pause (or Pause and resume) to ensure there is no other audio source such as iTunes or Spotify competing with VLC).
    • HTTP Web Interface (at the bottom):
      • Enable HTTP web interface: Checked
      • Password: vlcpassword  (this is the matching password within the Companion Profile VLC module. If you use a different password here in the VLC application, make sure to update the password within the Companion VLC module to match).
  • Video tab:
    • Enable videoChecked
      • Display
        • Show video within main windowUnchecked
        • Pause the video playback when minimized: Unchecked
        • Float on Top: Unchecked (I prefer this off when I’m multitasking and doing web browser demos on my livestreams so that the VLC window can sit behind the browser, but if you are setting up VLC with a dedicated output and always want VLC to be in the foreground – usually in full screen mode – then check this)
        • Window Decorations: Unchecked (for a clean Picture-in-picture look if not using full-screen)
      • Fullscreen Settings
        • Start in fullscreen: Checked
        • Use the native fullscreen mode: Unchecked (very important to uncheck this, otherwise the OS will push the video full screen in whatever current display you are working in)
        • Black screens in fullscreen mode: Unchecked
        • Fullscreen Video Device: Select the output monitor
  • Subtitles / OSD tab;
    • Onscreen Display
      • Enable OSDUnchecked (important this is unchecked to retain a clean video feed, otherwise the filenames will appear at the start of a file’s playback)
  • Input / Codecs tab:
    • Codecs/ Muxers
      • Hardware decoding: Unchecked (Unchecking this can help if you are experiencing the first few seconds of playback being scrambled video)

Make sure you click “Save” at this point, or else VLC will forget your settings before moving on to the advanced features below. Also remember to quit and restart VLC for some of these settings to take effect. 

 

Advanced Settings (Preferences > Show All)

Open Preferences again and click the Show All button at the bottom of the panel to access advanced settings:

  • Interface > main interface > macosx:
    • Behaviour
      • Auto-playback of new items: Unchecked
      • Keep recent items: Checked
      • Show fullscreen controller: Unchecked
      • Resize interface to the native video size: Checked
      • Pause video playback when minimized: Unchecked
      • Lock Aspect Ratio: Checked
  • Playlist
      • Play files randomly forever: Unchecked
      • Repeat all: user choice (this can be controlled at-will within the DJF Companion profile button: “Loop All”)
      • Repeat current item: user choice (this can be controlled at-will within the DJF Companion profile button: “Loop One”. This is particularly useful if you are using VLC as a background music player and want a playlist of tracks to continue cycling through)
      • Play and exit: Unchecked
      • Play and stop: Unchecked (check this if you want the VLC playback window to disappear when the video finishes playing and reveal the desktop instead – useful for one-off video playback where you are using the same HDMI connection for desktop demos)
      • Play and pause: Unchecked (check this if you want the video to freeze on the last frame of video playback. Ensure this is unchecked if you want videos to play one after the next, or if you are using VLC as an audio playlist in the background and want all music tracks to continue without pausing)
      • Start Paused: Unchecked (checking this will allow you to “select” (or pre-cue) a video, but won’t begin auto-playback, nor will it show the first frame of video. If you select this option, you’ll have to select a video to playback and then also press play to being playback)
      • Autostart: Checked

Again, remember to Save, and to quit and restart VLC in order for the changes to take effect.

 

ATEM Input Audio Control

Now that you have the VLC control set up, let’s connect the video out from your computer to your ATEM switcher. This is likely an HDMI out from your computer, and an HDMI into a video switcher like the ATEM Mini/Pro/ISO, or Extreme.

By default, this profile is set to use VLC into Input7 on an ATEM (Mini, Pro, Extreme, Constellation, or any other ATEM).

If you want to select a different Input source on your ATEM to control the Audio button (On/Off/AFV (audio follows video)):

  • Navigate in Companion to > Buttons > Page X (whatever page you installed VLC on to) > Button #30
  • Change the button text “AUDIO\n$(atem:short_7)” to the input number you want (ie, if using an ATEM Mini which only has four inputs, you might want to change it to “AUDIO\n$(atem:short_4)”
  • Change the Input# on all the dropdown menus for all the Actions and Feedback commands to the Input number you are using:

 

Change the Input# on the Actions:

Then scroll down and also change the Input# on the feedback for Button 30:

 

Set Up Triggers for Auto In / Auto Out

To simulate Hyperdeck control, VLC can be set up within Companion to automatically play when the VLC input is put to program. It can also automatically auto-fade out when a video finishes playing.

Buttons #9 and #10 in the DJF VLC v1.0 profile turn on “Auto In” and “Auto Out” respectively. However, Companion can’t import their associated Triggers, so we’re going to set them up now manually to connect to these buttons.

AUTO-IN TRIGGER

This trigger presses play in VLC when it reads that the ATEM with the Input named “VLC” has been put into Program.

  • Navigate in Companion to > “Triggers” tab > click “Add New Trigger”
  • Name: VLC AUTO IN
  • Condition
    • Type: Feedback
      • + add Feedback: internal: Check variable value
        • Variable: Label of input active on program bus (M/E 1) (atem:pgm1_input)
        • Operation: =
        • Value: VLC (note: in the ATEM Software Control application, make sure the input that VLC is connected to is called “VLC”, since the input label needs to match this Value) 
      • + add Feedback: atem: Tally: Program
        • Input: (select your relevant input number if not Input 7)
  • Action
    • + add action: vlc: Play

 

AUTO-OUT TRIGGER

This trigger will perform an AUTO transition when the playback time remaining reaches 00:00:02… AND only when it also reads that VLC Input# is present in the Program Tally (in order to avoid an unwanted AUTO if previewing off air). 1 second later, VLC will pause the video so it doesn’t continue to play audio in the background.

Make sure your video files don’t have any mission critical audio within the last 1 second.

  • Navigate in Companion to > “Triggers” tab > click “Add New Trigger”
  • Name: VLC AUTO OUT
  • Condition
    • Type: Feedback
      • + add Feedback: internal: Check variable value
        • Variable: Playing time left, HH:MM:SS (vlc:r_hhmmss)
        • Operation: =
        • Value: 00:00:02
      • + add Feedback: atem: Tally: Program
        • Input: (select your relevant input number if not Input 7)
  • Action
    • + add action: atem: ME: Perform AUTO transition
      • M/E: M/E1
    • + add action: vlc: Pause/ Resume
      • Delay: 1000ms

 

2ME Constellation ISO Portable Rack

 

20-inputs, 12-outputs, 2-wheels…

Portable live streaming case with 8-channels of 1080p60 recording. Full equipment list below.

I upgraded from the ATEM Mini Extreme ISO to the ATEM 2ME Constellation HD, plus a new ATEM SDI Extreme ISO for full SDI-workflow for backup recording and streaming.

Most of all, I wanted the equipment to still fit within my SKB 4U Studio Flyer Case so that transportation remained easy.

 

CHAPTERS

00:00 What’s inside?

00:37 SKB 4U Studio Flyer Rack Overview

01:49 Breakaway fan & panels for internal access

02:49 Timelapse of the rack build

04:54 Internal photographs of rack power & converters

06:13 Stream Deck control panel

06:50 Use H2Rgear.com to plan your rack build

07:43 2ME Constellation HD MultiViewer loop back

08:15 Get the equipment list from DavidJoshuaFord.com

 

 

EQUIPMENT LIST

Here’s a breakdown of pretty much everything inside the rack….down to the thumbscrews.

How much? This whole rack build was approximately $8K USD, excluding any taxes.

STUDIO FLYER & RACK ACCESSORIES

Rack Case SKB 4U ISeries Studio Flyer

Rack Shelf 1U 14.5-inch Middle Atlantic

Power Filter

AC Power Strip 8-Switch

Exhaust Fan 1U Rackmount AC Infinity CLOUDPLATE

 

CUSTOM PATCH PANELS FROM REDCO.COM

Front Patch Panel

Rear Patch Panel

 

EQUIPMENT

ATEM 2 M/E Constellation HD

ATEM SDI Extreme ISO

HyperDeck Studio HD Plus

BMD Web Presenter 4K

GL.iNet GL-AXT1800 (Slate AX) WiFi 6 Router

Netgear GS116PP 16-Port Gigabit PoE+ Compliant Unmanaged Switch

 

CONTROL

Elgato Stream Deck XL

Stream Deck Pedal

Raspberry Pi 4

Raspberry Pi 4 Case

 

POWER & CONVERTERS

Bi-Directional SDI to HDMI 3G Micro Converter

HDMI Splitter 1×2

60W USB-A Charging Hub 6-Port 12A

100W USB-C PD Charger

12V 5A 60W AC to DC Power Converter 100V~240V, 5.5×2.5mm (for ATEM Mini/ Extreme)

 

POWER PATCHING CABLES

USB-A to USB-C 1-Foot Charging Cable

1-ft Figure-8 Short Power Cable IEC320 C7

1-ft IEC 18AWG Universal Power Cord

12V DC Power Connector

12v Switch

DC Power Supply Jack Socket Connection 5.5mm x 2.1mm

DC Power Adapter Cable – 5.5mm x 2.1mm Female to 3.5mm x 1.35mm Male (for Avinair HDMI Splitter Power Adapter)

POE Splitter 48V to 5V 2.4A USB-C Adapter (to power Pi from POE Switch)

 

VIDEO & DATA PATCHING CABLES

CAT 6 Ethernet Patch Cables

SDI Patch Cables

HDMI Patch Cables

USB 3.0 A to B Cable 3 ft

USB-C Female-to-Female Adapter

USB-A Male to USB-C Female Adapter

 

ACCESSORIES

Quick-Release Rack Thumb Screws #10-32 x 1/2″

Clear Zippered Pouch (fits inside SKB Studio Flyer Rack)

Hard Zippered Case (fits inside SKB Studio Flyer Rack)

Dual-Lock Velcro

Companion Satellite

What is Companion Satellite?

Companion Satellite is a sister-application that connects your Stream Deck back to your original Companion installation, allowing you to control your production equipment over the local network, or even across the internet.

Use a Stream Deck to direct your next production remotely with Companion Satellite

Use a Stream Deck to direct your next video production remotely with Companion Satellite

 

Downloads

Install Companion

Before we get to the Satellite application, Companion itself is an application that runs on Mac, PC, and even Raspberry Pi to control over 200 brands of live production equipment on your local network – think ATEM Switchers, PTZ cameras, video playback, audio faders, timers, PowerPoint presentations and more. It centralizes the control of all your production gear into a single (or multiple!) Stream Decks.

The computer you choose to install Companion on to needs to be accessible to the other production devices on your local network. For example, Companion is installed on my Mac, which has the IP address 192.168.8.138, and it speaks to my ATEM Mini Extreme ISO which has the IP address 192.168.8.223.

Typically in this scenario, the Stream Deck is connected via USB directly to the host computer. Therefore, the distance between the two is limited by the length of the USB cable (3-10 feet).

However, I can access Companion’s interface on my Mac installation from any other computer connected to the network, by opening up a web browser and typing in the address 192.168.8.138:8000 (the “:8000” indicates the port number).

If this is new to you, here’s a previous blog post I wrote about how to install Companion.

 

Install Companion Satellite

But what if we want to use the Stream Deck surface at a different desk, or in a different room, or in an entirely remote location?

This is where the magic of Companion Satellite comes in.

Similar to how we could use a remote computer’s web browser to connect to the original Companion installation, we can use Companion Satellite on a remote computer to connect your Stream Deck’s USB surface back to the original Companion installation.

On the remote computer (connected to the local network):

  • Connect your Stream Deck via USB to the remote computer
  • Open Companion Satellite (the icon will appear in the upper right task bar on a Mac)
  • Click “Change Host”, and input the IP address of the computer running the original Companion installation (remember, in my example, this was 192.168.8.138)
  • Double check that “Change Port” is set to the default port number of 16622

Now the buttons on your Stream Deck attached to the remote computer will reflect the layout of the original Companion installation, and you can control your production remotely across the network.

If you are outside of your local network, connect via your VPN to be able to control your production over the internet.

MultiViewer Over Zoom

One last bonus step, if you use an HDMI-to-USBC webcam adapter (such as the CamLink4K), you can send your MultiViewer through a video conferencing service like Zoom (for low-latency), and you now have a truly remote switching solution so you can direct a live production outside of the studio.

Remote switching a live production with MultiViewer over Zoom and Stream Deck control via Companion Satellite

Three Tips to make the Canon R5C a Pro Video camera

WATCH LIVE, AUGUST 23rd, 10AM EST

TL;DR: XLR Audio, Power/Rigging, and Focus Tracking…

Where we came from and where we’re going

As a filmmaker and photographer, I spent many years building up a collection of EF-mount lenses. The crossover of photo-video utility was only partly a financial consideration. It was mostly about the simplification of transportation, storage, and inventory management.

Back in the glory days of Canon 5DmkII (hushed tone…basically celluloid), filmmakers would franken-rig it with another blockbuster indie device: the Zoom H4n. The 2-channel XLR input ran on two AA’s and had appalling battery life. It was an anxious device to use.

The Zoom H6 that followed was much more robust. It still sits in my kit to this day as a backup audio recorder. But for small gigs, such as an interview setup, it never solved the need for balanced audio inputs direct to tape. (“tape”…)

Enter the Canon Cinema line, accepting EF glass and XLR inputs.

We rented the C300 a lot for commercial and doc work, and C100 for cheaper multicam event work. I finally purchased the C200 back in 2017 and enjoyed the crossover compatibility with the EF glass from my 5D3/4 series of photography bodies.

With Canon transitioning to the new RF-mounts since 2018, it placed the lineage of EF investments in a peculiar position. EF glass can be adapted to RF camera bodies, but not vice versa. Therefore, as I continue to purchase new RF lenses, my C200 is obsolete.

I never fell in love with the C70 due to its smaller sensor size, “DSLR-body” shape, and mini-XLR inputs.

But the Canon R5C… now there’s an interesting proposition.

 

The new Hybrid King for the decade

This moment harkens back to the 2008 Canon 5DmkII days, when a photo camera declared it was more than a single image.

The Canon R5C is a 45-megapixel beast smiling at you like Inigo Montoya in a sword fight – the “C” portion of “R5” declaring it is not left-handed, but rather 8K60p RAW.

It gives me what I need as a photographer, and as a filmmaker, the codecs alone outstrip my C200.

However, while it works as promised out-of-the-box in photo mode, there’s one major crippling factor to the R5C being a Cinema boy-wonder (person-wonder): power.

It just burns through juice. Brand new LPE6NH batteries are supposed to give 40-min, but in the real world it’s more like 25-min… even if you’re not recording (Canon: firmware update??). And if you put in an older gen LPE6N battery, you’ll be lucky to get 5-10min.

Remember that anxiety-inducing Zoom H4n recorder?

With that in mind, on today’s livestream we will look at three tips to turn the Canon R5C into a pro video camera.

 

TIP #1: PRO AUDIO with TASCAM XLR

I’m not sure I love the Tascam CA-XLR2d hotshoe adapter just yet, but so far it does bring in XLR input into the Canon R5C as promised.

The design feels plasticy and cheap, it’s too big (and yet too small), and there is no digital meters or feedback that you are hitting levels correctly. There’s not even any feedback in the Canon menu to let you know the hotshoe is seated correctly.

I wouldn’t put too much weight on it, and it’s disappointing that it cuts out the possibility of a top handle, unlike the Sony FX3 handle.

I’ve also heard anecdotally from friends who own the unit that unplugging microphones while the phantom power is on can fry the unit… goodbye $500.

The two main pros are: power via the camera (one less power source to manage, phew!), and all the physical buttons are easy to access.

(The other pro is that when you remove the Tascam unit it, there’s no added bulk to a photo stills body…)

This audio device is in the category of Gets The Job Done. Here’s an affiliate link in case my tepid response hasn’t put you off:

 

TIP #2: POWER & RIGGING

This one will cover a couple of areas for getting around the R5C’s power limitations, including on a gimbal, on an interview rig, and for live streaming, so you’d better tune in!

Here’s the gear we’ll cover:

  • DJI RS3 Pro Combo Gimbal (Amazon)
  • Zitay LP-E6 Dummy Battery for DJI RS2/RS3 (Amazon)
  • FXLION Nano Two 98Wh V-Mount Battery (Amazon)
  • SmallRig Mini V-Lock (Amazon)
  • SmallRig Nato Clamp (Amazon)
  • SmallRig Base Plate (Amazon)
  • SmallRig 12-inch 15mm Rods (Amazon)

 

TIP #3: FOCUS TRACKING

This tip is more of a general how-to, but understanding how the focus works on the R5C is critical to understand to avoid chasing your tail on set.

When you have the focus modes dialed in, you will make the most out of the camera, whether running with a gimbal or dialing in a super-shallow DOF during an interview, and can instantly switch between auto/manual, eye-tracking/ point-tracking.

Many people are familiar with the R5 photo menu’s approach to focusing – the capability is also there in the Cinema menu, you just need to know what to look for in the setup.

 

Q&A

Any questions about Canon R5C or my studio setup?

Ask me live on air…

See you at the top of the hour!

 

WATCH LIVE, AUGUST 23rd, 10AM EST

YoloBox Pro

Thoughts and Impressions on the YoloBox Pro

Having just received the Yolobox Pro from our friends over at Yololiv, here’s a running summary of my thoughts on the device.

Initial Impressions

  • Smells like a new pair of shoes!
  • Very cheeky that there is no AC adapter…Only the USB C and A cables
  • Would like a black power cable – white stands out too much when the YBP is in the camera shot
  • Case construction is plasticy, but feels solid. Heavier than I had anticipated!
  • I like that it can sit flat on a surface and the fan grill is not blocked

Notable Wins

  • Compact form factor and swiss army knife of connectivity is an obvious win – this device is unique in its category
  • Bringing in and displaying user comments is easy
  • The ease of bringing in remote guests looks promising – I need to test this workflow out more

Thoughts

  • Want Bluetooth access for keyboard – I like the way Apple computers automatically remember the bluetooth pairing connection after plugging in and then disconnecting a USB cable 
  • Need to be able to access network settings while live streaming 
  • Does the audio bell notification of power connected/disconnected play through to program? Or just headphone monitoring? I tested this on my first livestream and the audio “ping” when power is reconnected only comes through headphone monitoring, not on to program
  • Fan is loud for a presenting environment. Because it is touch screen controlled, it needs to be placed within arm’s reach, which places the fan in front of the microphone 
  • Would love remote control (Companion, Stream Deck, OSC etc) to be able to place the screen at a distance
  • Can’t stream Privately to FB if you want to test the settings. Have to post publicly, which notifies everyone, then go to Facebook in a web browser and change to private.
  • Kept getting “Update abnormal privacy status, please click the distribution switch button to redistribute; Or the user id has expired, please re-bind your Facebook account”. However, after rebinding, error message still appears.

Bugs

  • Forgets AFV Audio settings. Livestreams sessions do not remember audio parameters. For instance, I want it to remember HDMI 3 audio in, have AFV off by default, and to have my webcam audio Off.
  • Forgets HDMI Program Out setting.
  • Forgets USBC Out
  • Forgets encoding settings and resets it to default 3000kbps. YouTube’s recommended rate is 4500, so I’d like YBP to remember that when it has been set.
  • Live stream event description is not automatically copied to the resulting Facebook post (just shows up on Facebook as DESCRIPTION)
  • Headphones have weird noise when scheduling a livestream on the white startup page

Feature Requests

  • #1 thing I want: integration with Companion, open up OSC control.
  • Assignable Inputs 1-99…. So that you can recall shows and map it to a console.
  • Add video conferencing platforms such as Zoom, Google Meet, and Skype. Use case: even in non-livestreaming productions, we often have to bring in remote clients to view a field shoot. Using a laptop is cumbersome on location.
  • Screen Capture & Auto Thumbnail update – I want to pull screen grabs from program feed and save to SD card as a PNG/ JPEG. I use this all the time on the ATEMs when setting up a YouTube livestream – I’ll grab a still, and upload the image to be the program thumbnail. It would be amazing if Yolobox could automate this – with the option to update the livestream Thumbnail, and to save the image to SD card.
  • Would like click and drag to arrange menu Icons in order of priority.
  • Would like to be able to filter comments by platform source (currently available), but also all platform comments aggregated by time – so that you don’t miss a comment on a different platform.
  • When in the “Full Screen” view of the monitor, would like to be able to view and select comments for on-air display as a screen overlay.
  • FTP access… i.e. use a laptop to load a video into the SD card via the network, or copy off a program recording without having to eject the SD card.

“Invite Guests” Feature

YoloBox’s ability to invite guests on to a livestream shows a lot of promise. These are a few findings after using it live:

  • Need a field in the web browser for guests to enter their name when they join. Currently they just show up as “GUEST42” etc. If the host doesn’t know their name (ie, a drop-in show) then there’s no way to differentiate between the “Guests”.
  • If a guest drops off, the whole screen (even if the guest was part of a 2-UP/3-UP composite) goes black. Need to retain local HDMI source active in a 2UP, or have a default HDMI source to automatically switch back to.
  • Need a more intuitive 2UP/3UP/4UP/5UP/6UP layout if a solo presenter/streamer is going to use the feature. Takes too long while on air to build composite shots.
  • 8/12/2022: Experienced the whole YoloBox Pro crashing mid-livestream while trying to bring a composite of a Guest on screen. Need an intuitive recovery mode, since when re-entering the session, the “stop livestream” button was active, even though it was no longer streaming. Without wanting to close out the session and lose the audience currently watching on YouTube and Facebook, I was able to “pause” the livestream (rather than “Stop”), and then restart it again. Took two goes at this before it started streaming to Facebook again.
  • Guest invite list – would like to remember contacts in Most Recent address book – perhaps even sync to Google Contacts.

Ongoing Log

  • 08/23 – Yolobox Pro won’t allow a livestream to be scheduled more than 7 days in advance. Need to be able to schedule further than 7 days…what about recurring shows?
  • 08/23 – Bug: again discovered Guests appearing on the show with their audio active, even with the “mute guest audio on entry” button enabled, and even with their audio channel settings muted.

Comments

Do you have any input on your own experience with the YoloBox Pro? Comment below!

CompanionPi

Companion on a Raspberry Pi 4

When you run Companion on a dedicated piece of hardware like a Raspberry Pi 4, it ensures the central control of your live streaming production is “always on”. Your laptop is freed up to be disconnected/reconnected from the network as needed, and Companion will continue to operate unhindered.

This article will show you how to install a simple “headless” setup of Companion. Headless means the Pi will operate as a server on the network, without a display, keyboard, or mouse. You already have those peripherals on your desktop anyway! So this solution will take up minimal space with low power consumption.

We can then connect a Stream Deck to the Pi via USB for tactile control at your fingertips. And we can still very easily access Companion’s button settings from a laptop web browser, connected to the same router via ethernet or WiFi.

 

Livestream August 16, 11AM EST

 

Install

Run CompanionPi with minimal setup: power, Pi, and microSD card.

Hardware Requirements

  • Raspberry Pi 4 (4GB or 8GB) (Optional: protective case)
  • microSD card (32GB or greater capacity. Make sure you get the “A2” rating, such as the 64GB SanDisk Extreme PLUS)
  • 15W USB-C power supply (5v, 3A – example here)
  • Other hardware assumed to be in your setup:
    • A Mac or PC to set up the Pi (in these instructions, I will refer to Mac, but the same can be achieved on PC)
    • A router & ethernet switch

Download

 

Flash the microSD card

  • Insert the microSD card into your computer.
  • Use Raspberry Pi Imager to “flash” (copy) the entire CompanionPi Disk Image to the microSD card.
    • Operating System > Choose OS > scroll to bottom and select “Use custom” > then select the CompanionPi Disk Image you dowloaded previously
    • Storage > Choose Storage > choose the microSD card you inserted
    • Click “Write”
  • Eject the microSD card from your computer and insert it into your Raspberry Pi 4.

Connect the Raspberry Pi to the Network

  • Insert the flashed microSD card into the Pi
  • Connect the Pi to your router/switch via ethernet cable
  • Connect the Stream Deck to the Pi’s USB3 port (blue inner lining)
  • Connect USB-C power to the Pi
    • The first boot-up will take a bit longer, and the Stream Deck screen will flash a few times
    • The Pi has fully booted up when it displays Companion’s blank “Page 1” buttons

A “headless” CompanionPi, without keyboard or monitor.

Configure the Raspberry Pi Settings via Computer

Use the Terminal Application on a computer that is connected to the same router as the Pi.

Log into the Pi:

ssh pi@companionpi.local

(unless changed, the default password is: raspberry)

Find the Raspberry Pi’s IP Address:

ip r

Make a note of this IP address!

Configure the Pi:

sudo raspi-config

This will open up a graphical settings menu, which is easy to navigate with arrow keys and Enter:

Use the command “ip r” to reveal the Raspbery Pi’s IP Address

  • Set a Secure Password
    • 1 System Options
      • S3 Password
        • Change the password for the user “Pi”
          • <set a secure password>
          • (make a note of this password as you will need to use it next time you ssh back into the Pi)
  • Set the Country
    • 5 Localisation Options
      • L1 Locale – set your location
      • L2 Timezone – set your timezone
      • L3 Keyboard – match your keyboard layout (optional)
      • L4 WLAN Country – set legal wireless channels for your country

 

Access Companion’s Web Interface

Now that you have CompanionPi up and running, you will access and build your button layouts via your computer that is connected to the same network as the Pi.

Remember the Raspberry Pi’s IP Address you made note of in the previous step? Open a web browser and type that in, and append the port number “8000”.

For instance, mine was:

192.168.8.232:8000

And that’s it! Enjoy the extensive control of your live productions!

 

Update CompanionPi

If a new version of Companion becomes available, you can update easily, without having to go through flashing the image process.

Open the Terminal Application on your computer and type the following:

ssh pi@companionpi.local   (hopefully you changed the password by now, otherwise the default password is: raspberry)

Once you have logged into the Pi, type the following command to run the update:

sudo companion-update

 

Tips

  • Make sure the Stream Deck is plugged in before you power on the Pi. If the USB connection is disconnected, cycle the Pi’s power to reboot the Pi, since CompanionPi will search for Stream Decks on startup.
  • Add a button to Companion with the variable text $(internal:all_ip) to show all IP addresses available. That way, if you ever move the CompanionPi to a different network (ie between the studio and a location shoot), you will be able to see at a glance what IP address has been assigned to the Pi on the new network, without having to connect a laptop to ssh in to check.
  • Once you have CompanionPi up and running on your network, use Companion Satellite to connect a Stream Deck to any other computer. That way you can maintain a single Companion installation from a distance.
    • For instance, say you have CompanionPi running permanently in a rack. Then you connect your laptop over Wifi, and a Stream Deck to that laptop. Using Companion Satellite, you’ll enter CompanionPi’s IP Address to operate your production remotely (because you like coffee breaks from the outdoor sofa).

Install DJF Companion Profile on a Mac

 

Installation Instructions (on a Mac)

Running Companion is one of those “easy when you know how” things. This article will show you how. Easy!

Companion also runs on Windows and Pi. This article will focus on a Mac installation.

Here’s a consolidated list of software downloads for the 6 Segments we will dive into below:

  1. Companion 2.3.1
  2. Blackmagic Switcher Software 8.10
  3. Stream Deck 5.2.1
  4. VLC 3.0.17.3
  5. VICREO 5.0.1
  6. H2R Graphics 2.10.3

 

** UPDATED OCTOBER 29, 2022 **

1. COMPANION (2.3.1)

Download Companion:

    • The DJF Companion Profiles require running Companion 2.3.1 or later to support the most up-to-date features and modules.

 

Open Companion

    • Companion’s Web Server icon will be in the top-right menu bar. Click it to open the tray.
    • Check the server is running locally on 127.0.0.1 (easiest setup).
    • Set the Port to 8000
    • Launch GUI in a web browser.

Install the DJF Companion Profile

    • Navigate tabs to Buttons > Import/Export.
    • If you already have your own custom Companion setup, click “Export” to save a backup of your profile first!

 

  • Replace Current Configuration (recommended)
    • Select Import. Choose the DJF Companion Profile file (ends with “.companionconfig”)
    • Select “Replace current configuration”.
      • **Note that this will wipe all existing Companion pages, so make sure you’ve backed up any essential work first!

  • Individual page import (not recommended)
    • Note that the DJF Companion Profile pages are heavily inter-connected, hence it is recommended to “replace current configuration”. While you can copy and paste buttons quite easily after the initial “replace current configuration”, importing individual pages will require manually updating the Page-jump actions, plus you must be careful to target the correct instance label of a module when importing.
    • If you still wish to import individual pages, note that there are also several “backend” service pages need to be imported to very specific pages to maintain integrity:

 

        • Backend service pages for v3.1:
          • Extreme………..Pages 55, 56, 57, 58
          • Pro………………Pages 83, 84
          • PTZ……………..Pages 86, 87
        • Backend service pages for v2.5:
          • Pro………………Pages 22, 23

 

    • Once those backend pages have been imported to their specific page numbers, you can import individual pages to any other Companion page.
      • If dealing with a dual profile that contains both ATEM Extreme and ATEM Pro, make sure you target the correct instance (i.e. “ext-atem” and “pro-atem” are completely different implementations of the same ATEM Module).
      • Note that any Menu or Page-jump buttons will need to have their action “Set surface with s/n to…” updated manually.
    • For example, if you wanted to import the Extreme’s VLC page:
      • Import DJF Companion Profile Pages 55, 56, 57, 58 to their respective Pages, 55, 56, 57, 58 in your Companion profile.
      • Import the Extreme VLC (Page 30) to whatever blank page you have available in your configuration.
      • Update the Page-jump button actions (ie VLC Page’s Button #1) to target your configuration layout.

 

Set ATEM Module’s Target IP Address

    • Under the Connections tab, click “Edit” for the “atem Blackmagic Design” module. Update the Target IP to the IP address for your ATEM Mini/Pro/ISO, and for your ATEM Mini Extreme/ISO if running dual systems.
      • **Note: it is recommended to keep the connection labels the way they are (i.e. “ext-atem” and “pro-atem” etc.) Changing the connection label names will update most – but not all – variable names, and will leave some button text (i.e. the BLK button) unable to find the new name.
      • **Note: you can find the ATEM IP using BlackMagic’s “ATEM Setup Software”. Setting a static IP address is recommended.
    • All other modules (VLC, H2R, VICREO, OSC) are pre-set to local 127.0.0.1 and don’t need to be changed.

Set the Home Page

    • Under the Surfaces tab, click the green “Settings” button for the “Elgato Streamdeck Plugin” (or the actual Stream Deck serial number, if running Companion solo).

 

        • Slide the Page number for your specific profile’s HOME PAGE
          • DJF PROFILE v3.1
            • 32-button Extreme…………………..PAGE 1
            • 32-button Pro…………………………PAGE 66
            • PTZ……………………………………..PAGE 88
            • Vertical Pro…………………………….PAGE 96
            • Vertical Extreme……………………..PAGE 98
          • DJF PROFILE v2.5
            • 32-button Pro…………………………PAGE 1
            • 15-button Pro…………………………PAGE 31
            • Vertical Pro…………………………….PAGE 71

Make Changes to Companion’s Settings

    • “Remove the Topbar on all buttons”:
      • Go to Companion > Settings > Navigation Buttons > “Remove the topbar on each button” > SELECT “Enabled”.
      • **Note that the PNGs and text layout on the DJF Companion Profile buttons have been designed for the full 72 x 72px.m The buttons will look squished unless you remove the topbar.
    • “Enable OSC”:
      • Go to Companion > Settings > OSC > SELECT “Enabled”.
      • Set the OSC Listen Port to “12321”.

Troubleshooting:

    • If your Stream Deck is plugged in but the Companion buttons are not showing up, go to Companion’s “Surfaces” tab, and click “Rescan USB”
    • If you’d like to run this without a the actual Stream Deck hardware (i.e. use it on a computer or tablet instead), click on “Emulator” in the top left corner. Locally, the address will be http://127.0.0.1:8000/emulator
    • If there’s a conflict while running Elgato Stream Deck’s native software simultaneously with Companion, quit both applications.
      • Then try opening Elgato’s Stream Deck software first;
      • then starting the Companion server secondly.
        • (Make sure the Companion Plugin within the native Elgato Stream Deck app has been installed – see “Stream Deck” installation instructions below).
Read More

ATEM MINI PRO RIG

Compact, portable, mountable. Fully self-contained power, networking, and monitoring.

Save time and space when you arrive on set with a self-contained ATEM Mini Pro / ISO rig. Don’t bother updating network settings as you move between the office, home, and location with a built-in router. A single V-mount battery or AC adapter powers the whole system and eliminates cable clutter. Mount it on a tripod, or place it on a desk. Save footprint and cable runs by stacking laptops, mixers, cameras, or autocue on to the rig itself.

This ATEM Mini Pro / ISO rig was designed almost entirely using off-the-shelf, universal video production parts. 15-mm rods, rail blocks, NATO clamps, and 1/4-20 cheeseboards makes it highly customizable with existing production production equipment. Plus, when you out-grow your ATEM Mini, there’s no wastage since all these parts can be re-purposed in other kits, such as camera rigging.

 

Read More

Free DJF Companion Switcher Profiles

Welcome!

These downloads are standalone switcher pages. Test out your network configurations and Companion modules (ATEM, VLC, H2R, VICREO) for switching, graphics, video playback, and slide control. Import it into a new or existing Companion configuration to easily add network control of an ATEM switcher.

If you want to extend your capability, check out the full-featured v3.0 profiles for both ATEM Mini Pro and Extreme below.

And please do join the mailing list to keep track of my Companion updates as well as production tutorials!

It’s an awesome portable Switcher page that’s easy to import to any Companion profile! 🙂

Note that the v2.0 DJF Companion Profiles mentioned in my 2021 YouTube Companion tutorial videos have been superseded by these free trials of the Home Page v3.0 (below). The download does not include the native Stream Deck application profiles or the ATEM Macros that are found in the full v3.0 package.




Get Companion release updates!

FREE 1-PAGE SWITCHERS

A MORE POWERFUL
ATEM MINI PRO & EXTREME

The DJF Companion Profiles below are recommended for use with an Elgato Stream Deck XL, Regular, or Mobile app for best user experience.

The layouts also run without Stream Deck by using a web browser on a computer, tablet, or mobile.

FULL-FEATURED DJF COMPANION PROFILES v3.0

SEE ALL PROFILE CONFIGURATIONS

Photography Tutorial: Sunset self-portraits using off-camera fill-flash

Getting creative with random kids in Bali… I found myself alone on the west coast of Bali with time to kill. If you’ve been to the island, you will know that every single sunset is spectacular: vibrant, detailed, textured. I have a camera & an off-camera flash… time to play!

caption

Exposing for the sky at sunset will make your foreground subjects silhouette

Silhouettes are great. Their shapes can be simple and distinct, and allowing your subject to go completely dark to expose for the sunset means the colors will remain rich and saturated. You’ll retain the details in the sky and present a more accurate mood. However, if you want to get the detail of the person in the foreground, you can either create a HDR image with multiple photos, or, use a flash to fill in your shadows.

The light was changing rapidly and a local crowd gathered to watch me muck around with a number of setups. This kid (top) wandered into my frame, so I picked him up to use him as a prop! This photo would be a silhouette if not for the flash, so if you’re interested, here’s how you would accomplish a shot like this:

  1. Set your camera to manual exposure, and place it on a tripod. Make sure you are shooting RAW instead of JPEG so you have maximum latitude in this high contrast setting.
  2. Adjust your ISO, aperture, and shutter speed until you have a correct exposure for the sunset. My settings here happen to be ISO400, f8, 4sec.
  3. I’ve set the focus manually to a spot I marked in the sand, and f8 will keep the image sharp so I have a little latitude to move around.
  4. Place your flash to the left or right of camera to get more shapely shadows. You’ll need a wireless trigger on your camera to trip the off-camera flash. Put your flash in manual mode, and test out how much power output you need to expose the subject.
  5. I have a remote shutter trigger in my right hand on a 2 sec delay. This allowed me time to pick up the kid before the camera fired.
  6. Because the burst of the flash is so instantaneous, the kid and I are sharp even though we’re moving. The black shadow beneath me is the trail of my silhouette over the remaining 4 seconds the shutter was open to expose for the sky – basically me putting the bewildered little guy back on the sand and returning him to his mother.

I’ll write another post soon about how to shoot a similar setup during daylight, as there are some basic principles you can follow to get your settings in the ballpark before fine tuning for the particular environment.

To finish off, here is the actual image I was going for… something I could use on a website to illustrate a photographer in action in a dramatic location (despite that – if you know anything about speedlites – I’m “adjusting” the wrong side of the panel, and, really, you should never look into a firing strobe in the first place….). But it pictoralizes a “behind-the-scenes” nonetheless.

Setting a speedlite to manual power to compensate for an exposure set for the sunset