@vkontakte/videoplayer-core 2.0.85 → 2.0.86-dev.f2e1ec4.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/index.d.ts CHANGED
@@ -94,34 +94,56 @@ interface IPlayer {
94
94
  */
95
95
  interface IPlayerEvents {
96
96
  /**
97
- * Плеер получил ссылку и готов к взаимодействию
97
+ * Плеер получил ссылку и начал полезную работу
98
98
  */
99
99
  inited$: IObservable<void>;
100
+ /**
101
+ * Предзагрузка окончена и плеер готов стартовать немедленно. Если предзагрузка не инициировалась, события не будет
102
+ */
103
+ ready$: IObservable<void>;
100
104
  /**
101
105
  * Видео начало воспроизведение в первый раз
102
106
  * Соответствует первому для видео внешнему запуску воспроизведения
103
107
  */
104
108
  started$: IObservable<void>;
109
+ /**
110
+ * Любое начало воспроизведения. Первои и после паузы
111
+ */
112
+ playing$: IObservable<void>;
113
+ /**
114
+ * Видео на паузе
115
+ */
116
+ paused$: IObservable<void>;
117
+ /**
118
+ * Плеер остановлен
119
+ */
120
+ stopped$: IObservable<void>;
105
121
  /**
106
122
  * Запрошена пауза
107
123
  */
108
124
  willPause$: IObservable<void>;
125
+ /**
126
+ * Запрошено первый старт воспроизведения
127
+ */
128
+ willStart$: IObservable<void>;
109
129
  /**
110
130
  * Запрошено возобновление воспроизведения после паузы
111
131
  */
112
132
  willResume$: IObservable<void>;
133
+ /**
134
+ * Плеер будет остановлен
135
+ */
136
+ willStop$: IObservable<void>;
113
137
  /**
114
138
  * Плеер будет уничтожен, в момент события можно синхронно запросить последние данные о его состоянии.
115
139
  */
116
140
  willDestruct$: IObservable<void>;
117
141
  /**
118
- * Просмотрен промежуток видео.
119
- * Параметр содержит диапазон: начальная и конечная позиция просмотра (в секундах от начала ролика).
142
+ * @deprecated
120
143
  */
121
144
  watchCoverageRecord$: IObservable<StartEnd<Seconds>>;
122
145
  /**
123
- * Просмотрен промежуток видео. Промежуток видео, которые были просмотрены пользователем.
124
- * Параметр содержит диапазон: начальный и конечный UTC tipestamp?
146
+ * @deprecated
125
147
  */
126
148
  watchCoverageLive$: IObservable<StartEnd<Milliseconds>>;
127
149
  /**
@@ -173,6 +195,10 @@ interface IPlayerEvents {
173
195
  log$: IObservable<ILogEntry>;
174
196
  }
175
197
  interface IPlayerInfo {
198
+ /**
199
+ * Оптимистичный статут плеера. Так например, значение будет равно Playing сразу после вызова play().
200
+ * Фактическое состояние лучше отслеживать по событиям (например, playing$)
201
+ */
176
202
  playbackState$: IValueObservable<PlaybackState>;
177
203
  /**
178
204
  * Текущая позиция.
@@ -268,6 +294,10 @@ interface IPlayerInfo {
268
294
  * Бесконечный ли стрим
269
295
  */
270
296
  isLive$: IValueObservable<boolean | undefined>;
297
+ /**
298
+ * Играем ли мы сейчас самый актуальный кадр лайва
299
+ */
300
+ atLiveEdge$: IValueObservable<boolean | undefined>;
271
301
  /**
272
302
  * Серверное время текущего кадра
273
303
  */
@@ -324,6 +354,10 @@ interface IPlayerInfo {
324
354
  width: number;
325
355
  height: number;
326
356
  } | undefined>;
357
+ /**
358
+ * Где сейчас рисуется картинка
359
+ */
360
+ surface$: IValueObservable<Surface | undefined>;
327
361
  }
328
362
  declare enum PlaybackState {
329
363
  STOPPED = "stopped",
@@ -441,7 +475,14 @@ declare enum HttpConnectionType {
441
475
  QUIC = "quic"
442
476
  }
443
477
  type FpsByQuality = Partial<Record<VideoQuality, number>>;
444
- type PlaybackRate = number;
478
+ type PlaybackRate = number;
479
+ declare enum Surface {
480
+ NONE = "none",
481
+ INLINE = "inline",
482
+ FULLSCREEN = "fullscreen",
483
+ SECOND_SCREEN = "second_screen",
484
+ PIP = "pip"
485
+ }
445
486
 
446
487
  type ITuningConfig = {
447
488
  throughputEstimator: {
@@ -559,6 +600,7 @@ declare class Player implements IPlayer {
559
600
  isEnded$: ValueSubject<boolean>;
560
601
  isLooped$: ValueSubject<boolean>;
561
602
  isLive$: ValueSubject<boolean | undefined>;
603
+ atLiveEdge$: ValueSubject<boolean | undefined>;
562
604
  liveTime$: ValueSubject<number | undefined>;
563
605
  currentFormat$: ValueSubject<VideoFormat | undefined>;
564
606
  availableTextTracks$: ValueSubject<ITextTrack[]>;
@@ -569,6 +611,7 @@ declare class Player implements IPlayer {
569
611
  hostname$: ValueSubject<string | undefined>;
570
612
  httpConnectionType$: ValueSubject<HttpConnectionType | undefined>;
571
613
  httpConnectionReused$: ValueSubject<boolean | undefined>;
614
+ surface$: ValueSubject<Surface>;
572
615
  chromecastState$: ValueSubject<ChromecastState>;
573
616
  chromecastDeviceName$: ValueSubject<string | undefined>;
574
617
  intrinsicVideoSize$: ValueSubject<{
@@ -578,9 +621,15 @@ declare class Player implements IPlayer {
578
621
  };
579
622
  events: {
580
623
  inited$: Subject<void>;
624
+ ready$: Subject<void>;
581
625
  started$: Subject<void>;
582
- willPause$: Subject<void>;
626
+ playing$: Subject<void>;
627
+ paused$: Subject<void>;
628
+ stopped$: Subject<void>;
629
+ willStart$: Subject<void>;
583
630
  willResume$: Subject<void>;
631
+ willPause$: Subject<void>;
632
+ willStop$: Subject<void>;
584
633
  willDestruct$: Subject<void>;
585
634
  watchCoverageRecord$: Subject<StartEnd<number>>;
586
635
  watchCoverageLive$: Subject<StartEnd<number>>;
@@ -642,4 +691,4 @@ declare class Player implements IPlayer {
642
691
  */
643
692
  declare const SDK_VERSION: string;
644
693
 
645
- export { ChromecastState, ExactVideoQuality, HttpConnectionType, IConfig, ICueSettings, IDashSource, IDashURLSource, IExternalTextTrack, IHLSLiveSource, IHLSSource, IMpegSource, IPlayer, IPlayerEvents, IPlayerInfo, ISeekRequest, ISources, ITextTrack, PlaybackRate, PlaybackState, Player, RawSource, SDK_VERSION, URLSource, URLSourceWithSeek, VideoFormat, VideoQuality };
694
+ export { ChromecastState, ExactVideoQuality, HttpConnectionType, IConfig, ICueSettings, IDashSource, IDashURLSource, IExternalTextTrack, IHLSLiveSource, IHLSSource, IMpegSource, IPlayer, IPlayerEvents, IPlayerInfo, ISeekRequest, ISources, ITextTrack, PlaybackRate, PlaybackState, Player, RawSource, SDK_VERSION, Surface, URLSource, URLSourceWithSeek, VideoFormat, VideoQuality };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/videoplayer-core",
3
- "version": "2.0.85",
3
+ "version": "2.0.86-dev.f2e1ec4.0",
4
4
  "author": "vk.com",
5
5
  "description": "Videoplayer core library based on the vk.com platform",
6
6
  "homepage": "https://vk.com",
@@ -49,7 +49,7 @@
49
49
  "**/*.d.ts"
50
50
  ],
51
51
  "dependencies": {
52
- "@vkontakte/videoplayer-shared": "^1.0.23",
52
+ "@vkontakte/videoplayer-shared": "^1.0.24-dev.fd1a076.0",
53
53
  "dashjs": "~4.6.0",
54
54
  "hls.js": "~1.4.0",
55
55
  "lodash": "~4.17.21"