28 Commits

Author SHA1 Message Date
tt2468
a898bacd79 Utils: Rename VolumeMeter utils for consistency 2021-12-21 03:09:45 -08:00
tt2468
d48ddef031 EventHandler: Implement InputVolumeMeters
This is probably one of the most requested features for obs-websocket.
This currently works by firing an event to all explicit subscribers
with an array of all active audio sources every **60 milliseconds.**

The `inputLevelsMul` field follows this data format:

Base: [Channel, Channel]
Channel: [magnitude (mul), peak (mul), input_peak (mul)]

           *Not Muted*         *Muted*
Example: [[0.3, 0.5, 0.9], [0.0, 0.0, 0.0]]

(input_peak is the actual peak value, before volume adjustment.)

You may notice that the values are only in mul. This is because we are
trying to cut down on bandwidth. dB values can be calculated using this
formula:

`dB = 20.0 * log10(mul)`
2021-11-22 03:37:56 -08:00
tt2468
bd6c663775 Base: Add copyright header to source 2021-11-19 17:32:22 -08:00
tt2468
78d02696d0 Utils: Add retrocompatability header
QRunnable::create was added in Qt 5.15, but Ubuntu still uses 5.12.
This reimplements that functionality until Ubuntu moves to >= 5.15
2021-09-24 18:10:17 -07:00
tt2468
43a889c1d4 Utils: Refactor into dedicated components 2021-08-26 19:00:48 -07:00
tt2468
306844e42d Utils: Add helper to get current profile file path 2021-08-26 18:41:53 -07:00
tt2468
7081824bbe Utils: Add includeDisabled in GetInputKindList 2021-07-22 17:38:32 -07:00
tt2468
d0e05ae45c Requests: Add more requests
- GetStreamServiceSettings
- SetStreamServiceSettings
- CreateInput
- GetStreamStatus
- StartStream
- StopStream
2021-07-22 16:26:04 -07:00
tt2468
4d271da541 Base: Code cleanup and add some requests 2021-07-22 03:24:53 -07:00
tt2468
584be06398 Utils: Add CreateSceneItem and CreateInput 2021-06-21 15:26:59 -07:00
tt2468
8ad009ba51 RequestHandler: Move GetInputList logic to Utils 2021-06-16 01:39:04 -07:00
tt2468
4d77927ceb Utils: Add Obs::ListHelper::GetInputKindList() 2021-06-16 01:31:36 -07:00
tt2468
0de3f304f0 Utils: Add platform util to send tray notification 2021-06-13 03:17:11 -07:00
tt2468
10afbdfca0 Utils: Add scene item list helper 2021-06-13 02:10:04 -07:00
tt2468
4503b6ed05 Utils: Add string helper to get last replay 2021-06-12 20:34:08 -07:00
tt2468
e15acf9065 Utils: Add helpers to get some current data 2021-06-07 01:12:01 -07:00
tt2468
2c018ca174 RequestHandler: Add some requests from the General category 2021-06-06 05:06:17 -07:00
tt2468
f0c3bb2c14 Config: Don't persist debug mode to config
A request from the OBS developers. Debug mode tends to be enabled,
then not remembered to be disabled, leading to logs that are both
long and difficult to read. In some cases, the OBS logviewer may
noticeably lock up the UI just trying to parse the long log file.
2021-06-05 22:19:39 -07:00
tt2468
9077ac911d EventHandler: Add some transition stuff
Transitions in OBS are implemented badly.
Not sure what will reasonably be possible with them.
I'll probably save implementing them for last
2021-05-14 03:59:00 -07:00
tt2468
c8eac893f2 Utils: Add more OBS utils 2021-05-14 01:13:09 -07:00
tt2468
23b6ce607c Utils: Add some Obs helpers 2021-05-10 18:25:15 -07:00
tt2468
ee751edf54 SettingsDialog: Mild refactor and add Connect Info dialog
Among lots of stuff:

- Generate a random password on first load

- Add `ConnectInfo` dialog including QR code display

- Add `Generate Password` button to generate a new random
password

- Delete `Copy Password to Clipboard` button

- Delete `GetConnectString` or whatever from WebSocketServer
(reimplemented the functionality directly into ConnectInfo)

- Added `GeneratePassword()` to Utils

Todo: Show warning when users specify their own passwords
2021-05-08 04:29:03 -07:00
tt2468
600505b60a Utils: Add Obs utils namespace 2021-05-08 00:54:35 -07:00
tt2468
c73f6608b9 Config: Add command line parameters to override port and password 2021-04-28 15:59:29 -07:00
tt2468
1dcf6460f1 Utils: Add Platform helpers 2021-04-28 14:24:05 -07:00
tt2468
948750da6a WebSocketServer: Start and stop 2021-04-28 10:27:32 -07:00
tt2468
98bc18cedd utils: Create Utils namespace and add Crypto utils 2021-04-27 17:55:23 -07:00
tt2468
d9ee288cf1 base: cmake is fucking retarded 2021-04-27 16:33:47 -07:00