Commit Graph

101 Commits

Author SHA1 Message Date
tytan652
c8cf2d94ac cmake,lib,base: Export obs-websocket-api as a target
This enables the installation of the header in the include directory
2024-03-30 17:04:37 -07:00
Lain
d5077fca03 base: Update to version 5.4.2
Bug Fixes:
- Fixes version update to use both legacy and main CMake files
2024-02-21 11:21:17 -06:00
tt2468
b61a5c2431 base: Update version to 5.4.0
New Features:
- Added `GetSourceFilterKindList` request
- Added `GetSceneItemSource` request
- Added `InputSettingsChanged` event
- Added `SourceFilterSettingsChanged` event
- Added UUID support to Sources (Inputs/Scenes), Inputs, Scenes,
Transitions
  - The `Source` requests/events use `sourceUuid`
  - The `Input` requests/events use `inputUuid`
  - The `Scene` requests/events use `sceneUuid`
  - The `Transition` requests/events use `transitionUuid`
  - Filters do not have support for UUIDs at this time.

Enhancements:
- Added `contextName` field to `TriggerHotkeyByName` (exeldro)

Bug Fixes:
- Fixed a crash on shutdown with notifications enabled (r1ch)
- Added safety check to prevent `null` `outputCongestion` values in
`GetStreamStatus`
- Fixed a memory leak when switching service kinds via
`SetStreamServiceSettings`

Other Notes:
- Documented missing `outputActive` `ToggleRecord` response field
- Added a few new client softwares to the README list
- Removed a mis-documented `imageData` field
- Added a note to the hotkey requests that they are as-is and we
will not provide support for them
2024-01-24 15:51:27 -08:00
Ryan Foster
7a1c71bb96 base: Update version to 5.3.5
- CMake update, no functional changes
2023-12-22 16:38:27 -05:00
PatTheMav
cf285b3761 cmake: Update formatting and switch to native find_package call for Qt6 2023-12-20 15:09:11 -05:00
Ryan Foster
e8089a5bbf base: Update version to 5.3.4
- eventhandler: Disconnect signals from all public sources on shutdown
- websocketserver: Check for EventHandler validity in de/constructor
2023-12-05 14:15:04 -05:00
Ryan Foster
4ff109b62b base: Update version to 5.3.3
- Update translations and docs
2023-10-16 10:42:15 -04:00
Ryan Foster
08767ae5a7 base: Update version to 5.3.2
- Fix plugin tests being enabled by default
2023-10-09 16:34:30 -04:00
Ryan Foster
16bf61aab6 cmake: Fix condition to disable plugin tests
The CMake generator expression to enable plugin tests mistakenly used a
string literal, which evaluated to 1, which enabled the plugin tests by
default. Use variable notation to correctly test this value.
2023-10-02 14:37:04 -07:00
Ryan Foster
e9c0eee9e4 base: Update version to 5.3.1
- Fix issues with qrcodegencpp CMake preventing Debug builds
2023-09-19 13:21:47 -04:00
Ryan Foster
2bfa1b4c64 cmake: Ignore LNK4099 warning
Despite building the PDBs for qrcodegencpp debug builds, we do not
currently ship those PDBs, so MSVC emits an LNK4099 warning, which
causes a build failure. It's unlikely that we'll need to debug in linked
dependencies, so we can ignore this warning. Should we decide in the
future to ship PDBs for these dependencies, the warning would no longer
be emitted, and this flag would be superfluous without requiring a
change. For now, let's make sure we can build in Debug.
2023-09-19 10:52:15 -04:00
PatTheMav
0e611f579b cmake: Update library and target names for qrcodegen
qrcodegen is identified as such (without the "lib" prefix) and as the
target "qrcodegencpp::qrcodegencpp" by the CMake package generated by
obs-deps.
2023-09-18 12:50:40 -04:00
Ryan Foster
ec2cdc8475 base: Update version to 5.3.0
- Various minor build process cleanups
- Various code cleanups
- requesthandler: Added NotReady request status
- base: Pause requests and events during start, SC change, and shutdown
- eventhandler: Use OBS_FRONTEND_EVENT_SCRIPTING_SHUTDOWN for exit
- requesthandler: Added SetRecordDirectory
- websocketserver: Retry listen on IPv4 if IPv6 is not available
2023-09-05 14:31:41 -04:00
tytan652
417725801c base,deps,src: Replace qr submodule by prefix/system install 2023-07-15 16:58:18 -07:00
tt2468
886738547a websocketserver: Clean up WebSocketSession class implementation
Makes it header-only with inlines, so there's theoretically some very
small performance improvements too.
2023-05-27 21:50:55 -07:00
PatTheMav
f7637250f1 cmake: Silences Qt warnings emitted by clang with default Xcode settings 2023-05-09 15:01:45 -07:00
Ryan Foster
6ef055a369 base: Update version to 5.2.2
- Various minor build process cleanups
2023-04-04 15:13:15 -04:00
tytan652
a4ee9c03ea base: Remove unneeded include directories
Asio and WebSocket++ are no longer added as submodules.
They are now included in obs-deps.
2023-04-04 12:15:33 -04:00
tytan652
21886adb32 base: Fix generated header inclusion 2023-03-27 12:59:23 -04:00
Ryan Foster
7ca8d5fc2b base: Update version to 5.2.0
- Fixed a crash caused if `authentication` payload field was not a
string
- Allow empty vendor request data
- Minor documentation fixes
- Replace submodules with obs-deps or system versions where possible
  - asio
  - websocketpp
  - nlohmann/json
- Refactor CMake to allow uplift to new obs-studio CMake
2023-03-26 19:30:00 -04:00
Ryan Foster
db2c251189 base: Re-add version CMake variables
Make sure that non-legacy builds have these version variables populated.
2023-03-26 19:09:51 -04:00
PatTheMav
dd248faecb cmake: Add changes for CMake build framework 3.0
New code path only taken if OBS_CMAKE_VERSION is set to 3.0.0 or
greater, old functionality remains unchanged.
2023-03-26 18:21:05 -04:00
tytan652
68d79b22af base: Disable Qt RCC timestamps only on Windows 2023-03-24 12:29:19 -04:00
derrod
b06da5fa63 base: Disable Qt RCC timestamps 2023-03-23 18:20:34 -04:00
tytan652
78a1b54a47 base,deps: Replace submodules by prefix/system install
nlohmann JSON, WebSocket++ and Asio are moved from sudmodules to
prefix (obs-deps) or system-wide install (Linux).
2023-03-23 17:37:51 -04:00
tytan652
bf277011f9 base: Refactor CMake Qt properties
- Allow obs-deps to be used by not changing CMAKE_PREFIX_PATH.
- Move Qt AUTO properties to the target.
2023-03-23 17:37:51 -04:00
tt2468
31f9845b61 base: Update version to 5.1.0
- Renamed the tools menu button title to `WebSocket Server Settings`
- WebSocket session disconnects are now logged with the close code and
reason
- Fixed a few UI formatting issues
- Fixed the `ObsOutputState` enum not being shown in protocol.md
- Implemented new reconnect output states to the stream output
  - `OBS_WEBSOCKET_OUTPUT_RECONNECTING`
  - `OBS_WEBSOCKET_OUTPUT_RECONNECTED`
- Added the `ScreenshotSaved` event for the screenshot hotkey
- Fixed a bug where `GetLastReplayBufferFileName` could return an empty
string
- Documented `CustomEvent`
- Various other documentation fixes
- Added the following new software and libraries to the README:
  - Macro Deck
  - Bitfocus Companion
  - Kruiz Control
  - Aitum
  - OBS Blade
  - Deckboard
  - Streamer.bot
  - OBS-web
  - obws (Rust)
  - goobs
  - obsws-python
2022-11-18 02:29:10 -08:00
tytan652
0ff90d1687 base: Update non-MSVC compile options 2022-08-24 01:44:14 -07:00
tytan652
c0ba751aaf base: Clean up find_qt macro 2022-07-30 16:31:24 -07:00
tytan652
eba6c4c6f3 base: Add ENABLE_WEBSOCKET CMake option 2022-07-30 16:31:24 -07:00
tytan652
59e7e3a307 base: Add checks for submodules in CMake 2022-07-30 16:31:24 -07:00
tytan652
8bf8995ad8 base: Suppress C4996 warning 2022-07-28 12:15:38 -07:00
tytan652
2b8dd47a6c Revert "base: Set the correct Windows preprocessor var for asio"
This reverts commit 420e600864.
2022-07-28 12:15:38 -07:00
tt2468
268a45e8dd base: Format CMakeLists.txt (again) 2022-07-28 11:46:32 -07:00
tytan652
e52d5402cf base: Add and use find_qt to support Qt5 and Qt6 2022-07-28 11:40:27 -07:00
tytan652
0db223b148 base: Suppress deps warnings
/wd4267 is required by websocketpp
-Wno-error=format-overflow is required by asio

-Wno-error=null-pointer-subtraction is required by json on macOS

-Wno-error=deprecated-declarations is required on macOS because Xcode 14
deprecates sprintf()
2022-07-28 11:40:27 -07:00
tytan652
420e600864 base: Set the correct Windows preprocessor var for asio
Fix C4996 warning

Co-authored-by: PatTheMav <PatTheMav@users.noreply.github.com>
2022-07-28 11:40:27 -07:00
tt2468
1902d7e1a3 base: Update version to 5.0.1 2022-07-25 08:30:34 -07:00
tt2468
de40b53d77 base: Format CMakeLists.txt using OBS formatter 2022-07-25 07:48:06 -07:00
tt2468
22fee0312d utils: Move from explicit enum converters to nlohmann macros 2022-06-08 00:33:41 -07:00
tt2468
7b238793d0 cmakelists: Various fixes 2022-05-13 20:40:01 -07:00
tt2468
7a09f38a64 base: Remove actions building and refactor CMake for submodule 2022-05-13 20:23:03 -07:00
tt2468
ae906bb283 RequestHandler: Add VirtualCam requests 2022-01-18 19:23:06 -08:00
tt2468
732d5af50c EventHandler: Add Ui category 2021-12-29 00:34:25 -08:00
tt2468
86506778ad RequestHandler: Add Ui category
Creates a new category specific to requests controlling the OBS UI.
2021-12-28 16:58:28 -08:00
tt2468
ad347c4823 RequestHandler: Add files for Transitions and Filters 2021-12-22 15:57:57 -08:00
tt2468
a898bacd79 Utils: Rename VolumeMeter utils for consistency 2021-12-21 03:09:45 -08:00
tt2468
1e6a60f545 Utils: Rename ListHelper to ArrayHelper 2021-12-21 01:32:12 -08:00
tt2468
5cd1af426a Utils: Rename DataHelper to ObjectHelper 2021-12-21 01:32:12 -08:00
tt2468
f66080a031 Utils: Split Obs utils into individual files 2021-12-21 01:32:12 -08:00