@whereby.com/media 1.32.0 → 1.33.0

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/dist/index.cjs CHANGED
@@ -2517,12 +2517,6 @@ const ADDITIONAL_SCREEN_SHARE_SETTINGS = {
2517
2517
  { scaleResolutionDownBy: 1, dtx: true, maxBitrate: 1500000 },
2518
2518
  ],
2519
2519
  };
2520
- const ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9 = {
2521
- encodings: [{ scalabilityMode: "L2T2", dtx: true, maxBitrate: 1500000 }],
2522
- };
2523
- const SCREEN_SHARE_SETTINGS_VP9 = {
2524
- encodings: [{ dtx: true }],
2525
- };
2526
2520
  const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresenting = false) => {
2527
2521
  const { lowDataModeEnabled, simulcastScreenshareOn, vp9On } = features;
2528
2522
  if (kind === "audio") {
@@ -2532,7 +2526,6 @@ const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresent
2532
2526
  const isVp9Available = isChrome && vp9On;
2533
2527
  if (isScreenShare) {
2534
2528
  return getScreenShareMediaSettings({
2535
- isVp9Available,
2536
2529
  isSomeoneAlreadyPresenting,
2537
2530
  simulcastScreenshareOn,
2538
2531
  });
@@ -2556,14 +2549,10 @@ const getCameraMediaSettings = ({ lowBandwidth, isVp9Available, }) => {
2556
2549
  }
2557
2550
  return VIDEO_SETTINGS_HD;
2558
2551
  };
2559
- const getScreenShareMediaSettings = ({ isVp9Available, isSomeoneAlreadyPresenting, simulcastScreenshareOn, }) => {
2552
+ const getScreenShareMediaSettings = ({ isSomeoneAlreadyPresenting, simulcastScreenshareOn, }) => {
2560
2553
  if (isSomeoneAlreadyPresenting) {
2561
- if (isVp9Available)
2562
- return ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9;
2563
2554
  return ADDITIONAL_SCREEN_SHARE_SETTINGS;
2564
2555
  }
2565
- if (isVp9Available)
2566
- return SCREEN_SHARE_SETTINGS_VP9;
2567
2556
  if (simulcastScreenshareOn)
2568
2557
  return SCREEN_SHARE_SIMULCAST_SETTINGS;
2569
2558
  return SCREEN_SHARE_SETTINGS;
@@ -5092,7 +5081,7 @@ class VegaRtcManager {
5092
5081
  }
5093
5082
  if (this._screenVideoTrack)
5094
5083
  this._emitScreenshareStarted();
5095
- if (this._features.sfuReconnectV2On && this._reconnect) {
5084
+ if (this._reconnect) {
5096
5085
  this._connect();
5097
5086
  }
5098
5087
  }), this._serverSocket.on("connect", () => this._onNetworkIsDetectedUpBySignal()), this._serverSocket.onEngineEvent("packet", () => this._onNetworkIsDetectedUpBySignal()), this._serverSocket.on("disconnect", () => this._onNetworkIsDetectedPossiblyDownBySignal()));
@@ -5105,19 +5094,17 @@ class VegaRtcManager {
5105
5094
  });
5106
5095
  }
5107
5096
  _connect() {
5108
- if (this._features.sfuReconnectV2On) {
5109
- if (this._isConnectingOrConnected)
5097
+ if (this._isConnectingOrConnected)
5098
+ return;
5099
+ if (!this._serverSocket.isConnected()) {
5100
+ const reconnectThresholdInMs = this._serverSocket.getReconnectThreshold();
5101
+ if (!reconnectThresholdInMs)
5102
+ return;
5103
+ if (Date.now() > (this._serverSocket.disconnectTimestamp || 0) + reconnectThresholdInMs)
5110
5104
  return;
5111
- if (!this._serverSocket.isConnected()) {
5112
- const reconnectThresholdInMs = this._serverSocket.getReconnectThreshold();
5113
- if (!reconnectThresholdInMs)
5114
- return;
5115
- if (Date.now() > (this._serverSocket.disconnectTimestamp || 0) + reconnectThresholdInMs)
5116
- return;
5117
- }
5118
- if (this._reconnectTimeOut)
5119
- clearTimeout(this._reconnectTimeOut);
5120
5105
  }
5106
+ if (this._reconnectTimeOut)
5107
+ clearTimeout(this._reconnectTimeOut);
5121
5108
  if (!this._vegaConnectionManager) {
5122
5109
  const hostList = this._features.sfuServersOverride ||
5123
5110
  this._sfuServers ||
@@ -5629,12 +5616,16 @@ class VegaRtcManager {
5629
5616
  return __awaiter(this, void 0, void 0, function* () {
5630
5617
  logger$3.info("_internalSendScreenVideo()");
5631
5618
  this._screenVideoProducerPromise = (() => __awaiter(this, void 0, void 0, function* () {
5619
+ var _a, _b;
5632
5620
  try {
5633
5621
  if (!this._screenVideoTrack || !this._sendTransport || this._screenVideoProducer) {
5634
5622
  this._screenVideoProducerPromise = null;
5635
5623
  return;
5636
5624
  }
5637
- const producer = yield this._sendTransport.produce(Object.assign(Object.assign({ track: this._screenVideoTrack, disableTrackOnPause: false, stopTracks: false }, getMediaSettings("video", true, Object.assign(Object.assign({}, this._features), { vp9On: this._features.sfuVp9On }), this._getIsSomeoneAlreadyPresenting())), { appData: {
5625
+ const codec = this._features.sfuVp9On
5626
+ ? (_b = (_a = this._routerRtpCapabilities) === null || _a === void 0 ? void 0 : _a.codecs) === null || _b === void 0 ? void 0 : _b.find((codec) => codec.mimeType.match(/vp8/i))
5627
+ : undefined;
5628
+ const producer = yield this._sendTransport.produce(Object.assign(Object.assign({ track: this._screenVideoTrack, disableTrackOnPause: false, stopTracks: false, codec }, getMediaSettings("video", true, Object.assign(Object.assign({}, this._features), { vp9On: false }), this._getIsSomeoneAlreadyPresenting())), { appData: {
5638
5629
  streamId: OUTBOUND_SCREEN_OUTBOUND_STREAM_ID,
5639
5630
  sourceClientId: this._selfId,
5640
5631
  screenShare: true,
@@ -7952,7 +7943,6 @@ exports.RtcEventNames = void 0;
7952
7943
  })(exports.RtcEventNames || (exports.RtcEventNames = {}));
7953
7944
 
7954
7945
  exports.ADDITIONAL_SCREEN_SHARE_SETTINGS = ADDITIONAL_SCREEN_SHARE_SETTINGS;
7955
- exports.ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9 = ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9;
7956
7946
  exports.AUDIO_SETTINGS = AUDIO_SETTINGS;
7957
7947
  exports.BandwidthTester = BandwidthTester;
7958
7948
  exports.EVENTS = EVENTS;
@@ -7971,7 +7961,6 @@ exports.ReconnectManager = ReconnectManager;
7971
7961
  exports.RtcManagerDispatcher = RtcManagerDispatcher;
7972
7962
  exports.RtcStream = RtcStream;
7973
7963
  exports.SCREEN_SHARE_SETTINGS = SCREEN_SHARE_SETTINGS;
7974
- exports.SCREEN_SHARE_SETTINGS_VP9 = SCREEN_SHARE_SETTINGS_VP9;
7975
7964
  exports.SCREEN_SHARE_SIMULCAST_SETTINGS = SCREEN_SHARE_SIMULCAST_SETTINGS;
7976
7965
  exports.STREAM_TYPES = STREAM_TYPES;
7977
7966
  exports.ServerSocket = ServerSocket;
package/dist/index.d.cts CHANGED
@@ -656,18 +656,6 @@ declare const ADDITIONAL_SCREEN_SHARE_SETTINGS: {
656
656
  maxBitrate: number;
657
657
  }[];
658
658
  };
659
- declare const ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9: {
660
- encodings: {
661
- scalabilityMode: string;
662
- dtx: boolean;
663
- maxBitrate: number;
664
- }[];
665
- };
666
- declare const SCREEN_SHARE_SETTINGS_VP9: {
667
- encodings: {
668
- dtx: boolean;
669
- }[];
670
- };
671
659
  declare const getMediaSettings: (kind: string, isScreenShare: boolean, features: {
672
660
  lowDataModeEnabled?: boolean;
673
661
  simulcastScreenshareOn?: boolean;
@@ -1443,7 +1431,7 @@ declare class VegaRtcManager implements RtcManager {
1443
1431
  _micAnalyser: any;
1444
1432
  _micAnalyserDebugger: any;
1445
1433
  _mediasoupDevice: Device | null;
1446
- _routerRtpCapabilities: any;
1434
+ _routerRtpCapabilities: RtpCapabilities | null;
1447
1435
  _sendTransport: any;
1448
1436
  _receiveTransport: any;
1449
1437
  _clientStates: Map<string, ClientState>;
@@ -1779,5 +1767,5 @@ declare class RtcStream {
1779
1767
  static getTypeFromId(id: string): string;
1780
1768
  }
1781
1769
 
1782
- export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1770
+ export { ADDITIONAL_SCREEN_SHARE_SETTINGS, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1783
1771
  export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription, TrackStats, TurnTransportProtocol, UpdatedDeviceInfo, UpdatedDevicesInfo, VideoEnableRequest, VideoEnableRequestedEvent, VideoEnabledEvent, ViewStats, ssrcStats };
package/dist/index.d.mts CHANGED
@@ -656,18 +656,6 @@ declare const ADDITIONAL_SCREEN_SHARE_SETTINGS: {
656
656
  maxBitrate: number;
657
657
  }[];
658
658
  };
659
- declare const ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9: {
660
- encodings: {
661
- scalabilityMode: string;
662
- dtx: boolean;
663
- maxBitrate: number;
664
- }[];
665
- };
666
- declare const SCREEN_SHARE_SETTINGS_VP9: {
667
- encodings: {
668
- dtx: boolean;
669
- }[];
670
- };
671
659
  declare const getMediaSettings: (kind: string, isScreenShare: boolean, features: {
672
660
  lowDataModeEnabled?: boolean;
673
661
  simulcastScreenshareOn?: boolean;
@@ -1443,7 +1431,7 @@ declare class VegaRtcManager implements RtcManager {
1443
1431
  _micAnalyser: any;
1444
1432
  _micAnalyserDebugger: any;
1445
1433
  _mediasoupDevice: Device | null;
1446
- _routerRtpCapabilities: any;
1434
+ _routerRtpCapabilities: RtpCapabilities | null;
1447
1435
  _sendTransport: any;
1448
1436
  _receiveTransport: any;
1449
1437
  _clientStates: Map<string, ClientState>;
@@ -1779,5 +1767,5 @@ declare class RtcStream {
1779
1767
  static getTypeFromId(id: string): string;
1780
1768
  }
1781
1769
 
1782
- export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1770
+ export { ADDITIONAL_SCREEN_SHARE_SETTINGS, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1783
1771
  export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription, TrackStats, TurnTransportProtocol, UpdatedDeviceInfo, UpdatedDevicesInfo, VideoEnableRequest, VideoEnableRequestedEvent, VideoEnabledEvent, ViewStats, ssrcStats };
package/dist/index.d.ts CHANGED
@@ -656,18 +656,6 @@ declare const ADDITIONAL_SCREEN_SHARE_SETTINGS: {
656
656
  maxBitrate: number;
657
657
  }[];
658
658
  };
659
- declare const ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9: {
660
- encodings: {
661
- scalabilityMode: string;
662
- dtx: boolean;
663
- maxBitrate: number;
664
- }[];
665
- };
666
- declare const SCREEN_SHARE_SETTINGS_VP9: {
667
- encodings: {
668
- dtx: boolean;
669
- }[];
670
- };
671
659
  declare const getMediaSettings: (kind: string, isScreenShare: boolean, features: {
672
660
  lowDataModeEnabled?: boolean;
673
661
  simulcastScreenshareOn?: boolean;
@@ -1443,7 +1431,7 @@ declare class VegaRtcManager implements RtcManager {
1443
1431
  _micAnalyser: any;
1444
1432
  _micAnalyserDebugger: any;
1445
1433
  _mediasoupDevice: Device | null;
1446
- _routerRtpCapabilities: any;
1434
+ _routerRtpCapabilities: RtpCapabilities | null;
1447
1435
  _sendTransport: any;
1448
1436
  _receiveTransport: any;
1449
1437
  _clientStates: Map<string, ClientState>;
@@ -1779,5 +1767,5 @@ declare class RtcStream {
1779
1767
  static getTypeFromId(id: string): string;
1780
1768
  }
1781
1769
 
1782
- export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1770
+ export { ADDITIONAL_SCREEN_SHARE_SETTINGS, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1783
1771
  export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription, TrackStats, TurnTransportProtocol, UpdatedDeviceInfo, UpdatedDevicesInfo, VideoEnableRequest, VideoEnableRequestedEvent, VideoEnabledEvent, ViewStats, ssrcStats };
package/dist/index.mjs CHANGED
@@ -2492,12 +2492,6 @@ const ADDITIONAL_SCREEN_SHARE_SETTINGS = {
2492
2492
  { scaleResolutionDownBy: 1, dtx: true, maxBitrate: 1500000 },
2493
2493
  ],
2494
2494
  };
2495
- const ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9 = {
2496
- encodings: [{ scalabilityMode: "L2T2", dtx: true, maxBitrate: 1500000 }],
2497
- };
2498
- const SCREEN_SHARE_SETTINGS_VP9 = {
2499
- encodings: [{ dtx: true }],
2500
- };
2501
2495
  const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresenting = false) => {
2502
2496
  const { lowDataModeEnabled, simulcastScreenshareOn, vp9On } = features;
2503
2497
  if (kind === "audio") {
@@ -2507,7 +2501,6 @@ const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresent
2507
2501
  const isVp9Available = isChrome && vp9On;
2508
2502
  if (isScreenShare) {
2509
2503
  return getScreenShareMediaSettings({
2510
- isVp9Available,
2511
2504
  isSomeoneAlreadyPresenting,
2512
2505
  simulcastScreenshareOn,
2513
2506
  });
@@ -2531,14 +2524,10 @@ const getCameraMediaSettings = ({ lowBandwidth, isVp9Available, }) => {
2531
2524
  }
2532
2525
  return VIDEO_SETTINGS_HD;
2533
2526
  };
2534
- const getScreenShareMediaSettings = ({ isVp9Available, isSomeoneAlreadyPresenting, simulcastScreenshareOn, }) => {
2527
+ const getScreenShareMediaSettings = ({ isSomeoneAlreadyPresenting, simulcastScreenshareOn, }) => {
2535
2528
  if (isSomeoneAlreadyPresenting) {
2536
- if (isVp9Available)
2537
- return ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9;
2538
2529
  return ADDITIONAL_SCREEN_SHARE_SETTINGS;
2539
2530
  }
2540
- if (isVp9Available)
2541
- return SCREEN_SHARE_SETTINGS_VP9;
2542
2531
  if (simulcastScreenshareOn)
2543
2532
  return SCREEN_SHARE_SIMULCAST_SETTINGS;
2544
2533
  return SCREEN_SHARE_SETTINGS;
@@ -5067,7 +5056,7 @@ class VegaRtcManager {
5067
5056
  }
5068
5057
  if (this._screenVideoTrack)
5069
5058
  this._emitScreenshareStarted();
5070
- if (this._features.sfuReconnectV2On && this._reconnect) {
5059
+ if (this._reconnect) {
5071
5060
  this._connect();
5072
5061
  }
5073
5062
  }), this._serverSocket.on("connect", () => this._onNetworkIsDetectedUpBySignal()), this._serverSocket.onEngineEvent("packet", () => this._onNetworkIsDetectedUpBySignal()), this._serverSocket.on("disconnect", () => this._onNetworkIsDetectedPossiblyDownBySignal()));
@@ -5080,19 +5069,17 @@ class VegaRtcManager {
5080
5069
  });
5081
5070
  }
5082
5071
  _connect() {
5083
- if (this._features.sfuReconnectV2On) {
5084
- if (this._isConnectingOrConnected)
5072
+ if (this._isConnectingOrConnected)
5073
+ return;
5074
+ if (!this._serverSocket.isConnected()) {
5075
+ const reconnectThresholdInMs = this._serverSocket.getReconnectThreshold();
5076
+ if (!reconnectThresholdInMs)
5077
+ return;
5078
+ if (Date.now() > (this._serverSocket.disconnectTimestamp || 0) + reconnectThresholdInMs)
5085
5079
  return;
5086
- if (!this._serverSocket.isConnected()) {
5087
- const reconnectThresholdInMs = this._serverSocket.getReconnectThreshold();
5088
- if (!reconnectThresholdInMs)
5089
- return;
5090
- if (Date.now() > (this._serverSocket.disconnectTimestamp || 0) + reconnectThresholdInMs)
5091
- return;
5092
- }
5093
- if (this._reconnectTimeOut)
5094
- clearTimeout(this._reconnectTimeOut);
5095
5080
  }
5081
+ if (this._reconnectTimeOut)
5082
+ clearTimeout(this._reconnectTimeOut);
5096
5083
  if (!this._vegaConnectionManager) {
5097
5084
  const hostList = this._features.sfuServersOverride ||
5098
5085
  this._sfuServers ||
@@ -5604,12 +5591,16 @@ class VegaRtcManager {
5604
5591
  return __awaiter(this, void 0, void 0, function* () {
5605
5592
  logger$3.info("_internalSendScreenVideo()");
5606
5593
  this._screenVideoProducerPromise = (() => __awaiter(this, void 0, void 0, function* () {
5594
+ var _a, _b;
5607
5595
  try {
5608
5596
  if (!this._screenVideoTrack || !this._sendTransport || this._screenVideoProducer) {
5609
5597
  this._screenVideoProducerPromise = null;
5610
5598
  return;
5611
5599
  }
5612
- const producer = yield this._sendTransport.produce(Object.assign(Object.assign({ track: this._screenVideoTrack, disableTrackOnPause: false, stopTracks: false }, getMediaSettings("video", true, Object.assign(Object.assign({}, this._features), { vp9On: this._features.sfuVp9On }), this._getIsSomeoneAlreadyPresenting())), { appData: {
5600
+ const codec = this._features.sfuVp9On
5601
+ ? (_b = (_a = this._routerRtpCapabilities) === null || _a === void 0 ? void 0 : _a.codecs) === null || _b === void 0 ? void 0 : _b.find((codec) => codec.mimeType.match(/vp8/i))
5602
+ : undefined;
5603
+ const producer = yield this._sendTransport.produce(Object.assign(Object.assign({ track: this._screenVideoTrack, disableTrackOnPause: false, stopTracks: false, codec }, getMediaSettings("video", true, Object.assign(Object.assign({}, this._features), { vp9On: false }), this._getIsSomeoneAlreadyPresenting())), { appData: {
5613
5604
  streamId: OUTBOUND_SCREEN_OUTBOUND_STREAM_ID,
5614
5605
  sourceClientId: this._selfId,
5615
5606
  screenShare: true,
@@ -7926,4 +7917,4 @@ var RtcEventNames;
7926
7917
  RtcEventNames["stream_added"] = "stream_added";
7927
7918
  })(RtcEventNames || (RtcEventNames = {}));
7928
7919
 
7929
- export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
7920
+ export { ADDITIONAL_SCREEN_SHARE_SETTINGS, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
@@ -2492,12 +2492,6 @@ const ADDITIONAL_SCREEN_SHARE_SETTINGS = {
2492
2492
  { scaleResolutionDownBy: 1, dtx: true, maxBitrate: 1500000 },
2493
2493
  ],
2494
2494
  };
2495
- const ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9 = {
2496
- encodings: [{ scalabilityMode: "L2T2", dtx: true, maxBitrate: 1500000 }],
2497
- };
2498
- const SCREEN_SHARE_SETTINGS_VP9 = {
2499
- encodings: [{ dtx: true }],
2500
- };
2501
2495
  const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresenting = false) => {
2502
2496
  const { lowDataModeEnabled, simulcastScreenshareOn, vp9On } = features;
2503
2497
  if (kind === "audio") {
@@ -2507,7 +2501,6 @@ const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresent
2507
2501
  const isVp9Available = isChrome && vp9On;
2508
2502
  if (isScreenShare) {
2509
2503
  return getScreenShareMediaSettings({
2510
- isVp9Available,
2511
2504
  isSomeoneAlreadyPresenting,
2512
2505
  simulcastScreenshareOn,
2513
2506
  });
@@ -2531,14 +2524,10 @@ const getCameraMediaSettings = ({ lowBandwidth, isVp9Available, }) => {
2531
2524
  }
2532
2525
  return VIDEO_SETTINGS_HD;
2533
2526
  };
2534
- const getScreenShareMediaSettings = ({ isVp9Available, isSomeoneAlreadyPresenting, simulcastScreenshareOn, }) => {
2527
+ const getScreenShareMediaSettings = ({ isSomeoneAlreadyPresenting, simulcastScreenshareOn, }) => {
2535
2528
  if (isSomeoneAlreadyPresenting) {
2536
- if (isVp9Available)
2537
- return ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9;
2538
2529
  return ADDITIONAL_SCREEN_SHARE_SETTINGS;
2539
2530
  }
2540
- if (isVp9Available)
2541
- return SCREEN_SHARE_SETTINGS_VP9;
2542
2531
  if (simulcastScreenshareOn)
2543
2532
  return SCREEN_SHARE_SIMULCAST_SETTINGS;
2544
2533
  return SCREEN_SHARE_SETTINGS;
@@ -5067,7 +5056,7 @@ class VegaRtcManager {
5067
5056
  }
5068
5057
  if (this._screenVideoTrack)
5069
5058
  this._emitScreenshareStarted();
5070
- if (this._features.sfuReconnectV2On && this._reconnect) {
5059
+ if (this._reconnect) {
5071
5060
  this._connect();
5072
5061
  }
5073
5062
  }), this._serverSocket.on("connect", () => this._onNetworkIsDetectedUpBySignal()), this._serverSocket.onEngineEvent("packet", () => this._onNetworkIsDetectedUpBySignal()), this._serverSocket.on("disconnect", () => this._onNetworkIsDetectedPossiblyDownBySignal()));
@@ -5080,19 +5069,17 @@ class VegaRtcManager {
5080
5069
  });
5081
5070
  }
5082
5071
  _connect() {
5083
- if (this._features.sfuReconnectV2On) {
5084
- if (this._isConnectingOrConnected)
5072
+ if (this._isConnectingOrConnected)
5073
+ return;
5074
+ if (!this._serverSocket.isConnected()) {
5075
+ const reconnectThresholdInMs = this._serverSocket.getReconnectThreshold();
5076
+ if (!reconnectThresholdInMs)
5077
+ return;
5078
+ if (Date.now() > (this._serverSocket.disconnectTimestamp || 0) + reconnectThresholdInMs)
5085
5079
  return;
5086
- if (!this._serverSocket.isConnected()) {
5087
- const reconnectThresholdInMs = this._serverSocket.getReconnectThreshold();
5088
- if (!reconnectThresholdInMs)
5089
- return;
5090
- if (Date.now() > (this._serverSocket.disconnectTimestamp || 0) + reconnectThresholdInMs)
5091
- return;
5092
- }
5093
- if (this._reconnectTimeOut)
5094
- clearTimeout(this._reconnectTimeOut);
5095
5080
  }
5081
+ if (this._reconnectTimeOut)
5082
+ clearTimeout(this._reconnectTimeOut);
5096
5083
  if (!this._vegaConnectionManager) {
5097
5084
  const hostList = this._features.sfuServersOverride ||
5098
5085
  this._sfuServers ||
@@ -5604,12 +5591,16 @@ class VegaRtcManager {
5604
5591
  return __awaiter(this, void 0, void 0, function* () {
5605
5592
  logger$3.info("_internalSendScreenVideo()");
5606
5593
  this._screenVideoProducerPromise = (() => __awaiter(this, void 0, void 0, function* () {
5594
+ var _a, _b;
5607
5595
  try {
5608
5596
  if (!this._screenVideoTrack || !this._sendTransport || this._screenVideoProducer) {
5609
5597
  this._screenVideoProducerPromise = null;
5610
5598
  return;
5611
5599
  }
5612
- const producer = yield this._sendTransport.produce(Object.assign(Object.assign({ track: this._screenVideoTrack, disableTrackOnPause: false, stopTracks: false }, getMediaSettings("video", true, Object.assign(Object.assign({}, this._features), { vp9On: this._features.sfuVp9On }), this._getIsSomeoneAlreadyPresenting())), { appData: {
5600
+ const codec = this._features.sfuVp9On
5601
+ ? (_b = (_a = this._routerRtpCapabilities) === null || _a === void 0 ? void 0 : _a.codecs) === null || _b === void 0 ? void 0 : _b.find((codec) => codec.mimeType.match(/vp8/i))
5602
+ : undefined;
5603
+ const producer = yield this._sendTransport.produce(Object.assign(Object.assign({ track: this._screenVideoTrack, disableTrackOnPause: false, stopTracks: false, codec }, getMediaSettings("video", true, Object.assign(Object.assign({}, this._features), { vp9On: false }), this._getIsSomeoneAlreadyPresenting())), { appData: {
5613
5604
  streamId: OUTBOUND_SCREEN_OUTBOUND_STREAM_ID,
5614
5605
  sourceClientId: this._selfId,
5615
5606
  screenShare: true,
@@ -7926,5 +7917,5 @@ var RtcEventNames;
7926
7917
  RtcEventNames["stream_added"] = "stream_added";
7927
7918
  })(RtcEventNames || (RtcEventNames = {}));
7928
7919
 
7929
- export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
7920
+ export { ADDITIONAL_SCREEN_SHARE_SETTINGS, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
7930
7921
  //# sourceMappingURL=legacy-esm.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@whereby.com/media",
3
3
  "description": "Media library for Whereby",
4
- "version": "1.32.0",
4
+ "version": "1.33.0",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/whereby/sdk",
7
7
  "repository": {