livekit-client 2.22.2 → 2.22.4
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/README.md +35 -0
- package/dist/livekit-client.e2ee.worker.js +1 -1
- package/dist/livekit-client.e2ee.worker.js.map +1 -1
- package/dist/livekit-client.e2ee.worker.mjs +488 -438
- package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
- package/dist/livekit-client.esm.mjs +954 -301
- package/dist/livekit-client.esm.mjs.map +1 -1
- package/dist/livekit-client.fm.worker.js +1 -1
- package/dist/livekit-client.fm.worker.js.map +1 -1
- package/dist/livekit-client.fm.worker.mjs +10 -2
- package/dist/livekit-client.fm.worker.mjs.map +1 -1
- package/dist/livekit-client.umd.js +1 -1
- package/dist/livekit-client.umd.js.map +1 -1
- package/dist/src/api/SignalClient.d.ts +4 -2
- package/dist/src/api/SignalClient.d.ts.map +1 -1
- package/dist/src/api/WebSocketStream.d.ts.map +1 -1
- package/dist/src/api/utils.d.ts +1 -0
- package/dist/src/api/utils.d.ts.map +1 -1
- package/dist/src/e2ee/E2eeManager.d.ts +26 -0
- package/dist/src/e2ee/E2eeManager.d.ts.map +1 -1
- package/dist/src/e2ee/types.d.ts +15 -1
- package/dist/src/e2ee/types.d.ts.map +1 -1
- package/dist/src/e2ee/worker/DataCryptor.d.ts.map +1 -1
- package/dist/src/e2ee/worker/ErrorRateLimiter.d.ts +21 -0
- package/dist/src/e2ee/worker/ErrorRateLimiter.d.ts.map +1 -0
- package/dist/src/e2ee/worker/FrameCryptor.d.ts +1 -18
- package/dist/src/e2ee/worker/FrameCryptor.d.ts.map +1 -1
- package/dist/src/logger.d.ts +4 -0
- package/dist/src/logger.d.ts.map +1 -1
- package/dist/src/options.d.ts +14 -0
- package/dist/src/options.d.ts.map +1 -1
- package/dist/src/room/PCTransport.d.ts +78 -7
- package/dist/src/room/PCTransport.d.ts.map +1 -1
- package/dist/src/room/PCTransportManager.d.ts.map +1 -1
- package/dist/src/room/RTCEngine.d.ts +9 -0
- package/dist/src/room/RTCEngine.d.ts.map +1 -1
- package/dist/src/room/Room.d.ts +1 -1
- package/dist/src/room/Room.d.ts.map +1 -1
- package/dist/src/room/defaults.d.ts.map +1 -1
- package/dist/src/room/errors.d.ts +18 -0
- package/dist/src/room/errors.d.ts.map +1 -1
- package/dist/src/room/events.d.ts +3 -2
- package/dist/src/room/events.d.ts.map +1 -1
- package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
- package/dist/src/room/participant/publishUtils.d.ts +16 -0
- package/dist/src/room/participant/publishUtils.d.ts.map +1 -1
- package/dist/src/room/rpc/client/RpcClientManager.d.ts.map +1 -1
- package/dist/src/room/track/LocalTrack.d.ts.map +1 -1
- package/dist/src/room/track/LocalVideoTrack.d.ts +9 -0
- package/dist/src/room/track/LocalVideoTrack.d.ts.map +1 -1
- package/dist/src/room/track/options.d.ts +1 -1
- package/dist/src/room/track/utils.d.ts +13 -0
- package/dist/src/room/track/utils.d.ts.map +1 -1
- package/dist/src/room/utils.d.ts +66 -0
- package/dist/src/room/utils.d.ts.map +1 -1
- package/dist/src/test/compressionStreamStubs.d.ts +12 -0
- package/dist/src/test/compressionStreamStubs.d.ts.map +1 -0
- package/dist/ts4.2/api/SignalClient.d.ts +187 -185
- package/dist/ts4.2/api/SignalClientStateMachine.d.ts +85 -85
- package/dist/ts4.2/api/WebSocketStream.d.ts +33 -33
- package/dist/ts4.2/api/utils.d.ts +9 -8
- package/dist/ts4.2/connectionHelper/ConnectionCheck.d.ts +30 -30
- package/dist/ts4.2/connectionHelper/checks/Checker.d.ts +62 -62
- package/dist/ts4.2/connectionHelper/checks/cloudRegion.d.ts +18 -18
- package/dist/ts4.2/connectionHelper/checks/connectionProtocol.d.ts +20 -20
- package/dist/ts4.2/connectionHelper/checks/publishAudio.d.ts +6 -6
- package/dist/ts4.2/connectionHelper/checks/publishVideo.d.ts +7 -7
- package/dist/ts4.2/connectionHelper/checks/reconnect.d.ts +6 -6
- package/dist/ts4.2/connectionHelper/checks/turn.d.ts +6 -6
- package/dist/ts4.2/connectionHelper/checks/webrtc.d.ts +6 -6
- package/dist/ts4.2/connectionHelper/checks/websocket.d.ts +6 -6
- package/dist/ts4.2/e2ee/E2eeManager.d.ts +111 -85
- package/dist/ts4.2/e2ee/KeyProvider.d.ts +54 -54
- package/dist/ts4.2/e2ee/constants.d.ts +21 -21
- package/dist/ts4.2/e2ee/errors.d.ts +12 -12
- package/dist/ts4.2/e2ee/events.d.ts +39 -39
- package/dist/ts4.2/e2ee/index.d.ts +6 -6
- package/dist/ts4.2/e2ee/types.d.ts +231 -217
- package/dist/ts4.2/e2ee/utils.d.ts +32 -32
- package/dist/ts4.2/e2ee/worker/DataCryptor.d.ts +16 -16
- package/dist/ts4.2/e2ee/worker/ErrorRateLimiter.d.ts +21 -0
- package/dist/ts4.2/e2ee/worker/FrameCryptor.d.ts +209 -226
- package/dist/ts4.2/e2ee/worker/ParticipantKeyHandler.d.ts +81 -84
- package/dist/ts4.2/e2ee/worker/e2ee.worker.d.ts +2 -2
- package/dist/ts4.2/e2ee/worker/naluUtils.d.ts +28 -28
- package/dist/ts4.2/e2ee/worker/sifPayload.d.ts +23 -23
- package/dist/ts4.2/frameMetadata/FrameMetadataManager.d.ts +53 -53
- package/dist/ts4.2/frameMetadata/frameMetadata.d.ts +33 -33
- package/dist/ts4.2/frameMetadata/types.d.ts +62 -62
- package/dist/ts4.2/frameMetadata/utils.d.ts +9 -9
- package/dist/ts4.2/frameMetadata/worker/frameMetadata.worker.d.ts +2 -2
- package/dist/ts4.2/index.d.ts +76 -76
- package/dist/ts4.2/logger.d.ts +66 -62
- package/dist/ts4.2/options.d.ts +163 -149
- package/dist/ts4.2/room/BackOffStrategy.d.ts +27 -27
- package/dist/ts4.2/room/DefaultReconnectPolicy.d.ts +8 -8
- package/dist/ts4.2/room/DeviceManager.d.ts +12 -12
- package/dist/ts4.2/room/PCTransport.d.ts +246 -175
- package/dist/ts4.2/room/PCTransportManager.d.ts +77 -77
- package/dist/ts4.2/room/RTCEngine.d.ts +269 -261
- package/dist/ts4.2/room/ReconnectPolicy.d.ts +24 -24
- package/dist/ts4.2/room/RegionUrlProvider.d.ts +36 -36
- package/dist/ts4.2/room/Room.d.ts +354 -365
- package/dist/ts4.2/room/attribute-typings.d.ts +35 -35
- package/dist/ts4.2/room/data-channel/DataChannelManager.d.ts +62 -62
- package/dist/ts4.2/room/data-channel/FlowControlledDataChannel.d.ts +94 -95
- package/dist/ts4.2/room/data-channel/LossyDataChannel.d.ts +41 -41
- package/dist/ts4.2/room/data-channel/ReliableDataChannel.d.ts +57 -57
- package/dist/ts4.2/room/data-channel/types.d.ts +12 -12
- package/dist/ts4.2/room/data-stream/compression.d.ts +49 -49
- package/dist/ts4.2/room/data-stream/constants.d.ts +18 -18
- package/dist/ts4.2/room/data-stream/incoming/IncomingDataStreamManager.d.ts +29 -29
- package/dist/ts4.2/room/data-stream/incoming/StreamReader.d.ts +80 -80
- package/dist/ts4.2/room/data-stream/outgoing/OutgoingDataStreamManager.d.ts +73 -73
- package/dist/ts4.2/room/data-stream/outgoing/StreamWriter.d.ts +16 -16
- package/dist/ts4.2/room/data-stream/outgoing/header-utils.d.ts +18 -18
- package/dist/ts4.2/room/data-track/LocalDataTrack.d.ts +79 -80
- package/dist/ts4.2/room/data-track/RemoteDataTrack.d.ts +50 -50
- package/dist/ts4.2/room/data-track/depacketizer.d.ts +59 -59
- package/dist/ts4.2/room/data-track/frame.d.ts +22 -22
- package/dist/ts4.2/room/data-track/handle.d.ts +27 -27
- package/dist/ts4.2/room/data-track/incoming/IncomingDataTrackManager.d.ts +124 -124
- package/dist/ts4.2/room/data-track/incoming/errors.d.ts +24 -24
- package/dist/ts4.2/room/data-track/incoming/pipeline.d.ts +41 -41
- package/dist/ts4.2/room/data-track/incoming/types.d.ts +20 -20
- package/dist/ts4.2/room/data-track/outgoing/OutgoingDataTrackManager.d.ts +126 -126
- package/dist/ts4.2/room/data-track/outgoing/errors.d.ts +74 -74
- package/dist/ts4.2/room/data-track/outgoing/pipeline.d.ts +23 -23
- package/dist/ts4.2/room/data-track/outgoing/types.d.ts +48 -48
- package/dist/ts4.2/room/data-track/packet/constants.d.ts +20 -20
- package/dist/ts4.2/room/data-track/packet/errors.d.ts +40 -40
- package/dist/ts4.2/room/data-track/packet/extensions.d.ts +69 -69
- package/dist/ts4.2/room/data-track/packet/index.d.ts +98 -98
- package/dist/ts4.2/room/data-track/packet/serializable.d.ts +13 -13
- package/dist/ts4.2/room/data-track/packetizer.d.ts +43 -43
- package/dist/ts4.2/room/data-track/track-interfaces.d.ts +23 -23
- package/dist/ts4.2/room/data-track/types.d.ts +22 -22
- package/dist/ts4.2/room/data-track/utils.d.ts +60 -60
- package/dist/ts4.2/room/debounce.d.ts +11 -11
- package/dist/ts4.2/room/defaults.d.ts +9 -9
- package/dist/ts4.2/room/errors.d.ts +180 -162
- package/dist/ts4.2/room/events.d.ts +638 -637
- package/dist/ts4.2/room/participant/LocalParticipant.d.ts +287 -287
- package/dist/ts4.2/room/participant/Participant.d.ts +142 -144
- package/dist/ts4.2/room/participant/ParticipantTrackPermission.d.ts +26 -26
- package/dist/ts4.2/room/participant/RemoteParticipant.d.ts +85 -86
- package/dist/ts4.2/room/participant/publishUtils.d.ts +53 -37
- package/dist/ts4.2/room/rpc/client/RpcClientManager.d.ts +43 -43
- package/dist/ts4.2/room/rpc/client/events.d.ts +8 -8
- package/dist/ts4.2/room/rpc/index.d.ts +7 -7
- package/dist/ts4.2/room/rpc/server/RpcServerManager.d.ts +44 -44
- package/dist/ts4.2/room/rpc/server/events.d.ts +8 -8
- package/dist/ts4.2/room/rpc/utils.d.ts +131 -131
- package/dist/ts4.2/room/stats.d.ts +71 -71
- package/dist/ts4.2/room/statsSummary.d.ts +13 -13
- package/dist/ts4.2/room/timers.d.ts +12 -12
- package/dist/ts4.2/room/token-source/TokenSource.d.ts +82 -82
- package/dist/ts4.2/room/token-source/types.d.ts +70 -70
- package/dist/ts4.2/room/token-source/utils.d.ts +8 -8
- package/dist/ts4.2/room/track/FrameMetadataExtractor.d.ts +19 -19
- package/dist/ts4.2/room/track/LocalAudioTrack.d.ts +39 -42
- package/dist/ts4.2/room/track/LocalTrack.d.ts +125 -125
- package/dist/ts4.2/room/track/LocalTrackPublication.d.ts +42 -42
- package/dist/ts4.2/room/track/LocalVideoTrack.d.ts +102 -93
- package/dist/ts4.2/room/track/RemoteAudioTrack.d.ts +55 -55
- package/dist/ts4.2/room/track/RemoteTrack.d.ts +38 -38
- package/dist/ts4.2/room/track/RemoteTrackPublication.d.ts +72 -75
- package/dist/ts4.2/room/track/RemoteVideoTrack.d.ts +73 -76
- package/dist/ts4.2/room/track/Track.d.ts +156 -166
- package/dist/ts4.2/room/track/TrackPublication.d.ts +75 -81
- package/dist/ts4.2/room/track/create.d.ts +25 -25
- package/dist/ts4.2/room/track/facingMode.d.ts +41 -41
- package/dist/ts4.2/room/track/options.d.ts +403 -403
- package/dist/ts4.2/room/track/processor/types.d.ts +31 -31
- package/dist/ts4.2/room/track/record.d.ts +13 -13
- package/dist/ts4.2/room/track/types.d.ts +28 -28
- package/dist/ts4.2/room/track/utils.d.ts +60 -47
- package/dist/ts4.2/room/types.d.ts +127 -127
- package/dist/ts4.2/room/utils.d.ts +246 -180
- package/dist/ts4.2/test/MockMediaStreamTrack.d.ts +26 -26
- package/dist/ts4.2/test/compressionStreamStubs.d.ts +12 -0
- package/dist/ts4.2/test/mocks.d.ts +12 -12
- package/dist/ts4.2/test/promiseState.d.ts +12 -12
- package/dist/ts4.2/test/signalToken.d.ts +26 -26
- package/dist/ts4.2/type-polyfills/non-shared-typed-arrays.d.ts +2 -2
- package/dist/ts4.2/utils/AsyncQueue.d.ts +23 -23
- package/dist/ts4.2/utils/TypedPromise.d.ts +17 -17
- package/dist/ts4.2/utils/abort-signal-polyfill.d.ts +13 -13
- package/dist/ts4.2/utils/browserParser.d.ts +13 -13
- package/dist/ts4.2/utils/camelToSnakeCase.d.ts +8 -8
- package/dist/ts4.2/utils/cloneDeep.d.ts +2 -2
- package/dist/ts4.2/utils/dataPacketBuffer.d.ts +34 -34
- package/dist/ts4.2/utils/deferrable-map.d.ts +32 -32
- package/dist/ts4.2/utils/machineInspector.d.ts +54 -54
- package/dist/ts4.2/utils/serializer.d.ts +48 -48
- package/dist/ts4.2/utils/subscribeToEvents.d.ts +15 -15
- package/dist/ts4.2/utils/ttlmap.d.ts +20 -20
- package/dist/ts4.2/version.d.ts +15 -15
- package/package.json +5 -4
- package/src/api/SignalClient.e2e.test.ts +1 -3
- package/src/api/SignalClient.test.ts +160 -10
- package/src/api/SignalClient.ts +75 -54
- package/src/api/WebSocketStream.ts +3 -8
- package/src/api/utils.ts +10 -0
- package/src/e2ee/E2eeManager.test.ts +196 -0
- package/src/e2ee/E2eeManager.ts +114 -19
- package/src/e2ee/types.ts +19 -1
- package/src/e2ee/worker/DataCryptor.ts +2 -1
- package/src/e2ee/worker/ErrorRateLimiter.test.ts +53 -0
- package/src/e2ee/worker/ErrorRateLimiter.ts +52 -0
- package/src/e2ee/worker/FrameCryptor.ts +20 -70
- package/src/e2ee/worker/e2ee.worker.ts +34 -11
- package/src/logger.ts +22 -0
- package/src/options.ts +16 -0
- package/src/room/PCTransport.test.ts +183 -7
- package/src/room/PCTransport.ts +197 -36
- package/src/room/PCTransportManager.ts +3 -1
- package/src/room/RTCEngine.test.ts +84 -0
- package/src/room/RTCEngine.ts +52 -12
- package/src/room/Room.test.ts +32 -6
- package/src/room/Room.ts +27 -7
- package/src/room/data-stream/incoming/IncomingDataStreamManager.test.ts +16 -20
- package/src/room/data-stream/incoming/IncomingDataStreamManager.ts +5 -5
- package/src/room/data-stream/outgoing/OutgoingDataStreamManager.test.ts +60 -39
- package/src/room/data-stream/outgoing/OutgoingDataStreamManager.ts +4 -4
- package/src/room/defaults.ts +1 -0
- package/src/room/errors.test.ts +36 -0
- package/src/room/errors.ts +27 -0
- package/src/room/events.ts +2 -1
- package/src/room/participant/LocalParticipant.ts +30 -14
- package/src/room/participant/publishUtils.test.ts +133 -0
- package/src/room/participant/publishUtils.ts +54 -38
- package/src/room/rpc/client/RpcClientManager.test.ts +51 -0
- package/src/room/rpc/client/RpcClientManager.ts +32 -15
- package/src/room/track/LocalTrack.ts +18 -7
- package/src/room/track/LocalVideoTrack.ts +25 -8
- package/src/room/track/RemoteAudioTrack.ts +3 -3
- package/src/room/track/RemoteVideoTrack.test.ts +210 -0
- package/src/room/track/RemoteVideoTrack.ts +29 -3
- package/src/room/track/options.ts +1 -1
- package/src/room/track/utils.test.ts +201 -2
- package/src/room/track/utils.ts +88 -0
- package/src/room/utils.test.ts +211 -0
- package/src/room/utils.ts +129 -0
- package/src/test/compressionStreamStubs.ts +53 -0
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
import type { LoggerOptions } from '../types';
|
|
2
|
-
import { Track } from './Track';
|
|
3
|
-
export default abstract class RemoteTrack<TrackKind extends Track.Kind = Track.Kind> extends Track<TrackKind> {
|
|
4
|
-
/** @internal */
|
|
5
|
-
receiver: RTCRtpReceiver | undefined;
|
|
6
|
-
constructor(mediaTrack: MediaStreamTrack, sid: string, kind: TrackKind, receiver: RTCRtpReceiver, loggerOptions?: LoggerOptions);
|
|
7
|
-
get isLocal(): boolean;
|
|
8
|
-
/** @internal */
|
|
9
|
-
setMuted(muted: boolean): void;
|
|
10
|
-
/** @internal */
|
|
11
|
-
setMediaStream(stream: MediaStream): void;
|
|
12
|
-
start(): void;
|
|
13
|
-
stop(): void;
|
|
14
|
-
/**
|
|
15
|
-
* Gets the RTCStatsReport for the RemoteTrack's underlying RTCRtpReceiver
|
|
16
|
-
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
|
17
|
-
*
|
|
18
|
-
* @returns Promise<RTCStatsReport> | undefined
|
|
19
|
-
*/
|
|
20
|
-
getRTCStatsReport(): Promise<RTCStatsReport | undefined>;
|
|
21
|
-
/**
|
|
22
|
-
* Allows to set a playout delay (in seconds) for this track.
|
|
23
|
-
* A higher value allows for more buffering of the track in the browser
|
|
24
|
-
* and will result in a delay of media being played back of `delayInSeconds`
|
|
25
|
-
*/
|
|
26
|
-
setPlayoutDelay(delayInSeconds: number): void;
|
|
27
|
-
/**
|
|
28
|
-
* Returns the current playout delay (in seconds) of this track.
|
|
29
|
-
*/
|
|
30
|
-
getPlayoutDelay(): number;
|
|
31
|
-
startMonitor(): void;
|
|
32
|
-
stopMonitor(): void;
|
|
33
|
-
protected abstract monitorReceiver(): void;
|
|
34
|
-
private timeSyncLoop;
|
|
35
|
-
private onTimeSyncListenerAdded;
|
|
36
|
-
registerTimeSyncUpdate(): void;
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=RemoteTrack.d.ts.map
|
|
1
|
+
import type { LoggerOptions } from '../types';
|
|
2
|
+
import { Track } from './Track';
|
|
3
|
+
export default abstract class RemoteTrack<TrackKind extends Track.Kind = Track.Kind> extends Track<TrackKind> {
|
|
4
|
+
/** @internal */
|
|
5
|
+
receiver: RTCRtpReceiver | undefined;
|
|
6
|
+
constructor(mediaTrack: MediaStreamTrack, sid: string, kind: TrackKind, receiver: RTCRtpReceiver, loggerOptions?: LoggerOptions);
|
|
7
|
+
get isLocal(): boolean;
|
|
8
|
+
/** @internal */
|
|
9
|
+
setMuted(muted: boolean): void;
|
|
10
|
+
/** @internal */
|
|
11
|
+
setMediaStream(stream: MediaStream): void;
|
|
12
|
+
start(): void;
|
|
13
|
+
stop(): void;
|
|
14
|
+
/**
|
|
15
|
+
* Gets the RTCStatsReport for the RemoteTrack's underlying RTCRtpReceiver
|
|
16
|
+
* See https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport
|
|
17
|
+
*
|
|
18
|
+
* @returns Promise<RTCStatsReport> | undefined
|
|
19
|
+
*/
|
|
20
|
+
getRTCStatsReport(): Promise<RTCStatsReport | undefined>;
|
|
21
|
+
/**
|
|
22
|
+
* Allows to set a playout delay (in seconds) for this track.
|
|
23
|
+
* A higher value allows for more buffering of the track in the browser
|
|
24
|
+
* and will result in a delay of media being played back of `delayInSeconds`
|
|
25
|
+
*/
|
|
26
|
+
setPlayoutDelay(delayInSeconds: number): void;
|
|
27
|
+
/**
|
|
28
|
+
* Returns the current playout delay (in seconds) of this track.
|
|
29
|
+
*/
|
|
30
|
+
getPlayoutDelay(): number;
|
|
31
|
+
startMonitor(): void;
|
|
32
|
+
stopMonitor(): void;
|
|
33
|
+
protected abstract monitorReceiver(): void;
|
|
34
|
+
private timeSyncLoop;
|
|
35
|
+
private onTimeSyncListenerAdded;
|
|
36
|
+
registerTimeSyncUpdate(): void;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=RemoteTrack.d.ts.map
|
|
@@ -1,75 +1,72 @@
|
|
|
1
|
-
import { SubscriptionError, TrackInfo } from '@livekit/protocol';
|
|
2
|
-
import type { LoggerOptions } from '../types';
|
|
3
|
-
import type RemoteTrack from './RemoteTrack';
|
|
4
|
-
import { Track, VideoQuality } from './Track';
|
|
5
|
-
import { TrackPublication } from './TrackPublication';
|
|
6
|
-
export default class RemoteTrackPublication extends TrackPublication {
|
|
7
|
-
track?: RemoteTrack;
|
|
8
|
-
/** @internal */
|
|
9
|
-
protected allowed: boolean;
|
|
10
|
-
protected subscribed?: boolean;
|
|
11
|
-
protected requestedDisabled: boolean | undefined;
|
|
12
|
-
protected visible: boolean;
|
|
13
|
-
protected videoDimensionsAdaptiveStream?: Track.Dimensions;
|
|
14
|
-
protected requestedVideoDimensions?: Track.Dimensions;
|
|
15
|
-
protected requestedMaxQuality?: VideoQuality;
|
|
16
|
-
protected fps?: number;
|
|
17
|
-
protected subscriptionError?: SubscriptionError;
|
|
18
|
-
constructor(kind: Track.Kind, ti: TrackInfo, autoSubscribe: boolean | undefined, loggerOptions?: LoggerOptions);
|
|
19
|
-
/**
|
|
20
|
-
* Subscribe or unsubscribe to this remote track
|
|
21
|
-
* @param subscribed true to subscribe to a track, false to unsubscribe
|
|
22
|
-
*/
|
|
23
|
-
setSubscribed(subscribed: boolean): void;
|
|
24
|
-
get subscriptionStatus(): TrackPublication.SubscriptionStatus;
|
|
25
|
-
get permissionStatus(): TrackPublication.PermissionStatus;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
get
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
*
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
protected
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
emitTrackUpdate(): void;
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=RemoteTrackPublication.d.ts.map
|
|
1
|
+
import { SubscriptionError, TrackInfo } from '@livekit/protocol';
|
|
2
|
+
import type { LoggerOptions } from '../types';
|
|
3
|
+
import type RemoteTrack from './RemoteTrack';
|
|
4
|
+
import { Track, VideoQuality } from './Track';
|
|
5
|
+
import { TrackPublication } from './TrackPublication';
|
|
6
|
+
export default class RemoteTrackPublication extends TrackPublication {
|
|
7
|
+
track?: RemoteTrack;
|
|
8
|
+
/** @internal */
|
|
9
|
+
protected allowed: boolean;
|
|
10
|
+
protected subscribed?: boolean;
|
|
11
|
+
protected requestedDisabled: boolean | undefined;
|
|
12
|
+
protected visible: boolean;
|
|
13
|
+
protected videoDimensionsAdaptiveStream?: Track.Dimensions;
|
|
14
|
+
protected requestedVideoDimensions?: Track.Dimensions;
|
|
15
|
+
protected requestedMaxQuality?: VideoQuality;
|
|
16
|
+
protected fps?: number;
|
|
17
|
+
protected subscriptionError?: SubscriptionError;
|
|
18
|
+
constructor(kind: Track.Kind, ti: TrackInfo, autoSubscribe: boolean | undefined, loggerOptions?: LoggerOptions);
|
|
19
|
+
/**
|
|
20
|
+
* Subscribe or unsubscribe to this remote track
|
|
21
|
+
* @param subscribed true to subscribe to a track, false to unsubscribe
|
|
22
|
+
*/
|
|
23
|
+
setSubscribed(subscribed: boolean): void;
|
|
24
|
+
get subscriptionStatus(): TrackPublication.SubscriptionStatus;
|
|
25
|
+
get permissionStatus(): TrackPublication.PermissionStatus;
|
|
26
|
+
get isSubscribed(): boolean;
|
|
27
|
+
get isDesired(): boolean;
|
|
28
|
+
get isEnabled(): boolean;
|
|
29
|
+
get isLocal(): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* disable server from sending down data for this track. this is useful when
|
|
32
|
+
* the participant is off screen, you may disable streaming down their video
|
|
33
|
+
* to reduce bandwidth requirements
|
|
34
|
+
* @param enabled
|
|
35
|
+
*/
|
|
36
|
+
setEnabled(enabled: boolean): void;
|
|
37
|
+
/**
|
|
38
|
+
* for tracks that support simulcasting, adjust subscribed quality
|
|
39
|
+
*
|
|
40
|
+
* This indicates the highest quality the client can accept. if network
|
|
41
|
+
* bandwidth does not allow, server will automatically reduce quality to
|
|
42
|
+
* optimize for uninterrupted video
|
|
43
|
+
*/
|
|
44
|
+
setVideoQuality(quality: VideoQuality): void;
|
|
45
|
+
/**
|
|
46
|
+
* Explicitly set the video dimensions for this track.
|
|
47
|
+
*
|
|
48
|
+
* This will take precedence over adaptive stream dimensions.
|
|
49
|
+
*
|
|
50
|
+
* @param dimensions The video dimensions to set.
|
|
51
|
+
*/
|
|
52
|
+
setVideoDimensions(dimensions: Track.Dimensions): void;
|
|
53
|
+
setVideoFPS(fps: number): void;
|
|
54
|
+
get videoQuality(): (VideoQuality | undefined);
|
|
55
|
+
/** @internal */
|
|
56
|
+
setTrack(track?: RemoteTrack): void;
|
|
57
|
+
/** @internal */
|
|
58
|
+
setAllowed(allowed: boolean): void;
|
|
59
|
+
/** @internal */
|
|
60
|
+
setSubscriptionError(error: SubscriptionError): void;
|
|
61
|
+
/** @internal */
|
|
62
|
+
updateInfo(info: TrackInfo): void;
|
|
63
|
+
private emitSubscriptionUpdateIfChanged;
|
|
64
|
+
private emitPermissionUpdateIfChanged;
|
|
65
|
+
private isManualOperationAllowed;
|
|
66
|
+
protected handleEnded: (track: RemoteTrack) => void;
|
|
67
|
+
protected get isAdaptiveStream(): boolean;
|
|
68
|
+
protected handleVisibilityChange: (visible: boolean) => void;
|
|
69
|
+
protected handleVideoDimensionsChange: (dimensions: Track.Dimensions) => void;
|
|
70
|
+
emitTrackUpdate(): void;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=RemoteTrackPublication.d.ts.map
|
|
@@ -1,76 +1,73 @@
|
|
|
1
|
-
import type { FrameMetadata } from '../../frameMetadata/types';
|
|
2
|
-
import type { VideoReceiverStats } from '../stats';
|
|
3
|
-
import type { LoggerOptions } from '../types';
|
|
4
|
-
import type { FrameMetadataExtractor } from './FrameMetadataExtractor';
|
|
5
|
-
import RemoteTrack from './RemoteTrack';
|
|
6
|
-
import { Track } from './Track';
|
|
7
|
-
import type { AdaptiveStreamSettings } from './types';
|
|
8
|
-
export default class RemoteVideoTrack extends RemoteTrack<Track.Kind.Video> {
|
|
9
|
-
private prevStats?;
|
|
10
|
-
private elementInfos;
|
|
11
|
-
private adaptiveStreamSettings?;
|
|
12
|
-
private lastVisible?;
|
|
13
|
-
private lastDimensions?;
|
|
14
|
-
/** @internal */
|
|
15
|
-
frameMetadataExtractor?: FrameMetadataExtractor;
|
|
16
|
-
constructor(mediaTrack: MediaStreamTrack, sid: string, receiver: RTCRtpReceiver, adaptiveStreamSettings?: AdaptiveStreamSettings, loggerOptions?: LoggerOptions);
|
|
17
|
-
get isAdaptiveStream(): boolean;
|
|
18
|
-
/**
|
|
19
|
-
* Look up frame-level metadata for a given RTP timestamp.
|
|
20
|
-
* Use with the `TrackEvent.TimeSyncUpdate` event to correlate displayed frames
|
|
21
|
-
* with their capture-time metadata.
|
|
22
|
-
*
|
|
23
|
-
* Requires the room to be configured with the `frameMetadata` worker option
|
|
24
|
-
* and the publishing track to have frame metadata features enabled.
|
|
25
|
-
*
|
|
26
|
-
*/
|
|
27
|
-
lookupFrameMetadata({ rtpTimestamp }: {
|
|
28
|
-
rtpTimestamp: number;
|
|
29
|
-
}): FrameMetadata | undefined;
|
|
30
|
-
setStreamState(value: Track.StreamState): void;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
protected
|
|
56
|
-
|
|
57
|
-
private
|
|
58
|
-
|
|
59
|
-
private
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
stopObserving(): void;
|
|
75
|
-
}
|
|
76
|
-
//# sourceMappingURL=RemoteVideoTrack.d.ts.map
|
|
1
|
+
import type { FrameMetadata } from '../../frameMetadata/types';
|
|
2
|
+
import type { VideoReceiverStats } from '../stats';
|
|
3
|
+
import type { LoggerOptions } from '../types';
|
|
4
|
+
import type { FrameMetadataExtractor } from './FrameMetadataExtractor';
|
|
5
|
+
import RemoteTrack from './RemoteTrack';
|
|
6
|
+
import { Track } from './Track';
|
|
7
|
+
import type { AdaptiveStreamSettings } from './types';
|
|
8
|
+
export default class RemoteVideoTrack extends RemoteTrack<Track.Kind.Video> {
|
|
9
|
+
private prevStats?;
|
|
10
|
+
private elementInfos;
|
|
11
|
+
private adaptiveStreamSettings?;
|
|
12
|
+
private lastVisible?;
|
|
13
|
+
private lastDimensions?;
|
|
14
|
+
/** @internal */
|
|
15
|
+
frameMetadataExtractor?: FrameMetadataExtractor;
|
|
16
|
+
constructor(mediaTrack: MediaStreamTrack, sid: string, receiver: RTCRtpReceiver, adaptiveStreamSettings?: AdaptiveStreamSettings, loggerOptions?: LoggerOptions);
|
|
17
|
+
get isAdaptiveStream(): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Look up frame-level metadata for a given RTP timestamp.
|
|
20
|
+
* Use with the `TrackEvent.TimeSyncUpdate` event to correlate displayed frames
|
|
21
|
+
* with their capture-time metadata.
|
|
22
|
+
*
|
|
23
|
+
* Requires the room to be configured with the `frameMetadata` worker option
|
|
24
|
+
* and the publishing track to have frame metadata features enabled.
|
|
25
|
+
*
|
|
26
|
+
*/
|
|
27
|
+
lookupFrameMetadata({ rtpTimestamp }: {
|
|
28
|
+
rtpTimestamp: number;
|
|
29
|
+
}): FrameMetadata | undefined;
|
|
30
|
+
setStreamState(value: Track.StreamState): void;
|
|
31
|
+
get mediaStreamTrack(): MediaStreamTrack;
|
|
32
|
+
/** @internal */
|
|
33
|
+
setMuted(muted: boolean): void;
|
|
34
|
+
attach(): HTMLMediaElement;
|
|
35
|
+
attach(element: HTMLMediaElement): HTMLMediaElement;
|
|
36
|
+
/**
|
|
37
|
+
* Observe an ElementInfo for changes when adaptive streaming.
|
|
38
|
+
* @param elementInfo
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
observeElementInfo(elementInfo: ElementInfo): void;
|
|
42
|
+
/**
|
|
43
|
+
* Stop observing an ElementInfo for changes.
|
|
44
|
+
* @param elementInfo
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
stopObservingElementInfo(elementInfo: ElementInfo): void;
|
|
48
|
+
detach(): HTMLMediaElement[];
|
|
49
|
+
detach(element: HTMLMediaElement): HTMLMediaElement;
|
|
50
|
+
/** @internal */
|
|
51
|
+
getDecoderImplementation(): string | undefined;
|
|
52
|
+
protected monitorReceiver: () => Promise<void>;
|
|
53
|
+
getReceiverStats(): Promise<VideoReceiverStats | undefined>;
|
|
54
|
+
private stopObservingElement;
|
|
55
|
+
protected handleAppVisibilityChanged(): Promise<void>;
|
|
56
|
+
private readonly debouncedHandleResize;
|
|
57
|
+
private updateVisibility;
|
|
58
|
+
private updateDimensions;
|
|
59
|
+
private getPixelDensity;
|
|
60
|
+
}
|
|
61
|
+
export interface ElementInfo {
|
|
62
|
+
element: object;
|
|
63
|
+
width(): number;
|
|
64
|
+
height(): number;
|
|
65
|
+
visible: boolean;
|
|
66
|
+
pictureInPicture: boolean;
|
|
67
|
+
visibilityChangedAt: number | undefined;
|
|
68
|
+
handleResize?: () => void;
|
|
69
|
+
handleVisibilityChanged?: () => void;
|
|
70
|
+
observe(): void;
|
|
71
|
+
stopObserving(): void;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=RemoteVideoTrack.d.ts.map
|