an OBS plugin to display the status of an ongoing cd recording as a dock

Noah Vogt 1f1e0b9fb9 update roadmap 3 өдөр өмнө
cmake 2c550969af cmake: Adjust macOS SDK detection 2 сар өмнө
data b75e67843c add data locale template 5 жил өмнө
.clang-format 337dfd4d37 clang-format: Increase column size limit to 120 5 сар өмнө
.gersemirc 5f01841da4 build-aux: Replace cmake-format with gersemi 5 сар өмнө
.gitignore b9d3f97709 first working version: reading from /tmp/cd_status.txt 1 долоо хоног өмнө
CMakeLists.txt 208341c579 bump version 5 өдөр өмнө
CMakePresets.json 5da535ca68 cmake: Update CMake files to current state found on obs-studio 5 сар өмнө
LICENSE b9d3f97709 first working version: reading from /tmp/cd_status.txt 1 долоо хоног өмнө
README.md 1f1e0b9fb9 update roadmap 3 өдөр өмнө
buildspec.json 5da535ca68 cmake: Update CMake files to current state found on obs-studio 5 сар өмнө
cd-rec-status.cpp 420aa140a6 retry websocket connection every 3 seconds w/ animation 5 өдөр өмнө
recording_active.jpg 9d6e8456e2 use colors and custom text for each recording / websocket connection state 1 долоо хоног өмнө

README.md

CD Rec status

An OBS plugin to display the status of an ongoing cd recording as a dock.

The offical obs plugin template was used to create this plugin.

How it works

This plugin listens in on a websocket server on ws://localhost:8765 from which it receives messages like:

{
  "recording": true,
  "cd": 3,
  "track": 7,
  "cd_time": "12:03",
  "track_time": "01:26"
}

An example implemtation of such a websocket can be found here.

It then adds a dock on the obs studio interface titled CD Rec Status that displays the state of the (ongoing) cd recording.

Building

  • checkout the obs studio repository
  • cd UI/frontend-plugins
  • run git clone https://github.com/noahvogt/obs-cd-rec-status.git cd-rec-status
  • add the following line to the CMakeLists.txt file: add_subdirectory(cd-rec-status)
  • follow the offical obs build instructions for your prefered platform

You now have compiled OBS with the plugin. But you probably don't want to rebuild obs after every new release. So just find the cd-rec-status.so file in the build directory and put it into a plugin directory you can point your regular obs installation to. If you are unsure on how to structure the plugin directory, have a look at the releases on this github repository.

Roadmap

Possible changes in future releases:

  • add de locale
  • allow the configuration of hostname + port of the websocket via the obs gui
  • better text styling than just QLabels
  • add github workflow to automatically compile a new release (when needed by a new flatpak platform)