@vkontakte/videoplayer-core 2.0.155 → 2.0.156-dev.04ce2cd1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es2015.cjs +83 -136
- package/es2015.esm.js +77 -130
- package/es2018.cjs +77 -130
- package/es2018.esm.js +75 -128
- package/es2024.cjs +83 -136
- package/es2024.esm.js +81 -134
- package/esnext.cjs +83 -136
- package/esnext.esm.js +81 -134
- package/evergreen.esm.js +82 -135
- package/package.json +2 -2
- package/types/enums/AndroidPreferredFormat.d.ts +6 -6
- package/types/enums/IOSPreferredFormat.d.ts +2 -2
- package/types/enums/WebmCodecStrategy.d.ts +5 -5
- package/types/index.d.ts +16 -13
- package/types/player/Player.d.ts +219 -210
- package/types/player/types.d.ts +595 -591
- package/types/player/utils/optimisticPosition.d.ts +7 -7
- package/types/player/utils/selectContainer.d.ts +1 -1
- package/types/providers/ChromecastPresentationApiProvider/ChromecastPresentationApiConnector.d.ts +107 -106
- package/types/providers/ChromecastPresentationApiProvider/ChromecastPresentationApiInitializer.d.ts +23 -23
- package/types/providers/ChromecastPresentationApiProvider/ChromecastPresentationApiProvider.d.ts +34 -34
- package/types/providers/ChromecastPresentationApiProvider/ProgressTicker.d.ts +9 -9
- package/types/providers/ChromecastPresentationApiProvider/index.d.ts +3 -3
- package/types/providers/ChromecastPresentationApiProvider/types.d.ts +31 -31
- package/types/providers/ChromecastPresentationApiProvider/utils.d.ts +1 -1
- package/types/providers/ChromecastProvider/ChromecastInitializer/index.d.ts +22 -22
- package/types/providers/ChromecastProvider/ChromecastInitializer/types.d.ts +22 -22
- package/types/providers/ChromecastProvider/index.d.ts +23 -23
- package/types/providers/ChromecastProvider/types.d.ts +7 -7
- package/types/providers/ChromecastProvider/utils.d.ts +1 -1
- package/types/providers/DashLiveProvider/DashLiveProvider.d.ts +33 -33
- package/types/providers/DashLiveProvider/index.d.ts +1 -1
- package/types/providers/DashLiveProvider/types.d.ts +17 -17
- package/types/providers/DashLiveProvider/utils/FilesFetcher.d.ts +23 -23
- package/types/providers/DashLiveProvider/utils/LiveDashPlayer.d.ts +149 -150
- package/types/providers/DashLiveProvider/utils/ThroughputEstimator.d.ts +12 -30
- package/types/providers/DashLiveProvider/utils/liveDashPlayerUtil.d.ts +19 -22
- package/types/providers/DashProvider/baseDashProvider.d.ts +57 -56
- package/types/providers/DashProvider/dashCmafLiveProvider.d.ts +6 -6
- package/types/providers/DashProvider/dashProvider.d.ts +4 -4
- package/types/providers/DashProvider/index.d.ts +2 -2
- package/types/providers/DashProvider/lib/ElementSizeManager.d.ts +14 -14
- package/types/providers/DashProvider/lib/LiveTextManager.d.ts +21 -21
- package/types/providers/DashProvider/lib/buffer.d.ts +123 -122
- package/types/providers/DashProvider/lib/fetcher.d.ts +70 -69
- package/types/providers/DashProvider/lib/player.d.ts +109 -107
- package/types/providers/DashProvider/lib/sourceBufferTaskQueue.d.ts +17 -17
- package/types/providers/DashProvider/lib/types.d.ts +20 -20
- package/types/providers/DashProvider/lib/utils.d.ts +4 -4
- package/types/providers/DashProviderVirtual/baseDashProvider.d.ts +58 -57
- package/types/providers/DashProviderVirtual/consts.d.ts +2 -2
- package/types/providers/DashProviderVirtual/dashCmafLiveProvider.d.ts +8 -8
- package/types/providers/DashProviderVirtual/dashProvider.d.ts +6 -6
- package/types/providers/DashProviderVirtual/index.d.ts +2 -2
- package/types/providers/DashProviderVirtual/lib/ElementSizeManager.d.ts +15 -14
- package/types/providers/DashProviderVirtual/lib/LiveTextManager.d.ts +21 -21
- package/types/providers/DashProviderVirtual/lib/buffer/nativeBufferManager.d.ts +17 -17
- package/types/providers/DashProviderVirtual/lib/buffer/sourceBufferTaskQueue.d.ts +17 -17
- package/types/providers/DashProviderVirtual/lib/buffer/types.d.ts +39 -39
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/baseVirtualBufferManager.d.ts +94 -92
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/byteRangeVirtualBufferManager.d.ts +19 -19
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/liveVirtualBuffer.d.ts +25 -25
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/templateVirtualBufferManager.d.ts +19 -19
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/virtualBufferFactory.d.ts +4 -4
- package/types/providers/DashProviderVirtual/lib/fetcher.d.ts +68 -67
- package/types/providers/DashProviderVirtual/lib/player/basePlayer.d.ts +103 -100
- package/types/providers/DashProviderVirtual/lib/player/livePlayer.d.ts +34 -34
- package/types/providers/DashProviderVirtual/lib/player/player.d.ts +9 -9
- package/types/providers/DashProviderVirtual/lib/player/types.d.ts +13 -13
- package/types/providers/DashProviderVirtual/lib/types.d.ts +20 -20
- package/types/providers/DashProviderVirtual/lib/utils.d.ts +4 -4
- package/types/providers/HlsLiveProvider/LiveTextManager.d.ts +35 -35
- package/types/providers/HlsLiveProvider/index.d.ts +29 -28
- package/types/providers/HlsLiveProvider/seekBackTimeExtractor.d.ts +1 -1
- package/types/providers/HlsProvider/index.d.ts +19 -19
- package/types/providers/HlsProvider/manifestDataExtractor.d.ts +13 -13
- package/types/providers/MpegProvider/index.d.ts +17 -17
- package/types/providers/ProviderContainer/index.d.ts +47 -45
- package/types/providers/ProviderContainer/types.d.ts +16 -16
- package/types/providers/ProviderContainer/utils/formatsSupport.d.ts +9 -9
- package/types/providers/ProviderContainer/utils/playbackHangup.d.ts +9 -8
- package/types/providers/WebRTCLiveProvider/WebRTCLiveClient.d.ts +185 -185
- package/types/providers/WebRTCLiveProvider/WebRTCLiveProvider.d.ts +58 -57
- package/types/providers/WebRTCLiveProvider/interface/WebRTCLiveClientOptions.d.ts +6 -6
- package/types/providers/types.d.ts +103 -102
- package/types/providers/utils/HTMLVideoElement/DroppedFramesManager.d.ts +40 -39
- package/types/providers/utils/HTMLVideoElement/TextTrackManager.d.ts +28 -28
- package/types/providers/utils/HTMLVideoElement/forcePlay.d.ts +5 -5
- package/types/providers/utils/HTMLVideoElement/observable.d.ts +25 -25
- package/types/providers/utils/HTMLVideoElement/pool.d.ts +5 -4
- package/types/providers/utils/LiveOffset/index.d.ts +12 -12
- package/types/providers/utils/LiveOffset/types.d.ts +8 -8
- package/types/providers/utils/StallsManager.d.ts +49 -49
- package/types/providers/utils/debug.d.ts +13 -12
- package/types/providers/utils/extractConnectionHeaders.d.ts +3 -3
- package/types/providers/utils/generateLiveUrl.d.ts +4 -4
- package/types/providers/utils/guessNetworkErrorCause.d.ts +1 -1
- package/types/providers/utils/mergeIntervals.d.ts +1 -1
- package/types/providers/utils/okQualityStringToVideoQuality.d.ts +1 -1
- package/types/providers/utils/parsers/ietf/index.d.ts +8 -8
- package/types/providers/utils/parsers/index.d.ts +1 -1
- package/types/providers/utils/parsers/mpd.d.ts +1 -1
- package/types/providers/utils/parsers/mpeg/BoxModel.d.ts +18 -17
- package/types/providers/utils/parsers/mpeg/BoxParser.d.ts +15 -15
- package/types/providers/utils/parsers/mpeg/BoxTypeEnum.d.ts +27 -27
- package/types/providers/utils/parsers/mpeg/box.d.ts +68 -68
- package/types/providers/utils/parsers/mpeg/boxes/avc1.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/equi.d.ts +18 -18
- package/types/providers/utils/parsers/mpeg/boxes/ftyp.d.ts +14 -14
- package/types/providers/utils/parsers/mpeg/boxes/index.d.ts +27 -26
- package/types/providers/utils/parsers/mpeg/boxes/mdat.d.ts +12 -12
- package/types/providers/utils/parsers/mpeg/boxes/mdia.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/mfhd.d.ts +8 -8
- package/types/providers/utils/parsers/mpeg/boxes/minf.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/moof.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/moov.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/mvhd.d.ts +32 -32
- package/types/providers/utils/parsers/mpeg/boxes/prhd.d.ts +13 -13
- package/types/providers/utils/parsers/mpeg/boxes/proj.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/sidx.d.ts +43 -43
- package/types/providers/utils/parsers/mpeg/boxes/st3d.d.ts +16 -16
- package/types/providers/utils/parsers/mpeg/boxes/stbl.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/stsd.d.ts +8 -8
- package/types/providers/utils/parsers/mpeg/boxes/sv3d.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/tfdt.d.ts +14 -14
- package/types/providers/utils/parsers/mpeg/boxes/tfhd.d.ts +19 -19
- package/types/providers/utils/parsers/mpeg/boxes/tkhd.d.ts +39 -39
- package/types/providers/utils/parsers/mpeg/boxes/traf.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/trak.d.ts +5 -5
- package/types/providers/utils/parsers/mpeg/boxes/trun.d.ts +28 -28
- package/types/providers/utils/parsers/mpeg/boxes/unknown.d.ts +4 -5
- package/types/providers/utils/parsers/mpeg/boxes/uuid.d.ts +10 -10
- package/types/providers/utils/parsers/mpeg/fullBox.d.ts +12 -12
- package/types/providers/utils/parsers/mpeg/isobmff.d.ts +7 -7
- package/types/providers/utils/parsers/types.d.ts +137 -139
- package/types/providers/utils/parsers/webm/ebml.d.ts +62 -62
- package/types/providers/utils/parsers/webm/webm.d.ts +1 -1
- package/types/providers/utils/restorePlaybackRateInSafari.d.ts +17 -17
- package/types/providers/utils/syncDesiredState.d.ts +10 -10
- package/types/providers/utils/syncPlaybackState.d.ts +2 -2
- package/types/providers/utils/videoStreamRepresentaionsFilter.d.ts +2 -2
- package/types/utils/3d/Camera3D.d.ts +11 -11
- package/types/utils/3d/CameraRotationManager.d.ts +59 -59
- package/types/utils/3d/Scene3D.d.ts +129 -129
- package/types/utils/3d/types.d.ts +14 -14
- package/types/utils/ClientChecker/ClientChecker.d.ts +19 -19
- package/types/utils/ClientChecker/index.d.ts +2 -2
- package/types/utils/ClientChecker/services/AudioChecker.d.ts +7 -7
- package/types/utils/ClientChecker/services/BrowserChecker.d.ts +36 -36
- package/types/utils/ClientChecker/services/DeviceChecker.d.ts +38 -38
- package/types/utils/ClientChecker/services/DisplayChecker.d.ts +20 -20
- package/types/utils/ClientChecker/services/VideoChecker.d.ts +35 -35
- package/types/utils/ClientChecker/types/checker.d.ts +1 -1
- package/types/utils/ClientChecker/types/currentClientBrowser.d.ts +10 -10
- package/types/utils/ClientChecker/types/currentClientDevice.d.ts +8 -8
- package/types/utils/ClientChecker/types/userAgentData.d.ts +21 -21
- package/types/utils/StateMachine/StateMachine.d.ts +17 -17
- package/types/utils/StateMachine/types.d.ts +56 -56
- package/types/utils/StatefulIterator/index.d.ts +13 -13
- package/types/utils/ThroughputEstimator.d.ts +22 -22
- package/types/utils/VolumeMultiplierManager/VolumeMultiplierManager.d.ts +20 -20
- package/types/utils/VolumeMultiplierManager/index.d.ts +1 -1
- package/types/utils/autoSelectTrack.d.ts +28 -27
- package/types/utils/buffer/createTimeRanges.d.ts +2 -1
- package/types/utils/buffer/getBufferedRangeForPosition.d.ts +2 -2
- package/types/utils/buffer/getForwardBufferDuration.d.ts +1 -1
- package/types/utils/buffer/getTotalBufferDuration.d.ts +1 -1
- package/types/utils/buffer/isPositionBuffered.d.ts +1 -1
- package/types/utils/buffer/isSourceBufferValid.d.ts +1 -1
- package/types/utils/changePlaybackRate.d.ts +1 -1
- package/types/utils/decodingInfoLogger.d.ts +1 -1
- package/types/utils/mediaSource.d.ts +1 -5
- package/types/utils/observeElementVisibility.d.ts +1 -1
- package/types/utils/playbackTelemetry.d.ts +4 -4
- package/types/utils/playerOptions.d.ts +3 -3
- package/types/utils/qualityLimits.d.ts +15 -14
- package/types/utils/setStateWithSubscribe.d.ts +6 -3
- package/types/utils/smoothedValue/baseSmoothedValue.d.ts +16 -16
- package/types/utils/smoothedValue/emaAndMaSmoothedValue.d.ts +5 -5
- package/types/utils/smoothedValue/emaTopExtremumValue.d.ts +8 -8
- package/types/utils/smoothedValue/smoothedValueFactory.d.ts +4 -4
- package/types/utils/smoothedValue/twoEmaSmoothedValue.d.ts +6 -6
- package/types/utils/smoothedValue/types.d.ts +16 -16
- package/types/utils/tuningConfig.d.ts +304 -287
- package/types/utils/videoFormat.d.ts +1 -1
|
@@ -1,188 +1,188 @@
|
|
|
1
|
-
import { WebRTCLiveClientOptions } from
|
|
1
|
+
import type { WebRTCLiveClientOptions } from "./interface/WebRTCLiveClientOptions";
|
|
2
2
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
5
|
export declare class WebRTCLiveClient {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
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
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
6
|
+
private options;
|
|
7
|
+
private ws;
|
|
8
|
+
private peerConnection;
|
|
9
|
+
serverUrl: string;
|
|
10
|
+
streamKey: string;
|
|
11
|
+
stream: MediaStream | null;
|
|
12
|
+
signalingType: string;
|
|
13
|
+
private retryTimeout;
|
|
14
|
+
private retryCount;
|
|
15
|
+
private externalStartCallback;
|
|
16
|
+
private externalStopCallback;
|
|
17
|
+
private externalErrorCallback;
|
|
18
|
+
/**
|
|
19
|
+
* @param url
|
|
20
|
+
* @param options
|
|
21
|
+
*/
|
|
22
|
+
constructor(url: string, options?: Partial<WebRTCLiveClientOptions>);
|
|
23
|
+
/**
|
|
24
|
+
* Sets start streaming callback
|
|
25
|
+
*
|
|
26
|
+
* @param cb
|
|
27
|
+
*/
|
|
28
|
+
onStart(cb: (stream: MediaStream) => void): void;
|
|
29
|
+
/**
|
|
30
|
+
* Sets stop streaming callback
|
|
31
|
+
*
|
|
32
|
+
* @param cb
|
|
33
|
+
*/
|
|
34
|
+
onStop(cb: () => void): void;
|
|
35
|
+
/**
|
|
36
|
+
* Sets streaming or connection error callback
|
|
37
|
+
*
|
|
38
|
+
* @param cb
|
|
39
|
+
*/
|
|
40
|
+
onError(cb: (e: Error) => void): void;
|
|
41
|
+
/**
|
|
42
|
+
* Start connection dialog
|
|
43
|
+
*/
|
|
44
|
+
connect(): void;
|
|
45
|
+
/**
|
|
46
|
+
* Kill connection
|
|
47
|
+
*/
|
|
48
|
+
disconnect(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Begins socket opening
|
|
51
|
+
* @private
|
|
52
|
+
*/
|
|
53
|
+
private connectWS;
|
|
54
|
+
/**
|
|
55
|
+
* Socket opened event handler
|
|
56
|
+
* Begins login process
|
|
57
|
+
* @private
|
|
58
|
+
*/
|
|
59
|
+
private onSocketOpen;
|
|
60
|
+
/**
|
|
61
|
+
* Socket close event handler
|
|
62
|
+
* @param e
|
|
63
|
+
* @private
|
|
64
|
+
*/
|
|
65
|
+
private onSocketClose;
|
|
66
|
+
/**
|
|
67
|
+
* Socket connection error handler
|
|
68
|
+
* @param e
|
|
69
|
+
* @private
|
|
70
|
+
*/
|
|
71
|
+
private onSocketError;
|
|
72
|
+
/**
|
|
73
|
+
* Socket message handler
|
|
74
|
+
* @param message
|
|
75
|
+
* @private
|
|
76
|
+
*/
|
|
77
|
+
private onSocketMessage;
|
|
78
|
+
/**
|
|
79
|
+
* Socket JOIN message handler
|
|
80
|
+
* @param message
|
|
81
|
+
* @private
|
|
82
|
+
*/
|
|
83
|
+
private handleJoinMessage;
|
|
84
|
+
/**
|
|
85
|
+
* Socket STATUS message handler
|
|
86
|
+
* @param message
|
|
87
|
+
* @private
|
|
88
|
+
*/
|
|
89
|
+
private handleStatusMessage;
|
|
90
|
+
/**
|
|
91
|
+
* Socket UPDATE message handler
|
|
92
|
+
* @param message
|
|
93
|
+
* @private
|
|
94
|
+
*/
|
|
95
|
+
private handleUpdateMessage;
|
|
96
|
+
/**
|
|
97
|
+
* Handles peer connection login process
|
|
98
|
+
* @private
|
|
99
|
+
*/
|
|
100
|
+
private handleLogin;
|
|
101
|
+
/**
|
|
102
|
+
* Adds received remote offer to peer connection
|
|
103
|
+
* @private
|
|
104
|
+
*/
|
|
105
|
+
private handleAnswer;
|
|
106
|
+
/**
|
|
107
|
+
* Adds ICE candidate to peer connection
|
|
108
|
+
* @param candidate
|
|
109
|
+
* @private
|
|
110
|
+
*/
|
|
111
|
+
private handleCandidate;
|
|
112
|
+
/**
|
|
113
|
+
* Live stream finish handler
|
|
114
|
+
* @private
|
|
115
|
+
*/
|
|
116
|
+
private handleUnpublished;
|
|
117
|
+
/**
|
|
118
|
+
* Handles system failures
|
|
119
|
+
*/
|
|
120
|
+
private handleSystemError;
|
|
121
|
+
/**
|
|
122
|
+
* Peer connection stream received handler
|
|
123
|
+
* @param e
|
|
124
|
+
* @private
|
|
125
|
+
*/
|
|
126
|
+
private onPeerConnectionStream;
|
|
127
|
+
/**
|
|
128
|
+
* ICE candidate received handler
|
|
129
|
+
* @param e
|
|
130
|
+
* @private
|
|
131
|
+
*/
|
|
132
|
+
private onPeerConnectionIceCandidate;
|
|
133
|
+
/**
|
|
134
|
+
* Peer connection ICE connection state change handler
|
|
135
|
+
* @private
|
|
136
|
+
*/
|
|
137
|
+
private onPeerConnectionIceConnectionStateChange;
|
|
138
|
+
/**
|
|
139
|
+
* Returns newly created offer
|
|
140
|
+
* @private
|
|
141
|
+
*/
|
|
142
|
+
private createOffer;
|
|
143
|
+
/**
|
|
144
|
+
* Handles RTC connection error
|
|
145
|
+
* @param e
|
|
146
|
+
* @private
|
|
147
|
+
*/
|
|
148
|
+
private handleRTCError;
|
|
149
|
+
/**
|
|
150
|
+
* Handles network error
|
|
151
|
+
* @private
|
|
152
|
+
*/
|
|
153
|
+
private handleNetworkError;
|
|
154
|
+
/**
|
|
155
|
+
* Sends message to websocket
|
|
156
|
+
* @param message
|
|
157
|
+
* @private
|
|
158
|
+
*/
|
|
159
|
+
private send;
|
|
160
|
+
/**
|
|
161
|
+
* Parses JSON message to object
|
|
162
|
+
* @param message
|
|
163
|
+
*/
|
|
164
|
+
private parseMessage;
|
|
165
|
+
/**
|
|
166
|
+
* Closes all connections (ws and peer connection)
|
|
167
|
+
* @private
|
|
168
|
+
*/
|
|
169
|
+
private closeConnections;
|
|
170
|
+
/**
|
|
171
|
+
* Kills peer connection
|
|
172
|
+
* @private
|
|
173
|
+
*/
|
|
174
|
+
private removePeerConnection;
|
|
175
|
+
/**
|
|
176
|
+
* Schedules connection retry
|
|
177
|
+
*
|
|
178
|
+
* @private
|
|
179
|
+
*/
|
|
180
|
+
private scheduleRetry;
|
|
181
|
+
/**
|
|
182
|
+
* Returns normalized options with all defaults set
|
|
183
|
+
*
|
|
184
|
+
* @param userOptions
|
|
185
|
+
* @private
|
|
186
|
+
*/
|
|
187
|
+
private normalizeOptions;
|
|
188
188
|
}
|
|
@@ -1,60 +1,61 @@
|
|
|
1
|
-
import { IProvider, IProviderParams } from
|
|
2
|
-
import { URLSource } from
|
|
1
|
+
import type { IProvider, IProviderParams } from "../types";
|
|
2
|
+
import type { URLSource } from "../../player/types";
|
|
3
3
|
/**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
* @class WebRTCLiveProvider
|
|
5
|
+
*
|
|
6
|
+
* Provides implementation of WEBRTC live streaming support
|
|
7
|
+
*/
|
|
8
8
|
export default class WebRTCLiveProvider implements IProvider {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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
|
-
|
|
9
|
+
private readonly subscription;
|
|
10
|
+
private readonly volumeSubscription;
|
|
11
|
+
private readonly params;
|
|
12
|
+
private log;
|
|
13
|
+
private video;
|
|
14
|
+
private videoState;
|
|
15
|
+
private liveStreamClient;
|
|
16
|
+
private maxSeekBackTime$;
|
|
17
|
+
/**
|
|
18
|
+
* @param params
|
|
19
|
+
*/
|
|
20
|
+
constructor(params: IProviderParams<URLSource>);
|
|
21
|
+
/**
|
|
22
|
+
* Destroys the provider
|
|
23
|
+
*/
|
|
24
|
+
destroy(): void;
|
|
25
|
+
/**
|
|
26
|
+
* Creates all needed provider subscriptions
|
|
27
|
+
* @private
|
|
28
|
+
*/
|
|
29
|
+
private subscribe;
|
|
30
|
+
/**
|
|
31
|
+
* Live stream start handler
|
|
32
|
+
* @private
|
|
33
|
+
*/
|
|
34
|
+
private onLiveStreamStart;
|
|
35
|
+
/**
|
|
36
|
+
* Live stream stop handler
|
|
37
|
+
* @private
|
|
38
|
+
*/
|
|
39
|
+
private onLiveStreamStop;
|
|
40
|
+
/**
|
|
41
|
+
* Live stream error handler
|
|
42
|
+
* @private
|
|
43
|
+
*/
|
|
44
|
+
private onLiveStreamError;
|
|
45
|
+
/**
|
|
46
|
+
* Tries to start playing
|
|
47
|
+
* @private
|
|
48
|
+
*/
|
|
49
|
+
private playIfAllowed;
|
|
50
|
+
/**
|
|
51
|
+
* Runs preparation phase
|
|
52
|
+
* Starts live client connection
|
|
53
|
+
* @private
|
|
54
|
+
*/
|
|
55
|
+
private prepare;
|
|
56
|
+
/**
|
|
57
|
+
* Performs synchronization between desired state and video state
|
|
58
|
+
* @private
|
|
59
|
+
*/
|
|
60
|
+
private syncPlayback;
|
|
60
61
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { IError, ISubject } from
|
|
1
|
+
import type { IError, ISubject } from "@vkontakte/videoplayer-shared";
|
|
2
2
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
* WebRTCLiveClient options description
|
|
4
|
+
*/
|
|
5
5
|
export interface WebRTCLiveClientOptions {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
stunServerList: string[];
|
|
7
|
+
maxRetryNumber: number;
|
|
8
|
+
errorChanel: ISubject<IError> | null;
|
|
9
9
|
}
|