@overwolf/ow-electron-packages-types 0.2.0-beta.4 → 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/game-list.d.ts +3253 -2
- package/package.json +1 -1
- package/types.d.ts +4229 -1179
- package/docs/gep/game-events-provider.md +0 -0
- package/docs/overlay/overlay.md +0 -0
- package/docs/packages.md +0 -23
- package/docs/recorder/api-specification.md +0 -95
- package/docs/recorder/recorder.md +0 -397
- package/docs/recorder/types.md +0 -344
package/docs/recorder/types.md
DELETED
|
@@ -1,344 +0,0 @@
|
|
|
1
|
-
# ow-electron types Documentation
|
|
2
|
-
|
|
3
|
-
### CaptureSettingsOptions
|
|
4
|
-
- `videoEncoder?: kSupportedEncodersTypes` [kSupportedEncodersTypes](#ksupportedencoderstypes) - encoder type to create capture setting. use `Default` for the best default encoder detected (GPU -> x264)
|
|
5
|
-
- `audioEncoder?: kKnownAudioEncodersTypes` [kKnownAudioEncodersTypes](#kknownaudioencoderstypes) - Default is `ffmpeg_aac` (FFmpeg AAC) use queryInformation().encoders.audio for supported encoders
|
|
6
|
-
- `separateAudioTracks?: boolean` - When using the default audio sources, the Input and the Output audio sources, will use dedicate tracks (2, 3) as well as track number 1 will include both
|
|
7
|
-
- `includeDefaultAudioSources?: boolean` - Add Default input & output Audio Devices
|
|
8
|
-
|
|
9
|
-
### CaptureSettings
|
|
10
|
-
- The capture settings object is responsible of holding all of the options & configurations
|
|
11
|
-
required to start capture or replays, it contains the capture sources (video / audio) and the specific configurations related to them. as well as general recording options.
|
|
12
|
-
- Capture settings object is created using the `CaptureSettingsBuilder.build()` method
|
|
13
|
-
- The object is used as an argument to the `startRecording` & `startReplays` [methods](api-specification.md#methods)
|
|
14
|
-
Components:
|
|
15
|
-
- `videoSettings: VideoSettings` - [Video Settings](#videosettings)
|
|
16
|
-
- `audioSettings: AudioSettings` - [Audio Settings](#audiosettings)
|
|
17
|
-
- `videoEncoderSettings: VideoEncoderSettingsBase` - [Video Encoder Settings](#videoencodersettingsbase)
|
|
18
|
-
- `audioEncoder: AudioEncoderInfo` - [Audio Encoder Info](#audioencoderinfo)
|
|
19
|
-
- `sources: CaptureSource[]` - [Capture source](#capturesource)
|
|
20
|
-
|
|
21
|
-
### CaptureSettingsBuilder
|
|
22
|
-
`extends CaptureSettings` The capture settings builder, is responsible of exposing
|
|
23
|
-
methods for preparing the `CaptureSettings` object, It allows the addition of capture sources, whether its a display / audio device or a game, as well as changing audio / video properties.
|
|
24
|
-
Once the settings are ready to be applied, use the `build()` method to create the `CaptureSettings` object
|
|
25
|
-
- `addScreenSource(settings)` - Add Screen video capture source
|
|
26
|
-
- param - [MonitorCaptureSourceSettings](#monitorcapturesourcesettings)
|
|
27
|
-
- `addGameSource(settings)` - Add A Game video capture source
|
|
28
|
-
- param - [GameCaptureSourceSettings](#gamecapturesourcesettings)
|
|
29
|
-
- `addAudioCapture(params, settings)` - Add an Audio device to capture (Mic, Speakers, etc)
|
|
30
|
-
- param - [AudioDeviceParams](#audiodeviceparams)
|
|
31
|
-
- param - [AudioDeviceSettings](#audiodevicesettings)
|
|
32
|
-
- `addAudioDefaultCapture(type, params, settings)` - Adds Default device (Input or Output) if not already added
|
|
33
|
-
- param - type `'input' | 'output'`
|
|
34
|
-
- param - [DefaultAudioDeviceParams](#defaultaudiodeviceparams)
|
|
35
|
-
- param - [AudioDeviceSettings](#audiodevicesettings)
|
|
36
|
-
- `addApplicationAudioCapture(params, settings)` - Add an Audio device to capture (Mic, Speakers, etc)
|
|
37
|
-
- param - [ApplicationAudioCaptureParams](#applicationaudiocaptureparams)
|
|
38
|
-
- param - [AudioDeviceSettings](#audiodevicesettings)
|
|
39
|
-
- `build()` - Returns the CaptureSettings object, with all of the specific properties of the devices added using the methods above.
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
### RecordEventArgs
|
|
43
|
-
- `filePath?: string | undefined` - Recording output file path
|
|
44
|
-
- `error?: string` - Error message (optional)
|
|
45
|
-
- `reason?: ErrorCode | number` - Error code (optional)
|
|
46
|
-
- `stats?: RecorderStats` - [Recording stats](#recorderstats)
|
|
47
|
-
|
|
48
|
-
### RecordStopEventArgs
|
|
49
|
-
*(extends RecordEventArgs)
|
|
50
|
-
- `duration?: number` - Video duration in milliseconds when recording ended successfully
|
|
51
|
-
- `hasError: boolean`
|
|
52
|
-
- `splitCount?: number` - number of splits (if had any)
|
|
53
|
-
- `startTimeEpoch?: number`- Video start time (Epoch)
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
### SplitRecordArgs
|
|
57
|
-
*(extends RecordEventArgs)
|
|
58
|
-
- `duration?: number` - Video duration in milliseconds when recording ended successfully
|
|
59
|
-
- `startTimeEpoch?: number`- Video start time (Epoch)
|
|
60
|
-
- `splitCount?: number` - number of splits (if had any)
|
|
61
|
-
- `nextFilePath: string` - Next video file path
|
|
62
|
-
|
|
63
|
-
### ReplayVideo
|
|
64
|
-
*(extends RecordEventArgs)
|
|
65
|
-
- `duration?: number` - Video duration in milliseconds when recording ended successfully
|
|
66
|
-
- `startTimeEpoch?: number`- Video start time (Epoch)
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
### RecorderStats
|
|
70
|
-
- `cpuUsage: number` - Current CPU usage in percent
|
|
71
|
-
- `memoryUsage: number` - Amount of memory in MB currently being used by Recorder
|
|
72
|
-
- `availableDiskSpace: number` - Available disk space on the device being used for recording storage
|
|
73
|
-
- `activeFps: number` - Current FPS being rendered
|
|
74
|
-
- `averageFrameRenderTime: number` - Average time in milliseconds that Recorder is taking to render a frame
|
|
75
|
-
- `renderSkippedFrames: number` - Number of frames skipped by Recorder in the render thread
|
|
76
|
-
- `renderTotalFrames: number` - Total number of frames outputted by the render thread
|
|
77
|
-
- `outputSkippedFrames: number` - Number of frames skipped by Recorder in the output thread
|
|
78
|
-
- `outputTotalFrames: number` - Total number of frames outputted by the output thread
|
|
79
|
-
|
|
80
|
-
### RecordingAppOptions
|
|
81
|
-
- `statsInterval?: number` - note: set 0 to disable stats emit
|
|
82
|
-
- `overrideOBSFolder?: string` - Override OBS binaries
|
|
83
|
-
- `customCommandLineArgs?: string[]` - Custom command lines when launching recorder
|
|
84
|
-
- `enableDebugLogs?: boolean` - Enable recorder debug logs
|
|
85
|
-
- `showDebugWindow?: boolean` - Show Recorder capture window
|
|
86
|
-
|
|
87
|
-
### RecordingInformation
|
|
88
|
-
- `audio: AudioInformation` - [Audio Information](#audioinformation)
|
|
89
|
-
- `video: VideoInformation` - [Video Information](#videoinformation)
|
|
90
|
-
- `monitors: MonitorInfo[]` - [Monitor Info](#monitorinfo)
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
### AudioInformation
|
|
94
|
-
- `inputDevices: AudioDevice[]` - [Audio Device](#audiodevice)
|
|
95
|
-
- `outputDevices: AudioDevice[]`
|
|
96
|
-
- `encoders: AudioEncoderInfo[]` - [Audio Encoder Info](#audioencoderinfo)
|
|
97
|
-
|
|
98
|
-
### VideoInformation
|
|
99
|
-
- encoders: VideoEncoderInfo[] - [Video Encoder Info](#videoencoderinfo)
|
|
100
|
-
- adapters: AdapterInfo[] - [Adapter Info](#adapterinfo)
|
|
101
|
-
|
|
102
|
-
### MonitorInfo
|
|
103
|
-
- `adapterIndex: number`
|
|
104
|
-
- `id: string`
|
|
105
|
-
- `altId: string`
|
|
106
|
-
- `dpi: number`
|
|
107
|
-
- `attachedToDesktop: boolean`
|
|
108
|
-
- `friendlyName: string`
|
|
109
|
-
- `refreshRate: number`
|
|
110
|
-
- `rect: Rect`
|
|
111
|
-
- `isPrimary: boolean`
|
|
112
|
-
- `displayIndex: number`
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
### VideoEncoderInfo
|
|
116
|
-
- `type: kSupportedEncodersTypes` - [kSupportedEncodersTypes](#ksupportedencoderstypes)
|
|
117
|
-
- `properties` - Each supported encoder returns different associated properties
|
|
118
|
-
- `ffmpeg_aom_av1 & ffmpeg_svt_av1 will provide EncoderSettingsAMFAV1`
|
|
119
|
-
- `jim_hevc_nvenc - will provide EncoderSettingsNVENCHEVC`
|
|
120
|
-
- `obs_qsv11_hevc & obs_qsv11_v2 - will provide EncoderSettingsQuickSyncHEVC`
|
|
121
|
-
- `obs_x264 - will provide EncoderSettingsX264`
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
### kSupportedEncodersTypes
|
|
125
|
-
jim_* are deprecated since obs 0.31.0. instead we use obs_nvenc_* encoders
|
|
126
|
-
```
|
|
127
|
-
ffmpeg_svt_av1
|
|
128
|
-
ffmpeg_aom_av1
|
|
129
|
-
obs_x264
|
|
130
|
-
h264_texture_amf
|
|
131
|
-
h265_texture_amf
|
|
132
|
-
av1_texture_amf
|
|
133
|
-
obs_qsv11_v2
|
|
134
|
-
obs_qsv11_hevc
|
|
135
|
-
obs_qsv11_av1
|
|
136
|
-
obs_nvenc_h264_tex
|
|
137
|
-
obs_nvenc_hevc_tex
|
|
138
|
-
obs_nvenc_av1_tex
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
### AdapterInfo
|
|
142
|
-
- `index: 0`
|
|
143
|
-
- `name: string`
|
|
144
|
-
- `driver: string`
|
|
145
|
-
- `hagsEnabled: boolean`
|
|
146
|
-
- `hagsEnabledByDefault: boolean`
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
### AudioDevice
|
|
150
|
-
- `type: AudioDeviceType`
|
|
151
|
-
- `id: string`
|
|
152
|
-
- `name: string`
|
|
153
|
-
- `isDefault: boolean`
|
|
154
|
-
|
|
155
|
-
#### AudioEncoderInfo
|
|
156
|
-
- `type: kKnownAudioEncodersTypes` - [kKnownAudioEncodersTypes](#kknownaudioencoderstypes)
|
|
157
|
-
- `codec: string`
|
|
158
|
-
- `name: string`
|
|
159
|
-
|
|
160
|
-
### kKnownAudioEncodersTypes
|
|
161
|
-
```
|
|
162
|
-
'ffmpeg_aac' |
|
|
163
|
-
'ffmpeg_opus' |
|
|
164
|
-
'ffmpeg_pcm_s16le' |
|
|
165
|
-
'ffmpeg_pcm_s24le' |
|
|
166
|
-
'ffmpeg_pcm_f32le' |
|
|
167
|
-
'ffmpeg_alac' |
|
|
168
|
-
'ffmpeg_flac' |
|
|
169
|
-
'string'
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
### kVideoColorFormat
|
|
173
|
-
```
|
|
174
|
-
'NV12' |
|
|
175
|
-
'I420' |
|
|
176
|
-
'I444' |
|
|
177
|
-
'P010' |
|
|
178
|
-
'I010' |
|
|
179
|
-
'P216' |
|
|
180
|
-
'P416' |
|
|
181
|
-
'BGRA;
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
### kVideoColorRange
|
|
185
|
-
```'Partial' | 'Full'```
|
|
186
|
-
|
|
187
|
-
### kVideoColorSpec
|
|
188
|
-
```
|
|
189
|
-
'sRGB' |
|
|
190
|
-
'709' |
|
|
191
|
-
'601' |
|
|
192
|
-
'2100PQ' |
|
|
193
|
-
'2100HLG'
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
### VideoEncoderSettingsBase
|
|
197
|
-
- `max_bitrate?: number` - The maximum allowed bitrate.
|
|
198
|
-
- `bitrate?: number` - The encoding bitrate, Default is 8000
|
|
199
|
-
- `keyint_sec?: number` - Key frames in second. Default is 0 (i.e auto, calculate by the recording engine more or less generate key frame every 4 second.).
|
|
200
|
-
|
|
201
|
-
### VideoSettings
|
|
202
|
-
- `baseWidth: number` - Base width resolution. Default Half HD (main monitor ratio)
|
|
203
|
-
- `baseHeight: number` - Base height resolution. Default Half HD (main monitor ratio)
|
|
204
|
-
- `fps?: number` - Default is 30.
|
|
205
|
-
- `outputWidth?: number`- Output (scaled) resolution. Default is same as baseWidth
|
|
206
|
-
- `outputHeight?: number`- Output (scaled) resolution. Default is same as baseHeight
|
|
207
|
-
- `colorFormat?: kVideoColorFormat` -Default is 'NV12'
|
|
208
|
-
- `colorRange?: kVideoColorRange` - Default is '709'
|
|
209
|
-
- `colorSpec?: kVideoColorSpec` - Default is Partial
|
|
210
|
-
- `sdrWhite?: number` - Default is 300 nits
|
|
211
|
-
- `hdrPeak?: number` - Default is 1000 nits
|
|
212
|
-
|
|
213
|
-
### AudioSettings
|
|
214
|
-
- `inputs: AudioDeviceSettingsInfo[]` - [AudioDeviceSettingsInfo](#audiodevicesettingsinfo)
|
|
215
|
-
- `outputs: AudioDeviceSettingsInfo[]` - [AudioDeviceSettingsInfo](#audiodevicesettingsinfo)
|
|
216
|
-
- `applications: ApplicationAudioDeviceSettingsInfo[]` - [ApplicationAudioDeviceSettingsInfo](#applicationaudiodevicesettingsinfo)
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
### Rect
|
|
220
|
-
```
|
|
221
|
-
top: number
|
|
222
|
-
left: number
|
|
223
|
-
width: number
|
|
224
|
-
height: number
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
### CaptureSource
|
|
228
|
-
- `type: 'Display' | 'Game' | 'Window'`
|
|
229
|
-
- `properties: any` - GameCaptureSourceSettings | MonitorCaptureSourceSettings
|
|
230
|
-
|
|
231
|
-
### GameCaptureSource
|
|
232
|
-
- `type: 'Game`
|
|
233
|
-
- `properties: GameCaptureSourceSettings`
|
|
234
|
-
|
|
235
|
-
### GameCaptureSource
|
|
236
|
-
- `type: 'Display`
|
|
237
|
-
- `properties: MonitorCaptureSourceSettings`
|
|
238
|
-
|
|
239
|
-
### GameCaptureSourceSettings
|
|
240
|
-
- `gameProcess: string | number` - Game Process to capture, may contain the process name or process Id.
|
|
241
|
-
- `sliCompatibility?: boolean` - Slow capture. using shared memory
|
|
242
|
-
- `captureCursor?: boolean` - Capture mouse cursor. Default is true.
|
|
243
|
-
- `allowTransparency?: boolean`
|
|
244
|
-
- `premultipliedAlpha?: boolean`
|
|
245
|
-
- `captureOverlays?: boolean` - Capture third-party overlays
|
|
246
|
-
- `limitFramerate?: boolean`- Limit capture framerate
|
|
247
|
-
- `rgb10a2Space?: boolean` - Use Rec.2100 (PQ) color space instead sRGB
|
|
248
|
-
|
|
249
|
-
### MonitorCaptureSourceSettings
|
|
250
|
-
- `monitorId: string`
|
|
251
|
-
- `type?: DisplayCaptureType`
|
|
252
|
-
- `captureCursor?: boolean` - Capture mouse cursor. Default is true.
|
|
253
|
-
- `forceSDR?: boolean`
|
|
254
|
-
|
|
255
|
-
### CaptureSourceSettings
|
|
256
|
-
-`stretchToOutputSize: boolean` - Streach
|
|
257
|
-
|
|
258
|
-
### AudioDeviceSettingsInfo
|
|
259
|
-
*extends AudioDeviceSettings
|
|
260
|
-
- `type: AudioDeviceType: 'input' | 'output'`
|
|
261
|
-
- `id: string` - Device Id
|
|
262
|
-
|
|
263
|
-
### AudioDeviceSettings
|
|
264
|
-
- `use_device_timing?: boolean`
|
|
265
|
-
- `tracks?: AudioTracks`- include Device tracks. All tracks included by default
|
|
266
|
-
- `balance?: number` - 0.0. - 1.0. Default is 0.5
|
|
267
|
-
- `mono?: boolean` - Default is False (i.e stereo)
|
|
268
|
-
- `volume?: number` - 0.0 - 20.0, default is 1.0 (100%)
|
|
269
|
-
|
|
270
|
-
### ApplicationAudioDeviceSettingsInfo
|
|
271
|
-
*extends AudioDeviceSettingsInfo
|
|
272
|
-
- `type: 'output'`
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
### DisplayCaptureType(enum)
|
|
276
|
-
```
|
|
277
|
-
Auto = 0,
|
|
278
|
-
DXGI = 1, // Direct Duplicator
|
|
279
|
-
WGC = 2, // Windows 10 (1903 and up)
|
|
280
|
-
BitBlt = 3, // Compatibility mode
|
|
281
|
-
```
|
|
282
|
-
|
|
283
|
-
### DefaultAudioDeviceParams
|
|
284
|
-
`separateAudioTracks?: boolean` - Auto Separate audio tracks, When using the default audio sources, the Input and the Output audio sources, Will use dedicate tracks (2, 3), and track number 1 will include both
|
|
285
|
-
### AudioDeviceParams
|
|
286
|
-
*extends DefaultAudioDeviceParams
|
|
287
|
-
|
|
288
|
-
- `id: string` - The device Id.
|
|
289
|
-
- `name: string` - The device name
|
|
290
|
-
|
|
291
|
-
### ApplicationAudioCaptureParams
|
|
292
|
-
*extends DefaultAudioDeviceParams
|
|
293
|
-
`processName: string` - Process name to capture audio from (i.e Discord.exe or minecraft.exe)
|
|
294
|
-
|
|
295
|
-
### SplitOptions
|
|
296
|
-
- `enableManual: boolean` - Allow for manual split command to split the current running capture.
|
|
297
|
-
- `maxTimeSecond?: number` - Split video by time (in seconds).
|
|
298
|
-
|
|
299
|
-
### RecordingBaseOptions
|
|
300
|
-
- `fileFormat?: kFileFormat` - Video file format. Default is 'fragmented_mp4'
|
|
301
|
-
- `audioTrack?: AudioTracks` - Video Audio tracks, default is 'Track1' or 'Track1'| 'Track2' |'Track3' if |separateAudioTracks| is on.
|
|
302
|
-
- `autoShutdownOnGameExit?: boolean` - Auto shutdown recording when game exit
|
|
303
|
-
**** Note: valid when recording with game capture source
|
|
304
|
-
|
|
305
|
-
### RecordingOptions
|
|
306
|
-
*extends RecordingBaseOptions
|
|
307
|
-
- `filePath: string` - Output file path (without file extension)
|
|
308
|
-
- `split?: SplitOptions` - [Split Options](#splitoptions)
|
|
309
|
-
- `maxBySizeMB?: number` - Split video by size (MB).
|
|
310
|
-
|
|
311
|
-
### ReplayOptions
|
|
312
|
-
*extends RecordingBaseOptions
|
|
313
|
-
- `rootFolder: string` - Set the replay's root folder path, used when replays capture is initiated.
|
|
314
|
-
- `bufferSecond: number` - Defines the length of the buffer to be recorded in seconds
|
|
315
|
-
|
|
316
|
-
### CaptureReplayOptions
|
|
317
|
-
- `fileName: string`- Replay file name (without extension)
|
|
318
|
-
- `pastDuration: number` - The video length, in milliseconds to include prior to the time of this call.
|
|
319
|
-
- `timeout?: number` - Auto stop (optional) in milliseconds. When set to Zero, will create replay with pass duration only. if not set, use |ActiveReplay| to stop the replay
|
|
320
|
-
|
|
321
|
-
#### ActiveReplay
|
|
322
|
-
The active replay object is used to handle currently capturing replay, it can be used to stop, or prolong the replay as desired.
|
|
323
|
-
- `timeout: number` - get current replay timeout in milliseconds (since was set, if was set)
|
|
324
|
-
- `stop(callback)` - Stop replay now
|
|
325
|
-
- param - ReplayCallback with [ReplayVideo](types.md#replayvideo)
|
|
326
|
-
|
|
327
|
-
- `stopAfter(timeout, callback)` - Stop after |timeout| in milliseconds
|
|
328
|
-
- param - `timeout: number` - time in ms to stop the replay capture
|
|
329
|
-
- param - ReplayCallback with [ReplayVideo](types.md#replayvideo)
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
### GameInfo
|
|
333
|
-
- `id: number`
|
|
334
|
-
- `classId: number`
|
|
335
|
-
- `name: string`
|
|
336
|
-
- `supported: boolean`
|
|
337
|
-
- `processInfo?: GameProcessInfo`
|
|
338
|
-
- `flags?: any`
|
|
339
|
-
- `type: 'Game' | 'Launcher'`
|
|
340
|
-
|
|
341
|
-
### GamesFilter
|
|
342
|
-
- `all?: boolean` - Optional, when used pass empty [] for gameIds parameter
|
|
343
|
-
- `includeUnsupported?: boolean` - Trigger on games that are not supported by ow-electron overlay api
|
|
344
|
-
- `gamesIds: number[]` - list of desired gameIds.
|