@vkontakte/videoplayer-core 2.0.105-dev.65651c8b.0 → 2.0.105-dev.7303ff18.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.105-dev.65651c8b.0",
3
+ "version": "2.0.105-dev.7303ff18.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.36",
52
+ "@vkontakte/videoplayer-shared": "1.0.37-dev.7467b46e.0",
53
53
  "hls.js": "~1.4.7"
54
54
  }
55
55
  }
@@ -388,7 +388,6 @@ export interface IConfig {
388
388
  sources: ISources;
389
389
  meta?: IMetadata;
390
390
  failoverHosts?: string[];
391
- volumeMultiplier?: number;
392
391
  }
393
392
  export interface ISources {
394
393
  [VideoFormat.MPEG]?: IMpegSource;
@@ -1 +1,2 @@
1
1
  export declare const DASH_LIVE_UPDATE_INTERVAL_MS = 1000;
2
+ export declare const DASH_STALL_UPDATE_INTERVAL_MS: number;
@@ -66,6 +66,7 @@ export declare class BufferManager {
66
66
  getLiveSegmentsToLoadState(manifest: Manifest | null): IRange<Milliseconds> | undefined;
67
67
  seekLive: (param_0: Representation[] | undefined) => Promise<void | undefined>;
68
68
  updateLive(manifest: Manifest | null): void;
69
+ proceedLowLatencyLive(): void;
69
70
  private updateLowLatencyLive;
70
71
  findSegmentStartTime(position: Milliseconds): Milliseconds | undefined;
71
72
  setTarget(time: Milliseconds): void;
@@ -95,6 +96,8 @@ export declare class BufferManager {
95
96
  private loadNextInit;
96
97
  private loadInit;
97
98
  private pruneBuffer;
99
+ private pruneBufferNew;
100
+ private pruneBufferOld;
98
101
  private abortBuffer;
99
102
  getDebugBufferState(): IRange<Milliseconds> | undefined;
100
103
  private detectGaps;
@@ -46,7 +46,7 @@ export declare class Player {
46
46
  livePositionFromPlayer$: IValueSubject<number>;
47
47
  liveEstimatedDelay: ISmoothedValue;
48
48
  timeInWaiting: number;
49
- isActiveLowLatency: boolean;
49
+ isActiveLowLatency$: IValueSubject<boolean>;
50
50
  private isUpdatingLive;
51
51
  private isJumpGapAfterSeekLive;
52
52
  private liveLastSeekOffset;
@@ -8,10 +8,10 @@ export declare enum RepresentationKind {
8
8
  TEXT = "text"
9
9
  }
10
10
  export declare enum LiveStatus {
11
- ActiveLowLatency = 0,
12
- LiveWithTargetOffset = 1,
13
- LiveForwardBuffering = 2,
14
- None = 3
11
+ ActiveLowLatency = "active_low_latency",
12
+ LiveWithTargetOffset = "live_with_target_offset",
13
+ LiveForwardBuffering = "live_forward_buffering",
14
+ None = "none"
15
15
  }
16
16
  export declare enum Profile {
17
17
  WEBM_AS_IN_SPEC = "urn:mpeg:dash:profile:webm-on-demand:2012",
@@ -10,13 +10,11 @@ interface IParams extends IProviderDependencies {
10
10
  failoverHosts: string[];
11
11
  desiredState: IDesiredState;
12
12
  tuning: ITuningConfig;
13
- volumeMultiplier?: number;
14
13
  }
15
14
  export default class ProviderContainer implements IProviderContainer {
16
15
  current$: IValueSubject<IProviderEntry>;
17
16
  providerError$: ISubject<IError>;
18
17
  noAvailableProvidersError$: ISubject<VideoFormat | undefined>;
19
- volumeMultiplierError$: ISubject<IError>;
20
18
  providerOutput: IProviderOutput;
21
19
  private subscription;
22
20
  private screenFormatsIterator;
@@ -24,7 +22,6 @@ export default class ProviderContainer implements IProviderContainer {
24
22
  private log;
25
23
  private params;
26
24
  private failoverIndex;
27
- private volumeMultiplierManager;
28
25
  constructor(params: IParams);
29
26
  init(): void;
30
27
  destroy(): void;
@@ -5,7 +5,6 @@ export interface IProviderContainer {
5
5
  current$: IValueObservable<IProviderEntry>;
6
6
  providerError$: ISubject<IError>;
7
7
  noAvailableProvidersError$: ISubject<VideoFormat | undefined>;
8
- volumeMultiplierError$: ISubject<IError>;
9
8
  providerOutput: IProviderOutput;
10
9
  init(): void;
11
10
  destroy(): void;
@@ -80,5 +80,4 @@ export interface IProviderOutput {
80
80
  is3DVideo$: ISubject<boolean>;
81
81
  inPiP$: IValueSubject<boolean>;
82
82
  inFullscreen$: IValueSubject<boolean>;
83
- playbackState$: IValueSubject<PlaybackState | string>;
84
83
  }
@@ -19,6 +19,7 @@ export type ITuningConfig = {
19
19
  deviationFactor: number;
20
20
  lowLatency: {
21
21
  continuesByteSequenceInterval: Milliseconds;
22
+ maxLastEvaluationTimeout: Milliseconds;
22
23
  };
23
24
  };
24
25
  autoTrackSelection: {
@@ -128,6 +129,7 @@ export type ITuningConfig = {
128
129
  useDashAbortPartiallyFedSegment: boolean;
129
130
  useNativeHLSTextTracks: boolean;
130
131
  useManagedMediaSource: boolean;
132
+ useNewPruneBufferStrategy: boolean;
131
133
  isAudioDisabled: boolean;
132
134
  autoplayOnlyInActiveTab: boolean;
133
135
  dynamicImportTimeout: Milliseconds;
@@ -157,7 +159,6 @@ export type ITuningConfig = {
157
159
  speedFadeTime: Milliseconds;
158
160
  speedFadeThreshold: Milliseconds;
159
161
  };
160
- useVolumeMultiplier: boolean;
161
162
  };
162
163
  export type IOptionalTuningConfig = RecursivePartial<ITuningConfig> & {
163
164
  configName: ITuningConfig['configName'];
@@ -1,17 +0,0 @@
1
- import { IError, ISubject, IValueSubject } from '@vkontakte/videoplayer-shared';
2
- import { IProviderOutput } from '../../providers/types';
3
- import { IProviderEntry } from '../../providers/ProviderContainer/types';
4
- export declare class VolumeMultiplierManager {
5
- private providerOutput;
6
- private provider$;
7
- private volumeMultiplierError$;
8
- private volumeMultiplier;
9
- private static errorId;
10
- private subscriptions;
11
- private lastAudioContextResumeId;
12
- constructor(providerOutput: IProviderOutput, provider$: IValueSubject<IProviderEntry>, volumeMultiplierError$: ISubject<IError>, volumeMultiplier: number, enabled: boolean);
13
- private subscribe;
14
- private isSupported;
15
- private initAudioContextOnce;
16
- destroy(): void;
17
- }
@@ -1,9 +0,0 @@
1
- interface IAudioContext {
2
- audioCtx: AudioContext;
3
- gainNode: GainNode;
4
- }
5
- /**
6
- * Возвращает AudioContext
7
- */
8
- export declare function getAudioContext(): IAudioContext;
9
- export {};
@@ -1 +0,0 @@
1
- export { VolumeMultiplierManager } from './VolumeMultiplierManager';