Commit Graph

424 Commits

Author SHA1 Message Date
tt2468
c355c72f4b requesthandler, utils: Add search offset to GetSceneItemId
Allows you to select a specific match by offset, or select the
last (top) scene item by specifying `-1`.
2022-04-13 02:01:40 -07:00
tt2468
71a32c981c utils: Reserve vector capacity where possible
Slight optimization for iteration
2022-03-01 14:48:10 -08:00
tt2468
bbf9c283c0 eventhandler: Add SceneTransitionVideoEnded 2022-03-01 14:36:35 -08:00
tt2468
9ac7c5890e eventhandler: Add SceneTransitionEnded 2022-03-01 14:36:35 -08:00
tt2468
a7698a732f eventhandler: Add SceneTransitionStarted + cleanup
This commit cleans up a bunch of code in the event handler,
making it much easier to understand (IMO). I feel much better
about how we handle connecting and disconnecting callbacks. Before,
we were actually allowing a bunch of callbacks to stay connected and
get cleaned up. Now, we actually properly disconnect them.
2022-03-01 14:36:35 -08:00
tt2468
aa13828cf5 requesthandler: Add SetSourceFilterName 2022-02-16 13:37:18 -08:00
tt2468
db2ffa569a Base: Fix some formatting 2022-02-16 13:30:10 -08:00
tt2468
66c14dced5 requesthandler: Reorder a filter request 2022-02-16 13:23:49 -08:00
Brendan Allan
361547a96d
requesthandler: Filter requests & events (#888)
* Implement filter requests

* Fix CreateSourceFilter

* Implement most Filter events

* build against 27.1.3

* Update main.yml

* SourceFilterNameChanged rename

* revert main.yml changes

* rename SourceFilterCreated and revert CI changes

* cleanup

* Base: Various cleanups + fix -Werror

* Base: A few nitpicks/fixes

* requesthandler: Fix CreateSourceFilter

* utils: Fix CreateSourceFilter

Use obs_source_t* instead of OBSSourceAutoRelease to prevent double
release

* requesthandler: Remove filterIndex from CreateSourceFilter

The purpose of sceneItemEnabled in CreateSceneItem is to hide the
scene item while we still hold the scene mutex (guaranteeing the input
will never be shown). Since we don't hold a mutex when creating
filters, there's no reason to do any extra steps.

* requesthandler: Validate input/filter kinds in *DefaultSettings

Co-authored-by: tt2468 <tt2468@gmail.com>
2022-02-16 13:17:06 -08:00
tt2468
7b52d7e015 requesthandler: Move GetRecordDirectory to config
More consistency
2022-02-14 17:11:07 -08:00
tt2468
9664f28483 requesthandler: Finish transition requests 2022-02-14 17:01:44 -08:00
tt2468
d9070f9edb requesthandler: Add scene scene transition override requests
It's named like:
`Get Scene (Scene Transition) Override`
2022-02-14 15:57:33 -08:00
tt2468
fa8a091a3e RequestHandler: Add SendStreamCaption 2022-02-13 15:20:19 -08:00
tt2468
341259e610 RequestHandler: Save config after profile parameter change
Fixes a bug where changed parameters were not applying across loads

Fixes #895
2022-02-13 14:46:49 -08:00
tt2468
c64e360c2d
Merge pull request #904 from dnaka91/fix-int-type
server: Fix int type of batch execution enum
2022-02-13 14:41:45 -08:00
Dominik Nakamura
403c69463a
server: Fix int type of batch execution enum 2022-02-02 10:36:59 +09:00
Dominik Nakamura
ddf752fd03
docs: Fix wrong field name in SceneItemLockStateChanged 2022-01-29 23:50:12 +09:00
tt2468
d2ddde3229 eventhandler: Add a few transition events 2022-01-28 16:56:21 -08:00
tt2468
14227237d7 Base: [BREAKING] Update default WebSocket port to 4455
Our original strategy of relying on clients to simply detect the
protocol version and use the correct one was optimistic at best,
and it has been realized during the transition process from 4.x to 5.x
that sharing 4444 is not practical. As such, we'll be using 4455 in
the future for 5.x.

If you are a client developer, we suggest continuing to maintain
appropriate protocol version detection and support, as the WebSocket
port is at the end of the day simply a suggestion.
2022-01-28 15:38:08 -08:00
tt2468
3e2984fd7a eventhandler: Add SceneItemSelected event
So I didn't think anyone actually used this, but I was wrong. So I'm
adding it again.
2022-01-28 15:33:28 -08:00
tt2468
38d78596ce requesthandler: Add replay buffer requests 2022-01-26 21:19:10 -08:00
tt2468
13c7b83c34 requesthandler: Fix compiler warnings with latest OBS master
OBS has deprecated the `_addref` functions, so the new norm is to use
`_get_ref`.
2022-01-26 17:40:45 -08:00
tt2468
ae906bb283 RequestHandler: Add VirtualCam requests 2022-01-18 19:23:06 -08:00
tt2468
873eadec05
requesthandler: Fix documentation of dB value input
Max dB value is 26dB, not -26dB.
2022-01-08 22:13:53 -08:00
tt2468
dea0fcd561 Base: Add logging for compile time ASIO version 2022-01-07 23:00:48 -08:00
tt2468
6035294339 requesthandler: Add GetSourceFilter 2022-01-03 13:54:27 -08:00
tt2468
6a2d5968ad requesthandler: Add private source settings get/set requests
It was requested via Discord to be able to modify the private settings
of any private source, since that functionality is used by some client
software to store stateful data. As private settings are in territory
that no normal user should ever tread into, these requests will be left
undocumented.
2022-01-01 17:43:26 -08:00
tt2468
fe64620731 requesthandler: Add scene item blend mode requests 2021-12-31 18:05:05 -08:00
tt2468
24e43d0276 requesthandler: Add GetSpecialInputs 2021-12-31 16:49:18 -08:00
tt2468
506a9167c3 requesthandler: Add SetInputAudioTracks 2021-12-31 15:26:54 -08:00
tt2468
35c8a87def requesthandler: Profile requests if PLUGIN_TESTS is enabled 2021-12-31 15:26:54 -08:00
tt2468
e451a8d6b0 requesthandler: Use unordered_map for request table
Shaves like 0.0005ms off of request time, but still worth noting.
2021-12-31 15:26:54 -08:00
tt2468
702f88cea8 requesthandler: Add GetInputAudioTracks 2021-12-31 14:08:22 -08:00
tt2468
6d216e0412 docs: Fix docs of InputAudioTracksChanged 2021-12-31 14:08:22 -08:00
tt2468
e43ebde794 Base: Use static_cast in place of reinterpret_cast
static_cast is a much safer cast method
2021-12-30 00:21:29 -08:00
tt2468
4a2654d095 RequestHandler: Add GetGroupList 2021-12-30 00:12:41 -08:00
tt2468
a90dafb971
Merge pull request #885 from obsproject/feature/input-audio-requests-events
Input audio requests and events
2021-12-29 21:12:23 -08:00
tt2468
12c6527442
Merge pull request #884 from obsproject/feature/ui-dialog-requests
RequestHandler: Add input open dialog requests
2021-12-29 21:08:41 -08:00
tt2468
31997db509 EventHandler: Uncomment audio_monitoring signal 2021-12-29 21:05:28 -08:00
tt2468
9113ff9021 RequestHandler: Add audio balance requests 2021-12-29 21:03:16 -08:00
tt2468
1ed095de48 EventHandler: Add InputAudioBalanceChanged 2021-12-29 21:03:16 -08:00
tt2468
a94ac24027 RequestHandler: Add input open dialog requests
Adds
- `OpenInputPropertiesDialog`
- `OpenInputFiltersDialog`
- `OpenInputInteractDialog`
2021-12-29 21:00:11 -08:00
tt2468
903b7d4171
Merge pull request #860 from obsproject/fix/audio_monitoring_check
Requests: Add support check for monitoring in `SetInputAudioMonitoringType`
2021-12-29 20:59:38 -08:00
tt2468
a59ce69ba1
Merge pull request #857 from obsproject/fix/remove-old-ifdefs
Base: Remove old ifdefs
2021-12-29 20:54:24 -08:00
tt2468
195c4a3ca9
Merge pull request #873 from obsproject/fix/inputvolumemeters-check
ObsVolumeMeter: Reenable check for valid input
2021-12-29 20:54:00 -08:00
tt2468
3b2369ae97 Requests: Add support check for SetInputAudioMonitorType 2021-12-29 20:50:27 -08:00
tt2468
af634b63fd
Merge pull request #854 from obsproject/request/removeinput
Requests: Enable RemoveInput
2021-12-29 20:49:09 -08:00
tt2468
444685c89d Utils: Reenable check for valid input in volumemeter 2021-12-29 20:45:20 -08:00
tt2468
05aba45809 Base: Remove old ifdefs
It was a very cool method to save our precious std::strtoll method,
but will no longer be needed on the next OBS release.
2021-12-29 20:40:49 -08:00
tt2468
1f1a8926b1 Requests: Enable RemoveInput 2021-12-29 20:40:14 -08:00