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