@vkontakte/videoplayer-core 2.0.172 → 2.0.173-dev.542d776eb.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 +17 -17
- package/es2015.esm.js +17 -17
- package/esnext.cjs +16 -16
- package/esnext.esm.js +16 -16
- package/evergreen.esm.js +16 -16
- package/package.json +2 -2
- package/types/providers/DashLiveProvider/DashLiveProvider.d.ts +1 -0
- package/types/providers/DashProvider/dashCmafLiveProvider.d.ts +1 -0
- package/types/providers/HlsLiveProvider/index.d.ts +1 -0
- package/types/providers/HlsProvider/manifestDataExtractor.d.ts +2 -0
- package/types/providers/utils/buildFmp4MasterUrl.d.ts +12 -0
- package/types/providers/utils/generateLiveUrl.d.ts +1 -0
- package/types/utils/tuningConfig.d.ts +9 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vkontakte/videoplayer-core",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.173-dev.542d776eb.0",
|
|
4
4
|
"author": "vk.ru",
|
|
5
5
|
"description": "Videoplayer core library based on the vk.ru platform",
|
|
6
6
|
"homepage": "https://vk.ru",
|
|
@@ -42,6 +42,6 @@
|
|
|
42
42
|
"**/*.d.ts"
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@vkontakte/videoplayer-shared": "1.0.
|
|
45
|
+
"@vkontakte/videoplayer-shared": "1.0.102-dev.542d776eb.0"
|
|
46
46
|
}
|
|
47
47
|
}
|
|
@@ -12,6 +12,8 @@ export type ManifestUrl = {
|
|
|
12
12
|
bandwidth?: Kbps;
|
|
13
13
|
size?: IRectangle;
|
|
14
14
|
fps?: number;
|
|
15
|
+
/** HLS fMP4: идентификатор аудио-группы (EXT-X-MEDIA GROUP-ID), к которой привязан вариант через STREAM-INF AUDIO= */
|
|
16
|
+
audioGroupId?: string;
|
|
15
17
|
};
|
|
16
18
|
export type HLSManifestData = {
|
|
17
19
|
qualityManifests: ManifestUrl[];
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ManifestUrl } from "../HlsProvider/manifestDataExtractor";
|
|
2
|
+
export declare const FMP4_QUALITY_QUERY_PARAMS: readonly ["mq", "lq"];
|
|
3
|
+
/**
|
|
4
|
+
* HLS fMP4: дочерний плейлист варианта не содержит EXT-X-MEDIA групп, поэтому нативный HLS
|
|
5
|
+
* не знает какую аудио-группу подцепить и продолжает держать предыдущую — звук пропадает при
|
|
6
|
+
* смене качества. Решение — грузить мастер-плейлист с зафиксированным качеством через
|
|
7
|
+
* mq=lq=<height>, тогда бэк сам отдаст нужный вариант с правильной аудио-группой.
|
|
8
|
+
*
|
|
9
|
+
* Возвращает undefined, если у варианта нельзя надёжно определить высоту — в этом случае
|
|
10
|
+
* лучше оставить дефолтное поведение провайдера, чем отправлять мусор в URL.
|
|
11
|
+
*/
|
|
12
|
+
export declare const buildFmp4MasterUrl: (masterUrl: string, qualityManifest: ManifestUrl) => URL | undefined;
|
|
@@ -4,6 +4,7 @@ export declare enum OffsetParameterType {
|
|
|
4
4
|
PLAYBACK_SHIFT = 1,
|
|
5
5
|
DASH_CMAF_OFFSET_P = 2
|
|
6
6
|
}
|
|
7
|
+
export declare const hasOffsetMarker: (url: string) => boolean;
|
|
7
8
|
declare const _default: (url: string, offset?: Milliseconds, type?: OffsetParameterType) => string;
|
|
8
9
|
export default _default;
|
|
9
10
|
export declare const getLiveUrlOffset: (url: string, type: OffsetParameterType) => number;
|
|
@@ -312,6 +312,15 @@ export type ITuningConfig = {
|
|
|
312
312
|
*/
|
|
313
313
|
maxPausedTime: number;
|
|
314
314
|
catchupLiveForMutedInactiveTab: boolean;
|
|
315
|
+
/**
|
|
316
|
+
* UVP-2618. Отключать перемотку лайва, если ссылка пришла без маркера offset (`_offset_p` в пути
|
|
317
|
+
* или query-параметр `?offset_p=`). Применяется ко всем live-форматам: dash_live, dash_live_cmaf,
|
|
318
|
+
* hls_live, hls_live_cmaf. Когда манифест отдаёт DVR-окно (shiftDuration / liveSeekableDuration /
|
|
319
|
+
* X-Playback-Duration), но в URL нет маркера, `generateLiveUrl` не сможет подставить offset и плеер
|
|
320
|
+
* молча переинициализируется на live edge. Включение делает DVR-окно нулевым и скрывает таймлайн.
|
|
321
|
+
* По умолчанию false (прежнее поведение), включается для эксперимента.
|
|
322
|
+
*/
|
|
323
|
+
disableLiveSeekWithoutOffsetMarker: boolean;
|
|
315
324
|
};
|
|
316
325
|
enableWakeLock: boolean;
|
|
317
326
|
enableTelemetryAtStart: boolean;
|