@vkontakte/videoplayer-core 2.0.157-dev.30efab63.0 → 2.0.157-dev.50bf8b6d.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/es2015.cjs +220 -0
- package/es2015.esm.js +34 -34
- package/esnext.cjs +220 -0
- package/esnext.esm.js +30 -30
- package/evergreen.esm.js +30 -30
- package/package.json +18 -7
- package/types/index.d.ts +10 -10
- package/types/player/Player.d.ts +16 -112
- package/types/player/types.d.ts +144 -103
- package/types/player/utils/defaults.d.ts +4 -0
- package/types/player/utils/optimisticPosition.d.ts +2 -2
- package/types/player/utils/selectContainer.d.ts +1 -1
- package/types/providers/ChromecastPresentationApiProvider/ChromecastPresentationApiInitializer.d.ts +1 -1
- package/types/providers/ChromecastProvider/ChromecastInitializer/index.d.ts +1 -1
- package/types/providers/ChromecastProvider/ChromecastInitializer/types.d.ts +1 -1
- package/types/providers/ChromecastProvider/types.d.ts +1 -1
- package/types/providers/DashLiveProvider/DashLiveProvider.d.ts +2 -2
- package/types/providers/DashLiveProvider/types.d.ts +2 -0
- package/types/providers/DashLiveProvider/utils/LiveDashPlayer.d.ts +3 -3
- package/types/providers/DashProvider/baseDashProvider.d.ts +10 -10
- package/types/providers/DashProvider/lib/LiveTextManager.d.ts +1 -1
- package/types/providers/DashProvider/lib/buffer.d.ts +2 -2
- package/types/providers/DashProvider/lib/fetcher.d.ts +3 -3
- package/types/providers/DashProvider/lib/player.d.ts +6 -6
- package/types/providers/DashProvider/lib/types.d.ts +3 -3
- package/types/providers/DashProvider/lib/utils.d.ts +2 -2
- package/types/providers/DashProviderVirtual/baseDashProvider.d.ts +16 -16
- package/types/providers/DashProviderVirtual/dashCmafLiveProvider.d.ts +1 -1
- package/types/providers/DashProviderVirtual/dashProvider.d.ts +1 -1
- package/types/providers/DashProviderVirtual/lib/LiveTextManager.d.ts +2 -2
- package/types/providers/DashProviderVirtual/lib/buffer/types.d.ts +3 -3
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/baseVirtualBufferManager.d.ts +6 -6
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/byteRangeVirtualBufferManager.d.ts +5 -5
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/liveVirtualBuffer.d.ts +5 -5
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/templateVirtualBufferManager.d.ts +5 -5
- package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/virtualBufferFactory.d.ts +3 -3
- package/types/providers/DashProviderVirtual/lib/fetcher.d.ts +3 -3
- package/types/providers/DashProviderVirtual/lib/player/basePlayer.d.ts +10 -10
- package/types/providers/DashProviderVirtual/lib/player/livePlayer.d.ts +8 -8
- package/types/providers/DashProviderVirtual/lib/player/player.d.ts +2 -2
- package/types/providers/DashProviderVirtual/lib/player/types.d.ts +3 -3
- package/types/providers/DashProviderVirtual/lib/types.d.ts +3 -3
- package/types/providers/DashProviderVirtual/lib/utils.d.ts +2 -2
- package/types/providers/HlsLiveProvider/LiveTextManager.d.ts +1 -1
- package/types/providers/HlsLiveProvider/index.d.ts +3 -3
- package/types/providers/HlsProvider/index.d.ts +2 -2
- package/types/providers/HlsProvider/manifestDataExtractor.d.ts +1 -1
- package/types/providers/MpegProvider/index.d.ts +1 -1
- package/types/providers/ProviderContainer/index.d.ts +3 -3
- package/types/providers/ProviderContainer/types.d.ts +1 -1
- package/types/providers/ProviderContainer/utils/formatsSupport.d.ts +2 -2
- package/types/providers/ProviderContainer/utils/playbackHangup.d.ts +3 -3
- package/types/providers/WebRTCLiveProvider/WebRTCLiveClient.d.ts +1 -1
- package/types/providers/WebRTCLiveProvider/WebRTCLiveProvider.d.ts +2 -2
- package/types/providers/types.d.ts +41 -25
- package/types/providers/utils/Abr/abrController.d.ts +3 -3
- package/types/providers/utils/Abr/abrManager.d.ts +3 -3
- package/types/providers/utils/Abr/controllers/stallsController.d.ts +2 -2
- package/types/providers/utils/Abr/rules/audio/audioThroughputRule.d.ts +4 -4
- package/types/providers/utils/Abr/rules/audio/minAudioForVideoRule.d.ts +4 -4
- package/types/providers/utils/Abr/rules/baseRule.d.ts +2 -2
- package/types/providers/utils/Abr/rules/limitAboveRule.d.ts +3 -3
- package/types/providers/utils/Abr/rules/limitBelowRule.d.ts +3 -3
- package/types/providers/utils/Abr/rules/video/bufferRule.d.ts +4 -4
- package/types/providers/utils/Abr/rules/video/fitsContainerRule.d.ts +4 -4
- package/types/providers/utils/Abr/rules/video/lowerLimitRule.d.ts +3 -3
- package/types/providers/utils/Abr/rules/video/stallsRule.d.ts +4 -4
- package/types/providers/utils/Abr/rules/video/throughputRule.d.ts +4 -4
- package/types/providers/utils/Abr/rules/video/upperLimitRule.d.ts +3 -3
- package/types/providers/utils/Abr/trackHistory.d.ts +4 -4
- package/types/providers/utils/Abr/types.d.ts +3 -3
- package/types/providers/utils/Abr/utils.d.ts +2 -2
- package/types/providers/utils/HTMLVideoElement/DroppedFramesManager.d.ts +3 -3
- package/types/providers/utils/HTMLVideoElement/ElementSizeManager.d.ts +1 -1
- package/types/providers/utils/HTMLVideoElement/TextTrackManager.d.ts +2 -2
- package/types/providers/utils/HTMLVideoElement/observable.d.ts +1 -1
- package/types/providers/utils/HTMLVideoElement/pool.d.ts +1 -1
- package/types/providers/utils/StallsManager.d.ts +2 -2
- package/types/providers/utils/extractConnectionHeaders.d.ts +1 -1
- package/types/providers/utils/parsers/types.d.ts +1 -1
- package/types/providers/utils/syncDesiredState.d.ts +2 -2
- package/types/providers/utils/syncPlaybackState.d.ts +2 -2
- package/types/providers/utils/videoStreamRepresentaionsFilter.d.ts +6 -2
- package/types/utils/3d/Camera3D.d.ts +1 -1
- package/types/utils/3d/CameraRotationManager.d.ts +2 -2
- package/types/utils/3d/Scene3D.d.ts +1 -1
- package/types/utils/ClientChecker/services/AudioChecker.d.ts +1 -1
- package/types/utils/ClientChecker/services/BrowserChecker.d.ts +2 -2
- package/types/utils/ClientChecker/services/DeviceChecker.d.ts +3 -3
- package/types/utils/ClientChecker/services/DisplayChecker.d.ts +1 -1
- package/types/utils/ClientChecker/services/VideoChecker.d.ts +2 -2
- package/types/utils/StateMachine/StateMachine.d.ts +3 -2
- package/types/utils/StateMachine/comparators.d.ts +3 -0
- package/types/utils/StateMachine/types.d.ts +1 -0
- package/types/utils/ThroughputEstimator.d.ts +1 -1
- package/types/utils/VolumeMultiplierManager/VolumeMultiplierManager.d.ts +2 -2
- package/types/utils/autoSelectTrack.d.ts +2 -2
- package/types/utils/qualityLimits.d.ts +2 -2
- package/types/utils/setStateWithSubscribe.d.ts +1 -1
- package/types/utils/smoothedValue/baseSmoothedValue.d.ts +1 -1
- package/types/utils/smoothedValue/emaAndMaSmoothedValue.d.ts +2 -2
- package/types/utils/smoothedValue/emaTopExtremumValue.d.ts +2 -2
- package/types/utils/smoothedValue/smoothedValueFactory.d.ts +2 -2
- package/types/utils/smoothedValue/twoEmaSmoothedValue.d.ts +2 -2
- package/types/utils/tuningConfig.d.ts +8 -4
- package/types/utils/videoFormat.d.ts +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ISubject, IValueSubject, IError } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import { ChromecastState } from "
|
|
2
|
+
import { ChromecastState } from "../../../player/types";
|
|
3
3
|
import type { IChromecastConnection, IChromecastInitializer, IParams } from "./types";
|
|
4
4
|
export declare class ChromecastInitializer implements IChromecastInitializer {
|
|
5
5
|
readonly connection$: IValueSubject<IChromecastConnection | undefined>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IObservable, IValueObservable, IError, ILogger } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { ChromecastState } from "
|
|
2
|
+
import type { ChromecastState } from "../../../player/types";
|
|
3
3
|
export interface IChromecastInitializer {
|
|
4
4
|
connect(): void;
|
|
5
5
|
disconnect(): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IMetadata, ISources, VideoFormat } from "
|
|
1
|
+
import type { IMetadata, ISources, VideoFormat } from "../../player/types";
|
|
2
2
|
import type { IProviderParams } from "../types";
|
|
3
3
|
import type { IChromecastConnection } from "./ChromecastInitializer/types";
|
|
4
4
|
export interface IParams extends Omit<IProviderParams<ISources>, "skipVideoElVolumeSync$"> {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { IDashURLSource } from "
|
|
2
|
-
import type { IProvider, IProviderParams } from "
|
|
1
|
+
import type { IDashURLSource } from "../../player/types";
|
|
2
|
+
import type { IProvider, IProviderParams } from "../types";
|
|
3
3
|
import type { Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
4
4
|
type Params = IProviderParams<IDashURLSource> & {
|
|
5
5
|
config: {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { ILiveOffset } from "
|
|
2
|
-
import { IStateMachine } from "
|
|
1
|
+
import { ILiveOffset } from "../../utils/LiveOffset/types";
|
|
2
|
+
import { IStateMachine } from "../../../utils/StateMachine/types";
|
|
3
3
|
import { Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
4
4
|
import { IRepresentation, State } from "../types";
|
|
5
5
|
import { Subject } from "@vkontakte/videoplayer-shared";
|
|
6
|
-
import { PlaybackState } from "
|
|
6
|
+
import { PlaybackState } from "../../../player/types";
|
|
7
7
|
interface IParams {
|
|
8
8
|
videoElement: HTMLVideoElement;
|
|
9
9
|
videoState: IStateMachine<State>;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import type { IAudioTrack, IDashURLSource, IHLSSource, IInternalTextTrack, IVideoTrack, VideoCodec } from "
|
|
1
|
+
import type { IAudioTrack, IDashURLSource, IHLSSource, IInternalTextTrack, IVideoTrack, VideoCodec } from "../../player/types";
|
|
2
2
|
import type { IProviderSubscriptionInfo } from "./lib/types";
|
|
3
3
|
import { ProviderState } from "./lib/types";
|
|
4
|
-
import type { CommonInit, Representation, Stream } from "
|
|
5
|
-
import type { IProvider, IProviderParams } from "
|
|
6
|
-
import type { IObservableVideo } from "
|
|
7
|
-
import { TrackHistory } from "
|
|
8
|
-
import type { IStateMachine } from "
|
|
4
|
+
import type { CommonInit, Representation, Stream } from "../utils/parsers/types";
|
|
5
|
+
import type { IProvider, IProviderParams } from "../types";
|
|
6
|
+
import type { IObservableVideo } from "../utils/HTMLVideoElement/observable";
|
|
7
|
+
import { TrackHistory } from "../../utils/autoSelectTrack";
|
|
8
|
+
import type { IStateMachine } from "../../utils/StateMachine/types";
|
|
9
9
|
import type { ISubscription, ITracer, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
10
10
|
import { Player } from "./lib/player";
|
|
11
|
-
import { Scene3D } from "
|
|
12
|
-
import DroppedFramesManager from "
|
|
13
|
-
import TextTrackManager from "
|
|
14
|
-
import StallsManager from "
|
|
11
|
+
import { Scene3D } from "../../utils/3d/Scene3D";
|
|
12
|
+
import DroppedFramesManager from "../utils/HTMLVideoElement/DroppedFramesManager";
|
|
13
|
+
import TextTrackManager from "../utils/HTMLVideoElement/TextTrackManager";
|
|
14
|
+
import StallsManager from "../utils/StallsManager";
|
|
15
15
|
import { AbrManager } from "../utils/Abr/abrManager";
|
|
16
16
|
import { ElementSizeManager } from "../utils/HTMLVideoElement/ElementSizeManager";
|
|
17
17
|
type IParams = IProviderParams<IDashURLSource> & {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IValueSubject, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
2
2
|
import type { Dependencies } from "./buffer";
|
|
3
|
-
import type { Manifest, Stream, TextRepresentation } from "
|
|
3
|
+
import type { Manifest, Stream, TextRepresentation } from "../../utils/parsers/types";
|
|
4
4
|
export declare class LiveTextManager {
|
|
5
5
|
currentRepresentation$: IValueSubject<TextRepresentation | null>;
|
|
6
6
|
private readonly maxRepresentations;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { ITuningConfig } from "
|
|
1
|
+
import type { ITuningConfig } from "../../../utils/tuningConfig";
|
|
2
2
|
import type { IError, IRange, ISubject, IValueSubject, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
3
3
|
import { abortable } from "@vkontakte/videoplayer-shared";
|
|
4
4
|
import type { Fetcher } from "./fetcher";
|
|
5
|
-
import type { CommonInit, Manifest, Representation, Segment, Stream, StreamKind } from "
|
|
5
|
+
import type { CommonInit, Manifest, Representation, Segment, Stream, StreamKind } from "../../utils/parsers/types";
|
|
6
6
|
export interface Dependencies {
|
|
7
7
|
fetcher: Fetcher;
|
|
8
8
|
tuning: ITuningConfig;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { HttpConnectionType, HttpConnectionMetrics, HttpDownloadMetrics } from "
|
|
2
|
-
import type ThroughputEstimator from "
|
|
1
|
+
import type { HttpConnectionType, HttpConnectionMetrics, HttpDownloadMetrics } from "../../../player/types";
|
|
2
|
+
import type ThroughputEstimator from "../../../utils/ThroughputEstimator";
|
|
3
3
|
import type { Byte, IValueSubject, ISubject, Milliseconds, IRange, ITracer, IError } from "@vkontakte/videoplayer-shared";
|
|
4
4
|
import { abortable } from "@vkontakte/videoplayer-shared";
|
|
5
|
-
import type { CommonInit, GenericContainerParser, Segment, SegmentReference } from "
|
|
5
|
+
import type { CommonInit, GenericContainerParser, Segment, SegmentReference } from "../../utils/parsers/types";
|
|
6
6
|
declare global {
|
|
7
7
|
interface Navigator {
|
|
8
8
|
connection: {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { IHLSSource, HttpConnectionType, HttpConnectionMetrics, HttpDownloadMetrics, VideoCodec } from "
|
|
1
|
+
import type { IHLSSource, HttpConnectionType, HttpConnectionMetrics, HttpDownloadMetrics, VideoCodec } from "../../../player/types";
|
|
2
2
|
import { LiveStreamStatus } from "./types";
|
|
3
|
-
import type { CommonInit, Manifest, Representation, Segment, TextRepresentation } from "
|
|
4
|
-
import { StreamKind } from "
|
|
5
|
-
import StateMachine from "
|
|
6
|
-
import type ThroughputEstimator from "
|
|
7
|
-
import type { ITuningConfig } from "
|
|
3
|
+
import type { CommonInit, Manifest, Representation, Segment, TextRepresentation } from "../../utils/parsers/types";
|
|
4
|
+
import { StreamKind } from "../../utils/parsers/types";
|
|
5
|
+
import StateMachine from "../../../utils/StateMachine/StateMachine";
|
|
6
|
+
import type ThroughputEstimator from "../../../utils/ThroughputEstimator";
|
|
7
|
+
import type { ITuningConfig } from "../../../utils/tuningConfig";
|
|
8
8
|
import type { IError, ISubject, ITracer, IValueSubject, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
9
9
|
import { abortable, Subject } from "@vkontakte/videoplayer-shared";
|
|
10
10
|
export declare enum State {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { IObservable, ISubject, IValueSubject } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { IDesiredState, IProviderOutput, IProviderParams } from "
|
|
3
|
-
import type { IObservableVideo } from "
|
|
4
|
-
import type { IDashURLSource } from "
|
|
2
|
+
import type { IDesiredState, IProviderOutput, IProviderParams } from "../../types";
|
|
3
|
+
import type { IObservableVideo } from "../../utils/HTMLVideoElement/observable";
|
|
4
|
+
import type { IDashURLSource } from "../../../player/types";
|
|
5
5
|
export declare enum LiveStatus {
|
|
6
6
|
ActiveLowLatency = "active_low_latency",
|
|
7
7
|
LiveWithTargetOffset = "live_with_target_offset",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Representation, Segment, SegmentReference, Stream, TemplateSegment, TemplateSegmentReference, TextRepresentation } from "
|
|
2
|
-
import type { IAudioStream, IAudioTrack, IInternalTextTrack, IVideoStream, IVideoTrack } from "
|
|
1
|
+
import type { Representation, Segment, SegmentReference, Stream, TemplateSegment, TemplateSegmentReference, TextRepresentation } from "../../utils/parsers/types";
|
|
2
|
+
import type { IAudioStream, IAudioTrack, IInternalTextTrack, IVideoStream, IVideoTrack } from "../../../player/types";
|
|
3
3
|
export declare const representationToVideoTrack: ({ id, width, height, bitrate, fps, quality: qualityString, streamId, tvDisabled }: Representation) => IVideoTrack | undefined;
|
|
4
4
|
export declare const representationToAudioTrack: ({ id, bitrate }: Representation) => IAudioTrack;
|
|
5
5
|
export declare const representationToTextTrack: ({ language, label }: Stream, { id, url, isAuto }: Representation & {
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import type { IAudioTrack, IBaseTrack, IDashURLSource, IHLSSource, IInternalTextTrack, IVideoTrack, VideoCodec } from "
|
|
1
|
+
import type { IAudioTrack, IBaseTrack, IDashURLSource, IHLSSource, IInternalTextTrack, IVideoTrack, VideoCodec } from "../../player/types";
|
|
2
2
|
import type { IProviderSubscriptionInfo } from "./lib/types";
|
|
3
3
|
import { ProviderState } from "./lib/types";
|
|
4
|
-
import type { Representation, Stream } from "
|
|
5
|
-
import type { IProvider, IProviderParams } from "
|
|
6
|
-
import type { IObservableVideo } from "
|
|
7
|
-
import { TrackHistory } from "
|
|
8
|
-
import type { IStateMachine } from "
|
|
4
|
+
import type { CommonInit, Representation, Stream } from "../utils/parsers/types";
|
|
5
|
+
import type { IProvider, IProviderParams } from "../types";
|
|
6
|
+
import type { IObservableVideo } from "../utils/HTMLVideoElement/observable";
|
|
7
|
+
import { TrackHistory } from "../../utils/autoSelectTrack";
|
|
8
|
+
import type { IStateMachine } from "../../utils/StateMachine/types";
|
|
9
9
|
import type { ISubscription, ITracer, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
10
|
-
import { Scene3D } from "
|
|
11
|
-
import DroppedFramesManager from "
|
|
12
|
-
import TextTrackManager from "
|
|
13
|
-
import StallsManager from "
|
|
10
|
+
import { Scene3D } from "../../utils/3d/Scene3D";
|
|
11
|
+
import DroppedFramesManager from "../utils/HTMLVideoElement/DroppedFramesManager";
|
|
12
|
+
import TextTrackManager from "../utils/HTMLVideoElement/TextTrackManager";
|
|
13
|
+
import StallsManager from "../utils/StallsManager";
|
|
14
14
|
import { ElementSizeManager } from "../utils/HTMLVideoElement/ElementSizeManager";
|
|
15
|
-
import type { BasePlayer } from "
|
|
16
|
-
import { AbrManager } from "
|
|
15
|
+
import type { BasePlayer } from "./lib/player/basePlayer";
|
|
16
|
+
import { AbrManager } from "../utils/Abr/abrManager";
|
|
17
17
|
type IParams = IProviderParams<IDashURLSource> & {
|
|
18
18
|
sourceHls?: IHLSSource;
|
|
19
19
|
forceVideoCodec?: VideoCodec;
|
|
@@ -56,9 +56,9 @@ export default abstract class BaseDashProvider implements IProvider {
|
|
|
56
56
|
protected subscribe(): void;
|
|
57
57
|
protected selectVideoAudioRepresentations(): [Representation, Representation | undefined] | undefined;
|
|
58
58
|
protected prepare(manifestOffset?: number): void;
|
|
59
|
-
protected syncPlayback;
|
|
60
|
-
protected init3DScene;
|
|
61
|
-
protected destroy3DScene;
|
|
62
|
-
protected playIfAllowed();
|
|
59
|
+
protected syncPlayback: () => void;
|
|
60
|
+
protected init3DScene: (init: CommonInit) => void;
|
|
61
|
+
protected destroy3DScene: () => void;
|
|
62
|
+
protected playIfAllowed(): void;
|
|
63
63
|
destroy(): void;
|
|
64
64
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
2
2
|
import type { IParams } from "./lib/types";
|
|
3
3
|
import BaseDashProvider from "./baseDashProvider";
|
|
4
|
-
import { LivePlayer } from "
|
|
4
|
+
import { LivePlayer } from "./lib/player/livePlayer";
|
|
5
5
|
export default class DashCmafLiveProvider extends BaseDashProvider {
|
|
6
6
|
constructor(params: IParams);
|
|
7
7
|
protected getPlayer(): LivePlayer;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
2
2
|
import BaseDashProvider from "./baseDashProvider";
|
|
3
|
-
import { Player } from "
|
|
3
|
+
import { Player } from "./lib/player/player";
|
|
4
4
|
export default class DashProvider extends BaseDashProvider {
|
|
5
5
|
protected subscribe(): void;
|
|
6
6
|
protected getPlayer(): Player;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IValueSubject, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { Manifest, Stream, TextRepresentation } from "
|
|
3
|
-
import type { Dependencies } from "
|
|
2
|
+
import type { Manifest, Stream, TextRepresentation } from "../../utils/parsers/types";
|
|
3
|
+
import type { Dependencies } from "./buffer/types";
|
|
4
4
|
export declare class LiveTextManager {
|
|
5
5
|
currentRepresentation$: IValueSubject<TextRepresentation | null>;
|
|
6
6
|
private readonly maxRepresentations;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Byte, IError, IRange, ISubject, IValueSubject, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { CommonInit, Manifest, Representation, Segment } from "
|
|
3
|
-
import type { Fetcher } from "
|
|
4
|
-
import type { ITuningConfig } from "
|
|
2
|
+
import type { CommonInit, Manifest, Representation, Segment } from "../../../utils/parsers/types";
|
|
3
|
+
import type { Fetcher } from "../fetcher";
|
|
4
|
+
import type { ITuningConfig } from "../../../../utils/tuningConfig";
|
|
5
5
|
export type TRepresentationSwitchMode = "lazy" | "force";
|
|
6
6
|
export interface Dependencies {
|
|
7
7
|
fetcher: Fetcher;
|
package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/baseVirtualBufferManager.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { Fetcher, FetchParamsWithUrl, Priority, RepresentationFetchResult } from "
|
|
2
|
-
import type { CommonInit, ContainerParser, Representation, Segment } from "
|
|
3
|
-
import { StreamKind } from "
|
|
4
|
-
import type { ITuningConfig } from "
|
|
1
|
+
import type { Fetcher, FetchParamsWithUrl, Priority, RepresentationFetchResult } from "../../fetcher";
|
|
2
|
+
import type { CommonInit, ContainerParser, Representation, Segment } from "../../../../utils/parsers/types";
|
|
3
|
+
import { StreamKind } from "../../../../utils/parsers/types";
|
|
4
|
+
import type { ITuningConfig } from "../../../../../utils/tuningConfig";
|
|
5
5
|
import type { Byte, IError, IRange, ISubject, IValueSubject, Milliseconds, Seconds } from "@vkontakte/videoplayer-shared";
|
|
6
6
|
import { abortable, Subscription } from "@vkontakte/videoplayer-shared";
|
|
7
|
-
import type { NativeBufferManager } from "
|
|
8
|
-
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams, IVirtualBufferManager } from "
|
|
7
|
+
import type { NativeBufferManager } from "../nativeBufferManager";
|
|
8
|
+
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams, IVirtualBufferManager } from "../types";
|
|
9
9
|
export declare abstract class BaseVirtualBufferManager<T extends Segment> implements IVirtualBufferManager<T> {
|
|
10
10
|
error$: ISubject<IError>;
|
|
11
11
|
playingRepresentation$: IValueSubject<Representation["id"] | undefined>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { BaseVirtualBufferManager } from "
|
|
2
|
-
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams, IVirtualBufferManager } from "
|
|
3
|
-
import type { ByteRangeSegment, Representation, StreamKind } from "
|
|
4
|
-
import type { NativeBufferManager } from "
|
|
5
|
-
import type { FetchParamsWithUrl, Priority } from "
|
|
1
|
+
import { BaseVirtualBufferManager } from "./baseVirtualBufferManager";
|
|
2
|
+
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams, IVirtualBufferManager } from "../types";
|
|
3
|
+
import type { ByteRangeSegment, Representation, StreamKind } from "../../../../utils/parsers/types";
|
|
4
|
+
import type { NativeBufferManager } from "../nativeBufferManager";
|
|
5
|
+
import type { FetchParamsWithUrl, Priority } from "../../fetcher";
|
|
6
6
|
export declare class ByteRangeVirtualBufferManager extends BaseVirtualBufferManager<ByteRangeSegment> implements IVirtualBufferManager<ByteRangeSegment> {
|
|
7
7
|
constructor(kind: StreamKind, nativeBufferManager: NativeBufferManager, representations: Representation[], dependencies: Dependencies);
|
|
8
8
|
protected loadItems(itemsToLoad: IBufferPlaybackQueueItem<ByteRangeSegment>[], representation: Representation, priority?: Priority): Promise<void>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { TemplateVirtualBufferManager } from "
|
|
2
|
-
import type { Manifest, Representation, StreamKind, TemplateSegment, TemplateSegmentReference } from "
|
|
3
|
-
import type { NativeBufferManager } from "
|
|
4
|
-
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams } from "
|
|
5
|
-
import type { FetchParamsWithUrl, Priority } from "
|
|
1
|
+
import { TemplateVirtualBufferManager } from "./templateVirtualBufferManager";
|
|
2
|
+
import type { Manifest, Representation, StreamKind, TemplateSegment, TemplateSegmentReference } from "../../../../utils/parsers/types";
|
|
3
|
+
import type { NativeBufferManager } from "../nativeBufferManager";
|
|
4
|
+
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams } from "../types";
|
|
5
|
+
import type { FetchParamsWithUrl, Priority } from "../../fetcher";
|
|
6
6
|
import type { IRange, IValueSubject, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
7
7
|
export declare class LiveVirtualBuffer extends TemplateVirtualBufferManager {
|
|
8
8
|
currentLiveSegmentServerLatency$: IValueSubject<number>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { BaseVirtualBufferManager } from "
|
|
2
|
-
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams, IVirtualBufferManager } from "
|
|
3
|
-
import type { TemplateSegment, Representation, StreamKind } from "
|
|
4
|
-
import type { NativeBufferManager } from "
|
|
5
|
-
import type { FetchParamsWithUrl, Priority } from "
|
|
1
|
+
import { BaseVirtualBufferManager } from "./baseVirtualBufferManager";
|
|
2
|
+
import type { Dependencies, IBufferPlaybackQueueItem, ISomeDataLoadedCallbackParams, IVirtualBufferManager } from "../types";
|
|
3
|
+
import type { TemplateSegment, Representation, StreamKind } from "../../../../utils/parsers/types";
|
|
4
|
+
import type { NativeBufferManager } from "../nativeBufferManager";
|
|
5
|
+
import type { FetchParamsWithUrl, Priority } from "../../fetcher";
|
|
6
6
|
export declare class TemplateVirtualBufferManager extends BaseVirtualBufferManager<TemplateSegment> implements IVirtualBufferManager<TemplateSegment> {
|
|
7
7
|
constructor(kind: StreamKind, nativeBufferManager: NativeBufferManager, representations: Representation[], dependencies: Dependencies);
|
|
8
8
|
protected loadItems(itemsToLoad: IBufferPlaybackQueueItem<TemplateSegment>[], representation: Representation, priority?: Priority): Promise<void>;
|
package/types/providers/DashProviderVirtual/lib/buffer/virtualBuffer/virtualBufferFactory.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Representation, StreamKind } from "
|
|
2
|
-
import type { NativeBufferManager } from "
|
|
3
|
-
import type { Dependencies, IVirtualBufferManager } from "
|
|
1
|
+
import type { Representation, StreamKind } from "../../../../utils/parsers/types";
|
|
2
|
+
import type { NativeBufferManager } from "../nativeBufferManager";
|
|
3
|
+
import type { Dependencies, IVirtualBufferManager } from "../types";
|
|
4
4
|
export declare class VirtualBufferFactory {
|
|
5
5
|
static getBufferManager(kind: StreamKind, nativeBufferManager: NativeBufferManager, representations: Representation[], dependencies: Dependencies): IVirtualBufferManager;
|
|
6
6
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { HttpConnectionType, HttpConnectionMetrics, HttpDownloadMetrics } from "
|
|
2
|
-
import type ThroughputEstimator from "
|
|
1
|
+
import type { HttpConnectionType, HttpConnectionMetrics, HttpDownloadMetrics } from "../../../player/types";
|
|
2
|
+
import type ThroughputEstimator from "../../../utils/ThroughputEstimator";
|
|
3
3
|
import type { Byte, IError, IRange, ISubject, ITracer, IValueSubject, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
4
4
|
import { abortable } from "@vkontakte/videoplayer-shared";
|
|
5
|
-
import type { CommonInit, GenericContainerParser, Segment, SegmentReference } from "
|
|
5
|
+
import type { CommonInit, GenericContainerParser, Segment, SegmentReference } from "../../utils/parsers/types";
|
|
6
6
|
declare global {
|
|
7
7
|
interface Navigator {
|
|
8
8
|
connection: {
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import type { HttpConnectionMetrics, HttpConnectionType, HttpDownloadMetrics, IHLSSource, VideoCodec } from "
|
|
1
|
+
import type { HttpConnectionMetrics, HttpConnectionType, HttpDownloadMetrics, IHLSSource, VideoCodec } from "../../../../player/types";
|
|
2
2
|
import type { LiveStreamStatus } from "../types";
|
|
3
|
-
import type { CommonInit, Manifest, Representation, Segment, TextRepresentation } from "
|
|
4
|
-
import { StreamKind } from "
|
|
5
|
-
import StateMachine from "
|
|
6
|
-
import type ThroughputEstimator from "
|
|
7
|
-
import type { ITuningConfig } from "
|
|
3
|
+
import type { CommonInit, Manifest, Representation, Segment, TextRepresentation } from "../../../utils/parsers/types";
|
|
4
|
+
import { StreamKind } from "../../../utils/parsers/types";
|
|
5
|
+
import StateMachine from "../../../../utils/StateMachine/StateMachine";
|
|
6
|
+
import type ThroughputEstimator from "../../../../utils/ThroughputEstimator";
|
|
7
|
+
import type { ITuningConfig } from "../../../../utils/tuningConfig";
|
|
8
8
|
import type { IError, IRange, ISubject, ISubscription, ITracer, IValueSubject, Milliseconds, Nullable, Seconds } from "@vkontakte/videoplayer-shared";
|
|
9
9
|
import { abortable, Subject, Subscription, SubscriptionRemovable } from "@vkontakte/videoplayer-shared";
|
|
10
10
|
import { Fetcher } from "../fetcher";
|
|
11
|
-
import type { Dependencies, IVirtualBufferManager } from "
|
|
12
|
-
import type { Params } from "
|
|
13
|
-
import { State } from "
|
|
14
|
-
import { NativeBufferManager } from "
|
|
11
|
+
import type { Dependencies, IVirtualBufferManager } from "../buffer/types";
|
|
12
|
+
import type { Params } from "./types";
|
|
13
|
+
import { State } from "./types";
|
|
14
|
+
import { NativeBufferManager } from "../buffer/nativeBufferManager";
|
|
15
15
|
export declare abstract class BasePlayer {
|
|
16
16
|
protected element: HTMLVideoElement | null;
|
|
17
17
|
protected manifestUrlString: string;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { BasePlayer } from "
|
|
2
|
-
import type { ISmoothedValue } from "
|
|
1
|
+
import { BasePlayer } from "./basePlayer";
|
|
2
|
+
import type { ISmoothedValue } from "../../../../utils/smoothedValue/types";
|
|
3
3
|
import type { ISubscription, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
4
|
-
import type { Params } from "
|
|
5
|
-
import type { Manifest, Representation } from "
|
|
6
|
-
import type { LiveVirtualBuffer } from "
|
|
7
|
-
import type { IHLSSource } from "
|
|
8
|
-
import { LiveTextManager } from "
|
|
9
|
-
import type { Dependencies } from "
|
|
4
|
+
import type { Params } from "./types";
|
|
5
|
+
import type { Manifest, Representation } from "../../../utils/parsers/types";
|
|
6
|
+
import type { LiveVirtualBuffer } from "../buffer/virtualBuffer/liveVirtualBuffer";
|
|
7
|
+
import type { IHLSSource } from "../../../../player/types";
|
|
8
|
+
import { LiveTextManager } from "../LiveTextManager";
|
|
9
|
+
import type { Dependencies } from "../buffer/types";
|
|
10
10
|
export declare class LivePlayer extends BasePlayer {
|
|
11
11
|
protected liveTextManager: LiveTextManager | null;
|
|
12
12
|
protected liveStreamEndTimestamp: Milliseconds;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BasePlayer } from "
|
|
2
|
-
import type { Params } from "
|
|
1
|
+
import { BasePlayer } from "./basePlayer";
|
|
2
|
+
import type { Params } from "./types";
|
|
3
3
|
export declare class Player extends BasePlayer {
|
|
4
4
|
constructor(params: Params);
|
|
5
5
|
protected prepareManifestUrlString(manifestBaseUrlString: string, _offset: number): string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type ThroughputEstimator from "
|
|
2
|
-
import type { ITuningConfig } from "
|
|
3
|
-
import type { VideoCodec } from "
|
|
1
|
+
import type ThroughputEstimator from "../../../../utils/ThroughputEstimator";
|
|
2
|
+
import type { ITuningConfig } from "../../../../utils/tuningConfig";
|
|
3
|
+
import type { VideoCodec } from "../../../../player/types";
|
|
4
4
|
import type { ITracer } from "@vkontakte/videoplayer-shared";
|
|
5
5
|
export declare enum State {
|
|
6
6
|
NONE = "none",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { IObservable, ISubject, IValueSubject } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { IDesiredState, IProviderOutput, IProviderParams } from "
|
|
3
|
-
import type { IObservableVideo } from "
|
|
4
|
-
import type { IDashURLSource } from "
|
|
2
|
+
import type { IDesiredState, IProviderOutput, IProviderParams } from "../../types";
|
|
3
|
+
import type { IObservableVideo } from "../../utils/HTMLVideoElement/observable";
|
|
4
|
+
import type { IDashURLSource } from "../../../player/types";
|
|
5
5
|
export declare enum LiveStatus {
|
|
6
6
|
ActiveLowLatency = "active_low_latency",
|
|
7
7
|
LiveWithTargetOffset = "live_with_target_offset",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Representation, Segment, SegmentReference, Stream, TemplateSegment, TemplateSegmentReference, TextRepresentation } from "
|
|
2
|
-
import type { IAudioStream, IAudioTrack, IInternalTextTrack, IVideoStream, IVideoTrack } from "
|
|
1
|
+
import type { Representation, Segment, SegmentReference, Stream, TemplateSegment, TemplateSegmentReference, TextRepresentation } from "../../utils/parsers/types";
|
|
2
|
+
import type { IAudioStream, IAudioTrack, IInternalTextTrack, IVideoStream, IVideoTrack } from "../../../player/types";
|
|
3
3
|
export declare const representationToVideoTrack: ({ id, width, height, bitrate, fps, quality: qualityString, streamId }: Representation) => IVideoTrack | undefined;
|
|
4
4
|
export declare const representationToAudioTrack: ({ id, bitrate }: Representation) => IAudioTrack;
|
|
5
5
|
export declare const representationToTextTrack: ({ language, label }: Stream, { id, url, isAuto }: Representation & {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IInternalTextTrack } from "
|
|
1
|
+
import type { IInternalTextTrack } from "../../player/types";
|
|
2
2
|
import type { IValueSubject, Milliseconds, IError, ISubject } from "@vkontakte/videoplayer-shared";
|
|
3
3
|
import type { HLSManifestData } from "../HlsProvider/manifestDataExtractor";
|
|
4
4
|
type FetchManifestData = (url: string, init?: RequestInit) => Promise<HLSManifestData>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { IHLSLiveSource } from "
|
|
2
|
-
import { VideoFormat } from "
|
|
3
|
-
import type { IProvider, IProviderParams } from "
|
|
1
|
+
import type { IHLSLiveSource } from "../../player/types";
|
|
2
|
+
import { VideoFormat } from "../../player/types";
|
|
3
|
+
import type { IProvider, IProviderParams } from "../types";
|
|
4
4
|
import type { Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
5
5
|
type Params = IProviderParams<IHLSLiveSource> & {
|
|
6
6
|
config: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { IHLSSource } from "
|
|
2
|
-
import type { IProvider, IProviderParams } from "
|
|
1
|
+
import type { IHLSSource } from "../../player/types";
|
|
2
|
+
import type { IProvider, IProviderParams } from "../types";
|
|
3
3
|
type Params = IProviderParams<IHLSSource>;
|
|
4
4
|
export default class HlsProvider implements IProvider {
|
|
5
5
|
private subscription;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Kbps, IRectangle, VideoQuality } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { IInternalTextTrack } from "
|
|
2
|
+
import type { IInternalTextTrack } from "../../player/types";
|
|
3
3
|
export type ManifestUrl = {
|
|
4
4
|
id: string;
|
|
5
5
|
quality: VideoQuality;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IMpegSource } from "
|
|
1
|
+
import type { IMpegSource } from "../../player/types";
|
|
2
2
|
import type { IProvider, IProviderParams } from "../types";
|
|
3
3
|
type Params = IProviderParams<IMpegSource>;
|
|
4
4
|
export default class MpegProvider implements IProvider {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { IMetadata, ISources } from "
|
|
2
|
-
import { VideoFormat } from "
|
|
3
|
-
import type { ITuningConfig } from "
|
|
1
|
+
import type { IMetadata, ISources } from "../../player/types";
|
|
2
|
+
import { VideoFormat } from "../../player/types";
|
|
3
|
+
import type { ITuningConfig } from "../../utils/tuningConfig";
|
|
4
4
|
import type { IError, ISubject, IValueSubject, IRectangle } from "@vkontakte/videoplayer-shared";
|
|
5
5
|
import { ValueSubject } from "@vkontakte/videoplayer-shared";
|
|
6
6
|
import type { IDesiredState, IProviderDependencies, IProviderOutput } from "../types";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ISubject, IValueObservable, IError } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { VideoDestination, VideoFormat } from "
|
|
2
|
+
import type { VideoDestination, VideoFormat } from "../../player/types";
|
|
3
3
|
import type { IProvider, IProviderOutput } from "../types";
|
|
4
4
|
export interface IProviderContainer {
|
|
5
5
|
current$: IValueObservable<IProviderEntry>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { VideoFormat, VideoCodec, AudioCodec } from "
|
|
2
|
-
import { type ITuningConfig } from "
|
|
1
|
+
import { VideoFormat, VideoCodec, AudioCodec } from "../../../player/types";
|
|
2
|
+
import { type ITuningConfig } from "../../../utils/tuningConfig";
|
|
3
3
|
type VodFormat = VideoFormat.MPEG | VideoFormat.DASH_SEP | VideoFormat.DASH_WEBM | VideoFormat.DASH_WEBM_AV1 | VideoFormat.DASH_STREAMS | VideoFormat.DASH_ONDEMAND | VideoFormat.HLS | VideoFormat.HLS_FMP4 | VideoFormat.HLS_ONDEMAND;
|
|
4
4
|
type Constraints = Pick<ITuningConfig, "webmCodec" | "androidPreferredFormat" | "iosPreferredFormat" | "preferCMAF" | "preferWebRTC" | "preferMultiStream">;
|
|
5
5
|
/**
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { IProviderEntry } from "
|
|
1
|
+
import type { IProviderEntry } from "../types";
|
|
2
2
|
import type { IObservable, Milliseconds } from "@vkontakte/videoplayer-shared";
|
|
3
3
|
import { Observable } from "@vkontakte/videoplayer-shared";
|
|
4
|
-
import type { IStateMachine } from "
|
|
5
|
-
import { PlaybackState } from "
|
|
4
|
+
import type { IStateMachine } from "../../../utils/StateMachine/types";
|
|
5
|
+
import { PlaybackState } from "../../../player/types";
|
|
6
6
|
interface IParams {
|
|
7
7
|
desiredPlaybackState$: IStateMachine<PlaybackState>;
|
|
8
8
|
position$: IObservable<number>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { IProvider, IProviderParams } from "
|
|
2
|
-
import type { URLSource } from "
|
|
1
|
+
import type { IProvider, IProviderParams } from "../types";
|
|
2
|
+
import type { URLSource } from "../../player/types";
|
|
3
3
|
/**
|
|
4
4
|
* @class WebRTCLiveProvider
|
|
5
5
|
*
|