@stream-io/video-client 1.32.0 → 1.33.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/CHANGELOG.md +16 -0
- package/dist/index.browser.es.js +344 -91
- package/dist/index.browser.es.js.map +1 -1
- package/dist/index.cjs.js +345 -92
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +344 -91
- package/dist/index.es.js.map +1 -1
- package/dist/src/Call.d.ts +3 -2
- package/dist/src/devices/AudioDeviceManager.d.ts +25 -0
- package/dist/src/devices/AudioDeviceManagerState.d.ts +24 -0
- package/dist/src/devices/CameraManager.d.ts +2 -2
- package/dist/src/devices/CameraManagerState.d.ts +3 -4
- package/dist/src/devices/{InputMediaDeviceManager.d.ts → DeviceManager.d.ts} +6 -6
- package/dist/src/devices/{InputMediaDeviceManagerState.d.ts → DeviceManagerState.d.ts} +4 -4
- package/dist/src/devices/MicrophoneManager.d.ts +5 -3
- package/dist/src/devices/MicrophoneManagerState.d.ts +6 -10
- package/dist/src/devices/ScreenShareManager.d.ts +4 -2
- package/dist/src/devices/ScreenShareState.d.ts +6 -2
- package/dist/src/devices/SpeakerState.d.ts +4 -4
- package/dist/src/devices/index.d.ts +2 -2
- package/dist/src/gen/coordinator/index.d.ts +169 -2
- package/dist/src/gen/video/sfu/models/models.d.ts +43 -0
- package/dist/src/rtc/BasePeerConnection.d.ts +2 -12
- package/dist/src/rtc/Publisher.d.ts +9 -6
- package/dist/src/rtc/Subscriber.d.ts +2 -1
- package/dist/src/rtc/TransceiverCache.d.ts +10 -11
- package/dist/src/rtc/index.d.ts +1 -1
- package/dist/src/rtc/{videoLayers.d.ts → layers.d.ts} +7 -1
- package/dist/src/rtc/types.d.ts +31 -0
- package/dist/src/sorting/participants.d.ts +5 -2
- package/package.json +3 -2
- package/src/Call.ts +13 -6
- package/src/__tests__/Call.publishing.test.ts +14 -3
- package/src/__tests__/StreamVideoClient.api.test.ts +1 -1
- package/src/devices/AudioDeviceManager.ts +61 -0
- package/src/devices/AudioDeviceManagerState.ts +44 -0
- package/src/devices/CameraManager.ts +4 -4
- package/src/devices/CameraManagerState.ts +9 -8
- package/src/devices/{InputMediaDeviceManager.ts → DeviceManager.ts} +11 -8
- package/src/devices/{InputMediaDeviceManagerState.ts → DeviceManagerState.ts} +7 -4
- package/src/devices/MicrophoneManager.ts +26 -6
- package/src/devices/MicrophoneManagerState.ts +18 -19
- package/src/devices/ScreenShareManager.ts +23 -4
- package/src/devices/ScreenShareState.ts +11 -3
- package/src/devices/SpeakerState.ts +6 -14
- package/src/devices/__tests__/CameraManager.test.ts +1 -0
- package/src/devices/__tests__/{InputMediaDeviceManager.test.ts → DeviceManager.test.ts} +4 -4
- package/src/devices/__tests__/{InputMediaDeviceManagerFilters.test.ts → DeviceManagerFilters.test.ts} +4 -4
- package/src/devices/__tests__/{InputMediaDeviceManagerState.test.ts → DeviceManagerState.test.ts} +2 -2
- package/src/devices/__tests__/MicrophoneManager.test.ts +41 -1
- package/src/devices/__tests__/NoiseCancellationStub.ts +3 -1
- package/src/devices/__tests__/ScreenShareManager.test.ts +5 -1
- package/src/devices/index.ts +2 -2
- package/src/events/__tests__/internal.test.ts +25 -11
- package/src/gen/coordinator/index.ts +169 -2
- package/src/gen/video/sfu/models/models.ts +65 -0
- package/src/rtc/BasePeerConnection.ts +1 -16
- package/src/rtc/Publisher.ts +74 -31
- package/src/rtc/Subscriber.ts +2 -4
- package/src/rtc/TransceiverCache.ts +23 -27
- package/src/rtc/__tests__/Publisher.test.ts +61 -29
- package/src/rtc/__tests__/{videoLayers.test.ts → layers.test.ts} +76 -1
- package/src/rtc/index.ts +2 -1
- package/src/rtc/{videoLayers.ts → layers.ts} +28 -7
- package/src/rtc/types.ts +44 -0
- package/src/sorting/__tests__/sorting.test.ts +106 -0
- package/src/sorting/participants.ts +30 -14
- package/src/sorting/presets.ts +16 -4
- package/src/store/CallState.ts +36 -10
- package/src/store/__tests__/CallState.test.ts +20 -2
package/dist/src/Call.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Publisher, Subscriber } from './rtc';
|
|
1
|
+
import { Publisher, Subscriber, TrackPublishOptions } from './rtc';
|
|
2
2
|
import { CallState } from './store';
|
|
3
3
|
import type { AcceptCallResponse, BlockUserResponse, CallRingEvent, CallSettingsResponse, CollectUserFeedbackRequest, CollectUserFeedbackResponse, DeleteCallRequest, DeleteCallResponse, EndCallResponse, GetCallReportResponse, GetCallResponse, GetOrCreateCallRequest, GetOrCreateCallResponse, GoLiveRequest, GoLiveResponse, JoinCallResponse, KickUserRequest, KickUserResponse, ListRecordingsResponse, ListTranscriptionsResponse, MuteUsersResponse, PinRequest, PinResponse, QueryCallMembersRequest, QueryCallMembersResponse, RejectCallResponse, RequestPermissionRequest, RequestPermissionResponse, SendCallEventResponse, SendReactionRequest, SendReactionResponse, StartClosedCaptionsRequest, StartClosedCaptionsResponse, StartFrameRecordingRequest, StartFrameRecordingResponse, StartHLSBroadcastingResponse, StartRecordingRequest, StartRecordingResponse, StartRTMPBroadcastsRequest, StartRTMPBroadcastsResponse, StartTranscriptionRequest, StartTranscriptionResponse, StopAllRTMPBroadcastsResponse, StopClosedCaptionsRequest, StopClosedCaptionsResponse, StopFrameRecordingResponse, StopHLSBroadcastingResponse, StopLiveRequest, StopLiveResponse, StopRecordingResponse, StopRTMPBroadcastsResponse, StopTranscriptionResponse, UnblockUserResponse, UnpinRequest, UnpinResponse, UpdateCallMembersRequest, UpdateCallMembersResponse, UpdateCallRequest, UpdateCallResponse, UpdateUserPermissionsRequest, UpdateUserPermissionsResponse } from './gen/coordinator';
|
|
4
4
|
import { AudioTrackType, CallConstructor, CallLeaveOptions, ClientPublishOptions, ClosedCaptionsSettings, JoinCallData, TrackMuteType, VideoTrackType } from './types';
|
|
@@ -344,8 +344,9 @@ export declare class Call {
|
|
|
344
344
|
*
|
|
345
345
|
* @param mediaStream the media stream to publish.
|
|
346
346
|
* @param trackType the type of the track to announce.
|
|
347
|
+
* @param options the publish options.
|
|
347
348
|
*/
|
|
348
|
-
publish: (mediaStream: MediaStream, trackType: TrackType) => Promise<void>;
|
|
349
|
+
publish: (mediaStream: MediaStream, trackType: TrackType, options?: TrackPublishOptions) => Promise<void>;
|
|
349
350
|
/**
|
|
350
351
|
* Stops publishing the given track type to the call, if it is currently being published.
|
|
351
352
|
*
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { DeviceManager } from './DeviceManager';
|
|
2
|
+
import { AudioDeviceManagerState } from './AudioDeviceManagerState';
|
|
3
|
+
import { AudioBitrateProfile } from '../gen/video/sfu/models/models';
|
|
4
|
+
import { TrackPublishOptions } from '../rtc';
|
|
5
|
+
/**
|
|
6
|
+
* Base class for High Fidelity enabled Device Managers.
|
|
7
|
+
*/
|
|
8
|
+
export declare abstract class AudioDeviceManager<S extends AudioDeviceManagerState<C>, C = MediaTrackConstraints> extends DeviceManager<S, C> {
|
|
9
|
+
/**
|
|
10
|
+
* Sets the audio bitrate profile and stereo mode.
|
|
11
|
+
*/
|
|
12
|
+
setAudioBitrateProfile(profile: AudioBitrateProfile): Promise<void>;
|
|
13
|
+
/**
|
|
14
|
+
* Overrides the default `publishStream` method to inject the audio bitrate profile.
|
|
15
|
+
*/
|
|
16
|
+
protected publishStream(stream: MediaStream, options?: TrackPublishOptions): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Applies Device Manager's specific audio profile settings.
|
|
19
|
+
*/
|
|
20
|
+
protected abstract doSetAudioBitrateProfile(profile: AudioBitrateProfile): void;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Prepares a new MediaTrackConstraints set based on the provided arguments.
|
|
24
|
+
*/
|
|
25
|
+
export declare const createAudioConstraints: (profile: AudioBitrateProfile) => MediaTrackConstraints;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { AudioBitrateProfile } from '../gen/video/sfu/models/models';
|
|
3
|
+
import { DeviceManagerState, TrackDisableMode } from './DeviceManagerState';
|
|
4
|
+
import { BrowserPermission } from './BrowserPermission';
|
|
5
|
+
/**
|
|
6
|
+
* Base state class for High Fidelity enabled device managers.
|
|
7
|
+
*/
|
|
8
|
+
export declare abstract class AudioDeviceManagerState<C> extends DeviceManagerState<C> {
|
|
9
|
+
private readonly audioBitrateProfileSubject;
|
|
10
|
+
/** An Observable that emits the current audio bitrate profile. */
|
|
11
|
+
audioBitrateProfile$: Observable<AudioBitrateProfile>;
|
|
12
|
+
/**
|
|
13
|
+
* Constructs a new AudioDeviceManagerState instance.
|
|
14
|
+
*/
|
|
15
|
+
protected constructor(disableMode: TrackDisableMode, permission: BrowserPermission | undefined, profile: AudioBitrateProfile);
|
|
16
|
+
/**
|
|
17
|
+
* Returns the current audio bitrate profile.
|
|
18
|
+
*/
|
|
19
|
+
get audioBitrateProfile(): AudioBitrateProfile;
|
|
20
|
+
/**
|
|
21
|
+
* Sets the audio bitrate profile and stereo mode.
|
|
22
|
+
*/
|
|
23
|
+
setAudioBitrateProfile(profile: AudioBitrateProfile): void;
|
|
24
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { Call } from '../Call';
|
|
3
3
|
import { CameraDirection, CameraManagerState } from './CameraManagerState';
|
|
4
|
-
import {
|
|
4
|
+
import { DeviceManager } from './DeviceManager';
|
|
5
5
|
import { VideoSettingsResponse } from '../gen/coordinator';
|
|
6
|
-
export declare class CameraManager extends
|
|
6
|
+
export declare class CameraManager extends DeviceManager<CameraManagerState> {
|
|
7
7
|
private targetResolution;
|
|
8
8
|
/**
|
|
9
9
|
* Constructs a new CameraManager.
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { InputMediaDeviceManagerState } from './InputMediaDeviceManagerState';
|
|
1
|
+
import { DeviceManagerState } from './DeviceManagerState';
|
|
3
2
|
export type CameraDirection = 'front' | 'back' | undefined;
|
|
4
|
-
export declare class CameraManagerState extends
|
|
3
|
+
export declare class CameraManagerState extends DeviceManagerState {
|
|
5
4
|
private directionSubject;
|
|
6
5
|
/**
|
|
7
6
|
* Observable that emits the preferred camera direction
|
|
8
7
|
* front - means the camera facing the user
|
|
9
8
|
* back - means the camera facing the environment
|
|
10
9
|
*/
|
|
11
|
-
direction$: Observable<CameraDirection>;
|
|
10
|
+
direction$: import("rxjs").Observable<CameraDirection>;
|
|
12
11
|
constructor();
|
|
13
12
|
/**
|
|
14
13
|
* The preferred camera direction
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { Call } from '../Call';
|
|
3
|
-
import {
|
|
3
|
+
import { TrackPublishOptions } from '../rtc';
|
|
4
|
+
import { DeviceManagerState } from './DeviceManagerState';
|
|
4
5
|
import { Logger } from '../coordinator/connection/types';
|
|
5
6
|
import { TrackType } from '../gen/video/sfu/models/models';
|
|
6
7
|
import { MediaStreamFilter, MediaStreamFilterRegistrationResult } from './filters';
|
|
7
|
-
export declare abstract class
|
|
8
|
+
export declare abstract class DeviceManager<S extends DeviceManagerState<C>, C = MediaTrackConstraints> {
|
|
8
9
|
/**
|
|
9
10
|
* if true, stops the media stream when call is left
|
|
10
11
|
*/
|
|
11
12
|
stopOnLeave: boolean;
|
|
12
13
|
logger: Logger;
|
|
13
|
-
state:
|
|
14
|
+
state: S;
|
|
14
15
|
protected readonly call: Call;
|
|
15
16
|
protected readonly trackType: TrackType;
|
|
16
17
|
protected subscriptions: Function[];
|
|
@@ -19,7 +20,7 @@ export declare abstract class InputMediaDeviceManager<T extends InputMediaDevice
|
|
|
19
20
|
private filters;
|
|
20
21
|
private statusChangeConcurrencyTag;
|
|
21
22
|
private filterRegistrationConcurrencyTag;
|
|
22
|
-
protected constructor(call: Call, state:
|
|
23
|
+
protected constructor(call: Call, state: S, trackType: TrackType);
|
|
23
24
|
setup(): void;
|
|
24
25
|
/**
|
|
25
26
|
* Lists the available audio/video devices
|
|
@@ -39,7 +40,6 @@ export declare abstract class InputMediaDeviceManager<T extends InputMediaDevice
|
|
|
39
40
|
enable(): Promise<void>;
|
|
40
41
|
/**
|
|
41
42
|
* Stops or pauses the stream based on state.disableMode
|
|
42
|
-
* @param {boolean} [forceStop=false] when true, stops the tracks regardless of the state.disableMode
|
|
43
43
|
*/
|
|
44
44
|
disable(options: {
|
|
45
45
|
forceStop?: boolean;
|
|
@@ -90,7 +90,7 @@ export declare abstract class InputMediaDeviceManager<T extends InputMediaDevice
|
|
|
90
90
|
protected applySettingsToStream(): Promise<void>;
|
|
91
91
|
protected abstract getDevices(): Observable<MediaDeviceInfo[]>;
|
|
92
92
|
protected abstract getStream(constraints: C): Promise<MediaStream>;
|
|
93
|
-
protected publishStream(stream: MediaStream): Promise<void>;
|
|
93
|
+
protected publishStream(stream: MediaStream, options?: TrackPublishOptions): Promise<void>;
|
|
94
94
|
protected stopPublishStream(): Promise<void>;
|
|
95
95
|
protected getTracks(): MediaStreamTrack[];
|
|
96
96
|
protected muteStream(stopTracks?: boolean): Promise<void>;
|
|
@@ -2,8 +2,7 @@ import { BehaviorSubject, Observable } from 'rxjs';
|
|
|
2
2
|
import { BrowserPermission, BrowserPermissionState } from './BrowserPermission';
|
|
3
3
|
export type InputDeviceStatus = 'enabled' | 'disabled' | undefined;
|
|
4
4
|
export type TrackDisableMode = 'stop-tracks' | 'disable-tracks';
|
|
5
|
-
export declare abstract class
|
|
6
|
-
readonly disableMode: TrackDisableMode;
|
|
5
|
+
export declare abstract class DeviceManagerState<C = MediaTrackConstraints> {
|
|
7
6
|
protected statusSubject: BehaviorSubject<InputDeviceStatus>;
|
|
8
7
|
protected optimisticStatusSubject: BehaviorSubject<InputDeviceStatus>;
|
|
9
8
|
protected mediaStreamSubject: BehaviorSubject<MediaStream | undefined>;
|
|
@@ -49,14 +48,15 @@ export declare abstract class InputMediaDeviceManagerState<C = MediaTrackConstra
|
|
|
49
48
|
* (i.e. browser's UI for allowing or disallowing device access is visible)
|
|
50
49
|
*/
|
|
51
50
|
isPromptingPermission$: Observable<boolean>;
|
|
51
|
+
readonly disableMode: TrackDisableMode;
|
|
52
52
|
/**
|
|
53
|
-
* Constructs new InputMediaDeviceManagerState instance.
|
|
53
|
+
* Constructs a new InputMediaDeviceManagerState instance.
|
|
54
54
|
*
|
|
55
55
|
* @param disableMode the disable mode to use.
|
|
56
56
|
* @param permission the BrowserPermission to use for querying.
|
|
57
57
|
* `undefined` means no permission is required.
|
|
58
58
|
*/
|
|
59
|
-
constructor(disableMode
|
|
59
|
+
constructor(disableMode: TrackDisableMode, permission: BrowserPermission | undefined);
|
|
60
60
|
/**
|
|
61
61
|
* The device status
|
|
62
62
|
*/
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import type { INoiseCancellation } from '@stream-io/audio-filters-web';
|
|
3
3
|
import { Call } from '../Call';
|
|
4
|
-
import {
|
|
4
|
+
import { AudioDeviceManager } from './AudioDeviceManager';
|
|
5
5
|
import { MicrophoneManagerState } from './MicrophoneManagerState';
|
|
6
|
-
import { TrackDisableMode } from './
|
|
6
|
+
import { TrackDisableMode } from './DeviceManagerState';
|
|
7
|
+
import { AudioBitrateProfile } from '../gen/video/sfu/models/models';
|
|
7
8
|
import { AudioSettingsResponse } from '../gen/coordinator';
|
|
8
|
-
export declare class MicrophoneManager extends
|
|
9
|
+
export declare class MicrophoneManager extends AudioDeviceManager<MicrophoneManagerState> {
|
|
9
10
|
private speakingWhileMutedNotificationEnabled;
|
|
10
11
|
private soundDetectorConcurrencyTag;
|
|
11
12
|
private soundDetectorCleanup?;
|
|
@@ -42,6 +43,7 @@ export declare class MicrophoneManager extends InputMediaDeviceManager<Microphon
|
|
|
42
43
|
apply(settings: AudioSettingsResponse, publish: boolean): Promise<void>;
|
|
43
44
|
protected getDevices(): Observable<MediaDeviceInfo[]>;
|
|
44
45
|
protected getStream(constraints: MediaTrackConstraints): Promise<MediaStream>;
|
|
46
|
+
protected doSetAudioBitrateProfile(profile: AudioBitrateProfile): void;
|
|
45
47
|
private startSpeakingWhileMutedDetection;
|
|
46
48
|
private stopSpeakingWhileMutedDetection;
|
|
47
49
|
}
|
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export declare class MicrophoneManagerState extends
|
|
1
|
+
import { TrackDisableMode } from './DeviceManagerState';
|
|
2
|
+
import { AudioDeviceManagerState } from './AudioDeviceManagerState';
|
|
3
|
+
export declare class MicrophoneManagerState extends AudioDeviceManagerState<MediaTrackConstraints> {
|
|
4
4
|
private speakingWhileMutedSubject;
|
|
5
5
|
/**
|
|
6
|
-
* An Observable that emits `true` if the user's microphone is muted but they'
|
|
7
|
-
*
|
|
8
|
-
* This feature is not available in the React Native SDK.
|
|
6
|
+
* An Observable that emits `true` if the user's microphone is muted, but they're speaking.
|
|
9
7
|
*/
|
|
10
|
-
speakingWhileMuted$: Observable<boolean>;
|
|
8
|
+
speakingWhileMuted$: import("rxjs").Observable<boolean>;
|
|
11
9
|
constructor(disableMode: TrackDisableMode);
|
|
12
10
|
/**
|
|
13
|
-
* `true` if the user's microphone is muted but they'
|
|
14
|
-
*
|
|
15
|
-
* This feature is not available in the React Native SDK.
|
|
11
|
+
* `true` if the user's microphone is muted but they're speaking.
|
|
16
12
|
*/
|
|
17
13
|
get speakingWhileMuted(): boolean;
|
|
18
14
|
/**
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import {
|
|
2
|
+
import { AudioDeviceManager } from './AudioDeviceManager';
|
|
3
3
|
import { ScreenShareState } from './ScreenShareState';
|
|
4
4
|
import { Call } from '../Call';
|
|
5
|
+
import { AudioBitrateProfile } from '../gen/video/sfu/models/models';
|
|
5
6
|
import { ScreenShareSettings } from '../types';
|
|
6
|
-
export declare class ScreenShareManager extends
|
|
7
|
+
export declare class ScreenShareManager extends AudioDeviceManager<ScreenShareState, DisplayMediaStreamOptions> {
|
|
7
8
|
constructor(call: Call);
|
|
8
9
|
setup(): void;
|
|
9
10
|
/**
|
|
@@ -29,6 +30,7 @@ export declare class ScreenShareManager extends InputMediaDeviceManager<ScreenSh
|
|
|
29
30
|
setSettings(settings: ScreenShareSettings | undefined): void;
|
|
30
31
|
protected getDevices(): Observable<MediaDeviceInfo[]>;
|
|
31
32
|
protected getStream(constraints: DisplayMediaStreamOptions): Promise<MediaStream>;
|
|
33
|
+
protected doSetAudioBitrateProfile(profile: AudioBitrateProfile): void;
|
|
32
34
|
protected stopPublishStream(): Promise<void>;
|
|
33
35
|
/**
|
|
34
36
|
* Overrides the default `select` method to throw an error.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AudioDeviceManagerState } from './AudioDeviceManagerState';
|
|
2
2
|
import { ScreenShareSettings } from '../types';
|
|
3
|
-
export declare class ScreenShareState extends
|
|
3
|
+
export declare class ScreenShareState extends AudioDeviceManagerState<DisplayMediaStreamOptions> {
|
|
4
4
|
private audioEnabledSubject;
|
|
5
5
|
private settingsSubject;
|
|
6
6
|
/**
|
|
@@ -11,6 +11,10 @@ export declare class ScreenShareState extends InputMediaDeviceManagerState<Displ
|
|
|
11
11
|
* An Observable that emits the current screen share settings.
|
|
12
12
|
*/
|
|
13
13
|
settings$: import("rxjs").Observable<ScreenShareSettings | undefined>;
|
|
14
|
+
/**
|
|
15
|
+
* Constructs a new ScreenShareState instance.
|
|
16
|
+
*/
|
|
17
|
+
constructor();
|
|
14
18
|
/**
|
|
15
19
|
* @internal
|
|
16
20
|
*/
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { BehaviorSubject
|
|
1
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
2
|
import { Tracer } from '../stats';
|
|
3
3
|
export declare class SpeakerState {
|
|
4
|
+
private tracer;
|
|
4
5
|
protected selectedDeviceSubject: BehaviorSubject<string>;
|
|
5
6
|
protected volumeSubject: BehaviorSubject<number>;
|
|
6
7
|
/**
|
|
@@ -12,14 +13,13 @@ export declare class SpeakerState {
|
|
|
12
13
|
*
|
|
13
14
|
* Note: this feature is not supported in React Native
|
|
14
15
|
*/
|
|
15
|
-
selectedDevice$: Observable<string>;
|
|
16
|
+
selectedDevice$: import("rxjs").Observable<string>;
|
|
16
17
|
/**
|
|
17
18
|
* An Observable that emits the currently selected volume
|
|
18
19
|
*
|
|
19
20
|
* Note: this feature is not supported in React Native
|
|
20
21
|
*/
|
|
21
|
-
volume$: Observable<number>;
|
|
22
|
-
private tracer;
|
|
22
|
+
volume$: import("rxjs").Observable<number>;
|
|
23
23
|
constructor(tracer: Tracer);
|
|
24
24
|
/**
|
|
25
25
|
* The currently selected device
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from './utils';
|
|
2
2
|
export * from './devices';
|
|
3
|
-
export * from './
|
|
4
|
-
export * from './
|
|
3
|
+
export * from './DeviceManager';
|
|
4
|
+
export * from './DeviceManagerState';
|
|
5
5
|
export * from './CameraManager';
|
|
6
6
|
export * from './CameraManagerState';
|
|
7
7
|
export * from './MicrophoneManager';
|
|
@@ -86,6 +86,12 @@ export interface AudioSettingsRequest {
|
|
|
86
86
|
* @memberof AudioSettingsRequest
|
|
87
87
|
*/
|
|
88
88
|
default_device: AudioSettingsRequestDefaultDeviceEnum;
|
|
89
|
+
/**
|
|
90
|
+
*
|
|
91
|
+
* @type {boolean}
|
|
92
|
+
* @memberof AudioSettingsRequest
|
|
93
|
+
*/
|
|
94
|
+
hifi_audio_enabled?: boolean;
|
|
89
95
|
/**
|
|
90
96
|
*
|
|
91
97
|
* @type {boolean}
|
|
@@ -143,6 +149,12 @@ export interface AudioSettingsResponse {
|
|
|
143
149
|
* @memberof AudioSettingsResponse
|
|
144
150
|
*/
|
|
145
151
|
default_device: AudioSettingsResponseDefaultDeviceEnum;
|
|
152
|
+
/**
|
|
153
|
+
*
|
|
154
|
+
* @type {boolean}
|
|
155
|
+
* @memberof AudioSettingsResponse
|
|
156
|
+
*/
|
|
157
|
+
hifi_audio_enabled?: boolean;
|
|
146
158
|
/**
|
|
147
159
|
*
|
|
148
160
|
* @type {boolean}
|
|
@@ -402,6 +414,24 @@ export interface CallClosedCaption {
|
|
|
402
414
|
* @memberof CallClosedCaption
|
|
403
415
|
*/
|
|
404
416
|
end_time: string;
|
|
417
|
+
/**
|
|
418
|
+
*
|
|
419
|
+
* @type {string}
|
|
420
|
+
* @memberof CallClosedCaption
|
|
421
|
+
*/
|
|
422
|
+
id: string;
|
|
423
|
+
/**
|
|
424
|
+
*
|
|
425
|
+
* @type {string}
|
|
426
|
+
* @memberof CallClosedCaption
|
|
427
|
+
*/
|
|
428
|
+
language: string;
|
|
429
|
+
/**
|
|
430
|
+
*
|
|
431
|
+
* @type {string}
|
|
432
|
+
* @memberof CallClosedCaption
|
|
433
|
+
*/
|
|
434
|
+
service?: string;
|
|
405
435
|
/**
|
|
406
436
|
*
|
|
407
437
|
* @type {string}
|
|
@@ -420,6 +450,12 @@ export interface CallClosedCaption {
|
|
|
420
450
|
* @memberof CallClosedCaption
|
|
421
451
|
*/
|
|
422
452
|
text: string;
|
|
453
|
+
/**
|
|
454
|
+
*
|
|
455
|
+
* @type {boolean}
|
|
456
|
+
* @memberof CallClosedCaption
|
|
457
|
+
*/
|
|
458
|
+
translated: boolean;
|
|
423
459
|
/**
|
|
424
460
|
*
|
|
425
461
|
* @type {UserResponse}
|
|
@@ -913,6 +949,18 @@ export interface CallIngressResponse {
|
|
|
913
949
|
* @memberof CallIngressResponse
|
|
914
950
|
*/
|
|
915
951
|
rtmp: RTMPIngress;
|
|
952
|
+
/**
|
|
953
|
+
*
|
|
954
|
+
* @type {SRTIngress}
|
|
955
|
+
* @memberof CallIngressResponse
|
|
956
|
+
*/
|
|
957
|
+
srt: SRTIngress;
|
|
958
|
+
/**
|
|
959
|
+
*
|
|
960
|
+
* @type {WHIPIngress}
|
|
961
|
+
* @memberof CallIngressResponse
|
|
962
|
+
*/
|
|
963
|
+
whip: WHIPIngress;
|
|
916
964
|
}
|
|
917
965
|
/**
|
|
918
966
|
* This event is sent when a call is started. Clients receiving this event should start the call.
|
|
@@ -1797,6 +1845,12 @@ export interface CallResponse {
|
|
|
1797
1845
|
* @memberof CallResponse
|
|
1798
1846
|
*/
|
|
1799
1847
|
transcribing: boolean;
|
|
1848
|
+
/**
|
|
1849
|
+
*
|
|
1850
|
+
* @type {boolean}
|
|
1851
|
+
* @memberof CallResponse
|
|
1852
|
+
*/
|
|
1853
|
+
translating: boolean;
|
|
1800
1854
|
/**
|
|
1801
1855
|
* The type of call
|
|
1802
1856
|
* @type {string}
|
|
@@ -2107,6 +2161,12 @@ export interface CallSessionParticipantLeftEvent {
|
|
|
2107
2161
|
* @memberof CallSessionParticipantLeftEvent
|
|
2108
2162
|
*/
|
|
2109
2163
|
participant: CallParticipantResponse;
|
|
2164
|
+
/**
|
|
2165
|
+
* The reason why the participant left the session
|
|
2166
|
+
* @type {string}
|
|
2167
|
+
* @memberof CallSessionParticipantLeftEvent
|
|
2168
|
+
*/
|
|
2169
|
+
reason?: string;
|
|
2110
2170
|
/**
|
|
2111
2171
|
* Call session ID
|
|
2112
2172
|
* @type {string}
|
|
@@ -2750,7 +2810,7 @@ export interface CallUpdatedEvent {
|
|
|
2750
2810
|
*/
|
|
2751
2811
|
created_at: string;
|
|
2752
2812
|
/**
|
|
2753
|
-
* The type of event: "call.
|
|
2813
|
+
* The type of event: "call.updated" in this case
|
|
2754
2814
|
* @type {string}
|
|
2755
2815
|
* @memberof CallUpdatedEvent
|
|
2756
2816
|
*/
|
|
@@ -2855,6 +2915,12 @@ export interface CallUserMutedEvent {
|
|
|
2855
2915
|
* @memberof CallUserMutedEvent
|
|
2856
2916
|
*/
|
|
2857
2917
|
muted_user_ids: Array<string>;
|
|
2918
|
+
/**
|
|
2919
|
+
*
|
|
2920
|
+
* @type {string}
|
|
2921
|
+
* @memberof CallUserMutedEvent
|
|
2922
|
+
*/
|
|
2923
|
+
reason: string;
|
|
2858
2924
|
/**
|
|
2859
2925
|
* The type of event: "call.user_muted" in this case
|
|
2860
2926
|
* @type {string}
|
|
@@ -3802,6 +3868,12 @@ export interface GetCallReportResponse {
|
|
|
3802
3868
|
* @memberof GetCallReportResponse
|
|
3803
3869
|
*/
|
|
3804
3870
|
report: ReportResponse;
|
|
3871
|
+
/**
|
|
3872
|
+
*
|
|
3873
|
+
* @type {CallSessionResponse}
|
|
3874
|
+
* @memberof GetCallReportResponse
|
|
3875
|
+
*/
|
|
3876
|
+
session?: CallSessionResponse;
|
|
3805
3877
|
/**
|
|
3806
3878
|
*
|
|
3807
3879
|
* @type {string}
|
|
@@ -4941,6 +5013,7 @@ export declare const OwnCapability: {
|
|
|
4941
5013
|
readonly REMOVE_CALL_MEMBER: "remove-call-member";
|
|
4942
5014
|
readonly SCREENSHARE: "screenshare";
|
|
4943
5015
|
readonly SEND_AUDIO: "send-audio";
|
|
5016
|
+
readonly SEND_CLOSED_CAPTIONS_CALL: "send-closed-captions-call";
|
|
4944
5017
|
readonly SEND_VIDEO: "send-video";
|
|
4945
5018
|
readonly START_BROADCAST_CALL: "start-broadcast-call";
|
|
4946
5019
|
readonly START_CLOSED_CAPTIONS_CALL: "start-closed-captions-call";
|
|
@@ -6203,6 +6276,19 @@ export interface SFUResponse {
|
|
|
6203
6276
|
*/
|
|
6204
6277
|
ws_endpoint: string;
|
|
6205
6278
|
}
|
|
6279
|
+
/**
|
|
6280
|
+
*
|
|
6281
|
+
* @export
|
|
6282
|
+
* @interface SRTIngress
|
|
6283
|
+
*/
|
|
6284
|
+
export interface SRTIngress {
|
|
6285
|
+
/**
|
|
6286
|
+
*
|
|
6287
|
+
* @type {string}
|
|
6288
|
+
* @memberof SRTIngress
|
|
6289
|
+
*/
|
|
6290
|
+
address: string;
|
|
6291
|
+
}
|
|
6206
6292
|
/**
|
|
6207
6293
|
*
|
|
6208
6294
|
* @export
|
|
@@ -6372,6 +6458,25 @@ export interface SortParamRequest {
|
|
|
6372
6458
|
*/
|
|
6373
6459
|
field?: string;
|
|
6374
6460
|
}
|
|
6461
|
+
/**
|
|
6462
|
+
*
|
|
6463
|
+
* @export
|
|
6464
|
+
* @interface SpeechSegmentConfig
|
|
6465
|
+
*/
|
|
6466
|
+
export interface SpeechSegmentConfig {
|
|
6467
|
+
/**
|
|
6468
|
+
*
|
|
6469
|
+
* @type {number}
|
|
6470
|
+
* @memberof SpeechSegmentConfig
|
|
6471
|
+
*/
|
|
6472
|
+
max_speech_caption_ms?: number;
|
|
6473
|
+
/**
|
|
6474
|
+
*
|
|
6475
|
+
* @type {number}
|
|
6476
|
+
* @memberof SpeechSegmentConfig
|
|
6477
|
+
*/
|
|
6478
|
+
silence_duration_ms?: number;
|
|
6479
|
+
}
|
|
6375
6480
|
/**
|
|
6376
6481
|
*
|
|
6377
6482
|
* @export
|
|
@@ -6396,6 +6501,12 @@ export interface StartClosedCaptionsRequest {
|
|
|
6396
6501
|
* @memberof StartClosedCaptionsRequest
|
|
6397
6502
|
*/
|
|
6398
6503
|
language?: StartClosedCaptionsRequestLanguageEnum;
|
|
6504
|
+
/**
|
|
6505
|
+
*
|
|
6506
|
+
* @type {SpeechSegmentConfig}
|
|
6507
|
+
* @memberof StartClosedCaptionsRequest
|
|
6508
|
+
*/
|
|
6509
|
+
speech_segment_config?: SpeechSegmentConfig;
|
|
6399
6510
|
}
|
|
6400
6511
|
/**
|
|
6401
6512
|
* @export
|
|
@@ -6954,7 +7065,19 @@ export interface TranscriptionSettingsRequest {
|
|
|
6954
7065
|
* @type {string}
|
|
6955
7066
|
* @memberof TranscriptionSettingsRequest
|
|
6956
7067
|
*/
|
|
6957
|
-
mode
|
|
7068
|
+
mode?: TranscriptionSettingsRequestModeEnum;
|
|
7069
|
+
/**
|
|
7070
|
+
*
|
|
7071
|
+
* @type {SpeechSegmentConfig}
|
|
7072
|
+
* @memberof TranscriptionSettingsRequest
|
|
7073
|
+
*/
|
|
7074
|
+
speech_segment_config?: SpeechSegmentConfig;
|
|
7075
|
+
/**
|
|
7076
|
+
*
|
|
7077
|
+
* @type {TranslationSettings}
|
|
7078
|
+
* @memberof TranscriptionSettingsRequest
|
|
7079
|
+
*/
|
|
7080
|
+
translation?: TranslationSettings;
|
|
6958
7081
|
}
|
|
6959
7082
|
/**
|
|
6960
7083
|
* @export
|
|
@@ -7041,6 +7164,18 @@ export interface TranscriptionSettingsResponse {
|
|
|
7041
7164
|
* @memberof TranscriptionSettingsResponse
|
|
7042
7165
|
*/
|
|
7043
7166
|
mode: TranscriptionSettingsResponseModeEnum;
|
|
7167
|
+
/**
|
|
7168
|
+
*
|
|
7169
|
+
* @type {SpeechSegmentConfig}
|
|
7170
|
+
* @memberof TranscriptionSettingsResponse
|
|
7171
|
+
*/
|
|
7172
|
+
speech_segment_config?: SpeechSegmentConfig;
|
|
7173
|
+
/**
|
|
7174
|
+
*
|
|
7175
|
+
* @type {TranslationSettings}
|
|
7176
|
+
* @memberof TranscriptionSettingsResponse
|
|
7177
|
+
*/
|
|
7178
|
+
translation?: TranslationSettings;
|
|
7044
7179
|
}
|
|
7045
7180
|
/**
|
|
7046
7181
|
* @export
|
|
@@ -7103,6 +7238,25 @@ export declare const TranscriptionSettingsResponseModeEnum: {
|
|
|
7103
7238
|
readonly AUTO_ON: "auto-on";
|
|
7104
7239
|
};
|
|
7105
7240
|
export type TranscriptionSettingsResponseModeEnum = (typeof TranscriptionSettingsResponseModeEnum)[keyof typeof TranscriptionSettingsResponseModeEnum];
|
|
7241
|
+
/**
|
|
7242
|
+
*
|
|
7243
|
+
* @export
|
|
7244
|
+
* @interface TranslationSettings
|
|
7245
|
+
*/
|
|
7246
|
+
export interface TranslationSettings {
|
|
7247
|
+
/**
|
|
7248
|
+
*
|
|
7249
|
+
* @type {boolean}
|
|
7250
|
+
* @memberof TranslationSettings
|
|
7251
|
+
*/
|
|
7252
|
+
enabled?: boolean;
|
|
7253
|
+
/**
|
|
7254
|
+
*
|
|
7255
|
+
* @type {Array<string>}
|
|
7256
|
+
* @memberof TranslationSettings
|
|
7257
|
+
*/
|
|
7258
|
+
languages?: Array<string>;
|
|
7259
|
+
}
|
|
7106
7260
|
/**
|
|
7107
7261
|
* UnblockUserRequest is the payload for unblocking a user.
|
|
7108
7262
|
* @export
|
|
@@ -7983,6 +8137,19 @@ export declare const VideoSettingsResponseCameraFacingEnum: {
|
|
|
7983
8137
|
readonly EXTERNAL: "external";
|
|
7984
8138
|
};
|
|
7985
8139
|
export type VideoSettingsResponseCameraFacingEnum = (typeof VideoSettingsResponseCameraFacingEnum)[keyof typeof VideoSettingsResponseCameraFacingEnum];
|
|
8140
|
+
/**
|
|
8141
|
+
*
|
|
8142
|
+
* @export
|
|
8143
|
+
* @interface WHIPIngress
|
|
8144
|
+
*/
|
|
8145
|
+
export interface WHIPIngress {
|
|
8146
|
+
/**
|
|
8147
|
+
* URL for a new whip input, every time a new link is created
|
|
8148
|
+
* @type {string}
|
|
8149
|
+
* @memberof WHIPIngress
|
|
8150
|
+
*/
|
|
8151
|
+
address: string;
|
|
8152
|
+
}
|
|
7986
8153
|
/**
|
|
7987
8154
|
* Websocket auth message
|
|
7988
8155
|
* @export
|
|
@@ -297,6 +297,12 @@ export interface PublishOption {
|
|
|
297
297
|
* @generated from protobuf field: bool use_single_layer = 9;
|
|
298
298
|
*/
|
|
299
299
|
useSingleLayer: boolean;
|
|
300
|
+
/**
|
|
301
|
+
* Audio bitrate profiles for different audio quality profiles.
|
|
302
|
+
*
|
|
303
|
+
* @generated from protobuf field: repeated stream.video.sfu.models.AudioBitrate audio_bitrate_profiles = 10;
|
|
304
|
+
*/
|
|
305
|
+
audioBitrateProfiles: AudioBitrate[];
|
|
300
306
|
}
|
|
301
307
|
/**
|
|
302
308
|
* @generated from protobuf message stream.video.sfu.models.Codec
|
|
@@ -340,6 +346,19 @@ export interface ICETrickle {
|
|
|
340
346
|
*/
|
|
341
347
|
sessionId: string;
|
|
342
348
|
}
|
|
349
|
+
/**
|
|
350
|
+
* @generated from protobuf message stream.video.sfu.models.AudioBitrate
|
|
351
|
+
*/
|
|
352
|
+
export interface AudioBitrate {
|
|
353
|
+
/**
|
|
354
|
+
* @generated from protobuf field: stream.video.sfu.models.AudioBitrateProfile profile = 1;
|
|
355
|
+
*/
|
|
356
|
+
profile: AudioBitrateProfile;
|
|
357
|
+
/**
|
|
358
|
+
* @generated from protobuf field: int32 bitrate = 2;
|
|
359
|
+
*/
|
|
360
|
+
bitrate: number;
|
|
361
|
+
}
|
|
343
362
|
/**
|
|
344
363
|
* @generated from protobuf message stream.video.sfu.models.TrackInfo
|
|
345
364
|
*/
|
|
@@ -790,6 +809,23 @@ export declare enum ParticipantSource {
|
|
|
790
809
|
*/
|
|
791
810
|
SRT = 5
|
|
792
811
|
}
|
|
812
|
+
/**
|
|
813
|
+
* @generated from protobuf enum stream.video.sfu.models.AudioBitrateProfile
|
|
814
|
+
*/
|
|
815
|
+
export declare enum AudioBitrateProfile {
|
|
816
|
+
/**
|
|
817
|
+
* @generated from protobuf enum value: AUDIO_BITRATE_PROFILE_VOICE_STANDARD_UNSPECIFIED = 0;
|
|
818
|
+
*/
|
|
819
|
+
VOICE_STANDARD_UNSPECIFIED = 0,
|
|
820
|
+
/**
|
|
821
|
+
* @generated from protobuf enum value: AUDIO_BITRATE_PROFILE_VOICE_HIGH_QUALITY = 1;
|
|
822
|
+
*/
|
|
823
|
+
VOICE_HIGH_QUALITY = 1,
|
|
824
|
+
/**
|
|
825
|
+
* @generated from protobuf enum value: AUDIO_BITRATE_PROFILE_MUSIC_HIGH_QUALITY = 2;
|
|
826
|
+
*/
|
|
827
|
+
MUSIC_HIGH_QUALITY = 2
|
|
828
|
+
}
|
|
793
829
|
/**
|
|
794
830
|
* @generated from protobuf enum stream.video.sfu.models.ErrorCode
|
|
795
831
|
*/
|
|
@@ -1209,6 +1245,13 @@ declare class ICETrickle$Type extends MessageType<ICETrickle> {
|
|
|
1209
1245
|
* @generated MessageType for protobuf message stream.video.sfu.models.ICETrickle
|
|
1210
1246
|
*/
|
|
1211
1247
|
export declare const ICETrickle: ICETrickle$Type;
|
|
1248
|
+
declare class AudioBitrate$Type extends MessageType<AudioBitrate> {
|
|
1249
|
+
constructor();
|
|
1250
|
+
}
|
|
1251
|
+
/**
|
|
1252
|
+
* @generated MessageType for protobuf message stream.video.sfu.models.AudioBitrate
|
|
1253
|
+
*/
|
|
1254
|
+
export declare const AudioBitrate: AudioBitrate$Type;
|
|
1212
1255
|
declare class TrackInfo$Type extends MessageType<TrackInfo> {
|
|
1213
1256
|
constructor();
|
|
1214
1257
|
}
|