@vkontakte/videoplayer-core 2.0.167-dev.888965e7d.0 → 2.0.167-dev.9dd0ca0bc.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 +40 -40
- package/es2015.esm.js +42 -42
- package/esnext.cjs +34 -34
- package/esnext.esm.js +34 -34
- package/evergreen.esm.js +33 -33
- package/package.json +5 -5
- package/types/player/Player.d.ts +0 -1
- package/types/providers/DashProvider/lib/LiveTextManager.d.ts +1 -1
- package/types/providers/DashProviderVirtual/lib/LiveTextManager.d.ts +1 -1
- package/types/providers/ProviderContainer/Mayday/MaydayService.d.ts +6 -5
- package/types/providers/ProviderContainer/Mayday/heuristics/FetcherErrorHeuristic.d.ts +5 -4
- package/types/providers/ProviderContainer/Mayday/heuristics/HangupHeuristic.d.ts +22 -0
- package/types/providers/ProviderContainer/Mayday/heuristics/IHeuristic.d.ts +14 -4
- package/types/providers/ProviderContainer/Mayday/heuristics/MediaErrorHeuristic.d.ts +5 -4
- package/types/providers/ProviderContainer/Mayday/index.d.ts +3 -2
- package/types/providers/ProviderContainer/Mayday/testUtils.d.ts +21 -0
- package/types/providers/ProviderContainer/Mayday/types.d.ts +21 -3
- package/types/providers/utils/parsers/__tests/data.d.ts +1 -1
- package/types/utils/tuningConfig.d.ts +1 -7
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vkontakte/videoplayer-core",
|
|
3
|
-
"version": "2.0.167-dev.
|
|
4
|
-
"author": "vk.
|
|
5
|
-
"description": "Videoplayer core library based on the vk.
|
|
6
|
-
"homepage": "https://vk.
|
|
3
|
+
"version": "2.0.167-dev.9dd0ca0bc.0",
|
|
4
|
+
"author": "vk.ru",
|
|
5
|
+
"description": "Videoplayer core library based on the vk.ru platform",
|
|
6
|
+
"homepage": "https://vk.ru",
|
|
7
7
|
"license": "GPL-3.0",
|
|
8
8
|
"main": "./esnext.cjs",
|
|
9
9
|
"module": "./esnext.esm.js",
|
|
@@ -42,6 +42,6 @@
|
|
|
42
42
|
"**/*.d.ts"
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@vkontakte/videoplayer-shared": "1.0.96-dev.
|
|
45
|
+
"@vkontakte/videoplayer-shared": "1.0.96-dev.9dd0ca0bc.0"
|
|
46
46
|
}
|
|
47
47
|
}
|
package/types/player/Player.d.ts
CHANGED
|
@@ -87,7 +87,6 @@ export default class Player implements IPlayer {
|
|
|
87
87
|
private initDebugTelemetry;
|
|
88
88
|
private initTracerSubscription;
|
|
89
89
|
private initWakeLock;
|
|
90
|
-
private initRenderingRecovery;
|
|
91
90
|
private setVideoTrackIdByQuality;
|
|
92
91
|
private getActiveLiveDelay;
|
|
93
92
|
private isNotActiveTabCase;
|
|
@@ -15,7 +15,7 @@ export declare class LiveTextManager {
|
|
|
15
15
|
destroy(): void;
|
|
16
16
|
/**
|
|
17
17
|
* @todo support multi-streams
|
|
18
|
-
* @see https://jira.
|
|
18
|
+
* @see https://jira.vk.team/browse/UVP-2420
|
|
19
19
|
*/
|
|
20
20
|
private processStreams;
|
|
21
21
|
static isSupported(streams?: Stream[]): boolean;
|
|
@@ -15,7 +15,7 @@ export declare class LiveTextManager {
|
|
|
15
15
|
destroy(): void;
|
|
16
16
|
/**
|
|
17
17
|
* @todo support multi-streams
|
|
18
|
-
* @see https://jira.
|
|
18
|
+
* @see https://jira.vk.team/browse/UVP-2420
|
|
19
19
|
*/
|
|
20
20
|
private processStreams;
|
|
21
21
|
static isSupported(streams?: Stream[]): boolean;
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
+
import { Subject } from "@vkontakte/videoplayer-shared";
|
|
1
2
|
import type { IError } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { IMaydayDeps,
|
|
3
|
+
import type { IMaydayDeps, IMaydayEvent } from "./types";
|
|
3
4
|
export declare class MaydayService {
|
|
4
5
|
private deps;
|
|
5
6
|
private heuristics;
|
|
6
7
|
private tracer;
|
|
7
8
|
private providerFailures;
|
|
8
9
|
private failoverUrlIndex;
|
|
10
|
+
readonly recommendation$: Subject<IMaydayEvent>;
|
|
11
|
+
private subscription;
|
|
9
12
|
constructor(deps: IMaydayDeps);
|
|
10
13
|
get currentFailoverUrlIndex(): number | undefined;
|
|
11
|
-
|
|
14
|
+
handleError(error: IError): void;
|
|
15
|
+
private emitRecommendation;
|
|
12
16
|
private validateRecommendation;
|
|
13
17
|
private hasAvailableFailoverHost;
|
|
14
|
-
/**
|
|
15
|
-
* Если рекомендаций от эвристик нету, то идем по общему сценарию.
|
|
16
|
-
*/
|
|
17
18
|
private computeFallbackRecommendation;
|
|
18
19
|
private applyStateChange;
|
|
19
20
|
reset(): void;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { IError } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
4
|
-
export declare class FetcherErrorHeuristic implements
|
|
2
|
+
import type { IHeuristicDeps } from "../types";
|
|
3
|
+
import type { ISyncHeuristic, HeuristicResult } from "./IHeuristic";
|
|
4
|
+
export declare class FetcherErrorHeuristic implements ISyncHeuristic {
|
|
5
5
|
private _deps;
|
|
6
6
|
static readonly heuristicName = "FetcherErrorHeuristic";
|
|
7
|
+
readonly type = "sync";
|
|
7
8
|
constructor(_deps: IHeuristicDeps);
|
|
8
|
-
analyze(error: IError):
|
|
9
|
+
analyze(error: IError): HeuristicResult;
|
|
9
10
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { IError } from "@vkontakte/videoplayer-shared";
|
|
2
|
+
import type { IHeuristicDeps } from "../types";
|
|
3
|
+
import type { IAsyncHeuristic, HeuristicResult } from "./IHeuristic";
|
|
4
|
+
export declare class HangupHeuristic implements IAsyncHeuristic {
|
|
5
|
+
private deps;
|
|
6
|
+
static readonly heuristicName = "HangupHeuristic";
|
|
7
|
+
readonly type = "async";
|
|
8
|
+
readonly recommendation$;
|
|
9
|
+
private timerId;
|
|
10
|
+
private sub;
|
|
11
|
+
private error;
|
|
12
|
+
private manifestRequested;
|
|
13
|
+
private manifestRequestedAt;
|
|
14
|
+
private manifestReceivedMs;
|
|
15
|
+
constructor(deps: IHeuristicDeps);
|
|
16
|
+
analyze(error: IError): HeuristicResult;
|
|
17
|
+
private restartTimer;
|
|
18
|
+
private expire;
|
|
19
|
+
private cancel;
|
|
20
|
+
reset(): void;
|
|
21
|
+
destroy(): void;
|
|
22
|
+
}
|
|
@@ -1,7 +1,17 @@
|
|
|
1
|
-
import type { IError } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type { IRecommendation } from "../types";
|
|
3
|
-
export
|
|
4
|
-
|
|
1
|
+
import type { IError, ISubject } from "@vkontakte/videoplayer-shared";
|
|
2
|
+
import type { IMaydayEvent, IRecommendation } from "../types";
|
|
3
|
+
export type HeuristicResult = IRecommendation | null;
|
|
4
|
+
interface IHeuristicBase {
|
|
5
|
+
analyze(error: IError): HeuristicResult;
|
|
5
6
|
reset?(): void;
|
|
6
7
|
destroy?(): void;
|
|
7
8
|
}
|
|
9
|
+
export interface ISyncHeuristic extends IHeuristicBase {
|
|
10
|
+
readonly type: "sync";
|
|
11
|
+
}
|
|
12
|
+
export interface IAsyncHeuristic extends IHeuristicBase {
|
|
13
|
+
readonly type: "async";
|
|
14
|
+
readonly recommendation$: ISubject<IMaydayEvent>;
|
|
15
|
+
}
|
|
16
|
+
export type IHeuristic = ISyncHeuristic | IAsyncHeuristic;
|
|
17
|
+
export {};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { IError } from "@vkontakte/videoplayer-shared";
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
4
|
-
export declare class MediaErrorHeuristic implements
|
|
2
|
+
import type { IHeuristicDeps } from "../types";
|
|
3
|
+
import type { ISyncHeuristic, HeuristicResult } from "./IHeuristic";
|
|
4
|
+
export declare class MediaErrorHeuristic implements ISyncHeuristic {
|
|
5
5
|
private deps;
|
|
6
6
|
static readonly heuristicName = "MediaErrorHeuristic";
|
|
7
|
+
readonly type = "sync";
|
|
7
8
|
constructor(deps: IHeuristicDeps);
|
|
8
|
-
analyze(error: IError):
|
|
9
|
+
analyze(error: IError): HeuristicResult;
|
|
9
10
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { MaydayService } from "./MaydayService";
|
|
2
|
-
export type { IMaydayDeps, IFallbackContext, IRecommendation, RecoveryAction } from "./types";
|
|
3
|
-
export type {
|
|
2
|
+
export type { IMaydayDeps, IFallbackContext, IRecommendation, RecoveryAction, IMaydayEvent } from "./types";
|
|
3
|
+
export type { ISyncHeuristic, IAsyncHeuristic, HeuristicResult } from "./heuristics/IHeuristic";
|
|
4
4
|
export { MediaErrorHeuristic } from "./heuristics/MediaErrorHeuristic";
|
|
5
5
|
export { FetcherErrorHeuristic } from "./heuristics/FetcherErrorHeuristic";
|
|
6
|
+
export { HangupHeuristic } from "./heuristics/HangupHeuristic";
|
|
6
7
|
export { MaydayStatistics } from "./MaydayStatistics";
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Subject } from "@vkontakte/videoplayer-shared";
|
|
2
|
+
import type { ITracer } from "@vkontakte/videoplayer-shared";
|
|
3
|
+
import { PlaybackState } from "../../../player/types";
|
|
4
|
+
import type { ITransition } from "../../../utils/StateMachine/types";
|
|
5
|
+
import type { IHeuristicDeps, IMaydayProviderOutput, IMaydayDeps } from "./types";
|
|
6
|
+
export declare function createMockTracer(): ITracer;
|
|
7
|
+
export declare function createMockProviderOutput(overrides?: Partial<IMaydayProviderOutput>): IMaydayProviderOutput;
|
|
8
|
+
export declare function createMockDesiredPlaybackState$(): {
|
|
9
|
+
stateChangeStarted$: Subject<unknown>;
|
|
10
|
+
stateChangeEnded$: Subject<ITransition<PlaybackState>>;
|
|
11
|
+
transitionEnded$: Subject<unknown>;
|
|
12
|
+
getState: () => PlaybackState;
|
|
13
|
+
};
|
|
14
|
+
export declare function createMockHeuristicDeps(params?: {
|
|
15
|
+
overrides?: Partial<IHeuristicDeps>;
|
|
16
|
+
tuningOverrides?: Record<string, unknown>;
|
|
17
|
+
}): IHeuristicDeps;
|
|
18
|
+
export declare function createMockMaydayDeps(params?: {
|
|
19
|
+
overrides?: Partial<IMaydayDeps>;
|
|
20
|
+
tuningOverrides?: Record<string, unknown>;
|
|
21
|
+
}): IMaydayDeps;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type { IVideoTrack, IVideoStream, IAudioStream } from "../../../player/types";
|
|
2
|
-
import type { IValueSubject, Milliseconds, Seconds, IRange, ITracer } from "@vkontakte/videoplayer-shared";
|
|
1
|
+
import type { IVideoTrack, IVideoStream, IAudioStream, PlaybackState } from "../../../player/types";
|
|
2
|
+
import type { IError, IValueSubject, ISubject, IObservable, Milliseconds, Seconds, IRange, ITracer } from "@vkontakte/videoplayer-shared";
|
|
3
|
+
import type { IStateMachine } from "../../../utils/StateMachine/types";
|
|
3
4
|
import type { ITuningConfig } from "../../../utils/tuningConfig";
|
|
4
5
|
export interface IFallbackContext {
|
|
5
6
|
hasProviderStarted: boolean;
|
|
@@ -17,11 +18,17 @@ export interface IMaydayProviderOutput {
|
|
|
17
18
|
bufferRangeCount$: IValueSubject<number | undefined>;
|
|
18
19
|
availableVideoStreams$: IValueSubject<IVideoStream[]>;
|
|
19
20
|
currentAudioStream$: IValueSubject<IAudioStream | undefined>;
|
|
21
|
+
videoLastDataObtainedTimestamp$: IValueSubject<Milliseconds | undefined>;
|
|
22
|
+
soundProhibitedEvent$: ISubject<void>;
|
|
23
|
+
element$: IValueSubject<HTMLVideoElement | undefined>;
|
|
24
|
+
manifestRequested$: IObservable<void>;
|
|
25
|
+
manifestReceived$: IObservable<void>;
|
|
20
26
|
}
|
|
21
27
|
export interface IMaydayDeps {
|
|
22
28
|
tuning: ITuningConfig;
|
|
23
29
|
failoverHosts: string[];
|
|
24
30
|
providerOutput: IMaydayProviderOutput;
|
|
31
|
+
desiredPlaybackState$: IStateMachine<PlaybackState>;
|
|
25
32
|
maydayStatistics: {
|
|
26
33
|
getInitiatedAt: () => number;
|
|
27
34
|
getReinitHistory: () => IReinitHistory;
|
|
@@ -45,9 +52,20 @@ export interface IHeuristicDeps {
|
|
|
45
52
|
getVideoCodec: () => string | undefined;
|
|
46
53
|
getAudioCodec: () => string | undefined;
|
|
47
54
|
getVisibilityState: () => DocumentVisibilityState | undefined;
|
|
55
|
+
getReadyState: () => number | undefined;
|
|
56
|
+
getVideoPaused: () => boolean | undefined;
|
|
57
|
+
currentNativeBuffer$: IValueSubject<IRange<Seconds> | undefined>;
|
|
58
|
+
videoLastDataObtainedTimestamp$: IValueSubject<Milliseconds | undefined>;
|
|
59
|
+
desiredPlaybackState$: IStateMachine<PlaybackState>;
|
|
60
|
+
manifestRequested$: IObservable<void>;
|
|
61
|
+
manifestReceived$: IObservable<void>;
|
|
48
62
|
}
|
|
49
|
-
export type RecoveryAction = "reinit" | "failover_host" | "switch_codec" | "switch_provider";
|
|
63
|
+
export type RecoveryAction = "reinit" | "failover_host" | "switch_codec" | "switch_provider" | "wait";
|
|
50
64
|
export interface IRecommendation {
|
|
51
65
|
action: RecoveryAction;
|
|
52
66
|
reason: string;
|
|
53
67
|
}
|
|
68
|
+
export interface IMaydayEvent {
|
|
69
|
+
error: IError;
|
|
70
|
+
recommendation: IRecommendation;
|
|
71
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const activeLiveMpdWithZeroSize = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?><MPD xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:mpeg:dash:schema:mpd:2011\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" xsi:schemaLocation=\"urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd\" profiles=\"urn:mpeg:dash:profile:isoff-live:2011\" type=\"dynamic\" minBufferTime=\"PT2S\" minimumUpdatePeriod=\"PT1S\" timeShiftBufferDepth=\"PT2M\" suggestedPresentationDelay=\"PT5S\" publishTime=\"2025-09-30T10:23:22Z\" availabilityStartTime=\"2025-09-30T09:01:04Z\"><ServiceDescription id=\"1\"><Scope schemeIdUri=\"urn:dvb:dash:lowlatency:scope:2019\"/><Latency min=\"11826\" max=\"23652\" target=\"14782\"/><PlaybackRate min=\"0.9\" max=\"1.1\"/></ServiceDescription><vk:Attrs xmlns:vk=\"https://vk.com/video_ondemand_live.xsd\"><vk:XLatestSegmentPublishTime>2025-09-30T10:23:22Z</vk:XLatestSegmentPublishTime><vk:XStreamIsLive>yes</vk:XStreamIsLive><vk:XStreamIsUnpublished>no</vk:XStreamIsUnpublished><vk:XPlaybackDuration>4023899</vk:XPlaybackDuration></vk:Attrs><Period id=\"period_41e2ee\" start=\"PT1H11M57.934S\" duration=\"PT9M59.999S\"><AdaptationSet id=\"0\" contentType=\"video\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"video_lowest\" quality=\"lowest\" mimeType=\"video/mp4\" codecs=\"avc1.42001e\" bandwidth=\"409600\" width=\"424\" height=\"240\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAYDM79CZM8ACAcgCAdqH_L3ujp2Q/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAYDM79CZM8ACAcgCAdqH_L3ujp2Q/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_low\" quality=\"low\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"921600\" width=\"640\" height=\"360\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_ABgMzv0JkzwAIByAIB56K_UIhR4Ag/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_ABgMzv0JkzwAIByAIB56K_UIhR4Ag/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_medium\" quality=\"medium\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"1638400\" width=\"856\" height=\"480\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_ABgMzv0JkzwAIByAIBUKZ40sx4Ldg/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_ABgMzv0JkzwAIByAIBUKZ40sx4Ldg/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_high\" quality=\"high\" mimeType=\"video/mp4\" codecs=\"avc1.640029\" bandwidth=\"3686400\" width=\"1280\" height=\"720\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_ABgMzv0JkzwAIByAIBmvIvfuJSwSM/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_ABgMzv0JkzwAIByAIBmvIvfuJSwSM/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_fullhd\" quality=\"fullhd\" mimeType=\"video/mp4\" codecs=\"avc1.64002a\" bandwidth=\"9960840\" width=\"1920\" height=\"1080\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YBqgBAfABgMzv0JkzwAIByAIBmat88HyFAsY/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBqgBAfABgMzv0JkzwAIByAIBmat88HyFAsY/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet><AdaptationSet id=\"1\" contentType=\"audio\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"audio_lowest\" quality=\"lowest\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"65536\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_low\" quality=\"low\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"131072\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_medium\" quality=\"medium\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"196608\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_high\" quality=\"high\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"262144\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet></Period><Period id=\"period_4b0aad\" start=\"PT1H21M57.933S\" duration=\"PT7.913S\"><AdaptationSet id=\"0\" contentType=\"video\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"video_lowest\" quality=\"lowest\" mimeType=\"video/mp4\" codecs=\"avc1.42001e\" bandwidth=\"409600\" width=\"0\" height=\"0\"><SegmentTemplate timescale=\"16000\" startNumber=\"1001\" presentationTimeOffset=\"64063776\" initialization=\"CP7X_OarkwIQgH0YAjICCgBaBBACKBfwAf7JltGZM8ACAcgCASxpDQAgb8la/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAjICCgBaBBACKBfwAf7JltGZM8ACAcgCASxpDQAgb8la/t$Time$.v.m4s\"><SegmentTimeline><S d=\"32000\" t=\"64063776\"/><S d=\"94608\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet><AdaptationSet id=\"1\" contentType=\"audio\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"audio_lowest\" quality=\"lowest\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"65536\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1001\" presentationTimeOffset=\"176576512\" initialization=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/t$Time$.a.m4s\"><SegmentTimeline><S d=\"88064\" t=\"176576512\"/><S d=\"261120\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet></Period><Period id=\"period_4b2996\" start=\"PT1H22M5.846S\"><AdaptationSet id=\"0\" contentType=\"video\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"video_lowest\" quality=\"lowest\" mimeType=\"video/mp4\" codecs=\"avc1.42001e\" bandwidth=\"409600\" width=\"424\" height=\"240\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAeeHl9GZM8ACAcgCAX3REDOhQN2T/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAeeHl9GZM8ACAcgCAX3REDOhQN2T/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_low\" quality=\"low\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"921600\" width=\"640\" height=\"360\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_AB54eX0ZkzwAIByAIBUfjtXKKd68A/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_AB54eX0ZkzwAIByAIBUfjtXKKd68A/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_medium\" quality=\"medium\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"1638400\" width=\"856\" height=\"480\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_AB54eX0ZkzwAIByAIBFDnhoNmNOMU/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_AB54eX0ZkzwAIByAIBFDnhoNmNOMU/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_high\" quality=\"high\" mimeType=\"video/mp4\" codecs=\"avc1.640029\" bandwidth=\"3686400\" width=\"1280\" height=\"720\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_AB54eX0ZkzwAIByAIBI0naueK_O50/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_AB54eX0ZkzwAIByAIBI0naueK_O50/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_fullhd\" quality=\"fullhd\" mimeType=\"video/mp4\" codecs=\"avc1.640029\" bandwidth=\"8294400\" width=\"1920\" height=\"1080\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YBjIICgYIgA8QuAhaBggDEAIoF_AB54eX0ZkzwAIByAIBnEZxT2BO3yw/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBjIICgYIgA8QuAhaBggDEAIoF_AB54eX0ZkzwAIByAIBnEZxT2BO3yw/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet><AdaptationSet id=\"1\" contentType=\"audio\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"audio_lowest\" quality=\"lowest\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"65536\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_low\" quality=\"low\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"131072\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_medium\" quality=\"medium\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"196608\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_high\" quality=\"high\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"262144\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet></Period></MPD>";
|
|
1
|
+
export declare const activeLiveMpdWithZeroSize = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?><MPD xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:mpeg:dash:schema:mpd:2011\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" xsi:schemaLocation=\"urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd\" profiles=\"urn:mpeg:dash:profile:isoff-live:2011\" type=\"dynamic\" minBufferTime=\"PT2S\" minimumUpdatePeriod=\"PT1S\" timeShiftBufferDepth=\"PT2M\" suggestedPresentationDelay=\"PT5S\" publishTime=\"2025-09-30T10:23:22Z\" availabilityStartTime=\"2025-09-30T09:01:04Z\"><ServiceDescription id=\"1\"><Scope schemeIdUri=\"urn:dvb:dash:lowlatency:scope:2019\"/><Latency min=\"11826\" max=\"23652\" target=\"14782\"/><PlaybackRate min=\"0.9\" max=\"1.1\"/></ServiceDescription><vk:Attrs xmlns:vk=\"https://vk.ru/video_ondemand_live.xsd\"><vk:XLatestSegmentPublishTime>2025-09-30T10:23:22Z</vk:XLatestSegmentPublishTime><vk:XStreamIsLive>yes</vk:XStreamIsLive><vk:XStreamIsUnpublished>no</vk:XStreamIsUnpublished><vk:XPlaybackDuration>4023899</vk:XPlaybackDuration></vk:Attrs><Period id=\"period_41e2ee\" start=\"PT1H11M57.934S\" duration=\"PT9M59.999S\"><AdaptationSet id=\"0\" contentType=\"video\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"video_lowest\" quality=\"lowest\" mimeType=\"video/mp4\" codecs=\"avc1.42001e\" bandwidth=\"409600\" width=\"424\" height=\"240\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAYDM79CZM8ACAcgCAdqH_L3ujp2Q/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAYDM79CZM8ACAcgCAdqH_L3ujp2Q/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_low\" quality=\"low\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"921600\" width=\"640\" height=\"360\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_ABgMzv0JkzwAIByAIB56K_UIhR4Ag/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_ABgMzv0JkzwAIByAIB56K_UIhR4Ag/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_medium\" quality=\"medium\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"1638400\" width=\"856\" height=\"480\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_ABgMzv0JkzwAIByAIBUKZ40sx4Ldg/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_ABgMzv0JkzwAIByAIBUKZ40sx4Ldg/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_high\" quality=\"high\" mimeType=\"video/mp4\" codecs=\"avc1.640029\" bandwidth=\"3686400\" width=\"1280\" height=\"720\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_ABgMzv0JkzwAIByAIBmvIvfuJSwSM/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_ABgMzv0JkzwAIByAIBmvIvfuJSwSM/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_fullhd\" quality=\"fullhd\" mimeType=\"video/mp4\" codecs=\"avc1.64002a\" bandwidth=\"9960840\" width=\"1920\" height=\"1080\"><SegmentTemplate timescale=\"16000\" startNumber=\"976\" presentationTimeOffset=\"54463792\" initialization=\"CP7X_OarkwIQgH0YBqgBAfABgMzv0JkzwAIByAIBmat88HyFAsY/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBqgBAfABgMzv0JkzwAIByAIBmat88HyFAsY/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"24\" t=\"62463776\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet><AdaptationSet id=\"1\" contentType=\"audio\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"audio_lowest\" quality=\"lowest\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"65536\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_low\" quality=\"low\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"131072\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_medium\" quality=\"medium\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"196608\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_high\" quality=\"high\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"262144\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"976\" presentationTimeOffset=\"150116352\" initialization=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" t=\"172166144\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"2\"/><S d=\"177152\"/><S d=\"176128\" r=\"1\"/><S d=\"177152\"/><S d=\"176128\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet></Period><Period id=\"period_4b0aad\" start=\"PT1H21M57.933S\" duration=\"PT7.913S\"><AdaptationSet id=\"0\" contentType=\"video\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"video_lowest\" quality=\"lowest\" mimeType=\"video/mp4\" codecs=\"avc1.42001e\" bandwidth=\"409600\" width=\"0\" height=\"0\"><SegmentTemplate timescale=\"16000\" startNumber=\"1001\" presentationTimeOffset=\"64063776\" initialization=\"CP7X_OarkwIQgH0YAjICCgBaBBACKBfwAf7JltGZM8ACAcgCASxpDQAgb8la/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAjICCgBaBBACKBfwAf7JltGZM8ACAcgCASxpDQAgb8la/t$Time$.v.m4s\"><SegmentTimeline><S d=\"32000\" t=\"64063776\"/><S d=\"94608\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet><AdaptationSet id=\"1\" contentType=\"audio\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"audio_lowest\" quality=\"lowest\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"65536\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1001\" presentationTimeOffset=\"176576512\" initialization=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/t$Time$.a.m4s\"><SegmentTimeline><S d=\"88064\" t=\"176576512\"/><S d=\"261120\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet></Period><Period id=\"period_4b2996\" start=\"PT1H22M5.846S\"><AdaptationSet id=\"0\" contentType=\"video\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"video_lowest\" quality=\"lowest\" mimeType=\"video/mp4\" codecs=\"avc1.42001e\" bandwidth=\"409600\" width=\"424\" height=\"240\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAeeHl9GZM8ACAcgCAX3REDOhQN2T/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAjIICgYIqAMQ8AFaBBACKBfwAeeHl9GZM8ACAcgCAX3REDOhQN2T/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_low\" quality=\"low\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"921600\" width=\"640\" height=\"360\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_AB54eX0ZkzwAIByAIBUfjtXKKd68A/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YAzIICgYIgAUQ6AJaBggBEAIoF_AB54eX0ZkzwAIByAIBUfjtXKKd68A/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_medium\" quality=\"medium\" mimeType=\"video/mp4\" codecs=\"avc1.4d001f\" bandwidth=\"1638400\" width=\"856\" height=\"480\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_AB54eX0ZkzwAIByAIBFDnhoNmNOMU/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBDIICgYI2AYQ4ANaBggBEAIoF_AB54eX0ZkzwAIByAIBFDnhoNmNOMU/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_high\" quality=\"high\" mimeType=\"video/mp4\" codecs=\"avc1.640029\" bandwidth=\"3686400\" width=\"1280\" height=\"720\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_AB54eX0ZkzwAIByAIBI0naueK_O50/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBTIICgYIgAoQ0AVaBggDEAIoF_AB54eX0ZkzwAIByAIBI0naueK_O50/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"video_fullhd\" quality=\"fullhd\" mimeType=\"video/mp4\" codecs=\"avc1.640029\" bandwidth=\"8294400\" width=\"1920\" height=\"1080\"><SegmentTemplate timescale=\"16000\" startNumber=\"1003\" presentationTimeOffset=\"64190384\" initialization=\"CP7X_OarkwIQgH0YBjIICgYIgA8QuAhaBggDEAIoF_AB54eX0ZkzwAIByAIBnEZxT2BO3yw/i0.v.m4s\" media=\"CP7X_OarkwIQgH0YBjIICgYIgA8QuAhaBggDEAIoF_AB54eX0ZkzwAIByAIBnEZxT2BO3yw/t$Time$.v.m4s\"><SegmentTimeline><S d=\"64000\" r=\"2\" t=\"64190384\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet><AdaptationSet id=\"1\" contentType=\"audio\" segmentAlignment=\"true\" bitstreamSwitching=\"true\"><Representation id=\"audio_lowest\" quality=\"lowest\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"65536\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAI6BAjE2AJiAggIwAIByAIBWstY4dXqnvw/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_low\" quality=\"low\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"131072\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAM6BAjE2AJiAggQwAIByAIBErNIEqtWC6E/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_medium\" quality=\"medium\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"196608\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAQ6BAjE2AJiAggYwAIByAIBaJpINvIIYDc/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation><Representation id=\"audio_high\" quality=\"high\" mimeType=\"audio/mp4\" codecs=\"mp4a.40.2\" bandwidth=\"262144\" audioSamplingRate=\"44100\"><SegmentTemplate timescale=\"44100\" startNumber=\"1003\" presentationTimeOffset=\"176925696\" initialization=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/i0.a.m4s\" media=\"CP7X_OarkwIQxNgCIAU6BAjE2AJiAgggwAIByAIBKhpGVHRS8bY/t$Time$.a.m4s\"><SegmentTimeline><S d=\"176128\" r=\"2\" t=\"176925696\"/></SegmentTimeline></SegmentTemplate></Representation></AdaptationSet></Period></MPD>";
|
|
@@ -311,6 +311,7 @@ export type ITuningConfig = {
|
|
|
311
311
|
dashSeekInSegmentAlwaysSeekDelta: Milliseconds;
|
|
312
312
|
useDelayedPlaybackHangupWithData: boolean;
|
|
313
313
|
playbackHangupNoDataThreshold: Milliseconds;
|
|
314
|
+
hangupTimeoutMs: Milliseconds;
|
|
314
315
|
endGapTolerance: Milliseconds;
|
|
315
316
|
/**
|
|
316
317
|
* Время после перехода в состояние buffering, когда мы считаем что происходит stall
|
|
@@ -356,13 +357,6 @@ export type ITuningConfig = {
|
|
|
356
357
|
* использует requestAnimationFrame
|
|
357
358
|
*/
|
|
358
359
|
autoplayOnlyIfVisible: boolean;
|
|
359
|
-
/**
|
|
360
|
-
* Восстанавливает отрисовку <video> при возврате из фоновой вкладки.
|
|
361
|
-
* WebKit на скрытых вкладках останавливает композитинг кадра и не всегда
|
|
362
|
-
* возобновляет его сам — после детекта «залипшего» кадра делается микросик
|
|
363
|
-
* в текущую позицию, заставляющий декодер переинициализировать текстуру.
|
|
364
|
-
*/
|
|
365
|
-
recoverRenderingOnTabVisible: boolean;
|
|
366
360
|
dynamicImportTimeout: Milliseconds;
|
|
367
361
|
maxPlaybackTransitionInterval: Milliseconds;
|
|
368
362
|
providerErrorLimit: number;
|