Skip to content

Commit f234452

Browse files
author
James Brundage
committed
feat: Watch-OBS -BufferSize ( Fixes #212, Fixes #213 )
Defaulting to 64kb
1 parent c4f5c7e commit f234452

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

Commands/Watch-OBS.ps1

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,13 @@ function Watch-OBS
2626
[Parameter(ValueFromPipelineByPropertyName)]
2727
[Alias('WebSocketPassword')]
2828
[string]
29-
$WebSocketToken
29+
$WebSocketToken,
30+
31+
# The size of the buffer to use when receiving messages from the websocket.
32+
[Parameter(ValueFromPipelineByPropertyName)]
33+
[ValidateRange(1,1mb)]
34+
[int]
35+
$BufferSize = 64kb
3036
)
3137

3238
begin {
@@ -35,7 +41,10 @@ function Watch-OBS
3541
[uri]$webSocketUri,
3642

3743
[Alias('WebSocketPassword')]
38-
$WebSocketToken
44+
$WebSocketToken,
45+
46+
[int]
47+
$BufferSize = 64kb
3948
)
4049
}.ToString() +
4150
"
@@ -56,7 +65,7 @@ $($ExecutionContext.SessionState.InvokeCommand.GetCommand('Send-OBS', 'Function'
5665
$obsPwd = $WebSocketToken
5766
$WaitInterval = [Timespan]::FromMilliseconds(7)
5867

59-
$BufferSize = 16kb
68+
$BufferSize = 64kb
6069

6170
$maxWaitTime = [DateTime]::Now + $WaitFor
6271
while (!$ConnectTask.IsCompleted -and [DateTime]::Now -lt $maxWaitTime) {
@@ -126,7 +135,7 @@ $($ExecutionContext.SessionState.InvokeCommand.GetCommand('Send-OBS', 'Function'
126135

127136

128137
$obsWatcher =
129-
Start-ThreadJob -ScriptBlock $obsWatcherJobDefinition -Name "OBS.Connection.$($Credential.UserName)" -ArgumentList $WebSocketURI, $WebSocketToken
138+
Start-ThreadJob -ScriptBlock $obsWatcherJobDefinition -Name "OBS.Connection.$($Credential.UserName)" -ArgumentList $WebSocketURI, $WebSocketToken, $BufferSize
130139

131140
$whenOutputAddedHandler =
132141
Register-ObjectEvent -InputObject $obsWatcher.Output -EventName DataAdded -Action {

0 commit comments

Comments
 (0)