Skip to content

obs-ptz v0.12.0

Choose a tag to compare
@github-actions github-actions released this 06 Nov 09:43
· 140 commits to main since this release

Welcome to the first obs-ptz release that works with OBS Studio v28. The new version
of OBS Studio upgrated from Qt5 to Qt6, which required changing all UI plugins
like this one. Since the build configuration needed to change anyway, I used
the opportunity to pull in all the goodness from the obs-plugintemplate project
which means I'm now able to produce binaries for Windows, MacOS and Linux, as
well as making it easier to update the next time there is a major change to how
plugins are built. Huge thanks to the maintainers of obs-plugintemplate who
have make the lives of plugin authors like me much easier.

There are lots of little changes and tweaks in this release. The UI has been
tidied up and should better match the other OBS docks. There are bug fixes
throughout. The majority of the changes have been on updating the build system,
fixing compiler warnings and errors, and updating to Qt6 and OBS v28.

ONVIF support has appeared in the code base, but it has some problems so
remains disabled for now. I would appreciate some help getting the code
refactored to be non-blocking so that it can be enabled in the next release.
Send me pull requests!

Unfortunately, Gamepad support had to be removed. Qt6 dropped the QGamePad
module, and gamepad support never really worked on Windows anyway, so it has
been removed for now. Hopefully it will return in a future release.

All in all I feel that this release is an improvement on usability and
reliability. I was tempted to make this the first 1.0 release, but there are
enough rough edges still that I don't think it is quite ready.

Full list of changes can be found below. Thank you to both Norihiro Kamae and
Jonata Bolzan Loss for their contributions to this release.

Note: This release binaries require OBS v28 or later. If you are still using
v27, then you'll need to build it yourself, or stay on the
v0.10.4 release for now.

Full change list

Grant Likely (58):

  Remove alpha property from imported property view
  Remove QTToGSWindow() helper from imported source
  Use C++ standard 14
  Add build instructions for Debian 11 Bullseye
  Add documentation of the VISCA protocol
  Disable gamepad on win32
  README: fix incorrect script names
  Move all sources into src/
  Import obs-plugintemplate helper files
  Rename library to obs-ptz
  Rename generated config file to match plugin template
  Update .github/scripts to match template
  Switch entire build configuration to match template
  imported: Update OBSPropertiesView widget
  Annotate unused arguments and remove unused variables
  Stop dereferencing QMap by '+' operator
  Factor out serialport to make it optional
  Remove old gamepad support code
  Disable wayland support in the imported code
  Fix using -1 instead of '0' for clearing selected device
  onvif: Fix uninitialized variables
  Rename local variables to resolve Windows build failures
  Run clang-format on all the source code
  Bump obs-studio version to 28.0.1 for building
  Reformat CMakeLists.txt to pass the cmake format test
  qt-wrapper: Fix windows build by removing thread support
  workaround: suppress hidden class member warnings on Windows
  Add support for linux-aarch64 (Arm) builds
  Fix build warnings in uart code
  Reenable SerialPort support
  Fix layout of properties dialog
  Keep dock hidden at OBS startup
  Default to disabling moves on live camera
  Reimplement toolbar with QToolbar
  Use stock lock/unlock/interact icons
  Fix Dock widget borders
  Reduce spacing between widgets
  Remove incorrect themeIDs
  Copy toolbar action properties into related widgets
  windows: Fix build failure on hidden class members
  Switch to obs-deps fork that provides qtserialport
  Copy QtSerialPort into plugin directory
  Use git tags to set the project version
  CI: add '--tags' flag to git describe
  Fix codesigning and notarization on MacOS
  Fix pan/tilt/zoom on slowest speed setting
  Save camera speed slider in plugin configuration
  Update authors in about dialog

Norihiro Kamae (4):

  Do not send relative-movement when releasing mouse
  Separate VISCA implementation into multiple files
  ptz-visca: Fix memory leak
  visca: Add the slowest zoom speed

Jonata Bolzan Loss (2):

  Fix Windows build Github action
  Prototype ONVIF support


obs-ptz-v0.12.0-linux-x86_64.deb: 08d17b1923ac60729d32d5311779706ae8fdb7f1929f55178849277d458fee3b
obs-ptz-v0.12.0-macos-arm64.pkg: 164f9cc8969cdb5a65e9929b94928f19a994e0b7c64094144c78eaa6b0593593
obs-ptz-v0.12.0-macos-universal.pkg: 385d40cf231e8e3d9493b49178f08b279ac77115c4cee09c017110d37a5a2120
obs-ptz-v0.12.0-macos-x86_64.pkg: d033432e85c37cd5c52f8dcc706992c92ea06721df1230322b2b03432d67b3e8
obs-ptz-v0.12.0-windows-x64-Installer.exe: 43be7b45b20a99a2eaa9cff52ad75b18a228aeddf99511af5899e30de8e43b32 30c0a7480e206ece3607c467b268cb45cabcd564299d4cb6806cac3f2aa8a3c6