@webex/web-client-media-engine 3.3.1 → 3.4.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.
@@ -1,6 +1,6 @@
1
1
  import { LocalStream, ConnectionState } from '@webex/webrtc-core';
2
2
  export { AudioDeviceConstraints, ConnectionState, LocalCameraStream, LocalDisplayStream, LocalMicrophoneStream, LocalStream, LocalStreamEventNames, LocalSystemAudioStream, MediaStreamTrackKind, PeerConnection, RemoteStream, StreamEventNames, VideoDeviceConstraints, WcmeError, createCameraStream, createDisplayStream, createDisplayStreamWithAudio, createMicrophoneStream, getAudioInputDevices, getAudioOutputDevices, getDevices, getVideoInputDevices, setOnDeviceChangeHandler } from '@webex/webrtc-core';
3
- import { StreamId, StreamState, MediaType, Policy, PolicySpecificInfo, CodecInfo, StreamRequest as StreamRequest$1, MediaContent } from '@webex/json-multistream';
3
+ import { StreamId, StreamState, MediaContent, MediaType, Policy, PolicySpecificInfo, CodecInfo, StreamRequest as StreamRequest$1 } from '@webex/json-multistream';
4
4
  export { ActiveSpeakerInfo, CodecInfo, H264Codec, Logger as JMPLogger, MediaContent, MediaFamily, MediaType, Policy, PolicySpecificInfo, ReceiverSelectedInfo, StreamState, getMediaContent, getMediaFamily, getMediaType } from '@webex/json-multistream';
5
5
  import { LogData } from '@webex/rtcstats';
6
6
  import TypedEmitter, { EventMap } from 'typed-emitter';
@@ -73,15 +73,15 @@ declare class ReceiveSlot extends EventEmitter<ReceiverEvents> {
73
73
  get currentRxCsi(): number | undefined;
74
74
  }
75
75
 
76
- declare type StreamSignalingMode = 'MID-RID' | 'SSRC';
77
-
78
- declare type BundlePolicy = 'max-bundle' | 'max-compat';
79
-
80
- interface EgressStreamSignaler {
81
- signalStreams(simulcastEnabled: boolean, rtxEnabled: boolean, mLine: AvMediaDescription): void;
76
+ declare class EgressSdpMunger {
77
+ private streamIds;
78
+ private customCodecParameters;
79
+ reset(): void;
80
+ mungeLocalDescription(mediaDescription: AvMediaDescription, simulcastEnabled: boolean, rtxEnabled: boolean): void;
81
+ mungeLocalDescriptionForRemoteServer(mediaDescription: AvMediaDescription, mediaContent: MediaContent, csi: number): void;
82
+ mungeRemoteDescription(mediaDescription: AvMediaDescription): void;
82
83
  getSenderIds(): StreamId[];
83
84
  getEncodingIndexForStreamId(streamId: StreamId): number;
84
- reset(): void;
85
85
  setCodecParameters(parameters: {
86
86
  [key: string]: string | undefined;
87
87
  }): void;
@@ -96,7 +96,7 @@ declare abstract class Transceiver {
96
96
  protected get receiver(): RTCRtpReceiver;
97
97
  protected get sender(): RTCRtpSender;
98
98
  close(): void;
99
- abstract resetStreamSignaler(): void;
99
+ abstract resetSdpMunger(): void;
100
100
  }
101
101
 
102
102
  declare enum OfferAnswerType {
@@ -107,7 +107,7 @@ declare class SendOnlyTransceiver extends Transceiver {
107
107
  publishedStream?: LocalStream;
108
108
  csi: number;
109
109
  private direction;
110
- private streamSignaler;
110
+ private munger;
111
111
  rtxEnabled: boolean;
112
112
  streamMuteStateChange: TypedEvent<() => void>;
113
113
  streamPublishStateChange: TypedEvent<() => void>;
@@ -115,7 +115,7 @@ declare class SendOnlyTransceiver extends Transceiver {
115
115
  private mediaType;
116
116
  private requested;
117
117
  private requestedIdEncodingParamsMap;
118
- constructor(rtcRtpTransceiver: RTCRtpTransceiver, mid: string, csi: number, signaler: EgressStreamSignaler, mediaType: MediaType);
118
+ constructor(rtcRtpTransceiver: RTCRtpTransceiver, mid: string, csi: number, munger: EgressSdpMunger, mediaType: MediaType);
119
119
  private handleTrackChange;
120
120
  private handleStreamConstraintsChange;
121
121
  private handleStreamMuteStateChange;
@@ -128,11 +128,13 @@ declare class SendOnlyTransceiver extends Transceiver {
128
128
  getStats(): Promise<RTCStatsReport>;
129
129
  updateSendParameters(requestedIdEncodingParamsMap: Map<number, EncodingParams>): Promise<void>;
130
130
  private isSimulcastEnabled;
131
- signalStreams(mLine: AvMediaDescription): void;
131
+ mungeLocalDescription(mediaDescription: AvMediaDescription): void;
132
+ mungeLocalDescriptionForRemoteServer(mediaDescription: AvMediaDescription): void;
133
+ mungeRemoteDescription(mediaDescription: AvMediaDescription): void;
132
134
  get senderIds(): StreamId[];
133
135
  get numActiveSimulcastLayers(): number | undefined;
134
136
  getEncodingIndexForStreamId(id: StreamId): number;
135
- resetStreamSignaler(): void;
137
+ resetSdpMunger(): void;
136
138
  setCodecParameters(parameters: {
137
139
  [key: string]: string | undefined;
138
140
  }): void;
@@ -187,6 +189,8 @@ interface TransceiverStats {
187
189
  };
188
190
  }
189
191
 
192
+ declare type BundlePolicy = 'max-bundle' | 'max-compat';
193
+
190
194
  declare type MetricsCallback = (logData: LogData) => void;
191
195
  declare enum MultistreamConnectionEventNames {
192
196
  VideoSourceCountUpdate = "video-source-count-update",
@@ -204,7 +208,6 @@ interface MultistreamConnectionEvents extends EventMap {
204
208
  }
205
209
  declare type MultistreamConnectionOptions = {
206
210
  disableSimulcast: boolean;
207
- streamSignalingMode: StreamSignalingMode;
208
211
  bundlePolicy: BundlePolicy;
209
212
  iceServers: RTCIceServer[] | undefined;
210
213
  disableContentSimulcast: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webex/web-client-media-engine",
3
- "version": "3.3.1",
3
+ "version": "3.4.0",
4
4
  "description": "Web Client Media Engine is common web code for interacting with the multistream media server.",
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/cjs/index.js",
@@ -57,7 +57,7 @@
57
57
  "@webex/json-multistream": "^2.0.1",
58
58
  "@webex/rtcstats": "^1.0.2",
59
59
  "@webex/ts-events": "^1.0.1",
60
- "@webex/ts-sdp": "1.3.1",
60
+ "@webex/ts-sdp": "1.5.0",
61
61
  "@webex/webrtc-core": "2.1.0",
62
62
  "async": "^3.2.4",
63
63
  "bowser": "^2.11.0",