@techsee/techsee-media-service 999.19.3-alphasap → 999.19.6-nodejs20
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 +27 -28
- package/lib/LocalStreamManager.d.ts +1 -0
- package/lib/LocalStreamManager.d.ts.map +1 -1
- package/lib/LocalStreamManager.js +82 -84
- package/lib/LocalStreamManager.js.map +1 -1
- package/lib/MediaConstants.d.ts +20 -3
- package/lib/MediaConstants.d.ts.map +1 -1
- package/lib/MediaConstants.js +31 -13
- package/lib/MediaConstants.js.map +1 -1
- package/lib/MediaContracts.d.ts +7 -1
- package/lib/MediaContracts.d.ts.map +1 -1
- package/lib/MediaContracts.js +1 -4
- package/lib/MediaContracts.js.map +1 -1
- package/lib/MediaPublisher.d.ts +1 -0
- package/lib/MediaPublisher.d.ts.map +1 -1
- package/lib/MediaPublisher.js +7 -10
- package/lib/MediaPublisher.js.map +1 -1
- package/lib/MediaServiceBase.d.ts +1 -0
- package/lib/MediaServiceBase.d.ts.map +1 -1
- package/lib/MediaServiceBase.js +169 -198
- package/lib/MediaServiceBase.js.map +1 -1
- package/lib/MediaSession/MediaServer.d.ts +1 -0
- package/lib/MediaSession/MediaServer.d.ts.map +1 -1
- package/lib/MediaSession/MediaServer.js +62 -74
- package/lib/MediaSession/MediaServer.js.map +1 -1
- package/lib/MediaSession/MediaSessionBase.d.ts +1 -0
- package/lib/MediaSession/MediaSessionBase.d.ts.map +1 -1
- package/lib/MediaSession/MediaSessionBase.js +19 -23
- package/lib/MediaSession/MediaSessionBase.js.map +1 -1
- package/lib/MediaSession/SessionOpentok.d.ts +1 -0
- package/lib/MediaSession/SessionOpentok.d.ts.map +1 -1
- package/lib/MediaSession/SessionOpentok.js +51 -80
- package/lib/MediaSession/SessionOpentok.js.map +1 -1
- package/lib/MediaSession/SessionTurn.d.ts +1 -0
- package/lib/MediaSession/SessionTurn.d.ts.map +1 -1
- package/lib/MediaSession/SessionTurn.js +109 -151
- package/lib/MediaSession/SessionTurn.js.map +1 -1
- package/lib/MediaSession/TurnConstants.d.ts +1 -0
- package/lib/MediaSession/TurnConstants.d.ts.map +1 -1
- package/lib/MediaSession/TurnConstants.js +1 -16
- package/lib/MediaSession/TurnConstants.js.map +1 -1
- package/lib/MediaSubscriber.d.ts +1 -0
- package/lib/MediaSubscriber.d.ts.map +1 -1
- package/lib/MediaSubscriber.js +37 -43
- package/lib/MediaSubscriber.js.map +1 -1
- package/lib/MediaUtils/Compatibility.d.ts +3 -0
- package/lib/MediaUtils/Compatibility.d.ts.map +1 -1
- package/lib/MediaUtils/Compatibility.js +76 -34
- package/lib/MediaUtils/Compatibility.js.map +1 -1
- package/lib/MediaUtils/MediaDomUtils.d.ts +4 -2
- package/lib/MediaUtils/MediaDomUtils.d.ts.map +1 -1
- package/lib/MediaUtils/MediaDomUtils.js +64 -62
- package/lib/MediaUtils/MediaDomUtils.js.map +1 -1
- package/lib/MediaUtils/MediaTracer.d.ts +1 -0
- package/lib/MediaUtils/MediaTracer.d.ts.map +1 -1
- package/lib/MediaUtils/MediaTracer.js +2 -5
- package/lib/MediaUtils/MediaTracer.js.map +1 -1
- package/lib/MediaUtils/index.d.ts +2 -0
- package/lib/MediaUtils/index.d.ts.map +1 -0
- package/lib/MediaUtils/index.js +6 -0
- package/lib/MediaUtils/index.js.map +1 -0
- package/lib/MultiParty/DetectWebRtcService.d.ts +17 -14
- package/lib/MultiParty/DetectWebRtcService.d.ts.map +1 -1
- package/lib/MultiParty/DetectWebRtcService.js +98 -54
- package/lib/MultiParty/DetectWebRtcService.js.map +1 -1
- package/lib/MultiParty/MediaCapabilitiesService.d.ts +18 -0
- package/lib/MultiParty/MediaCapabilitiesService.d.ts.map +1 -0
- package/lib/MultiParty/MediaCapabilitiesService.js +158 -0
- package/lib/MultiParty/MediaCapabilitiesService.js.map +1 -0
- package/lib/MultiParty/MediaCapabilitiesUtils.d.ts +6 -0
- package/lib/MultiParty/MediaCapabilitiesUtils.d.ts.map +1 -0
- package/lib/MultiParty/MediaCapabilitiesUtils.js +123 -0
- package/lib/MultiParty/MediaCapabilitiesUtils.js.map +1 -0
- package/lib/MultiParty/MediaTracer.d.ts +4 -0
- package/lib/MultiParty/MediaTracer.d.ts.map +1 -0
- package/lib/MultiParty/MediaTracer.js +10 -0
- package/lib/MultiParty/MediaTracer.js.map +1 -0
- package/lib/MultiParty/MultiPartyService.d.ts +49 -0
- package/lib/MultiParty/MultiPartyService.d.ts.map +1 -0
- package/lib/MultiParty/MultiPartyService.js +30 -0
- package/lib/MultiParty/MultiPartyService.js.map +1 -0
- package/lib/MultiParty/MultiPartyServiceFactory.d.ts +4 -0
- package/lib/MultiParty/MultiPartyServiceFactory.d.ts.map +1 -0
- package/lib/MultiParty/MultiPartyServiceFactory.js +13 -0
- package/lib/MultiParty/MultiPartyServiceFactory.js.map +1 -0
- package/lib/MultiParty/MultipartyServiceEventTypes.d.ts +89 -0
- package/lib/MultiParty/MultipartyServiceEventTypes.d.ts.map +1 -0
- package/lib/MultiParty/MultipartyServiceEventTypes.js +16 -0
- package/lib/MultiParty/MultipartyServiceEventTypes.js.map +1 -0
- package/lib/MultiParty/index.d.ts +7 -0
- package/lib/MultiParty/index.d.ts.map +1 -0
- package/lib/MultiParty/index.js +25 -0
- package/lib/MultiParty/index.js.map +1 -0
- package/lib/MultiParty/opentok/OpentokMultiPartyService.d.ts +38 -0
- package/lib/MultiParty/opentok/OpentokMultiPartyService.d.ts.map +1 -0
- package/lib/MultiParty/opentok/OpentokMultiPartyService.js +492 -0
- package/lib/MultiParty/opentok/OpentokMultiPartyService.js.map +1 -0
- package/lib/MultiParty/opentok/OpentokPublisher.d.ts +34 -0
- package/lib/MultiParty/opentok/OpentokPublisher.d.ts.map +1 -0
- package/lib/MultiParty/opentok/OpentokPublisher.js +121 -0
- package/lib/MultiParty/opentok/OpentokPublisher.js.map +1 -0
- package/lib/MultiParty/opentok/OpentokPublisherEventMapper.d.ts +20 -0
- package/lib/MultiParty/opentok/OpentokPublisherEventMapper.d.ts.map +1 -0
- package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js +49 -0
- package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js.map +1 -0
- package/lib/MultiParty/opentok/OpentokScreenPublisher.d.ts +6 -0
- package/lib/MultiParty/opentok/OpentokScreenPublisher.d.ts.map +1 -0
- package/lib/MultiParty/opentok/OpentokScreenPublisher.js +48 -0
- package/lib/MultiParty/opentok/OpentokScreenPublisher.js.map +1 -0
- package/lib/MultiParty/opentok/OpentokSubscriber.d.ts +2 -0
- package/lib/MultiParty/opentok/OpentokSubscriber.d.ts.map +1 -0
- package/lib/MultiParty/opentok/OpentokSubscriber.js +26 -0
- package/lib/MultiParty/opentok/OpentokSubscriber.js.map +1 -0
- package/lib/MultiParty/opentok/OpentokVideoPublisher.d.ts +19 -0
- package/lib/MultiParty/opentok/OpentokVideoPublisher.d.ts.map +1 -0
- package/lib/MultiParty/opentok/OpentokVideoPublisher.js +182 -0
- package/lib/MultiParty/opentok/OpentokVideoPublisher.js.map +1 -0
- package/lib/MultiParty/opentok/trace.d.ts +3 -0
- package/lib/MultiParty/opentok/trace.d.ts.map +1 -0
- package/lib/MultiParty/opentok/trace.js +18 -0
- package/lib/MultiParty/opentok/trace.js.map +1 -0
- package/lib/MultiParty/opentok.d.ts +463 -0
- package/lib/MultiParty/types.d.ts +33 -0
- package/lib/MultiParty/types.d.ts.map +1 -0
- package/lib/MultiParty/types.js +3 -0
- package/lib/MultiParty/types.js.map +1 -0
- package/lib/MultiParty/utils.d.ts +10 -0
- package/lib/MultiParty/utils.d.ts.map +1 -0
- package/lib/MultiParty/utils.js +17 -0
- package/lib/MultiParty/utils.js.map +1 -0
- package/lib/TechseeMediaStream.d.ts +1 -0
- package/lib/TechseeMediaStream.d.ts.map +1 -1
- package/lib/TechseeMediaStream.js +9 -12
- package/lib/TechseeMediaStream.js.map +1 -1
- package/lib/qos/raw-qos.d.ts +29 -0
- package/lib/qos/raw-qos.d.ts.map +1 -0
- package/lib/qos/raw-qos.js +84 -145
- package/lib/qos/raw-qos.js.map +1 -1
- package/lib/webrtc-ie-shim.d.ts +4 -0
- package/lib/webrtc-ie-shim.d.ts.map +1 -0
- package/lib/webrtc-ie-shim.js +1896 -2950
- package/lib/webrtc-ie-shim.js.map +1 -1
- package/package.json +66 -60
- package/lib/MultiParty/Contracts.d.ts +0 -11
- package/lib/MultiParty/Contracts.d.ts.map +0 -1
- package/lib/MultiParty/Contracts.js +0 -6
- package/lib/MultiParty/Contracts.js.map +0 -1
- package/lib/MultiParty/MediaCapabilitiesHelper.d.ts +0 -12
- package/lib/MultiParty/MediaCapabilitiesHelper.d.ts.map +0 -1
- package/lib/MultiParty/MediaCapabilitiesHelper.js +0 -167
- package/lib/MultiParty/MediaCapabilitiesHelper.js.map +0 -1
- package/lib/MultiParty/MultiParty.d.ts +0 -21
- package/lib/MultiParty/MultiParty.d.ts.map +0 -1
- package/lib/MultiParty/MultiParty.js +0 -155
- package/lib/MultiParty/MultiParty.js.map +0 -1
- package/lib/MultiParty/MultipartyFactory.d.ts +0 -2
- package/lib/MultiParty/MultipartyFactory.d.ts.map +0 -1
- package/lib/MultiParty/MultipartyFactory.js +0 -15
- package/lib/MultiParty/MultipartyFactory.js.map +0 -1
- package/lib/MultiParty/OpentokMultiparty.d.ts +0 -24
- package/lib/MultiParty/OpentokMultiparty.d.ts.map +0 -1
- package/lib/MultiParty/OpentokMultiparty.js +0 -408
- package/lib/MultiParty/OpentokMultiparty.js.map +0 -1
- package/lib/oldCode/constants.js +0 -20
- package/lib/oldCode/constants.js.map +0 -1
- package/lib/oldCode/event-emitter.js +0 -39
- package/lib/oldCode/event-emitter.js.map +0 -1
- package/lib/oldCode/index.js +0 -64
- package/lib/oldCode/index.js.map +0 -1
- package/lib/oldCode/opentok/session.js +0 -310
- package/lib/oldCode/opentok/session.js.map +0 -1
- package/lib/oldCode/opentok/stream.js +0 -310
- package/lib/oldCode/opentok/stream.js.map +0 -1
- package/lib/oldCode/publisher.js +0 -143
- package/lib/oldCode/publisher.js.map +0 -1
- package/lib/oldCode/service.js +0 -395
- package/lib/oldCode/service.js.map +0 -1
- package/lib/oldCode/session.js +0 -110
- package/lib/oldCode/session.js.map +0 -1
- package/lib/oldCode/stream.js +0 -195
- package/lib/oldCode/stream.js.map +0 -1
- package/lib/oldCode/subscriber.js +0 -90
- package/lib/oldCode/subscriber.js.map +0 -1
- package/lib/oldCode/tracer.d.ts +0 -36
- package/lib/oldCode/tracer.d.ts.map +0 -1
- package/lib/oldCode/tracer.js +0 -161
- package/lib/oldCode/tracer.js.map +0 -1
- package/lib/oldCode/utils/ImageFixer.d.ts +0 -1
- package/lib/oldCode/utils/ImageFixer.d.ts.map +0 -1
- package/lib/oldCode/utils/ImageFixer.js +0 -59
- package/lib/oldCode/utils/ImageFixer.js.map +0 -1
- package/lib/oldCode/webrtc/constants.js +0 -114
- package/lib/oldCode/webrtc/constants.js.map +0 -1
- package/lib/oldCode/webrtc/helper.js +0 -173
- package/lib/oldCode/webrtc/helper.js.map +0 -1
- package/lib/oldCode/webrtc/session-kms.js +0 -558
- package/lib/oldCode/webrtc/session-kms.js.map +0 -1
- package/lib/oldCode/webrtc/session-loopback.js +0 -336
- package/lib/oldCode/webrtc/session-loopback.js.map +0 -1
- package/lib/oldCode/webrtc/session-turn.js +0 -880
- package/lib/oldCode/webrtc/session-turn.js.map +0 -1
- package/lib/oldCode/webrtc/session-turn.v2.js +0 -583
- package/lib/oldCode/webrtc/session-turn.v2.js.map +0 -1
- package/lib/oldCode/webrtc/session.js +0 -52
- package/lib/oldCode/webrtc/session.js.map +0 -1
- package/lib/oldCode/webrtc/stream.js +0 -674
- package/lib/oldCode/webrtc/stream.js.map +0 -1
- package/lib/oldCode/webrtc/temasys/adapter-loader.js +0 -12
- package/lib/oldCode/webrtc/temasys/adapter-loader.js.map +0 -1
- package/lib/oldCode/webrtc/temasys/adapter.js +0 -5861
- package/lib/oldCode/webrtc/temasys/adapter.js.map +0 -1
- package/lib/oldCode/webrtc/webrtc-ie-shim.js +0 -3007
- package/lib/oldCode/webrtc/webrtc-ie-shim.js.map +0 -1
|
@@ -1,28 +1,61 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
return
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
40
|
};
|
|
6
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.registerWebRTCAdapters = exports.onMediaElementResize = exports.isVideoPlaySupportedOnDevice = exports.enumerateMediaDevices = exports.waitForOpenTokIsLoaded = exports.WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL = exports.WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS = void 0;
|
|
42
|
+
exports.waitAfterClearingFilter = exports.registerWebRTCAdapters = exports.onMediaElementResize = exports.isVideoPlaySupportedOnDevice = exports.enumerateMediaDevices = exports.waitForOpenTokIsLoaded = exports.WAIT_FOR_OPENTOK_SWITCH_CAMERA_WITH_BLUR_EFFECT = exports.WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL = exports.WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS = void 0;
|
|
8
43
|
var MediaConstants_1 = require("../MediaConstants");
|
|
9
44
|
var isEqual_1 = __importDefault(require("lodash/isEqual"));
|
|
10
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
11
|
-
//@ts-ignore
|
|
12
45
|
var ts_environment_detect_1 = require("@techsee/techsee-common/lib/helpers/ts-environment-detect");
|
|
13
46
|
var MediaTracer_1 = require("./MediaTracer");
|
|
14
|
-
var trace = MediaTracer_1.getMediaTracer('Compatibility');
|
|
47
|
+
var trace = (0, MediaTracer_1.getMediaTracer)('Compatibility');
|
|
15
48
|
var environmentDetect = new ts_environment_detect_1.TsEnvironmentDetect();
|
|
16
49
|
var isIE11 = environmentDetect.isIE11();
|
|
17
50
|
var monitoredIeElements = new Map();
|
|
18
|
-
// Grace period to wait in the unlikely case that Opentok has not finished initializing,
|
|
19
|
-
// and a session initialization was requested
|
|
20
51
|
exports.WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS = 10;
|
|
21
52
|
exports.WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL = 500;
|
|
53
|
+
exports.WAIT_FOR_OPENTOK_SWITCH_CAMERA_WITH_BLUR_EFFECT = 0;
|
|
22
54
|
function _isOTDefined() {
|
|
23
55
|
try {
|
|
24
56
|
return !!window.OT;
|
|
25
|
-
}
|
|
57
|
+
}
|
|
58
|
+
catch (e) {
|
|
26
59
|
return false;
|
|
27
60
|
}
|
|
28
61
|
}
|
|
@@ -31,26 +64,26 @@ function waitForOpenTokIsLoaded() {
|
|
|
31
64
|
return Promise.resolve();
|
|
32
65
|
}
|
|
33
66
|
var isDefined = false;
|
|
34
|
-
return Promise
|
|
67
|
+
return Promise
|
|
68
|
+
.reduce(new Array(exports.WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS), function () {
|
|
35
69
|
if (isDefined || _isOTDefined()) {
|
|
36
70
|
isDefined = true;
|
|
37
71
|
return Promise.resolve();
|
|
38
72
|
}
|
|
39
73
|
return Promise.delay(exports.WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL);
|
|
40
|
-
}, 0)
|
|
41
|
-
return isDefined || Promise.reject(new Error('OT is undefined'));
|
|
42
|
-
});
|
|
74
|
+
}, 0)
|
|
75
|
+
.then(function () { return isDefined || Promise.reject(new Error('OT is undefined')); });
|
|
43
76
|
}
|
|
44
77
|
exports.waitForOpenTokIsLoaded = waitForOpenTokIsLoaded;
|
|
45
78
|
function enumerateMediaDevices() {
|
|
46
79
|
return new Promise(function (resolve, reject) {
|
|
47
80
|
if (typeof window.OT !== 'undefined' && window.OT && window.OT.getDevices) {
|
|
48
|
-
window.OT.getDevices(function (error, devices) {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
} else if (navigator.mediaDevices && navigator.mediaDevices.enumerateDevices) {
|
|
81
|
+
window.OT.getDevices(function (error, devices) { return (error ? reject(error) : resolve(devices)); });
|
|
82
|
+
}
|
|
83
|
+
else if (navigator.mediaDevices && navigator.mediaDevices.enumerateDevices) {
|
|
52
84
|
navigator.mediaDevices.enumerateDevices().then(resolve).catch(reject);
|
|
53
|
-
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
54
87
|
reject(new Error('Enumerating media devices is not supported'));
|
|
55
88
|
}
|
|
56
89
|
});
|
|
@@ -63,9 +96,7 @@ function isVideoPlaySupportedOnDevice(mediaServiceType) {
|
|
|
63
96
|
return Promise.resolve(true);
|
|
64
97
|
}
|
|
65
98
|
if (isOpenTokService) {
|
|
66
|
-
return waitForOpenTokIsLoaded().then(function () {
|
|
67
|
-
return window.OT && window.OTPlugin && window.OTPlugin.isInstalled && window.OTPlugin.isInstalled();
|
|
68
|
-
});
|
|
99
|
+
return waitForOpenTokIsLoaded().then(function () { return window.OT && window.OTPlugin && window.OTPlugin.isInstalled && window.OTPlugin.isInstalled(); });
|
|
69
100
|
}
|
|
70
101
|
if (isMediaServer) {
|
|
71
102
|
return Promise.resolve(false);
|
|
@@ -78,25 +109,27 @@ function isVideoPlaySupportedOnDevice(mediaServiceType) {
|
|
|
78
109
|
exports.isVideoPlaySupportedOnDevice = isVideoPlaySupportedOnDevice;
|
|
79
110
|
function onMediaElementResize(mediaElement, onResizeHandler) {
|
|
80
111
|
var checkTimeoutPtr = null;
|
|
81
|
-
var unsubscribeIE = function
|
|
112
|
+
var unsubscribeIE = function () {
|
|
82
113
|
clearTimeout(checkTimeoutPtr);
|
|
83
114
|
monitoredIeElements.delete(mediaElement);
|
|
84
115
|
};
|
|
85
116
|
if (!isIE11) {
|
|
86
117
|
mediaElement.addEventListener('resize', onResizeHandler, false);
|
|
87
|
-
}
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
88
120
|
monitoredIeElements.set(mediaElement, {
|
|
89
121
|
videoWidth: mediaElement.videoWidth,
|
|
90
122
|
videoHeight: mediaElement.videoHeight
|
|
91
123
|
});
|
|
92
|
-
var checkElementSize_1 = function
|
|
124
|
+
var checkElementSize_1 = function () {
|
|
93
125
|
var lastElementSize = monitoredIeElements.get(mediaElement);
|
|
94
126
|
if (!lastElementSize) {
|
|
95
127
|
unsubscribeIE();
|
|
96
|
-
}
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
97
130
|
var currentSize = { videoWidth: mediaElement.videoWidth, videoHeight: mediaElement.videoHeight };
|
|
98
131
|
checkTimeoutPtr = setTimeout(checkElementSize_1, 500);
|
|
99
|
-
if (!isEqual_1.default(currentSize, lastElementSize)) {
|
|
132
|
+
if (!(0, isEqual_1.default)(currentSize, lastElementSize)) {
|
|
100
133
|
monitoredIeElements.set(mediaElement, lastElementSize);
|
|
101
134
|
setTimeout(onResizeHandler);
|
|
102
135
|
}
|
|
@@ -107,7 +140,8 @@ function onMediaElementResize(mediaElement, onResizeHandler) {
|
|
|
107
140
|
return function () {
|
|
108
141
|
if (!isIE11) {
|
|
109
142
|
mediaElement && mediaElement.removeEventListener('resize', onResizeHandler);
|
|
110
|
-
}
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
111
145
|
unsubscribeIE();
|
|
112
146
|
}
|
|
113
147
|
};
|
|
@@ -116,13 +150,21 @@ exports.onMediaElementResize = onMediaElementResize;
|
|
|
116
150
|
function registerWebRTCAdapters() {
|
|
117
151
|
if (isIE11) {
|
|
118
152
|
require('../webrtc-ie-shim.js');
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
|
|
153
|
+
}
|
|
154
|
+
else if (!(environmentDetect.isChrome() && environmentDetect.majorVersion() < 49)) {
|
|
155
|
+
require('webrtc-adapter/dist/adapter_core');
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
122
158
|
trace.warn('no WebRTC adapters loaded.');
|
|
123
159
|
}
|
|
124
160
|
}
|
|
125
161
|
exports.registerWebRTCAdapters = registerWebRTCAdapters;
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
162
|
+
function waitAfterClearingFilter() {
|
|
163
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
164
|
+
return __generator(this, function (_a) {
|
|
165
|
+
return [2, Promise.delay(exports.WAIT_FOR_OPENTOK_SWITCH_CAMERA_WITH_BLUR_EFFECT)];
|
|
166
|
+
});
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
exports.waitAfterClearingFilter = waitAfterClearingFilter;
|
|
170
|
+
//# sourceMappingURL=Compatibility.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MediaUtils/Compatibility.js"],"names":["__importDefault","mod","__esModule","Object","defineProperty","exports","value","registerWebRTCAdapters","onMediaElementResize","isVideoPlaySupportedOnDevice","enumerateMediaDevices","waitForOpenTokIsLoaded","WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL","WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS","MediaConstants_1","require","isEqual_1","ts_environment_detect_1","MediaTracer_1","trace","getMediaTracer","environmentDetect","TsEnvironmentDetect","isIE11","monitoredIeElements","Map","_isOTDefined","window","OT","e","Promise","resolve","isDefined","reduce","Array","delay","then","reject","Error","getDevices","error","devices","navigator","mediaDevices","enumerateDevices","catch","mediaServiceType","isOpenTokService","MediaServiceType","OPENTOK","isMediaServer","MEDIASERVER","OTPlugin","isInstalled","WebRTCAdapter","mediaElement","onResizeHandler","checkTimeoutPtr","unsubscribeIE","clearTimeout","delete","addEventListener","set","videoWidth","videoHeight","checkElementSize_1","lastElementSize","get","currentSize","setTimeout","default","removeEventListener","isChrome","majorVersion","warn"],"mappings":"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","file":"Compatibility.js","sourcesContent":["\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.registerWebRTCAdapters = exports.onMediaElementResize = exports.isVideoPlaySupportedOnDevice = exports.enumerateMediaDevices = exports.waitForOpenTokIsLoaded = exports.WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL = exports.WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS = void 0;\nvar MediaConstants_1 = require(\"../MediaConstants\");\nvar isEqual_1 = __importDefault(require(\"lodash/isEqual\"));\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n//@ts-ignore\nvar ts_environment_detect_1 = require(\"@techsee/techsee-common/lib/helpers/ts-environment-detect\");\nvar MediaTracer_1 = require(\"./MediaTracer\");\nvar trace = MediaTracer_1.getMediaTracer('Compatibility');\nvar environmentDetect = new ts_environment_detect_1.TsEnvironmentDetect();\nvar isIE11 = environmentDetect.isIE11();\nvar monitoredIeElements = new Map();\n// Grace period to wait in the unlikely case that Opentok has not finished initializing,\n// and a session initialization was requested\nexports.WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS = 10;\nexports.WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL = 500;\nfunction _isOTDefined() {\n try {\n return !!window.OT;\n }\n catch (e) {\n return false;\n }\n}\nfunction waitForOpenTokIsLoaded() {\n if (_isOTDefined()) {\n return Promise.resolve();\n }\n var isDefined = false;\n return Promise.reduce(new Array(exports.WAIT_FOR_OPENTOK_INITIALIZATION_MAX_ATTEMPTS), function () {\n if (isDefined || _isOTDefined()) {\n isDefined = true;\n return Promise.resolve();\n }\n return Promise.delay(exports.WAIT_FOR_OPENTOK_INITIALIZATION_INTERVAL);\n }, 0)\n .then(function () { return isDefined || Promise.reject(new Error('OT is undefined')); });\n}\nexports.waitForOpenTokIsLoaded = waitForOpenTokIsLoaded;\nfunction enumerateMediaDevices() {\n return new Promise(function (resolve, reject) {\n if ((typeof window.OT !== 'undefined') && window.OT && window.OT.getDevices) {\n window.OT.getDevices(function (error, devices) { return (error ? reject(error) : resolve(devices)); });\n }\n else if (navigator.mediaDevices && navigator.mediaDevices.enumerateDevices) {\n navigator.mediaDevices.enumerateDevices().then(resolve).catch(reject);\n }\n else {\n reject(new Error('Enumerating media devices is not supported'));\n }\n });\n}\nexports.enumerateMediaDevices = enumerateMediaDevices;\nfunction isVideoPlaySupportedOnDevice(mediaServiceType) {\n var isOpenTokService = mediaServiceType === MediaConstants_1.MediaServiceType.OPENTOK;\n var isMediaServer = mediaServiceType === MediaConstants_1.MediaServiceType.MEDIASERVER;\n if (!isIE11) {\n return Promise.resolve(true);\n }\n if (isOpenTokService) {\n return waitForOpenTokIsLoaded().then(function () { return window.OT && window.OTPlugin && window.OTPlugin.isInstalled && window.OTPlugin.isInstalled(); });\n }\n if (isMediaServer) {\n return Promise.resolve(false);\n }\n if (window.WebRTCAdapter) {\n return Promise.resolve(true);\n }\n return Promise.resolve(false);\n}\nexports.isVideoPlaySupportedOnDevice = isVideoPlaySupportedOnDevice;\nfunction onMediaElementResize(mediaElement, onResizeHandler) {\n var checkTimeoutPtr = null;\n var unsubscribeIE = function () {\n clearTimeout(checkTimeoutPtr);\n monitoredIeElements.delete(mediaElement);\n };\n if (!isIE11) {\n mediaElement.addEventListener('resize', onResizeHandler, false);\n }\n else {\n monitoredIeElements.set(mediaElement, {\n videoWidth: mediaElement.videoWidth,\n videoHeight: mediaElement.videoHeight\n });\n var checkElementSize_1 = function () {\n var lastElementSize = monitoredIeElements.get(mediaElement);\n if (!lastElementSize) {\n unsubscribeIE();\n }\n else {\n var currentSize = { videoWidth: mediaElement.videoWidth, videoHeight: mediaElement.videoHeight };\n checkTimeoutPtr = setTimeout(checkElementSize_1, 500);\n if (!isEqual_1.default(currentSize, lastElementSize)) {\n monitoredIeElements.set(mediaElement, lastElementSize);\n setTimeout(onResizeHandler);\n }\n }\n };\n checkElementSize_1();\n }\n return function () {\n if (!isIE11) {\n mediaElement && mediaElement.removeEventListener('resize', onResizeHandler);\n }\n else {\n unsubscribeIE();\n }\n };\n}\nexports.onMediaElementResize = onMediaElementResize;\nfunction registerWebRTCAdapters() {\n if (isIE11) {\n require('../webrtc-ie-shim.js');\n }\n else if (!(environmentDetect.isChrome() && (environmentDetect.majorVersion() < 49))) {\n require('webrtc-adapter/src/js/adapter_core'); // eslint-disable-line global-require\n }\n else {\n trace.warn('no WebRTC adapters loaded.');\n }\n}\nexports.registerWebRTCAdapters = registerWebRTCAdapters;\n\n//# sourceMappingURL=Compatibility.js.map\n"]}
|
|
1
|
+
{"version":3,"file":"Compatibility.js","sourceRoot":"","sources":["../../src/MediaUtils/Compatibility.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { SnapshotOptions } from '../MediaContracts';
|
|
2
|
-
import { KnownMediaStream } from '../MediaConstants';
|
|
1
|
+
import { SnapshotOptions, VideoResolution } from '../MediaContracts';
|
|
2
|
+
import { KnownMediaStream, VideoResolutionFormat } from '../MediaConstants';
|
|
3
|
+
export declare function calculateResolution({ videoWidth, videoHeight }: VideoResolution): VideoResolutionFormat;
|
|
3
4
|
export declare function renderMediaStreamToVideoEl(container: HTMLDivElement, mediaStream: MediaStream, streamType: KnownMediaStream): Promise<HTMLVideoElement>;
|
|
4
5
|
export declare function removeVideoElementFromDom(videoEl: HTMLVideoElement): Promise<void>;
|
|
5
6
|
export declare function getSnapshotFromMediaStream(mediaStream: MediaStream, sourceStream: KnownMediaStream, snapshotOptions?: SnapshotOptions): Promise<string>;
|
|
7
|
+
//# sourceMappingURL=MediaDomUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"file":"MediaDomUtils.d.ts","sourceRoot":"","sources":["../../src/MediaUtils/MediaDomUtils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,eAAe,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAC,gBAAgB,EAAE,qBAAqB,EAAgC,MAAM,mBAAmB,CAAC;AAMzG,wBAAgB,mBAAmB,CAAC,EAAC,UAAU,EAAE,WAAW,EAAC,EAAE,eAAe,yBAgB7E;AAED,wBAAgB,0BAA0B,CACtC,SAAS,EAAE,cAAc,EACzB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,gBAAgB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CA0F3B;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBlF;AAOD,wBAAgB,0BAA0B,CACtC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,gBAAgB,EAC9B,eAAe,GAAE,eAAiC,GACnD,OAAO,CAAC,MAAM,CAAC,CAuGjB"}
|
|
@@ -1,26 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
return mod && mod.__esModule ? mod : { "default": mod };
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
4
|
};
|
|
6
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.getSnapshotFromMediaStream = exports.removeVideoElementFromDom = exports.renderMediaStreamToVideoEl = void 0;
|
|
6
|
+
exports.getSnapshotFromMediaStream = exports.removeVideoElementFromDom = exports.renderMediaStreamToVideoEl = exports.calculateResolution = void 0;
|
|
8
7
|
var isUndefined_1 = __importDefault(require("lodash/isUndefined"));
|
|
9
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
10
|
-
//@ts-ignore
|
|
11
8
|
var ts_environment_detect_1 = require("@techsee/techsee-common/lib/helpers/ts-environment-detect");
|
|
12
9
|
var retry_with_timeout_1 = require("@techsee/techsee-common/lib/core/retry-with-timeout");
|
|
13
10
|
var MediaTracer_1 = require("./MediaTracer");
|
|
14
11
|
var MediaConstants_1 = require("../MediaConstants");
|
|
15
|
-
var trace = MediaTracer_1.getMediaTracer('DomUtils');
|
|
12
|
+
var trace = (0, MediaTracer_1.getMediaTracer)('DomUtils');
|
|
16
13
|
var isIE11 = new ts_environment_detect_1.TsEnvironmentDetect().isIE11();
|
|
14
|
+
function calculateResolution(_a) {
|
|
15
|
+
var videoWidth = _a.videoWidth, videoHeight = _a.videoHeight;
|
|
16
|
+
var multiplyResolution = videoWidth * videoHeight;
|
|
17
|
+
var videoResolutionFormat = MediaConstants_1.VideoResolutionFormat.NONE;
|
|
18
|
+
if (multiplyResolution >= MediaConstants_1.VideoResolutionMultiplication.HD) {
|
|
19
|
+
videoResolutionFormat = MediaConstants_1.VideoResolutionFormat.HD;
|
|
20
|
+
}
|
|
21
|
+
if (multiplyResolution >= MediaConstants_1.VideoResolutionMultiplication.SD &&
|
|
22
|
+
multiplyResolution < MediaConstants_1.VideoResolutionMultiplication.HD) {
|
|
23
|
+
videoResolutionFormat = MediaConstants_1.VideoResolutionFormat.SD;
|
|
24
|
+
}
|
|
25
|
+
return videoResolutionFormat;
|
|
26
|
+
}
|
|
27
|
+
exports.calculateResolution = calculateResolution;
|
|
17
28
|
function renderMediaStreamToVideoEl(container, mediaStream, streamType) {
|
|
18
29
|
return new Promise(function (resolve, reject) {
|
|
19
30
|
if (!document.body.contains(container)) {
|
|
20
31
|
reject(new Error('Cannot render to container that is not attached to dom'));
|
|
21
32
|
return;
|
|
22
33
|
}
|
|
23
|
-
var doResolve = function
|
|
34
|
+
var doResolve = function (videoEl) {
|
|
24
35
|
trace.info('Video element created successfully', { videoEl: videoEl });
|
|
25
36
|
resolve(videoEl);
|
|
26
37
|
};
|
|
@@ -32,15 +43,17 @@ function renderMediaStreamToVideoEl(container, mediaStream, streamType) {
|
|
|
32
43
|
window.WebRTCAdapter.bindVideoElement(videoEl);
|
|
33
44
|
}
|
|
34
45
|
videoEl.srcObject = mediaStream;
|
|
35
|
-
// When unplugged the headphones in ios the video element got paused.
|
|
36
46
|
videoEl.addEventListener('pause', function () {
|
|
37
|
-
if ([
|
|
47
|
+
if ([
|
|
48
|
+
MediaConstants_1.KnownMediaStream.USER_AUDIO_STREAM,
|
|
49
|
+
MediaConstants_1.KnownMediaStream.AGENT_AUDIO_STREAM,
|
|
50
|
+
MediaConstants_1.KnownMediaStream.OBSERVER_AUDIO_STREAM
|
|
51
|
+
].indexOf(streamType) > -1) {
|
|
38
52
|
trace.info('Video element got paused. IOS headphones disconnected');
|
|
39
53
|
videoEl.play();
|
|
40
54
|
}
|
|
41
55
|
});
|
|
42
56
|
if (!isIE11) {
|
|
43
|
-
// Hack to override behavior introduced by Chrome/FF that unmuted video elements can't auto play
|
|
44
57
|
videoEl.setAttribute('muted', '');
|
|
45
58
|
}
|
|
46
59
|
try {
|
|
@@ -52,7 +65,8 @@ function renderMediaStreamToVideoEl(container, mediaStream, streamType) {
|
|
|
52
65
|
doResolve(videoEl);
|
|
53
66
|
}
|
|
54
67
|
});
|
|
55
|
-
}
|
|
68
|
+
}
|
|
69
|
+
else if (!isIE11) {
|
|
56
70
|
doResolve(videoEl);
|
|
57
71
|
}
|
|
58
72
|
if (playRes && playRes.catch) {
|
|
@@ -61,31 +75,25 @@ function renderMediaStreamToVideoEl(container, mediaStream, streamType) {
|
|
|
61
75
|
reject(error);
|
|
62
76
|
});
|
|
63
77
|
}
|
|
64
|
-
}
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
65
80
|
reject(error);
|
|
66
81
|
trace.error('Error while executing play method on video element', error);
|
|
67
82
|
return;
|
|
68
83
|
}
|
|
69
84
|
if (isIE11) {
|
|
70
|
-
var handleComplete = function
|
|
71
|
-
return videoEl.parentElement.tagName !== 'OBJECT';
|
|
72
|
-
};
|
|
85
|
+
var handleComplete = function () { return videoEl.parentElement.tagName !== 'OBJECT'; };
|
|
73
86
|
var waitForObjectSettings = { intervalInMs: 30, timeoutInMs: 200 };
|
|
74
|
-
retry_with_timeout_1.repeatWithTimeout(handleComplete, waitForObjectSettings).then(function () {
|
|
75
|
-
|
|
76
|
-
var isVideoPlaying = function isVideoPlaying() {
|
|
77
|
-
return videoEl.videoHeight <= 0 || videoEl.videoWidth <= 0;
|
|
78
|
-
};
|
|
87
|
+
(0, retry_with_timeout_1.repeatWithTimeout)(handleComplete, waitForObjectSettings).then(function () {
|
|
88
|
+
var isVideoPlaying = function () { return videoEl.videoHeight <= 0 || videoEl.videoWidth <= 0; };
|
|
79
89
|
var waitForVideoSettings = { intervalInMs: 50, timeoutInMs: 10000 };
|
|
80
|
-
retry_with_timeout_1.repeatWithTimeout(isVideoPlaying, waitForVideoSettings)
|
|
81
|
-
return doResolve(videoEl.parentElement);
|
|
82
|
-
|
|
83
|
-
return reject(new Error('Timeout while waiting for video to play'));
|
|
84
|
-
});
|
|
90
|
+
(0, retry_with_timeout_1.repeatWithTimeout)(isVideoPlaying, waitForVideoSettings)
|
|
91
|
+
.then(function () { return doResolve(videoEl.parentElement); })
|
|
92
|
+
.catch(function () { return reject(new Error('Timeout while waiting for video to play')); });
|
|
85
93
|
});
|
|
86
|
-
}
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
87
96
|
container.appendChild(videoEl);
|
|
88
|
-
//doResolve(videoEl);
|
|
89
97
|
}
|
|
90
98
|
});
|
|
91
99
|
}
|
|
@@ -97,10 +105,12 @@ function removeVideoElementFromDom(videoEl) {
|
|
|
97
105
|
if (videoEl && videoEl.parentNode && videoEl.parentNode.removeChild) {
|
|
98
106
|
videoEl.parentNode.removeChild(videoEl);
|
|
99
107
|
trace.info('Video element removed successfully');
|
|
100
|
-
}
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
101
110
|
trace.warn('Video element not removed', videoEl, videoEl.parentNode);
|
|
102
111
|
}
|
|
103
|
-
}
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
104
114
|
videoEl.remove();
|
|
105
115
|
}
|
|
106
116
|
resolve();
|
|
@@ -112,22 +122,15 @@ var defaultSnapshot = {
|
|
|
112
122
|
quality: 0.92
|
|
113
123
|
};
|
|
114
124
|
function getSnapshotFromMediaStream(mediaStream, sourceStream, snapshotOptions) {
|
|
115
|
-
if (snapshotOptions === void 0) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
var
|
|
119
|
-
quality = snapshotOptions.quality,
|
|
120
|
-
x = snapshotOptions.x,
|
|
121
|
-
y = snapshotOptions.y,
|
|
122
|
-
w = snapshotOptions.w,
|
|
123
|
-
h = snapshotOptions.h;
|
|
124
|
-
var crop = !isUndefined_1.default(x) && !isUndefined_1.default(y) && !isUndefined_1.default(w) && !isUndefined_1.default(h);
|
|
125
|
-
var resize = !crop && (!isUndefined_1.default(w) || !isUndefined_1.default(h));
|
|
125
|
+
if (snapshotOptions === void 0) { snapshotOptions = defaultSnapshot; }
|
|
126
|
+
var format = snapshotOptions.format, quality = snapshotOptions.quality, x = snapshotOptions.x, y = snapshotOptions.y, w = snapshotOptions.w, h = snapshotOptions.h;
|
|
127
|
+
var crop = !(0, isUndefined_1.default)(x) && !(0, isUndefined_1.default)(y) && !(0, isUndefined_1.default)(w) && !(0, isUndefined_1.default)(h);
|
|
128
|
+
var resize = !crop && (!(0, isUndefined_1.default)(w) || !(0, isUndefined_1.default)(h));
|
|
126
129
|
return new Promise(function (resolve, reject) {
|
|
127
130
|
var tempContainer = document.createElement('div');
|
|
128
131
|
tempContainer.style.cssText = 'position:absolute;left: -10000px;';
|
|
129
132
|
document.body.appendChild(tempContainer);
|
|
130
|
-
var doneFn = function
|
|
133
|
+
var doneFn = function (err, image) {
|
|
131
134
|
if (err) {
|
|
132
135
|
reject(err);
|
|
133
136
|
return;
|
|
@@ -139,72 +142,71 @@ function getSnapshotFromMediaStream(mediaStream, sourceStream, snapshotOptions)
|
|
|
139
142
|
}
|
|
140
143
|
}, 50);
|
|
141
144
|
};
|
|
142
|
-
renderMediaStreamToVideoEl(tempContainer, mediaStream, sourceStream)
|
|
145
|
+
renderMediaStreamToVideoEl(tempContainer, mediaStream, sourceStream)
|
|
146
|
+
.then(function (videoElement) {
|
|
143
147
|
return Promise.resolve(isIE11 ? getImgDataIE11(videoElement) : getImgData(videoElement)).then(function (imgData) {
|
|
144
148
|
if (!imgData || imgData.length < 10) {
|
|
145
149
|
throw new Error('Failed to create a snapshot - imgData is null or empty');
|
|
146
150
|
}
|
|
147
151
|
doneFn(null, imgData);
|
|
148
152
|
});
|
|
149
|
-
})
|
|
150
|
-
|
|
153
|
+
})
|
|
154
|
+
.catch(function (error) {
|
|
155
|
+
return doneFn(error || new Error('Failed to create a snapshot - cannot render MediaStream To VideoEl'));
|
|
151
156
|
});
|
|
152
157
|
});
|
|
153
|
-
//Gets image in all browsers except of IE
|
|
154
158
|
function getImgData(videoElement) {
|
|
155
|
-
var videoWidth = videoElement.videoWidth,
|
|
156
|
-
videoHeight = videoElement.videoHeight;
|
|
159
|
+
var videoWidth = videoElement.videoWidth, videoHeight = videoElement.videoHeight;
|
|
157
160
|
var canvas = document.createElement('canvas');
|
|
158
161
|
var ctx = canvas.getContext('2d');
|
|
159
162
|
if (crop) {
|
|
160
163
|
canvas.width = w;
|
|
161
164
|
canvas.height = h;
|
|
162
165
|
ctx.drawImage(videoElement, x, y, w, h, 0, 0, w, h);
|
|
163
|
-
}
|
|
166
|
+
}
|
|
167
|
+
else if (resize) {
|
|
164
168
|
canvas.width = w;
|
|
165
169
|
canvas.height = h;
|
|
166
170
|
ctx.drawImage(videoElement, 0, 0, w, h);
|
|
167
|
-
}
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
168
173
|
canvas.height = videoHeight;
|
|
169
174
|
canvas.width = videoWidth;
|
|
170
175
|
ctx.drawImage(videoElement, 0, 0);
|
|
171
176
|
}
|
|
172
177
|
return canvas.toDataURL(format, quality);
|
|
173
178
|
}
|
|
174
|
-
//Gets image in IE browser. There should be TechSee IE11 plugin or OpenTok plugin installed.
|
|
175
179
|
function getImgDataIE11(videoElement) {
|
|
176
180
|
return new Promise(function (resolve) {
|
|
177
|
-
var videoWidth = videoElement.videoWidth,
|
|
178
|
-
videoHeight = videoElement.videoHeight;
|
|
181
|
+
var videoWidth = videoElement.videoWidth, videoHeight = videoElement.videoHeight;
|
|
179
182
|
var canvas = document.createElement('canvas');
|
|
180
183
|
var ctx = canvas.getContext('2d');
|
|
181
184
|
if (crop || resize) {
|
|
182
185
|
canvas.width = w;
|
|
183
186
|
canvas.height = h;
|
|
184
|
-
}
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
185
189
|
canvas.height = videoHeight;
|
|
186
190
|
canvas.width = videoWidth;
|
|
187
191
|
}
|
|
188
192
|
function _drawAndRemove(image) {
|
|
189
193
|
if (crop) {
|
|
190
194
|
ctx.drawImage(image, x, y, w, h, 0, 0, w, h);
|
|
191
|
-
}
|
|
195
|
+
}
|
|
196
|
+
else if (resize) {
|
|
192
197
|
ctx.drawImage(image, 0, 0, w, h);
|
|
193
|
-
}
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
194
200
|
ctx.drawImage(image, 0, 0, videoWidth, videoHeight);
|
|
195
201
|
}
|
|
196
202
|
return canvas.toDataURL(format, quality);
|
|
197
203
|
}
|
|
198
204
|
var base64 = videoElement.getFrame();
|
|
199
205
|
var image = new Image();
|
|
200
|
-
image.onload = function () {
|
|
201
|
-
return resolve(_drawAndRemove(image));
|
|
202
|
-
};
|
|
206
|
+
image.onload = function () { return resolve(_drawAndRemove(image)); };
|
|
203
207
|
image.setAttribute('src', 'data:image/bmp;base64,' + base64);
|
|
204
208
|
});
|
|
205
209
|
}
|
|
206
210
|
}
|
|
207
211
|
exports.getSnapshotFromMediaStream = getSnapshotFromMediaStream;
|
|
208
|
-
|
|
209
|
-
//# sourceMappingURL=MediaDomUtils.js.map
|
|
210
|
-
//# sourceMappingURL=MediaDomUtils.js.map
|
|
212
|
+
//# sourceMappingURL=MediaDomUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MediaUtils/MediaDomUtils.js"],"names":["__importDefault","mod","__esModule","Object","defineProperty","exports","value","getSnapshotFromMediaStream","removeVideoElementFromDom","renderMediaStreamToVideoEl","isUndefined_1","require","ts_environment_detect_1","retry_with_timeout_1","MediaTracer_1","MediaConstants_1","trace","getMediaTracer","isIE11","TsEnvironmentDetect","container","mediaStream","streamType","Promise","resolve","reject","document","body","contains","Error","doResolve","videoEl","info","createElement","muted","playsInline","window","WebRTCAdapter","appendChild","bindVideoElement","srcObject","addEventListener","KnownMediaStream","USER_AUDIO_STREAM","AGENT_AUDIO_STREAM","OBSERVER_AUDIO_STREAM","indexOf","play","setAttribute","playRes","then","catch","error","handleComplete","parentElement","tagName","waitForObjectSettings","intervalInMs","timeoutInMs","repeatWithTimeout","isVideoPlaying","videoHeight","videoWidth","waitForVideoSettings","unBindVideoElement","parentNode","removeChild","warn","remove","defaultSnapshot","format","quality","sourceStream","snapshotOptions","x","y","w","h","crop","default","resize","tempContainer","style","cssText","doneFn","err","image","setTimeout","videoElement","getImgDataIE11","getImgData","imgData","length","canvas","ctx","getContext","width","height","drawImage","toDataURL","_drawAndRemove","base64","getFrame","Image","onload"],"mappings":"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","file":"MediaDomUtils.js","sourcesContent":["\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getSnapshotFromMediaStream = exports.removeVideoElementFromDom = exports.renderMediaStreamToVideoEl = void 0;\nvar isUndefined_1 = __importDefault(require(\"lodash/isUndefined\"));\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n//@ts-ignore\nvar ts_environment_detect_1 = require(\"@techsee/techsee-common/lib/helpers/ts-environment-detect\");\nvar retry_with_timeout_1 = require(\"@techsee/techsee-common/lib/core/retry-with-timeout\");\nvar MediaTracer_1 = require(\"./MediaTracer\");\nvar MediaConstants_1 = require(\"../MediaConstants\");\nvar trace = MediaTracer_1.getMediaTracer('DomUtils');\nvar isIE11 = (new ts_environment_detect_1.TsEnvironmentDetect()).isIE11();\nfunction renderMediaStreamToVideoEl(container, mediaStream, streamType) {\n return new Promise(function (resolve, reject) {\n if (!document.body.contains(container)) {\n reject(new Error('Cannot render to container that is not attached to dom'));\n return;\n }\n var doResolve = function (videoEl) {\n trace.info('Video element created successfully', { videoEl: videoEl });\n resolve(videoEl);\n };\n var videoEl = document.createElement('video');\n videoEl.muted = true;\n videoEl.playsInline = true;\n if (isIE11 && window.WebRTCAdapter) {\n container.appendChild(videoEl);\n window.WebRTCAdapter.bindVideoElement(videoEl);\n }\n videoEl.srcObject = mediaStream;\n // When unplugged the headphones in ios the video element got paused.\n videoEl.addEventListener('pause', function () {\n if ([MediaConstants_1.KnownMediaStream.USER_AUDIO_STREAM, MediaConstants_1.KnownMediaStream.AGENT_AUDIO_STREAM, MediaConstants_1.KnownMediaStream.OBSERVER_AUDIO_STREAM]\n .indexOf(streamType) > -1) {\n trace.info('Video element got paused. IOS headphones disconnected');\n videoEl.play();\n }\n });\n if (!isIE11) {\n // Hack to override behavior introduced by Chrome/FF that unmuted video elements can't auto play\n videoEl.setAttribute('muted', '');\n }\n try {\n var playRes = videoEl.play();\n if (playRes && playRes.then) {\n playRes.then(function () {\n trace.info('Video element play success');\n if (!isIE11) {\n doResolve(videoEl);\n }\n });\n }\n else if (!isIE11) {\n doResolve(videoEl);\n }\n if (playRes && playRes.catch) {\n playRes.catch(function (error) {\n trace.error('Reject while executing play method on video element', error);\n reject(error);\n });\n }\n }\n catch (error) {\n reject(error);\n trace.error('Error while executing play method on video element', error);\n return;\n }\n if (isIE11) {\n var handleComplete = function () { return videoEl.parentElement.tagName !== 'OBJECT'; };\n var waitForObjectSettings = { intervalInMs: 30, timeoutInMs: 200 };\n retry_with_timeout_1.repeatWithTimeout(handleComplete, waitForObjectSettings)\n .then(function () {\n //We will wait, until video is played, then we resolve\n var isVideoPlaying = function () { return videoEl.videoHeight <= 0 || videoEl.videoWidth <= 0; };\n var waitForVideoSettings = { intervalInMs: 50, timeoutInMs: 10000 };\n retry_with_timeout_1.repeatWithTimeout(isVideoPlaying, waitForVideoSettings)\n .then(function () { return doResolve(videoEl.parentElement); })\n .catch(function () { return reject(new Error('Timeout while waiting for video to play')); });\n });\n }\n else {\n container.appendChild(videoEl);\n //doResolve(videoEl);\n }\n });\n}\nexports.renderMediaStreamToVideoEl = renderMediaStreamToVideoEl;\nfunction removeVideoElementFromDom(videoEl) {\n return new Promise(function (resolve) {\n if (isIE11 && window.WebRTCAdapter) {\n window.WebRTCAdapter.unBindVideoElement(videoEl);\n if (videoEl && videoEl.parentNode && videoEl.parentNode.removeChild) {\n videoEl.parentNode.removeChild(videoEl);\n trace.info('Video element removed successfully');\n }\n else {\n trace.warn('Video element not removed', videoEl, videoEl.parentNode);\n }\n }\n else {\n videoEl.remove();\n }\n resolve();\n });\n}\nexports.removeVideoElementFromDom = removeVideoElementFromDom;\nvar defaultSnapshot = {\n format: 'image/png',\n quality: 0.92\n};\nfunction getSnapshotFromMediaStream(mediaStream, sourceStream, snapshotOptions) {\n if (snapshotOptions === void 0) { snapshotOptions = defaultSnapshot; }\n var format = snapshotOptions.format, quality = snapshotOptions.quality, x = snapshotOptions.x, y = snapshotOptions.y, w = snapshotOptions.w, h = snapshotOptions.h;\n var crop = !isUndefined_1.default(x) && !isUndefined_1.default(y) && !isUndefined_1.default(w) && !isUndefined_1.default(h);\n var resize = !crop && (!isUndefined_1.default(w) || !isUndefined_1.default(h));\n return new Promise(function (resolve, reject) {\n var tempContainer = document.createElement('div');\n tempContainer.style.cssText = 'position:absolute;left: -10000px;';\n document.body.appendChild(tempContainer);\n var doneFn = function (err, image) {\n if (err) {\n reject(err);\n return;\n }\n setTimeout(function () {\n document.body.removeChild(tempContainer);\n if (!err) {\n resolve(image);\n }\n }, 50);\n };\n renderMediaStreamToVideoEl(tempContainer, mediaStream, sourceStream)\n .then(function (videoElement) { return Promise.resolve(isIE11 ? getImgDataIE11(videoElement) : getImgData(videoElement))\n .then(function (imgData) {\n if (!imgData || imgData.length < 10) {\n throw new Error('Failed to create a snapshot - imgData is null or empty');\n }\n doneFn(null, imgData);\n }); })\n .catch(function (error) {\n doneFn(error || new Error('Failed to create a snapshot - can\\'t render MediaStream To VideoEl '));\n });\n });\n //Gets image in all browsers except of IE\n function getImgData(videoElement) {\n var videoWidth = videoElement.videoWidth, videoHeight = videoElement.videoHeight;\n var canvas = document.createElement('canvas');\n var ctx = canvas.getContext('2d');\n if (crop) {\n canvas.width = w;\n canvas.height = h;\n ctx.drawImage(videoElement, x, y, w, h, 0, 0, w, h);\n }\n else if (resize) {\n canvas.width = w;\n canvas.height = h;\n ctx.drawImage(videoElement, 0, 0, w, h);\n }\n else {\n canvas.height = videoHeight;\n canvas.width = videoWidth;\n ctx.drawImage(videoElement, 0, 0);\n }\n return canvas.toDataURL(format, quality);\n }\n //Gets image in IE browser. There should be TechSee IE11 plugin or OpenTok plugin installed.\n function getImgDataIE11(videoElement) {\n return new Promise(function (resolve) {\n var videoWidth = videoElement.videoWidth, videoHeight = videoElement.videoHeight;\n var canvas = document.createElement('canvas');\n var ctx = canvas.getContext('2d');\n if (crop || resize) {\n canvas.width = w;\n canvas.height = h;\n }\n else {\n canvas.height = videoHeight;\n canvas.width = videoWidth;\n }\n function _drawAndRemove(image) {\n if (crop) {\n ctx.drawImage(image, x, y, w, h, 0, 0, w, h);\n }\n else if (resize) {\n ctx.drawImage(image, 0, 0, w, h);\n }\n else {\n ctx.drawImage(image, 0, 0, videoWidth, videoHeight);\n }\n return canvas.toDataURL(format, quality);\n }\n var base64 = videoElement.getFrame();\n var image = new Image();\n image.onload = function () { return resolve(_drawAndRemove(image)); };\n image.setAttribute('src', 'data:image/bmp;base64,' + base64);\n });\n }\n}\nexports.getSnapshotFromMediaStream = getSnapshotFromMediaStream;\n\n//# sourceMappingURL=MediaDomUtils.js.map\n"]}
|
|
1
|
+
{"version":3,"file":"MediaDomUtils.js","sourceRoot":"","sources":["../../src/MediaUtils/MediaDomUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"file":"MediaTracer.d.ts","sourceRoot":"","sources":["../../src/MediaUtils/MediaTracer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAC,MAAM,yCAAyC,CAAC;AAElF,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AAElD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAElE"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.getMediaTracer = exports.TECHSEE_MEDIA_TRACER = void 0;
|
|
5
4
|
var Tracer_1 = require("@techsee/techsee-common/lib/core/Tracer");
|
|
6
5
|
exports.TECHSEE_MEDIA_TRACER = 'MediaTracer';
|
|
7
6
|
function getMediaTracer(postfixName) {
|
|
8
|
-
return Tracer_1.getTracer(exports.TECHSEE_MEDIA_TRACER, postfixName);
|
|
7
|
+
return (0, Tracer_1.getTracer)(exports.TECHSEE_MEDIA_TRACER, postfixName);
|
|
9
8
|
}
|
|
10
9
|
exports.getMediaTracer = getMediaTracer;
|
|
11
|
-
|
|
12
|
-
//# sourceMappingURL=MediaTracer.js.map
|
|
13
|
-
//# sourceMappingURL=MediaTracer.js.map
|
|
10
|
+
//# sourceMappingURL=MediaTracer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"MediaTracer.js","sourceRoot":"","sources":["../../src/MediaUtils/MediaTracer.ts"],"names":[],"mappings":";;;AAAA,kEAAkF;AAErE,QAAA,oBAAoB,GAAG,aAAa,CAAC;AAElD,SAAgB,cAAc,CAAC,WAAmB;IAC9C,OAAO,IAAA,kBAAS,EAAC,4BAAoB,EAAE,WAAW,CAAC,CAAC;AACxD,CAAC;AAFD,wCAEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/MediaUtils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC"}
|