@vkontakte/videoplayer-core 2.0.151-dev.fbdd1f70.0 → 2.0.152-dev.c4c6e087.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.151-dev.fbdd1f70.0",
3
+ "version": "2.0.152-dev.c4c6e087.0",
4
4
  "author": "vk.com",
5
5
  "description": "Videoplayer core library based on the vk.com platform",
6
6
  "homepage": "https://vk.com",
@@ -54,6 +54,6 @@
54
54
  "**/*.d.ts"
55
55
  ],
56
56
  "dependencies": {
57
- "@vkontakte/videoplayer-shared": "1.0.80-dev.fbdd1f70.0"
57
+ "@vkontakte/videoplayer-shared": "1.0.81-dev.c4c6e087.0"
58
58
  }
59
59
  }
@@ -9,6 +9,7 @@ export interface Dependencies {
9
9
  compatibilityMode?: boolean;
10
10
  manifest: Manifest | null;
11
11
  getCurrentPosition(): Milliseconds | undefined;
12
+ getCurrentStallDuration(): Milliseconds;
12
13
  isActiveLowLatency(): boolean;
13
14
  }
14
15
  export interface IVirtualBufferManager {
@@ -27,7 +28,7 @@ export interface IVirtualBufferManager {
27
28
  setTarget(time: Milliseconds): void;
28
29
  setPreloadOnly(preloadOnly: boolean): void;
29
30
  findSegmentStartTime(position: Milliseconds): Milliseconds | undefined;
30
- calculateDurationFromSegments(): Milliseconds;
31
+ calculateDurationFromSegments(representationId: Representation['id']): Milliseconds;
31
32
  destroy(): void;
32
33
  get lastDataObtainedTimestamp(): Milliseconds;
33
34
  }
@@ -44,7 +44,8 @@ export declare abstract class BaseVirtualBufferManager<T extends Segment> implem
44
44
  protected downloadAbortController: AbortController;
45
45
  protected subscription: Subscription;
46
46
  protected readonly getCurrentPosition: () => Milliseconds | undefined;
47
- protected constructor(kind: StreamKind, nativeBufferManager: NativeBufferManager, representations: Representation[], { fetcher, tuning, getCurrentPosition, manifest }: Dependencies);
47
+ protected readonly getCurrentStallDuration: () => Milliseconds | undefined;
48
+ protected constructor(kind: StreamKind, nativeBufferManager: NativeBufferManager, representations: Representation[], { fetcher, tuning, getCurrentPosition, getCurrentStallDuration, manifest }: Dependencies);
48
49
  protected abstract loadItems(itemsToLoad: IBufferPlaybackQueueItem<T>[], representation: Representation, priority?: Priority): Promise<void>;
49
50
  protected abstract selectItemsToLoad(): IBufferPlaybackQueueItem<T>[];
50
51
  protected abstract prepareFetchParams(items: IBufferPlaybackQueueItem<T>[], representation: Representation): FetchParamsWithUrl;
@@ -59,7 +60,7 @@ export declare abstract class BaseVirtualBufferManager<T extends Segment> implem
59
60
  abort(): Promise<void>;
60
61
  findSegmentStartTime(position: Milliseconds): Milliseconds | undefined;
61
62
  getRepresentationInitialTime(): Seconds;
62
- calculateDurationFromSegments(): Milliseconds;
63
+ calculateDurationFromSegments(representationId: Representation['id']): Milliseconds;
63
64
  get lastDataObtainedTimestamp(): Milliseconds;
64
65
  setTarget(time: Milliseconds): void;
65
66
  setPreloadOnly(preloadOnly: boolean): void;
@@ -76,7 +76,7 @@ export declare abstract class BasePlayer {
76
76
  switchRepresentation(kind: StreamKind, id: Representation['id'], isAuto?: boolean): Promise<void>;
77
77
  seek(requestedPosition: Milliseconds, forcePrecise?: boolean): Promise<void>;
78
78
  warmUpMediaSourceIfNeeded(position?: Milliseconds | undefined): void;
79
- calculateDurationFromSegments(): Milliseconds;
79
+ calculateDurationFromSegments(representationId: Representation['id']): Milliseconds;
80
80
  get isStreamEnded(): boolean;
81
81
  getStreams(): Manifest['streams'] | undefined;
82
82
  getCodecs(): Manifest['codecs'] | undefined;
@@ -124,6 +124,10 @@ export type ITuningConfig = {
124
124
  ignoreNetworkErrorsOnLoadInit: boolean;
125
125
  bufferTolerance: Milliseconds;
126
126
  actionTimeShiftFromSegment: Milliseconds;
127
+ tickMaintainInterval: Milliseconds;
128
+ minSafeBufferToPlay: Milliseconds;
129
+ useBufferHoldingOnlyOnStall: boolean;
130
+ useNewStallExitPolicy: boolean;
127
131
  videoStreamRepresentaionsFilter: [VideoQuality, number][];
128
132
  };
129
133
  dashCmafLive: {