hls.js 1.6.0-beta.1.0.canary.10818 → 1.6.0-beta.1.0.canary.10819
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 +4 -1
- package/dist/hls.d.ts +4 -1
- package/dist/hls.js +43 -13
- package/dist/hls.js.d.ts +4 -1
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +33 -13
- 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 +29 -9
- 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 +39 -9
- 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/id3-track-controller.ts +31 -4
- package/src/controller/interstitials-controller.ts +6 -0
- package/src/events.ts +3 -0
- package/src/utils/texttrack-utils.ts +4 -1
package/dist/hls.d.mts
CHANGED
@@ -1175,7 +1175,8 @@ export declare enum Events {
|
|
1175
1175
|
INTERSTITIAL_ASSET_ERROR = "hlsInterstitialAssetError",
|
1176
1176
|
INTERSTITIAL_ENDED = "hlsInterstitialEnded",
|
1177
1177
|
INTERSTITIALS_PRIMARY_RESUMED = "hlsInterstitialsPrimaryResumed",
|
1178
|
-
PLAYOUT_LIMIT_REACHED = "hlsPlayoutLimitReached"
|
1178
|
+
PLAYOUT_LIMIT_REACHED = "hlsPlayoutLimitReached",
|
1179
|
+
EVENT_CUE_ENTER = "hlsEventCueEnter"
|
1179
1180
|
}
|
1180
1181
|
|
1181
1182
|
export declare class EwmaBandWidthEstimator {
|
@@ -2034,6 +2035,7 @@ export declare interface HlsListeners {
|
|
2034
2035
|
[Events.INTERSTITIAL_ENDED]: (event: Events.INTERSTITIAL_ENDED, data: InterstitialEndedData) => void;
|
2035
2036
|
[Events.INTERSTITIALS_PRIMARY_RESUMED]: (event: Events.INTERSTITIALS_PRIMARY_RESUMED, data: InterstitialsPrimaryResumed) => void;
|
2036
2037
|
[Events.PLAYOUT_LIMIT_REACHED]: (event: Events.PLAYOUT_LIMIT_REACHED, data: {}) => void;
|
2038
|
+
[Events.EVENT_CUE_ENTER]: (event: Events.EVENT_CUE_ENTER, data: {}) => void;
|
2037
2039
|
}
|
2038
2040
|
|
2039
2041
|
export declare type HlsLoadPolicies = {
|
@@ -2299,6 +2301,7 @@ export declare class InterstitialsController extends Logger implements NetworkCo
|
|
2299
2301
|
private transferMediaTo;
|
2300
2302
|
private onPlay;
|
2301
2303
|
private onSeeking;
|
2304
|
+
private onInterstitialCueEnter;
|
2302
2305
|
private onTimeupdate;
|
2303
2306
|
private checkStart;
|
2304
2307
|
private advanceAfterAssetEnded;
|
package/dist/hls.d.ts
CHANGED
@@ -1175,7 +1175,8 @@ export declare enum Events {
|
|
1175
1175
|
INTERSTITIAL_ASSET_ERROR = "hlsInterstitialAssetError",
|
1176
1176
|
INTERSTITIAL_ENDED = "hlsInterstitialEnded",
|
1177
1177
|
INTERSTITIALS_PRIMARY_RESUMED = "hlsInterstitialsPrimaryResumed",
|
1178
|
-
PLAYOUT_LIMIT_REACHED = "hlsPlayoutLimitReached"
|
1178
|
+
PLAYOUT_LIMIT_REACHED = "hlsPlayoutLimitReached",
|
1179
|
+
EVENT_CUE_ENTER = "hlsEventCueEnter"
|
1179
1180
|
}
|
1180
1181
|
|
1181
1182
|
export declare class EwmaBandWidthEstimator {
|
@@ -2034,6 +2035,7 @@ export declare interface HlsListeners {
|
|
2034
2035
|
[Events.INTERSTITIAL_ENDED]: (event: Events.INTERSTITIAL_ENDED, data: InterstitialEndedData) => void;
|
2035
2036
|
[Events.INTERSTITIALS_PRIMARY_RESUMED]: (event: Events.INTERSTITIALS_PRIMARY_RESUMED, data: InterstitialsPrimaryResumed) => void;
|
2036
2037
|
[Events.PLAYOUT_LIMIT_REACHED]: (event: Events.PLAYOUT_LIMIT_REACHED, data: {}) => void;
|
2038
|
+
[Events.EVENT_CUE_ENTER]: (event: Events.EVENT_CUE_ENTER, data: {}) => void;
|
2037
2039
|
}
|
2038
2040
|
|
2039
2041
|
export declare type HlsLoadPolicies = {
|
@@ -2299,6 +2301,7 @@ export declare class InterstitialsController extends Logger implements NetworkCo
|
|
2299
2301
|
private transferMediaTo;
|
2300
2302
|
private onPlay;
|
2301
2303
|
private onSeeking;
|
2304
|
+
private onInterstitialCueEnter;
|
2302
2305
|
private onTimeupdate;
|
2303
2306
|
private checkStart;
|
2304
2307
|
private advanceAfterAssetEnded;
|
package/dist/hls.js
CHANGED
@@ -852,6 +852,7 @@
|
|
852
852
|
Events["INTERSTITIAL_ENDED"] = "hlsInterstitialEnded";
|
853
853
|
Events["INTERSTITIALS_PRIMARY_RESUMED"] = "hlsInterstitialsPrimaryResumed";
|
854
854
|
Events["PLAYOUT_LIMIT_REACHED"] = "hlsPlayoutLimitReached";
|
855
|
+
Events["EVENT_CUE_ENTER"] = "hlsEventCueEnter";
|
855
856
|
return Events;
|
856
857
|
}({});
|
857
858
|
|
@@ -1057,7 +1058,7 @@
|
|
1057
1058
|
// Some browsers don't allow to use bind on console object anyway
|
1058
1059
|
// fallback to default if needed
|
1059
1060
|
try {
|
1060
|
-
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.6.0-beta.1.0.canary.
|
1061
|
+
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.6.0-beta.1.0.canary.10819");
|
1061
1062
|
} catch (e) {
|
1062
1063
|
/* log fn threw an exception. All logger methods are no-ops. */
|
1063
1064
|
return createLogger();
|
@@ -16296,7 +16297,7 @@
|
|
16296
16297
|
return !remuxResult.audio && !remuxResult.video && !remuxResult.text && !remuxResult.id3 && !remuxResult.initSegment;
|
16297
16298
|
}
|
16298
16299
|
|
16299
|
-
var version = "1.6.0-beta.1.0.canary.
|
16300
|
+
var version = "1.6.0-beta.1.0.canary.10819";
|
16300
16301
|
|
16301
16302
|
// ensure the worker ends up in the bundle
|
16302
16303
|
// If the worker should not be included this gets aliased to empty.js
|
@@ -24005,6 +24006,7 @@
|
|
24005
24006
|
hls.on(Events.AUDIO_TRACK_UPDATED, this.onAudioTrackUpdated, this);
|
24006
24007
|
hls.on(Events.SUBTITLE_TRACK_SWITCH, this.onSubtitleTrackSwitch, this);
|
24007
24008
|
hls.on(Events.SUBTITLE_TRACK_UPDATED, this.onSubtitleTrackUpdated, this);
|
24009
|
+
hls.on(Events.EVENT_CUE_ENTER, this.onInterstitialCueEnter, this);
|
24008
24010
|
hls.on(Events.ASSET_LIST_LOADED, this.onAssetListLoaded, this);
|
24009
24011
|
hls.on(Events.BUFFER_APPENDED, this.onBufferAppended, this);
|
24010
24012
|
hls.on(Events.BUFFER_FLUSHED, this.onBufferFlushed, this);
|
@@ -24027,6 +24029,7 @@
|
|
24027
24029
|
hls.off(Events.AUDIO_TRACK_UPDATED, this.onAudioTrackUpdated, this);
|
24028
24030
|
hls.off(Events.SUBTITLE_TRACK_SWITCH, this.onSubtitleTrackSwitch, this);
|
24029
24031
|
hls.off(Events.SUBTITLE_TRACK_UPDATED, this.onSubtitleTrackUpdated, this);
|
24032
|
+
hls.off(Events.EVENT_CUE_ENTER, this.onInterstitialCueEnter, this);
|
24030
24033
|
hls.off(Events.ASSET_LIST_LOADED, this.onAssetListLoaded, this);
|
24031
24034
|
hls.off(Events.BUFFER_CODECS, this.onBufferCodecs, this);
|
24032
24035
|
hls.off(Events.BUFFER_APPENDED, this.onBufferAppended, this);
|
@@ -24212,6 +24215,9 @@
|
|
24212
24215
|
}
|
24213
24216
|
player.attachMedia(dataToAttach);
|
24214
24217
|
};
|
24218
|
+
_proto.onInterstitialCueEnter = function onInterstitialCueEnter() {
|
24219
|
+
this.onTimeupdate();
|
24220
|
+
};
|
24215
24221
|
// Scheduling methods
|
24216
24222
|
_proto.checkStart = function checkStart() {
|
24217
24223
|
var schedule = this.schedule;
|
@@ -26007,7 +26013,7 @@
|
|
26007
26013
|
track.mode = mode;
|
26008
26014
|
}
|
26009
26015
|
}
|
26010
|
-
function clearCurrentCues(track) {
|
26016
|
+
function clearCurrentCues(track, enterHandler) {
|
26011
26017
|
// When track.mode is disabled, track.cues will be null.
|
26012
26018
|
// To guarantee the removal of cues, we need to temporarily
|
26013
26019
|
// change the mode to hidden
|
@@ -26017,6 +26023,9 @@
|
|
26017
26023
|
}
|
26018
26024
|
if (track.cues) {
|
26019
26025
|
for (var i = track.cues.length; i--;) {
|
26026
|
+
if (enterHandler) {
|
26027
|
+
track.cues[i].removeEventListener('enter', enterHandler);
|
26028
|
+
}
|
26020
26029
|
track.removeCue(track.cues[i]);
|
26021
26030
|
}
|
26022
26031
|
}
|
@@ -30553,11 +30562,18 @@
|
|
30553
30562
|
}
|
30554
30563
|
var ID3TrackController = /*#__PURE__*/function () {
|
30555
30564
|
function ID3TrackController(hls) {
|
30565
|
+
var _this = this;
|
30556
30566
|
this.hls = void 0;
|
30557
30567
|
this.id3Track = null;
|
30558
30568
|
this.media = null;
|
30559
30569
|
this.dateRangeCuesAppended = {};
|
30560
30570
|
this.removeCues = true;
|
30571
|
+
this.onEventCueEnter = function () {
|
30572
|
+
if (!_this.hls) {
|
30573
|
+
return;
|
30574
|
+
}
|
30575
|
+
_this.hls.trigger(Events.EVENT_CUE_ENTER, {});
|
30576
|
+
};
|
30561
30577
|
this.hls = hls;
|
30562
30578
|
this._registerListeners();
|
30563
30579
|
}
|
@@ -30568,11 +30584,12 @@
|
|
30568
30584
|
this.media = null;
|
30569
30585
|
this.dateRangeCuesAppended = {};
|
30570
30586
|
// @ts-ignore
|
30571
|
-
this.hls = null;
|
30587
|
+
this.hls = this.onEventCueEnter = null;
|
30572
30588
|
};
|
30573
30589
|
_proto._registerListeners = function _registerListeners() {
|
30574
30590
|
var hls = this.hls;
|
30575
30591
|
hls.on(Events.MEDIA_ATTACHING, this.onMediaAttaching, this);
|
30592
|
+
hls.on(Events.MEDIA_ATTACHED, this.onMediaAttached, this);
|
30576
30593
|
hls.on(Events.MEDIA_DETACHING, this.onMediaDetaching, this);
|
30577
30594
|
hls.on(Events.MANIFEST_LOADING, this.onManifestLoading, this);
|
30578
30595
|
hls.on(Events.FRAG_PARSING_METADATA, this.onFragParsingMetadata, this);
|
@@ -30583,16 +30600,15 @@
|
|
30583
30600
|
_proto._unregisterListeners = function _unregisterListeners() {
|
30584
30601
|
var hls = this.hls;
|
30585
30602
|
hls.off(Events.MEDIA_ATTACHING, this.onMediaAttaching, this);
|
30603
|
+
hls.off(Events.MEDIA_ATTACHED, this.onMediaAttached, this);
|
30586
30604
|
hls.off(Events.MEDIA_DETACHING, this.onMediaDetaching, this);
|
30587
30605
|
hls.off(Events.MANIFEST_LOADING, this.onManifestLoading, this);
|
30588
30606
|
hls.off(Events.FRAG_PARSING_METADATA, this.onFragParsingMetadata, this);
|
30589
30607
|
hls.off(Events.BUFFER_FLUSHING, this.onBufferFlushing, this);
|
30590
30608
|
hls.off(Events.LEVEL_UPDATED, this.onLevelUpdated, this);
|
30591
30609
|
hls.off(Events.LEVEL_PTS_UPDATED, this.onLevelPtsUpdated, this);
|
30592
|
-
}
|
30593
|
-
|
30610
|
+
};
|
30594
30611
|
// Add ID3 metatadata text track.
|
30595
|
-
;
|
30596
30612
|
_proto.onMediaAttaching = function onMediaAttaching(event, data) {
|
30597
30613
|
var _data$overrides;
|
30598
30614
|
this.media = data.media;
|
@@ -30600,6 +30616,12 @@
|
|
30600
30616
|
this.removeCues = false;
|
30601
30617
|
}
|
30602
30618
|
};
|
30619
|
+
_proto.onMediaAttached = function onMediaAttached() {
|
30620
|
+
var details = this.hls.latestLevelDetails;
|
30621
|
+
if (details) {
|
30622
|
+
this.updateDateRangeCues(details);
|
30623
|
+
}
|
30624
|
+
};
|
30603
30625
|
_proto.onMediaDetaching = function onMediaDetaching(event, data) {
|
30604
30626
|
this.media = null;
|
30605
30627
|
var transferringMedia = !!data.transferMedia;
|
@@ -30608,7 +30630,7 @@
|
|
30608
30630
|
}
|
30609
30631
|
if (this.id3Track) {
|
30610
30632
|
if (this.removeCues) {
|
30611
|
-
clearCurrentCues(this.id3Track);
|
30633
|
+
clearCurrentCues(this.id3Track, this.onEventCueEnter);
|
30612
30634
|
}
|
30613
30635
|
this.id3Track = null;
|
30614
30636
|
}
|
@@ -30740,7 +30762,7 @@
|
|
30740
30762
|
}
|
30741
30763
|
};
|
30742
30764
|
_proto.updateDateRangeCues = function updateDateRangeCues(details, removeOldCues) {
|
30743
|
-
var
|
30765
|
+
var _this2 = this;
|
30744
30766
|
if (!this.media || !details.hasProgramDateTime || !this.hls.config.enableDateRangeMetadataCues) {
|
30745
30767
|
return;
|
30746
30768
|
}
|
@@ -30761,7 +30783,9 @@
|
|
30761
30783
|
delete dateRangeCuesAppended[id];
|
30762
30784
|
Object.keys(cues).forEach(function (key) {
|
30763
30785
|
try {
|
30764
|
-
|
30786
|
+
var cue = cues[key];
|
30787
|
+
cue.removeEventListener('enter', _this2.onEventCueEnter);
|
30788
|
+
id3Track.removeCue(cue);
|
30765
30789
|
} catch (e) {
|
30766
30790
|
/* no-op */
|
30767
30791
|
}
|
@@ -30835,14 +30859,20 @@
|
|
30835
30859
|
if (isSCTE35Attribute(key)) {
|
30836
30860
|
data = hexToArrayBuffer(data);
|
30837
30861
|
}
|
30838
|
-
var
|
30862
|
+
var payload = {
|
30839
30863
|
key: key,
|
30840
30864
|
data: data
|
30841
|
-
}
|
30865
|
+
};
|
30866
|
+
var _cue = createCueWithDataFields(Cue, startTime, endTime, payload, MetadataSchema.dateRange);
|
30842
30867
|
if (_cue) {
|
30843
30868
|
_cue.id = id;
|
30844
|
-
|
30869
|
+
_this2.id3Track.addCue(_cue);
|
30845
30870
|
cues[key] = _cue;
|
30871
|
+
if (_this2.hls.config.interstitialsController) {
|
30872
|
+
if (key === 'X-ASSET-LIST' || key === 'X-ASSET-URL') {
|
30873
|
+
_cue.addEventListener('enter', _this2.onEventCueEnter);
|
30874
|
+
}
|
30875
|
+
}
|
30846
30876
|
}
|
30847
30877
|
}
|
30848
30878
|
}
|
package/dist/hls.js.d.ts
CHANGED
@@ -1175,7 +1175,8 @@ export declare enum Events {
|
|
1175
1175
|
INTERSTITIAL_ASSET_ERROR = "hlsInterstitialAssetError",
|
1176
1176
|
INTERSTITIAL_ENDED = "hlsInterstitialEnded",
|
1177
1177
|
INTERSTITIALS_PRIMARY_RESUMED = "hlsInterstitialsPrimaryResumed",
|
1178
|
-
PLAYOUT_LIMIT_REACHED = "hlsPlayoutLimitReached"
|
1178
|
+
PLAYOUT_LIMIT_REACHED = "hlsPlayoutLimitReached",
|
1179
|
+
EVENT_CUE_ENTER = "hlsEventCueEnter"
|
1179
1180
|
}
|
1180
1181
|
|
1181
1182
|
export declare class EwmaBandWidthEstimator {
|
@@ -2034,6 +2035,7 @@ export declare interface HlsListeners {
|
|
2034
2035
|
[Events.INTERSTITIAL_ENDED]: (event: Events.INTERSTITIAL_ENDED, data: InterstitialEndedData) => void;
|
2035
2036
|
[Events.INTERSTITIALS_PRIMARY_RESUMED]: (event: Events.INTERSTITIALS_PRIMARY_RESUMED, data: InterstitialsPrimaryResumed) => void;
|
2036
2037
|
[Events.PLAYOUT_LIMIT_REACHED]: (event: Events.PLAYOUT_LIMIT_REACHED, data: {}) => void;
|
2038
|
+
[Events.EVENT_CUE_ENTER]: (event: Events.EVENT_CUE_ENTER, data: {}) => void;
|
2037
2039
|
}
|
2038
2040
|
|
2039
2041
|
export declare type HlsLoadPolicies = {
|
@@ -2299,6 +2301,7 @@ export declare class InterstitialsController extends Logger implements NetworkCo
|
|
2299
2301
|
private transferMediaTo;
|
2300
2302
|
private onPlay;
|
2301
2303
|
private onSeeking;
|
2304
|
+
private onInterstitialCueEnter;
|
2302
2305
|
private onTimeupdate;
|
2303
2306
|
private checkStart;
|
2304
2307
|
private advanceAfterAssetEnded;
|