Commit Graph

64 Commits

Author SHA1 Message Date
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
702f88cea8 requesthandler: Add GetInputAudioTracks 2021-12-31 14:08:22 -08:00
4a2654d095 RequestHandler: Add GetGroupList 2021-12-30 00:12:41 -08:00
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
9113ff9021 RequestHandler: Add audio balance requests 2021-12-29 21:03:16 -08:00
a94ac24027 RequestHandler: Add input open dialog requests
Adds
- `OpenInputPropertiesDialog`
- `OpenInputFiltersDialog`
- `OpenInputInteractDialog`
2021-12-29 21:00:11 -08:00
1f1a8926b1 Requests: Enable RemoveInput 2021-12-29 20:40:14 -08:00
38157579a6 Requests: Enable GetRecordDirectory 2021-12-29 19:53:10 -08:00
e2f60b002e RequestHandler: Reorder Ui requests to new category 2021-12-28 16:58:28 -08:00
07249da400 RequestHandler: More transition requests 2021-12-23 21:00:11 -08:00
14238027cc RequestHandler: More transition requests 2021-12-23 01:07:27 -08:00
e05be47847 RequestHandler: Add GetTransitionKindList 2021-12-22 16:28:12 -08:00
5f261de143 WebSocketApi: Finish implementations 2021-12-14 18:22:52 -08:00
889062e44b RequestHandler: Reorder BroadcastCustomEvent
Code cleanup stuff
2021-12-13 19:20:27 -08:00
fcbe11616d docs: Overhaul documentation (#863)
More docs-related commits will follow, but this needs to be merged in order to continue with other development.

* Docs: Overhaul docs generator (beginning)

* docs: Rename comments file

* docs: Move comments gitignore

* docs: Initial request documentation

* docs: Improvements to comment processing

* docs: More improvements

* docs: Add enum functionality for protocol.json

* WebSocketServer: Document enums

* RequestHandler: Document RequestStatus enum

* Base: Move ObsWebSocketRequestBatchExecutionType to its own file

Moves it to its own file, renaming it to `RequestBatchExecutionType`.
Changes the RPC to use integer values for selecting execution type
instead of strings.

* docs: Update introduction header

Removes the enum section, and documents RequestBatchExecutionType.

* WebSocketCloseCode: Shuffle a bit

* Base: Use `field` instead of `key` or `parameter` in most places

* RequestStatus: Mild shuffle

It was really bothering me that OutputPaused and OutputNotPaused
had to be separated, so we're breaking it while we're breaking
other stuff.

* docs: Delete old files

They may be added back in some form, but for now I'm getting them
out of the way.

* docs: Add enum identifier value

Forgot to add this before, oops

* docs: Document more enums

* docs: Add basic protocol.md generator

* docs: More work on MD generator

* docs: MD generator should be finished now

* docs: More fixes

* docs: More fixes

* docs: More tweaks + add readme

* docs: Update readme and add inputs docs

* docs: More documentation
2021-12-10 21:38:18 -08:00
bd6c663775 Base: Add copyright header to source 2021-11-19 17:32:22 -08:00
4076c0baa9 Requests: Add media input requests 2021-11-17 03:03:14 -08:00
08eb2defbc Requests: Add GetMediaInputState 2021-11-17 01:17:40 -08:00
0671ded7d1 Requests: Add recording requests 2021-11-17 00:30:17 -08:00
9197a48088 Requests: Add SetSceneItemTransform
Yay party
2021-11-12 23:24:39 -08:00
45f7661a5d Requests: Add DuplicateSceneItem 2021-11-12 17:31:11 -08:00
1b25e98dc2 Revert "Requests: Add Compare"
This reverts commit 3687086ce0.

I realized that I'm adding too much too fast, and that we should
focus on getting v5 out first.
2021-10-05 20:17:45 -07:00
3687086ce0 Requests: Add Compare
Non-functional, will have to finish impl later
2021-10-04 17:32:17 -07:00
b91ad0f790 Requests: Add GetSceneItemId
I realized that it was not entirely fair to expect users to fetch a
scene's item list, then search the list on the client in order to find
an item ID, so this is a compromise. This will also help developers
move from the 4.x scene item functionality to 5.x's

Operating on scene items by relying on source name can be dangerous
and in some cases exhibit what would be considered undefinied behavior.
Operating on scene items using IDs is best practice.
2021-09-25 17:21:06 -07:00
eebcc25115 Requests: Add unpublished RemoveInput
The functionality depends on obs-studio#5276 to be merged and released,
so we can add it but not enable it for now.
2021-09-17 02:42:58 -07:00
e89c0c2b05 Base: More code cleanup and fixes 2021-09-04 10:47:51 -07:00
7e1e1bc33c Base: Large plugin refactor
- Merge WebSocketProtocol into WebSocketServer
  - Having them separated was not doing anything productive
- Request: Move SessionPtr to RequestHandler
  - Less copying to do for batch requests
- Fully modularize EventHandler
  - Make BroadcastEvent a stored callback that WebSocketServer sets
- Return early on high volume events to avoid unnecessary compute
  - These events will only generate a json object when it is actually
needed
2021-09-04 10:04:00 -07:00
537595658d Requests: Add GetSceneItemTransform 2021-09-03 15:59:09 -07:00
96dcc49adb Requests: More requests and code cleanup
(plus very slight performance improvement)
2021-09-03 12:52:50 -07:00
333737f400 Requests: Additions and code cleanup 2021-09-02 19:29:13 -07:00
fb0656c31e RequestHandler: Simplify request statuses 2021-09-01 10:30:40 -07:00
4271730dc2 Requests: Add more requests 2021-08-30 13:55:22 -07:00
0547e1f2da Base: Lots of changes 2021-08-27 04:19:42 -07:00
16697fb65e Requests: Add more requests 2021-08-27 02:33:33 -07:00
251e3a28c1 Requests: Reorder some requests 2021-08-26 23:29:55 -07:00
7c5c0f42da Requests: Merge global and profile persistent data requests
The code was largely shared, so it made more sense to just merge the
requests and create realms.
2021-08-26 23:06:23 -07:00
ea713ea808 Requests: Add persistent data requests 2021-08-26 20:32:00 -07:00
d0e05ae45c Requests: Add more requests
- GetStreamServiceSettings
- SetStreamServiceSettings
- CreateInput
- GetStreamStatus
- StartStream
- StopStream
2021-07-22 16:26:04 -07:00
4d271da541 Base: Code cleanup and add some requests 2021-07-22 03:24:53 -07:00
5cf2b50b63 RequestHandler: Add some more requests 2021-06-21 15:31:47 -07:00
ae40c61c2b RequestHandler: Some more requests 2021-06-16 08:19:13 -07:00
d6aeeeea0c RequestHandler: Add SetInputSettings 2021-06-16 04:27:08 -07:00
271db036fe RequestHandler: Add GetInputSettings 2021-06-16 02:41:24 -07:00
1116af128e RequestHandler: Add GetInputDefaultSettings 2021-06-16 02:07:51 -07:00
8ad009ba51 RequestHandler: Move GetInputList logic to Utils 2021-06-16 01:39:04 -07:00
aac06b101e RequestHandler: Add GetInputList 2021-06-16 00:49:07 -07:00
efdea72987 RequestHandler: Add RemoveScene 2021-06-15 23:57:48 -07:00
b95a2e648f RequestHandler: Add more scene requests 2021-06-15 00:21:57 -07:00
c5af073780 RequestHandler: Add more scene requests 2021-06-14 23:42:18 -07:00
cb5ee53956 RequestHandler: Add GetSceneList 2021-06-14 22:52:23 -07:00