@microsoft/live-share-media 1.0.0-preview.9 → 1.0.1
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/LICENSE +64 -61
- package/README.md +7 -13
- package/bin/IMediaPlayer.d.ts +20 -20
- package/bin/IMediaPlayer.js +6 -6
- package/bin/LiveMediaSession.d.ts +90 -94
- package/bin/LiveMediaSession.d.ts.map +1 -1
- package/bin/LiveMediaSession.js +228 -231
- package/bin/LiveMediaSession.js.map +1 -1
- package/bin/LiveMediaSessionCoordinator.d.ts +238 -227
- package/bin/LiveMediaSessionCoordinator.d.ts.map +1 -1
- package/bin/LiveMediaSessionCoordinator.js +476 -407
- package/bin/LiveMediaSessionCoordinator.js.map +1 -1
- package/bin/LiveMediaSessionCoordinatorSuspension.d.ts +19 -19
- package/bin/LiveMediaSessionCoordinatorSuspension.js +27 -27
- package/bin/MediaPlayerSynchronizer.d.ts +174 -163
- package/bin/MediaPlayerSynchronizer.d.ts.map +1 -1
- package/bin/MediaPlayerSynchronizer.js +503 -468
- package/bin/MediaPlayerSynchronizer.js.map +1 -1
- package/bin/MediaSessionActionThrottler.d.ts +11 -11
- package/bin/MediaSessionActionThrottler.js +13 -13
- package/bin/MediaSessionExtensions.d.ts +34 -34
- package/bin/MediaSessionExtensions.d.ts.map +1 -1
- package/bin/MediaSessionExtensions.js +12 -12
- package/bin/RepeatedActionThrottler.d.ts +19 -19
- package/bin/RepeatedActionThrottler.js +62 -62
- package/bin/RepeatedActionThrottler.js.map +1 -1
- package/bin/VolumeManager.d.ts +83 -83
- package/bin/VolumeManager.d.ts.map +1 -1
- package/bin/VolumeManager.js +174 -174
- package/bin/VolumeManager.js.map +1 -1
- package/bin/index.d.ts +13 -13
- package/bin/index.js +29 -29
- package/bin/internals/GroupCoordinatorState.d.ts +93 -92
- package/bin/internals/GroupCoordinatorState.d.ts.map +1 -1
- package/bin/internals/GroupCoordinatorState.js +407 -404
- package/bin/internals/GroupCoordinatorState.js.map +1 -1
- package/bin/internals/GroupPlaybackPosition.d.ts +67 -66
- package/bin/internals/GroupPlaybackPosition.d.ts.map +1 -1
- package/bin/internals/GroupPlaybackPosition.js +165 -166
- package/bin/internals/GroupPlaybackPosition.js.map +1 -1
- package/bin/internals/GroupPlaybackTrack.d.ts +45 -45
- package/bin/internals/GroupPlaybackTrack.d.ts.map +1 -1
- package/bin/internals/GroupPlaybackTrack.js +121 -121
- package/bin/internals/GroupPlaybackTrackData.d.ts +39 -39
- package/bin/internals/GroupPlaybackTrackData.d.ts.map +1 -1
- package/bin/internals/GroupPlaybackTrackData.js +69 -69
- package/bin/internals/GroupTransportState.d.ts +49 -48
- package/bin/internals/GroupTransportState.d.ts.map +1 -1
- package/bin/internals/GroupTransportState.js +111 -111
- package/bin/internals/GroupTransportState.js.map +1 -1
- package/bin/internals/consts.d.ts +75 -72
- package/bin/internals/consts.d.ts.map +1 -1
- package/bin/internals/consts.js +84 -81
- package/bin/internals/consts.js.map +1 -1
- package/bin/internals/index.d.ts +10 -10
- package/bin/internals/index.js +26 -26
- package/package.json +16 -9
- package/src/LiveMediaSession.ts +24 -20
- package/src/LiveMediaSessionCoordinator.ts +101 -29
- package/src/MediaPlayerSynchronizer.ts +47 -15
- package/src/VolumeManager.ts +4 -1
- package/src/internals/GroupCoordinatorState.ts +50 -35
- package/src/internals/GroupPlaybackPosition.ts +8 -7
- package/src/internals/GroupPlaybackTrack.ts +2 -2
- package/src/internals/GroupPlaybackTrackData.ts +2 -2
- package/src/internals/GroupTransportState.ts +11 -4
- package/src/internals/consts.ts +4 -0
- package/typedoc.json +10 -0
- package/bin/EphemeralMediaSession.d.ts +0 -102
- package/bin/EphemeralMediaSession.d.ts.map +0 -1
- package/bin/EphemeralMediaSession.js +0 -226
- package/bin/EphemeralMediaSession.js.map +0 -1
- package/bin/EphemeralMediaSessionCoordinator.d.ts +0 -228
- package/bin/EphemeralMediaSessionCoordinator.d.ts.map +0 -1
- package/bin/EphemeralMediaSessionCoordinator.js +0 -396
- package/bin/EphemeralMediaSessionCoordinator.js.map +0 -1
- package/bin/EphemeralMediaSessionCoordinatorSuspension.d.ts +0 -20
- package/bin/EphemeralMediaSessionCoordinatorSuspension.d.ts.map +0 -1
- package/bin/EphemeralMediaSessionCoordinatorSuspension.js +0 -28
- package/bin/EphemeralMediaSessionCoordinatorSuspension.js.map +0 -1
- package/bin/VolumeLimiter.d.ts +0 -70
- package/bin/VolumeLimiter.d.ts.map +0 -1
- package/bin/VolumeLimiter.js +0 -170
- package/bin/VolumeLimiter.js.map +0 -1
- package/src/test/GroupPlaybackPosition.spec.ts +0 -600
- package/src/test/GroupPlaybackTrack.spec.ts +0 -122
- package/src/test/SharedMediaSession.spec.ts +0 -149
- package/src/test/SharedMediaSessionCoordinator.spec.ts +0 -271
- package/src/test/VolumeManager.spec.ts +0 -219
package/bin/internals/consts.js
CHANGED
|
@@ -1,82 +1,85 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
-
* Licensed under the Microsoft Live Share SDK License.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.TelemetryEvents = void 0;
|
|
8
|
-
/**
|
|
9
|
-
* @hidden
|
|
10
|
-
* List of telemetry events. Wrap with a call to transmit() if the event should be transmitted to
|
|
11
|
-
* the telemetry service.
|
|
12
|
-
*/
|
|
13
|
-
exports.TelemetryEvents = {
|
|
14
|
-
MediaPlayerSynchronizer: {
|
|
15
|
-
SynchronizationStarted: "MediaPlayerSynchronizer:SynchronizationStarted",
|
|
16
|
-
PlayerEvent: "MediaPlayerSynchronizer:PlayerEvent",
|
|
17
|
-
PlayAction: "MediaPlayerSynchronizer:PlayAction",
|
|
18
|
-
PauseAction: "MediaPlayerSynchronizer:PauseAction",
|
|
19
|
-
SeekToAction: "MediaPlayerSynchronizer:SeekToAction",
|
|
20
|
-
CatchupAction: "MediaPlayerSynchronizer:CatchupAction",
|
|
21
|
-
SetTrackAction: "MediaPlayerSynchronizer:SetTrackAction",
|
|
22
|
-
DataChangeAction: "MediaPlayerSynchronizer:DataChangeAction",
|
|
23
|
-
UserTappedVideoToPlay: transmit("MediaPlayerSynchronizer:UserTappedVideoToPlay"),
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
+
* Licensed under the Microsoft Live Share SDK License.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.TelemetryEvents = void 0;
|
|
8
|
+
/**
|
|
9
|
+
* @hidden
|
|
10
|
+
* List of telemetry events. Wrap with a call to transmit() if the event should be transmitted to
|
|
11
|
+
* the telemetry service.
|
|
12
|
+
*/
|
|
13
|
+
exports.TelemetryEvents = {
|
|
14
|
+
MediaPlayerSynchronizer: {
|
|
15
|
+
SynchronizationStarted: "MediaPlayerSynchronizer:SynchronizationStarted",
|
|
16
|
+
PlayerEvent: "MediaPlayerSynchronizer:PlayerEvent",
|
|
17
|
+
PlayAction: "MediaPlayerSynchronizer:PlayAction",
|
|
18
|
+
PauseAction: "MediaPlayerSynchronizer:PauseAction",
|
|
19
|
+
SeekToAction: "MediaPlayerSynchronizer:SeekToAction",
|
|
20
|
+
CatchupAction: "MediaPlayerSynchronizer:CatchupAction",
|
|
21
|
+
SetTrackAction: "MediaPlayerSynchronizer:SetTrackAction",
|
|
22
|
+
DataChangeAction: "MediaPlayerSynchronizer:DataChangeAction",
|
|
23
|
+
UserTappedVideoToPlay: transmit("MediaPlayerSynchronizer:UserTappedVideoToPlay"),
|
|
24
|
+
UserTappedVideoToPlayError: "MediaPlayerSynchronizer:UserTappedVideoToPlayError",
|
|
25
|
+
PlaybackRateChangeBlocked: "MediaPlayerSynchronizer:PlaybackRateChangeBlocked",
|
|
26
|
+
PlayerBlockedOperation: transmit("MediaPlayerSynchronizer:PlayerBlockedOperation"),
|
|
27
|
+
SeekingPlayerToStartPosition: "MediaPlayerSynchronizer:SeekingPlayerToStartPosition",
|
|
28
|
+
BeginSeekCalled: "MediaPlayerSynchronizer:BeginSeekCalled",
|
|
29
|
+
EndSeekCalled: "MediaPlayerSynchronizer:EndSeekCalled",
|
|
30
|
+
PlayCalled: "MediaPlayerSynchronizer:PlayCalled",
|
|
31
|
+
PauseCalled: "MediaPlayerSynchronizer:PauseCalled",
|
|
32
|
+
SeekToCalled: "MediaPlayerSynchronizer:SeekToCalled",
|
|
33
|
+
SetTrackCalled: "MediaPlayerSynchronizer:SetTrackCalled",
|
|
34
|
+
SetTrackDataCalled: "MediaPlayerSynchronizer:SetTrackDataCalled",
|
|
35
|
+
},
|
|
36
|
+
MediaSession: {
|
|
37
|
+
PlayAction: transmit("MediaSession:PlayAction"),
|
|
38
|
+
PauseAction: transmit("MediaSession:PauseAction"),
|
|
39
|
+
SeekToAction: transmit("MediaSession:SeekToAction"),
|
|
40
|
+
CatchUpAction: transmit("MediaSession:CatchUpAction"),
|
|
41
|
+
SetTrackAction: transmit("MediaSession:SetTrackAction"),
|
|
42
|
+
DataChangeAction: "MediaSession:DataChangeAction",
|
|
43
|
+
BeginPositionUpdateTimer: "MediaSession:BeginPositionUpdateTimer",
|
|
44
|
+
},
|
|
45
|
+
SessionCoordinator: {
|
|
46
|
+
PlayCalled: transmit("SessionCoordinator:PlayCalled"),
|
|
47
|
+
PauseCalled: transmit("SessionCoordinator:PauseCalled"),
|
|
48
|
+
SeekToCalled: transmit("SessionCoordinator:SeekToCalled"),
|
|
49
|
+
SetTrackCalled: transmit("SessionCoordinator:SetTrackCalled"),
|
|
50
|
+
SetTrackDataCalled: "SessionCoordinator:SetTrackDataCalled",
|
|
51
|
+
BeginSuspension: "SessionCoordinator:BeginSuspension",
|
|
52
|
+
BeginSuspensionAndWait: transmit("SessionCoordinator:BeginSuspensionAndWait"),
|
|
53
|
+
EndSuspension: "SessionCoordinator:EndSuspension",
|
|
54
|
+
EndSuspensionAndWait: transmit("SessionCoordinator:EndSuspensionAndWait"),
|
|
55
|
+
RemoteJoinReceived: "SessionCoordinator:RemoteJoinReceived",
|
|
56
|
+
RemoteSetTrackReceived: transmit("SessionCoordinator:RemoteSetTrackReceived"),
|
|
57
|
+
RemoteSetTrackDataReceived: transmit("SessionCoordinator:RemoteSetTrackDataReceived"),
|
|
58
|
+
RemotePlayReceived: transmit("SessionCoordinator:RemotePlayReceived"),
|
|
59
|
+
RemotePauseReceived: transmit("SessionCoordinator:RemotePauseReceived"),
|
|
60
|
+
RemoteSeekToReceived: transmit("SessionCoordinator:RemoteSeekToReceived"),
|
|
61
|
+
PositionUpdateEventError: "SessionCoordinator:PositionUpdateEventError",
|
|
62
|
+
SendJoinedEventError: "SessionCoordinator:SendJoinedEventError",
|
|
63
|
+
},
|
|
64
|
+
GroupCoordinator: {
|
|
65
|
+
TrackChanged: "GroupCoordinator:TrackChanged",
|
|
66
|
+
TrackChangeDelayed: "GroupCoordinator:TrackChangeDelayed",
|
|
67
|
+
TrackDataChanged: "GroupCoordinator:TrackDataChanged",
|
|
68
|
+
TrackDataChangeDelayed: "GroupCoordinator:TrackDataChangeDelayed",
|
|
69
|
+
TransportStateChanged: "GroupCoordinator:TransportStateChanged",
|
|
70
|
+
TransportStateChangeDelayed: "GroupCoordinator:TransportStateChangeDelayed",
|
|
71
|
+
BeginSoftSuspension: "GroupCoordinator:BeginSoftSuspension",
|
|
72
|
+
CheckingForSyncIssues: "GroupCoordinator:CheckingForSyncIssues",
|
|
73
|
+
TrackOutOfSync: transmit("GroupCoordinator:TrackOutOfSync"),
|
|
74
|
+
TrackDataOutOfSync: transmit("GroupCoordinator:TrackDataOutOfSync"),
|
|
75
|
+
TransportOutOfSync: transmit("GroupCoordinator:TransportOutOfSync"),
|
|
76
|
+
PositionOutOfSync: transmit("GroupCoordinator:PositionOutOfSync"),
|
|
77
|
+
},
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* @hidden
|
|
81
|
+
*/
|
|
82
|
+
function transmit(eventName) {
|
|
83
|
+
return `${eventName}#transmit`;
|
|
84
|
+
}
|
|
82
85
|
//# sourceMappingURL=consts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/internals/consts.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;;;GAIG;AACU,QAAA,eAAe,GAAG;IAC3B,uBAAuB,EAAE;QACrB,sBAAsB,EAClB,gDAAgD;QACpD,WAAW,EAAE,qCAAqC;QAClD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,aAAa,EAAE,uCAAuC;QACtD,cAAc,EAAE,wCAAwC;QACxD,gBAAgB,EAAE,0CAA0C;QAC5D,qBAAqB,EAAE,QAAQ,CAC3B,+CAA+C,CAClD;QACD,yBAAyB,EACrB,mDAAmD;QACvD,sBAAsB,EAAE,QAAQ,CAC5B,gDAAgD,CACnD;QACD,4BAA4B,EACxB,sDAAsD;QAC1D,eAAe,EAAE,yCAAyC;QAC1D,aAAa,EAAE,uCAAuC;QACtD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,cAAc,EAAE,wCAAwC;QACxD,kBAAkB,EAAE,4CAA4C;KACnE;IACD,YAAY,EAAE;QACV,UAAU,EAAE,QAAQ,CAAC,yBAAyB,CAAC;QAC/C,WAAW,EAAE,QAAQ,CAAC,0BAA0B,CAAC;QACjD,YAAY,EAAE,QAAQ,CAAC,2BAA2B,CAAC;QACnD,aAAa,EAAE,QAAQ,CAAC,4BAA4B,CAAC;QACrD,cAAc,EAAE,QAAQ,CAAC,6BAA6B,CAAC;QACvD,gBAAgB,EAAE,+BAA+B;QACjD,wBAAwB,EAAE,uCAAuC;KACpE;IACD,kBAAkB,EAAE;QAChB,UAAU,EAAE,QAAQ,CAAC,+BAA+B,CAAC;QACrD,WAAW,EAAE,QAAQ,CAAC,gCAAgC,CAAC;QACvD,YAAY,EAAE,QAAQ,CAAC,iCAAiC,CAAC;QACzD,cAAc,EAAE,QAAQ,CAAC,mCAAmC,CAAC;QAC7D,kBAAkB,EAAE,uCAAuC;QAC3D,eAAe,EAAE,oCAAoC;QACrD,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,aAAa,EAAE,kCAAkC;QACjD,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;QACD,kBAAkB,EAAE,uCAAuC;QAC3D,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,0BAA0B,EAAE,QAAQ,CAChC,+CAA+C,CAClD;QACD,kBAAkB,EAAE,QAAQ,CAAC,uCAAuC,CAAC;QACrE,mBAAmB,EAAE,QAAQ,CAAC,wCAAwC,CAAC;QACvE,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/internals/consts.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;;;GAIG;AACU,QAAA,eAAe,GAAG;IAC3B,uBAAuB,EAAE;QACrB,sBAAsB,EAClB,gDAAgD;QACpD,WAAW,EAAE,qCAAqC;QAClD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,aAAa,EAAE,uCAAuC;QACtD,cAAc,EAAE,wCAAwC;QACxD,gBAAgB,EAAE,0CAA0C;QAC5D,qBAAqB,EAAE,QAAQ,CAC3B,+CAA+C,CAClD;QACD,0BAA0B,EACtB,oDAAoD;QACxD,yBAAyB,EACrB,mDAAmD;QACvD,sBAAsB,EAAE,QAAQ,CAC5B,gDAAgD,CACnD;QACD,4BAA4B,EACxB,sDAAsD;QAC1D,eAAe,EAAE,yCAAyC;QAC1D,aAAa,EAAE,uCAAuC;QACtD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,cAAc,EAAE,wCAAwC;QACxD,kBAAkB,EAAE,4CAA4C;KACnE;IACD,YAAY,EAAE;QACV,UAAU,EAAE,QAAQ,CAAC,yBAAyB,CAAC;QAC/C,WAAW,EAAE,QAAQ,CAAC,0BAA0B,CAAC;QACjD,YAAY,EAAE,QAAQ,CAAC,2BAA2B,CAAC;QACnD,aAAa,EAAE,QAAQ,CAAC,4BAA4B,CAAC;QACrD,cAAc,EAAE,QAAQ,CAAC,6BAA6B,CAAC;QACvD,gBAAgB,EAAE,+BAA+B;QACjD,wBAAwB,EAAE,uCAAuC;KACpE;IACD,kBAAkB,EAAE;QAChB,UAAU,EAAE,QAAQ,CAAC,+BAA+B,CAAC;QACrD,WAAW,EAAE,QAAQ,CAAC,gCAAgC,CAAC;QACvD,YAAY,EAAE,QAAQ,CAAC,iCAAiC,CAAC;QACzD,cAAc,EAAE,QAAQ,CAAC,mCAAmC,CAAC;QAC7D,kBAAkB,EAAE,uCAAuC;QAC3D,eAAe,EAAE,oCAAoC;QACrD,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,aAAa,EAAE,kCAAkC;QACjD,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;QACD,kBAAkB,EAAE,uCAAuC;QAC3D,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,0BAA0B,EAAE,QAAQ,CAChC,+CAA+C,CAClD;QACD,kBAAkB,EAAE,QAAQ,CAAC,uCAAuC,CAAC;QACrE,mBAAmB,EAAE,QAAQ,CAAC,wCAAwC,CAAC;QACvE,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;QACD,wBAAwB,EAAE,6CAA6C;QACvE,oBAAoB,EAAE,yCAAyC;KAClE;IACD,gBAAgB,EAAE;QACd,YAAY,EAAE,+BAA+B;QAC7C,kBAAkB,EAAE,qCAAqC;QACzD,gBAAgB,EAAE,mCAAmC;QACrD,sBAAsB,EAAE,yCAAyC;QACjE,qBAAqB,EAAE,wCAAwC;QAC/D,2BAA2B,EACvB,8CAA8C;QAClD,mBAAmB,EAAE,sCAAsC;QAC3D,qBAAqB,EAAE,wCAAwC;QAC/D,cAAc,EAAE,QAAQ,CAAC,iCAAiC,CAAC;QAC3D,kBAAkB,EAAE,QAAQ,CAAC,qCAAqC,CAAC;QACnE,kBAAkB,EAAE,QAAQ,CAAC,qCAAqC,CAAC;QACnE,iBAAiB,EAAE,QAAQ,CAAC,oCAAoC,CAAC;KACpE;CACJ,CAAC;AAEF;;GAEG;AACH,SAAS,QAAQ,CAAC,SAAiB;IAC/B,OAAO,GAAG,SAAS,WAAW,CAAC;AACnC,CAAC"}
|
package/bin/internals/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the Microsoft Live Share SDK License.
|
|
4
|
-
*/
|
|
5
|
-
export * from "./consts";
|
|
6
|
-
export * from "./GroupCoordinatorState";
|
|
7
|
-
export * from "./GroupPlaybackPosition";
|
|
8
|
-
export * from "./GroupPlaybackTrack";
|
|
9
|
-
export * from "./GroupPlaybackTrackData";
|
|
10
|
-
export * from "./GroupTransportState";
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the Microsoft Live Share SDK License.
|
|
4
|
+
*/
|
|
5
|
+
export * from "./consts";
|
|
6
|
+
export * from "./GroupCoordinatorState";
|
|
7
|
+
export * from "./GroupPlaybackPosition";
|
|
8
|
+
export * from "./GroupPlaybackTrack";
|
|
9
|
+
export * from "./GroupPlaybackTrackData";
|
|
10
|
+
export * from "./GroupTransportState";
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/bin/internals/index.js
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
-
* Licensed under the Microsoft Live Share SDK License.
|
|
5
|
-
*/
|
|
6
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
-
if (k2 === undefined) k2 = k;
|
|
8
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
-
}
|
|
12
|
-
Object.defineProperty(o, k2, desc);
|
|
13
|
-
}) : (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
o[k2] = m[k];
|
|
16
|
-
}));
|
|
17
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
18
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
19
|
-
};
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
__exportStar(require("./consts"), exports);
|
|
22
|
-
__exportStar(require("./GroupCoordinatorState"), exports);
|
|
23
|
-
__exportStar(require("./GroupPlaybackPosition"), exports);
|
|
24
|
-
__exportStar(require("./GroupPlaybackTrack"), exports);
|
|
25
|
-
__exportStar(require("./GroupPlaybackTrackData"), exports);
|
|
26
|
-
__exportStar(require("./GroupTransportState"), exports);
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
+
* Licensed under the Microsoft Live Share SDK License.
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
18
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
__exportStar(require("./consts"), exports);
|
|
22
|
+
__exportStar(require("./GroupCoordinatorState"), exports);
|
|
23
|
+
__exportStar(require("./GroupPlaybackPosition"), exports);
|
|
24
|
+
__exportStar(require("./GroupPlaybackTrack"), exports);
|
|
25
|
+
__exportStar(require("./GroupPlaybackTrackData"), exports);
|
|
26
|
+
__exportStar(require("./GroupTransportState"), exports);
|
|
27
27
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/live-share-media",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Live Share classes that synchronize media playback across clients.",
|
|
5
5
|
"author": "Microsoft",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -9,22 +9,29 @@
|
|
|
9
9
|
"scripts": {
|
|
10
10
|
"clean": "npx shx rm -rf bin",
|
|
11
11
|
"build": "tsc -p tsconfig.build.json",
|
|
12
|
-
"test": "ts-mocha src/**/*.spec.ts --timeout 10000",
|
|
12
|
+
"test": "ts-mocha --config ./src/test/.mocharc.js src/**/*.spec.ts --timeout 10000",
|
|
13
13
|
"test:debug": "ts-mocha src/**/*.spec.ts --inspect-brk",
|
|
14
|
-
"test:coverage": "nyc --reporter=html --reporter=text --reporter=text-summary npm test"
|
|
15
|
-
|
|
16
|
-
"dependencies": {
|
|
17
|
-
"@microsoft/live-share": "1.0.0-preview.9",
|
|
18
|
-
"fluid-framework": "~1.2.3"
|
|
14
|
+
"test:coverage": "nyc --reporter=html --reporter=text --reporter=text-summary npm test",
|
|
15
|
+
"test:race": "node ./../live-share/test-for-race-conditions.js"
|
|
19
16
|
},
|
|
20
17
|
"devDependencies": {
|
|
18
|
+
"@microsoft/live-share": "1.0.1",
|
|
19
|
+
"@fluidframework/test-client-utils": "^1.3.6",
|
|
20
|
+
"@fluidframework/test-runtime-utils": "^1.3.6",
|
|
21
|
+
"@fluidframework/test-utils": "^1.3.6",
|
|
22
|
+
"@fluidframework/test-version-utils": "^1.3.6",
|
|
21
23
|
"@types/assert": "^1.5.6",
|
|
22
24
|
"@types/mocha": "^10.0.1",
|
|
23
|
-
"@types/node": "^
|
|
25
|
+
"@types/node": "^20.2.3",
|
|
26
|
+
"fluid-framework": "^1.3.6",
|
|
24
27
|
"mocha": "^10.2.0",
|
|
25
28
|
"nyc": "^15.1.0",
|
|
26
29
|
"ts-mocha": "^10.0.0",
|
|
27
|
-
"typescript": "^
|
|
30
|
+
"typescript": "^5.0.4"
|
|
31
|
+
},
|
|
32
|
+
"peerDependencies": {
|
|
33
|
+
"@microsoft/live-share": "1.0.1",
|
|
34
|
+
"fluid-framework": "^1.2.3"
|
|
28
35
|
},
|
|
29
36
|
"repository": {
|
|
30
37
|
"directory": "packages/live-share-media",
|
package/src/LiveMediaSession.ts
CHANGED
|
@@ -3,8 +3,13 @@
|
|
|
3
3
|
* Licensed under the Microsoft Live Share SDK License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { DataObjectFactory } from "@fluidframework/aqueduct";
|
|
7
|
+
import {
|
|
8
|
+
DynamicObjectRegistry,
|
|
9
|
+
LiveDataObject,
|
|
10
|
+
LiveTelemetryLogger,
|
|
11
|
+
UserMeetingRole,
|
|
12
|
+
} from "@microsoft/live-share";
|
|
8
13
|
import { MediaPlayerSynchronizer } from "./MediaPlayerSynchronizer";
|
|
9
14
|
import { ITriggerActionEvent, TelemetryEvents } from "./internals";
|
|
10
15
|
import {
|
|
@@ -23,7 +28,7 @@ import { IMediaPlayer } from "./IMediaPlayer";
|
|
|
23
28
|
/**
|
|
24
29
|
* Live fluid object that synchronizes media playback across multiple clients.
|
|
25
30
|
*/
|
|
26
|
-
export class LiveMediaSession extends
|
|
31
|
+
export class LiveMediaSession extends LiveDataObject {
|
|
27
32
|
private _actionThrottler: MediaSessionActionThrottler =
|
|
28
33
|
new RepeatedActionThrottler();
|
|
29
34
|
private _logger?: LiveTelemetryLogger;
|
|
@@ -80,14 +85,6 @@ export class LiveMediaSession extends DataObject {
|
|
|
80
85
|
return this.coordinator.isInitialized;
|
|
81
86
|
}
|
|
82
87
|
|
|
83
|
-
/**
|
|
84
|
-
* @deprecated isInitialized should be used instead
|
|
85
|
-
* Returns true if the object has been initialized.
|
|
86
|
-
*/
|
|
87
|
-
public get isStarted(): boolean {
|
|
88
|
-
return this.isInitialized;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
88
|
/**
|
|
92
89
|
* The group coordinator for the session.
|
|
93
90
|
*/
|
|
@@ -107,13 +104,15 @@ export class LiveMediaSession extends DataObject {
|
|
|
107
104
|
|
|
108
105
|
/**
|
|
109
106
|
* initialize the object.
|
|
110
|
-
* @param
|
|
107
|
+
* @param allowedRoles Optional. List of roles allowed to group transport
|
|
111
108
|
* operations like play/pause/seek/setTrack.
|
|
109
|
+
* @returns a void promise that resolves once complete
|
|
112
110
|
*/
|
|
113
|
-
public initialize(
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
111
|
+
public initialize(allowedRoles?: UserMeetingRole[]): Promise<void> {
|
|
112
|
+
if (allowedRoles) {
|
|
113
|
+
this._allowedRoles = allowedRoles;
|
|
114
|
+
}
|
|
115
|
+
return this.coordinator.initialize(allowedRoles);
|
|
117
116
|
}
|
|
118
117
|
|
|
119
118
|
/**
|
|
@@ -184,11 +183,13 @@ export class LiveMediaSession extends DataObject {
|
|
|
184
183
|
}
|
|
185
184
|
|
|
186
185
|
protected async hasInitialized(): Promise<void> {
|
|
187
|
-
this._logger = new LiveTelemetryLogger(this.runtime);
|
|
186
|
+
this._logger = new LiveTelemetryLogger(this.runtime, this.liveRuntime);
|
|
188
187
|
|
|
189
188
|
// Create coordinator and listen for triggered actions
|
|
190
|
-
this._coordinator = new LiveMediaSessionCoordinator(
|
|
191
|
-
this.
|
|
189
|
+
this._coordinator = new LiveMediaSessionCoordinator(
|
|
190
|
+
this.runtime,
|
|
191
|
+
this.liveRuntime,
|
|
192
|
+
() => this.getCurrentPlayerState()
|
|
192
193
|
);
|
|
193
194
|
this._coordinator.on(
|
|
194
195
|
MediaSessionCoordinatorEvents.triggeraction,
|
|
@@ -302,4 +303,7 @@ export class LiveMediaSession extends DataObject {
|
|
|
302
303
|
/**
|
|
303
304
|
* Register `LiveMediaSession` as an available `LoadableObjectClass` for use in packages that support dynamic object loading, such as `@microsoft/live-share-turbo`.
|
|
304
305
|
*/
|
|
305
|
-
DynamicObjectRegistry.registerObjectClass(
|
|
306
|
+
DynamicObjectRegistry.registerObjectClass(
|
|
307
|
+
LiveMediaSession,
|
|
308
|
+
LiveMediaSession.TypeName
|
|
309
|
+
);
|