hls.js 1.6.0-beta.1.0.canary.10745 → 1.6.0-beta.1.0.canary.10746
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/dist/hls.d.mts +36 -10
- package/dist/hls.d.ts +36 -10
- package/dist/hls.js +172 -87
- package/dist/hls.js.d.ts +36 -10
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +171 -86
- package/dist/hls.light.js.map +1 -1
- package/dist/hls.light.min.js +1 -1
- package/dist/hls.light.min.js.map +1 -1
- package/dist/hls.light.mjs +160 -89
- package/dist/hls.light.mjs.map +1 -1
- package/dist/hls.min.js +1 -1
- package/dist/hls.min.js.map +1 -1
- package/dist/hls.mjs +161 -90
- package/dist/hls.mjs.map +1 -1
- package/dist/hls.worker.js +1 -1
- package/dist/hls.worker.js.map +1 -1
- package/package.json +1 -1
- package/src/controller/latency-controller.ts +1 -1
- package/src/controller/stream-controller.ts +1 -1
- package/src/loader/date-range.ts +2 -2
- package/src/loader/fragment.ts +116 -23
- package/src/loader/interstitial-event.ts +8 -5
- package/src/loader/m3u8-parser.ts +49 -56
- package/src/utils/level-helper.ts +22 -15
package/dist/hls.d.mts
CHANGED
@@ -222,6 +222,10 @@ export declare interface BackBufferData {
|
|
222
222
|
bufferEnd: number;
|
223
223
|
}
|
224
224
|
|
225
|
+
declare type Base = {
|
226
|
+
url: string;
|
227
|
+
};
|
228
|
+
|
225
229
|
export declare type BaseData = {
|
226
230
|
url: string;
|
227
231
|
};
|
@@ -248,14 +252,22 @@ export declare class BasePlaylistController extends Logger implements NetworkCom
|
|
248
252
|
export declare class BaseSegment {
|
249
253
|
private _byteRange;
|
250
254
|
private _url;
|
251
|
-
|
255
|
+
private _stats;
|
256
|
+
private _streams;
|
257
|
+
readonly base: Base;
|
252
258
|
relurl?: string;
|
253
|
-
|
254
|
-
constructor(baseurl: string);
|
259
|
+
constructor(base: Base | string);
|
255
260
|
setByteRange(value: string, previous?: BaseSegment): void;
|
261
|
+
get baseurl(): string;
|
256
262
|
get byteRange(): [number, number] | [];
|
257
263
|
get byteRangeStartOffset(): number | undefined;
|
258
264
|
get byteRangeEndOffset(): number | undefined;
|
265
|
+
get elementaryStreams(): ElementaryStreams;
|
266
|
+
set elementaryStreams(value: ElementaryStreams);
|
267
|
+
get hasStats(): boolean;
|
268
|
+
get hasStreams(): boolean;
|
269
|
+
get stats(): LoadStats;
|
270
|
+
set stats(value: LoadStats);
|
259
271
|
get url(): string;
|
260
272
|
set url(value: string);
|
261
273
|
clearElementaryStreamInfo(): void;
|
@@ -784,7 +796,7 @@ export declare interface CuesParsedData {
|
|
784
796
|
|
785
797
|
export declare class DateRange {
|
786
798
|
attr: AttrList;
|
787
|
-
tagAnchor:
|
799
|
+
tagAnchor: MediaFragmentRef | null;
|
788
800
|
tagOrder: number;
|
789
801
|
private _startDate;
|
790
802
|
private _endDate?;
|
@@ -1273,8 +1285,9 @@ export declare interface FragLoadingData {
|
|
1273
1285
|
*/
|
1274
1286
|
export declare class Fragment extends BaseSegment {
|
1275
1287
|
private _decryptdata;
|
1288
|
+
private _programDateTime;
|
1289
|
+
private _ref;
|
1276
1290
|
rawProgramDateTime: string | null;
|
1277
|
-
programDateTime: number | null;
|
1278
1291
|
tagList: Array<string[]>;
|
1279
1292
|
duration: number;
|
1280
1293
|
sn: number | 'initSegment';
|
@@ -1295,7 +1308,6 @@ export declare class Fragment extends BaseSegment {
|
|
1295
1308
|
deltaPTS?: number;
|
1296
1309
|
maxStartPTS?: number;
|
1297
1310
|
minEndPTS?: number;
|
1298
|
-
stats: LoadStats;
|
1299
1311
|
data?: Uint8Array;
|
1300
1312
|
bitrateTest: boolean;
|
1301
1313
|
title: string | null;
|
@@ -1303,11 +1315,17 @@ export declare class Fragment extends BaseSegment {
|
|
1303
1315
|
endList?: boolean;
|
1304
1316
|
gap?: boolean;
|
1305
1317
|
urlId: number;
|
1306
|
-
constructor(type: PlaylistLevelType,
|
1318
|
+
constructor(type: PlaylistLevelType, base: Base | string);
|
1307
1319
|
get decryptdata(): LevelKey | null;
|
1308
1320
|
get end(): number;
|
1309
1321
|
get endProgramDateTime(): number | null;
|
1310
1322
|
get encrypted(): boolean;
|
1323
|
+
get programDateTime(): number | null;
|
1324
|
+
set programDateTime(value: number | null);
|
1325
|
+
get ref(): MediaFragmentRef | null;
|
1326
|
+
addStart(value: number): void;
|
1327
|
+
setStart(value: number): void;
|
1328
|
+
setDuration(value: number): void;
|
1311
1329
|
setKeyFormat(keyFormat: KeySystemFormats): void;
|
1312
1330
|
abortRequests(): void;
|
1313
1331
|
setElementaryStreamInfo(type: ElementaryStreamTypes, startPTS: number, endPTS: number, startDTS: number, endDTS: number, partial?: boolean): void;
|
@@ -2137,7 +2155,7 @@ export declare class InterstitialEvent {
|
|
2137
2155
|
assetList: InterstitialAssetItem[];
|
2138
2156
|
assetListLoader?: Loader<LoaderContext>;
|
2139
2157
|
assetListResponse: AssetListJSON | null;
|
2140
|
-
resumeAnchor?:
|
2158
|
+
resumeAnchor?: MediaFragmentRef;
|
2141
2159
|
error?: Error;
|
2142
2160
|
constructor(dateRange: DateRange, base: BaseData);
|
2143
2161
|
setDateRange(dateRange: DateRange): void;
|
@@ -2886,8 +2904,17 @@ export declare interface MediaEndedData {
|
|
2886
2904
|
|
2887
2905
|
export declare interface MediaFragment extends Fragment {
|
2888
2906
|
sn: number;
|
2907
|
+
ref: MediaFragmentRef;
|
2889
2908
|
}
|
2890
2909
|
|
2910
|
+
declare type MediaFragmentRef = {
|
2911
|
+
base: Base;
|
2912
|
+
start: number;
|
2913
|
+
duration: number;
|
2914
|
+
sn: number;
|
2915
|
+
programDateTime: number | null;
|
2916
|
+
};
|
2917
|
+
|
2891
2918
|
export declare type MediaKeyFunc = (keySystem: KeySystems, supportedConfigurations: MediaKeySystemConfiguration[]) => Promise<MediaKeySystemAccess>;
|
2892
2919
|
|
2893
2920
|
export declare interface MediaKeySessionContext {
|
@@ -3025,8 +3052,7 @@ export declare class Part extends BaseSegment {
|
|
3025
3052
|
readonly relurl: string;
|
3026
3053
|
readonly fragment: MediaFragment;
|
3027
3054
|
readonly index: number;
|
3028
|
-
|
3029
|
-
constructor(partAttrs: AttrList, frag: MediaFragment, baseurl: string, index: number, previous?: Part);
|
3055
|
+
constructor(partAttrs: AttrList, frag: MediaFragment, base: Base | string, index: number, previous?: Part);
|
3030
3056
|
get start(): number;
|
3031
3057
|
get end(): number;
|
3032
3058
|
get loaded(): boolean;
|
package/dist/hls.d.ts
CHANGED
@@ -222,6 +222,10 @@ export declare interface BackBufferData {
|
|
222
222
|
bufferEnd: number;
|
223
223
|
}
|
224
224
|
|
225
|
+
declare type Base = {
|
226
|
+
url: string;
|
227
|
+
};
|
228
|
+
|
225
229
|
export declare type BaseData = {
|
226
230
|
url: string;
|
227
231
|
};
|
@@ -248,14 +252,22 @@ export declare class BasePlaylistController extends Logger implements NetworkCom
|
|
248
252
|
export declare class BaseSegment {
|
249
253
|
private _byteRange;
|
250
254
|
private _url;
|
251
|
-
|
255
|
+
private _stats;
|
256
|
+
private _streams;
|
257
|
+
readonly base: Base;
|
252
258
|
relurl?: string;
|
253
|
-
|
254
|
-
constructor(baseurl: string);
|
259
|
+
constructor(base: Base | string);
|
255
260
|
setByteRange(value: string, previous?: BaseSegment): void;
|
261
|
+
get baseurl(): string;
|
256
262
|
get byteRange(): [number, number] | [];
|
257
263
|
get byteRangeStartOffset(): number | undefined;
|
258
264
|
get byteRangeEndOffset(): number | undefined;
|
265
|
+
get elementaryStreams(): ElementaryStreams;
|
266
|
+
set elementaryStreams(value: ElementaryStreams);
|
267
|
+
get hasStats(): boolean;
|
268
|
+
get hasStreams(): boolean;
|
269
|
+
get stats(): LoadStats;
|
270
|
+
set stats(value: LoadStats);
|
259
271
|
get url(): string;
|
260
272
|
set url(value: string);
|
261
273
|
clearElementaryStreamInfo(): void;
|
@@ -784,7 +796,7 @@ export declare interface CuesParsedData {
|
|
784
796
|
|
785
797
|
export declare class DateRange {
|
786
798
|
attr: AttrList;
|
787
|
-
tagAnchor:
|
799
|
+
tagAnchor: MediaFragmentRef | null;
|
788
800
|
tagOrder: number;
|
789
801
|
private _startDate;
|
790
802
|
private _endDate?;
|
@@ -1273,8 +1285,9 @@ export declare interface FragLoadingData {
|
|
1273
1285
|
*/
|
1274
1286
|
export declare class Fragment extends BaseSegment {
|
1275
1287
|
private _decryptdata;
|
1288
|
+
private _programDateTime;
|
1289
|
+
private _ref;
|
1276
1290
|
rawProgramDateTime: string | null;
|
1277
|
-
programDateTime: number | null;
|
1278
1291
|
tagList: Array<string[]>;
|
1279
1292
|
duration: number;
|
1280
1293
|
sn: number | 'initSegment';
|
@@ -1295,7 +1308,6 @@ export declare class Fragment extends BaseSegment {
|
|
1295
1308
|
deltaPTS?: number;
|
1296
1309
|
maxStartPTS?: number;
|
1297
1310
|
minEndPTS?: number;
|
1298
|
-
stats: LoadStats;
|
1299
1311
|
data?: Uint8Array;
|
1300
1312
|
bitrateTest: boolean;
|
1301
1313
|
title: string | null;
|
@@ -1303,11 +1315,17 @@ export declare class Fragment extends BaseSegment {
|
|
1303
1315
|
endList?: boolean;
|
1304
1316
|
gap?: boolean;
|
1305
1317
|
urlId: number;
|
1306
|
-
constructor(type: PlaylistLevelType,
|
1318
|
+
constructor(type: PlaylistLevelType, base: Base | string);
|
1307
1319
|
get decryptdata(): LevelKey | null;
|
1308
1320
|
get end(): number;
|
1309
1321
|
get endProgramDateTime(): number | null;
|
1310
1322
|
get encrypted(): boolean;
|
1323
|
+
get programDateTime(): number | null;
|
1324
|
+
set programDateTime(value: number | null);
|
1325
|
+
get ref(): MediaFragmentRef | null;
|
1326
|
+
addStart(value: number): void;
|
1327
|
+
setStart(value: number): void;
|
1328
|
+
setDuration(value: number): void;
|
1311
1329
|
setKeyFormat(keyFormat: KeySystemFormats): void;
|
1312
1330
|
abortRequests(): void;
|
1313
1331
|
setElementaryStreamInfo(type: ElementaryStreamTypes, startPTS: number, endPTS: number, startDTS: number, endDTS: number, partial?: boolean): void;
|
@@ -2137,7 +2155,7 @@ export declare class InterstitialEvent {
|
|
2137
2155
|
assetList: InterstitialAssetItem[];
|
2138
2156
|
assetListLoader?: Loader<LoaderContext>;
|
2139
2157
|
assetListResponse: AssetListJSON | null;
|
2140
|
-
resumeAnchor?:
|
2158
|
+
resumeAnchor?: MediaFragmentRef;
|
2141
2159
|
error?: Error;
|
2142
2160
|
constructor(dateRange: DateRange, base: BaseData);
|
2143
2161
|
setDateRange(dateRange: DateRange): void;
|
@@ -2886,8 +2904,17 @@ export declare interface MediaEndedData {
|
|
2886
2904
|
|
2887
2905
|
export declare interface MediaFragment extends Fragment {
|
2888
2906
|
sn: number;
|
2907
|
+
ref: MediaFragmentRef;
|
2889
2908
|
}
|
2890
2909
|
|
2910
|
+
declare type MediaFragmentRef = {
|
2911
|
+
base: Base;
|
2912
|
+
start: number;
|
2913
|
+
duration: number;
|
2914
|
+
sn: number;
|
2915
|
+
programDateTime: number | null;
|
2916
|
+
};
|
2917
|
+
|
2891
2918
|
export declare type MediaKeyFunc = (keySystem: KeySystems, supportedConfigurations: MediaKeySystemConfiguration[]) => Promise<MediaKeySystemAccess>;
|
2892
2919
|
|
2893
2920
|
export declare interface MediaKeySessionContext {
|
@@ -3025,8 +3052,7 @@ export declare class Part extends BaseSegment {
|
|
3025
3052
|
readonly relurl: string;
|
3026
3053
|
readonly fragment: MediaFragment;
|
3027
3054
|
readonly index: number;
|
3028
|
-
|
3029
|
-
constructor(partAttrs: AttrList, frag: MediaFragment, baseurl: string, index: number, previous?: Part);
|
3055
|
+
constructor(partAttrs: AttrList, frag: MediaFragment, base: Base | string, index: number, previous?: Part);
|
3030
3056
|
get start(): number;
|
3031
3057
|
get end(): number;
|
3032
3058
|
get loaded(): boolean;
|