@webex/internal-media-core 1.35.5 → 1.35.6
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/cjs/index.js +134 -131
- package/dist/esm/index.js +134 -131
- package/package.json +2 -2
package/dist/cjs/index.js
CHANGED
|
@@ -4679,6 +4679,138 @@ var media = /*#__PURE__*/Object.freeze({
|
|
|
4679
4679
|
checkDevicePermissions: checkDevicePermissions,
|
|
4680
4680
|
ensureDevicePermissions: ensureDevicePermissions
|
|
4681
4681
|
});
|
|
4682
|
+
var ErrorTypes;
|
|
4683
|
+
(function (ErrorTypes) {
|
|
4684
|
+
ErrorTypes["DEVICE_PERMISSION_DENIED"] = "DEVICE_PERMISSION_DENIED";
|
|
4685
|
+
ErrorTypes["CREATE_CAMERA_TRACK_FAILED"] = "CREATE_CAMERA_TRACK_FAILED";
|
|
4686
|
+
ErrorTypes["CREATE_MICROPHONE_TRACK_FAILED"] = "CREATE_MICROPHONE_TRACK_FAILED";
|
|
4687
|
+
})(ErrorTypes || (ErrorTypes = {}));
|
|
4688
|
+
/**
|
|
4689
|
+
* Represents a WCME error, which contains error type and error message.
|
|
4690
|
+
*/
|
|
4691
|
+
class WcmeError {
|
|
4692
|
+
/**
|
|
4693
|
+
* Creates new error.
|
|
4694
|
+
*
|
|
4695
|
+
* @param type - Error type.
|
|
4696
|
+
* @param message - Error message.
|
|
4697
|
+
*/
|
|
4698
|
+
constructor(type) {
|
|
4699
|
+
var message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
4700
|
+
this.type = type;
|
|
4701
|
+
this.message = message;
|
|
4702
|
+
}
|
|
4703
|
+
}
|
|
4704
|
+
/**
|
|
4705
|
+
* Creates a camera video track. Please note that the constraint params in second getUserMedia call would NOT take effect when:
|
|
4706
|
+
*
|
|
4707
|
+
* 1. Previous captured video track from the same device is not stopped .
|
|
4708
|
+
* 2. Previous createCameraTrack() call for the same device is in progress.
|
|
4709
|
+
*
|
|
4710
|
+
* @param constructor - Constructor for the local camera track.
|
|
4711
|
+
* @param constraints - Video device constraints.
|
|
4712
|
+
* @returns A LocalTrack object or an error.
|
|
4713
|
+
*/
|
|
4714
|
+
function createCameraTrack(constructor, constraints) {
|
|
4715
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4716
|
+
var stream;
|
|
4717
|
+
try {
|
|
4718
|
+
stream = yield getUserMedia({
|
|
4719
|
+
video: Object.assign({}, constraints)
|
|
4720
|
+
});
|
|
4721
|
+
} catch (error) {
|
|
4722
|
+
throw new WcmeError(ErrorTypes.CREATE_CAMERA_TRACK_FAILED, "Failed to create camera track ".concat(error));
|
|
4723
|
+
}
|
|
4724
|
+
return new constructor(stream);
|
|
4725
|
+
});
|
|
4726
|
+
}
|
|
4727
|
+
/**
|
|
4728
|
+
* Creates a microphone audio track.
|
|
4729
|
+
*
|
|
4730
|
+
* @param constructor - Constructor for the local microphone track.
|
|
4731
|
+
* @param constraints - Audio device constraints.
|
|
4732
|
+
* @returns A LocalTrack object or an error.
|
|
4733
|
+
*/
|
|
4734
|
+
function createMicrophoneTrack(constructor, constraints) {
|
|
4735
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4736
|
+
var stream;
|
|
4737
|
+
try {
|
|
4738
|
+
stream = yield getUserMedia({
|
|
4739
|
+
audio: Object.assign({}, constraints)
|
|
4740
|
+
});
|
|
4741
|
+
} catch (error) {
|
|
4742
|
+
throw new WcmeError(ErrorTypes.CREATE_MICROPHONE_TRACK_FAILED, "Failed to create microphone track ".concat(error));
|
|
4743
|
+
}
|
|
4744
|
+
return new constructor(stream);
|
|
4745
|
+
});
|
|
4746
|
+
}
|
|
4747
|
+
/**
|
|
4748
|
+
* Creates a display video track.
|
|
4749
|
+
*
|
|
4750
|
+
* @param constructor - Constructor for the local display track.
|
|
4751
|
+
* @returns A Promise that resolves to a LocalDisplayTrack.
|
|
4752
|
+
*/
|
|
4753
|
+
function createDisplayTrack(constructor) {
|
|
4754
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4755
|
+
var stream = yield getDisplayMedia({
|
|
4756
|
+
video: true
|
|
4757
|
+
});
|
|
4758
|
+
return new constructor(stream);
|
|
4759
|
+
});
|
|
4760
|
+
}
|
|
4761
|
+
/**
|
|
4762
|
+
* Enumerates the media input and output devices available.
|
|
4763
|
+
*
|
|
4764
|
+
* @param deviceKind - Optional filter to return a specific device kind.
|
|
4765
|
+
* @returns List of media devices in an array of MediaDeviceInfo objects.
|
|
4766
|
+
*/
|
|
4767
|
+
function getDevices(deviceKind) {
|
|
4768
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4769
|
+
var devices;
|
|
4770
|
+
try {
|
|
4771
|
+
devices = yield ensureDevicePermissions([DeviceKind.AudioInput, DeviceKind.VideoInput], enumerateDevices);
|
|
4772
|
+
} catch (error) {
|
|
4773
|
+
throw new WcmeError(ErrorTypes.DEVICE_PERMISSION_DENIED, 'Failed to ensure device permissions');
|
|
4774
|
+
}
|
|
4775
|
+
return devices.filter(v => deviceKind ? v.kind === deviceKind : true);
|
|
4776
|
+
});
|
|
4777
|
+
}
|
|
4778
|
+
/**
|
|
4779
|
+
* Helper function to get a list of microphone devices.
|
|
4780
|
+
*
|
|
4781
|
+
* @returns List of microphone devices in an array of MediaDeviceInfo objects.
|
|
4782
|
+
*/
|
|
4783
|
+
function getAudioInputDevices() {
|
|
4784
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4785
|
+
return getDevices(DeviceKind.AudioInput);
|
|
4786
|
+
});
|
|
4787
|
+
}
|
|
4788
|
+
/**
|
|
4789
|
+
* Helper function to get a list of speaker devices.
|
|
4790
|
+
*
|
|
4791
|
+
* @returns List of speaker devices in an array of MediaDeviceInfo objects.
|
|
4792
|
+
*/
|
|
4793
|
+
function getAudioOutputDevices() {
|
|
4794
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4795
|
+
return getDevices(DeviceKind.AudioOutput);
|
|
4796
|
+
});
|
|
4797
|
+
}
|
|
4798
|
+
/**
|
|
4799
|
+
* Helper function to get a list of camera devices.
|
|
4800
|
+
*
|
|
4801
|
+
* @returns List of camera devices in an array of MediaDeviceInfo objects.
|
|
4802
|
+
*/
|
|
4803
|
+
function getVideoInputDevices() {
|
|
4804
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4805
|
+
return getDevices(DeviceKind.VideoInput);
|
|
4806
|
+
});
|
|
4807
|
+
}
|
|
4808
|
+
/**
|
|
4809
|
+
* Export the setOnDeviceChangeHandler method directly from the core lib.
|
|
4810
|
+
*/
|
|
4811
|
+
var {
|
|
4812
|
+
setOnDeviceChangeHandler
|
|
4813
|
+
} = media;
|
|
4682
4814
|
var events$1 = {
|
|
4683
4815
|
exports: {}
|
|
4684
4816
|
};
|
|
@@ -5357,135 +5489,6 @@ class LocalDisplayTrack extends LocalTrack {}
|
|
|
5357
5489
|
* Represents a local track for a microphone source.
|
|
5358
5490
|
*/
|
|
5359
5491
|
class LocalMicrophoneTrack extends LocalTrack {}
|
|
5360
|
-
var ErrorTypes;
|
|
5361
|
-
(function (ErrorTypes) {
|
|
5362
|
-
ErrorTypes["DEVICE_PERMISSION_DENIED"] = "DEVICE_PERMISSION_DENIED";
|
|
5363
|
-
ErrorTypes["CREATE_CAMERA_TRACK_FAILED"] = "CREATE_CAMERA_TRACK_FAILED";
|
|
5364
|
-
ErrorTypes["CREATE_MICROPHONE_TRACK_FAILED"] = "CREATE_MICROPHONE_TRACK_FAILED";
|
|
5365
|
-
})(ErrorTypes || (ErrorTypes = {}));
|
|
5366
|
-
/**
|
|
5367
|
-
* Represents a WCME error, which contains error type and error message.
|
|
5368
|
-
*/
|
|
5369
|
-
class WcmeError {
|
|
5370
|
-
/**
|
|
5371
|
-
* Creates new error.
|
|
5372
|
-
*
|
|
5373
|
-
* @param type - Error type.
|
|
5374
|
-
* @param message - Error message.
|
|
5375
|
-
*/
|
|
5376
|
-
constructor(type) {
|
|
5377
|
-
var message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
5378
|
-
this.type = type;
|
|
5379
|
-
this.message = message;
|
|
5380
|
-
}
|
|
5381
|
-
}
|
|
5382
|
-
/**
|
|
5383
|
-
* Creates a camera video track. Please note that the constraint params in second getUserMedia call would NOT take effect when:
|
|
5384
|
-
*
|
|
5385
|
-
* 1. Previous captured video track from the same device is not stopped .
|
|
5386
|
-
* 2. Previous createCameraTrack() call for the same device is in progress.
|
|
5387
|
-
*
|
|
5388
|
-
* @param constraints - Video device constraints.
|
|
5389
|
-
* @returns A LocalTrack object or an error.
|
|
5390
|
-
*/
|
|
5391
|
-
function createCameraTrack(constraints) {
|
|
5392
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5393
|
-
var stream;
|
|
5394
|
-
try {
|
|
5395
|
-
stream = yield getUserMedia({
|
|
5396
|
-
video: Object.assign({}, constraints)
|
|
5397
|
-
});
|
|
5398
|
-
} catch (error) {
|
|
5399
|
-
throw new WcmeError(ErrorTypes.CREATE_CAMERA_TRACK_FAILED, "Failed to create camera track ".concat(error));
|
|
5400
|
-
}
|
|
5401
|
-
return new LocalCameraTrack(stream);
|
|
5402
|
-
});
|
|
5403
|
-
}
|
|
5404
|
-
/**
|
|
5405
|
-
* Creates a microphone audio track.
|
|
5406
|
-
*
|
|
5407
|
-
* @param constraints - Audio device constraints.
|
|
5408
|
-
* @returns A LocalTrack object or an error.
|
|
5409
|
-
*/
|
|
5410
|
-
function createMicrophoneTrack(constraints) {
|
|
5411
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5412
|
-
var stream;
|
|
5413
|
-
try {
|
|
5414
|
-
stream = yield getUserMedia({
|
|
5415
|
-
audio: Object.assign({}, constraints)
|
|
5416
|
-
});
|
|
5417
|
-
} catch (error) {
|
|
5418
|
-
throw new WcmeError(ErrorTypes.CREATE_MICROPHONE_TRACK_FAILED, "Failed to create microphone track ".concat(error));
|
|
5419
|
-
}
|
|
5420
|
-
return new LocalMicrophoneTrack(stream);
|
|
5421
|
-
});
|
|
5422
|
-
}
|
|
5423
|
-
/**
|
|
5424
|
-
* Creates a display video track.
|
|
5425
|
-
*
|
|
5426
|
-
* @returns A Promise that resolves to a LocalDisplayTrack.
|
|
5427
|
-
*/
|
|
5428
|
-
function createDisplayTrack() {
|
|
5429
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5430
|
-
var stream = yield getDisplayMedia({
|
|
5431
|
-
video: true
|
|
5432
|
-
});
|
|
5433
|
-
return new LocalDisplayTrack(stream);
|
|
5434
|
-
});
|
|
5435
|
-
}
|
|
5436
|
-
/**
|
|
5437
|
-
* Enumerates the media input and output devices available.
|
|
5438
|
-
*
|
|
5439
|
-
* @param deviceKind - Optional filter to return a specific device kind.
|
|
5440
|
-
* @returns List of media devices in an array of MediaDeviceInfo objects.
|
|
5441
|
-
*/
|
|
5442
|
-
function getDevices(deviceKind) {
|
|
5443
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5444
|
-
var devices;
|
|
5445
|
-
try {
|
|
5446
|
-
devices = yield ensureDevicePermissions([DeviceKind.AudioInput, DeviceKind.VideoInput], enumerateDevices);
|
|
5447
|
-
} catch (error) {
|
|
5448
|
-
throw new WcmeError(ErrorTypes.DEVICE_PERMISSION_DENIED, 'Failed to ensure device permissions');
|
|
5449
|
-
}
|
|
5450
|
-
return devices.filter(v => deviceKind ? v.kind === deviceKind : true);
|
|
5451
|
-
});
|
|
5452
|
-
}
|
|
5453
|
-
/**
|
|
5454
|
-
* Helper function to get a list of microphone devices.
|
|
5455
|
-
*
|
|
5456
|
-
* @returns List of microphone devices in an array of MediaDeviceInfo objects.
|
|
5457
|
-
*/
|
|
5458
|
-
function getAudioInputDevices() {
|
|
5459
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5460
|
-
return getDevices(DeviceKind.AudioInput);
|
|
5461
|
-
});
|
|
5462
|
-
}
|
|
5463
|
-
/**
|
|
5464
|
-
* Helper function to get a list of speaker devices.
|
|
5465
|
-
*
|
|
5466
|
-
* @returns List of speaker devices in an array of MediaDeviceInfo objects.
|
|
5467
|
-
*/
|
|
5468
|
-
function getAudioOutputDevices() {
|
|
5469
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5470
|
-
return getDevices(DeviceKind.AudioOutput);
|
|
5471
|
-
});
|
|
5472
|
-
}
|
|
5473
|
-
/**
|
|
5474
|
-
* Helper function to get a list of camera devices.
|
|
5475
|
-
*
|
|
5476
|
-
* @returns List of camera devices in an array of MediaDeviceInfo objects.
|
|
5477
|
-
*/
|
|
5478
|
-
function getVideoInputDevices() {
|
|
5479
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5480
|
-
return getDevices(DeviceKind.VideoInput);
|
|
5481
|
-
});
|
|
5482
|
-
}
|
|
5483
|
-
/**
|
|
5484
|
-
* Export the setOnDeviceChangeHandler method directly from the core lib.
|
|
5485
|
-
*/
|
|
5486
|
-
var {
|
|
5487
|
-
setOnDeviceChangeHandler
|
|
5488
|
-
} = media;
|
|
5489
5492
|
|
|
5490
5493
|
// Overall connection state (based on the ICE and DTLS connection states)
|
|
5491
5494
|
exports.ConnectionState = void 0;
|
|
@@ -14700,7 +14703,7 @@ class MultistreamConnection extends EventEmitter {
|
|
|
14700
14703
|
state: 'invalid source',
|
|
14701
14704
|
csi: sendTransceiver.csi
|
|
14702
14705
|
});
|
|
14703
|
-
} else if (signaler.getEncodingIndexForStreamId(id)
|
|
14706
|
+
} else if (signaler.getEncodingIndexForStreamId(id) >= activeSimulcastLayerNumber) {
|
|
14704
14707
|
sourceWarnings.push({
|
|
14705
14708
|
id,
|
|
14706
14709
|
state: 'no source',
|
|
@@ -15183,7 +15186,7 @@ class MultistreamConnection extends EventEmitter {
|
|
|
15183
15186
|
}
|
|
15184
15187
|
renewPeerConnection(userOptions) {
|
|
15185
15188
|
if (userOptions) {
|
|
15186
|
-
this.options = Object.assign(Object.assign({},
|
|
15189
|
+
this.options = Object.assign(Object.assign({}, this.options), userOptions);
|
|
15187
15190
|
}
|
|
15188
15191
|
logger$4.info("Renewing multistream connection with options ".concat(JSON.stringify(this.options)));
|
|
15189
15192
|
this.clearMids();
|
package/dist/esm/index.js
CHANGED
|
@@ -4668,6 +4668,138 @@ var media = /*#__PURE__*/Object.freeze({
|
|
|
4668
4668
|
checkDevicePermissions: checkDevicePermissions,
|
|
4669
4669
|
ensureDevicePermissions: ensureDevicePermissions
|
|
4670
4670
|
});
|
|
4671
|
+
var ErrorTypes;
|
|
4672
|
+
(function (ErrorTypes) {
|
|
4673
|
+
ErrorTypes["DEVICE_PERMISSION_DENIED"] = "DEVICE_PERMISSION_DENIED";
|
|
4674
|
+
ErrorTypes["CREATE_CAMERA_TRACK_FAILED"] = "CREATE_CAMERA_TRACK_FAILED";
|
|
4675
|
+
ErrorTypes["CREATE_MICROPHONE_TRACK_FAILED"] = "CREATE_MICROPHONE_TRACK_FAILED";
|
|
4676
|
+
})(ErrorTypes || (ErrorTypes = {}));
|
|
4677
|
+
/**
|
|
4678
|
+
* Represents a WCME error, which contains error type and error message.
|
|
4679
|
+
*/
|
|
4680
|
+
class WcmeError {
|
|
4681
|
+
/**
|
|
4682
|
+
* Creates new error.
|
|
4683
|
+
*
|
|
4684
|
+
* @param type - Error type.
|
|
4685
|
+
* @param message - Error message.
|
|
4686
|
+
*/
|
|
4687
|
+
constructor(type) {
|
|
4688
|
+
var message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
4689
|
+
this.type = type;
|
|
4690
|
+
this.message = message;
|
|
4691
|
+
}
|
|
4692
|
+
}
|
|
4693
|
+
/**
|
|
4694
|
+
* Creates a camera video track. Please note that the constraint params in second getUserMedia call would NOT take effect when:
|
|
4695
|
+
*
|
|
4696
|
+
* 1. Previous captured video track from the same device is not stopped .
|
|
4697
|
+
* 2. Previous createCameraTrack() call for the same device is in progress.
|
|
4698
|
+
*
|
|
4699
|
+
* @param constructor - Constructor for the local camera track.
|
|
4700
|
+
* @param constraints - Video device constraints.
|
|
4701
|
+
* @returns A LocalTrack object or an error.
|
|
4702
|
+
*/
|
|
4703
|
+
function createCameraTrack(constructor, constraints) {
|
|
4704
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4705
|
+
var stream;
|
|
4706
|
+
try {
|
|
4707
|
+
stream = yield getUserMedia({
|
|
4708
|
+
video: Object.assign({}, constraints)
|
|
4709
|
+
});
|
|
4710
|
+
} catch (error) {
|
|
4711
|
+
throw new WcmeError(ErrorTypes.CREATE_CAMERA_TRACK_FAILED, "Failed to create camera track ".concat(error));
|
|
4712
|
+
}
|
|
4713
|
+
return new constructor(stream);
|
|
4714
|
+
});
|
|
4715
|
+
}
|
|
4716
|
+
/**
|
|
4717
|
+
* Creates a microphone audio track.
|
|
4718
|
+
*
|
|
4719
|
+
* @param constructor - Constructor for the local microphone track.
|
|
4720
|
+
* @param constraints - Audio device constraints.
|
|
4721
|
+
* @returns A LocalTrack object or an error.
|
|
4722
|
+
*/
|
|
4723
|
+
function createMicrophoneTrack(constructor, constraints) {
|
|
4724
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4725
|
+
var stream;
|
|
4726
|
+
try {
|
|
4727
|
+
stream = yield getUserMedia({
|
|
4728
|
+
audio: Object.assign({}, constraints)
|
|
4729
|
+
});
|
|
4730
|
+
} catch (error) {
|
|
4731
|
+
throw new WcmeError(ErrorTypes.CREATE_MICROPHONE_TRACK_FAILED, "Failed to create microphone track ".concat(error));
|
|
4732
|
+
}
|
|
4733
|
+
return new constructor(stream);
|
|
4734
|
+
});
|
|
4735
|
+
}
|
|
4736
|
+
/**
|
|
4737
|
+
* Creates a display video track.
|
|
4738
|
+
*
|
|
4739
|
+
* @param constructor - Constructor for the local display track.
|
|
4740
|
+
* @returns A Promise that resolves to a LocalDisplayTrack.
|
|
4741
|
+
*/
|
|
4742
|
+
function createDisplayTrack(constructor) {
|
|
4743
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4744
|
+
var stream = yield getDisplayMedia({
|
|
4745
|
+
video: true
|
|
4746
|
+
});
|
|
4747
|
+
return new constructor(stream);
|
|
4748
|
+
});
|
|
4749
|
+
}
|
|
4750
|
+
/**
|
|
4751
|
+
* Enumerates the media input and output devices available.
|
|
4752
|
+
*
|
|
4753
|
+
* @param deviceKind - Optional filter to return a specific device kind.
|
|
4754
|
+
* @returns List of media devices in an array of MediaDeviceInfo objects.
|
|
4755
|
+
*/
|
|
4756
|
+
function getDevices(deviceKind) {
|
|
4757
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4758
|
+
var devices;
|
|
4759
|
+
try {
|
|
4760
|
+
devices = yield ensureDevicePermissions([DeviceKind.AudioInput, DeviceKind.VideoInput], enumerateDevices);
|
|
4761
|
+
} catch (error) {
|
|
4762
|
+
throw new WcmeError(ErrorTypes.DEVICE_PERMISSION_DENIED, 'Failed to ensure device permissions');
|
|
4763
|
+
}
|
|
4764
|
+
return devices.filter(v => deviceKind ? v.kind === deviceKind : true);
|
|
4765
|
+
});
|
|
4766
|
+
}
|
|
4767
|
+
/**
|
|
4768
|
+
* Helper function to get a list of microphone devices.
|
|
4769
|
+
*
|
|
4770
|
+
* @returns List of microphone devices in an array of MediaDeviceInfo objects.
|
|
4771
|
+
*/
|
|
4772
|
+
function getAudioInputDevices() {
|
|
4773
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4774
|
+
return getDevices(DeviceKind.AudioInput);
|
|
4775
|
+
});
|
|
4776
|
+
}
|
|
4777
|
+
/**
|
|
4778
|
+
* Helper function to get a list of speaker devices.
|
|
4779
|
+
*
|
|
4780
|
+
* @returns List of speaker devices in an array of MediaDeviceInfo objects.
|
|
4781
|
+
*/
|
|
4782
|
+
function getAudioOutputDevices() {
|
|
4783
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4784
|
+
return getDevices(DeviceKind.AudioOutput);
|
|
4785
|
+
});
|
|
4786
|
+
}
|
|
4787
|
+
/**
|
|
4788
|
+
* Helper function to get a list of camera devices.
|
|
4789
|
+
*
|
|
4790
|
+
* @returns List of camera devices in an array of MediaDeviceInfo objects.
|
|
4791
|
+
*/
|
|
4792
|
+
function getVideoInputDevices() {
|
|
4793
|
+
return __awaiter$1(this, void 0, void 0, function* () {
|
|
4794
|
+
return getDevices(DeviceKind.VideoInput);
|
|
4795
|
+
});
|
|
4796
|
+
}
|
|
4797
|
+
/**
|
|
4798
|
+
* Export the setOnDeviceChangeHandler method directly from the core lib.
|
|
4799
|
+
*/
|
|
4800
|
+
var {
|
|
4801
|
+
setOnDeviceChangeHandler
|
|
4802
|
+
} = media;
|
|
4671
4803
|
var events$1 = {
|
|
4672
4804
|
exports: {}
|
|
4673
4805
|
};
|
|
@@ -5346,135 +5478,6 @@ class LocalDisplayTrack extends LocalTrack {}
|
|
|
5346
5478
|
* Represents a local track for a microphone source.
|
|
5347
5479
|
*/
|
|
5348
5480
|
class LocalMicrophoneTrack extends LocalTrack {}
|
|
5349
|
-
var ErrorTypes;
|
|
5350
|
-
(function (ErrorTypes) {
|
|
5351
|
-
ErrorTypes["DEVICE_PERMISSION_DENIED"] = "DEVICE_PERMISSION_DENIED";
|
|
5352
|
-
ErrorTypes["CREATE_CAMERA_TRACK_FAILED"] = "CREATE_CAMERA_TRACK_FAILED";
|
|
5353
|
-
ErrorTypes["CREATE_MICROPHONE_TRACK_FAILED"] = "CREATE_MICROPHONE_TRACK_FAILED";
|
|
5354
|
-
})(ErrorTypes || (ErrorTypes = {}));
|
|
5355
|
-
/**
|
|
5356
|
-
* Represents a WCME error, which contains error type and error message.
|
|
5357
|
-
*/
|
|
5358
|
-
class WcmeError {
|
|
5359
|
-
/**
|
|
5360
|
-
* Creates new error.
|
|
5361
|
-
*
|
|
5362
|
-
* @param type - Error type.
|
|
5363
|
-
* @param message - Error message.
|
|
5364
|
-
*/
|
|
5365
|
-
constructor(type) {
|
|
5366
|
-
var message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
5367
|
-
this.type = type;
|
|
5368
|
-
this.message = message;
|
|
5369
|
-
}
|
|
5370
|
-
}
|
|
5371
|
-
/**
|
|
5372
|
-
* Creates a camera video track. Please note that the constraint params in second getUserMedia call would NOT take effect when:
|
|
5373
|
-
*
|
|
5374
|
-
* 1. Previous captured video track from the same device is not stopped .
|
|
5375
|
-
* 2. Previous createCameraTrack() call for the same device is in progress.
|
|
5376
|
-
*
|
|
5377
|
-
* @param constraints - Video device constraints.
|
|
5378
|
-
* @returns A LocalTrack object or an error.
|
|
5379
|
-
*/
|
|
5380
|
-
function createCameraTrack(constraints) {
|
|
5381
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5382
|
-
var stream;
|
|
5383
|
-
try {
|
|
5384
|
-
stream = yield getUserMedia({
|
|
5385
|
-
video: Object.assign({}, constraints)
|
|
5386
|
-
});
|
|
5387
|
-
} catch (error) {
|
|
5388
|
-
throw new WcmeError(ErrorTypes.CREATE_CAMERA_TRACK_FAILED, "Failed to create camera track ".concat(error));
|
|
5389
|
-
}
|
|
5390
|
-
return new LocalCameraTrack(stream);
|
|
5391
|
-
});
|
|
5392
|
-
}
|
|
5393
|
-
/**
|
|
5394
|
-
* Creates a microphone audio track.
|
|
5395
|
-
*
|
|
5396
|
-
* @param constraints - Audio device constraints.
|
|
5397
|
-
* @returns A LocalTrack object or an error.
|
|
5398
|
-
*/
|
|
5399
|
-
function createMicrophoneTrack(constraints) {
|
|
5400
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5401
|
-
var stream;
|
|
5402
|
-
try {
|
|
5403
|
-
stream = yield getUserMedia({
|
|
5404
|
-
audio: Object.assign({}, constraints)
|
|
5405
|
-
});
|
|
5406
|
-
} catch (error) {
|
|
5407
|
-
throw new WcmeError(ErrorTypes.CREATE_MICROPHONE_TRACK_FAILED, "Failed to create microphone track ".concat(error));
|
|
5408
|
-
}
|
|
5409
|
-
return new LocalMicrophoneTrack(stream);
|
|
5410
|
-
});
|
|
5411
|
-
}
|
|
5412
|
-
/**
|
|
5413
|
-
* Creates a display video track.
|
|
5414
|
-
*
|
|
5415
|
-
* @returns A Promise that resolves to a LocalDisplayTrack.
|
|
5416
|
-
*/
|
|
5417
|
-
function createDisplayTrack() {
|
|
5418
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5419
|
-
var stream = yield getDisplayMedia({
|
|
5420
|
-
video: true
|
|
5421
|
-
});
|
|
5422
|
-
return new LocalDisplayTrack(stream);
|
|
5423
|
-
});
|
|
5424
|
-
}
|
|
5425
|
-
/**
|
|
5426
|
-
* Enumerates the media input and output devices available.
|
|
5427
|
-
*
|
|
5428
|
-
* @param deviceKind - Optional filter to return a specific device kind.
|
|
5429
|
-
* @returns List of media devices in an array of MediaDeviceInfo objects.
|
|
5430
|
-
*/
|
|
5431
|
-
function getDevices(deviceKind) {
|
|
5432
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5433
|
-
var devices;
|
|
5434
|
-
try {
|
|
5435
|
-
devices = yield ensureDevicePermissions([DeviceKind.AudioInput, DeviceKind.VideoInput], enumerateDevices);
|
|
5436
|
-
} catch (error) {
|
|
5437
|
-
throw new WcmeError(ErrorTypes.DEVICE_PERMISSION_DENIED, 'Failed to ensure device permissions');
|
|
5438
|
-
}
|
|
5439
|
-
return devices.filter(v => deviceKind ? v.kind === deviceKind : true);
|
|
5440
|
-
});
|
|
5441
|
-
}
|
|
5442
|
-
/**
|
|
5443
|
-
* Helper function to get a list of microphone devices.
|
|
5444
|
-
*
|
|
5445
|
-
* @returns List of microphone devices in an array of MediaDeviceInfo objects.
|
|
5446
|
-
*/
|
|
5447
|
-
function getAudioInputDevices() {
|
|
5448
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5449
|
-
return getDevices(DeviceKind.AudioInput);
|
|
5450
|
-
});
|
|
5451
|
-
}
|
|
5452
|
-
/**
|
|
5453
|
-
* Helper function to get a list of speaker devices.
|
|
5454
|
-
*
|
|
5455
|
-
* @returns List of speaker devices in an array of MediaDeviceInfo objects.
|
|
5456
|
-
*/
|
|
5457
|
-
function getAudioOutputDevices() {
|
|
5458
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5459
|
-
return getDevices(DeviceKind.AudioOutput);
|
|
5460
|
-
});
|
|
5461
|
-
}
|
|
5462
|
-
/**
|
|
5463
|
-
* Helper function to get a list of camera devices.
|
|
5464
|
-
*
|
|
5465
|
-
* @returns List of camera devices in an array of MediaDeviceInfo objects.
|
|
5466
|
-
*/
|
|
5467
|
-
function getVideoInputDevices() {
|
|
5468
|
-
return __awaiter$1(this, void 0, void 0, function* () {
|
|
5469
|
-
return getDevices(DeviceKind.VideoInput);
|
|
5470
|
-
});
|
|
5471
|
-
}
|
|
5472
|
-
/**
|
|
5473
|
-
* Export the setOnDeviceChangeHandler method directly from the core lib.
|
|
5474
|
-
*/
|
|
5475
|
-
var {
|
|
5476
|
-
setOnDeviceChangeHandler
|
|
5477
|
-
} = media;
|
|
5478
5481
|
|
|
5479
5482
|
// Overall connection state (based on the ICE and DTLS connection states)
|
|
5480
5483
|
var ConnectionState;
|
|
@@ -14689,7 +14692,7 @@ class MultistreamConnection extends EventEmitter {
|
|
|
14689
14692
|
state: 'invalid source',
|
|
14690
14693
|
csi: sendTransceiver.csi
|
|
14691
14694
|
});
|
|
14692
|
-
} else if (signaler.getEncodingIndexForStreamId(id)
|
|
14695
|
+
} else if (signaler.getEncodingIndexForStreamId(id) >= activeSimulcastLayerNumber) {
|
|
14693
14696
|
sourceWarnings.push({
|
|
14694
14697
|
id,
|
|
14695
14698
|
state: 'no source',
|
|
@@ -15172,7 +15175,7 @@ class MultistreamConnection extends EventEmitter {
|
|
|
15172
15175
|
}
|
|
15173
15176
|
renewPeerConnection(userOptions) {
|
|
15174
15177
|
if (userOptions) {
|
|
15175
|
-
this.options = Object.assign(Object.assign({},
|
|
15178
|
+
this.options = Object.assign(Object.assign({}, this.options), userOptions);
|
|
15176
15179
|
}
|
|
15177
15180
|
logger$4.info("Renewing multistream connection with options ".concat(JSON.stringify(this.options)));
|
|
15178
15181
|
this.clearMids();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webex/internal-media-core",
|
|
3
|
-
"version": "1.35.
|
|
3
|
+
"version": "1.35.6",
|
|
4
4
|
"files": [
|
|
5
5
|
"dist/cjs",
|
|
6
6
|
"dist/esm",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"@babel/runtime": "^7.18.9",
|
|
48
48
|
"@webex/json-multistream": "1.20.2",
|
|
49
49
|
"@webex/ts-sdp": "1.3.2",
|
|
50
|
-
"@webex/web-client-media-engine": "1.40.
|
|
50
|
+
"@webex/web-client-media-engine": "1.40.4",
|
|
51
51
|
"detectrtc": "^1.4.1",
|
|
52
52
|
"events": "^3.3.0",
|
|
53
53
|
"typed-emitter": "^2.1.0",
|