@vkontakte/videoplayer-core 2.0.154-dev.319d6ebf.0 → 2.0.154-dev.33a6ac90.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.
Files changed (186) hide show
  1. package/es2015.cjs +184 -0
  2. package/es2015.esm.js +184 -0
  3. package/es2018.cjs +129 -75
  4. package/es2018.esm.js +127 -73
  5. package/es2024.cjs +135 -81
  6. package/es2024.esm.js +133 -79
  7. package/esnext.cjs +135 -81
  8. package/esnext.esm.js +133 -79
  9. package/evergreen.esm.js +134 -80
  10. package/package.json +2 -2
  11. package/types/enums/AndroidPreferredFormat.d.ts +6 -6
  12. package/types/enums/IOSPreferredFormat.d.ts +2 -2
  13. package/types/enums/WebmCodecStrategy.d.ts +5 -5
  14. package/types/index.d.ts +13 -16
  15. package/types/player/Player.d.ts +210 -217
  16. package/types/player/types.d.ts +591 -589
  17. package/types/player/utils/optimisticPosition.d.ts +7 -7
  18. package/types/player/utils/selectContainer.d.ts +1 -1
  19. package/types/providers/ChromecastPresentationApiProvider/ChromecastPresentationApiConnector.d.ts +107 -106
  20. package/types/providers/ChromecastPresentationApiProvider/ChromecastPresentationApiInitializer.d.ts +23 -23
  21. package/types/providers/ChromecastPresentationApiProvider/ChromecastPresentationApiProvider.d.ts +34 -34
  22. package/types/providers/ChromecastPresentationApiProvider/ProgressTicker.d.ts +9 -9
  23. package/types/providers/ChromecastPresentationApiProvider/index.d.ts +3 -3
  24. package/types/providers/ChromecastPresentationApiProvider/types.d.ts +31 -31
  25. package/types/providers/ChromecastPresentationApiProvider/utils.d.ts +1 -1
  26. package/types/providers/ChromecastProvider/ChromecastInitializer/index.d.ts +22 -22
  27. package/types/providers/ChromecastProvider/ChromecastInitializer/types.d.ts +22 -22
  28. package/types/providers/ChromecastProvider/index.d.ts +23 -23
  29. package/types/providers/ChromecastProvider/types.d.ts +6 -6
  30. package/types/providers/ChromecastProvider/utils.d.ts +1 -1
  31. package/types/providers/DashLiveProvider/DashLiveProvider.d.ts +33 -32
  32. package/types/providers/DashLiveProvider/index.d.ts +1 -1
  33. package/types/providers/DashLiveProvider/types.d.ts +17 -17
  34. package/types/providers/DashLiveProvider/utils/FilesFetcher.d.ts +23 -23
  35. package/types/providers/DashLiveProvider/utils/LiveDashPlayer.d.ts +150 -149
  36. package/types/providers/DashLiveProvider/utils/ThroughputEstimator.d.ts +30 -12
  37. package/types/providers/DashLiveProvider/utils/liveDashPlayerUtil.d.ts +22 -19
  38. package/types/providers/DashProvider/baseDashProvider.d.ts +56 -56
  39. package/types/providers/DashProvider/dashCmafLiveProvider.d.ts +6 -6
  40. package/types/providers/DashProvider/dashProvider.d.ts +4 -4
  41. package/types/providers/DashProvider/index.d.ts +2 -2
  42. package/types/providers/DashProvider/lib/ElementSizeManager.d.ts +14 -14
  43. package/types/providers/DashProvider/lib/LiveTextManager.d.ts +21 -21
  44. package/types/providers/DashProvider/lib/buffer.d.ts +122 -123
  45. package/types/providers/DashProvider/lib/fetcher.d.ts +69 -70
  46. package/types/providers/DashProvider/lib/player.d.ts +107 -109
  47. package/types/providers/DashProvider/lib/sourceBufferTaskQueue.d.ts +17 -17
  48. package/types/providers/DashProvider/lib/types.d.ts +20 -20
  49. package/types/providers/DashProvider/lib/utils.d.ts +5 -5
  50. package/types/providers/DashProviderVirtual/baseDashProvider.d.ts +57 -57
  51. package/types/providers/DashProviderVirtual/consts.d.ts +2 -2
  52. package/types/providers/DashProviderVirtual/dashCmafLiveProvider.d.ts +8 -8
  53. package/types/providers/DashProviderVirtual/dashProvider.d.ts +6 -6
  54. package/types/providers/DashProviderVirtual/index.d.ts +2 -2
  55. package/types/providers/DashProviderVirtual/lib/ElementSizeManager.d.ts +14 -15
  56. package/types/providers/DashProviderVirtual/lib/LiveTextManager.d.ts +21 -21
  57. package/types/providers/DashProviderVirtual/lib/buffer/nativeBufferManager.d.ts +17 -17
  58. package/types/providers/DashProviderVirtual/lib/buffer/sourceBufferTaskQueue.d.ts +17 -17
  59. package/types/providers/DashProviderVirtual/lib/buffer/types.d.ts +39 -39
  60. package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/baseVirtualBufferManager.d.ts +92 -94
  61. package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/byteRangeVirtualBufferManager.d.ts +19 -19
  62. package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/liveVirtualBuffer.d.ts +25 -25
  63. package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/templateVirtualBufferManager.d.ts +19 -19
  64. package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/virtualBufferFactory.d.ts +4 -4
  65. package/types/providers/DashProviderVirtual/lib/fetcher.d.ts +67 -68
  66. package/types/providers/DashProviderVirtual/lib/player/basePlayer.d.ts +100 -103
  67. package/types/providers/DashProviderVirtual/lib/player/livePlayer.d.ts +34 -34
  68. package/types/providers/DashProviderVirtual/lib/player/player.d.ts +9 -9
  69. package/types/providers/DashProviderVirtual/lib/player/types.d.ts +13 -13
  70. package/types/providers/DashProviderVirtual/lib/types.d.ts +20 -20
  71. package/types/providers/DashProviderVirtual/lib/utils.d.ts +4 -4
  72. package/types/providers/HlsLiveProvider/LiveTextManager.d.ts +35 -35
  73. package/types/providers/HlsLiveProvider/index.d.ts +28 -28
  74. package/types/providers/HlsLiveProvider/seekBackTimeExtractor.d.ts +1 -1
  75. package/types/providers/HlsProvider/index.d.ts +19 -18
  76. package/types/providers/HlsProvider/manifestDataExtractor.d.ts +13 -13
  77. package/types/providers/MpegProvider/index.d.ts +17 -16
  78. package/types/providers/ProviderContainer/index.d.ts +45 -45
  79. package/types/providers/ProviderContainer/types.d.ts +16 -16
  80. package/types/providers/ProviderContainer/utils/formatsSupport.d.ts +9 -9
  81. package/types/providers/ProviderContainer/utils/playbackHangup.d.ts +8 -9
  82. package/types/providers/WebRTCLiveProvider/WebRTCLiveClient.d.ts +185 -185
  83. package/types/providers/WebRTCLiveProvider/WebRTCLiveProvider.d.ts +57 -57
  84. package/types/providers/WebRTCLiveProvider/interface/WebRTCLiveClientOptions.d.ts +6 -6
  85. package/types/providers/types.d.ts +102 -102
  86. package/types/providers/utils/HTMLVideoElement/DroppedFramesManager.d.ts +39 -40
  87. package/types/providers/utils/HTMLVideoElement/TextTrackManager.d.ts +28 -28
  88. package/types/providers/utils/HTMLVideoElement/destroy.d.ts +1 -1
  89. package/types/providers/utils/HTMLVideoElement/forcePlay.d.ts +5 -5
  90. package/types/providers/utils/HTMLVideoElement/observable.d.ts +25 -25
  91. package/types/providers/utils/HTMLVideoElement/pool.d.ts +4 -4
  92. package/types/providers/utils/LiveOffset/index.d.ts +12 -12
  93. package/types/providers/utils/LiveOffset/types.d.ts +8 -8
  94. package/types/providers/utils/StallsManager.d.ts +49 -49
  95. package/types/providers/utils/debug.d.ts +12 -13
  96. package/types/providers/utils/extractConnectionHeaders.d.ts +3 -3
  97. package/types/providers/utils/generateLiveUrl.d.ts +4 -4
  98. package/types/providers/utils/guessNetworkErrorCause.d.ts +1 -1
  99. package/types/providers/utils/mergeIntervals.d.ts +1 -1
  100. package/types/providers/utils/okQualityStringToVideoQuality.d.ts +1 -1
  101. package/types/providers/utils/parsers/ietf/index.d.ts +8 -8
  102. package/types/providers/utils/parsers/index.d.ts +1 -1
  103. package/types/providers/utils/parsers/mpd.d.ts +1 -1
  104. package/types/providers/utils/parsers/mpeg/BoxModel.d.ts +17 -18
  105. package/types/providers/utils/parsers/mpeg/BoxParser.d.ts +15 -15
  106. package/types/providers/utils/parsers/mpeg/BoxTypeEnum.d.ts +27 -27
  107. package/types/providers/utils/parsers/mpeg/box.d.ts +68 -68
  108. package/types/providers/utils/parsers/mpeg/boxes/avc1.d.ts +5 -5
  109. package/types/providers/utils/parsers/mpeg/boxes/equi.d.ts +18 -18
  110. package/types/providers/utils/parsers/mpeg/boxes/ftyp.d.ts +14 -14
  111. package/types/providers/utils/parsers/mpeg/boxes/index.d.ts +26 -27
  112. package/types/providers/utils/parsers/mpeg/boxes/mdat.d.ts +12 -12
  113. package/types/providers/utils/parsers/mpeg/boxes/mdia.d.ts +5 -5
  114. package/types/providers/utils/parsers/mpeg/boxes/mfhd.d.ts +8 -8
  115. package/types/providers/utils/parsers/mpeg/boxes/minf.d.ts +5 -5
  116. package/types/providers/utils/parsers/mpeg/boxes/moof.d.ts +5 -5
  117. package/types/providers/utils/parsers/mpeg/boxes/moov.d.ts +5 -5
  118. package/types/providers/utils/parsers/mpeg/boxes/mvhd.d.ts +32 -32
  119. package/types/providers/utils/parsers/mpeg/boxes/prhd.d.ts +13 -13
  120. package/types/providers/utils/parsers/mpeg/boxes/proj.d.ts +5 -5
  121. package/types/providers/utils/parsers/mpeg/boxes/sidx.d.ts +43 -43
  122. package/types/providers/utils/parsers/mpeg/boxes/st3d.d.ts +16 -16
  123. package/types/providers/utils/parsers/mpeg/boxes/stbl.d.ts +5 -5
  124. package/types/providers/utils/parsers/mpeg/boxes/stsd.d.ts +8 -8
  125. package/types/providers/utils/parsers/mpeg/boxes/sv3d.d.ts +5 -5
  126. package/types/providers/utils/parsers/mpeg/boxes/tfdt.d.ts +14 -14
  127. package/types/providers/utils/parsers/mpeg/boxes/tfhd.d.ts +19 -19
  128. package/types/providers/utils/parsers/mpeg/boxes/tkhd.d.ts +39 -39
  129. package/types/providers/utils/parsers/mpeg/boxes/traf.d.ts +5 -5
  130. package/types/providers/utils/parsers/mpeg/boxes/trak.d.ts +5 -5
  131. package/types/providers/utils/parsers/mpeg/boxes/trun.d.ts +28 -28
  132. package/types/providers/utils/parsers/mpeg/boxes/unknown.d.ts +5 -4
  133. package/types/providers/utils/parsers/mpeg/boxes/uuid.d.ts +10 -10
  134. package/types/providers/utils/parsers/mpeg/fullBox.d.ts +12 -12
  135. package/types/providers/utils/parsers/mpeg/isobmff.d.ts +7 -7
  136. package/types/providers/utils/parsers/types.d.ts +139 -131
  137. package/types/providers/utils/parsers/webm/ebml.d.ts +62 -62
  138. package/types/providers/utils/parsers/webm/webm.d.ts +1 -1
  139. package/types/providers/utils/restorePlaybackRateInSafari.d.ts +17 -17
  140. package/types/providers/utils/syncDesiredState.d.ts +9 -7
  141. package/types/providers/utils/syncPlaybackState.d.ts +2 -2
  142. package/types/providers/utils/videoStreamRepresentaionsFilter.d.ts +3 -3
  143. package/types/utils/3d/Camera3D.d.ts +11 -11
  144. package/types/utils/3d/CameraRotationManager.d.ts +59 -59
  145. package/types/utils/3d/Scene3D.d.ts +129 -129
  146. package/types/utils/3d/types.d.ts +14 -14
  147. package/types/utils/ClientChecker/ClientChecker.d.ts +19 -19
  148. package/types/utils/ClientChecker/index.d.ts +2 -2
  149. package/types/utils/ClientChecker/services/AudioChecker.d.ts +7 -7
  150. package/types/utils/ClientChecker/services/BrowserChecker.d.ts +36 -36
  151. package/types/utils/ClientChecker/services/DeviceChecker.d.ts +38 -38
  152. package/types/utils/ClientChecker/services/DisplayChecker.d.ts +20 -20
  153. package/types/utils/ClientChecker/services/VideoChecker.d.ts +35 -35
  154. package/types/utils/ClientChecker/types/checker.d.ts +1 -1
  155. package/types/utils/ClientChecker/types/currentClientBrowser.d.ts +10 -10
  156. package/types/utils/ClientChecker/types/currentClientDevice.d.ts +8 -8
  157. package/types/utils/ClientChecker/types/userAgentData.d.ts +21 -21
  158. package/types/utils/StateMachine/StateMachine.d.ts +17 -17
  159. package/types/utils/StateMachine/types.d.ts +56 -56
  160. package/types/utils/StatefulIterator/index.d.ts +13 -13
  161. package/types/utils/ThroughputEstimator.d.ts +22 -22
  162. package/types/utils/VolumeMultiplierManager/VolumeMultiplierManager.d.ts +20 -20
  163. package/types/utils/VolumeMultiplierManager/index.d.ts +1 -1
  164. package/types/utils/autoSelectTrack.d.ts +27 -28
  165. package/types/utils/buffer/createTimeRanges.d.ts +1 -2
  166. package/types/utils/buffer/getBufferedRangeForPosition.d.ts +2 -2
  167. package/types/utils/buffer/getForwardBufferDuration.d.ts +1 -1
  168. package/types/utils/buffer/getTotalBufferDuration.d.ts +1 -1
  169. package/types/utils/buffer/isPositionBuffered.d.ts +1 -1
  170. package/types/utils/buffer/isSourceBufferValid.d.ts +1 -1
  171. package/types/utils/changePlaybackRate.d.ts +1 -1
  172. package/types/utils/decodingInfoLogger.d.ts +1 -1
  173. package/types/utils/mediaSource.d.ts +5 -1
  174. package/types/utils/observeElementVisibility.d.ts +1 -1
  175. package/types/utils/playbackTelemetry.d.ts +4 -4
  176. package/types/utils/playerOptions.d.ts +3 -3
  177. package/types/utils/qualityLimits.d.ts +14 -15
  178. package/types/utils/setStateWithSubscribe.d.ts +3 -6
  179. package/types/utils/smoothedValue/baseSmoothedValue.d.ts +16 -16
  180. package/types/utils/smoothedValue/emaAndMaSmoothedValue.d.ts +5 -5
  181. package/types/utils/smoothedValue/emaTopExtremumValue.d.ts +8 -8
  182. package/types/utils/smoothedValue/smoothedValueFactory.d.ts +4 -4
  183. package/types/utils/smoothedValue/twoEmaSmoothedValue.d.ts +6 -6
  184. package/types/utils/smoothedValue/types.d.ts +16 -16
  185. package/types/utils/tuningConfig.d.ts +287 -276
  186. package/types/utils/videoFormat.d.ts +1 -1
@@ -1,280 +1,291 @@
1
- import type { VideoCodec, VideoFormat } from "../player/types";
2
- import { WebmCodecStrategy } from "../enums/WebmCodecStrategy";
3
- import { AndroidPreferredFormat } from "../enums/AndroidPreferredFormat";
4
- import { IOSPreferredFormat } from "../enums/IOSPreferredFormat";
5
- import type { Byte, Milliseconds, RecursivePartial, Seconds } from "@vkontakte/videoplayer-shared";
6
- import { type ExactVideoQuality, VideoQuality } from "@vkontakte/videoplayer-shared";
1
+ import { VideoCodec, VideoFormat } from '../player/types';
2
+ import { WebmCodecStrategy } from '../enums/WebmCodecStrategy';
3
+ import { AndroidPreferredFormat } from '../enums/AndroidPreferredFormat';
4
+ import { IOSPreferredFormat } from '../enums/IOSPreferredFormat';
5
+ import { Byte, type ExactVideoQuality, Milliseconds, RecursivePartial, Seconds, VideoQuality } from '@vkontakte/videoplayer-shared';
7
6
  export type ITuningConfig = {
8
- /** @deprecated */
9
- configName?: string[];
10
- throughputEstimator: {
11
- type: "TwoEma" | "EmaAndMa";
12
- emaAlphaSlow: number;
13
- emaAlphaFast: number;
14
- emaAlpha: number;
15
- basisTrendChangeCount: number;
16
- changeThreshold: number;
17
- useBrowserEstimation: boolean;
18
- rttPenaltyRequestSize: Byte;
19
- streamMinSampleSize: Byte;
20
- streamMinSampleTime: Milliseconds;
21
- deviationDepth: number;
22
- deviationFactor: number;
23
- lowLatency: {
24
- continuesByteSequenceInterval: Milliseconds;
25
- maxLastEvaluationTimeout: Milliseconds;
26
- };
27
- };
28
- autoTrackSelection: {
29
- bitrateFactorAtEmptyBuffer: number;
30
- minBitrateFactorAtEmptyBuffer: number;
31
- maxBitrateFactorAtEmptyBuffer: number;
32
- bitrateAudioFactorAtEmptyBuffer: number;
33
- bitrateFactorAtFullBuffer: number;
34
- minBitrateFactorAtFullBuffer: number;
35
- maxBitrateFactorAtFullBuffer: number;
36
- bitrateAudioFactorAtFullBuffer: number;
37
- minVideoAudioRatio: number;
38
- minAvailableThroughputAudioRatio: number;
39
- limitByContainer: boolean;
40
- usePixelRatio: boolean;
41
- /** @deprecated */
42
- pixelRatioMultiplier?: number;
43
- pixelRatioLogBase: number;
44
- pixelRatioLogCoefficients: number[];
45
- containerSizeFactor: number;
46
- minContainerSizeFactor: number;
47
- maxContainerSizeFactor: number;
48
- lazyQualitySwitch: boolean;
49
- minBufferToSwitchUp: number;
50
- considerPlaybackRate: boolean;
51
- trackCooldownIncreaseQuality: Milliseconds;
52
- trackCooldownDecreaseQuality: Milliseconds;
53
- backgroundVideoQualityLimit: VideoQuality;
54
- activeVideoAreaThreshold: number;
55
- trafficSavingLimit: ExactVideoQuality;
56
- highQualityLimit: ExactVideoQuality;
57
- };
58
- stallsManager: {
59
- enabled: boolean;
60
- ignoreDynamicAbrForShortVideo: boolean;
61
- stallDurationNoDataBeforeQualityDecrease: Milliseconds;
62
- stallDurationToBeCount: Milliseconds;
63
- stallCountBeforeQualityDecrease: Milliseconds;
64
- resetQualityRestrictionTimeout: Milliseconds;
65
- ignoreStallsOnSeek: boolean;
66
- stallsMetricsHistoryLength: number;
67
- maxPossibleStallDuration: Milliseconds;
68
- minTvtToBeCounted: Seconds;
69
- maxTvtToBeCounted: Seconds;
70
- significantTvt: Seconds;
71
- targetStallsDurationPerTvt: number;
72
- deviationStallsDurationPerTvt: number;
73
- criticalStallsDurationPerTvt: number;
74
- abrAdjustingSpeed: number;
75
- emaAlpha: number;
76
- useTotalStallsDurationPerTvt: boolean;
77
- useAverageStallsDurationPerTvt: boolean;
78
- useEmaStallsDurationPerTvt: boolean;
79
- };
80
- droppedFramesChecker: {
81
- enabled: boolean;
82
- percentLimit: number;
83
- checkTime: number;
84
- countLimit: number;
85
- tickCountAfterQualityChange: number;
86
- qualityUpWaitingTime: number;
87
- minQualityBanLimit: ExactVideoQuality;
88
- };
89
- dash: {
90
- /** @deprecated */
91
- forwardBufferTarget: Milliseconds;
92
- forwardBufferTargetAuto: Milliseconds;
93
- forwardBufferTargetManual: Milliseconds;
94
- forwardBufferTargetPreload: Milliseconds;
95
- seekBiasInTheEnd: Milliseconds;
96
- maxSegmentDurationLeftToSelectNextSegment: Milliseconds;
97
- minSafeBufferThreshold: number;
98
- bufferPruningSafeZone: Milliseconds;
99
- segmentRequestSize: Byte;
100
- maxVirtualBufferSize: Byte;
101
- virtualBufferPruneSize: Byte;
102
- representationSwitchForwardBufferGap: Milliseconds;
103
- crashOnStallTimeout: Milliseconds;
104
- crashOnStallTWithoutDataTimeout: Milliseconds;
105
- enableSubSegmentBufferFeeding: boolean;
106
- bufferEmptinessTolerance: Milliseconds;
107
- useNewRepresentationSwitch: boolean;
108
- useDelayedRepresentationSwitch: boolean;
109
- useSmartRepresentationSwitch: boolean;
110
- useFetchPriorityHints: boolean;
111
- useAbortMSEFix: boolean;
112
- enableBaseUrlSupport: boolean;
113
- maxSegmentRetryCount: number;
114
- sourceOpenTimeout: number;
115
- vktvAbrThrottle: number;
116
- timeupdateEventTickThrottle: number;
117
- fetcherBufferOptimisation: boolean;
118
- codecsPrioritizeEnabled: boolean;
119
- usePersistentGaps: boolean;
120
- abrThrottle: number;
121
- useVideoElementWaitingCurrentTimeReassign: boolean;
122
- stallWatchdogInterval: Milliseconds;
123
- liveUpdateInterval: Milliseconds;
124
- liveStallReinitInterval: Milliseconds;
125
- ignoreNetworkErrorsOnLoadInit: boolean;
126
- bufferTolerance: Milliseconds;
127
- actionTimeShiftFromSegment: Milliseconds;
128
- tickMaintainInterval: Milliseconds;
129
- minSafeBufferToPlay: Milliseconds;
130
- useBufferHoldingOnlyOnStall: boolean;
131
- useNewStallExitPolicy: boolean;
132
- videoStreamRepresentaionsFilter: [VideoQuality, number, VideoCodec][];
133
- };
134
- dashCmafLive: {
135
- externalStopControl: boolean;
136
- keepSilentStallWatchdogWhenNotActive: boolean;
137
- maxActiveLiveOffset: Milliseconds;
138
- normalizedTargetMinBufferSize: Milliseconds;
139
- normalizedLiveMinBufferSize: Milliseconds;
140
- normalizedActualBufferOffset: Milliseconds;
141
- offsetCalculationError: Milliseconds;
142
- maxLiveDuration: Seconds;
143
- catchupLiveForMutedInactiveTab: boolean;
144
- lowLatency: {
145
- maxTargetOffset: Milliseconds;
146
- maxTargetOffsetDeviation: Milliseconds;
147
- playbackCatchupSpeedup: number;
148
- isActiveOnDefault: boolean;
149
- bufferEstimator: {
150
- emaAlpha: number;
151
- changeThreshold: number;
152
- deviationDepth: number;
153
- deviationFactor: number;
154
- extremumInterval: number;
155
- };
156
- };
157
- };
158
- downloadBackoff: {
159
- bufferThreshold: Milliseconds;
160
- start: Milliseconds;
161
- factor: number;
162
- max: Milliseconds;
163
- random: number;
164
- };
165
- live: {
166
- minBuffer: Milliseconds;
167
- minBufferSegments: number;
168
- lowLatencyMinBuffer: Milliseconds;
169
- lowLatencyMinBufferSegments: number;
170
- lowLatencyActiveLiveDelay: Milliseconds;
171
- activeLiveDelay: Milliseconds;
172
- isLiveCatchUpMode: boolean;
173
- /**
174
- * Максимальное общее время нахождения на паузе, при котором воспроизведение можно продолжить без перезагрузки потока.
175
- * Время всех "пауз" суммируется до тех пор, пока не превысит этот лимит.
176
- * В случае превышения лимита при продолжении воспроизведения поток будет перезапущен с пересчитанным `offset`.
177
- */
178
- maxPausedTime: number;
179
- };
180
- enableWakeLock: boolean;
181
- enableTelemetryAtStart: boolean;
182
- forceFormat: VideoFormat | undefined;
183
- formatsToAvoid: VideoFormat[];
184
- disableChromecast: boolean;
185
- chromecastReceiverId: string | undefined;
186
- chromecastPresentationApi: boolean;
187
- /** @deprecated */
188
- useWebmBigRequest: boolean;
189
- webmCodec: WebmCodecStrategy;
190
- androidPreferredFormat: AndroidPreferredFormat;
191
- iosPreferredFormat: IOSPreferredFormat;
192
- preferCMAF: boolean;
193
- preferWebRTC: boolean;
194
- preferMultiStream: boolean;
195
- preferHDR: boolean;
196
- bigRequestMinInitSize: Byte;
197
- bigRequestMinDataSize: Byte;
198
- stripRangeHeader: boolean;
199
- flushShortLoopedBuffers: boolean;
200
- insufficientBufferRuleMargin: Milliseconds;
201
- seekNearDurationBias: Seconds;
202
- dashSeekInSegmentDurationThreshold: Milliseconds;
203
- dashSeekInSegmentAlwaysSeekDelta: Milliseconds;
204
- endGapTolerance: Milliseconds;
205
- stallIgnoreThreshold: Milliseconds;
206
- gapWatchdogInterval: Milliseconds;
207
- requestQuick: boolean;
208
- /** @deprecated HLS.js удалён, флаг ничего не делает */
209
- useHlsJs: boolean;
210
- useNativeHLSTextTracks: boolean;
211
- useNewSwitchTo: boolean;
212
- useDashProviderVirtual: boolean;
213
- useDashProviderVirtualMobile: boolean;
214
- useNewAutoSelectVideoTrack: boolean;
215
- useSafariEndlessRequestBugfix: boolean;
216
- isAudioDisabled: boolean;
217
- autoplayOnlyInActiveTab: boolean;
218
- dynamicImportTimeout: Milliseconds;
219
- maxPlaybackTransitionInterval: Milliseconds;
220
- providerErrorLimit: number;
221
- manifestRetryInterval: number;
222
- manifestRetryMaxInterval: number;
223
- manifestRetryMaxCount: number;
224
- audioVideoSyncRate: number;
225
- webrtc: {
226
- connectionRetryMaxNumber: number;
227
- };
228
- spherical: {
229
- enabled: boolean;
230
- fov: {
231
- x: number;
232
- y: number;
233
- };
234
- orientation?: {
235
- x: number;
236
- y: number;
237
- z: number;
238
- };
239
- rotationSpeed: number;
240
- maxYawAngle: number;
241
- rotationSpeedCorrection: number;
242
- degreeToPixelCorrection: number;
243
- speedFadeTime: Milliseconds;
244
- speedFadeThreshold: Milliseconds;
245
- };
246
- useVolumeMultiplier: boolean;
247
- ignoreAudioRendererError: boolean;
248
- useEnableSubtitlesParam: boolean;
249
- useHlsLiveNewTextManager: boolean;
250
- exposeInternalsToGlobal: boolean;
251
- /**
252
- * за какое время до конца текущих скачанных субтитров
253
- * попробуем получить следующий сегмент субтитров
254
- */
255
- hlsLiveNewTextManagerDownloadThreshold: Milliseconds;
256
- /**
257
- * Отключает яндексовскую магию с пипом.
258
- */
259
- disableYandexPiP?: boolean;
260
- asyncResolveClientChecker?: boolean;
261
- autostartOnlyIfVisible?: boolean;
262
- /**
263
- * Если включен, то переключаем видео в состояние паузы при окончании видео.
264
- */
265
- changePlaybackStateToPausedWhenEnded?: boolean;
266
- suppressExceptionsInObservables?: boolean;
267
- /**
268
- * Включает логирование devNull.
269
- */
270
- devNullLogEnabled?: boolean;
271
- /**
272
- * Включает сбор данных о кодеках.
273
- */
274
- collectingDecodingInfoEnabled?: boolean;
275
- sendDashLiveDebug?: boolean;
276
- logDashLiveDebug?: boolean;
277
- useInvalidBufferFix?: boolean;
7
+ /** @deprecated */
8
+ configName?: string[];
9
+ /**
10
+ * Если true, внутренний video элемент не будет уничтожаться при реините провайдера
11
+ * и при создании нового экземляра Player.
12
+ * Будет веcти себя аналогично элементу переданному снаружи
13
+ */
14
+ keepVideoElement: boolean;
15
+ /**
16
+ * Временный флаг для тестирования очистки video элемента
17
+ * Если true, при очистке будет вызван innerHTML = '' для очистки дочерних элементов трэков
18
+ * В противном случае они размножаются
19
+ */
20
+ clearVideoElementInnerHTML: boolean;
21
+ throughputEstimator: {
22
+ type: 'TwoEma' | 'EmaAndMa';
23
+ emaAlphaSlow: number;
24
+ emaAlphaFast: number;
25
+ emaAlpha: number;
26
+ basisTrendChangeCount: number;
27
+ changeThreshold: number;
28
+ useBrowserEstimation: boolean;
29
+ rttPenaltyRequestSize: Byte;
30
+ streamMinSampleSize: Byte;
31
+ streamMinSampleTime: Milliseconds;
32
+ deviationDepth: number;
33
+ deviationFactor: number;
34
+ lowLatency: {
35
+ continuesByteSequenceInterval: Milliseconds;
36
+ maxLastEvaluationTimeout: Milliseconds;
37
+ };
38
+ };
39
+ autoTrackSelection: {
40
+ bitrateFactorAtEmptyBuffer: number;
41
+ minBitrateFactorAtEmptyBuffer: number;
42
+ maxBitrateFactorAtEmptyBuffer: number;
43
+ bitrateAudioFactorAtEmptyBuffer: number;
44
+ bitrateFactorAtFullBuffer: number;
45
+ minBitrateFactorAtFullBuffer: number;
46
+ maxBitrateFactorAtFullBuffer: number;
47
+ bitrateAudioFactorAtFullBuffer: number;
48
+ minVideoAudioRatio: number;
49
+ minAvailableThroughputAudioRatio: number;
50
+ limitByContainer: boolean;
51
+ usePixelRatio: boolean;
52
+ /** @deprecated */
53
+ pixelRatioMultiplier?: number;
54
+ pixelRatioLogBase: number;
55
+ pixelRatioLogCoefficients: number[];
56
+ containerSizeFactor: number;
57
+ minContainerSizeFactor: number;
58
+ maxContainerSizeFactor: number;
59
+ lazyQualitySwitch: boolean;
60
+ minBufferToSwitchUp: number;
61
+ considerPlaybackRate: boolean;
62
+ trackCooldownIncreaseQuality: Milliseconds;
63
+ trackCooldownDecreaseQuality: Milliseconds;
64
+ backgroundVideoQualityLimit: VideoQuality;
65
+ activeVideoAreaThreshold: number;
66
+ trafficSavingLimit: ExactVideoQuality;
67
+ highQualityLimit: ExactVideoQuality;
68
+ };
69
+ stallsManager: {
70
+ enabled: boolean;
71
+ ignoreDynamicAbrForShortVideo: boolean;
72
+ stallDurationNoDataBeforeQualityDecrease: Milliseconds;
73
+ stallDurationToBeCount: Milliseconds;
74
+ stallCountBeforeQualityDecrease: Milliseconds;
75
+ resetQualityRestrictionTimeout: Milliseconds;
76
+ ignoreStallsOnSeek: boolean;
77
+ stallsMetricsHistoryLength: number;
78
+ maxPossibleStallDuration: Milliseconds;
79
+ minTvtToBeCounted: Seconds;
80
+ maxTvtToBeCounted: Seconds;
81
+ significantTvt: Seconds;
82
+ targetStallsDurationPerTvt: number;
83
+ deviationStallsDurationPerTvt: number;
84
+ criticalStallsDurationPerTvt: number;
85
+ abrAdjustingSpeed: number;
86
+ emaAlpha: number;
87
+ useTotalStallsDurationPerTvt: boolean;
88
+ useAverageStallsDurationPerTvt: boolean;
89
+ useEmaStallsDurationPerTvt: boolean;
90
+ };
91
+ droppedFramesChecker: {
92
+ enabled: boolean;
93
+ percentLimit: number;
94
+ checkTime: number;
95
+ countLimit: number;
96
+ tickCountAfterQualityChange: number;
97
+ qualityUpWaitingTime: number;
98
+ minQualityBanLimit: ExactVideoQuality;
99
+ };
100
+ dash: {
101
+ /** @deprecated */
102
+ forwardBufferTarget: Milliseconds;
103
+ forwardBufferTargetAuto: Milliseconds;
104
+ forwardBufferTargetManual: Milliseconds;
105
+ forwardBufferTargetPreload: Milliseconds;
106
+ seekBiasInTheEnd: Milliseconds;
107
+ maxSegmentDurationLeftToSelectNextSegment: Milliseconds;
108
+ minSafeBufferThreshold: number;
109
+ bufferPruningSafeZone: Milliseconds;
110
+ segmentRequestSize: Byte;
111
+ maxVirtualBufferSize: Byte;
112
+ virtualBufferPruneSize: Byte;
113
+ representationSwitchForwardBufferGap: Milliseconds;
114
+ crashOnStallTimeout: Milliseconds;
115
+ crashOnStallTWithoutDataTimeout: Milliseconds;
116
+ enableSubSegmentBufferFeeding: boolean;
117
+ bufferEmptinessTolerance: Milliseconds;
118
+ useNewRepresentationSwitch: boolean;
119
+ useDelayedRepresentationSwitch: boolean;
120
+ useSmartRepresentationSwitch: boolean;
121
+ useFetchPriorityHints: boolean;
122
+ useAbortMSEFix: boolean;
123
+ enableBaseUrlSupport: boolean;
124
+ maxSegmentRetryCount: number;
125
+ sourceOpenTimeout: number;
126
+ vktvAbrThrottle: number;
127
+ timeupdateEventTickThrottle: number;
128
+ fetcherBufferOptimisation: boolean;
129
+ codecsPrioritizeEnabled: boolean;
130
+ usePersistentGaps: boolean;
131
+ abrThrottle: number;
132
+ useVideoElementWaitingCurrentTimeReassign: boolean;
133
+ stallWatchdogInterval: Milliseconds;
134
+ liveUpdateInterval: Milliseconds;
135
+ liveStallReinitInterval: Milliseconds;
136
+ ignoreNetworkErrorsOnLoadInit: boolean;
137
+ bufferTolerance: Milliseconds;
138
+ actionTimeShiftFromSegment: Milliseconds;
139
+ tickMaintainInterval: Milliseconds;
140
+ minSafeBufferToPlay: Milliseconds;
141
+ useBufferHoldingOnlyOnStall: boolean;
142
+ useNewStallExitPolicy: boolean;
143
+ videoStreamRepresentaionsFilter: [VideoQuality, number, VideoCodec][];
144
+ };
145
+ dashCmafLive: {
146
+ externalStopControl: boolean;
147
+ keepSilentStallWatchdogWhenNotActive: boolean;
148
+ maxActiveLiveOffset: Milliseconds;
149
+ normalizedTargetMinBufferSize: Milliseconds;
150
+ normalizedLiveMinBufferSize: Milliseconds;
151
+ normalizedActualBufferOffset: Milliseconds;
152
+ offsetCalculationError: Milliseconds;
153
+ maxLiveDuration: Seconds;
154
+ catchupLiveForMutedInactiveTab: boolean;
155
+ lowLatency: {
156
+ maxTargetOffset: Milliseconds;
157
+ maxTargetOffsetDeviation: Milliseconds;
158
+ playbackCatchupSpeedup: number;
159
+ isActiveOnDefault: boolean;
160
+ bufferEstimator: {
161
+ emaAlpha: number;
162
+ changeThreshold: number;
163
+ deviationDepth: number;
164
+ deviationFactor: number;
165
+ extremumInterval: number;
166
+ };
167
+ };
168
+ };
169
+ downloadBackoff: {
170
+ bufferThreshold: Milliseconds;
171
+ start: Milliseconds;
172
+ factor: number;
173
+ max: Milliseconds;
174
+ random: number;
175
+ };
176
+ live: {
177
+ minBuffer: Milliseconds;
178
+ minBufferSegments: number;
179
+ lowLatencyMinBuffer: Milliseconds;
180
+ lowLatencyMinBufferSegments: number;
181
+ lowLatencyActiveLiveDelay: Milliseconds;
182
+ activeLiveDelay: Milliseconds;
183
+ isLiveCatchUpMode: boolean;
184
+ /**
185
+ * Максимальное общее время нахождения на паузе, при котором воспроизведение можно продолжить без перезагрузки потока.
186
+ * Время всех "пауз" суммируется до тех пор, пока не превысит этот лимит.
187
+ * В случае превышения лимита при продолжении воспроизведения поток будет перезапущен с пересчитанным `offset`.
188
+ */
189
+ maxPausedTime: number;
190
+ };
191
+ enableWakeLock: boolean;
192
+ enableTelemetryAtStart: boolean;
193
+ forceFormat: VideoFormat | undefined;
194
+ formatsToAvoid: VideoFormat[];
195
+ disableChromecast: boolean;
196
+ chromecastReceiverId: string | undefined;
197
+ chromecastPresentationApi: boolean;
198
+ /** @deprecated */
199
+ useWebmBigRequest: boolean;
200
+ webmCodec: WebmCodecStrategy;
201
+ androidPreferredFormat: AndroidPreferredFormat;
202
+ iosPreferredFormat: IOSPreferredFormat;
203
+ preferCMAF: boolean;
204
+ preferWebRTC: boolean;
205
+ preferMultiStream: boolean;
206
+ preferHDR: boolean;
207
+ bigRequestMinInitSize: Byte;
208
+ bigRequestMinDataSize: Byte;
209
+ stripRangeHeader: boolean;
210
+ flushShortLoopedBuffers: boolean;
211
+ insufficientBufferRuleMargin: Milliseconds;
212
+ seekNearDurationBias: Seconds;
213
+ dashSeekInSegmentDurationThreshold: Milliseconds;
214
+ dashSeekInSegmentAlwaysSeekDelta: Milliseconds;
215
+ endGapTolerance: Milliseconds;
216
+ stallIgnoreThreshold: Milliseconds;
217
+ gapWatchdogInterval: Milliseconds;
218
+ requestQuick: boolean;
219
+ /** @deprecated HLS.js удалён, флаг ничего не делает */
220
+ useHlsJs: boolean;
221
+ useNativeHLSTextTracks: boolean;
222
+ useNewSwitchTo: boolean;
223
+ useDashProviderVirtual: boolean;
224
+ useDashProviderVirtualMobile: boolean;
225
+ useNewAutoSelectVideoTrack: boolean;
226
+ useSafariEndlessRequestBugfix: boolean;
227
+ isAudioDisabled: boolean;
228
+ autoplayOnlyInActiveTab: boolean;
229
+ dynamicImportTimeout: Milliseconds;
230
+ maxPlaybackTransitionInterval: Milliseconds;
231
+ providerErrorLimit: number;
232
+ manifestRetryInterval: number;
233
+ manifestRetryMaxInterval: number;
234
+ manifestRetryMaxCount: number;
235
+ audioVideoSyncRate: number;
236
+ webrtc: {
237
+ connectionRetryMaxNumber: number;
238
+ };
239
+ spherical: {
240
+ enabled: boolean;
241
+ fov: {
242
+ x: number;
243
+ y: number;
244
+ };
245
+ orientation?: {
246
+ x: number;
247
+ y: number;
248
+ z: number;
249
+ };
250
+ rotationSpeed: number;
251
+ maxYawAngle: number;
252
+ rotationSpeedCorrection: number;
253
+ degreeToPixelCorrection: number;
254
+ speedFadeTime: Milliseconds;
255
+ speedFadeThreshold: Milliseconds;
256
+ };
257
+ useVolumeMultiplier: boolean;
258
+ ignoreAudioRendererError: boolean;
259
+ useEnableSubtitlesParam: boolean;
260
+ useHlsLiveNewTextManager: boolean;
261
+ exposeInternalsToGlobal: boolean;
262
+ /**
263
+ * за какое время до конца текущих скачанных субтитров
264
+ * попробуем получить следующий сегмент субтитров
265
+ */
266
+ hlsLiveNewTextManagerDownloadThreshold: Milliseconds;
267
+ /**
268
+ * Отключает яндексовскую магию с пипом.
269
+ */
270
+ disableYandexPiP?: boolean;
271
+ asyncResolveClientChecker?: boolean;
272
+ autostartOnlyIfVisible?: boolean;
273
+ /**
274
+ * Если включен, то переключаем видео в состояние паузы при окончании видео.
275
+ */
276
+ changePlaybackStateToPausedWhenEnded?: boolean;
277
+ suppressExceptionsInObservables?: boolean;
278
+ /**
279
+ * Включает логирование devNull.
280
+ */
281
+ devNullLogEnabled?: boolean;
282
+ /**
283
+ * Включает сбор данных о кодеках.
284
+ */
285
+ collectingDecodingInfoEnabled?: boolean;
286
+ sendDashLiveDebug?: boolean;
287
+ logDashLiveDebug?: boolean;
288
+ useInvalidBufferFix?: boolean;
278
289
  };
279
290
  export type IOptionalTuningConfig = RecursivePartial<ITuningConfig>;
280
291
  export declare const fillDefault: (partial: IOptionalTuningConfig) => ITuningConfig;
@@ -1,4 +1,4 @@
1
- import { type ISources, VideoFormat } from "../player/types";
1
+ import { type ISources, VideoFormat } from '../player/types';
2
2
  export declare const filterAvailableFormats: (formats: VideoFormat[]) => VideoFormat[];
3
3
  export declare const isLiveFormat: (format: VideoFormat) => boolean;
4
4
  export declare const areValidLiveRecordSources: (sources: ISources) => boolean;