@vuux/video
Version:
Vue Nuxt 视频播放器
976 lines • 573 kB
JavaScript
(function ss(Ui) {
var br, Wt;
br = this, Wt = function() {
function Bi(s, n) {
var e = Object.keys(s);
if (Object.getOwnPropertySymbols) {
var t = Object.getOwnPropertySymbols(s);
n && (t = t.filter((function(r) {
return Object.getOwnPropertyDescriptor(s, r).enumerable;
}))), e.push.apply(e, t);
}
return e;
}
function ye(s) {
for (var n = 1; n < arguments.length; n++) {
var e = arguments[n] != null ? arguments[n] : {};
n % 2 ? Bi(Object(e), !0).forEach((function(t) {
var r, i, a;
r = s, i = t, a = e[t], (i = Gi(i)) in r ? Object.defineProperty(r, i, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : r[i] = a;
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(s, Object.getOwnPropertyDescriptors(e)) : Bi(Object(e)).forEach((function(t) {
Object.defineProperty(s, t, Object.getOwnPropertyDescriptor(e, t));
}));
}
return s;
}
function Gi(s) {
var n = (function(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var i = r.call(e, t);
if (typeof i != "object") return i;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
})(s, "string");
return typeof n == "symbol" ? n : String(n);
}
function Ki(s, n) {
for (var e = 0; e < n.length; e++) {
var t = n[e];
t.enumerable = t.enumerable || !1, t.configurable = !0, "value" in t && (t.writable = !0), Object.defineProperty(s, Gi(t.key), t);
}
}
function ce(s, n, e) {
return n && Ki(s.prototype, n), e && Ki(s, e), Object.defineProperty(s, "prototype", { writable: !1 }), s;
}
function ge() {
return ge = Object.assign ? Object.assign.bind() : function(s) {
for (var n = 1; n < arguments.length; n++) {
var e = arguments[n];
for (var t in e) Object.prototype.hasOwnProperty.call(e, t) && (s[t] = e[t]);
}
return s;
}, ge.apply(this, arguments);
}
function Le(s, n) {
s.prototype = Object.create(n.prototype), s.prototype.constructor = s, It(s, n);
}
function Dr(s) {
return Dr = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(n) {
return n.__proto__ || Object.getPrototypeOf(n);
}, Dr(s);
}
function It(s, n) {
return It = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) {
return e.__proto__ = t, e;
}, It(s, n);
}
function wr(s, n, e) {
return wr = (function() {
if (typeof Reflect > "u" || !Reflect.construct || Reflect.construct.sham) return !1;
if (typeof Proxy == "function") return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {
}))), !0;
} catch {
return !1;
}
})() ? Reflect.construct.bind() : function(t, r, i) {
var a = [null];
a.push.apply(a, r);
var o = new (Function.bind.apply(t, a))();
return i && It(o, i.prototype), o;
}, wr.apply(null, arguments);
}
function Ct(s) {
var n = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
return Ct = function(e) {
if (e === null || !(function(r) {
try {
return Function.toString.call(r).indexOf("[native code]") !== -1;
} catch {
return typeof r == "function";
}
})(e)) return e;
if (typeof e != "function") throw new TypeError("Super expression must either be null or a function");
if (n !== void 0) {
if (n.has(e)) return n.get(e);
n.set(e, t);
}
function t() {
return wr(e, arguments, Dr(this).constructor);
}
return t.prototype = Object.create(e.prototype, { constructor: { value: t, enumerable: !1, writable: !0, configurable: !0 } }), It(t, e);
}, Ct(s);
}
function Hi(s, n) {
(n == null || n > s.length) && (n = s.length);
for (var e = 0, t = new Array(n); e < n; e++) t[e] = s[e];
return t;
}
function os(s, n) {
var e = typeof Symbol < "u" && s[Symbol.iterator] || s["@@iterator"];
if (e) return (e = e.call(s)).next.bind(e);
if (Array.isArray(s) || (e = (function(r, i) {
if (r) {
if (typeof r == "string") return Hi(r, i);
var a = Object.prototype.toString.call(r).slice(8, -1);
return a === "Object" && r.constructor && (a = r.constructor.name), a === "Map" || a === "Set" ? Array.from(r) : a === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a) ? Hi(r, i) : void 0;
}
})(s)) || n) {
e && (s = e);
var t = 0;
return function() {
return t >= s.length ? { done: !0 } : { done: !1, value: s[t++] };
};
}
throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function ls(s) {
return s && s.__esModule && Object.prototype.hasOwnProperty.call(s, "default") ? s.default : s;
}
var Vi = { exports: {} };
(function(s, n) {
var e, t, r, i, a;
e = /^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/, t = /^(?=([^\/?#]*))\1([^]*)$/, r = /(?:\/|^)\.(?=\/)/g, i = /(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g, a = { buildAbsoluteURL: function(o, l, h) {
if (h = h || {}, o = o.trim(), !(l = l.trim())) {
if (!h.alwaysNormalize) return o;
var u = a.parseURL(o);
if (!u) throw new Error("Error trying to parse base URL.");
return u.path = a.normalizePath(u.path), a.buildURLFromParts(u);
}
var d = a.parseURL(l);
if (!d) throw new Error("Error trying to parse relative URL.");
if (d.scheme) return h.alwaysNormalize ? (d.path = a.normalizePath(d.path), a.buildURLFromParts(d)) : l;
var f = a.parseURL(o);
if (!f) throw new Error("Error trying to parse base URL.");
if (!f.netLoc && f.path && f.path[0] !== "/") {
var c = t.exec(f.path);
f.netLoc = c[1], f.path = c[2];
}
f.netLoc && !f.path && (f.path = "/");
var v = { scheme: f.scheme, netLoc: d.netLoc, path: null, params: d.params, query: d.query, fragment: d.fragment };
if (!d.netLoc && (v.netLoc = f.netLoc, d.path[0] !== "/")) if (d.path) {
var m = f.path, E = m.substring(0, m.lastIndexOf("/") + 1) + d.path;
v.path = a.normalizePath(E);
} else v.path = f.path, d.params || (v.params = f.params, d.query || (v.query = f.query));
return v.path === null && (v.path = h.alwaysNormalize ? a.normalizePath(d.path) : d.path), a.buildURLFromParts(v);
}, parseURL: function(o) {
var l = e.exec(o);
return l ? { scheme: l[1] || "", netLoc: l[2] || "", path: l[3] || "", params: l[4] || "", query: l[5] || "", fragment: l[6] || "" } : null;
}, normalizePath: function(o) {
for (o = o.split("").reverse().join("").replace(r, ""); o.length !== (o = o.replace(i, "")).length; ) ;
return o.split("").reverse().join("");
}, buildURLFromParts: function(o) {
return o.scheme + o.netLoc + o.path + o.params + o.query + o.fragment;
} }, s.exports = a;
})(Vi);
var Ir = Vi.exports, N = Number.isFinite || function(s) {
return typeof s == "number" && isFinite(s);
}, us = Number.isSafeInteger || function(s) {
return typeof s == "number" && Math.abs(s) <= hs;
}, hs = Number.MAX_SAFE_INTEGER || 9007199254740991, p = (function(s) {
return s.MEDIA_ATTACHING = "hlsMediaAttaching", s.MEDIA_ATTACHED = "hlsMediaAttached", s.MEDIA_DETACHING = "hlsMediaDetaching", s.MEDIA_DETACHED = "hlsMediaDetached", s.BUFFER_RESET = "hlsBufferReset", s.BUFFER_CODECS = "hlsBufferCodecs", s.BUFFER_CREATED = "hlsBufferCreated", s.BUFFER_APPENDING = "hlsBufferAppending", s.BUFFER_APPENDED = "hlsBufferAppended", s.BUFFER_EOS = "hlsBufferEos", s.BUFFER_FLUSHING = "hlsBufferFlushing", s.BUFFER_FLUSHED = "hlsBufferFlushed", s.MANIFEST_LOADING = "hlsManifestLoading", s.MANIFEST_LOADED = "hlsManifestLoaded", s.MANIFEST_PARSED = "hlsManifestParsed", s.LEVEL_SWITCHING = "hlsLevelSwitching", s.LEVEL_SWITCHED = "hlsLevelSwitched", s.LEVEL_LOADING = "hlsLevelLoading", s.LEVEL_LOADED = "hlsLevelLoaded", s.LEVEL_UPDATED = "hlsLevelUpdated", s.LEVEL_PTS_UPDATED = "hlsLevelPtsUpdated", s.LEVELS_UPDATED = "hlsLevelsUpdated", s.AUDIO_TRACKS_UPDATED = "hlsAudioTracksUpdated", s.AUDIO_TRACK_SWITCHING = "hlsAudioTrackSwitching", s.AUDIO_TRACK_SWITCHED = "hlsAudioTrackSwitched", s.AUDIO_TRACK_LOADING = "hlsAudioTrackLoading", s.AUDIO_TRACK_LOADED = "hlsAudioTrackLoaded", s.SUBTITLE_TRACKS_UPDATED = "hlsSubtitleTracksUpdated", s.SUBTITLE_TRACKS_CLEARED = "hlsSubtitleTracksCleared", s.SUBTITLE_TRACK_SWITCH = "hlsSubtitleTrackSwitch", s.SUBTITLE_TRACK_LOADING = "hlsSubtitleTrackLoading", s.SUBTITLE_TRACK_LOADED = "hlsSubtitleTrackLoaded", s.SUBTITLE_FRAG_PROCESSED = "hlsSubtitleFragProcessed", s.CUES_PARSED = "hlsCuesParsed", s.NON_NATIVE_TEXT_TRACKS_FOUND = "hlsNonNativeTextTracksFound", s.INIT_PTS_FOUND = "hlsInitPtsFound", s.FRAG_LOADING = "hlsFragLoading", s.FRAG_LOAD_EMERGENCY_ABORTED = "hlsFragLoadEmergencyAborted", s.FRAG_LOADED = "hlsFragLoaded", s.FRAG_DECRYPTED = "hlsFragDecrypted", s.FRAG_PARSING_INIT_SEGMENT = "hlsFragParsingInitSegment", s.FRAG_PARSING_USERDATA = "hlsFragParsingUserdata", s.FRAG_PARSING_METADATA = "hlsFragParsingMetadata", s.FRAG_PARSED = "hlsFragParsed", s.FRAG_BUFFERED = "hlsFragBuffered", s.FRAG_CHANGED = "hlsFragChanged", s.FPS_DROP = "hlsFpsDrop", s.FPS_DROP_LEVEL_CAPPING = "hlsFpsDropLevelCapping", s.MAX_AUTO_LEVEL_UPDATED = "hlsMaxAutoLevelUpdated", s.ERROR = "hlsError", s.DESTROYING = "hlsDestroying", s.KEY_LOADING = "hlsKeyLoading", s.KEY_LOADED = "hlsKeyLoaded", s.LIVE_BACK_BUFFER_REACHED = "hlsLiveBackBufferReached", s.BACK_BUFFER_REACHED = "hlsBackBufferReached", s.STEERING_MANIFEST_LOADED = "hlsSteeringManifestLoaded", s;
})({}), K = (function(s) {
return s.NETWORK_ERROR = "networkError", s.MEDIA_ERROR = "mediaError", s.KEY_SYSTEM_ERROR = "keySystemError", s.MUX_ERROR = "muxError", s.OTHER_ERROR = "otherError", s;
})({}), I = (function(s) {
return s.KEY_SYSTEM_NO_KEYS = "keySystemNoKeys", s.KEY_SYSTEM_NO_ACCESS = "keySystemNoAccess", s.KEY_SYSTEM_NO_SESSION = "keySystemNoSession", s.KEY_SYSTEM_NO_CONFIGURED_LICENSE = "keySystemNoConfiguredLicense", s.KEY_SYSTEM_LICENSE_REQUEST_FAILED = "keySystemLicenseRequestFailed", s.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED = "keySystemServerCertificateRequestFailed", s.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED = "keySystemServerCertificateUpdateFailed", s.KEY_SYSTEM_SESSION_UPDATE_FAILED = "keySystemSessionUpdateFailed", s.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED = "keySystemStatusOutputRestricted", s.KEY_SYSTEM_STATUS_INTERNAL_ERROR = "keySystemStatusInternalError", s.MANIFEST_LOAD_ERROR = "manifestLoadError", s.MANIFEST_LOAD_TIMEOUT = "manifestLoadTimeOut", s.MANIFEST_PARSING_ERROR = "manifestParsingError", s.MANIFEST_INCOMPATIBLE_CODECS_ERROR = "manifestIncompatibleCodecsError", s.LEVEL_EMPTY_ERROR = "levelEmptyError", s.LEVEL_LOAD_ERROR = "levelLoadError", s.LEVEL_LOAD_TIMEOUT = "levelLoadTimeOut", s.LEVEL_PARSING_ERROR = "levelParsingError", s.LEVEL_SWITCH_ERROR = "levelSwitchError", s.AUDIO_TRACK_LOAD_ERROR = "audioTrackLoadError", s.AUDIO_TRACK_LOAD_TIMEOUT = "audioTrackLoadTimeOut", s.SUBTITLE_LOAD_ERROR = "subtitleTrackLoadError", s.SUBTITLE_TRACK_LOAD_TIMEOUT = "subtitleTrackLoadTimeOut", s.FRAG_LOAD_ERROR = "fragLoadError", s.FRAG_LOAD_TIMEOUT = "fragLoadTimeOut", s.FRAG_DECRYPT_ERROR = "fragDecryptError", s.FRAG_PARSING_ERROR = "fragParsingError", s.FRAG_GAP = "fragGap", s.REMUX_ALLOC_ERROR = "remuxAllocError", s.KEY_LOAD_ERROR = "keyLoadError", s.KEY_LOAD_TIMEOUT = "keyLoadTimeOut", s.BUFFER_ADD_CODEC_ERROR = "bufferAddCodecError", s.BUFFER_INCOMPATIBLE_CODECS_ERROR = "bufferIncompatibleCodecsError", s.BUFFER_APPEND_ERROR = "bufferAppendError", s.BUFFER_APPENDING_ERROR = "bufferAppendingError", s.BUFFER_STALLED_ERROR = "bufferStalledError", s.BUFFER_FULL_ERROR = "bufferFullError", s.BUFFER_SEEK_OVER_HOLE = "bufferSeekOverHole", s.BUFFER_NUDGE_ON_STALL = "bufferNudgeOnStall", s.INTERNAL_EXCEPTION = "internalException", s.INTERNAL_ABORTED = "aborted", s.UNKNOWN = "unknown", s;
})({}), it = function() {
}, Cr = { trace: it, debug: it, log: it, warn: it, info: it, error: it }, _t = Cr;
function ds(s) {
for (var n = arguments.length, e = new Array(n > 1 ? n - 1 : 0), t = 1; t < n; t++) e[t - 1] = arguments[t];
e.forEach((function(r) {
_t[r] = s[r] ? s[r].bind(s) : (function(i) {
var a = self.console[i];
return a ? a.bind(self.console, "[" + i + "] >") : it;
})(r);
}));
}
function Yi(s, n) {
if (typeof console == "object" && s === !0 || typeof s == "object") {
ds(s, "debug", "log", "info", "warn", "error");
try {
_t.log('Debug logs enabled for "' + n + '" in hls.js version 1.5.15');
} catch {
_t = Cr;
}
} else _t = Cr;
}
var k = _t, fs = /^(\d+)x(\d+)$/, Wi = /(.+?)=(".*?"|.*?)(?:,|$)/g, de = (function() {
function s(e) {
typeof e == "string" && (e = s.parseAttrList(e)), ge(this, e);
}
var n = s.prototype;
return n.decimalInteger = function(e) {
var t = parseInt(this[e], 10);
return t > Number.MAX_SAFE_INTEGER ? 1 / 0 : t;
}, n.hexadecimalInteger = function(e) {
if (this[e]) {
var t = (this[e] || "0x").slice(2);
t = (1 & t.length ? "0" : "") + t;
for (var r = new Uint8Array(t.length / 2), i = 0; i < t.length / 2; i++) r[i] = parseInt(t.slice(2 * i, 2 * i + 2), 16);
return r;
}
return null;
}, n.hexadecimalIntegerAsNumber = function(e) {
var t = parseInt(this[e], 16);
return t > Number.MAX_SAFE_INTEGER ? 1 / 0 : t;
}, n.decimalFloatingPoint = function(e) {
return parseFloat(this[e]);
}, n.optionalFloat = function(e, t) {
var r = this[e];
return r ? parseFloat(r) : t;
}, n.enumeratedString = function(e) {
return this[e];
}, n.bool = function(e) {
return this[e] === "YES";
}, n.decimalResolution = function(e) {
var t = fs.exec(this[e]);
if (t !== null) return { width: parseInt(t[1], 10), height: parseInt(t[2], 10) };
}, s.parseAttrList = function(e) {
var t, r = {};
for (Wi.lastIndex = 0; (t = Wi.exec(e)) !== null; ) {
var i = t[2];
i.indexOf('"') === 0 && i.lastIndexOf('"') === i.length - 1 && (i = i.slice(1, -1)), r[t[1].trim()] = i;
}
return r;
}, ce(s, [{ key: "clientAttrs", get: function() {
return Object.keys(this).filter((function(e) {
return e.substring(0, 2) === "X-";
}));
} }]), s;
})();
function cs(s) {
return s === "SCTE35-OUT" || s === "SCTE35-IN";
}
var ji = (function() {
function s(n, e) {
if (this.attr = void 0, this._startDate = void 0, this._endDate = void 0, this._badValueForSameId = void 0, e) {
var t = e.attr;
for (var r in t) if (Object.prototype.hasOwnProperty.call(n, r) && n[r] !== t[r]) {
k.warn('DATERANGE tag attribute: "' + r + '" does not match for tags with ID: "' + n.ID + '"'), this._badValueForSameId = r;
break;
}
n = ge(new de({}), t, n);
}
if (this.attr = n, this._startDate = new Date(n["START-DATE"]), "END-DATE" in this.attr) {
var i = new Date(this.attr["END-DATE"]);
N(i.getTime()) && (this._endDate = i);
}
}
return ce(s, [{ key: "id", get: function() {
return this.attr.ID;
} }, { key: "class", get: function() {
return this.attr.CLASS;
} }, { key: "startDate", get: function() {
return this._startDate;
} }, { key: "endDate", get: function() {
if (this._endDate) return this._endDate;
var n = this.duration;
return n !== null ? new Date(this._startDate.getTime() + 1e3 * n) : null;
} }, { key: "duration", get: function() {
if ("DURATION" in this.attr) {
var n = this.attr.decimalFloatingPoint("DURATION");
if (N(n)) return n;
} else if (this._endDate) return (this._endDate.getTime() - this._startDate.getTime()) / 1e3;
return null;
} }, { key: "plannedDuration", get: function() {
return "PLANNED-DURATION" in this.attr ? this.attr.decimalFloatingPoint("PLANNED-DURATION") : null;
} }, { key: "endOnNext", get: function() {
return this.attr.bool("END-ON-NEXT");
} }, { key: "isValid", get: function() {
return !!this.id && !this._badValueForSameId && N(this.startDate.getTime()) && (this.duration === null || this.duration >= 0) && (!this.endOnNext || !!this.class);
} }]), s;
})(), jt = function() {
this.aborted = !1, this.loaded = 0, this.retry = 0, this.total = 0, this.chunkCount = 0, this.bwEstimate = 0, this.loading = { start: 0, first: 0, end: 0 }, this.parsing = { start: 0, end: 0 }, this.buffering = { start: 0, first: 0, end: 0 };
}, we = "audio", Pe = "video", _r = "audiovideo", qi = (function() {
function s(n) {
var e;
this._byteRange = null, this._url = null, this.baseurl = void 0, this.relurl = void 0, this.elementaryStreams = ((e = {})[we] = null, e[Pe] = null, e[_r] = null, e), this.baseurl = n;
}
return s.prototype.setByteRange = function(n, e) {
var t, r = n.split("@", 2);
t = r.length === 1 ? e?.byteRangeEndOffset || 0 : parseInt(r[1]), this._byteRange = [t, parseInt(r[0]) + t];
}, ce(s, [{ key: "byteRange", get: function() {
return this._byteRange ? this._byteRange : [];
} }, { key: "byteRangeStartOffset", get: function() {
return this.byteRange[0];
} }, { key: "byteRangeEndOffset", get: function() {
return this.byteRange[1];
} }, { key: "url", get: function() {
return !this._url && this.baseurl && this.relurl && (this._url = Ir.buildAbsoluteURL(this.baseurl, this.relurl, { alwaysNormalize: !0 })), this._url || "";
}, set: function(n) {
this._url = n;
} }]), s;
})(), xr = (function(s) {
function n(t, r) {
var i;
return (i = s.call(this, r) || this)._decryptdata = null, i.rawProgramDateTime = null, i.programDateTime = null, i.tagList = [], i.duration = 0, i.sn = 0, i.levelkeys = void 0, i.type = void 0, i.loader = null, i.keyLoader = null, i.level = -1, i.cc = 0, i.startPTS = void 0, i.endPTS = void 0, i.startDTS = void 0, i.endDTS = void 0, i.start = 0, i.deltaPTS = void 0, i.maxStartPTS = void 0, i.minEndPTS = void 0, i.stats = new jt(), i.data = void 0, i.bitrateTest = !1, i.title = null, i.initSegment = null, i.endList = void 0, i.gap = void 0, i.urlId = 0, i.type = t, i;
}
Le(n, s);
var e = n.prototype;
return e.setKeyFormat = function(t) {
if (this.levelkeys) {
var r = this.levelkeys[t];
r && !this._decryptdata && (this._decryptdata = r.getDecryptData(this.sn));
}
}, e.abortRequests = function() {
var t, r;
(t = this.loader) == null || t.abort(), (r = this.keyLoader) == null || r.abort();
}, e.setElementaryStreamInfo = function(t, r, i, a, o, l) {
l === void 0 && (l = !1);
var h = this.elementaryStreams, u = h[t];
u ? (u.startPTS = Math.min(u.startPTS, r), u.endPTS = Math.max(u.endPTS, i), u.startDTS = Math.min(u.startDTS, a), u.endDTS = Math.max(u.endDTS, o)) : h[t] = { startPTS: r, endPTS: i, startDTS: a, endDTS: o, partial: l };
}, e.clearElementaryStreamInfo = function() {
var t = this.elementaryStreams;
t[we] = null, t[Pe] = null, t[_r] = null;
}, ce(n, [{ key: "decryptdata", get: function() {
if (!this.levelkeys && !this._decryptdata) return null;
if (!this._decryptdata && this.levelkeys && !this.levelkeys.NONE) {
var t = this.levelkeys.identity;
if (t) this._decryptdata = t.getDecryptData(this.sn);
else {
var r = Object.keys(this.levelkeys);
if (r.length === 1) return this._decryptdata = this.levelkeys[r[0]].getDecryptData(this.sn);
}
}
return this._decryptdata;
} }, { key: "end", get: function() {
return this.start + this.duration;
} }, { key: "endProgramDateTime", get: function() {
if (this.programDateTime === null || !N(this.programDateTime)) return null;
var t = N(this.duration) ? this.duration : 0;
return this.programDateTime + 1e3 * t;
} }, { key: "encrypted", get: function() {
var t;
if ((t = this._decryptdata) != null && t.encrypted) return !0;
if (this.levelkeys) {
var r = Object.keys(this.levelkeys), i = r.length;
if (i > 1 || i === 1 && this.levelkeys[r[0]].encrypted) return !0;
}
return !1;
} }]), n;
})(qi), gs = (function(s) {
function n(e, t, r, i, a) {
var o;
(o = s.call(this, r) || this).fragOffset = 0, o.duration = 0, o.gap = !1, o.independent = !1, o.relurl = void 0, o.fragment = void 0, o.index = void 0, o.stats = new jt(), o.duration = e.decimalFloatingPoint("DURATION"), o.gap = e.bool("GAP"), o.independent = e.bool("INDEPENDENT"), o.relurl = e.enumeratedString("URI"), o.fragment = t, o.index = i;
var l = e.enumeratedString("BYTERANGE");
return l && o.setByteRange(l, a), a && (o.fragOffset = a.fragOffset + a.duration), o;
}
return Le(n, s), ce(n, [{ key: "start", get: function() {
return this.fragment.start + this.fragOffset;
} }, { key: "end", get: function() {
return this.start + this.duration;
} }, { key: "loaded", get: function() {
var e = this.elementaryStreams;
return !!(e.audio || e.video || e.audiovideo);
} }]), n;
})(qi), vs = (function() {
function s(n) {
this.PTSKnown = !1, this.alignedSliding = !1, this.averagetargetduration = void 0, this.endCC = 0, this.endSN = 0, this.fragments = void 0, this.fragmentHint = void 0, this.partList = null, this.dateRanges = void 0, this.live = !0, this.ageHeader = 0, this.advancedDateTime = void 0, this.updated = !0, this.advanced = !0, this.availabilityDelay = void 0, this.misses = 0, this.startCC = 0, this.startSN = 0, this.startTimeOffset = null, this.targetduration = 0, this.totalduration = 0, this.type = null, this.url = void 0, this.m3u8 = "", this.version = null, this.canBlockReload = !1, this.canSkipUntil = 0, this.canSkipDateRanges = !1, this.skippedSegments = 0, this.recentlyRemovedDateranges = void 0, this.partHoldBack = 0, this.holdBack = 0, this.partTarget = 0, this.preloadHint = void 0, this.renditionReports = void 0, this.tuneInGoal = 0, this.deltaUpdateFailed = void 0, this.driftStartTime = 0, this.driftEndTime = 0, this.driftStart = 0, this.driftEnd = 0, this.encryptedFragments = void 0, this.playlistParsingError = null, this.variableList = null, this.hasVariableRefs = !1, this.fragments = [], this.encryptedFragments = [], this.dateRanges = {}, this.url = n;
}
return s.prototype.reloaded = function(n) {
if (!n) return this.advanced = !0, void (this.updated = !0);
var e = this.lastPartSn - n.lastPartSn, t = this.lastPartIndex - n.lastPartIndex;
this.updated = this.endSN !== n.endSN || !!t || !!e || !this.live, this.advanced = this.endSN > n.endSN || e > 0 || e === 0 && t > 0, this.updated || this.advanced ? this.misses = Math.floor(0.6 * n.misses) : this.misses = n.misses + 1, this.availabilityDelay = n.availabilityDelay;
}, ce(s, [{ key: "hasProgramDateTime", get: function() {
return !!this.fragments.length && N(this.fragments[this.fragments.length - 1].programDateTime);
} }, { key: "levelTargetDuration", get: function() {
return this.averagetargetduration || this.targetduration || 10;
} }, { key: "drift", get: function() {
var n = this.driftEndTime - this.driftStartTime;
return n > 0 ? 1e3 * (this.driftEnd - this.driftStart) / n : 1;
} }, { key: "edge", get: function() {
return this.partEnd || this.fragmentEnd;
} }, { key: "partEnd", get: function() {
var n;
return (n = this.partList) != null && n.length ? this.partList[this.partList.length - 1].end : this.fragmentEnd;
} }, { key: "fragmentEnd", get: function() {
var n;
return (n = this.fragments) != null && n.length ? this.fragments[this.fragments.length - 1].end : 0;
} }, { key: "age", get: function() {
return this.advancedDateTime ? Math.max(Date.now() - this.advancedDateTime, 0) / 1e3 : 0;
} }, { key: "lastPartIndex", get: function() {
var n;
return (n = this.partList) != null && n.length ? this.partList[this.partList.length - 1].index : -1;
} }, { key: "lastPartSn", get: function() {
var n;
return (n = this.partList) != null && n.length ? this.partList[this.partList.length - 1].fragment.sn : this.endSN;
} }]), s;
})();
function Pr(s) {
return Uint8Array.from(atob(s), (function(n) {
return n.charCodeAt(0);
}));
}
function ms(s) {
var n, e, t = s.split(":"), r = null;
if (t[0] === "data" && t.length === 2) {
var i = t[1].split(";"), a = i[i.length - 1].split(",");
if (a.length === 2) {
var o = a[0] === "base64", l = a[1];
o ? (i.splice(-1, 1), r = Pr(l)) : (n = Fr(l).subarray(0, 16), (e = new Uint8Array(16)).set(n, 16 - n.length), r = e);
}
}
return r;
}
function Fr(s) {
return Uint8Array.from(unescape(encodeURIComponent(s)), (function(n) {
return n.charCodeAt(0);
}));
}
var ft = typeof self < "u" ? self : void 0, ae = { CLEARKEY: "org.w3.clearkey", FAIRPLAY: "com.apple.fps", PLAYREADY: "com.microsoft.playready", WIDEVINE: "com.widevine.alpha" }, Mr = "org.w3.clearkey", Or = "com.apple.streamingkeydelivery", qt = "com.microsoft.playready", Xt = "urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed";
function Xi(s) {
switch (s) {
case Or:
return ae.FAIRPLAY;
case qt:
return ae.PLAYREADY;
case Xt:
return ae.WIDEVINE;
case Mr:
return ae.CLEARKEY;
}
}
var ps = "1077efecc0b24d02ace33c1e52e2fb4b", ys = "e2719d58a985b3c9781ab030af78d30e", Es = "9a04f07998404286ab92e65be0885f95", zi = "edef8ba979d64acea3c827dcd51d21ed";
function Qi(s) {
return s === zi ? ae.WIDEVINE : s === Es ? ae.PLAYREADY : s === ps || s === ys ? ae.CLEARKEY : void 0;
}
function Ji(s) {
switch (s) {
case ae.FAIRPLAY:
return Or;
case ae.PLAYREADY:
return qt;
case ae.WIDEVINE:
return Xt;
case ae.CLEARKEY:
return Mr;
}
}
function Nr(s) {
var n = s.drmSystems, e = s.widevineLicenseUrl, t = n ? [ae.FAIRPLAY, ae.WIDEVINE, ae.PLAYREADY, ae.CLEARKEY].filter((function(r) {
return !!n[r];
})) : [];
return !t[ae.WIDEVINE] && e && t.push(ae.WIDEVINE), t;
}
var $i, Zi = ft != null && ($i = ft.navigator) != null && $i.requestMediaKeySystemAccess ? self.navigator.requestMediaKeySystemAccess.bind(self.navigator) : null;
function nt(s, n, e) {
return Uint8Array.prototype.slice ? s.slice(n, e) : new Uint8Array(Array.prototype.slice.call(s, n, e));
}
var Ur, Br = function(s, n) {
return n + 10 <= s.length && s[n] === 73 && s[n + 1] === 68 && s[n + 2] === 51 && s[n + 3] < 255 && s[n + 4] < 255 && s[n + 6] < 128 && s[n + 7] < 128 && s[n + 8] < 128 && s[n + 9] < 128;
}, en = function(s, n) {
return n + 10 <= s.length && s[n] === 51 && s[n + 1] === 68 && s[n + 2] === 73 && s[n + 3] < 255 && s[n + 4] < 255 && s[n + 6] < 128 && s[n + 7] < 128 && s[n + 8] < 128 && s[n + 9] < 128;
}, xt = function(s, n) {
for (var e = n, t = 0; Br(s, n); ) t += 10, t += zt(s, n + 6), en(s, n + 10) && (t += 10), n += t;
if (t > 0) return s.subarray(e, e + t);
}, zt = function(s, n) {
var e = 0;
return e = (127 & s[n]) << 21, e |= (127 & s[n + 1]) << 14, e |= (127 & s[n + 2]) << 7, e |= 127 & s[n + 3];
}, Ts = function(s, n) {
return Br(s, n) && zt(s, n + 6) + 10 <= s.length - n;
}, Gr = function(s) {
for (var n = rn(s), e = 0; e < n.length; e++) {
var t = n[e];
if (tn(t)) return bs(t);
}
}, tn = function(s) {
return s && s.key === "PRIV" && s.info === "com.apple.streaming.transportStreamTimestamp";
}, Ss = function(s) {
var n = String.fromCharCode(s[0], s[1], s[2], s[3]), e = zt(s, 4);
return { type: n, size: e, data: s.subarray(10, 10 + e) };
}, rn = function(s) {
for (var n = 0, e = []; Br(s, n); ) {
for (var t = zt(s, n + 6), r = (n += 10) + t; n + 8 < r; ) {
var i = Ss(s.subarray(n)), a = Ls(i);
a && e.push(a), n += i.size + 10;
}
en(s, n) && (n += 10);
}
return e;
}, Ls = function(s) {
return s.type === "PRIV" ? As(s) : s.type[0] === "W" ? ks(s) : Rs(s);
}, As = function(s) {
if (!(s.size < 2)) {
var n = Ge(s.data, !0), e = new Uint8Array(s.data.subarray(n.length + 1));
return { key: s.type, info: n, data: e.buffer };
}
}, Rs = function(s) {
if (!(s.size < 2)) {
if (s.type === "TXXX") {
var n = 1, e = Ge(s.data.subarray(n), !0);
n += e.length + 1;
var t = Ge(s.data.subarray(n));
return { key: s.type, info: e, data: t };
}
var r = Ge(s.data.subarray(1));
return { key: s.type, data: r };
}
}, ks = function(s) {
if (s.type === "WXXX") {
if (s.size < 2) return;
var n = 1, e = Ge(s.data.subarray(n), !0);
n += e.length + 1;
var t = Ge(s.data.subarray(n));
return { key: s.type, info: e, data: t };
}
var r = Ge(s.data);
return { key: s.type, data: r };
}, bs = function(s) {
if (s.data.byteLength === 8) {
var n = new Uint8Array(s.data), e = 1 & n[3], t = (n[4] << 23) + (n[5] << 15) + (n[6] << 7) + n[7];
return t /= 45, e && (t += 4772185884e-2), Math.round(t);
}
}, Ge = function(s, n) {
n === void 0 && (n = !1);
var e = Ds();
if (e) {
var t = e.decode(s);
if (n) {
var r = t.indexOf("\0");
return r !== -1 ? t.substring(0, r) : t;
}
return t.replace(/\0/g, "");
}
for (var i, a, o, l = s.length, h = "", u = 0; u < l; ) {
if ((i = s[u++]) === 0 && n) return h;
if (i !== 0 && i !== 3) switch (i >> 4) {
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
h += String.fromCharCode(i);
break;
case 12:
case 13:
a = s[u++], h += String.fromCharCode((31 & i) << 6 | 63 & a);
break;
case 14:
a = s[u++], o = s[u++], h += String.fromCharCode((15 & i) << 12 | (63 & a) << 6 | (63 & o) << 0);
}
}
return h;
};
function Ds() {
if (!navigator.userAgent.includes("PlayStation 4")) return Ur || self.TextDecoder === void 0 || (Ur = new self.TextDecoder("utf-8")), Ur;
}
var Ke = { hexDump: function(s) {
for (var n = "", e = 0; e < s.length; e++) {
var t = s[e].toString(16);
t.length < 2 && (t = "0" + t), n += t;
}
return n;
} }, Qt = Math.pow(2, 32) - 1, ws = [].push, nn = { video: 1, audio: 2, id3: 3, text: 4 };
function me(s) {
return String.fromCharCode.apply(null, s);
}
function an(s, n) {
var e = s[n] << 8 | s[n + 1];
return e < 0 ? 65536 + e : e;
}
function H(s, n) {
var e = on(s, n);
return e < 0 ? 4294967296 + e : e;
}
function sn(s, n) {
var e = H(s, n);
return e *= Math.pow(2, 32), e += H(s, n + 4);
}
function on(s, n) {
return s[n] << 24 | s[n + 1] << 16 | s[n + 2] << 8 | s[n + 3];
}
function Kr(s, n, e) {
s[n] = e >> 24, s[n + 1] = e >> 16 & 255, s[n + 2] = e >> 8 & 255, s[n + 3] = 255 & e;
}
function q(s, n) {
var e = [];
if (!n.length) return e;
for (var t = s.byteLength, r = 0; r < t; ) {
var i = H(s, r), a = i > 1 ? r + i : t;
if (me(s.subarray(r + 4, r + 8)) === n[0]) if (n.length === 1) e.push(s.subarray(r + 8, a));
else {
var o = q(s.subarray(r + 8, a), n.slice(1));
o.length && ws.apply(e, o);
}
r = a;
}
return e;
}
function Is(s) {
var n = [], e = s[0], t = 8, r = H(s, t);
t += 4;
var i = 0, a = 0;
e === 0 ? (i = H(s, t), a = H(s, t + 4), t += 8) : (i = sn(s, t), a = sn(s, t + 8), t += 16), t += 2;
var o = s.length + a, l = an(s, t);
t += 2;
for (var h = 0; h < l; h++) {
var u = t, d = H(s, u);
u += 4;
var f = 2147483647 & d;
if ((2147483648 & d) >>> 31 == 1) return k.warn("SIDX has hierarchical references (not supported)"), null;
var c = H(s, u);
u += 4, n.push({ referenceSize: f, subsegmentDuration: c, info: { duration: c / r, start: o, end: o + f - 1 } }), o += f, t = u += 4;
}
return { earliestPresentationTime: i, timescale: r, version: e, referencesCount: l, references: n };
}
function ln(s) {
for (var n = [], e = q(s, ["moov", "trak"]), t = 0; t < e.length; t++) {
var r = e[t], i = q(r, ["tkhd"])[0];
if (i) {
var a = i[0], o = H(i, a === 0 ? 12 : 20), l = q(r, ["mdia", "mdhd"])[0];
if (l) {
var h = H(l, (a = l[0]) === 0 ? 12 : 20), u = q(r, ["mdia", "hdlr"])[0];
if (u) {
var d = me(u.subarray(8, 12)), f = { soun: we, vide: Pe }[d];
if (f) {
var c = Cs(q(r, ["mdia", "minf", "stbl", "stsd"])[0]);
n[o] = { timescale: h, type: f }, n[f] = ye({ timescale: h, id: o }, c);
}
}
}
}
}
return q(s, ["moov", "mvex", "trex"]).forEach((function(v) {
var m = H(v, 4), E = n[m];
E && (E.default = { duration: H(v, 12), flags: H(v, 20) });
})), n;
}
function Cs(s) {
var n = s.subarray(8), e = n.subarray(86), t = me(n.subarray(4, 8)), r = t, i = t === "enca" || t === "encv";
if (i) {
var a = q(n, [t])[0];
q(a.subarray(t === "enca" ? 28 : 78), ["sinf"]).forEach((function(Y) {
var z = q(Y, ["schm"])[0];
if (z) {
var j = me(z.subarray(4, 8));
if (j === "cbcs" || j === "cenc") {
var re = q(Y, ["frma"])[0];
re && (r = me(re));
}
}
}));
}
switch (r) {
case "avc1":
case "avc2":
case "avc3":
case "avc4":
var o = q(e, ["avcC"])[0];
r += "." + Jt(o[1]) + Jt(o[2]) + Jt(o[3]);
break;
case "mp4a":
var l = q(n, [t])[0], h = q(l.subarray(28), ["esds"])[0];
if (h && h.length > 12) {
var u = 4;
if (h[u++] !== 3) break;
u = Hr(h, u), u += 2;
var d = h[u++];
if (128 & d && (u += 2), 64 & d && (u += h[u++]), h[u++] !== 4) break;
u = Hr(h, u);
var f = h[u++];
if (f !== 64 || (r += "." + Jt(f), u += 12, h[u++] !== 5)) break;
u = Hr(h, u);
var c = h[u++], v = (248 & c) >> 3;
v === 31 && (v += 1 + ((7 & c) << 3) + ((224 & h[u]) >> 5)), r += "." + v;
}
break;
case "hvc1":
case "hev1":
var m = q(e, ["hvcC"])[0], E = m[1], g = ["", "A", "B", "C"][E >> 6], y = 31 & E, T = H(m, 2), S = (32 & E) >> 5 ? "H" : "L", R = m[12], A = m.subarray(6, 12);
r += "." + g + y, r += "." + T.toString(16).toUpperCase(), r += "." + S + R;
for (var L = "", D = A.length; D--; ) {
var b = A[D];
(b || L) && (L = "." + b.toString(16).toUpperCase() + L);
}
r += L;
break;
case "dvh1":
case "dvhe":
var w = q(e, ["dvcC"])[0], C = w[2] >> 1 & 127, _ = w[2] << 5 & 32 | w[3] >> 3 & 31;
r += "." + He(C) + "." + He(_);
break;
case "vp09":
var x = q(e, ["vpcC"])[0], F = x[4], M = x[5], U = x[6] >> 4 & 15;
r += "." + He(F) + "." + He(M) + "." + He(U);
break;
case "av01":
var P = q(e, ["av1C"])[0], O = P[1] >>> 5, B = 31 & P[1], G = P[2] >>> 7 ? "H" : "M", V = (64 & P[2]) >> 6, Q = (32 & P[2]) >> 5, oe = O === 2 && V ? Q ? 12 : 10 : V ? 10 : 8, ee = (16 & P[2]) >> 4, fe = (8 & P[2]) >> 3, se = (4 & P[2]) >> 2, te = 3 & P[2];
r += "." + O + "." + He(B) + G + "." + He(oe) + "." + ee + "." + fe + se + te + "." + He(1) + "." + He(1) + "." + He(1) + ".0";
}
return { codec: r, encrypted: i };
}
function Hr(s, n) {
for (var e = n + 5; 128 & s[n++] && n < e; ) ;
return n;
}
function Jt(s) {
return ("0" + s.toString(16).toUpperCase()).slice(-2);
}
function He(s) {
return (s < 10 ? "0" : "") + s;
}
function un(s) {
var n = q(s, ["schm"])[0];
if (n) {
var e = me(n.subarray(4, 8));
if (e === "cbcs" || e === "cenc") return q(s, ["schi", "tenc"])[0];
}
return null;
}
function _s(s) {
var n = H(s, 0), e = 8;
1 & n && (e += 4), 4 & n && (e += 4);
for (var t = 0, r = H(s, 4), i = 0; i < r; i++) 256 & n && (t += H(s, e), e += 4), 512 & n && (e += 4), 1024 & n && (e += 4), 2048 & n && (e += 4);
return t;
}
function Fe(s, n) {
var e = new Uint8Array(s.length + n.length);
return e.set(s), e.set(n, s.length), e;
}
function hn(s, n) {
var e = [], t = n.samples, r = n.timescale, i = n.id, a = !1;
return q(t, ["moof"]).map((function(o) {
var l = o.byteOffset - 8;
q(o, ["traf"]).map((function(h) {
var u = q(h, ["tfdt"]).map((function(d) {
var f = d[0], c = H(d, 4);
return f === 1 && (c *= Math.pow(2, 32), c += H(d, 8)), c / r;
}))[0];
return u !== void 0 && (s = u), q(h, ["tfhd"]).map((function(d) {
var f = H(d, 4), c = 16777215 & H(d, 0), v = 0, m = (16 & c) != 0, E = 0, g = (32 & c) != 0, y = 8;
f === i && ((1 & c) != 0 && (y += 8), (2 & c) != 0 && (y += 4), (8 & c) != 0 && (v = H(d, y), y += 4), m && (E = H(d, y), y += 4), g && (y += 4), n.type === "video" && (a = (function(T) {
if (!T) return !1;
var S = T.indexOf("."), R = S < 0 ? T : T.substring(0, S);
return R === "hvc1" || R === "hev1" || R === "dvh1" || R === "dvhe";
})(n.codec)), q(h, ["trun"]).map((function(T) {
var S = T[0], R = 16777215 & H(T, 0), A = (1 & R) != 0, L = 0, D = (4 & R) != 0, b = (256 & R) != 0, w = 0, C = (512 & R) != 0, _ = 0, x = (1024 & R) != 0, F = (2048 & R) != 0, M = 0, U = H(T, 4), P = 8;
A && (L = H(T, P), P += 4), D && (P += 4);
for (var O = L + l, B = 0; B < U; B++) {
if (b ? (w = H(T, P), P += 4) : w = v, C ? (_ = H(T, P), P += 4) : _ = E, x && (P += 4), F && (M = S === 0 ? H(T, P) : on(T, P), P += 4), n.type === Pe) for (var G = 0; G < _; ) {
var V = H(t, O);
xs(a, t[O += 4]) && dn(t.subarray(O, O + V), a ? 2 : 1, s + M / r, e), O += V, G += V + 4;
}
s += w / r;
}
})));
}));
}));
})), e;
}
function xs(s, n) {
if (s) {
var e = n >> 1 & 63;
return e === 39 || e === 40;
}
return (31 & n) == 6;
}
function dn(s, n, e, t) {
var r = fn(s), i = 0;
i += n;
for (var a = 0, o = 0, l = 0; i < r.length; ) {
a = 0;
do {
if (i >= r.length) break;
a += l = r[i++];
} while (l === 255);
o = 0;
do {
if (i >= r.length) break;
o += l = r[i++];
} while (l === 255);
var h = r.length - i, u = i;
if (o < h) i += o;
else if (o > h) {
k.error("Malformed SEI payload. " + o + " is too small, only " + h + " bytes left to parse.");
break;
}
if (a === 4) {
if (r[u++] === 181) {
var d = an(r, u);
if (u += 2, d === 49) {
var f = H(r, u);
if (u += 4, f === 1195456820) {
var c = r[u++];
if (c === 3) {
var v = r[u++], m = 64 & v, E = m ? 2 + 3 * (31 & v) : 0, g = new Uint8Array(E);
if (m) {
g[0] = v;
for (var y = 1; y < E; y++) g[y] = r[u++];
}
t.push({ type: c, payloadType: a, pts: e, bytes: g });
}
}
}
}
} else if (a === 5 && o > 16) {
for (var T = [], S = 0; S < 16; S++) {
var R = r[u++].toString(16);
T.push(R.length == 1 ? "0" + R : R), S !== 3 && S !== 5 && S !== 7 && S !== 9 || T.push("-");
}
for (var A = o - 16, L = new Uint8Array(A), D = 0; D < A; D++) L[D] = r[u++];
t.push({ payloadType: a, pts: e, uuid: T.join(""), userData: Ge(L), userDataBytes: L });
}
}
}
function fn(s) {
for (var n = s.byteLength, e = [], t = 1; t < n - 2; ) s[t] === 0 && s[t + 1] === 0 && s[t + 2] === 3 ? (e.push(t + 2), t += 2) : t++;
if (e.length === 0) return s;
var r = n - e.length, i = new Uint8Array(r), a = 0;
for (t = 0; t < r; a++, t++) a === e[0] && (a++, e.shift()), i[t] = s[a];
return i;
}
function Ps(s, n, e) {
if (s.byteLength !== 16) throw new RangeError("Invalid system id");
var t, r, i;
t = 0, r = new Uint8Array(), t > 0 ? (i = new Uint8Array(4), n.length > 0 && new DataView(i.buffer).setUint32(0, n.length, !1)) : i = new Uint8Array();
var a = new Uint8Array(4);
return e && e.byteLength > 0 && new DataView(a.buffer).setUint32(0, e.byteLength, !1), (function(o) {
for (var l = arguments.length, h = new Array(l > 1 ? l - 1 : 0), u = 1; u < l; u++) h[u - 1] = arguments[u];
for (var d = h.length, f = 8, c = d; c--; ) f += h[c].byteLength;
var v = new Uint8Array(f);
for (v[0] = f >> 24 & 255, v[1] = f >> 16 & 255, v[2] = f >> 8 & 255, v[3] = 255 & f, v.set(o, 4), c = 0, f = 8; c < d; c++) v.set(h[c], f), f += h[c].byteLength;
return v;
})([112, 115, 115, 104], new Uint8Array([t, 0, 0, 0]), s, i, r, a, e || new Uint8Array());
}
function Fs(s) {
var n = s.getUint32(0), e = s.byteOffset, t = s.byteLength;
if (t < n) return { offset: e, size: t };
if (s.getUint32(4) !== 1886614376) return { offset: e, size: n };
var r = s.getUint32(8) >>> 24;
if (r !== 0 && r !== 1) return { offset: e, size: n };
var i = s.buffer, a = Ke.hexDump(new Uint8Array(i, e + 12, 16)), o = s.getUint32(28), l = null, h = null;
if (r === 0) {
if (n - 32 < o || o < 22) return { offset: e, size: n };
h = new Uint8Array(i, e + 32, o);
} else if (r === 1) {
if (!o || t < e + 32 + 16 * o + 16) return { offset: e, size: n };
l = [];
for (var u = 0; u < o; u++) l.push(new Uint8Array(i, e + 32 + 16 * u, 16));
}
return { version: r, systemId: a, kids: l, data: h, offset: e, size: n };
}
var $t = {}, Vr = (function() {
function s(e, t, r, i, a) {
i === void 0 && (i = [1]), a === void 0 && (a = null), this.uri = void 0, this.method = void 0, this.keyFormat = void 0, this.keyFormatVersions = void 0, this.encrypted = void 0, this.isCommonEncryption = void 0, this.iv = null, this.key = null, this.keyId = null, this.pssh = null, this.method = e, this.uri = t, this.keyFormat = r, this.keyFormatVersions = i, this.iv = a, this.encrypted = !!e && e !== "NONE", this.isCommonEncryption = this.encrypted && e !== "AES-128";
}
s.clearKeyUriToKeyIdMap = function() {
$t = {};
};
var n = s.prototype;
return n.isSupported = function() {
if (this.method) {
if (this.method === "AES-128" || this.method === "NONE") return !0;
if (this.keyFormat === "identity") return this.method === "SAMPLE-AES";
switch (this.keyFormat) {
case Or:
case Xt:
case qt:
case Mr:
return ["ISO-23001-7", "SAMPLE-AES", "SAMPLE-AES-CENC", "SAMPLE-AES-CTR"].indexOf(this.method) !== -1;
}
}
return !1;
}, n.getDecryptData = function(e) {
if (!this.encrypted || !this.uri) return null;
if (this.method === "AES-128" && this.uri && !this.iv) {
typeof e != "number" && (this.method !== "AES-128" || this.iv || k.warn('missing IV for initialization segment with method="' + this.method + '" - compliance issue'), e = 0);
var t = (function(E) {
for (var g = new Uint8Array(16), y = 12; y < 16; y++) g[y] = E >> 8 * (15 - y) & 255;
return g;
})(e);
return new s(this.method, this.uri, "identity", this.keyFormatVersions, t);
}
var r = ms(this.uri);
if (r) switch (this.keyFormat) {
case Xt:
this.pssh = r, r.length >= 22 && (this.keyId = r.subarray(r.length - 22, r.length - 6));
break;
case qt:
var i = new Uint8Array([154, 4, 240, 121, 152, 64, 66, 134, 171, 146, 230, 91, 224, 136, 95, 149]);
this.pssh = Ps(i, null, r);
var a = new Uint16Array(r.buffer, r.byteOffset, r.byteLength / 2), o = String.fromCharCode.apply(null, Array.from(a)), l = o.substring(o.indexOf("<"), o.length), h = new DOMParser().parseFromString(l, "text/xml").getElementsByTagName("KID")[0];
if (h) {
var u = h.childNodes[0] ? h.childNodes[0].nodeValue : h.getAttribute("VALUE");
if (u) {
var d = Pr(u).subarray(0, 16);
(function(E) {
var g = function(y, T, S) {
var R = y[T];
y[T] = y[S], y[S] = R;
};
g(E, 0, 3), g(E, 1, 2), g(E, 4, 5), g(E, 6, 7);
})(d), this.keyId = d;
}
}
break;
default:
var f = r.subarray(0, 16);
if (f.length !== 16) {
var c = new Uint8Array(16);
c.set(f, 16 - f.length), f = c;
}
this.keyId = f;
}
if (!this.keyId || this.keyId.byteLength !== 16) {
var v = $t[this.uri];
if (!v) {
var m = Object.keys($t).length % Number.MAX_SAFE_INTEGER;
v = new Uint8Array(16), new DataView(v.buffer, 12, 4).setUint32(0, m), $t[this.uri] = v;
}
this.keyId = v;
}
return this;
}, s;
})(), cn = /\{\$([a-zA-Z0-9-_]+)\}/g;
function gn(s) {
return cn.test(s);
}
function Ie(s, n, e) {
if (s.variableList !== null || s.hasVariableRefs) for (var t = e.length; t--; ) {
var r = e[t], i = n[r];
i && (n[r] = Yr(s, i));
}
}
function Yr(s, n) {
if (s.variableList !== null || s.hasVariableRefs) {
var e = s.variableList;
return n.replace(cn, (function(t) {
var r = t.substring(2, t.length - 1), i = e?.[r];
return i === void 0 ? (s.playlistParsingError || (s.playlistParsingError = new Error('Missing preceding EXT-X-DEFINE tag for Variable Reference: "' + r + '"')), t) : i;
}));
}
return n;
}
function vn(s, n, e) {
var t, r, i = s.variableList;
if (i || (s.variableList = i = {}), "QUERYPARAM" in n) {
t = n.QUERYPARAM;
try {
var a = new self.URL(e).searchParams;
if (!a.has(t)) throw new Error('"' + t + '" does not match any query parameter in URI: "' + e + '"');
r = a.get(t);
} catch (o) {
s.playlistParsingError || (s.playlistParsingError = new Error("EXT-X-DEFINE QUERYPARAM: " + o.message));
}
} else t = n.NAME, r = n.VALUE;
t in i ? s.playlistParsingError || (s.playlistParsingError = new Error('EXT-X-DEFINE duplicate Variable Name declarations: "' + t + '"')) : i[t] = r || "";
}
function Ms(s, n, e) {
var t = n.IMPORT;
if (e && t in e) {
var r = s.variableList;
r || (s.variableList = r = {}), r[t] = e[t];
} else s.playlistParsingError || (s.playlistParsingError = new Error('EXT-X-DEFINE IMPORT attribute not found in Multivariant Playlist: "' + t + '"'));
}
function at(s) {
if (s === void 0 && (s = !0), typeof self < "u") return (s || !self.MediaSource) && self.ManagedMediaSource || self.MediaSource || self.WebKitMediaSource;
}
var Zt = { audio: { a3ds: 1, "ac-3": 0.95, "ac-4": 1, a