@webex/plugin-meetings 3.0.0-beta.39 → 3.0.0-beta.391
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 +58 -8
- package/dist/annotation/annotation.types.js +7 -0
- package/dist/annotation/annotation.types.js.map +1 -0
- package/dist/annotation/constants.js +49 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +342 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +94 -15
- package/dist/breakouts/breakout.js.map +1 -1
- package/dist/breakouts/events.js +45 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +671 -81
- package/dist/breakouts/index.js.map +1 -1
- package/dist/breakouts/utils.js +45 -1
- package/dist/breakouts/utils.js.map +1 -1
- package/dist/common/errors/no-meeting-info.js +51 -0
- package/dist/common/errors/no-meeting-info.js.map +1 -0
- package/dist/common/errors/reclaim-host-role-errors.js +158 -0
- package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
- package/dist/common/errors/webex-errors.js +48 -7
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +1 -1
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/common/logs/request.js +5 -1
- package/dist/common/logs/request.js.map +1 -1
- package/dist/common/queue.js +24 -9
- package/dist/common/queue.js.map +1 -1
- package/dist/config.js +5 -10
- package/dist/config.js.map +1 -1
- package/dist/constants.js +242 -33
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.js +14 -2
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/index.js +109 -15
- package/dist/controls-options-manager/index.js.map +1 -1
- package/dist/controls-options-manager/types.js +7 -0
- package/dist/controls-options-manager/types.js.map +1 -0
- package/dist/controls-options-manager/util.js +309 -18
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/index.js +110 -2
- package/dist/index.js.map +1 -1
- package/dist/interceptors/index.js +15 -0
- package/dist/interceptors/index.js.map +1 -0
- package/dist/interceptors/locusRetry.js +93 -0
- package/dist/interceptors/locusRetry.js.map +1 -0
- package/dist/interpretation/collection.js +23 -0
- package/dist/interpretation/collection.js.map +1 -0
- package/dist/interpretation/index.js +380 -0
- package/dist/interpretation/index.js.map +1 -0
- package/dist/interpretation/siLanguage.js +25 -0
- package/dist/interpretation/siLanguage.js.map +1 -0
- package/dist/locus-info/controlsUtils.js +91 -2
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +386 -62
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +7 -1
- package/dist/locus-info/infoUtils.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +71 -1
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +249 -72
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +89 -14
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +65 -102
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +73 -124
- package/dist/media/properties.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +135 -330
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +86 -2
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +4075 -2827
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +292 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -0
- package/dist/meeting/muteState.js +224 -136
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +177 -152
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/util.js +672 -417
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/index.js +73 -7
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +192 -51
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/util.js +1 -1
- package/dist/meeting-info/util.js.map +1 -1
- package/dist/meeting-info/utilv2.js +36 -36
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/collection.js +39 -0
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +484 -119
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/meetings.types.js +7 -0
- package/dist/meetings/meetings.types.js.map +1 -0
- package/dist/meetings/request.js +2 -0
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +73 -7
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +58 -0
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js +25 -0
- package/dist/member/types.js.map +1 -0
- package/dist/member/util.js +132 -25
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js +10 -0
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +102 -6
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +106 -38
- package/dist/members/request.js.map +1 -1
- package/dist/members/types.js +15 -0
- package/dist/members/types.js.map +1 -0
- package/dist/members/util.js +326 -232
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +18 -1
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +1 -446
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +223 -32
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/receiveSlot.js +10 -0
- package/dist/multistream/receiveSlot.js.map +1 -1
- package/dist/multistream/receiveSlotManager.js +39 -36
- package/dist/multistream/receiveSlotManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js +3 -1
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/remoteMediaGroup.js +76 -5
- package/dist/multistream/remoteMediaGroup.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +366 -104
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/multistream/sendSlotManager.js +255 -0
- package/dist/multistream/sendSlotManager.js.map +1 -0
- package/dist/reachability/clusterReachability.js +356 -0
- package/dist/reachability/clusterReachability.js.map +1 -0
- package/dist/reachability/index.js +263 -390
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +6 -4
- package/dist/reachability/request.js.map +1 -1
- package/dist/reachability/util.js +29 -0
- package/dist/reachability/util.js.map +1 -0
- package/dist/reconnection-manager/index.js +266 -202
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/index.js +21 -2
- package/dist/recording-controller/index.js.map +1 -1
- package/dist/recording-controller/util.js +9 -8
- package/dist/recording-controller/util.js.map +1 -1
- package/dist/roap/index.js +51 -28
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +48 -64
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +220 -70
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/rtcMetrics/constants.js +12 -0
- package/dist/rtcMetrics/constants.js.map +1 -0
- package/dist/rtcMetrics/index.js +179 -0
- package/dist/rtcMetrics/index.js.map +1 -0
- package/dist/statsAnalyzer/index.js +357 -295
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +296 -156
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +42 -0
- package/dist/types/annotation/constants.d.ts +31 -0
- package/dist/types/annotation/index.d.ts +117 -0
- package/dist/types/breakouts/events.d.ts +8 -0
- package/dist/types/breakouts/utils.d.ts +14 -0
- package/dist/types/common/errors/no-meeting-info.d.ts +14 -0
- package/dist/types/common/errors/reclaim-host-role-errors.d.ts +60 -0
- package/dist/types/common/errors/webex-errors.d.ts +25 -1
- package/dist/types/common/logs/request.d.ts +2 -0
- package/dist/types/common/queue.d.ts +9 -7
- package/dist/types/config.d.ts +2 -7
- package/dist/types/constants.d.ts +203 -31
- package/dist/types/controls-options-manager/enums.d.ts +11 -1
- package/dist/types/controls-options-manager/index.d.ts +17 -1
- package/dist/types/controls-options-manager/types.d.ts +43 -0
- package/dist/types/controls-options-manager/util.d.ts +1 -7
- package/dist/types/index.d.ts +6 -5
- package/dist/types/interceptors/index.d.ts +2 -0
- package/dist/types/interceptors/locusRetry.d.ts +27 -0
- package/dist/types/interpretation/collection.d.ts +5 -0
- package/dist/types/interpretation/index.d.ts +5 -0
- package/dist/types/interpretation/siLanguage.d.ts +5 -0
- package/dist/types/locus-info/index.d.ts +57 -4
- package/dist/types/locus-info/parser.d.ts +66 -6
- package/dist/types/media/index.d.ts +2 -0
- package/dist/types/media/properties.d.ts +34 -49
- package/dist/types/mediaQualityMetrics/config.d.ts +99 -223
- package/dist/types/meeting/in-meeting-actions.d.ts +86 -2
- package/dist/types/meeting/index.d.ts +567 -496
- package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
- package/dist/types/meeting/muteState.d.ts +93 -25
- package/dist/types/meeting/request.d.ts +64 -43
- package/dist/types/meeting/util.d.ts +117 -1
- package/dist/types/meeting-info/index.d.ts +13 -1
- package/dist/types/meeting-info/meeting-info-v2.d.ts +31 -1
- package/dist/types/meetings/collection.d.ts +17 -0
- package/dist/types/meetings/index.d.ts +113 -21
- package/dist/types/meetings/meetings.types.d.ts +4 -0
- package/dist/types/member/index.d.ts +14 -0
- package/dist/types/member/types.d.ts +32 -0
- package/dist/types/members/collection.d.ts +5 -0
- package/dist/types/members/index.d.ts +35 -2
- package/dist/types/members/request.d.ts +73 -9
- package/dist/types/members/types.d.ts +25 -0
- package/dist/types/members/util.d.ts +214 -1
- package/dist/types/metrics/constants.d.ts +17 -0
- package/dist/types/metrics/index.d.ts +4 -111
- package/dist/types/multistream/mediaRequestManager.d.ts +72 -3
- package/dist/types/multistream/receiveSlot.d.ts +7 -3
- package/dist/types/multistream/receiveSlotManager.d.ts +14 -4
- package/dist/types/multistream/remoteMedia.d.ts +3 -31
- package/dist/types/multistream/remoteMediaGroup.d.ts +2 -9
- package/dist/types/multistream/remoteMediaManager.d.ts +62 -2
- package/dist/types/multistream/sendSlotManager.d.ts +70 -0
- package/dist/types/reachability/clusterReachability.d.ts +109 -0
- package/dist/types/reachability/index.d.ts +60 -95
- package/dist/types/reachability/request.d.ts +3 -1
- package/dist/types/reachability/util.d.ts +8 -0
- package/dist/types/reconnection-manager/index.d.ts +19 -0
- package/dist/types/recording-controller/index.d.ts +15 -1
- package/dist/types/recording-controller/util.d.ts +5 -4
- package/dist/types/roap/index.d.ts +2 -1
- package/dist/types/roap/request.d.ts +9 -8
- package/dist/types/roap/turnDiscovery.d.ts +39 -5
- package/dist/types/rtcMetrics/constants.d.ts +4 -0
- package/dist/types/rtcMetrics/index.d.ts +61 -0
- package/dist/types/statsAnalyzer/index.d.ts +34 -12
- package/dist/types/statsAnalyzer/mqaUtil.d.ts +28 -4
- package/dist/types/webinar/collection.d.ts +16 -0
- package/dist/types/webinar/index.d.ts +5 -0
- package/dist/webinar/collection.js +44 -0
- package/dist/webinar/collection.js.map +1 -0
- package/dist/webinar/index.js +69 -0
- package/dist/webinar/index.js.map +1 -0
- package/package.json +22 -19
- package/src/annotation/annotation.types.ts +50 -0
- package/src/annotation/constants.ts +36 -0
- package/src/annotation/index.ts +328 -0
- package/src/breakouts/README.md +35 -11
- package/src/breakouts/breakout.ts +67 -9
- package/src/breakouts/events.ts +56 -0
- package/src/breakouts/index.ts +558 -59
- package/src/breakouts/utils.ts +42 -0
- package/src/common/errors/no-meeting-info.ts +24 -0
- package/src/common/errors/reclaim-host-role-errors.ts +134 -0
- package/src/common/errors/webex-errors.ts +44 -2
- package/src/common/logs/logger-proxy.ts +1 -1
- package/src/common/logs/request.ts +5 -1
- package/src/common/queue.ts +22 -8
- package/src/config.ts +4 -9
- package/src/constants.ts +229 -21
- package/src/controls-options-manager/enums.ts +12 -0
- package/src/controls-options-manager/index.ts +116 -21
- package/src/controls-options-manager/types.ts +59 -0
- package/src/controls-options-manager/util.ts +294 -14
- package/src/index.ts +44 -0
- package/src/interceptors/index.ts +3 -0
- package/src/interceptors/locusRetry.ts +67 -0
- package/src/interpretation/README.md +60 -0
- package/src/interpretation/collection.ts +19 -0
- package/src/interpretation/index.ts +349 -0
- package/src/interpretation/siLanguage.ts +18 -0
- package/src/locus-info/controlsUtils.ts +108 -0
- package/src/locus-info/index.ts +417 -59
- package/src/locus-info/infoUtils.ts +10 -2
- package/src/locus-info/mediaSharesUtils.ts +80 -0
- package/src/locus-info/parser.ts +258 -47
- package/src/locus-info/selfUtils.ts +81 -5
- package/src/media/index.ts +100 -108
- package/src/media/properties.ts +88 -117
- package/src/mediaQualityMetrics/config.ts +103 -238
- package/src/meeting/in-meeting-actions.ts +171 -3
- package/src/meeting/index.ts +3411 -2435
- package/src/meeting/locusMediaRequest.ts +313 -0
- package/src/meeting/muteState.ts +223 -136
- package/src/meeting/request.ts +155 -120
- package/src/meeting/util.ts +685 -395
- package/src/meeting-info/index.ts +81 -8
- package/src/meeting-info/meeting-info-v2.ts +170 -14
- package/src/meeting-info/util.ts +1 -1
- package/src/meeting-info/utilv2.ts +23 -23
- package/src/meetings/collection.ts +33 -0
- package/src/meetings/index.ts +507 -127
- package/src/meetings/meetings.types.ts +12 -0
- package/src/meetings/request.ts +2 -0
- package/src/meetings/util.ts +81 -12
- package/src/member/index.ts +58 -0
- package/src/member/types.ts +38 -0
- package/src/member/util.ts +141 -25
- package/src/members/collection.ts +8 -0
- package/src/members/index.ts +134 -8
- package/src/members/request.ts +97 -17
- package/src/members/types.ts +29 -0
- package/src/members/util.ts +333 -240
- package/src/metrics/constants.ts +17 -0
- package/src/metrics/index.ts +1 -469
- package/src/multistream/mediaRequestManager.ts +271 -56
- package/src/multistream/receiveSlot.ts +11 -4
- package/src/multistream/receiveSlotManager.ts +34 -24
- package/src/multistream/remoteMedia.ts +5 -3
- package/src/multistream/remoteMediaGroup.ts +78 -0
- package/src/multistream/remoteMediaManager.ts +248 -44
- package/src/multistream/sendSlotManager.ts +199 -0
- package/src/reachability/clusterReachability.ts +320 -0
- package/src/reachability/index.ts +229 -346
- package/src/reachability/request.ts +8 -4
- package/src/reachability/util.ts +24 -0
- package/src/reconnection-manager/index.ts +128 -97
- package/src/recording-controller/index.ts +20 -3
- package/src/recording-controller/util.ts +26 -9
- package/src/roap/index.ts +52 -23
- package/src/roap/request.ts +48 -67
- package/src/roap/turnDiscovery.ts +147 -49
- package/src/rtcMetrics/constants.ts +3 -0
- package/src/rtcMetrics/index.ts +166 -0
- package/src/statsAnalyzer/index.ts +457 -416
- package/src/statsAnalyzer/mqaUtil.ts +317 -170
- package/src/webinar/collection.ts +31 -0
- package/src/webinar/index.ts +62 -0
- package/test/integration/spec/converged-space-meetings.js +60 -3
- package/test/integration/spec/journey.js +320 -261
- package/test/integration/spec/space-meeting.js +76 -3
- package/test/unit/spec/annotation/index.ts +418 -0
- package/test/unit/spec/breakouts/breakout.ts +118 -28
- package/test/unit/spec/breakouts/events.ts +89 -0
- package/test/unit/spec/breakouts/index.ts +1349 -114
- package/test/unit/spec/breakouts/utils.js +52 -1
- package/test/unit/spec/common/queue.js +31 -2
- package/test/unit/spec/controls-options-manager/index.js +163 -0
- package/test/unit/spec/controls-options-manager/util.js +576 -60
- package/test/unit/spec/fixture/locus.js +1 -0
- package/test/unit/spec/interceptors/locusRetry.ts +131 -0
- package/test/unit/spec/interpretation/collection.ts +15 -0
- package/test/unit/spec/interpretation/index.ts +625 -0
- package/test/unit/spec/interpretation/siLanguage.ts +28 -0
- package/test/unit/spec/locus-info/controlsUtils.js +316 -43
- package/test/unit/spec/locus-info/index.js +1363 -37
- package/test/unit/spec/locus-info/infoUtils.js +37 -15
- package/test/unit/spec/locus-info/lib/SeqCmp.json +16 -0
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +41 -0
- package/test/unit/spec/locus-info/parser.js +116 -35
- package/test/unit/spec/locus-info/selfConstant.js +27 -4
- package/test/unit/spec/locus-info/selfUtils.js +208 -17
- package/test/unit/spec/media/index.ts +173 -81
- package/test/unit/spec/media/properties.ts +2 -2
- package/test/unit/spec/meeting/in-meeting-actions.ts +85 -3
- package/test/unit/spec/meeting/index.js +6821 -2172
- package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
- package/test/unit/spec/meeting/muteState.js +402 -212
- package/test/unit/spec/meeting/request.js +473 -54
- package/test/unit/spec/meeting/utils.js +773 -67
- package/test/unit/spec/meeting-info/index.js +300 -0
- package/test/unit/spec/meeting-info/meetinginfov2.js +526 -5
- package/test/unit/spec/meeting-info/utilv2.js +21 -0
- package/test/unit/spec/meetings/collection.js +26 -0
- package/test/unit/spec/meetings/index.js +1415 -213
- package/test/unit/spec/meetings/utils.js +229 -2
- package/test/unit/spec/member/index.js +61 -6
- package/test/unit/spec/member/util.js +510 -34
- package/test/unit/spec/members/index.js +432 -1
- package/test/unit/spec/members/request.js +206 -27
- package/test/unit/spec/members/utils.js +210 -0
- package/test/unit/spec/metrics/index.js +1 -50
- package/test/unit/spec/multistream/mediaRequestManager.ts +781 -114
- package/test/unit/spec/multistream/receiveSlot.ts +9 -1
- package/test/unit/spec/multistream/receiveSlotManager.ts +32 -30
- package/test/unit/spec/multistream/remoteMedia.ts +2 -0
- package/test/unit/spec/multistream/remoteMediaGroup.ts +345 -0
- package/test/unit/spec/multistream/remoteMediaManager.ts +525 -0
- package/test/unit/spec/multistream/sendSlotManager.ts +274 -0
- package/test/unit/spec/reachability/clusterReachability.ts +279 -0
- package/test/unit/spec/reachability/index.ts +551 -14
- package/test/unit/spec/reachability/request.js +3 -1
- package/test/unit/spec/reachability/util.ts +40 -0
- package/test/unit/spec/reconnection-manager/index.js +171 -11
- package/test/unit/spec/recording-controller/index.js +294 -218
- package/test/unit/spec/recording-controller/util.js +223 -96
- package/test/unit/spec/roap/index.ts +180 -83
- package/test/unit/spec/roap/request.ts +100 -62
- package/test/unit/spec/roap/turnDiscovery.ts +388 -96
- package/test/unit/spec/rtcMetrics/index.ts +122 -0
- package/test/unit/spec/stats-analyzer/index.js +1252 -12
- package/test/unit/spec/webinar/collection.ts +13 -0
- package/test/unit/spec/webinar/index.ts +60 -0
- package/test/utils/integrationTestUtils.js +46 -0
- package/test/utils/testUtils.js +0 -57
- package/test/utils/webex-test-users.js +12 -4
- package/dist/metrics/config.js +0 -289
- package/dist/metrics/config.js.map +0 -1
- package/dist/types/metrics/config.d.ts +0 -169
- package/src/index.js +0 -18
- package/src/metrics/config.ts +0 -485
package/src/media/properties.ts
CHANGED
|
@@ -1,47 +1,65 @@
|
|
|
1
|
+
import {ConnectionState, Event} from '@webex/internal-media-core';
|
|
2
|
+
|
|
1
3
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
} from '@webex/
|
|
8
|
-
|
|
9
|
-
import {MEETINGS,
|
|
4
|
+
LocalCameraStream,
|
|
5
|
+
LocalMicrophoneStream,
|
|
6
|
+
LocalDisplayStream,
|
|
7
|
+
LocalSystemAudioStream,
|
|
8
|
+
RemoteStream,
|
|
9
|
+
} from '@webex/media-helpers';
|
|
10
|
+
|
|
11
|
+
import {MEETINGS, ICE_AND_DTLS_CONNECTION_TIMEOUT, QUALITY_LEVELS} from '../constants';
|
|
10
12
|
import LoggerProxy from '../common/logs/logger-proxy';
|
|
11
13
|
|
|
14
|
+
export type MediaDirection = {
|
|
15
|
+
sendAudio: boolean;
|
|
16
|
+
sendVideo: boolean;
|
|
17
|
+
sendShare: boolean;
|
|
18
|
+
receiveAudio: boolean;
|
|
19
|
+
receiveVideo: boolean;
|
|
20
|
+
receiveShare: boolean;
|
|
21
|
+
};
|
|
22
|
+
|
|
12
23
|
/**
|
|
13
24
|
* @class MediaProperties
|
|
14
25
|
*/
|
|
15
26
|
export default class MediaProperties {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
mediaDirection: any;
|
|
27
|
+
audioStream?: LocalMicrophoneStream;
|
|
28
|
+
mediaDirection: MediaDirection;
|
|
19
29
|
mediaSettings: any;
|
|
20
30
|
webrtcMediaConnection: any;
|
|
21
|
-
|
|
31
|
+
remoteAudioStream: RemoteStream;
|
|
22
32
|
remoteQualityLevel: any;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
33
|
+
remoteShareStream: RemoteStream;
|
|
34
|
+
remoteVideoStream: RemoteStream;
|
|
35
|
+
shareVideoStream?: LocalDisplayStream;
|
|
36
|
+
shareAudioStream?: LocalSystemAudioStream;
|
|
26
37
|
videoDeviceId: any;
|
|
27
|
-
|
|
38
|
+
videoStream?: LocalCameraStream;
|
|
28
39
|
namespace = MEETINGS;
|
|
29
40
|
|
|
30
41
|
/**
|
|
31
42
|
* @param {Object} [options] -- to auto construct
|
|
32
43
|
* @returns {MediaProperties}
|
|
33
44
|
*/
|
|
34
|
-
constructor(
|
|
45
|
+
constructor() {
|
|
35
46
|
this.webrtcMediaConnection = null;
|
|
36
|
-
this.mediaDirection =
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
this.
|
|
47
|
+
this.mediaDirection = {
|
|
48
|
+
receiveAudio: false,
|
|
49
|
+
receiveVideo: false,
|
|
50
|
+
receiveShare: false,
|
|
51
|
+
sendAudio: false,
|
|
52
|
+
sendVideo: false,
|
|
53
|
+
sendShare: false,
|
|
54
|
+
};
|
|
55
|
+
this.videoStream = null;
|
|
56
|
+
this.audioStream = null;
|
|
57
|
+
this.shareVideoStream = null;
|
|
58
|
+
this.shareAudioStream = null;
|
|
59
|
+
this.remoteShareStream = undefined;
|
|
60
|
+
this.remoteAudioStream = undefined;
|
|
61
|
+
this.remoteVideoStream = undefined;
|
|
62
|
+
this.remoteQualityLevel = QUALITY_LEVELS.HIGH;
|
|
45
63
|
this.mediaSettings = {};
|
|
46
64
|
this.videoDeviceId = null;
|
|
47
65
|
}
|
|
@@ -66,46 +84,46 @@ export default class MediaProperties {
|
|
|
66
84
|
this.webrtcMediaConnection = mediaPeerConnection;
|
|
67
85
|
}
|
|
68
86
|
|
|
69
|
-
|
|
70
|
-
this.
|
|
87
|
+
setLocalVideoStream(videoStream?: LocalCameraStream) {
|
|
88
|
+
this.videoStream = videoStream;
|
|
71
89
|
}
|
|
72
90
|
|
|
73
|
-
|
|
74
|
-
this.
|
|
91
|
+
setLocalAudioStream(audioStream?: LocalMicrophoneStream) {
|
|
92
|
+
this.audioStream = audioStream;
|
|
75
93
|
}
|
|
76
94
|
|
|
77
|
-
|
|
78
|
-
this.
|
|
95
|
+
setLocalShareVideoStream(shareVideoStream?: LocalDisplayStream) {
|
|
96
|
+
this.shareVideoStream = shareVideoStream;
|
|
79
97
|
}
|
|
80
98
|
|
|
81
|
-
|
|
82
|
-
this.
|
|
99
|
+
setLocalShareAudioStream(shareAudioStream?: LocalSystemAudioStream) {
|
|
100
|
+
this.shareAudioStream = shareAudioStream;
|
|
83
101
|
}
|
|
84
102
|
|
|
85
103
|
setRemoteQualityLevel(remoteQualityLevel) {
|
|
86
104
|
this.remoteQualityLevel = remoteQualityLevel;
|
|
87
105
|
}
|
|
88
106
|
|
|
89
|
-
|
|
90
|
-
this.
|
|
107
|
+
setRemoteShareStream(remoteShareStream: RemoteStream) {
|
|
108
|
+
this.remoteShareStream = remoteShareStream;
|
|
91
109
|
}
|
|
92
110
|
|
|
93
111
|
/**
|
|
94
|
-
* Sets the remote audio
|
|
95
|
-
* @param {
|
|
112
|
+
* Sets the remote audio stream
|
|
113
|
+
* @param {RemoteStream} remoteAudioStream RemoteStream to save
|
|
96
114
|
* @returns {void}
|
|
97
115
|
*/
|
|
98
|
-
|
|
99
|
-
this.
|
|
116
|
+
setRemoteAudioStream(remoteAudioStream: RemoteStream) {
|
|
117
|
+
this.remoteAudioStream = remoteAudioStream;
|
|
100
118
|
}
|
|
101
119
|
|
|
102
120
|
/**
|
|
103
|
-
* Sets the remote video
|
|
104
|
-
* @param {
|
|
121
|
+
* Sets the remote video stream
|
|
122
|
+
* @param {RemoteStream} remoteVideoStream RemoteStream to save
|
|
105
123
|
* @returns {void}
|
|
106
124
|
*/
|
|
107
|
-
|
|
108
|
-
this.
|
|
125
|
+
setRemoteVideoStream(remoteVideoStream: RemoteStream) {
|
|
126
|
+
this.remoteVideoStream = remoteVideoStream;
|
|
109
127
|
}
|
|
110
128
|
|
|
111
129
|
/**
|
|
@@ -121,96 +139,34 @@ export default class MediaProperties {
|
|
|
121
139
|
this.webrtcMediaConnection = null;
|
|
122
140
|
}
|
|
123
141
|
|
|
124
|
-
unsetLocalVideoTrack() {
|
|
125
|
-
this.videoTrack = null;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
unsetLocalShareTrack() {
|
|
129
|
-
this.shareTrack = null;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
unsetLocalAudioTrack() {
|
|
133
|
-
this.audioTrack = null;
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
/**
|
|
137
|
-
* Removes remote stream from class instance
|
|
138
|
-
* @deprecated after v1.89.3
|
|
139
|
-
* @returns {void}
|
|
140
|
-
*/
|
|
141
|
-
unsetRemoteStream() {
|
|
142
|
-
LoggerProxy.logger.warn(
|
|
143
|
-
'Media:properties#unsetRemoteStream --> [DEPRECATION WARNING]: unsetRemoteStream has been deprecated after v1.89.3 (use unsetRemoteTracks instead)'
|
|
144
|
-
);
|
|
145
|
-
// unsets audio and video only
|
|
146
|
-
this.unsetRemoteMedia();
|
|
147
|
-
}
|
|
148
|
-
|
|
149
142
|
/**
|
|
150
143
|
* Removes both remote audio and video from class instance
|
|
151
144
|
* @returns {void}
|
|
152
145
|
*/
|
|
153
146
|
unsetRemoteMedia() {
|
|
154
|
-
this.
|
|
155
|
-
this.
|
|
147
|
+
this.remoteAudioStream = null;
|
|
148
|
+
this.remoteVideoStream = null;
|
|
156
149
|
}
|
|
157
150
|
|
|
158
|
-
|
|
159
|
-
this.
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
unsetLocalVideoTracks() {
|
|
163
|
-
this.unsetLocalVideoTrack();
|
|
164
|
-
this.unsetLocalShareTrack();
|
|
151
|
+
unsetRemoteShareStream() {
|
|
152
|
+
this.remoteShareStream = null;
|
|
165
153
|
}
|
|
166
154
|
|
|
167
155
|
/**
|
|
168
|
-
*
|
|
169
|
-
* @deprecated after v1.89.3
|
|
156
|
+
* Unsets all remote streams
|
|
170
157
|
* @returns {void}
|
|
171
158
|
*/
|
|
172
159
|
unsetRemoteStreams() {
|
|
173
|
-
LoggerProxy.logger.warn(
|
|
174
|
-
'Media:properties#unsetRemoteStreams --> [DEPRECATION WARNING]: unsetRemoteStreams has been deprecated after v1.89.3 (use unsetRemoteTracks instead)'
|
|
175
|
-
);
|
|
176
|
-
this.unsetRemoteStream();
|
|
177
|
-
this.unsetRemoteShare();
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
/**
|
|
181
|
-
* Unsets all remote tracks
|
|
182
|
-
* @returns {void}
|
|
183
|
-
*/
|
|
184
|
-
unsetRemoteTracks() {
|
|
185
160
|
this.unsetRemoteMedia();
|
|
186
|
-
this.
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
unsetShareStreams() {
|
|
190
|
-
this.unsetLocalShareTrack();
|
|
191
|
-
this.unsetRemoteShare();
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
/**
|
|
195
|
-
* Removes both local and remote video stream from class instance
|
|
196
|
-
* @deprecated after v1.89.3
|
|
197
|
-
* @returns {void}
|
|
198
|
-
*/
|
|
199
|
-
unsetMediaStreams() {
|
|
200
|
-
LoggerProxy.logger.warn(
|
|
201
|
-
'Media:properties#unsetMediaStreams --> [DEPRECATION WARNING]: unsetMediaStreams has been deprecated after v1.89.3 (use unsetMediaTracks instead)'
|
|
202
|
-
);
|
|
203
|
-
this.unsetLocalVideoTrack();
|
|
204
|
-
this.unsetRemoteStream();
|
|
161
|
+
this.unsetRemoteShareStream();
|
|
205
162
|
}
|
|
206
163
|
|
|
207
164
|
/**
|
|
208
|
-
*
|
|
209
|
-
* @returns {
|
|
165
|
+
* Returns if we have at least one local share stream or not.
|
|
166
|
+
* @returns {Boolean}
|
|
210
167
|
*/
|
|
211
|
-
|
|
212
|
-
this.
|
|
213
|
-
this.unsetRemoteMedia();
|
|
168
|
+
hasLocalShareStream() {
|
|
169
|
+
return !!(this.shareAudioStream || this.shareVideoStream);
|
|
214
170
|
}
|
|
215
171
|
|
|
216
172
|
/**
|
|
@@ -244,7 +200,7 @@ export default class MediaProperties {
|
|
|
244
200
|
timer = setTimeout(() => {
|
|
245
201
|
this.webrtcMediaConnection.off(Event.CONNECTION_STATE_CHANGED, connectionStateListener);
|
|
246
202
|
reject();
|
|
247
|
-
},
|
|
203
|
+
}, ICE_AND_DTLS_CONNECTION_TIMEOUT);
|
|
248
204
|
|
|
249
205
|
this.webrtcMediaConnection.on(Event.CONNECTION_STATE_CHANGED, connectionStateListener);
|
|
250
206
|
});
|
|
@@ -303,10 +259,25 @@ export default class MediaProperties {
|
|
|
303
259
|
|
|
304
260
|
return true;
|
|
305
261
|
}
|
|
262
|
+
LoggerProxy.logger.warn(
|
|
263
|
+
`Media:properties#getCurrentConnectionType --> missing localCandidate.protocol, candidateType=${localCandidate.candidateType}`
|
|
264
|
+
);
|
|
306
265
|
|
|
307
266
|
return false;
|
|
308
267
|
});
|
|
309
268
|
|
|
269
|
+
if (foundConnectionType === 'unknown') {
|
|
270
|
+
const candidatePairStates = allStatsReports
|
|
271
|
+
.filter((report) => report.type === 'candidate-pair')
|
|
272
|
+
.map((report) => report.state);
|
|
273
|
+
|
|
274
|
+
LoggerProxy.logger.warn(
|
|
275
|
+
`Media:properties#getCurrentConnectionType --> all candidate pair states: ${JSON.stringify(
|
|
276
|
+
candidatePairStates
|
|
277
|
+
)}`
|
|
278
|
+
);
|
|
279
|
+
}
|
|
280
|
+
|
|
310
281
|
return foundConnectionType;
|
|
311
282
|
}
|
|
312
283
|
}
|
|
@@ -44,28 +44,28 @@ export const emptyAudioReceive = {
|
|
|
44
44
|
stunPackets: 0,
|
|
45
45
|
transportType: 'UDP',
|
|
46
46
|
},
|
|
47
|
-
streams: [
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
47
|
+
streams: [],
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
export const emptyAudioReceiveStream = {
|
|
51
|
+
common: {
|
|
52
|
+
codec: 'opus',
|
|
53
|
+
concealedFrames: 0,
|
|
54
|
+
csi: [],
|
|
55
|
+
maxConcealRunLength: 0,
|
|
56
|
+
optimalBitrate: 0,
|
|
57
|
+
optimalFrameRate: 0,
|
|
58
|
+
receivedBitrate: 0,
|
|
59
|
+
receivedFrameRate: 0,
|
|
60
|
+
renderedFrameRate: 0,
|
|
61
|
+
requestedBitrate: 0,
|
|
62
|
+
requestedFrameRate: 0,
|
|
63
|
+
rtpEndToEndLost: 0,
|
|
64
|
+
maxRtpJitter: 0,
|
|
65
|
+
meanRtpJitter: 0,
|
|
66
|
+
rtpPackets: 0,
|
|
67
|
+
ssci: 0,
|
|
68
|
+
},
|
|
69
69
|
};
|
|
70
70
|
|
|
71
71
|
export const emptyAudioTransmit = {
|
|
@@ -98,20 +98,20 @@ export const emptyAudioTransmit = {
|
|
|
98
98
|
stunPackets: 0,
|
|
99
99
|
transportType: 'UDP',
|
|
100
100
|
},
|
|
101
|
-
streams: [
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
101
|
+
streams: [],
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
export const emptyAudioTransmitStream = {
|
|
105
|
+
common: {
|
|
106
|
+
codec: 'opus',
|
|
107
|
+
csi: [],
|
|
108
|
+
requestedBitrate: 0,
|
|
109
|
+
requestedFrames: 0,
|
|
110
|
+
rtpPackets: 0,
|
|
111
|
+
ssci: 0,
|
|
112
|
+
transmittedBitrate: 0,
|
|
113
|
+
transmittedFrameRate: 0,
|
|
114
|
+
},
|
|
115
115
|
};
|
|
116
116
|
|
|
117
117
|
export const emptyVideoReceive = {
|
|
@@ -143,39 +143,39 @@ export const emptyVideoReceive = {
|
|
|
143
143
|
stunPackets: 0, // Not avaliable
|
|
144
144
|
transportType: 'UDP',
|
|
145
145
|
},
|
|
146
|
-
streams: [
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
146
|
+
streams: [],
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
export const emptyVideoReceiveStream = {
|
|
150
|
+
common: {
|
|
151
|
+
codec: 'H264',
|
|
152
|
+
concealedFrames: 0, // Not avaliable
|
|
153
|
+
csi: [],
|
|
154
|
+
maxConcealRunLength: 0, // Not avaliable
|
|
155
|
+
optimalBitrate: 0,
|
|
156
|
+
optimalFrameRate: 0,
|
|
157
|
+
receivedBitrate: 0,
|
|
158
|
+
receivedFrameRate: 0,
|
|
159
|
+
renderedFrameRate: 0, // Not avaliable
|
|
160
|
+
requestedBitrate: 0,
|
|
161
|
+
requestedFrameRate: 0,
|
|
162
|
+
rtpEndToEndLost: 0,
|
|
163
|
+
rtpJitter: 0,
|
|
164
|
+
rtpPackets: 0,
|
|
165
|
+
ssci: 0, // Not avaliable
|
|
166
|
+
},
|
|
167
|
+
h264CodecProfile: 'BP',
|
|
168
|
+
isActiveSpeaker: true,
|
|
169
|
+
optimalFrameSize: 0, // Not avaliable
|
|
170
|
+
receivedFrameSize: 0,
|
|
171
|
+
receivedHeight: 0,
|
|
172
|
+
receivedKeyFrames: 0,
|
|
173
|
+
receivedKeyFramesForRequest: 0,
|
|
174
|
+
receivedKeyFramesSourceChange: 0,
|
|
175
|
+
receivedKeyFramesUnknown: 0,
|
|
176
|
+
receivedWidth: 0,
|
|
177
|
+
requestedFrameSize: 0,
|
|
178
|
+
requestedKeyFrames: 0,
|
|
179
179
|
};
|
|
180
180
|
|
|
181
181
|
export const emptyVideoTransmit = {
|
|
@@ -208,177 +208,42 @@ export const emptyVideoTransmit = {
|
|
|
208
208
|
stunPackets: 0, // Dont have access to it
|
|
209
209
|
transportType: 'UDP', // TODO: need to calculate
|
|
210
210
|
},
|
|
211
|
-
streams: [
|
|
212
|
-
{
|
|
213
|
-
common: {
|
|
214
|
-
codec: 'H264',
|
|
215
|
-
csi: [],
|
|
216
|
-
duplicateSsci: 0, // Not Avaliable
|
|
217
|
-
requestedBitrate: 0, // TODO: from remote SDP
|
|
218
|
-
requestedFrames: 0, // TODO: from remote SDP
|
|
219
|
-
rtpPackets: 0, // same as rtp packets
|
|
220
|
-
ssci: 0,
|
|
221
|
-
transmittedBitrate: 0, // TODO: get in the candidate pair
|
|
222
|
-
transmittedFrameRate: 0, // TODO: from track info
|
|
223
|
-
},
|
|
224
|
-
h264CodecProfile: 'BP', // TODO: from localSDP
|
|
225
|
-
isAvatar: false, // Not Avaliable
|
|
226
|
-
isHardwareEncoded: false, // Not Avaliable
|
|
227
|
-
localConfigurationChanges: 2, // Not Avaliable
|
|
228
|
-
maxFrameQp: 0, // Not Avaliable
|
|
229
|
-
maxNoiseLevel: 0, // Not Avaliable
|
|
230
|
-
minRegionQp: 0, // Not Avaliable
|
|
231
|
-
remoteConfigurationChanges: 0, // Not Avaliable
|
|
232
|
-
requestedFrameSize: 0, // TODO: from remote SDP
|
|
233
|
-
requestedKeyFrames: 0, // outbound Fir request
|
|
234
|
-
transmittedFrameSize: 0, // Not Avaliable
|
|
235
|
-
transmittedHeight: 0,
|
|
236
|
-
transmittedKeyFrames: 0, // Key frames encoded
|
|
237
|
-
transmittedKeyFramesClient: 0, // Not Avaliable
|
|
238
|
-
transmittedKeyFramesConfigurationChange: 0, // Not Avaliable
|
|
239
|
-
transmittedKeyFramesFeedback: 0, // Not Avaliable
|
|
240
|
-
transmittedKeyFramesLocalDrop: 0, // Not Avaliable
|
|
241
|
-
transmittedKeyFramesOtherLayer: 0, // Not Avaliable
|
|
242
|
-
transmittedKeyFramesPeriodic: 0, // Not Avaliable
|
|
243
|
-
transmittedKeyFramesSceneChange: 0, // Not Avaliable
|
|
244
|
-
transmittedKeyFramesStartup: 0, // Not Avaliable
|
|
245
|
-
transmittedKeyFramesUnknown: 0, // Not Avaliable
|
|
246
|
-
transmittedWidth: 0,
|
|
247
|
-
},
|
|
248
|
-
],
|
|
249
|
-
};
|
|
250
|
-
|
|
251
|
-
export const emptyVideoShareReceive = {
|
|
252
|
-
common: {
|
|
253
|
-
common: {
|
|
254
|
-
direction: 'inactive',
|
|
255
|
-
isMain: false, // Not avaliable
|
|
256
|
-
mariFecEnabled: true, // Not avaliable
|
|
257
|
-
mariQosEnabled: true, // Not avaliable
|
|
258
|
-
multistreamEnabled: true, // Not avaliable
|
|
259
|
-
},
|
|
260
|
-
dtlsBitrate: 0, // Not avaliable
|
|
261
|
-
dtlsPackets: 0, // Not avaliable
|
|
262
|
-
fecBitrate: 0, // Not avaliable
|
|
263
|
-
fecPackets: 0, // Not avaliable
|
|
264
|
-
maxBitrate: 0,
|
|
265
|
-
mediaHopByHopLost: 0,
|
|
266
|
-
rtcpBitrate: 0, // Not avaliable
|
|
267
|
-
rtcpPackets: 0, // Not avaliable
|
|
268
|
-
rtpBitrate: 0,
|
|
269
|
-
rtpHopByHopLost: 0,
|
|
270
|
-
rtpPackets: 0,
|
|
271
|
-
rtpRecovered: 0, // Not avaliable
|
|
272
|
-
rtxBitrate: 0, // Not avaliable
|
|
273
|
-
rtxPackets: 0, // Not avaliable
|
|
274
|
-
srtcpUnprotectErrors: 0, // Not avaliable
|
|
275
|
-
srtpUnprotectErrors: 0, // Not avaliable
|
|
276
|
-
stunBitrate: 0, // Not avaliable
|
|
277
|
-
stunPackets: 0, // Not avaliable
|
|
278
|
-
transportType: 'UDP',
|
|
279
|
-
},
|
|
280
|
-
streams: [
|
|
281
|
-
{
|
|
282
|
-
common: {
|
|
283
|
-
codec: 'H264',
|
|
284
|
-
concealedFrames: 0, // Not avaliable
|
|
285
|
-
csi: [],
|
|
286
|
-
maxConcealRunLength: 0, // Not avaliable
|
|
287
|
-
optimalBitrate: 0,
|
|
288
|
-
optimalFrameRate: 0,
|
|
289
|
-
receivedBitrate: 0,
|
|
290
|
-
receivedFrameRate: 0,
|
|
291
|
-
renderedFrameRate: 0, // Not avaliable
|
|
292
|
-
requestedBitrate: 0,
|
|
293
|
-
requestedFrameRate: 0,
|
|
294
|
-
rtpEndToEndLost: 0,
|
|
295
|
-
rtpJitter: 0,
|
|
296
|
-
rtpPackets: 0,
|
|
297
|
-
ssci: 0, // Not avaliable
|
|
298
|
-
},
|
|
299
|
-
h264CodecProfile: 'BP',
|
|
300
|
-
isActiveSpeaker: true,
|
|
301
|
-
optimalFrameSize: 0, // Not avaliable
|
|
302
|
-
receivedFrameSize: 0,
|
|
303
|
-
receivedHeight: 0,
|
|
304
|
-
receivedKeyFrames: 0,
|
|
305
|
-
receivedKeyFramesForRequest: 0,
|
|
306
|
-
receivedKeyFramesSourceChange: 0,
|
|
307
|
-
receivedKeyFramesUnknown: 0,
|
|
308
|
-
receivedWidth: 0,
|
|
309
|
-
requestedFrameSize: 0,
|
|
310
|
-
requestedKeyFrames: 0,
|
|
311
|
-
},
|
|
312
|
-
],
|
|
211
|
+
streams: [],
|
|
313
212
|
};
|
|
314
213
|
|
|
315
|
-
export const
|
|
316
|
-
// sceen sharing
|
|
214
|
+
export const emptyVideoTransmitStream = {
|
|
317
215
|
common: {
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
dtlsPackets: 0, // Not avaliable
|
|
328
|
-
fecBitrate: 0, // Not avaliable
|
|
329
|
-
fecPackets: 0, // TODO: check inbound-rtp// Not avaliable
|
|
330
|
-
maxBitrate: 0, // Currently hardcoded
|
|
331
|
-
queueDelay: 0, // outboundRtp.totalPacketSentDelay // TODO: check if totalInterFrameDelay/ packetSentDelay/ jitterBufferDalay
|
|
332
|
-
remoteJitter: 0, // remoteInboundRtp.jitter
|
|
333
|
-
remoteLossRate: 0, // comparedResults.lossRate
|
|
334
|
-
remoteReceiveRate: 0, // compareResults.packetsLost
|
|
335
|
-
roundTripTime: 0, // compareResults.roundTripTime
|
|
336
|
-
rtcpBitrate: 0, // Dont have access to it
|
|
337
|
-
rtcpPackets: 0, // Dont have access to rtcp
|
|
338
|
-
rtpBitrate: 0, // Dont have access
|
|
339
|
-
rtpPackets: 0, // outboundRtp.packetsSent
|
|
340
|
-
rtxBitrate: 0, // Dont have access to it
|
|
341
|
-
rtxPackets: 0, // Dont have access to it
|
|
342
|
-
stunBitrate: 0, // Dont have access to it
|
|
343
|
-
stunPackets: 0, // Dont have access to it
|
|
344
|
-
transportType: 'UDP', // TODO: need to calculate
|
|
216
|
+
codec: 'H264',
|
|
217
|
+
csi: [],
|
|
218
|
+
duplicateSsci: 0, // Not Avaliable
|
|
219
|
+
requestedBitrate: 0, // TODO: from remote SDP
|
|
220
|
+
requestedFrames: 0, // TODO: from remote SDP
|
|
221
|
+
rtpPackets: 0, // same as rtp packets
|
|
222
|
+
ssci: 0,
|
|
223
|
+
transmittedBitrate: 0, // TODO: get in the candidate pair
|
|
224
|
+
transmittedFrameRate: 0, // TODO: from track info
|
|
345
225
|
},
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
transmittedFrameSize: 0, // Not Avaliable
|
|
370
|
-
transmittedHeight: 0,
|
|
371
|
-
transmittedKeyFrames: 0, // Key frames encoded
|
|
372
|
-
transmittedKeyFramesClient: 0, // Not Avaliable
|
|
373
|
-
transmittedKeyFramesConfigurationChange: 0, // Not Avaliable
|
|
374
|
-
transmittedKeyFramesFeedback: 0, // Not Avaliable
|
|
375
|
-
transmittedKeyFramesLocalDrop: 0, // Not Avaliable
|
|
376
|
-
transmittedKeyFramesOtherLayer: 0, // Not Avaliable
|
|
377
|
-
transmittedKeyFramesPeriodic: 0, // Not Avaliable
|
|
378
|
-
transmittedKeyFramesSceneChange: 0, // Not Avaliable
|
|
379
|
-
transmittedKeyFramesStartup: 0, // Not Avaliable
|
|
380
|
-
transmittedKeyFramesUnknown: 0, // Not Avaliable
|
|
381
|
-
transmittedWidth: 0,
|
|
382
|
-
},
|
|
383
|
-
],
|
|
226
|
+
h264CodecProfile: 'BP', // TODO: from localSDP
|
|
227
|
+
isAvatar: false, // Not Avaliable
|
|
228
|
+
isHardwareEncoded: false, // Not Avaliable
|
|
229
|
+
localConfigurationChanges: 2, // Not Avaliable
|
|
230
|
+
maxFrameQp: 0, // Not Avaliable
|
|
231
|
+
maxNoiseLevel: 0, // Not Avaliable
|
|
232
|
+
minRegionQp: 0, // Not Avaliable
|
|
233
|
+
remoteConfigurationChanges: 0, // Not Avaliable
|
|
234
|
+
requestedFrameSize: 0, // TODO: from remote SDP
|
|
235
|
+
requestedKeyFrames: 0, // outbound Fir request
|
|
236
|
+
transmittedFrameSize: 0, // Not Avaliable
|
|
237
|
+
transmittedHeight: 0,
|
|
238
|
+
transmittedKeyFrames: 0, // Key frames encoded
|
|
239
|
+
transmittedKeyFramesClient: 0, // Not Avaliable
|
|
240
|
+
transmittedKeyFramesConfigurationChange: 0, // Not Avaliable
|
|
241
|
+
transmittedKeyFramesFeedback: 0, // Not Avaliable
|
|
242
|
+
transmittedKeyFramesLocalDrop: 0, // Not Avaliable
|
|
243
|
+
transmittedKeyFramesOtherLayer: 0, // Not Avaliable
|
|
244
|
+
transmittedKeyFramesPeriodic: 0, // Not Avaliable
|
|
245
|
+
transmittedKeyFramesSceneChange: 0, // Not Avaliable
|
|
246
|
+
transmittedKeyFramesStartup: 0, // Not Avaliable
|
|
247
|
+
transmittedKeyFramesUnknown: 0, // Not Avaliable
|
|
248
|
+
transmittedWidth: 0,
|
|
384
249
|
};
|