I wanted to control OBS with my Elgato StreamDeck on Linux without losing window focus. CompanionPi and obs-websocket to the rescue!
Software
CompanionPi
obs-websocket
OBS
Hardware
Raspberry Pi 4
Elgato Stream Deck
uni SD Card Reader
1. Download and install OBS Websockets.
sudo dpkg -i obs-websocket_4.9.0-1_amd64.deb
2. Download and write the CompanionPi image to a blank SD card.
3. Connect the Stream Deck to the Raspberry Pi and boot the CompanionPi image.
4. Configure obs-websocket for the machine running OBS.
5. Using a web browser navigate to the IP address of your Raspberry Pi. e.g. 192.168.88.60:8000
6. Add the OBS Studio connection.
7. Configure the OBS connection.
Aftermath:
I’ve been using this system for a few weeks without so much as a hiccup. I strongly recommend a wired connection between the Raspberry Pi and the PC running OBS. You can probably get away with running CompanionPi on a Raspberry Pi 3 Model B but the Raspberry Pi Zero isn’t up to the task. Keep in mind that you can run Bitfocus Companion on the same PC as OBS.
Software
CompanionPi
obs-websocket
OBS
Hardware
Raspberry Pi 4
Elgato Stream Deck
uni SD Card Reader