@vkontakte/videoplayer-core 2.0.165-dev.dc17075f7.0 → 2.0.166-dev.2bfbc0980.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/videoplayer-core",
3
- "version": "2.0.165-dev.dc17075f7.0",
3
+ "version": "2.0.166-dev.2bfbc0980.0",
4
4
  "author": "vk.com",
5
5
  "description": "Videoplayer core library based on the vk.com platform",
6
6
  "homepage": "https://vk.com",
@@ -42,6 +42,6 @@
42
42
  "**/*.d.ts"
43
43
  ],
44
44
  "dependencies": {
45
- "@vkontakte/videoplayer-shared": "1.0.94-dev.dc17075f7.0"
45
+ "@vkontakte/videoplayer-shared": "1.0.95-dev.2bfbc0980.0"
46
46
  }
47
47
  }
@@ -126,6 +126,7 @@ export default class Player implements IPlayer {
126
126
  private initDebugTelemetry;
127
127
  private initTracerSubscription;
128
128
  private initWakeLock;
129
+ private initRenderingRecovery;
129
130
  private setVideoTrackIdByQuality;
130
131
  private getActiveLiveDelay;
131
132
  private isNotActiveTabCase;
@@ -335,6 +335,16 @@ export type ITuningConfig = {
335
335
  useDashProviderVirtualMobile: boolean;
336
336
  useNewAutoSelectVideoTrack: boolean;
337
337
  useSafariEndlessRequestBugfix: boolean;
338
+ /**
339
+ * Ручка для фикса сброса playbackRate при перемотке live-трансляции на Safari.
340
+ *
341
+ * На WebKit/Safari в момент applying seek video.currentTime может кратко отдавать
342
+ * неверное значение (например, 0). Без фикса это проходит в условие
343
+ * atLiveDurationEdge и tap сбрасывает playbackRate в 1, перетирая пользовательскую скорость.
344
+ * С фиксом позиция берётся из optimisticPosition (seek target во время seek), и ложного
345
+ * срабатывания не происходит. Для VOD нейтрально (isLive=false).
346
+ */
347
+ useSafariOptimisticPositionForLiveEdgeBugfix: boolean;
338
348
  isAudioDisabled: boolean;
339
349
  /**
340
350
  * Разрешает ядру автостарт только если страница, на которой находится плеер активна
@@ -346,6 +356,13 @@ export type ITuningConfig = {
346
356
  * использует requestAnimationFrame
347
357
  */
348
358
  autoplayOnlyIfVisible: boolean;
359
+ /**
360
+ * Восстанавливает отрисовку <video> при возврате из фоновой вкладки.
361
+ * WebKit на скрытых вкладках останавливает композитинг кадра и не всегда
362
+ * возобновляет его сам — после детекта «залипшего» кадра делается микросик
363
+ * в текущую позицию, заставляющий декодер переинициализировать текстуру.
364
+ */
365
+ recoverRenderingOnTabVisible: boolean;
349
366
  dynamicImportTimeout: Milliseconds;
350
367
  maxPlaybackTransitionInterval: Milliseconds;
351
368
  providerErrorLimit: number;