@bitmovin/player-web-x 10.1.1 → 10.1.2
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/bundles/playerx-bitmovin-v8-core.js +2 -2
- package/bundles/playerx-bitmovin-v8.js +2 -2
- package/bundles/playerx-core.js +2 -2
- package/bundles/playerx-dash.js +2 -2
- package/bundles/playerx-hls.js +2 -2
- package/bundles/playerx-tv.js +2 -2
- package/package.json +3 -3
- package/packages/playerx-adaptation.package.js +2 -2
- package/packages/playerx-analytics.package.js +20 -0
- package/packages/playerx-bitmovin-source-api.package.js +1 -1
- package/packages/playerx-bitmovin-ui.package.js +1 -1
- package/packages/playerx-bitmovin-v8-core.package.js +1 -1
- package/packages/playerx-bitmovin-v8-static-api.package.js +1 -1
- package/packages/playerx-bitmovin-video-element-utils.package.js +1 -1
- package/packages/playerx-capabilities.package.js +1 -1
- package/packages/playerx-container-mp4.package.js +1 -1
- package/packages/playerx-container-ts.package.js +1 -1
- package/packages/playerx-core.package.js +2 -2
- package/packages/playerx-dash-parsing.package.js +1 -1
- package/packages/playerx-dash-translation.package.js +1 -1
- package/packages/playerx-dash.package.js +2 -2
- package/packages/playerx-data.package.js +2 -2
- package/packages/playerx-event-bus.package.js +1 -1
- package/packages/playerx-hls-parsing.package.js +1 -1
- package/packages/playerx-hls-translation.package.js +2 -2
- package/packages/playerx-hls.package.js +2 -2
- package/packages/playerx-network.package.js +2 -2
- package/packages/playerx-playback-api.package.js +1 -1
- package/packages/playerx-playback.package.js +1 -1
- package/packages/playerx-player-api.package.js +1 -1
- package/packages/playerx-presentation.package.js +2 -2
- package/packages/playerx-segment-processing.package.js +2 -2
- package/packages/playerx-source.package.js +2 -2
- package/packages/playerx-sources-api.package.js +1 -1
- package/packages/playerx-subtitle-base.package.d.ts +1 -0
- package/packages/playerx-subtitle-base.package.js +10 -0
- package/packages/playerx-subtitle-format-detection.package.d.ts +1 -0
- package/packages/playerx-subtitle-format-detection.package.js +10 -0
- package/packages/playerx-trick-play.package.js +2 -2
- package/packages/playerx-ts-transmuxer.package.js +1 -1
- package/packages/playerx-tv.package.js +1 -1
- package/packages/playerx-view-mode.package.js +1 -1
- package/packages/playerx-web-vtt.package.js +10 -0
- package/playerx-framework-utils.js +1 -1
- package/types/bundles/BitmovinV8.bundle.d.ts +1 -1
- package/types/bundles/BitmovinV8Core.bundle.d.ts +1 -1
- package/types/bundles/Core.bundle.d.ts +1 -1
- package/types/bundles/Dash.bundle.d.ts +1 -1
- package/types/bundles/Hls.bundle.d.ts +1 -1
- package/types/bundles/Tv.bundle.d.ts +1 -1
- package/types/packages/adaptation/Adaptation.package.d.ts +1 -1
- package/types/packages/capabilities/Capabilities.package.d.ts +1 -1
- package/types/packages/container/container-mp4/ContainerMp4.package.d.ts +1 -1
- package/types/packages/container/container-ts/ContainerTs.package.d.ts +1 -1
- package/types/packages/container/ts-transmuxer/TsTransmuxer.package.d.ts +1 -1
- package/types/packages/core/Constants.d.ts +5 -0
- package/types/packages/core/Core.package.d.ts +1 -1
- package/types/packages/core/Types.d.ts +4 -2
- package/types/packages/core/state/selection-group/SelectionGroupTypeGuards.d.ts +1 -0
- package/types/packages/core/state/track/TrackAtom.d.ts +7 -1
- package/types/packages/core/state/track/TrackTypeGuards.d.ts +1 -0
- package/types/packages/core/utils/StateUtils.d.ts +5 -2
- package/types/packages/core/utils/TypedArrayHelper.d.ts +2 -0
- package/types/packages/data/Data.package.d.ts +1 -1
- package/types/packages/event-bus/EventBus.package.d.ts +1 -1
- package/types/packages/manifest/dash/parsing/DashParsing.package.d.ts +1 -1
- package/types/packages/manifest/dash/root/Dash.package.d.ts +1 -1
- package/types/packages/manifest/dash/translation/DashTranslation.package.d.ts +1 -1
- package/types/packages/manifest/hls/parsing/HlsParsing.package.d.ts +1 -1
- package/types/packages/manifest/hls/root/Hls.package.d.ts +1 -1
- package/types/packages/manifest/hls/translation/HlsTranslation.package.d.ts +1 -1
- package/types/packages/network/Network.package.d.ts +1 -1
- package/types/packages/player-api/PlayerApi.package.d.ts +1 -1
- package/types/packages/presentation/Presentation.package.d.ts +1 -1
- package/types/packages/segment-processing/SegmentProcessing.package.d.ts +1 -1
- package/types/packages/source/Source.package.d.ts +1 -1
- package/types/packages/sources-api/SourcesApi.package.d.ts +1 -1
- package/types/packages/subtitles/subtitle-base/SubtitleBase.package.d.ts +4 -0
- package/types/packages/subtitles/subtitle-base/SubtitleCueAtom.d.ts +19 -0
- package/types/packages/subtitles/subtitle-base/SubtitleCueMapAtom.d.ts +6 -0
- package/types/packages/subtitles/subtitle-base/Types.d.ts +21 -0
- package/types/packages/subtitles/subtitle-format-detection/SubtitleFormatDetection.package.d.ts +3 -0
- package/types/packages/subtitles/subtitle-format-detection/Types.d.ts +20 -0
- package/types/packages/trick-play/TrickPlay.package.d.ts +1 -1
- package/types/packages/tv/Tv.package.d.ts +1 -1
- package/types/packages/v8-compat/BitmovinUi.package.d.ts +1 -1
- package/types/packages/v8-compat/BitmovinV8Core.package.d.ts +1 -1
- package/types/packages/v8-compat/BitmovinV8StaticApi.package.d.ts +1 -1
- package/types/packages/v8-compat/source-api/BitmovinSourceApi.package.d.ts +1 -1
- package/types/packages/v8-compat/video-element/BitmovinVideoElementUtils.package.d.ts +1 -1
- package/types/packages/view-mode/ViewMode.package.d.ts +1 -1
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.1.
|
|
8
|
+
* Bitmovin Player X Version 10.1.2
|
|
9
9
|
*******************************************************************************/
|
|
10
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.presentation=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.presentation=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function r(e,t,r){const n=t;return n._name=e,{onAdd:n,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function n(e){return(...t)=>{const[n,o]=e(...t);return r(n,o)}}function o(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=n,t.getTaskName=o},8668:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(t.BundleExportNames||(t.BundleExportNames={}))},5225:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CapabilitiesExportNames=void 0,function(e){e.PlatformCapabilities="platform-capabilities"}(t.CapabilitiesExportNames||(t.CapabilitiesExportNames={}))},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},7755:(e,t)=>{function r(e,t){return e.length===t.length&&e.every(((e,r)=>e===t[r]))}function n(e,...t){return 0!==t.length&&(e.push(...t),!0)}function o(e,...t){const r=e.length;for(const r of t)e.includes(r)||e.push(r);return r===e.length}function s(e,t,...r){return 0!==r.length&&(e.splice(t,0,...r),!0)}function i(e,t,r){let n=0,o=e.length;for(;n<o;){const s=n+o>>>1;r(e[s])<r(t)?n=s+1:o=s}return n}function a(e,t,...r){const n=e.length;if(0===r.length)return!1;if(0===e.length)return e.push(...r.sort(((e,r)=>t(e)-t(r)))),!0;for(const n of r){const r=t(n),o=t(e[0]);if(t(e[e.length-1])<=r)e.push(n);else if(r<=o)e.unshift(n);else{const r=i(e,n,t);e.splice(r,0,n)}}return e.length!==n}function c(e,...t){let r=!1;for(const n of t){const t=e.indexOf(n);t<0||(r=!0,e.splice(t,1))}return r}function u(e){return 0!==e.length&&(e.splice(0,e.length),!0)}function f(e,t){if(r(e,t))return!1;const n=u(e);return t.forEach((t=>e.push(t))),n||t.length>0}Object.defineProperty(t,"__esModule",{value:!0}),t.createArrayAtom=void 0;const d=(e,t=[])=>{const r={add:n,insert:s,insertSorted:a,remove:c,clear:u,set:f,addIfNew:o};return e.effects.state.create(t,r)};t.createArrayAtom=d},1146:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DataExportNames=void 0,function(e){e.StreamTimeline="stream-timeline"}(t.DataExportNames||(t.DataExportNames={}))},9861:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.activeSectionUpdaterTask=void 0;const n=r(1270),o=r(4809),s=r(1146),i=r(7269),a=r(3799);t.activeSectionUpdaterTask=(0,n.createTask)("active-section-update",(([e,t],r)=>{const n=r.registry.get(i.SourceExportNames.SourceState),o=r.registry.get(s.DataExportNames.StreamTimeline),a=c([e,t]);return r.effects.state.subscribe(r,n.playback.playhead,a),r.effects.state.subscribe(r,o,a),r.fork(a,o),r.effects.loop(r.abortSignal)}));const c=(0,n.createTaskClosure)((([e,t])=>["active-section-update",(r,n)=>{if(!d(n)||u(n))return;const o=m(n,t.dataRangeIds.buffered);o&&n.effects.state.dispatch(e.setActiveSection,o)}]));function u(e){const t=e.registry.get(i.SourceExportNames.SourceState),r=t.playback.playhead.position;return t.stream.duration.value<r||r<0}function f(e){const{MediaType:t}=e.registry.get(o.CoreExportNames.Constants),r=e=>e!==t.Unknown,n=e.registry.get(i.SourceExportNames.SourceState).activeMediaTypes;return Array.from(n.keys()).filter(r).length}function d(e){const{isMediaSelectionGroup:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,r=e.registry.get(s.DataExportNames.StreamTimeline),n=f(e);return r.length>0&&r.some((e=>Array.from(e.streamSequenceMap.keys()).filter(t).length===n))}function g(e,t){return e>=t.start&&e<=t.end}function m(e,t){const r=e.registry.get(i.SourceExportNames.SourceState),n=e.registry.get(s.DataExportNames.StreamTimeline),{isEndInRange:c}=e.registry.get(o.CoreExportNames.Utils).Ranges,u=f(e);return n.find((n=>{const o=y(e,n);if(o.length!==u)return!1;return!!o.every((({mediaType:e,selectionGroup:t})=>{const n=(0,a.getMediaTypeTargetRanges)(r,e);return g(n.start,t.timeRange)||c(n.end,t.timeRange)}))&&o.some((({mediaType:o,mediaId:s,selectionGroup:i})=>{var c,u;const f=(0,a.getMediaTypeTargetRanges)(r,o),d=p(e,n,o,f),g=null!==(u=null===(c=r.dataRanges.media[s])||void 0===c?void 0:c.ranges)&&void 0!==u?u:[],m=i.timeRange.end,y=g.length>0&&g.some((e=>e.start<=m&&m<=e.end)),b=l(e,d,s,t);return!y||!b}))}))}function l(e,t,r,n){var o,s;const{dataRanges:a}=e.registry.get(i.SourceExportNames.SourceState),c=null!==(s=null===(o=a.media[r])||void 0===o?void 0:o.source[n])&&void 0!==s?s:[];return t.every((e=>c.includes(e)))}function p(e,t,r,n){const{isVideoSelectionGroup:s,isAudioSelectionGroup:i}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,{isEndInRange:a,isStartInRange:c}=e.registry.get(o.CoreExportNames.Utils).Ranges,u=e.registry.get(o.CoreExportNames.Constants).MediaType,f=[];for(const[e,o]of t.streamSequenceMap)if(o.length&&(r===u.Audio&&i(e)||r===u.Video&&s(e)))for(const e of o){const t=e.segmentTiming.parsedPlaybackTime,r=e.segmentTiming.parsedPlaybackTime+e.segmentTiming.parsedDuration;(c(t,n)||a(r,n))&&f.push(e)}return f}function y(e,t){const{isVideoSelectionGroup:r,isAudioSelectionGroup:n}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,s=e.registry.get(o.CoreExportNames.Constants).MediaType;return Array.from(t.streamSequenceMap.keys()).map((e=>r(e)?{mediaType:s.Video,mediaId:e.mediaId,selectionGroup:e}:n(e)?{mediaType:s.Audio,mediaId:e.mediaId,selectionGroup:e}:void 0)).filter(Boolean)}},407:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GapHandlingTask=void 0;const n=r(1270),o=r(8668);t.GapHandlingTask=(0,n.createTaskClosure)((e=>["gap-handler",(t,r)=>{const{events:n}=r.effects;let s=!1;const a=()=>{if(s)return;const t=r.registry.get(o.BundleExportNames.Logger),n=i(r,e);void 0!==n&&(t.log(`Skipping buffer gap (${e.currentTime.toFixed(2)} → ${n.toFixed(2)})`),e.currentTime=n)},c=()=>{s=!0},u=()=>{s=!1},f=()=>{s=!1};return n.subscribe(r,e,"waiting",a),n.subscribe(r,e,"seeking",c),n.subscribe(r,e,"seeked",u),n.subscribe(r,e,"playing",f),r.effects.loop(r.abortSignal)}]));const s=.1;function i(e,t){const r=t.currentTime,n=t.buffered;for(let e=0;e<n.length;e++){const t=n.start(e),o=n.end(e);if(r>=t&&r<=o&&o-r<s&&e<n.length-1)return n.start(e+1)}}},6375:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.awaitMediaInfo=void 0;const o=r(1270),s=r(4809);function i(e){return e.tracks.some((e=>e.codecs.size>0))}function a(e){return void 0!==e.container.value}function c(e,t,r){return n(this,void 0,void 0,(function*(){const{abortable:n}=e.effects;return n((n=>{const s=(0,o.createTask)("segment-container-format-subscriber",((e,t)=>{r()&&(n(),i())})),i=e.effects.state.subscribe(e,t,s)}))}))}function u(e,t){return n(this,void 0,void 0,(function*(){return c(e,t.container,(()=>a(t)))}))}function f(e,t){return n(this,void 0,void 0,(function*(){const{containerFormatMap:r}=e.effects.store;return c(e,r,(()=>void 0!==r.get(t)))}))}function d(e,t){return n(this,void 0,void 0,(function*(){const{abortable:r,state:n}=e.effects,s=[],a=r((r=>{for(const a of t.tracks){const c=(0,o.createTask)("codec-subscriber",((e,n)=>{i(t)&&r()}));s.push(n.subscribe(e,a.codecs,c))}}));return a.finally((()=>s.forEach((e=>e())))).catch((()=>{})),a}))}function g(e,t){return n(this,void 0,void 0,(function*(){const{isMediaSelectionGroup:r}=e.registry.get(s.CoreExportNames.CoreStateAtoms).SelectionGroups,{containerFormatMap:n}=e.effects.store;for(const[o]of t.streamSequenceMap)r(o)&&(i(o)||(yield d(e,o)),a(o)||(yield u(e,o)),void 0===n.get(o)&&(yield f(e,o)))}))}t.awaitMediaInfo=g},2160:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.PresentationPackage=void 0;const o=r(7085),s=r(8668),i=r(5225),a=r(4809),c=r(1146),u=r(158),f=r(7269),d=r(3894),g=r(2566),m=r(1851),l=r(6254),p=r(7365),y=r(4417);t.PresentationPackage=(0,o.createPackage)("presentation",((e,t)=>n(void 0,void 0,void 0,(function*(){const{createMapStateAtom:e}=t.registry.get(a.CoreExportNames.CoreStateAtoms),{StateEffectFactory:r,EventListenerEffectFactory:n,StoreEffectFactory:o}=t.registry.get(a.CoreExportNames.CoreEffects),s=t.using(r,n),i=s.using(o("segmentDataCache",new Map)).using(o("containerFormatMap",e(s)));i.registry.maybeSet(p.PresentationExportNames.SelectContainerFormat,m.SelectContainerFormatTask);const{state:c}=i.effects,u=i.registry.get(f.SourceExportNames.SourceState),b=(0,y.VideoElementSubscriber)((0,g.createPresentationStateAtom)(i),(0,d.createActiveSectionAtom)(i));(0,l.startPresentationSegmentProcessing)(i),c.subscribe(i,u.video,b)}))),[s.BundleExportNames.Logger,a.CoreExportNames.Utils,f.SourceExportNames.SourceState,c.DataExportNames.StreamTimeline,a.CoreExportNames.CoreStateAtoms,a.CoreExportNames.CoreEffects,i.CapabilitiesExportNames.PlatformCapabilities,u.SegmentProcessingExportNames.SegmentProcessingComponent,u.SegmentProcessingExportNames.SegmentProcessorErrors]),t.default=t.PresentationPackage},3966:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.ActiveSectionSubscriber=t.SegmentCacheMissError=t.EncodedPlaybackTimeUnknownError=void 0;const o=r(1270),s=r(8668),i=r(4809),a=r(7269),c=r(6375),u=r(2012),f=r(1249),d=r(5457),g=r(3799);function m(e,t,r){const{MediaType:n}=e.registry.get(i.CoreExportNames.Constants),{getMediaTypeFromCodec:o,canSwitchBetweenAudioCodecs:s,extractCodec:a}=e.registry.get(i.CoreExportNames.Utils).Codecs,c=e=>r.filter((t=>o(t)===e));for(const e of t){const t=o(e);switch(t){case n.Video:{const r=a(e),n=c(t);if(void 0===r||0===n.length)return!1;if(!n.every((e=>r===a(e))))return!1;break}case n.Audio:{const r=c(t);if(0===r.length)return!1;if(!r.every((t=>s(e,t))))return!1;break}default:return!1}}return!0}function l(e,t,r,n,o){const{equals:s}=e.registry.get(i.CoreExportNames.Utils).Arrays;return t.find((([t,i,a])=>{const c=r===i,u=s(o,a),f=m(e,n,t);return c&&u&&f}))}function p(e,t,r){if(t.length!==r.length)return!0;for(let n=0;n<t.length;n++){const[o,s,i]=t[n];if(void 0===l(e,r,s,o,i))return!0}return!1}function y(e,t,r){return n(this,void 0,void 0,(function*(){const{events:n,abortable:o}=e.effects;t.close(),yield o((t=>{if(r.ended)t();else{const o=n.subscribe(e,r,"ended",(()=>{t(),o()}))}}))}))}function b(e){const t=[];if(void 0===e)return t;for(const{containerFormat:r,mediaTypes:n,codecs:o}of e.buffers)t.push([o,r,n]);return t}function v(e,t,r,n){if(r.length!==n.length)return!1;for(const[o,s,i]of r){const r=(0,g.getMatchingBuffer)(e,t.buffers,s,i);if(void 0===r)return!1;const a=l(e,n,s,o,i);if(void 0===a)return!1;const[c,u,f]=a;if(!t.canChangeBuffer(r,c,u))return!1}return!0}function S(e,t,r){return n(this,void 0,void 0,(function*(){r.bind(e);for(const[n,o,s]of t){const t=(0,g.getMatchingBuffer)(e,r.buffers,o,s);if(void 0===t)throw new Error("Could not find matching buffer");yield r.changeBuffer(t,n,o)}return r}))}function h(e,t,r,o){return n(this,void 0,void 0,(function*(){const n=e.registry.get(s.BundleExportNames.Logger),{waitFor:c}=e.registry.get(i.CoreExportNames.Utils).State;t&&(n.debug("Waiting for end of buffer before recreating the MSE..."),t.bind(e),yield y(e,t,o),n.debug("End of buffer reached, recreating MSE...")),yield null==t?void 0:t.dispose(),t=(0,u.createRenderer)(e);const f=c(e,t.onOpen);n.log(`Setting video element source to ${t.sourceUrl}`),o.src=t.sourceUrl,o.load(),yield f;for(const[e,n,o]of r)t.addBuffer(e,n,o);const d=e.registry.get(a.SourceExportNames.SourceState).stream;return yield t.setDuration(d.duration.value),t}))}function E(e,t,r,o,i,c){return n(this,void 0,void 0,(function*(){const n=e.registry.get(s.BundleExportNames.Logger),u=e.registry.get(a.SourceExportNames.SourceState).playback.playhead;if(void 0===t)return n.log(`Creating MSE for ${c}`),yield h(e,void 0,c,i);const d=b(t);return p(e,d,c)?v(e,t,d,c)?(n.log(`Changing MSE buffer types for ${c}`),t.bind(e),yield e.fork((0,f.BufferClearingTask)(t,o,r),u),yield S(e,c,t)):(n.log(`Re-creating MSE for ${c}`),yield h(e,t,c,i)):(n.log(`Re-using MSE for ${c}`,e.abortSignal.reason),t.bind(e),yield e.fork((0,f.BufferClearingTask)(t,o,r),u),t)}))}class x extends Error{constructor(){super("The encoded playback time could not be extracted from the segment"),this.name="EncodedPlaybackTimeUnknownError"}}t.EncodedPlaybackTimeUnknownError=x;class T extends Error{constructor(){super("Could not retrieve cached segment data for playback time retrieval"),this.name="SegmentCacheMissError"}}function C(e,t){const{MediaType:r}=e.registry.get(i.CoreExportNames.Constants),{isMediaSelectionGroup:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).SelectionGroups,{isMediaTrack:o}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks,s=Array.from(t.streamSequenceMap.keys()).filter(n).flatMap((e=>e.tracks)).filter(o);for(const e of s){const t=Array.from(e.codecs.keys()),n=t.includes(r.Muxed),o=t.includes(r.Audio),s=t.includes(r.Video);if(n||o&&s)return!0}return!1}function k(e,t){if(C(e,t))throw new Error("Muxed content is not yet supported");const r=[],{containerFormatMap:n}=e.effects.store,{isMediaTrack:o}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks;for(const[e]of t.streamSequenceMap){const t=n.get(e);if(void 0===t)throw new Error("Container format is unexpectedly undefined");let s,i=-1/0;for(const t of e.tracks){if(!o(t))continue;const{bitrate:e,codecs:r}=t;e>i&&r.size>0&&(i=e,s=r)}if(void 0===s)throw new Error("Could not determine codec to create buffers with");const a=Array.from(s.keys()),c=Array.from(s.values()).flat();r.push([c,t,a])}return r}t.SegmentCacheMissError=T;const N=(0,o.createTaskClosure)((e=>["buffer-statistics-printer",(t,r)=>{const n=r.registry.get(s.BundleExportNames.Logger);try{if(0===e.buffered.length)return void n.verbose(`Buffered for ${e.mediaTypes} is empty`);let t=`Buffered Ranges for ${e.mediaTypes}`;for(let r=0;r<e.buffered.length;r++){const n=e.buffered.start(r),o=e.buffered.end(r);t=`${t}\n\t[${r}] ${n.toFixed(2)} - ${o.toFixed(2)}`}n.verbose(t)}catch(t){n.verbose(`Could not get buffered ranges from ${e.mediaTypes} buffer`)}}])),A=(0,o.createTaskClosure)((e=>["duration-updater",({value:t},r)=>e.setDuration(t)]));t.ActiveSectionSubscriber=(0,o.createTaskClosure)(((e,t)=>["active-section-subscriber",({section:r},o)=>n(void 0,void 0,void 0,(function*(){if(!r)return;const{state:n,events:i,loop:u}=o.effects,g=o.registry.get(s.BundleExportNames.Logger),{activeRenderer:m,dataRangeIds:l}=e,p=o.registry.get(a.SourceExportNames.SourceState),y=p.stream,b=p.playback.playhead;yield(0,c.awaitMediaInfo)(o,r);const v=k(o,r);g.log("Preparing playback of section with buffers",v),i.subscribe(o,t,"timeupdate",(()=>{0!==t.currentTime&&n.dispatch(b.setPosition,t.currentTime)})),i.subscribe(o,t,"seeking",(()=>n.dispatch(b.setPosition,t.currentTime)));const S=yield E(o,m,l,r,t,v);return S.buffers.map((e=>n.subscribe(o,e.onUpdateEnd,N(e)))),n.dispatch(e.setActiveRenderer,S),n.subscribe(o,y.duration,A(S)),n.subscribe(o,b,(0,f.BufferClearingTask)(S,r,l)),o.fork(d.SegmentAppendage,{renderer:S,section:r,dataRangeIds:l,video:t}).catch((()=>{})),u(o.abortSignal)}))]))},7365:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PresentationExportNames=void 0,function(e){e.SelectContainerFormat="presentation-select-container-format-task"}(t.PresentationExportNames||(t.PresentationExportNames={}))},3799:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getMatchingBuffer=t.getTargetBufferRange=t.getMediaTypeTargetRanges=void 0;const n=r(4809);function o(e,t){const r=e.playback.playhead.position;return{start:r,end:r+e.config.buffer[t].forwardDuration}}function s(e,t){const r=e.playback.playhead.position,n=e.config.buffer[t];return{start:Math.max(0,r-n.backwardDuration),end:r+n.forwardDuration}}function i(e,t,r,o){const{equals:s}=e.registry.get(n.CoreExportNames.Utils).Arrays;return t.find((e=>s(e.mediaTypes,o)&&e.containerFormat===r))}t.getMediaTypeTargetRanges=o,t.getTargetBufferRange=s,t.getMatchingBuffer=i},7709:(e,t)=>{function r(e,t){t.log("Revoking MSE src object URL");try{URL.revokeObjectURL(e.src)}catch(e){t.warn("Revoking MSE src object URL failed:",e)}e.setAttribute("src",""),e.removeAttribute("src"),e.load()}Object.defineProperty(t,"__esModule",{value:!0}),t.resetVideoSource=void 0,t.resetVideoSource=r},4417:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VideoElementSubscriber=void 0;const n=r(1270),o=r(8668),s=r(7269),i=r(9861),a=r(407),c=r(3966),u=r(7709);t.VideoElementSubscriber=(0,n.createTaskClosure)(((e,t)=>["video-element-subscriber",(r,n)=>{const{fork:f,registry:d,effects:g,abortSignal:m}=n,{state:l,loop:p,abortable:y}=g,b=d.get(o.BundleExportNames.Logger);if(void 0===r.element)return b.log("Cannot set up presentation task - no video element"),y((e=>e()));const v=r.element,S=(0,c.ActiveSectionSubscriber)(e,v);return b.log("Setting up presentation task..."),l.subscribe(n,t,S),void 0!==t.section&&f(S,t),f((0,a.GapHandlingTask)(v),e),f(i.activeSectionUpdaterTask,[t,e],(()=>{var t;const r=null===(t=e.activeRenderer)||void 0===t?void 0:t.sourceUrl,{state:i}=n.effects;if(n.registry.has(s.SourceExportNames.SourceState)){const t=n.registry.get(s.SourceExportNames.SourceState).dataRanges;for(const r in t.media)for(const n of Object.values(e.dataRangeIds))i.dispatch(t.deleteSource,r,n)}return i.dispatch(e.setActiveRenderer,void 0),void 0!==r&&v.src===r&&(0,u.resetVideoSource)(v,n.registry.get(o.BundleExportNames.Logger)),!1})),p(m)}]))},3894:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createActiveSectionAtom=void 0;const r=()=>({section:void 0});function n(e,t){return e.section!==t&&(e.section=t,!0)}function o(e){return e.effects.state.create(r(),{setActiveSection:n})}t.createActiveSectionAtom=o},2566:(e,t)=>{function r(){return{activeRenderer:void 0,dataRangeIds:{buffered:"buffered",appending:"appending"}}}function n(e,t){return e.activeRenderer!==t&&(e.activeRenderer=t,!0)}function o(e){return e.effects.state.create(r(),{setActiveRenderer:n})}Object.defineProperty(t,"__esModule",{value:!0}),t.createPresentationStateAtom=void 0,t.createPresentationStateAtom=o},5159:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createSegmentAppendageQueueAtom=void 0;const o=r(1270),s=r(4809);function i(e){const{createTransient:t}=e.registry.get(s.CoreExportNames.Utils).State;return{queue:[],appendSegments:t(e),consumed:t(e)}}const a=(0,o.createTaskClosure)(((e,t,r,o)=>["segment-appendage-queue-subscriber",({value:s},i)=>n(void 0,void 0,void 0,(function*(){if(void 0===s)return;const n=t.queue;n.push(s);try{yield e.fork(r,s.slice(),o)}catch(e){}finally{const r=n.indexOf(s);r>-1&&n.splice(r,1),e.effects.state.dispatch(t.consumed.trigger)}}))]));function c(e,t,r=(()=>!1)){const{state:n}=e.effects,o=e.effects.state.create(i(e),{}),s=a(e,o,t,r);return n.subscribe(e,o.appendSegments,s),o}t.createSegmentAppendageQueueAtom=c},215:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getOrCreateOutputStream=void 0;const n=r(4809);function o(e,t,r){const{createDataStreamAtom:o}=e.registry.get(n.CoreExportNames.CoreStateAtoms).DataStream,s=o(e);return t.set(r,s),s}function s(e,t,r){var n;return null!==(n=t.get(r))&&void 0!==n?n:o(e,t,r)}t.getOrCreateOutputStream=s},1188:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceBufferActionFailedError=t.SourceBufferActionAbortedError=t.NotSupportedError=void 0;class r extends Error{constructor(e){super(`The operation "${e}" is not supported on this platform`),this.name="NotSupportedError"}}t.NotSupportedError=r;class n extends Error{constructor(){super("SourceBuffer action was aborted"),this.name="SourceBufferActionAbortedError"}}t.SourceBufferActionAbortedError=n;class o extends Error{constructor(e){super(`SourceBuffer action failed: ${e}`),this.name="SourceBufferActionFailedError"}}t.SourceBufferActionFailedError=o},2012:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createRenderer=void 0;const o=r(8668),s=r(5225),i=r(4809),a=r(6374),c=r(957),u=r(9583),f=r(8377);function d(e,t){const{state:r,events:n}=e.effects,{createTransient:o}=e.registry.get(i.CoreExportNames.Utils).State,s={onOpen:o(e),onClose:o(e),onEnded:o(e),onError:o(e)};return n.subscribe(e,t,"sourceopen",(()=>r.dispatch(s.onOpen.trigger))),n.subscribe(e,t,"sourceclose",(()=>r.dispatch(s.onClose.trigger))),n.subscribe(e,t,"sourceended",(()=>r.dispatch(s.onEnded.trigger))),n.subscribe(e,t,"error",(e=>r.dispatch(s.onError.trigger,new Error(JSON.stringify(e))))),s}function g(e,t){const r=e.get(t);if(!r)throw new Error("Unexpectedly encountered untracked value");return r}function m(e,t,r,n,s,i,a){const f=(0,c.generateMimeTypeString)(e,a,i,s);e.registry.get(o.BundleExportNames.Logger).debug(`Adding source buffer of type "${f}"`);const d=t.addSourceBuffer(f),g=(0,u.createSourceBufferActionQueue)(e,d),m=(0,c.createRendererBufferAtom)(e,s,a,i,!1,d),p=l(e,m,d);n.set(m,[d,g,p]),e.effects.state.dispatch(r.add,m)}function l(e,t,r){const{events:n,state:o}=e.effects,s=[n.subscribe(e,r,"updatestart",(()=>o.dispatch(t.onUpdateStart.trigger))),n.subscribe(e,r,"update",(()=>o.dispatch(t.onUpdate.trigger))),n.subscribe(e,r,"updateend",(()=>o.dispatch(t.onUpdateEnd.trigger))),n.subscribe(e,r,"error",(e=>o.dispatch(t.onError.trigger,new Error(e.type)))),n.subscribe(e,r,"abort",(()=>o.dispatch(t.onAbort.trigger)))];return()=>s.forEach((e=>e()))}function p(e,t,r,n,o,i){const{typeSupported:a}=e.registry.get(s.CapabilitiesExportNames.PlatformCapabilities),u=g(r,n)[0],f=(0,c.generateMimeTypeString)(e,n.mediaTypes,i,o);return"function"==typeof u.changeType&&a(f)}function y(e,t,r,n,o,s){const[i,a]=g(r,n),u=(0,c.generateMimeTypeString)(e,n.mediaTypes,s,o),f=e=>e.changeType(u);return a.execute(f)}function b(e,t,r,o,s){return n(this,void 0,void 0,(function*(){const[n,i]=g(r,s),a=e=>t.removeSourceBuffer(e);yield i.execute(a),r.delete(s),e.effects.state.dispatch(o.remove,s)}))}function v(e,t,r,n,s){const i=e.registry.get(o.BundleExportNames.Logger),[a,c]=g(r,n),u=e=>{e.timestampOffset=s};return i.log(`Setting timestamp offset to ${s.toFixed(2)} for buffer ${n.mediaTypes}/${n.codecs}`),e.effects.state.dispatch(n.setTimestampOffset,s),c.execute(u)}function S(e,t,r,n,o){const[s,i]=g(r,n),a=e=>e.appendBuffer(o.data.buffer);return i.execute(a)}function h(e,t,r,n,o,s){if(o>=s)return e.effects.abortable((e=>e()));const[i,a]=g(r,n),c=e=>e.remove(o,s);return a.execute(c)}function E(e,t,r){e.readyState===f.MediaSourceReadyState.Open&&e.setLiveSeekableRange(t,r)}function x(e,t,r,n){if(t.readyState===f.MediaSourceReadyState.Open){const e=()=>{t.duration=n};return r.execute(e)}return e.registry.get(o.BundleExportNames.Logger).log("Unable to set duration, media source not open"),e.effects.abortable((e=>e()))}function T(e,t,r){const n=e.registry.get(o.BundleExportNames.Logger);if(t.readyState===f.MediaSourceReadyState.Open){const e=()=>{t.endOfStream()};return n.debug("Signaling EoS..."),r.execute(e)}return n.log("Skipping EoS - media source not open"),e.effects.abortable((e=>e()))}function C(e,t){const r=[];try{for(let e=0;e<t.buffered.length;e++)r.push({start:t.buffered.start(e),end:t.buffered.end(e)})}catch(t){e.registry.get(o.BundleExportNames.Logger).debug("Could not determine buffered ranges for source buffer:",t)}return r}function k(e,t,r,n){const o=new Map;for(const[t,[r]]of n)o.set(t,C(e,r));return o}function N(e){return e.readyState}function A(e,t,r){const n=Array.from(r.entries());if(t.readyState===f.MediaSourceReadyState.Open||0===n.length)return e.effects.abortable((e=>e()));const[[o,[s]]]=n;return v(e,t,r,o,s.timestampOffset)}function M(e,t,r,n){for(const[e,[n]]of r)t.removeSourceBuffer(n);r.clear(),e.effects.state.dispatch(n.clear)}function w(e){const{createArrayAtom:t}=e.registry.get(i.CoreExportNames.CoreStateAtoms);let r=e;const n=new MediaSource,s=URL.createObjectURL(n),c=d(r,n),u=new Map,f=t(r,[]),g=(0,a.createRendererActionQueue)(r,u);return Object.assign(Object.assign({},c),{sourceUrl:s,buffers:f,addBuffer:m.bind(void 0,r,n,f,u),canChangeBuffer:p.bind(void 0,r,n,u),changeBuffer:y.bind(void 0,r,n,u),removeBuffer:b.bind(void 0,r,n,u,f),setTimestampOffset:v.bind(void 0,r,n,u),getBufferedRanges:k.bind(void 0,r,n,g,u),appendData:S.bind(void 0,r,n,u),removeData:h.bind(void 0,r,n,u),setSeekableRange:E.bind(void 0,n),setDuration:x.bind(void 0,r,n,g),getState:N.bind(void 0,n),close:T.bind(void 0,r,n,g),reopen:A.bind(void 0,r,n,u),dispose:M.bind(void 0,r,n,u,f),bind:e=>{const t=e.registry.get(o.BundleExportNames.Logger),n=Array.from(u.keys());t.debug("Binding renderer to new context..."),r=e,g.bind(r);for(let t=0;t<n.length;t++){const o=n[t],s=u.get(o);if(!s)continue;const[i,a,c]=s;c(),a.bind(r),s[2]=l(e,o,i)}}})}t.createRenderer=w},6374:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createRendererActionQueue=void 0;function o(e,t,r,s){return n(this,void 0,void 0,(function*(){if(t.executing)return;t.executing=!0;const n=r.shift();if(n)try{yield e.fork(s,n)}finally{t.executing=!1,o(e,t,r,s).catch((()=>{}))}else t.executing=!1}))}const s=(0,r(1270).createTaskClosure)((e=>["renderer-action",(t,r)=>n(void 0,void 0,void 0,(function*(){const{abortSignal:n,effects:o}=r,{abortable:s,events:a}=o;let c=()=>{},u=()=>{};const f=s(((e,t)=>{u=e,c=t})),d=[c],[g,m]=t,l=a.subscribe(r,n,"abort",(()=>{d.forEach((e=>e(n.reason)))}));f.catch((()=>{}));try{const{sourceBufferActionEnteredAbortables:t,sourceBufferActionAbortables:n}=i(r,e,f,d);yield Promise.all(t),yield g(void 0,r),u(),yield Promise.all(n),m()}finally{l()}}))]));function i(e,t,r,o){const s=[],i=[];for(const[a,[c,u]]of t){let t=()=>{};const a=e.effects.abortable(((e,r)=>{t=e,o.push(r)}));a.catch((()=>{}));const c=(e,o)=>n(this,void 0,void 0,(function*(){t(),yield r.catch((()=>{}))}));s.push(a),i.push(u.execute(c))}return{sourceBufferActionEnteredAbortables:s,sourceBufferActionAbortables:i}}function a(e,t){const r=[],n={executing:!1},i=s(t);return{execute:t=>{const{abortable:s}=e.effects;let a=()=>{},c=()=>{};const u=s(((e,t)=>{a=e,c=t}));return r.push([t,a,c]),o(e,n,r,i).catch((()=>{})),u},bind:t=>e=t,abort:()=>{}}}t.createRendererActionQueue=a},957:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createRendererBufferAtom=t.generateMimeTypeString=void 0;const n=r(7755),o=r(4809);function s(e,t,r,s,i){const{createTransient:a}=e.registry.get(o.CoreExportNames.Utils).State;return{onUpdateStart:a(e),onUpdate:a(e),onUpdateEnd:a(e),onError:a(e),onAbort:a(e),codecs:(0,n.createArrayAtom)(e,t),containerFormat:s,mediaTypes:(0,n.createArrayAtom)(e,r),encrypted:i,mimeType:c(e,r,s,t),timestampOffset:0,initSegment:void 0}}function i(e,t,r){const{MediaType:n}=e.registry.get(o.CoreExportNames.Constants),{ContainerFormat:s}=e.registry.get(o.CoreExportNames.CoreStateAtoms).Segments;return t===s.TS?n.Video:r}function a(e,t){return r=>`${i(e,t,r)}/${t}`}function c(e,t,r,n){return`${t.map(a(e,r)).join(";")};codecs="${n.join(",")}"`}function u(e,t){return e.timestampOffset!==t&&(e.timestampOffset=t,!0)}function f(e,t){return e.initSegment!==t&&(e.initSegment=t,!0)}function d(e,t,r,n,o){const{state:s}=e.effects,i=t.codecs.length===r.length&&t.codecs.every((e=>r.includes(e))),a=t.mediaTypes.length===n.length&&t.mediaTypes.every((e=>n.includes(e)));return(t.containerFormat!==o||!a||!i)&&(t.mimeType=c(e,n,o,r),t.containerFormat=o,s.dispatch(t.codecs.set,r),s.dispatch(t.mediaTypes.set,n),!0)}function g(e,t,r,n,i,a){const{deriveFrom:c}=e.registry.get(o.CoreExportNames.Utils).State,g=s(e,t,r,n,i);return c(g,"buffered",(()=>a.buffered)),e.effects.state.create(g,{setTimestampOffset:u,setInitSegment:f,updateType:d.bind(void 0,e)})}t.generateMimeTypeString=c,t.createRendererBufferAtom=g},9583:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceBufferActionQueue=void 0;const o=r(1270),s=r(1188),i=(0,o.createTask)("source-buffer-update-awaiter",((e,t)=>{const{events:r,abortable:n}=t.effects;return n(((n,o)=>{e.updating?(r.subscribe(t,e,"updateend",(()=>n())),r.subscribe(t,e,"abort",(()=>o(new s.SourceBufferActionAbortedError))),r.subscribe(t,e,"error",(e=>o(new s.SourceBufferActionFailedError(e))))):n()}))}));function a(e,t,r,o){return n(this,void 0,void 0,(function*(){if(t.executing)return;t.executing=!0;const n=r.shift();if(n)try{yield e.fork(o,n,(e=>e instanceof s.SourceBufferActionAbortedError))}finally{t.executing=!1,a(e,t,r,o).catch((()=>{}))}else t.executing=!1}))}const c=(0,o.createTaskClosure)((e=>["source-buffer-action",(t,r)=>n(void 0,void 0,void 0,(function*(){const[n,o,a]=t;let c=()=>{};try{yield r.fork(i,e,(()=>!0)).catch((()=>{}));const t=n(e,r);c=r.effects.events.subscribe(r,r.abortSignal,"abort",(()=>e.abort())),yield t,yield r.fork(i,e),c(),o()}catch(e){c();a(e instanceof Error?e:e instanceof Event?new s.SourceBufferActionFailedError(e):new Error(""))}}))]));function u(e,t){const r=[],n={executing:!1},o=c(t);let i=()=>{};const u=e=>{r.forEach((([t,n,o])=>{r.shift(),o(e)}))},f=()=>{i(),i=e.effects.events.subscribe(e,e.abortSignal,"abort",(()=>{u(new s.SourceBufferActionAbortedError)}))};return f(),{execute(t){const{abortable:s}=e.effects;let i=()=>{},c=()=>{};const u=s(((e,t)=>{i=e,c=t}));return u.catch((()=>{})),r.push([t,i,c]),a(e,n,r,o).catch((()=>{})),u},bind:t=>{e=t,f()},abort(e){u(new s.SourceBufferActionAbortedError)}}}t.createSourceBufferActionQueue=u},8377:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceBufferEvent=t.MediaSourceEvent=t.MediaSourceReadyState=void 0,function(e){e.Closed="closed",e.Open="open",e.Ended="ended"}(t.MediaSourceReadyState||(t.MediaSourceReadyState={})),function(e){e.Error="error",e.SourceOpen="sourceopen",e.SourceClose="sourceopen",e.WebkitSourceOpen="webkitsourceopen"}(t.MediaSourceEvent||(t.MediaSourceEvent={})),function(e){e.UpdateStart="updatestart",e.Update="update",e.UpdateEnd="updateend",e.Error="error",e.Abort="abort"}(t.SourceBufferEvent||(t.SourceBufferEvent={}))},1249:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferClearingTask=void 0;const o=r(1270),s=r(8668),i=r(4809),a=r(7269),c=r(8377),u=r(3799),f=r(8423);function d(e,t,r,o){return n(this,void 0,void 0,(function*(){if(t.getState()!==c.MediaSourceReadyState.Open)return;const n=yield t.getBufferedRanges(),s=[];for(const[r,o]of n){const n=g(e,r),i=[],a=o.filter((e=>e.start>n.end));m(e,o,{start:0,end:n.start})&&(s.push({start:0,end:n.start}),i.push(t.removeData(r,0,n.start))),a.length>0&&(s.push({start:a[0].start,end:1/0}),i.push(t.removeData(r,a[0].start,1/0))),yield Promise.all(i)}l(e,t.buffers,r,o),y(e,t.buffers)}))}function g(e,t){const r=e.registry.get(a.SourceExportNames.SourceState);if(0===t.mediaTypes.length)throw new Error("Renderer Buffer has no media types");return t.mediaTypes.map((e=>(0,u.getTargetBufferRange)(r,e))).reduce(((e,t)=>({start:Math.min(e.start,t.start),end:Math.max(e.end,t.end)})),{start:1/0,end:-1/0})}function m(e,t,r){const{overlaps:n}=e.registry.get(i.CoreExportNames.Utils).Ranges;let o=!1;for(let e=0;e<t.length;e++){o=n({start:t[e].start,end:t[e].end},r)||o}return o}function l(e,t,r,n){var o,c;const u=e.registry.get(a.SourceExportNames.SourceState).dataRanges,{isMediaSelectionGroup:d}=e.registry.get(i.CoreExportNames.CoreStateAtoms).SelectionGroups,{resetData:g}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments,m=e.registry.get(s.BundleExportNames.Logger),{state:l}=e.effects;for(const[s]of r.streamSequenceMap){if(!d(s))continue;const r=null!==(c=null===(o=u.media[s.mediaId])||void 0===o?void 0:o.source[n.buffered])&&void 0!==c?c:[];for(const o of[...r])p(e,o,t)||(l.dispatch(u.removeSegment,s.mediaId,n.buffered,o),(0,f.removeSegmentFromStreamTimeline)(e,o),g(o,e,m))}}function p(e,t,r){const{getTimeRange:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments,{overlaps:o,isFullyIncluded:s}=e.registry.get(i.CoreExportNames.Utils).Ranges,c=n(t),u=e.registry.get(a.SourceExportNames.SourceState).playback.playhead;for(const e of r){const t=e.buffered;for(let e=0;e<t.length;e++){const r={start:t.start(e),end:t.end(e)};if(c.end>=u.position?o(c,r):s(c,r))return!0}}return!1}function y(e,t){const r=e.effects.store.segmentDataCache,n=Array.from(r.keys()),{Segments:o,Tracks:s}=e.registry.get(i.CoreExportNames.CoreStateAtoms),{overlaps:c}=e.registry.get(i.CoreExportNames.Utils).Ranges,d=e.registry.get(a.SourceExportNames.SourceState),{isDataOrSelfInitSegment:m,isDataSegment:l,getTimeRange:y}=o,{isMediaTrack:b}=s,v=new Map;for(const r of t)v.set(r,g(e,r));const S=new Set,h=[];for(const o of n){if(!b(o.track))continue;if(!m(o)){h.push(o);continue}const n=c(Array.from(o.track.codecs.keys()).reduce(((e,t)=>{const{start:r,end:n}=(0,u.getTargetBufferRange)(d,t);return{start:Math.min(e.start,r),end:Math.max(e.end,n)}}),{start:1/0,end:-1/0}),y(o));p(e,o,t)||n?l(o)&&S.add(o.initSegment):(r.delete(o),(0,f.removeSegmentFromStreamTimeline)(e,o))}for(const e of h)S.has(e)||r.delete(e)}t.BufferClearingTask=(0,o.createTaskClosure)(((e,t,r)=>["buffer-clearing-task",(o,i)=>n(void 0,void 0,void 0,(function*(){const n=i.registry.get(s.BundleExportNames.Logger);try{n.debug("Clearing buffers"),yield d(i,e,t,r),n.debug("Done clearing buffers")}catch(e){n.debug("Failed to clear buffers:",e instanceof Error?e.message:e)}}))]))},5457:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentAppendage=void 0;const n=r(1270),o=r(4809),s=r(5159),i=r(3966),a=r(8423),c=r(9657);t.SegmentAppendage=(0,n.createTask)("segment-appendage",(({renderer:e,dataRangeIds:t,section:r,video:n},u)=>{const{MapUnsubscribedError:f}=u.registry.get(o.CoreExportNames.Utils).State,{QueueItemRemovedError:d}=u.registry.get(o.CoreExportNames.CoreStateAtoms).Queue,g=e=>e instanceof i.EncodedPlaybackTimeUnknownError||e instanceof f||e instanceof i.SegmentCacheMissError||e instanceof d,m=(0,s.createSegmentAppendageQueueAtom)(u,(0,a.SegmentAppendageQueueConsumer)(e,t,r,n),g);return u.fork(c.KeepUpdatingSegmentsToAppend,{section:r,segmentAppendageQueue:m,dataRangeIds:t})}))},8423:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.waitForEncodedPlaybackTime=t.removeSegmentFromStreamTimeline=t.SegmentAppendageQueueConsumer=void 0;const o=r(1270),s=r(8668),i=r(4809),a=r(1146),c=r(7269),u=r(8377),f=r(3966),d=r(3799),g=r(4579),m=r(1249),l=r(9791);function p(e){const t=e.effects.store.segmentDataCache,r=[];for(const[e,{error:n}]of t.entries())n&&r.push(e);for(const e of r)t.delete(e)}function y(e,t,r){const{state:n}=e.effects,o=e.registry.get(c.SourceExportNames.SourceState);n.dispatch(o.dataRanges.addSegment,r.selectionGroup.mediaId,t.buffered,r),n.dispatch(o.dataRanges.removeSegment,r.selectionGroup.mediaId,t.appending,r)}function b(e,t,r,o){return n(this,void 0,void 0,(function*(){yield(0,g.maybeAppendInitSegment)(e,o,r),yield(0,g.appendSegment)(e,o,r),C(e,o),y(e,t,o)}))}function v(e,t){const{isMediaTrack:r}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks,n=e.registry.get(c.SourceExportNames.SourceState);if(!r(t.track))throw new Error("Encountered non-media segment during segment appendage");const o={start:1/0,end:-1/0};for(const e of t.track.codecs.keys()){const{start:t,end:r}=(0,d.getTargetBufferRange)(n,e);o.start=Math.min(o.start,t),o.end=Math.max(o.end,r)}return o}function S(e,t){var r;const{store:n}=e.effects,{getTimeRange:o}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments,{overlaps:s}=e.registry.get(i.CoreExportNames.Utils).Ranges;for(const i of t){const t=v(e,i),a=void 0!==(null===(r=n.segmentDataCache.get(i))||void 0===r?void 0:r.error),c=s(t,o(i));!a&&c||k(e,i)}}function h(e,t){return n(this,void 0,void 0,(function*(){if(t.getState()===u.MediaSourceReadyState.Open)return;const r=e.registry.get(c.SourceExportNames.SourceState).stream;yield t.reopen(),yield t.setDuration(r.duration.value)}))}function E(e,t,r,n){var o,s;const i=r.currentTime,a=e.registry.get(c.SourceExportNames.SourceState).dataRanges;let u=!1;for(const[e,r]of t.streamSequenceMap){const t=r[r.length-1];if(r.length>0&&(u=!0),t){const{parsedPlaybackTime:r,parsedDuration:n}=t.segmentTiming,o=r+n;if(e.timeRange.end>o)return!1}for(const e of r){if(e.segmentTiming.parsedPlaybackTime+e.segmentTiming.parsedDuration<i)continue;if(!(null!==(s=null===(o=a.media[e.selectionGroup.mediaId])||void 0===o?void 0:o.source[n.buffered])&&void 0!==s?s:[]).includes(e))return!1}}return u}function x(e,t){const r=e.registry.get(c.SourceExportNames.SourceState).stream,{Type:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Stream;if(r.type===n.Live)return!1;for(const[{sequenceNumber:e,mediaId:n},o]of t.streamSequenceMap)for(let t=r.selectionGroups.length-1;t>=0;t--){const o=r.selectionGroups[t];if(o.sequenceNumber!==1/0&&o.mediaId===n){if(o.sequenceNumber>e)return!1;if(o.sequenceNumber<=e)break}}return!0}function T(e,t,r,n,o){const s=E(e,t,n,o),i=x(e,t);s&&i&&r.close()}function C(e,t){const{state:r}=e.effects,n=e.registry.get(c.SourceExportNames.SourceState),{parsedDuration:o,encodedDuration:s}=t.segmentTiming,{isMediaTrack:a}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks;o!==s&&a(t.track)&&r.dispatch(n.stream.onDurationMismatch.trigger,{segment:t,track:t.track,expectedDuration:o,actualDuration:s})}function k(e,t){const r=e.registry.get(a.DataExportNames.StreamTimeline),n=t.selectionGroup,{state:o}=e.effects,s=r.find((e=>e.sequenceNumber===n.sequenceNumber));if(s){const e=s.streamSequenceMap.get(n);e&&o.dispatch(e.remove,t)}}function N(e){return Array.from(e.streamSequenceMap.keys())}function A(e,t){return N(e).every((({tracks:e})=>e.every((({timeRange:{start:e,end:r}})=>e<=t&&r>t))))}function M(e,t,r,n){const o=[],i=t.currentTime,a=r.getBufferedRanges(),c=e.registry.get(s.BundleExportNames.Logger);if(A(n,i))return;for(const[{mimeType:e},t]of a){let r;for(const{start:e,end:n}of t)if(n>i){r={start:e,end:n};break}if(void 0===r)return void c.debug(`Not setting current time yet - "${e}" buffer is empty`);o.push(r)}let u=o[0];for(const{start:e,end:t}of o)u={start:Math.max(u.start,e),end:Math.min(u.end,t)};if(u.start>=u.end)c.debug("Not setting current time yet - buffers don't overlap");else if(i<u.start){const e=u.start;c.log(`Setting currentTime to start of buffer (${i.toFixed(2)} → ${e.toFixed(2)})`),t.currentTime=e}}function w(e,t){return n(this,void 0,void 0,(function*(){if(t.length<1)return;const{state:r}=e.effects,o=e.registry.get(s.BundleExportNames.Logger),a=e.registry.get(c.SourceExportNames.SourceState),{Tracks:u,Segments:f}=e.registry.get(i.CoreExportNames.CoreStateAtoms),{isMediaTrack:d}=u,{getReadableSegmentName:g}=f;yield Promise.all(t.map((t=>n(this,void 0,void 0,(function*(){if(!d(t.track))return;yield P(e,t);const{parsedPlaybackTime:n,encodedPlaybackTime:s,timestampOffset:i}=t.segmentTiming;if(i===-1/0){const e=g(t);return void o.debug(`Cannot verify segment timing - timestampOffset is not set (${e})`)}const c=s+i;n!==c&&r.dispatch(a.stream.onPlaybackTimeMismatch.trigger,{track:t.track,segment:t,expectedTime:c,actualTime:n})})))))}))}function P(e,t){return n(this,void 0,void 0,(function*(){const{segmentTiming:r}=t,{abortable:n,state:s,store:i}=e.effects,a=i.segmentDataCache.get(t);if(void 0===a)throw new f.SegmentCacheMissError;if(-1!==r.encodedPlaybackTime)return r.encodedPlaybackTime;if(a.closed)throw new f.EncodedPlaybackTimeUnknownError;return n(((t,n)=>{const i=(0,o.createTask)("data-awaiter",((e,t)=>{const{closed:r,error:o}=e;(r||o)&&(g(),n(new f.EncodedPlaybackTimeUnknownError))})),c=(0,o.createTask)("segment-data-cleared-subscriber",((e,t)=>{g(),n(new f.EncodedPlaybackTimeUnknownError)})),u=(0,o.createTask)("encoded-playback-time-awaiter",(({encodedPlaybackTime:e},r)=>{-1!==e&&(g(),t(e))})),d=[s.subscribe(e,r,u),s.subscribe(e,a,i),s.subscribe(e,a.cleared,c)],g=()=>d.forEach((e=>e()))}))}))}t.SegmentAppendageQueueConsumer=(0,o.createTaskClosure)(((e,t,r,o)=>["segment-appendage-queue-consumer",(s,i)=>n(void 0,void 0,void 0,(function*(){s=[...s];const n=i.registry.get(c.SourceExportNames.SourceState),{state:a}=i.effects;for(const e of s)a.dispatch(n.dataRanges.addSegment,e.selectionGroup.mediaId,t.appending,e);try{yield h(i,e),yield(0,l.maybeUpdateTimestampOffset)(i,e,s),yield w(i,s),yield Promise.all(s.map((r=>b(i,t,e,r)))),M(i,o,e,r),T(i,r,e,o,t),yield i.fork((0,m.BufferClearingTask)(e,r,t),n.playback.playhead)}catch(e){throw S(i,s),e}finally{p(i);for(const e of s)a.dispatch(n.dataRanges.removeSegment,e.selectionGroup.mediaId,t.appending,e)}}))])),t.removeSegmentFromStreamTimeline=k,t.waitForEncodedPlaybackTime=P},9657:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.KeepUpdatingSegmentsToAppend=void 0;const n=r(1270),o=r(4809),s=r(7269),i=r(3799);t.KeepUpdatingSegmentsToAppend=(0,n.createTask)("keep-updating-segments-to-append",(({section:e,dataRangeIds:t,segmentAppendageQueue:r},n)=>{const{loop:o,state:i}=n.effects,{playback:{playhead:c}}=n.registry.get(s.SourceExportNames.SourceState),u=a(t,e,r);i.subscribe(n,r.consumed,u),i.subscribe(n,c,u),i.subscribe(n,e.streamSequenceMap,u);for(const[t,r]of e.streamSequenceMap)i.subscribe(n,r,u);return n.fork(u,c),o(n.abortSignal)}));const a=(0,n.createTaskClosure)(((e,t,r)=>["select-segments-to-append",(n,s)=>{const{areSegmentsOverlapping:i}=s.registry.get(o.CoreExportNames.CoreStateAtoms).Segments;let a=u(s,e,t);a=c(a,r),a.length>=1&&!i(a)&&a.splice(1,a.length-1),a.length<1||s.effects.state.dispatch(r.appendSegments.trigger,a)}]));function c(e,t){const r=[];for(const e of t.queue)for(const t of e)r.push(t.selectionGroup.mediaId);return e.filter((e=>!r.includes(e.selectionGroup.mediaId)))}function u(e,t,r){var n,a,c,u;const f=e.registry.get(s.SourceExportNames.SourceState),d=f.dataRanges,g=[],{isMediaSelectionGroup:m,getMediaType:l}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,{overlaps:p}=e.registry.get(o.CoreExportNames.Utils).Ranges,{getGapToNextSegment:y}=e.registry.get(o.CoreExportNames.CoreStateAtoms).Segments;for(const[o,s]of r.streamSequenceMap){if(!m(o))continue;const r=l(o),b=(0,i.getMediaTypeTargetRanges)(f,r),v=null!==(a=null===(n=d.media[o.mediaId])||void 0===n?void 0:n.source[t.buffered])&&void 0!==a?a:[],S=null!==(u=null===(c=d.media[o.mediaId])||void 0===c?void 0:c.source[t.appending])&&void 0!==u?u:[];for(let t=0;t<s.length;t++){const r=s[t],{parsedPlaybackTime:n,parsedDuration:o}=r.segmentTiming,i=n+o,a=v.includes(r),c=S.includes(r),u=y(r,s[t+1]),f=void 0!==u&&i===u.start,d=n>=b.start&&n<b.end,m=i>b.start&&i<=b.end,l=e.effects.store.segmentDataCache.has(r);if((d||m||(b.start===i||void 0!==u&&p(b,u))&&f)&&!a&&!c&&l){g.push(r);break}}}return g.sort(((e,t)=>e.segmentTiming.parsedPlaybackTime-t.segmentTiming.parsedPlaybackTime)),g}},9791:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.maybeUpdateTimestampOffset=void 0;const o=r(8668),s=r(4809),i=r(8423);function a(e,t,r){return n(this,void 0,void 0,(function*(){const t=[];for(const e of r){const{timestampOffset:r}=e.segmentTiming;r===-1/0&&t.push(e)}0!==t.length&&(yield c(e,t))}))}function c(e,t){return n(this,void 0,void 0,(function*(){const{state:r}=e.effects,s=e.registry.get(o.BundleExportNames.Logger),a=d(t),c=new Map;yield Promise.all(a.map((t=>n(this,void 0,void 0,(function*(){yield(0,i.waitForEncodedPlaybackTime)(e,t),c.set(t.track,u(e,t))})))));const f=Array.from(c.values()),g=Math.max(...f);if(void 0!==g){s.debug(`Determined timestampOffset to be (${g})`);for(const[e]of c)for(const t of e.segments){const e=t.segmentTiming;e.timestampOffset===-1/0&&r.dispatch(e.timestampOffsetChanged,g)}}else s.debug(`Could not determine timestamp offset (${f})`)}))}function u(e,t){const r=f(e,t);if(void 0!==r)return r;{const{parsedPlaybackTime:e,encodedPlaybackTime:r}=t.segmentTiming;return e-r}}function f(e,t){var r;const n=t.track,o=n.selectionGroup.tracks.filter((e=>e!==n)),{getTimeRange:i}=e.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{overlaps:a}=e.registry.get(s.CoreExportNames.Utils).Ranges,c=i(t);for(const e of o){const t=e.segments.find((e=>a(i(e),c))),{timestampOffset:n}=null!==(r=null==t?void 0:t.segmentTiming)&&void 0!==r?r:{};if(void 0!==n&&n!==-1/0)return n}}function d(e){const t=new Map;for(const r of e){const e=r.track,n=t.get(e);if(void 0!==n){const{parsedPlaybackTime:o}=n.segmentTiming,{parsedPlaybackTime:s}=r.segmentTiming;s<o&&t.set(e,r)}else t.set(e,r)}return Array.from(t.values())}t.maybeUpdateTimestampOffset=a},4579:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))},o=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,s){o(n,s,(t=e[r](t)).done,t.value)}))}}function o(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)}};Object.defineProperty(t,"__esModule",{value:!0}),t.appendSegment=t.maybeAppendInitSegment=void 0;const s=r(8668),i=r(4809),a=r(3966),c=r(3799);function u(e,t,r){var s,a,u,d;return n(this,void 0,void 0,(function*(){const{isDataSegment:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments;if(!n(t))return;const g=e.effects.store.segmentDataCache.get(t);if(!g)throw new Error("Ey yo, wtf");try{for(var m,l=!0,p=o(g);m=yield p.next(),!(s=m.done);){d=m.value,l=!1;try{const n=d,o=(0,c.getMatchingBuffer)(e,r.buffers,n.containerFormat,n.mediaTypes);if(!o)continue;if(o.initSegment===t.initSegment)return;yield f(e,t.initSegment,r),e.effects.state.dispatch(o.setInitSegment,t.initSegment)}finally{l=!0}}}catch(e){a={error:e}}finally{try{l||s||!(u=p.return)||(yield u.call(p))}finally{if(a)throw a.error}}}))}function f(e,t,r){var u,f,d,g,m,l,p,y;return n(this,void 0,void 0,(function*(){const n=e.registry.get(s.BundleExportNames.Logger),{isDataOrSelfInitSegment:b}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments;n.debug("Appending",t.url);const v=e.effects.store.segmentDataCache.get(t);if(!v)throw new a.SegmentCacheMissError;try{for(var S,h=!0,E=o(v);S=yield E.next(),!(u=S.done);){g=S.value,h=!1;try{const s=g,i=(0,c.getMatchingBuffer)(e,r.buffers,s.containerFormat,s.mediaTypes);if(!i){n.log(`Can't append "${s.mediaTypes}" data "${t.url}": there is no buffer of the given type`);continue}b(t)&&t.segmentTiming.timestampOffset>-1/0&&(yield r.setTimestampOffset(i,t.segmentTiming.timestampOffset));try{for(var x,T=!0,C=(l=void 0,o(s.fragments));x=yield C.next(),!(m=x.done);){y=x.value,T=!1;try{const e=y;yield r.appendData(i,e)}finally{T=!0}}}catch(e){l={error:e}}finally{try{T||m||!(p=C.return)||(yield p.call(C))}finally{if(l)throw l.error}}}finally{h=!0}}}catch(e){f={error:e}}finally{try{h||u||!(d=E.return)||(yield d.call(E))}finally{if(f)throw f.error}}n.debug("Appended",t.url)}))}t.maybeAppendInitSegment=u,t.appendSegment=f},1991:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.verifyCodecs=void 0;const n=r(8668);class o extends Error{constructor(e){super(`MediaType "${e}" is present in track but missing in segment`),this.name="MediaTypeMissingError"}}function s(e,t,r){return void 0!==r?`"${e}" codecs don't match between track (${t}) and segment (${r})`:`Segment doesn't contain "${e}" codec, but track does`}function i(e,t,r){const o=t.split(".")[0],i=r.find((e=>o===e.split(".")[0])),a=e.registry.get(n.BundleExportNames.Logger);i?t!==i&&a.log(`Codecs don't match between track and segment (${t}, ${i})`):a.warn(s(t))}function a(e,t,r,a){var c;const u=e.registry.get(n.BundleExportNames.Logger),[f,d]=null!==(c=a.find((([e])=>e===t)))&&void 0!==c?c:[];if(!d)throw new o(t);if(r.length===d.length)for(const t of r)i(e,t,d);else u.warn(s(t,r,d))}function c(e,t,r){if(t.codecs.size!==r.length)throw new Error(`Detected codec mismatch - track specifies ${t.codecs.size} codecs, but segment contains ${r.length}`);for(const[n,o]of t.codecs)a(e,n,o,r)}t.verifyCodecs=c},1851:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectContainerFormatTask=void 0;const n=r(1270),o=r(5225),s=r(4809);function i(e){const{ContainerFormat:t}=e.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{isContainerSupported:r}=e.registry.get(o.CapabilitiesExportNames.PlatformCapabilities);return Object.values(t).filter(r)}t.SelectContainerFormatTask=(0,n.createTaskClosure)((e=>["select-container",({availableContainerFormats:t,segment:r},n)=>{const{store:o,state:s}=e.effects,{containerFormatMap:a}=o,c=i(e),u=t.filter((e=>c.includes(e)))[0],f=r.selectionGroup;return s.dispatch(a.add,f,u),u}]))},6254:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.startPresentationSegmentProcessing=void 0;const o=r(1270),s=r(4809),i=r(1146),a=r(7718),c=(0,o.createTask)("timeline-section-subscriber",((e,t)=>n(void 0,void 0,void 0,(function*(){const{mapSubscribe:r}=t.registry.get(s.CoreExportNames.Utils).State;for(const[n,o]of e.streamSequenceMap)r(t,o,a.SegmentDataStreamSubscriber)}))));function u(e){const t=e.registry.get(i.DataExportNames.StreamTimeline),{mapSubscribe:r}=e.registry.get(s.CoreExportNames.Utils).State;r(e,t,c)}t.startPresentationSegmentProcessing=u},7718:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentDataStreamSubscriber=void 0;const o=r(1270),s=r(4809),i=r(158),a=r(215),c=r(1851),u=r(1023);function f(e,t,r){const{createTransient:n}=e.registry.get(s.CoreExportNames.Utils).State;return{input:t.data,segment:t,output:r,codecsExtracted:n(e),playbackTimeExtracted:n(e),durationExtracted:n(e),selectContainerFormat:(0,c.SelectContainerFormatTask)(e)}}function d(e,t){return n(this,void 0,void 0,(function*(){const r=e.effects.store.segmentDataCache;if(r.has(t))return;const{state:n}=e.effects,o=(0,a.getOrCreateOutputStream)(e,r,t),c=f(e,t,o),d=e.registry.get(i.SegmentProcessingExportNames.SegmentProcessingComponent),g=(0,u.subscribeToTransients)(e,c),{DataStreamClearedError:m,DataStreamClosedError:l}=e.registry.get(s.CoreExportNames.CoreStateAtoms).DataStream,{QueueItemRemovedError:p}=e.registry.get(s.CoreExportNames.CoreStateAtoms).Queue,y=e=>[l,m,p].some((t=>e instanceof t));try{yield e.fork(d.process,c,y)}catch(e){const s=e instanceof Error?e:new Error("Failed to fetch segment");if(n.dispatch(o.throw,s),r.delete(t),!y(s))throw s}finally{g()}}))}t.SegmentDataStreamSubscriber=(0,o.createTask)("segment-data-stream-subscriber",((e,t)=>n(void 0,void 0,void 0,(function*(){const{isDataSegment:r}=t.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,n=r(e)?[e,e.initSegment]:[e];yield Promise.all(n.map((e=>d(t,e))))}))))},1023:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.subscribeToTransients=void 0;const n=r(1270),o=r(8668),s=r(4809),i=r(1991);function a(e,{value:t},r){if(void 0===t)throw new Error("CodecMap was unexpectedly undefined");const{isMediaTrack:n}=r.registry.get(s.CoreExportNames.CoreStateAtoms).Tracks,{track:a}=e;if(!n(a))return;const c=[],u=Object.keys(t);for(const e of u)c.push([e,t[e]]);if(0===a.codecs.size){r.registry.get(o.BundleExportNames.Logger).log("Parsed codecs from segment",c),r.effects.state.dispatch(a.codecs.setAll,c)}else(0,i.verifyCodecs)(r,a,c)}function c(e,t,r){const{isDataOrSelfInitSegment:n}=r.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{state:o}=r.effects;if(!n(e)||void 0===t.value||-1!==e.segmentTiming.encodedDuration)return;const{encodedPlaybackTime:i,dataParsed:a}=e.segmentTiming;o.dispatch(a,t.value,i)}function u(e,t,r){const{isDataOrSelfInitSegment:n}=r.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{state:o}=r.effects;if(!n(e)||void 0===t.value)return;const{encodedPlaybackTime:i,encodedDuration:a,dataParsed:c}=e.segmentTiming;-1===i&&o.dispatch(c,a,t.value)}function f(e,t){const r=[e.effects.state.subscribe(e,t.codecsExtracted,(0,n.createTask)("segment-codec-updater",a.bind(void 0,t.segment))),e.effects.state.subscribe(e,t.durationExtracted,(0,n.createTask)("segment-duration-updater",c.bind(void 0,t.segment))),e.effects.state.subscribe(e,t.playbackTimeExtracted,(0,n.createTask)("segment-playback-time-updater",u.bind(void 0,t.segment)))];return()=>{for(const e of r)e()}}t.subscribeToTransients=f},158:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentProcessorType=t.SegmentProcessingExportNames=void 0,function(e){e.SegmentProcessingComponent="segment-processing-component",e.SegmentProcessorType="segment-processor-type",e.SegmentProcessorErrors="segment-processor-errors"}(t.SegmentProcessingExportNames||(t.SegmentProcessingExportNames={})),function(e){e.Decryptor="decryptor",e.Parser="parser",e.Preprocessor="preprocessor",e.Transmuxer="transmuxer",e.Postprocessor="postprocessor"}(t.SegmentProcessorType||(t.SegmentProcessorType={}))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={exports:{}};return e[n].call(s.exports,s,s.exports,r),s.exports}return r(2160)})()));
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.presentation=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.presentation=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function r(e,t,r){const n=t;return n._name=e,{onAdd:n,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function n(e){return(...t)=>{const[n,o]=e(...t);return r(n,o)}}function o(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=n,t.getTaskName=o},8668:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(t.BundleExportNames||(t.BundleExportNames={}))},5225:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CapabilitiesExportNames=void 0,function(e){e.PlatformCapabilities="platform-capabilities"}(t.CapabilitiesExportNames||(t.CapabilitiesExportNames={}))},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},7755:(e,t)=>{function r(e,t){return e.length===t.length&&e.every(((e,r)=>e===t[r]))}function n(e,...t){return 0!==t.length&&(e.push(...t),!0)}function o(e,...t){const r=e.length;for(const r of t)e.includes(r)||e.push(r);return r===e.length}function s(e,t,...r){return 0!==r.length&&(e.splice(t,0,...r),!0)}function i(e,t,r){let n=0,o=e.length;for(;n<o;){const s=n+o>>>1;r(e[s])<r(t)?n=s+1:o=s}return n}function a(e,t,...r){const n=e.length;if(0===r.length)return!1;if(0===e.length)return e.push(...r.sort(((e,r)=>t(e)-t(r)))),!0;for(const n of r){const r=t(n),o=t(e[0]);if(t(e[e.length-1])<=r)e.push(n);else if(r<=o)e.unshift(n);else{const r=i(e,n,t);e.splice(r,0,n)}}return e.length!==n}function c(e,...t){let r=!1;for(const n of t){const t=e.indexOf(n);t<0||(r=!0,e.splice(t,1))}return r}function u(e){return 0!==e.length&&(e.splice(0,e.length),!0)}function f(e,t){if(r(e,t))return!1;const n=u(e);return t.forEach((t=>e.push(t))),n||t.length>0}Object.defineProperty(t,"__esModule",{value:!0}),t.createArrayAtom=void 0;const d=(e,t=[])=>{const r={add:n,insert:s,insertSorted:a,remove:c,clear:u,set:f,addIfNew:o};return e.effects.state.create(t,r)};t.createArrayAtom=d},1146:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DataExportNames=void 0,function(e){e.StreamTimeline="stream-timeline"}(t.DataExportNames||(t.DataExportNames={}))},9861:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.activeSectionUpdaterTask=void 0;const n=r(1270),o=r(4809),s=r(1146),i=r(7269),a=r(3799);t.activeSectionUpdaterTask=(0,n.createTask)("active-section-update",(([e,t],r)=>{const n=r.registry.get(i.SourceExportNames.SourceState),o=r.registry.get(s.DataExportNames.StreamTimeline),a=c([e,t]);return r.effects.state.subscribe(r,n.playback.playhead,a),r.effects.state.subscribe(r,o,a),r.fork(a,o),r.effects.loop(r.abortSignal)}));const c=(0,n.createTaskClosure)((([e,t])=>["active-section-update",(r,n)=>{if(!d(n)||u(n))return;const o=m(n,t.dataRangeIds.buffered);o&&n.effects.state.dispatch(e.setActiveSection,o)}]));function u(e){const t=e.registry.get(i.SourceExportNames.SourceState),r=t.playback.playhead.position;return t.stream.duration.value<r||r<0}function f(e){const{MediaType:t}=e.registry.get(o.CoreExportNames.Constants),r=e=>e!==t.Unknown&&e!==t.Subtitle,n=e.registry.get(i.SourceExportNames.SourceState).activeMediaTypes;return Array.from(n.keys()).filter(r).length}function d(e){const{isMediaSelectionGroup:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,r=e.registry.get(s.DataExportNames.StreamTimeline),n=f(e);return r.length>0&&r.some((e=>Array.from(e.streamSequenceMap.keys()).filter(t).length===n))}function g(e,t){return e>=t.start&&e<=t.end}function m(e,t){const r=e.registry.get(i.SourceExportNames.SourceState),n=e.registry.get(s.DataExportNames.StreamTimeline),{isEndInRange:c}=e.registry.get(o.CoreExportNames.Utils).Ranges,u=f(e);return n.find((n=>{const o=y(e,n);if(o.length!==u)return!1;return!!o.every((({mediaType:e,selectionGroup:t})=>{const n=(0,a.getMediaTypeTargetRanges)(r,e);return g(n.start,t.timeRange)||c(n.end,t.timeRange)}))&&o.some((({mediaType:o,mediaId:s,selectionGroup:i})=>{var c,u;const f=(0,a.getMediaTypeTargetRanges)(r,o),d=p(e,n,o,f),g=null!==(u=null===(c=r.dataRanges.media[s])||void 0===c?void 0:c.ranges)&&void 0!==u?u:[],m=i.timeRange.end,y=g.length>0&&g.some((e=>e.start<=m&&m<=e.end)),b=l(e,d,s,t);return!y||!b}))}))}function l(e,t,r,n){var o,s;const{dataRanges:a}=e.registry.get(i.SourceExportNames.SourceState),c=null!==(s=null===(o=a.media[r])||void 0===o?void 0:o.source[n])&&void 0!==s?s:[];return t.every((e=>c.includes(e)))}function p(e,t,r,n){const{isVideoSelectionGroup:s,isAudioSelectionGroup:i}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,{isEndInRange:a,isStartInRange:c}=e.registry.get(o.CoreExportNames.Utils).Ranges,u=e.registry.get(o.CoreExportNames.Constants).MediaType,f=[];for(const[e,o]of t.streamSequenceMap)if(o.length&&(r===u.Audio&&i(e)||r===u.Video&&s(e)))for(const e of o){const t=e.segmentTiming.parsedPlaybackTime,r=e.segmentTiming.parsedPlaybackTime+e.segmentTiming.parsedDuration;(c(t,n)||a(r,n))&&f.push(e)}return f}function y(e,t){const{isVideoSelectionGroup:r,isAudioSelectionGroup:n}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,s=e.registry.get(o.CoreExportNames.Constants).MediaType;return Array.from(t.streamSequenceMap.keys()).map((e=>r(e)?{mediaType:s.Video,mediaId:e.mediaId,selectionGroup:e}:n(e)?{mediaType:s.Audio,mediaId:e.mediaId,selectionGroup:e}:void 0)).filter(Boolean)}},407:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GapHandlingTask=void 0;const n=r(1270),o=r(8668);t.GapHandlingTask=(0,n.createTaskClosure)((e=>["gap-handler",(t,r)=>{const{events:n}=r.effects;let s=!1;const a=()=>{if(s)return;const t=r.registry.get(o.BundleExportNames.Logger),n=i(r,e);void 0!==n&&(t.log(`Skipping buffer gap (${e.currentTime.toFixed(2)} → ${n.toFixed(2)})`),e.currentTime=n)},c=()=>{s=!0},u=()=>{s=!1},f=()=>{s=!1};return n.subscribe(r,e,"waiting",a),n.subscribe(r,e,"seeking",c),n.subscribe(r,e,"seeked",u),n.subscribe(r,e,"playing",f),r.effects.loop(r.abortSignal)}]));const s=.1;function i(e,t){const r=t.currentTime,n=t.buffered;for(let e=0;e<n.length;e++){const t=n.start(e),o=n.end(e);if(r>=t&&r<=o&&o-r<s&&e<n.length-1)return n.start(e+1)}}},6375:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.awaitMediaInfo=void 0;const o=r(1270),s=r(4809);function i(e){return e.tracks.some((e=>e.codecs.size>0))}function a(e){return void 0!==e.container.value}function c(e,t,r){return n(this,void 0,void 0,(function*(){const{abortable:n}=e.effects;return n((n=>{const s=(0,o.createTask)("segment-container-format-subscriber",((e,t)=>{r()&&(n(),i())})),i=e.effects.state.subscribe(e,t,s)}))}))}function u(e,t){return n(this,void 0,void 0,(function*(){return c(e,t.container,(()=>a(t)))}))}function f(e,t){return n(this,void 0,void 0,(function*(){const{containerFormatMap:r}=e.effects.store;return c(e,r,(()=>void 0!==r.get(t)))}))}function d(e,t){return n(this,void 0,void 0,(function*(){const{abortable:r,state:n}=e.effects,s=[],a=r((r=>{for(const a of t.tracks){const c=(0,o.createTask)("codec-subscriber",((e,n)=>{i(t)&&r()}));s.push(n.subscribe(e,a.codecs,c))}}));return a.finally((()=>s.forEach((e=>e())))).catch((()=>{})),a}))}function g(e,t){return n(this,void 0,void 0,(function*(){const{isMediaSelectionGroup:r}=e.registry.get(s.CoreExportNames.CoreStateAtoms).SelectionGroups,{containerFormatMap:n}=e.effects.store;for(const[o]of t.streamSequenceMap)r(o)&&(i(o)||(yield d(e,o)),a(o)||(yield u(e,o)),void 0===n.get(o)&&(yield f(e,o)))}))}t.awaitMediaInfo=g},2160:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.PresentationPackage=void 0;const o=r(7085),s=r(8668),i=r(5225),a=r(4809),c=r(1146),u=r(158),f=r(7269),d=r(3894),g=r(2566),m=r(1851),l=r(6254),p=r(7365),y=r(4417);t.PresentationPackage=(0,o.createPackage)("presentation",((e,t)=>n(void 0,void 0,void 0,(function*(){const{createMapStateAtom:e}=t.registry.get(a.CoreExportNames.CoreStateAtoms),{StateEffectFactory:r,EventListenerEffectFactory:n,StoreEffectFactory:o}=t.registry.get(a.CoreExportNames.CoreEffects),s=t.using(r,n),i=s.using(o("segmentDataCache",new Map)).using(o("containerFormatMap",e(s)));i.registry.maybeSet(p.PresentationExportNames.SelectContainerFormat,m.SelectContainerFormatTask);const{state:c}=i.effects,u=i.registry.get(f.SourceExportNames.SourceState),b=(0,y.VideoElementSubscriber)((0,g.createPresentationStateAtom)(i),(0,d.createActiveSectionAtom)(i));(0,l.startPresentationSegmentProcessing)(i),c.subscribe(i,u.video,b)}))),[s.BundleExportNames.Logger,a.CoreExportNames.Utils,f.SourceExportNames.SourceState,c.DataExportNames.StreamTimeline,a.CoreExportNames.CoreStateAtoms,a.CoreExportNames.CoreEffects,i.CapabilitiesExportNames.PlatformCapabilities,u.SegmentProcessingExportNames.SegmentProcessingComponent,u.SegmentProcessingExportNames.SegmentProcessorErrors]),t.default=t.PresentationPackage},3966:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.ActiveSectionSubscriber=t.SegmentCacheMissError=t.EncodedPlaybackTimeUnknownError=void 0;const o=r(1270),s=r(8668),i=r(4809),a=r(7269),c=r(6375),u=r(2012),f=r(1249),d=r(5457),g=r(3799);function m(e,t,r){const{MediaType:n}=e.registry.get(i.CoreExportNames.Constants),{getMediaTypeFromCodec:o,canSwitchBetweenAudioCodecs:s,extractCodec:a}=e.registry.get(i.CoreExportNames.Utils).Codecs,c=e=>r.filter((t=>o(t)===e));for(const e of t){const t=o(e);switch(t){case n.Video:{const r=a(e),n=c(t);if(void 0===r||0===n.length)return!1;if(!n.every((e=>r===a(e))))return!1;break}case n.Audio:{const r=c(t);if(0===r.length)return!1;if(!r.every((t=>s(e,t))))return!1;break}default:return!1}}return!0}function l(e,t,r,n,o){const{equals:s}=e.registry.get(i.CoreExportNames.Utils).Arrays;return t.find((([t,i,a])=>{const c=r===i,u=s(o,a),f=m(e,n,t);return c&&u&&f}))}function p(e,t,r){if(t.length!==r.length)return!0;for(let n=0;n<t.length;n++){const[o,s,i]=t[n];if(void 0===l(e,r,s,o,i))return!0}return!1}function y(e,t,r){return n(this,void 0,void 0,(function*(){const{events:n,abortable:o}=e.effects;t.close(),yield o((t=>{if(r.ended)t();else{const o=n.subscribe(e,r,"ended",(()=>{t(),o()}))}}))}))}function b(e){const t=[];if(void 0===e)return t;for(const{containerFormat:r,mediaTypes:n,codecs:o}of e.buffers)t.push([o,r,n]);return t}function S(e,t,r,n){if(r.length!==n.length)return!1;for(const[o,s,i]of r){const r=(0,g.getMatchingBuffer)(e,t.buffers,s,i);if(void 0===r)return!1;const a=l(e,n,s,o,i);if(void 0===a)return!1;const[c,u,f]=a;if(!t.canChangeBuffer(r,c,u))return!1}return!0}function v(e,t,r){return n(this,void 0,void 0,(function*(){r.bind(e);for(const[n,o,s]of t){const t=(0,g.getMatchingBuffer)(e,r.buffers,o,s);if(void 0===t)throw new Error("Could not find matching buffer");yield r.changeBuffer(t,n,o)}return r}))}function h(e,t,r,o){return n(this,void 0,void 0,(function*(){const n=e.registry.get(s.BundleExportNames.Logger),{waitFor:c}=e.registry.get(i.CoreExportNames.Utils).State;t&&(n.debug("Waiting for end of buffer before recreating the MSE..."),t.bind(e),yield y(e,t,o),n.debug("End of buffer reached, recreating MSE...")),yield null==t?void 0:t.dispose(),t=(0,u.createRenderer)(e);const f=c(e,t.onOpen);n.log(`Setting video element source to ${t.sourceUrl}`),o.src=t.sourceUrl,o.load(),yield f;for(const[e,n,o]of r)t.addBuffer(e,n,o);const d=e.registry.get(a.SourceExportNames.SourceState).stream;return yield t.setDuration(d.duration.value),t}))}function E(e,t,r,o,i,c){return n(this,void 0,void 0,(function*(){const n=e.registry.get(s.BundleExportNames.Logger),u=e.registry.get(a.SourceExportNames.SourceState).playback.playhead;if(void 0===t)return n.log(`Creating MSE for ${c}`),yield h(e,void 0,c,i);const d=b(t);return p(e,d,c)?S(e,t,d,c)?(n.log(`Changing MSE buffer types for ${c}`),t.bind(e),yield e.fork((0,f.BufferClearingTask)(t,o,r),u),yield v(e,c,t)):(n.log(`Re-creating MSE for ${c}`),yield h(e,t,c,i)):(n.log(`Re-using MSE for ${c}`,e.abortSignal.reason),t.bind(e),yield e.fork((0,f.BufferClearingTask)(t,o,r),u),t)}))}class x extends Error{constructor(){super("The encoded playback time could not be extracted from the segment"),this.name="EncodedPlaybackTimeUnknownError"}}t.EncodedPlaybackTimeUnknownError=x;class T extends Error{constructor(){super("Could not retrieve cached segment data for playback time retrieval"),this.name="SegmentCacheMissError"}}function C(e,t){const{MediaType:r}=e.registry.get(i.CoreExportNames.Constants),{isMediaSelectionGroup:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).SelectionGroups,{isMediaTrack:o}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks,s=Array.from(t.streamSequenceMap.keys()).filter(n).flatMap((e=>e.tracks)).filter(o);for(const e of s){const t=Array.from(e.codecs.keys()),n=t.includes(r.Muxed),o=t.includes(r.Audio),s=t.includes(r.Video);if(n||o&&s)return!0}return!1}function k(e,t){if(C(e,t))throw new Error("Muxed content is not yet supported");const r=[],{containerFormatMap:n}=e.effects.store,{isMediaTrack:o}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks;for(const[e]of t.streamSequenceMap){const t=n.get(e);if(void 0===t)throw new Error("Container format is unexpectedly undefined");let s,i=-1/0;for(const t of e.tracks){if(!o(t))continue;const{bitrate:e,codecs:r}=t;e>i&&r.size>0&&(i=e,s=r)}if(void 0===s)throw new Error("Could not determine codec to create buffers with");const a=Array.from(s.keys()),c=Array.from(s.values()).flat();r.push([c,t,a])}return r}t.SegmentCacheMissError=T;const N=(0,o.createTaskClosure)((e=>["buffer-statistics-printer",(t,r)=>{const n=r.registry.get(s.BundleExportNames.Logger);try{if(0===e.buffered.length)return void n.verbose(`Buffered for ${e.mediaTypes} is empty`);let t=`Buffered Ranges for ${e.mediaTypes}`;for(let r=0;r<e.buffered.length;r++){const n=e.buffered.start(r),o=e.buffered.end(r);t=`${t}\n\t[${r}] ${n.toFixed(2)} - ${o.toFixed(2)}`}n.verbose(t)}catch(t){n.verbose(`Could not get buffered ranges from ${e.mediaTypes} buffer`)}}])),A=(0,o.createTaskClosure)((e=>["duration-updater",({value:t},r)=>e.setDuration(t)]));t.ActiveSectionSubscriber=(0,o.createTaskClosure)(((e,t)=>["active-section-subscriber",({section:r},o)=>n(void 0,void 0,void 0,(function*(){if(!r)return;const{state:n,events:i,loop:u}=o.effects,g=o.registry.get(s.BundleExportNames.Logger),{activeRenderer:m,dataRangeIds:l}=e,p=o.registry.get(a.SourceExportNames.SourceState),y=p.stream,b=p.playback.playhead;yield(0,c.awaitMediaInfo)(o,r);const S=k(o,r);g.log("Preparing playback of section with buffers",S),i.subscribe(o,t,"timeupdate",(()=>{0!==t.currentTime&&n.dispatch(b.setPosition,t.currentTime)})),i.subscribe(o,t,"seeking",(()=>n.dispatch(b.setPosition,t.currentTime)));const v=yield E(o,m,l,r,t,S);return v.buffers.map((e=>n.subscribe(o,e.onUpdateEnd,N(e)))),n.dispatch(e.setActiveRenderer,v),n.subscribe(o,y.duration,A(v)),n.subscribe(o,b,(0,f.BufferClearingTask)(v,r,l)),o.fork(d.SegmentAppendage,{renderer:v,section:r,dataRangeIds:l,video:t}).catch((()=>{})),u(o.abortSignal)}))]))},7365:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PresentationExportNames=void 0,function(e){e.SelectContainerFormat="presentation-select-container-format-task"}(t.PresentationExportNames||(t.PresentationExportNames={}))},3799:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getMatchingBuffer=t.getTargetBufferRange=t.getMediaTypeTargetRanges=void 0;const n=r(4809);function o(e,t){const r=e.playback.playhead.position;return{start:r,end:r+e.config.buffer[t].forwardDuration}}function s(e,t){const r=e.playback.playhead.position,n=e.config.buffer[t];return{start:Math.max(0,r-n.backwardDuration),end:r+n.forwardDuration}}function i(e,t,r,o){const{equals:s}=e.registry.get(n.CoreExportNames.Utils).Arrays;return t.find((e=>s(e.mediaTypes,o)&&e.containerFormat===r))}t.getMediaTypeTargetRanges=o,t.getTargetBufferRange=s,t.getMatchingBuffer=i},7709:(e,t)=>{function r(e,t){t.log("Revoking MSE src object URL");try{URL.revokeObjectURL(e.src)}catch(e){t.warn("Revoking MSE src object URL failed:",e)}e.setAttribute("src",""),e.removeAttribute("src"),e.load()}Object.defineProperty(t,"__esModule",{value:!0}),t.resetVideoSource=void 0,t.resetVideoSource=r},4417:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VideoElementSubscriber=void 0;const n=r(1270),o=r(8668),s=r(7269),i=r(9861),a=r(407),c=r(3966),u=r(7709);t.VideoElementSubscriber=(0,n.createTaskClosure)(((e,t)=>["video-element-subscriber",(r,n)=>{const{fork:f,registry:d,effects:g,abortSignal:m}=n,{state:l,loop:p,abortable:y}=g,b=d.get(o.BundleExportNames.Logger);if(void 0===r.element)return b.log("Cannot set up presentation task - no video element"),y((e=>e()));const S=r.element,v=(0,c.ActiveSectionSubscriber)(e,S);return b.log("Setting up presentation task..."),l.subscribe(n,t,v),void 0!==t.section&&f(v,t),f((0,a.GapHandlingTask)(S),e),f(i.activeSectionUpdaterTask,[t,e],(()=>{var t;const r=null===(t=e.activeRenderer)||void 0===t?void 0:t.sourceUrl,{state:i}=n.effects;if(n.registry.has(s.SourceExportNames.SourceState)){const t=n.registry.get(s.SourceExportNames.SourceState).dataRanges;for(const r in t.media)for(const n of Object.values(e.dataRangeIds))i.dispatch(t.deleteSource,r,n)}return i.dispatch(e.setActiveRenderer,void 0),void 0!==r&&S.src===r&&(0,u.resetVideoSource)(S,n.registry.get(o.BundleExportNames.Logger)),!1})),p(m)}]))},3894:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createActiveSectionAtom=void 0;const r=()=>({section:void 0});function n(e,t){return e.section!==t&&(e.section=t,!0)}function o(e){return e.effects.state.create(r(),{setActiveSection:n})}t.createActiveSectionAtom=o},2566:(e,t)=>{function r(){return{activeRenderer:void 0,dataRangeIds:{buffered:"buffered",appending:"appending"}}}function n(e,t){return e.activeRenderer!==t&&(e.activeRenderer=t,!0)}function o(e){return e.effects.state.create(r(),{setActiveRenderer:n})}Object.defineProperty(t,"__esModule",{value:!0}),t.createPresentationStateAtom=void 0,t.createPresentationStateAtom=o},5159:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createSegmentAppendageQueueAtom=void 0;const o=r(1270),s=r(4809);function i(e){const{createTransient:t}=e.registry.get(s.CoreExportNames.Utils).State;return{queue:[],appendSegments:t(e),consumed:t(e)}}const a=(0,o.createTaskClosure)(((e,t,r,o)=>["segment-appendage-queue-subscriber",({value:s},i)=>n(void 0,void 0,void 0,(function*(){if(void 0===s)return;const n=t.queue;n.push(s);try{yield e.fork(r,s.slice(),o)}catch(e){}finally{const r=n.indexOf(s);r>-1&&n.splice(r,1),e.effects.state.dispatch(t.consumed.trigger)}}))]));function c(e,t,r=(()=>!1)){const{state:n}=e.effects,o=e.effects.state.create(i(e),{}),s=a(e,o,t,r);return n.subscribe(e,o.appendSegments,s),o}t.createSegmentAppendageQueueAtom=c},215:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getOrCreateOutputStream=void 0;const n=r(4809);function o(e,t,r){const{createDataStreamAtom:o}=e.registry.get(n.CoreExportNames.CoreStateAtoms).DataStream,s=o(e);return t.set(r,s),s}function s(e,t,r){var n;return null!==(n=t.get(r))&&void 0!==n?n:o(e,t,r)}t.getOrCreateOutputStream=s},1188:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceBufferActionFailedError=t.SourceBufferActionAbortedError=t.NotSupportedError=void 0;class r extends Error{constructor(e){super(`The operation "${e}" is not supported on this platform`),this.name="NotSupportedError"}}t.NotSupportedError=r;class n extends Error{constructor(){super("SourceBuffer action was aborted"),this.name="SourceBufferActionAbortedError"}}t.SourceBufferActionAbortedError=n;class o extends Error{constructor(e){super(`SourceBuffer action failed: ${e}`),this.name="SourceBufferActionFailedError"}}t.SourceBufferActionFailedError=o},2012:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createRenderer=void 0;const o=r(8668),s=r(5225),i=r(4809),a=r(6374),c=r(957),u=r(9583),f=r(8377);function d(e,t){const{state:r,events:n}=e.effects,{createTransient:o}=e.registry.get(i.CoreExportNames.Utils).State,s={onOpen:o(e),onClose:o(e),onEnded:o(e),onError:o(e)};return n.subscribe(e,t,"sourceopen",(()=>r.dispatch(s.onOpen.trigger))),n.subscribe(e,t,"sourceclose",(()=>r.dispatch(s.onClose.trigger))),n.subscribe(e,t,"sourceended",(()=>r.dispatch(s.onEnded.trigger))),n.subscribe(e,t,"error",(e=>r.dispatch(s.onError.trigger,new Error(JSON.stringify(e))))),s}function g(e,t){const r=e.get(t);if(!r)throw new Error("Unexpectedly encountered untracked value");return r}function m(e,t,r,n,s,i,a){const f=(0,c.generateMimeTypeString)(e,a,i,s);e.registry.get(o.BundleExportNames.Logger).debug(`Adding source buffer of type "${f}"`);const d=t.addSourceBuffer(f),g=(0,u.createSourceBufferActionQueue)(e,d),m=(0,c.createRendererBufferAtom)(e,s,a,i,!1,d),p=l(e,m,d);n.set(m,[d,g,p]),e.effects.state.dispatch(r.add,m)}function l(e,t,r){const{events:n,state:o}=e.effects,s=[n.subscribe(e,r,"updatestart",(()=>o.dispatch(t.onUpdateStart.trigger))),n.subscribe(e,r,"update",(()=>o.dispatch(t.onUpdate.trigger))),n.subscribe(e,r,"updateend",(()=>o.dispatch(t.onUpdateEnd.trigger))),n.subscribe(e,r,"error",(e=>o.dispatch(t.onError.trigger,new Error(e.type)))),n.subscribe(e,r,"abort",(()=>o.dispatch(t.onAbort.trigger)))];return()=>s.forEach((e=>e()))}function p(e,t,r,n,o,i){const{typeSupported:a}=e.registry.get(s.CapabilitiesExportNames.PlatformCapabilities),u=g(r,n)[0],f=(0,c.generateMimeTypeString)(e,n.mediaTypes,i,o);return"function"==typeof u.changeType&&a(f)}function y(e,t,r,n,o,s){const[i,a]=g(r,n),u=(0,c.generateMimeTypeString)(e,n.mediaTypes,s,o),f=e=>e.changeType(u);return a.execute(f)}function b(e,t,r,o,s){return n(this,void 0,void 0,(function*(){const[n,i]=g(r,s),a=e=>t.removeSourceBuffer(e);yield i.execute(a),r.delete(s),e.effects.state.dispatch(o.remove,s)}))}function S(e,t,r,n,s){const i=e.registry.get(o.BundleExportNames.Logger),[a,c]=g(r,n),u=e=>{e.timestampOffset=s};return i.log(`Setting timestamp offset to ${s.toFixed(2)} for buffer ${n.mediaTypes}/${n.codecs}`),e.effects.state.dispatch(n.setTimestampOffset,s),c.execute(u)}function v(e,t,r,n,o){const[s,i]=g(r,n),a=e=>e.appendBuffer(o.data.buffer);return i.execute(a)}function h(e,t,r,n,o,s){if(o>=s)return e.effects.abortable((e=>e()));const[i,a]=g(r,n),c=e=>e.remove(o,s);return a.execute(c)}function E(e,t,r){e.readyState===f.MediaSourceReadyState.Open&&e.setLiveSeekableRange(t,r)}function x(e,t,r,n){if(t.readyState===f.MediaSourceReadyState.Open){const e=()=>{t.duration=n};return r.execute(e)}return e.registry.get(o.BundleExportNames.Logger).log("Unable to set duration, media source not open"),e.effects.abortable((e=>e()))}function T(e,t,r){const n=e.registry.get(o.BundleExportNames.Logger);if(t.readyState===f.MediaSourceReadyState.Open){const e=()=>{t.endOfStream()};return n.debug("Signaling EoS..."),r.execute(e)}return n.log("Skipping EoS - media source not open"),e.effects.abortable((e=>e()))}function C(e,t){const r=[];try{for(let e=0;e<t.buffered.length;e++)r.push({start:t.buffered.start(e),end:t.buffered.end(e)})}catch(t){e.registry.get(o.BundleExportNames.Logger).debug("Could not determine buffered ranges for source buffer:",t)}return r}function k(e,t,r,n){const o=new Map;for(const[t,[r]]of n)o.set(t,C(e,r));return o}function N(e){return e.readyState}function A(e,t,r){const n=Array.from(r.entries());if(t.readyState===f.MediaSourceReadyState.Open||0===n.length)return e.effects.abortable((e=>e()));const[[o,[s]]]=n;return S(e,t,r,o,s.timestampOffset)}function M(e,t,r,n){for(const[e,[n]]of r)t.removeSourceBuffer(n);r.clear(),e.effects.state.dispatch(n.clear)}function w(e){const{createArrayAtom:t}=e.registry.get(i.CoreExportNames.CoreStateAtoms);let r=e;const n=new MediaSource,s=URL.createObjectURL(n),c=d(r,n),u=new Map,f=t(r,[]),g=(0,a.createRendererActionQueue)(r,u);return Object.assign(Object.assign({},c),{sourceUrl:s,buffers:f,addBuffer:m.bind(void 0,r,n,f,u),canChangeBuffer:p.bind(void 0,r,n,u),changeBuffer:y.bind(void 0,r,n,u),removeBuffer:b.bind(void 0,r,n,u,f),setTimestampOffset:S.bind(void 0,r,n,u),getBufferedRanges:k.bind(void 0,r,n,g,u),appendData:v.bind(void 0,r,n,u),removeData:h.bind(void 0,r,n,u),setSeekableRange:E.bind(void 0,n),setDuration:x.bind(void 0,r,n,g),getState:N.bind(void 0,n),close:T.bind(void 0,r,n,g),reopen:A.bind(void 0,r,n,u),dispose:M.bind(void 0,r,n,u,f),bind:e=>{const t=e.registry.get(o.BundleExportNames.Logger),n=Array.from(u.keys());t.debug("Binding renderer to new context..."),r=e,g.bind(r);for(let t=0;t<n.length;t++){const o=n[t],s=u.get(o);if(!s)continue;const[i,a,c]=s;c(),a.bind(r),s[2]=l(e,o,i)}}})}t.createRenderer=w},6374:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createRendererActionQueue=void 0;function o(e,t,r,s){return n(this,void 0,void 0,(function*(){if(t.executing)return;t.executing=!0;const n=r.shift();if(n)try{yield e.fork(s,n)}finally{t.executing=!1,o(e,t,r,s).catch((()=>{}))}else t.executing=!1}))}const s=(0,r(1270).createTaskClosure)((e=>["renderer-action",(t,r)=>n(void 0,void 0,void 0,(function*(){const{abortSignal:n,effects:o}=r,{abortable:s,events:a}=o;let c=()=>{},u=()=>{};const f=s(((e,t)=>{u=e,c=t})),d=[c],[g,m]=t,l=a.subscribe(r,n,"abort",(()=>{d.forEach((e=>e(n.reason)))}));f.catch((()=>{}));try{const{sourceBufferActionEnteredAbortables:t,sourceBufferActionAbortables:n}=i(r,e,f,d);yield Promise.all(t),yield g(void 0,r),u(),yield Promise.all(n),m()}finally{l()}}))]));function i(e,t,r,o){const s=[],i=[];for(const[a,[c,u]]of t){let t=()=>{};const a=e.effects.abortable(((e,r)=>{t=e,o.push(r)}));a.catch((()=>{}));const c=(e,o)=>n(this,void 0,void 0,(function*(){t(),yield r.catch((()=>{}))}));s.push(a),i.push(u.execute(c))}return{sourceBufferActionEnteredAbortables:s,sourceBufferActionAbortables:i}}function a(e,t){const r=[],n={executing:!1},i=s(t);return{execute:t=>{const{abortable:s}=e.effects;let a=()=>{},c=()=>{};const u=s(((e,t)=>{a=e,c=t}));return r.push([t,a,c]),o(e,n,r,i).catch((()=>{})),u},bind:t=>e=t,abort:()=>{}}}t.createRendererActionQueue=a},957:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createRendererBufferAtom=t.generateMimeTypeString=void 0;const n=r(7755),o=r(4809);function s(e,t,r,s,i){const{createTransient:a}=e.registry.get(o.CoreExportNames.Utils).State;return{onUpdateStart:a(e),onUpdate:a(e),onUpdateEnd:a(e),onError:a(e),onAbort:a(e),codecs:(0,n.createArrayAtom)(e,t),containerFormat:s,mediaTypes:(0,n.createArrayAtom)(e,r),encrypted:i,mimeType:c(e,r,s,t),timestampOffset:0,initSegment:void 0}}function i(e,t,r){const{MediaType:n}=e.registry.get(o.CoreExportNames.Constants),{ContainerFormat:s}=e.registry.get(o.CoreExportNames.CoreStateAtoms).Segments;return t===s.TS?n.Video:r}function a(e,t){return r=>`${i(e,t,r)}/${t}`}function c(e,t,r,n){return`${t.map(a(e,r)).join(";")};codecs="${n.join(",")}"`}function u(e,t){return e.timestampOffset!==t&&(e.timestampOffset=t,!0)}function f(e,t){return e.initSegment!==t&&(e.initSegment=t,!0)}function d(e,t,r,n,o){const{state:s}=e.effects,i=t.codecs.length===r.length&&t.codecs.every((e=>r.includes(e))),a=t.mediaTypes.length===n.length&&t.mediaTypes.every((e=>n.includes(e)));return(t.containerFormat!==o||!a||!i)&&(t.mimeType=c(e,n,o,r),t.containerFormat=o,s.dispatch(t.codecs.set,r),s.dispatch(t.mediaTypes.set,n),!0)}function g(e,t,r,n,i,a){const{deriveFrom:c}=e.registry.get(o.CoreExportNames.Utils).State,g=s(e,t,r,n,i);return c(g,"buffered",(()=>a.buffered)),e.effects.state.create(g,{setTimestampOffset:u,setInitSegment:f,updateType:d.bind(void 0,e)})}t.generateMimeTypeString=c,t.createRendererBufferAtom=g},9583:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceBufferActionQueue=void 0;const o=r(1270),s=r(1188),i=(0,o.createTask)("source-buffer-update-awaiter",((e,t)=>{const{events:r,abortable:n}=t.effects;return n(((n,o)=>{e.updating?(r.subscribe(t,e,"updateend",(()=>n())),r.subscribe(t,e,"abort",(()=>o(new s.SourceBufferActionAbortedError))),r.subscribe(t,e,"error",(e=>o(new s.SourceBufferActionFailedError(e))))):n()}))}));function a(e,t,r,o){return n(this,void 0,void 0,(function*(){if(t.executing)return;t.executing=!0;const n=r.shift();if(n)try{yield e.fork(o,n,(e=>e instanceof s.SourceBufferActionAbortedError))}finally{t.executing=!1,a(e,t,r,o).catch((()=>{}))}else t.executing=!1}))}const c=(0,o.createTaskClosure)((e=>["source-buffer-action",(t,r)=>n(void 0,void 0,void 0,(function*(){const[n,o,a]=t;let c=()=>{};try{yield r.fork(i,e,(()=>!0)).catch((()=>{}));const t=n(e,r);c=r.effects.events.subscribe(r,r.abortSignal,"abort",(()=>e.abort())),yield t,yield r.fork(i,e),c(),o()}catch(e){c();a(e instanceof Error?e:e instanceof Event?new s.SourceBufferActionFailedError(e):new Error(""))}}))]));function u(e,t){const r=[],n={executing:!1},o=c(t);let i=()=>{};const u=e=>{r.forEach((([t,n,o])=>{r.shift(),o(e)}))},f=()=>{i(),i=e.effects.events.subscribe(e,e.abortSignal,"abort",(()=>{u(new s.SourceBufferActionAbortedError)}))};return f(),{execute(t){const{abortable:s}=e.effects;let i=()=>{},c=()=>{};const u=s(((e,t)=>{i=e,c=t}));return u.catch((()=>{})),r.push([t,i,c]),a(e,n,r,o).catch((()=>{})),u},bind:t=>{e=t,f()},abort(e){u(new s.SourceBufferActionAbortedError)}}}t.createSourceBufferActionQueue=u},8377:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceBufferEvent=t.MediaSourceEvent=t.MediaSourceReadyState=void 0,function(e){e.Closed="closed",e.Open="open",e.Ended="ended"}(t.MediaSourceReadyState||(t.MediaSourceReadyState={})),function(e){e.Error="error",e.SourceOpen="sourceopen",e.SourceClose="sourceopen",e.WebkitSourceOpen="webkitsourceopen"}(t.MediaSourceEvent||(t.MediaSourceEvent={})),function(e){e.UpdateStart="updatestart",e.Update="update",e.UpdateEnd="updateend",e.Error="error",e.Abort="abort"}(t.SourceBufferEvent||(t.SourceBufferEvent={}))},1249:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferClearingTask=void 0;const o=r(1270),s=r(8668),i=r(4809),a=r(7269),c=r(8377),u=r(3799),f=r(8423);function d(e,t,r,o){return n(this,void 0,void 0,(function*(){if(t.getState()!==c.MediaSourceReadyState.Open)return;const n=yield t.getBufferedRanges(),s=[];for(const[r,o]of n){const n=g(e,r),i=[],a=o.filter((e=>e.start>n.end));m(e,o,{start:0,end:n.start})&&(s.push({start:0,end:n.start}),i.push(t.removeData(r,0,n.start))),a.length>0&&(s.push({start:a[0].start,end:1/0}),i.push(t.removeData(r,a[0].start,1/0))),yield Promise.all(i)}l(e,t.buffers,r,o),y(e,t.buffers)}))}function g(e,t){const r=e.registry.get(a.SourceExportNames.SourceState);if(0===t.mediaTypes.length)throw new Error("Renderer Buffer has no media types");return t.mediaTypes.map((e=>(0,u.getTargetBufferRange)(r,e))).reduce(((e,t)=>({start:Math.min(e.start,t.start),end:Math.max(e.end,t.end)})),{start:1/0,end:-1/0})}function m(e,t,r){const{overlaps:n}=e.registry.get(i.CoreExportNames.Utils).Ranges;let o=!1;for(let e=0;e<t.length;e++){o=n({start:t[e].start,end:t[e].end},r)||o}return o}function l(e,t,r,n){var o,c;const u=e.registry.get(a.SourceExportNames.SourceState).dataRanges,{isMediaSelectionGroup:d}=e.registry.get(i.CoreExportNames.CoreStateAtoms).SelectionGroups,{resetData:g}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments,m=e.registry.get(s.BundleExportNames.Logger),{state:l}=e.effects;for(const[s]of r.streamSequenceMap){if(!d(s))continue;const r=null!==(c=null===(o=u.media[s.mediaId])||void 0===o?void 0:o.source[n.buffered])&&void 0!==c?c:[];for(const o of[...r])p(e,o,t)||(l.dispatch(u.removeSegment,s.mediaId,n.buffered,o),(0,f.removeSegmentFromStreamTimeline)(e,o),g(o,e,m))}}function p(e,t,r){const{getTimeRange:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments,{overlaps:o,isFullyIncluded:s}=e.registry.get(i.CoreExportNames.Utils).Ranges,c=n(t),u=e.registry.get(a.SourceExportNames.SourceState).playback.playhead;for(const e of r){const t=e.buffered;for(let e=0;e<t.length;e++){const r={start:t.start(e),end:t.end(e)};if(c.end>=u.position?o(c,r):s(c,r))return!0}}return!1}function y(e,t){const r=e.effects.store.segmentDataCache,n=Array.from(r.keys()),{Segments:o,Tracks:s}=e.registry.get(i.CoreExportNames.CoreStateAtoms),{overlaps:c}=e.registry.get(i.CoreExportNames.Utils).Ranges,d=e.registry.get(a.SourceExportNames.SourceState),{isDataOrSelfInitSegment:m,isDataSegment:l,getTimeRange:y}=o,{isMediaTrack:b}=s,S=new Map;for(const r of t)S.set(r,g(e,r));const v=new Set,h=[];for(const o of n){if(!b(o.track))continue;if(!m(o)){h.push(o);continue}const n=c(Array.from(o.track.codecs.keys()).reduce(((e,t)=>{const{start:r,end:n}=(0,u.getTargetBufferRange)(d,t);return{start:Math.min(e.start,r),end:Math.max(e.end,n)}}),{start:1/0,end:-1/0}),y(o));p(e,o,t)||n?l(o)&&v.add(o.initSegment):(r.delete(o),(0,f.removeSegmentFromStreamTimeline)(e,o))}for(const e of h)v.has(e)||r.delete(e)}t.BufferClearingTask=(0,o.createTaskClosure)(((e,t,r)=>["buffer-clearing-task",(o,i)=>n(void 0,void 0,void 0,(function*(){const n=i.registry.get(s.BundleExportNames.Logger);try{n.debug("Clearing buffers"),yield d(i,e,t,r),n.debug("Done clearing buffers")}catch(e){n.debug("Failed to clear buffers:",e instanceof Error?e.message:e)}}))]))},5457:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentAppendage=void 0;const n=r(1270),o=r(4809),s=r(5159),i=r(3966),a=r(8423),c=r(9657);t.SegmentAppendage=(0,n.createTask)("segment-appendage",(({renderer:e,dataRangeIds:t,section:r,video:n},u)=>{const{MapUnsubscribedError:f}=u.registry.get(o.CoreExportNames.Utils).State,{QueueItemRemovedError:d}=u.registry.get(o.CoreExportNames.CoreStateAtoms).Queue,g=e=>e instanceof i.EncodedPlaybackTimeUnknownError||e instanceof f||e instanceof i.SegmentCacheMissError||e instanceof d,m=(0,s.createSegmentAppendageQueueAtom)(u,(0,a.SegmentAppendageQueueConsumer)(e,t,r,n),g);return u.fork(c.KeepUpdatingSegmentsToAppend,{section:r,segmentAppendageQueue:m,dataRangeIds:t})}))},8423:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.waitForEncodedPlaybackTime=t.removeSegmentFromStreamTimeline=t.SegmentAppendageQueueConsumer=void 0;const o=r(1270),s=r(8668),i=r(4809),a=r(1146),c=r(7269),u=r(8377),f=r(3966),d=r(3799),g=r(4579),m=r(1249),l=r(9791);function p(e){const t=e.effects.store.segmentDataCache,r=[];for(const[e,{error:n}]of t.entries())n&&r.push(e);for(const e of r)t.delete(e)}function y(e,t,r){const{state:n}=e.effects,o=e.registry.get(c.SourceExportNames.SourceState);n.dispatch(o.dataRanges.addSegment,r.selectionGroup.mediaId,t.buffered,r),n.dispatch(o.dataRanges.removeSegment,r.selectionGroup.mediaId,t.appending,r)}function b(e,t,r,o){return n(this,void 0,void 0,(function*(){yield(0,g.maybeAppendInitSegment)(e,o,r),yield(0,g.appendSegment)(e,o,r),C(e,o),y(e,t,o)}))}function S(e,t){const{isMediaTrack:r}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks,n=e.registry.get(c.SourceExportNames.SourceState);if(!r(t.track))throw new Error("Encountered non-media segment during segment appendage");const o={start:1/0,end:-1/0};for(const e of t.track.codecs.keys()){const{start:t,end:r}=(0,d.getTargetBufferRange)(n,e);o.start=Math.min(o.start,t),o.end=Math.max(o.end,r)}return o}function v(e,t){var r;const{store:n}=e.effects,{getTimeRange:o}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments,{overlaps:s}=e.registry.get(i.CoreExportNames.Utils).Ranges;for(const i of t){const t=S(e,i),a=void 0!==(null===(r=n.segmentDataCache.get(i))||void 0===r?void 0:r.error),c=s(t,o(i));!a&&c||k(e,i)}}function h(e,t){return n(this,void 0,void 0,(function*(){if(t.getState()===u.MediaSourceReadyState.Open)return;const r=e.registry.get(c.SourceExportNames.SourceState).stream;yield t.reopen(),yield t.setDuration(r.duration.value)}))}function E(e,t,r,n){var o,s;const i=r.currentTime,a=e.registry.get(c.SourceExportNames.SourceState).dataRanges;let u=!1;for(const[e,r]of t.streamSequenceMap){const t=r[r.length-1];if(r.length>0&&(u=!0),t){const{parsedPlaybackTime:r,parsedDuration:n}=t.segmentTiming,o=r+n;if(e.timeRange.end>o)return!1}for(const e of r){if(e.segmentTiming.parsedPlaybackTime+e.segmentTiming.parsedDuration<i)continue;if(!(null!==(s=null===(o=a.media[e.selectionGroup.mediaId])||void 0===o?void 0:o.source[n.buffered])&&void 0!==s?s:[]).includes(e))return!1}}return u}function x(e,t){const r=e.registry.get(c.SourceExportNames.SourceState).stream,{Type:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Stream;if(r.type===n.Live)return!1;for(const[{sequenceNumber:e,mediaId:n},o]of t.streamSequenceMap)for(let t=r.selectionGroups.length-1;t>=0;t--){const o=r.selectionGroups[t];if(o.sequenceNumber!==1/0&&o.mediaId===n){if(o.sequenceNumber>e)return!1;if(o.sequenceNumber<=e)break}}return!0}function T(e,t,r,n,o){const s=E(e,t,n,o),i=x(e,t);s&&i&&r.close()}function C(e,t){const{state:r}=e.effects,n=e.registry.get(c.SourceExportNames.SourceState),{parsedDuration:o,encodedDuration:s}=t.segmentTiming,{isMediaTrack:a}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks;o!==s&&a(t.track)&&r.dispatch(n.stream.onDurationMismatch.trigger,{segment:t,track:t.track,expectedDuration:o,actualDuration:s})}function k(e,t){const r=e.registry.get(a.DataExportNames.StreamTimeline),n=t.selectionGroup,{state:o}=e.effects,s=r.find((e=>e.sequenceNumber===n.sequenceNumber));if(s){const e=s.streamSequenceMap.get(n);e&&o.dispatch(e.remove,t)}}function N(e){return Array.from(e.streamSequenceMap.keys())}function A(e,t){return N(e).every((({tracks:e})=>e.every((({timeRange:{start:e,end:r}})=>e<=t&&r>t))))}function M(e,t,r,n){const o=[],i=t.currentTime,a=r.getBufferedRanges(),c=e.registry.get(s.BundleExportNames.Logger);if(A(n,i))return;for(const[{mimeType:e},t]of a){let r;for(const{start:e,end:n}of t)if(n>i){r={start:e,end:n};break}if(void 0===r)return void c.debug(`Not setting current time yet - "${e}" buffer is empty`);o.push(r)}let u=o[0];for(const{start:e,end:t}of o)u={start:Math.max(u.start,e),end:Math.min(u.end,t)};if(u.start>=u.end)c.debug("Not setting current time yet - buffers don't overlap");else if(i<u.start){const e=u.start;c.log(`Setting currentTime to start of buffer (${i.toFixed(2)} → ${e.toFixed(2)})`),t.currentTime=e}}function w(e,t){return n(this,void 0,void 0,(function*(){if(t.length<1)return;const{state:r}=e.effects,o=e.registry.get(s.BundleExportNames.Logger),a=e.registry.get(c.SourceExportNames.SourceState),{Tracks:u,Segments:f}=e.registry.get(i.CoreExportNames.CoreStateAtoms),{isMediaTrack:d}=u,{getReadableSegmentName:g}=f;yield Promise.all(t.map((t=>n(this,void 0,void 0,(function*(){if(!d(t.track))return;yield P(e,t);const{parsedPlaybackTime:n,encodedPlaybackTime:s,timestampOffset:i}=t.segmentTiming;if(i===-1/0){const e=g(t);return void o.debug(`Cannot verify segment timing - timestampOffset is not set (${e})`)}const c=s+i;n!==c&&r.dispatch(a.stream.onPlaybackTimeMismatch.trigger,{track:t.track,segment:t,expectedTime:c,actualTime:n})})))))}))}function P(e,t){return n(this,void 0,void 0,(function*(){const{segmentTiming:r}=t,{abortable:n,state:s,store:i}=e.effects,a=i.segmentDataCache.get(t);if(void 0===a)throw new f.SegmentCacheMissError;if(-1!==r.encodedPlaybackTime)return r.encodedPlaybackTime;if(a.closed)throw new f.EncodedPlaybackTimeUnknownError;return n(((t,n)=>{const i=(0,o.createTask)("data-awaiter",((e,t)=>{const{closed:r,error:o}=e;(r||o)&&(g(),n(new f.EncodedPlaybackTimeUnknownError))})),c=(0,o.createTask)("segment-data-cleared-subscriber",((e,t)=>{g(),n(new f.EncodedPlaybackTimeUnknownError)})),u=(0,o.createTask)("encoded-playback-time-awaiter",(({encodedPlaybackTime:e},r)=>{-1!==e&&(g(),t(e))})),d=[s.subscribe(e,r,u),s.subscribe(e,a,i),s.subscribe(e,a.cleared,c)],g=()=>d.forEach((e=>e()))}))}))}t.SegmentAppendageQueueConsumer=(0,o.createTaskClosure)(((e,t,r,o)=>["segment-appendage-queue-consumer",(s,i)=>n(void 0,void 0,void 0,(function*(){s=[...s];const n=i.registry.get(c.SourceExportNames.SourceState),{state:a}=i.effects;for(const e of s)a.dispatch(n.dataRanges.addSegment,e.selectionGroup.mediaId,t.appending,e);try{yield h(i,e),yield(0,l.maybeUpdateTimestampOffset)(i,e,s),yield w(i,s),yield Promise.all(s.map((r=>b(i,t,e,r)))),M(i,o,e,r),T(i,r,e,o,t),yield i.fork((0,m.BufferClearingTask)(e,r,t),n.playback.playhead)}catch(e){throw v(i,s),e}finally{p(i);for(const e of s)a.dispatch(n.dataRanges.removeSegment,e.selectionGroup.mediaId,t.appending,e)}}))])),t.removeSegmentFromStreamTimeline=k,t.waitForEncodedPlaybackTime=P},9657:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.KeepUpdatingSegmentsToAppend=void 0;const n=r(1270),o=r(4809),s=r(7269),i=r(3799);t.KeepUpdatingSegmentsToAppend=(0,n.createTask)("keep-updating-segments-to-append",(({section:e,dataRangeIds:t,segmentAppendageQueue:r},n)=>{const{loop:o,state:i}=n.effects,{playback:{playhead:c}}=n.registry.get(s.SourceExportNames.SourceState),u=a(t,e,r);i.subscribe(n,r.consumed,u),i.subscribe(n,c,u),i.subscribe(n,e.streamSequenceMap,u);for(const[t,r]of e.streamSequenceMap)i.subscribe(n,r,u);return n.fork(u,c),o(n.abortSignal)}));const a=(0,n.createTaskClosure)(((e,t,r)=>["select-segments-to-append",(n,s)=>{const{areSegmentsOverlapping:i}=s.registry.get(o.CoreExportNames.CoreStateAtoms).Segments;let a=u(s,e,t);a=c(a,r),a.length>=1&&!i(a)&&a.splice(1,a.length-1),a.length<1||s.effects.state.dispatch(r.appendSegments.trigger,a)}]));function c(e,t){const r=[];for(const e of t.queue)for(const t of e)r.push(t.selectionGroup.mediaId);return e.filter((e=>!r.includes(e.selectionGroup.mediaId)))}function u(e,t,r){var n,a,c,u;const f=e.registry.get(s.SourceExportNames.SourceState),d=f.dataRanges,g=[],{isMediaSelectionGroup:m,getMediaType:l}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,{overlaps:p}=e.registry.get(o.CoreExportNames.Utils).Ranges,{getGapToNextSegment:y}=e.registry.get(o.CoreExportNames.CoreStateAtoms).Segments;for(const[o,s]of r.streamSequenceMap){if(!m(o))continue;const r=l(o),b=(0,i.getMediaTypeTargetRanges)(f,r),S=null!==(a=null===(n=d.media[o.mediaId])||void 0===n?void 0:n.source[t.buffered])&&void 0!==a?a:[],v=null!==(u=null===(c=d.media[o.mediaId])||void 0===c?void 0:c.source[t.appending])&&void 0!==u?u:[];for(let t=0;t<s.length;t++){const r=s[t],{parsedPlaybackTime:n,parsedDuration:o}=r.segmentTiming,i=n+o,a=S.includes(r),c=v.includes(r),u=y(r,s[t+1]),f=void 0!==u&&i===u.start,d=n>=b.start&&n<b.end,m=i>b.start&&i<=b.end,l=e.effects.store.segmentDataCache.has(r);if((d||m||(b.start===i||void 0!==u&&p(b,u))&&f)&&!a&&!c&&l){g.push(r);break}}}return g.sort(((e,t)=>e.segmentTiming.parsedPlaybackTime-t.segmentTiming.parsedPlaybackTime)),g}},9791:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.maybeUpdateTimestampOffset=void 0;const o=r(8668),s=r(4809),i=r(8423);function a(e,t,r){return n(this,void 0,void 0,(function*(){const t=[];for(const e of r){const{timestampOffset:r}=e.segmentTiming;r===-1/0&&t.push(e)}0!==t.length&&(yield c(e,t))}))}function c(e,t){return n(this,void 0,void 0,(function*(){const{state:r}=e.effects,s=e.registry.get(o.BundleExportNames.Logger),a=d(t),c=new Map;yield Promise.all(a.map((t=>n(this,void 0,void 0,(function*(){yield(0,i.waitForEncodedPlaybackTime)(e,t),c.set(t.track,u(e,t))})))));const f=Array.from(c.values()),g=Math.max(...f);if(void 0!==g){s.debug(`Determined timestampOffset to be (${g})`);for(const[e]of c)for(const t of e.segments){const e=t.segmentTiming;e.timestampOffset===-1/0&&r.dispatch(e.timestampOffsetChanged,g)}}else s.debug(`Could not determine timestamp offset (${f})`)}))}function u(e,t){const r=f(e,t);if(void 0!==r)return r;{const{parsedPlaybackTime:e,encodedPlaybackTime:r}=t.segmentTiming;return e-r}}function f(e,t){var r;const n=t.track,o=n.selectionGroup.tracks.filter((e=>e!==n)),{getTimeRange:i}=e.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{overlaps:a}=e.registry.get(s.CoreExportNames.Utils).Ranges,c=i(t);for(const e of o){const t=e.segments.find((e=>a(i(e),c))),{timestampOffset:n}=null!==(r=null==t?void 0:t.segmentTiming)&&void 0!==r?r:{};if(void 0!==n&&n!==-1/0)return n}}function d(e){const t=new Map;for(const r of e){const e=r.track,n=t.get(e);if(void 0!==n){const{parsedPlaybackTime:o}=n.segmentTiming,{parsedPlaybackTime:s}=r.segmentTiming;s<o&&t.set(e,r)}else t.set(e,r)}return Array.from(t.values())}t.maybeUpdateTimestampOffset=a},4579:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))},o=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,s){o(n,s,(t=e[r](t)).done,t.value)}))}}function o(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)}};Object.defineProperty(t,"__esModule",{value:!0}),t.appendSegment=t.maybeAppendInitSegment=void 0;const s=r(8668),i=r(4809),a=r(3966),c=r(3799);function u(e,t,r){var s,a,u,d;return n(this,void 0,void 0,(function*(){const{isDataSegment:n}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments;if(!n(t))return;const g=e.effects.store.segmentDataCache.get(t);if(!g)throw new Error("Ey yo, wtf");try{for(var m,l=!0,p=o(g);m=yield p.next(),!(s=m.done);){d=m.value,l=!1;try{const n=d,o=(0,c.getMatchingBuffer)(e,r.buffers,n.containerFormat,n.mediaTypes);if(!o)continue;if(o.initSegment===t.initSegment)return;yield f(e,t.initSegment,r),e.effects.state.dispatch(o.setInitSegment,t.initSegment)}finally{l=!0}}}catch(e){a={error:e}}finally{try{l||s||!(u=p.return)||(yield u.call(p))}finally{if(a)throw a.error}}}))}function f(e,t,r){var u,f,d,g,m,l,p,y;return n(this,void 0,void 0,(function*(){const n=e.registry.get(s.BundleExportNames.Logger),{isDataOrSelfInitSegment:b}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Segments;n.debug("Appending",t.url);const S=e.effects.store.segmentDataCache.get(t);if(!S)throw new a.SegmentCacheMissError;try{for(var v,h=!0,E=o(S);v=yield E.next(),!(u=v.done);){g=v.value,h=!1;try{const s=g,i=(0,c.getMatchingBuffer)(e,r.buffers,s.containerFormat,s.mediaTypes);if(!i){n.log(`Can't append "${s.mediaTypes}" data "${t.url}": there is no buffer of the given type`);continue}b(t)&&t.segmentTiming.timestampOffset>-1/0&&(yield r.setTimestampOffset(i,t.segmentTiming.timestampOffset));try{for(var x,T=!0,C=(l=void 0,o(s.fragments));x=yield C.next(),!(m=x.done);){y=x.value,T=!1;try{const e=y;yield r.appendData(i,e)}finally{T=!0}}}catch(e){l={error:e}}finally{try{T||m||!(p=C.return)||(yield p.call(C))}finally{if(l)throw l.error}}}finally{h=!0}}}catch(e){f={error:e}}finally{try{h||u||!(d=E.return)||(yield d.call(E))}finally{if(f)throw f.error}}n.debug("Appended",t.url)}))}t.maybeAppendInitSegment=u,t.appendSegment=f},1991:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.verifyCodecs=void 0;const n=r(8668);class o extends Error{constructor(e){super(`MediaType "${e}" is present in track but missing in segment`),this.name="MediaTypeMissingError"}}function s(e,t,r){return void 0!==r?`"${e}" codecs don't match between track (${t}) and segment (${r})`:`Segment doesn't contain "${e}" codec, but track does`}function i(e,t,r){const o=t.split(".")[0],i=r.find((e=>o===e.split(".")[0])),a=e.registry.get(n.BundleExportNames.Logger);i?t!==i&&a.log(`Codecs don't match between track and segment (${t}, ${i})`):a.warn(s(t))}function a(e,t,r,a){var c;const u=e.registry.get(n.BundleExportNames.Logger),[f,d]=null!==(c=a.find((([e])=>e===t)))&&void 0!==c?c:[];if(!d)throw new o(t);if(r.length===d.length)for(const t of r)i(e,t,d);else u.warn(s(t,r,d))}function c(e,t,r){if(t.codecs.size!==r.length)throw new Error(`Detected codec mismatch - track specifies ${t.codecs.size} codecs, but segment contains ${r.length}`);for(const[n,o]of t.codecs)a(e,n,o,r)}t.verifyCodecs=c},1851:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectContainerFormatTask=void 0;const n=r(1270),o=r(5225),s=r(4809);function i(e){const{ContainerFormat:t}=e.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{isContainerSupported:r}=e.registry.get(o.CapabilitiesExportNames.PlatformCapabilities);return Object.values(t).filter(r)}t.SelectContainerFormatTask=(0,n.createTaskClosure)((e=>["select-container",({availableContainerFormats:t,segment:r},n)=>{const{store:o,state:s}=e.effects,{containerFormatMap:a}=o,c=i(e),u=t.filter((e=>c.includes(e)))[0],f=r.selectionGroup;return s.dispatch(a.add,f,u),u}]))},6254:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.startPresentationSegmentProcessing=void 0;const o=r(1270),s=r(4809),i=r(1146),a=r(7718),c=(0,o.createTask)("timeline-section-subscriber",((e,t)=>n(void 0,void 0,void 0,(function*(){const{mapSubscribe:r}=t.registry.get(s.CoreExportNames.Utils).State;for(const[n,o]of e.streamSequenceMap)r(t,o,a.SegmentDataStreamSubscriber)}))));function u(e){const t=e.registry.get(i.DataExportNames.StreamTimeline),{mapSubscribe:r}=e.registry.get(s.CoreExportNames.Utils).State;r(e,t,c)}t.startPresentationSegmentProcessing=u},7718:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function o(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function i(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){e.done?r(e.value):o(e.value).then(i,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentDataStreamSubscriber=void 0;const o=r(1270),s=r(4809),i=r(158),a=r(215),c=r(1851),u=r(1023);function f(e,t,r){const{createTransient:n}=e.registry.get(s.CoreExportNames.Utils).State;return{input:t.data,segment:t,output:r,codecsExtracted:n(e),playbackTimeExtracted:n(e),durationExtracted:n(e),selectContainerFormat:(0,c.SelectContainerFormatTask)(e)}}function d(e,t){return n(this,void 0,void 0,(function*(){const r=e.effects.store.segmentDataCache;if(r.has(t))return;const{state:n}=e.effects,o=(0,a.getOrCreateOutputStream)(e,r,t),c=f(e,t,o),d=e.registry.get(i.SegmentProcessingExportNames.SegmentProcessingComponent),g=(0,u.subscribeToTransients)(e,c),{DataStreamClearedError:m,DataStreamClosedError:l}=e.registry.get(s.CoreExportNames.CoreStateAtoms).DataStream,{QueueItemRemovedError:p}=e.registry.get(s.CoreExportNames.CoreStateAtoms).Queue,y=e=>[l,m,p].some((t=>e instanceof t));try{yield e.fork(d.process,c,y)}catch(e){const s=e instanceof Error?e:new Error("Failed to fetch segment");if(n.dispatch(o.throw,s),r.delete(t),!y(s))throw s}finally{g()}}))}t.SegmentDataStreamSubscriber=(0,o.createTask)("segment-data-stream-subscriber",((e,t)=>n(void 0,void 0,void 0,(function*(){const{isDataSegment:r}=t.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,n=r(e)?[e,e.initSegment]:[e];yield Promise.all(n.map((e=>d(t,e))))}))))},1023:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.subscribeToTransients=void 0;const n=r(1270),o=r(8668),s=r(4809),i=r(1991);function a(e,{value:t},r){if(void 0===t)throw new Error("CodecMap was unexpectedly undefined");const{isMediaTrack:n}=r.registry.get(s.CoreExportNames.CoreStateAtoms).Tracks,{track:a}=e;if(!n(a))return;const c=[],u=Object.keys(t);for(const e of u)c.push([e,t[e]]);if(0===a.codecs.size){r.registry.get(o.BundleExportNames.Logger).log("Parsed codecs from segment",c),r.effects.state.dispatch(a.codecs.setAll,c)}else(0,i.verifyCodecs)(r,a,c)}function c(e,t,r){const{isDataOrSelfInitSegment:n}=r.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{state:o}=r.effects;if(!n(e)||void 0===t.value||-1!==e.segmentTiming.encodedDuration)return;const{encodedPlaybackTime:i,dataParsed:a}=e.segmentTiming;o.dispatch(a,t.value,i)}function u(e,t,r){const{isDataOrSelfInitSegment:n}=r.registry.get(s.CoreExportNames.CoreStateAtoms).Segments,{state:o}=r.effects;if(!n(e)||void 0===t.value)return;const{encodedPlaybackTime:i,encodedDuration:a,dataParsed:c}=e.segmentTiming;-1===i&&o.dispatch(c,a,t.value)}function f(e,t){const r=[e.effects.state.subscribe(e,t.codecsExtracted,(0,n.createTask)("segment-codec-updater",a.bind(void 0,t.segment))),e.effects.state.subscribe(e,t.durationExtracted,(0,n.createTask)("segment-duration-updater",c.bind(void 0,t.segment))),e.effects.state.subscribe(e,t.playbackTimeExtracted,(0,n.createTask)("segment-playback-time-updater",u.bind(void 0,t.segment)))];return()=>{for(const e of r)e()}}t.subscribeToTransients=f},158:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentProcessorType=t.SegmentProcessingExportNames=void 0,function(e){e.SegmentProcessingComponent="segment-processing-component",e.SegmentProcessorType="segment-processor-type",e.SegmentProcessorErrors="segment-processor-errors"}(t.SegmentProcessingExportNames||(t.SegmentProcessingExportNames={})),function(e){e.Decryptor="decryptor",e.Parser="parser",e.Preprocessor="preprocessor",e.Transmuxer="transmuxer",e.Postprocessor="postprocessor"}(t.SegmentProcessorType||(t.SegmentProcessorType={}))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={exports:{}};return e[n].call(s.exports,s,s.exports,r),s.exports}return r(2160)})()));
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.1.
|
|
8
|
+
* Bitmovin Player X Version 10.1.2
|
|
9
9
|
*******************************************************************************/
|
|
10
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["segment-processing"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["segment-processing"]=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function r(e,t,r){const o=t;return o._name=e,{onAdd:o,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function o(e){return(...t)=>{const[o,n]=e(...t);return r(o,n)}}function n(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=o,t.getTaskName=n},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},1824:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createDataStreamAtom=t.DataStreamClearedError=t.DataStreamClosedError=void 0;const n=r(2174),{createTransient:s}=n.default;class a extends Error{constructor(){super("Cannot perform operation: DataStream is closed"),this.name="DataStreamClosedError"}}t.DataStreamClosedError=a;class c extends Error{constructor(){super("Cannot perform operation: DataStream was cleared"),this.name="DataStreamClearedError"}}function i(e){const t=e=>{const t=n.indexOf(e);t>-1&&n.splice(t,1)},r=(e=a.error)=>{if(e){const r=[];for(const t of n){const{reject:o}=t;r.push(t),o(e)}for(const e of r)t(e)}else for(const{resolve:e}of n)e()},n=[],a={closed:!1,error:void 0,data:[],cleared:s(e),[Symbol.asyncIterator]:c};function c(){const e={resolve:()=>{},reject:()=>{}};let r=0;const s={next:()=>o(this,void 0,void 0,(function*(){if(a.error)throw t(e),a.error;for(;r>=a.data.length&&!a.closed;)yield new Promise(((t,r)=>{e.resolve=t,e.reject=r}));const o=a.data[r++];return!(!a.closed||r<=a.data.length)?(t(e),{done:!0,value:void 0}):{done:!1,value:o}}))};return n.push(e),s}return{dataStream:a,continuation:r}}function u(e,t){if(t.error)throw t.error;return!t.closed&&(t.closed=!0,e(),!0)}function f(e,t){if(t.error)throw t.error;return!!t.closed&&(t.closed=!1,e(),!0)}function l(e,t,r){const{state:o}=e.effects;return r.error=void 0,r.data.splice(0,r.data.length),r.closed=!1,t(new c),o.dispatch(r.cleared.trigger),!0}function p(e,t,...r){if(t.error)throw t.error;if(t.closed)throw new a;return t.data.push(...r),e(),!0}function d(e,t,r,o){if(r.error)throw r.error;const{state:n}=e.effects;return r.data.splice(0,r.data.length),r.error=o,r.closed=!0,t(),n.dispatch(r.cleared.trigger),!0}function m(e){const{state:t}=e.effects,{continuation:r,dataStream:o}=i(e);return t.create(o,{push:(e,...t)=>p(r,e,...t),close:u.bind(null,r),open:f.bind(null,r),clear:l.bind(null,e,r),throw:d.bind(null,e,r)})}t.DataStreamClearedError=c,t.createDataStreamAtom=m},2174:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const n=r(1270),s=r(4809);class a extends Error{constructor(){super("Aborted from map-subscribe"),this.name="MapUnsubscribedError"}}const c=(e,t,r,o)=>{var s;return(0,n.createTask)(`map-subscribe-${null!==(s=r.name)&&void 0!==s?s:r._name}`,((n,s)=>{var c;const i=Array.from(t.keys()),u=i.filter((e=>!n.includes(e))),f=n.filter((e=>!i.includes(e)));for(const e of u)null===(c=t.get(e))||void 0===c||c.abort(new a),t.delete(e);for(const n of f){const s=e.fork(r,n,o);t.set(n,s),s.finally((()=>t.delete(n))).catch((()=>{}))}}))};function i({fork:e,effects:t},r,o,s=(()=>!1)){const{UnsubscribedError:i}=t.state,u=e=>s(e)||e instanceof a||e instanceof i,f=new Map,l=e((0,n.createTask)("map-subscribe-wrapper",((e,t)=>{const{effects:n,abortSignal:s,fork:a}=t,{loop:i,state:l}=n,p=c(t,f,o,u);return l.subscribe(t,r,p,u),a(p,r,u),i(s)})),void 0,u);return(e=new a)=>l.abort(e)}function u(e,t,r){Object.defineProperty(e,t,{get:()=>r(e)})}function f(e,t,r,s=(()=>!1)){let c;const i=e=>s(e)||e instanceof a,u=(0,n.createTask)(`subscribe-${r.name}-once`,((e,t)=>o(this,void 0,void 0,(function*(){yield t.fork(r,e,i),c()}))));return c=e.effects.state.subscribe(e,t,u,i)}function l(e){const{state:t}=e.effects,r=(e,t)=>(e.value=t,!0);return t.create({value:void 0},{trigger:r})}function p(e,t){let r=()=>{};const{abortable:o}=e.effects,{subscribeOnce:a}=e.registry.get(s.CoreExportNames.Utils).State,c=o((e=>r=e)),i=(0,n.createTask)("wait-for-transient",(({value:e},t)=>r(e)));return c.unsubscribe=a(e,t,i),c}t.default={mapSubscribe:i,MapUnsubscribedError:a,subscribeOnce:f,waitFor:p,deriveFrom:u,createTransient:l}},4872:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});class r extends Error{constructor(e){super(`(${e})`),this.name="UnsupportedContainerFormatError"}}t.default={UnsupportedContainerFormatError:r}},9858:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentProcessingPackage=void 0;const o=r(7085),n=r(7269),s=r(4872),a=r(7026),c=r(158);t.SegmentProcessingPackage=(0,o.createPackage)("segment-processing",((e,t)=>{t.registry.set(c.SegmentProcessingExportNames.SegmentProcessorErrors,s.default),t.registry.set(c.SegmentProcessingExportNames.SegmentProcessorType,c.SegmentProcessorType),t.registry.maybeSet(c.SegmentProcessingExportNames.SegmentProcessingComponent,(0,a.createSegmentProcessingComponent)())}),[n.SourceExportNames.SourceState]),t.default=t.SegmentProcessingPackage},7026:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSegmentProcessingComponent=void 0;const o=r(5945),n=r(3023),s=r(158),a=[s.SegmentProcessorType.Decryptor,s.SegmentProcessorType.Preprocessor,s.SegmentProcessorType.Transmuxer];function c(e,t){const r=(0,n.getProcessorsOfType)(e.type,t);return t.set(e.type,r),r.includes(e)||(a.includes(e.type)?r.unshift(e):r.push(e)),()=>{const t=r.indexOf(e);-1!==t&&r.splice(t,1)}}function i(){const e=new Map;return{addProcessor:t=>c(t,e),process:(0,o.createProcessingTask)(e)}}t.createSegmentProcessingComponent=i},158:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentProcessorType=t.SegmentProcessingExportNames=void 0,function(e){e.SegmentProcessingComponent="segment-processing-component",e.SegmentProcessorType="segment-processor-type",e.SegmentProcessorErrors="segment-processor-errors"}(t.SegmentProcessingExportNames||(t.SegmentProcessingExportNames={})),function(e){e.Decryptor="decryptor",e.Parser="parser",e.Preprocessor="preprocessor",e.Transmuxer="transmuxer",e.Postprocessor="postprocessor"}(t.SegmentProcessorType||(t.SegmentProcessorType={}))},3165:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.runDecryptor=void 0;const o=r(4809),n=r(3023),s=r(158);function a(e,t){for(const r of e)if(r.supportedEncryptionFormats.includes(t))return r}function c(e,t,r,c){const i=a((0,n.getProcessorsOfType)(s.SegmentProcessorType.Decryptor,t),"😽"),u={output:r,awaitable:void 0};if(i){const{createDataStreamAtom:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms).DataStream,n=t(e);u.output=n,u.awaitable=e.fork(i.process,{input:r,output:n,segment:c})}return u}t.runDecryptor=c},755:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))},n=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(r){t[r]=e[r]&&function(t){return new Promise((function(o,s){n(o,s,(t=e[r](t)).done,t.value)}))}}function n(e,t,r,o){Promise.resolve(o).then((function(t){e({value:t,done:r})}),t)}};Object.defineProperty(t,"__esModule",{value:!0}),t.runParsers=t.awaitFirstSegmentDataAtom=t.createParserData=void 0;const s=r(4809),a=r(4872),c=r(7433),i=r(3023),u=r(158),{UnsupportedContainerFormatError:f}=a.default;function l(e,t,r,o){const{createDataStreamAtom:n}=e.registry.get(s.CoreExportNames.CoreStateAtoms).DataStream;return Object.assign({input:t,segment:r,output:n(e)},o)}function p(e){var t,r,s,a,c,i,u;return o(this,void 0,void 0,(function*(){try{for(t=!0,r=n(e);s=yield r.next(),!(a=s.done);){u=s.value,t=!1;try{return u}finally{t=!0}}}catch(e){c={error:e}}finally{try{t||a||!(i=r.return)||(yield i.call(r))}finally{if(c)throw c.error}}throw new Error("Expected at least one SegmentDataAtom to be produced")}))}function d(e,t){const r=(0,c.createDefaultSegmentParser)(e);return e.fork(r.process,t)}function m(e,t,r){return e.effects.abortable(((n,s)=>o(this,void 0,void 0,(function*(){let o=!1;const a=e=>{const t=c.indexOf(e);t>-1&&c.splice(t,1),0===c.length&&(o?n():s(new Error("All parsers have failed")))},c=t.map((t=>{const n=e.fork(t.process,r,(e=>e instanceof f));return n.then((()=>o=!0)).finally((()=>a(n))).catch((()=>{})),n}))}))))}function y(e,t,r){const o=(0,i.getProcessorsOfType)(u.SegmentProcessorType.Parser,t);return 0===o.length?{output:r.output,awaitable:d(e,r)}:{output:r.output,awaitable:m(e,o,r).catch((()=>d(e,r)))}}t.createParserData=l,t.awaitFirstSegmentDataAtom=p,t.runParsers=y},8555:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.runProcessors=void 0;const n=r(4809),s=r(3023),a=r(158);function c(e,t,r){const o=e[e.length-1];if(o.outputContainer===r)return[e];if(0===t.length)return[];return t.filter((({inputContainer:e})=>o.outputContainer===e)).flatMap((o=>c([...e,o],t.filter((e=>e!==o)),r)))}function i(e,t,r){if(t===r)return[];const o=e.filter((e=>e.inputContainer===t)).flatMap((t=>c([t],e.filter((e=>e!==t)),r)));let n;for(const e of o)(void 0===n||n&&e.length<n.length)&&(n=e);return null!=n?n:[]}function u(e,t){const r=new Set(t.map((({outputContainer:e})=>e))),o=new Set([e]);for(const n of r){if(n===e)continue;const r=i(t,e,n);0!==r.length&&o.add(r[r.length-1].outputContainer)}return Array.from(o)}function f(e,t,r,c,f,l){return o(this,void 0,void 0,(function*(){const o=[],{createDataStreamAtom:p}=e.registry.get(n.CoreExportNames.CoreStateAtoms).DataStream,d=(0,s.getProcessorsOfType)(a.SegmentProcessorType.Preprocessor,r),m=(0,s.getProcessorsOfType)(a.SegmentProcessorType.Transmuxer,r),y=(0,s.getProcessorsOfType)(a.SegmentProcessorType.Postprocessor,r),g={output:t,awaitable:void 0},v=u(c,m),h=yield e.fork(l,{availableContainerFormats:v,segment:f}),P=i(m,c,h),S=P.length>0?P[P.length-1].outputContainer:c,b=[...d.filter((e=>e.container===c)),...P,...y.filter((e=>e.container===S))];let w=t;for(const t of b){const r=p(e),n=e.fork(t.process,{input:w,output:r,segment:f});o.push(n),g.output=r,w=r}return g.awaitable=Promise.all(o).then((()=>{})),g}))}t.runProcessors=f},5945:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))},n=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(r){t[r]=e[r]&&function(t){return new Promise((function(o,s){n(o,s,(t=e[r](t)).done,t.value)}))}}function n(e,t,r,o){Promise.resolve(o).then((function(t){e({value:t,done:r})}),t)}},s=this&&this.__rest||function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r};Object.defineProperty(t,"__esModule",{value:!0}),t.createProcessingTask=void 0;const a=r(1270),c=r(3165),i=r(755),u=r(8555);function f(e,t,r,s,a,c){var f,l,p,d;return o(this,void 0,void 0,(function*(){const{state:o}=e.effects,{containerFormat:m}=yield(0,i.awaitFirstSegmentDataAtom)(r),{output:y,awaitable:g}=yield(0,u.runProcessors)(e,r,t,m,a,c);try{for(var v,h=!0,P=n(y);v=yield P.next(),!(f=v.done);){d=v.value,h=!1;try{const e=d;o.dispatch(s.push,e)}finally{h=!0}}}catch(e){l={error:e}}finally{try{h||f||!(p=P.return)||(yield p.call(P))}finally{if(l)throw l.error}}yield g,o.dispatch(s.close)}))}t.createProcessingTask=(0,a.createTaskClosure)((e=>["segment-processing",(t,r)=>o(void 0,void 0,void 0,(function*(){var{input:o,output:n,segment:a,selectContainerFormat:u}=t,l=s(t,["input","output","segment","selectContainerFormat"]);const{output:p,awaitable:d}=(0,c.runDecryptor)(r,e,o,a),m=(0,i.createParserData)(r,p,a,l),{output:y,awaitable:g}=(0,i.runParsers)(r,e,m),v=f(r,e,y,n,a,u);yield Promise.all([d,g,v])}))]))},7433:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createDefaultSegmentParser=void 0;const n=r(1270),s=r(1824),a=r(4809),c=r(158);function i(e){const{ContainerFormat:t}=e.registry.get(a.CoreExportNames.CoreStateAtoms).Segments;return{name:"default-segment-parser",type:c.SegmentProcessorType.Parser,container:t.Unknown,process:(0,n.createTask)("default-segment-parser",((e,t)=>o(this,void 0,void 0,(function*(){const{state:r}=t.effects,{Arrays:o,TypedArrays:n}=t.registry.get(a.CoreExportNames.Utils),{readToEnd:c}=o,{merge:i}=n,{createSegmentDataAtom:u,ContainerFormat:f}=t.registry.get(a.CoreExportNames.CoreStateAtoms).Segments,l=i(yield c(e.input)),p=(0,s.createDataStreamAtom)(t),d=u(t,{fragments:p,mediaTypes:[],containerFormat:f.Unknown});r.dispatch(p.push,{data:l}),r.dispatch(p.close),r.dispatch(e.output.push,d),r.dispatch(e.output.close)}))))}}t.createDefaultSegmentParser=i},3023:(e,t)=>{function r(e,t){var r;return null!==(r=t.get(e))&&void 0!==r?r:[]}Object.defineProperty(t,"__esModule",{value:!0}),t.getProcessorsOfType=void 0,t.getProcessorsOfType=r},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var s=t[o]={exports:{}};return e[o].call(s.exports,s,s.exports,r),s.exports}return r(9858)})()));
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["segment-processing"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["segment-processing"]=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function r(e,t,r){const o=t;return o._name=e,{onAdd:o,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function o(e){return(...t)=>{const[o,n]=e(...t);return r(o,n)}}function n(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=o,t.getTaskName=n},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},1824:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createDataStreamAtom=t.DataStreamClearedError=t.DataStreamClosedError=void 0;const n=r(2174),{createTransient:s}=n.default;class a extends Error{constructor(){super("Cannot perform operation: DataStream is closed"),this.name="DataStreamClosedError"}}t.DataStreamClosedError=a;class c extends Error{constructor(){super("Cannot perform operation: DataStream was cleared"),this.name="DataStreamClearedError"}}function i(e){const t=e=>{const t=n.indexOf(e);t>-1&&n.splice(t,1)},r=(e=a.error)=>{if(e){const r=[];for(const t of n){const{reject:o}=t;r.push(t),o(e)}for(const e of r)t(e)}else for(const{resolve:e}of n)e()},n=[],a={closed:!1,error:void 0,data:[],cleared:s(e),[Symbol.asyncIterator]:c};function c(){const e={resolve:()=>{},reject:()=>{}};let r=0;const s={next:()=>o(this,void 0,void 0,(function*(){if(a.error)throw t(e),a.error;for(;r>=a.data.length&&!a.closed;)yield new Promise(((t,r)=>{e.resolve=t,e.reject=r}));const o=a.data[r++];return!(!a.closed||r<=a.data.length)?(t(e),{done:!0,value:void 0}):{done:!1,value:o}}))};return n.push(e),s}return{dataStream:a,continuation:r}}function u(e,t){if(t.error)throw t.error;return!t.closed&&(t.closed=!0,e(),!0)}function f(e,t){if(t.error)throw t.error;return!!t.closed&&(t.closed=!1,e(),!0)}function l(e,t,r){const{state:o}=e.effects;return r.error=void 0,r.data.splice(0,r.data.length),r.closed=!1,t(new c),o.dispatch(r.cleared.trigger),!0}function p(e,t,...r){if(t.error)throw t.error;if(t.closed)throw new a;return t.data.push(...r),e(),!0}function d(e,t,r,o){if(r.error)throw r.error;const{state:n}=e.effects;return r.data.splice(0,r.data.length),r.error=o,r.closed=!0,t(),n.dispatch(r.cleared.trigger),!0}function m(e){const{state:t}=e.effects,{continuation:r,dataStream:o}=i(e);return t.create(o,{push:(e,...t)=>p(r,e,...t),close:u.bind(null,r),open:f.bind(null,r),clear:l.bind(null,e,r),throw:d.bind(null,e,r)})}t.DataStreamClearedError=c,t.createDataStreamAtom=m},2174:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const n=r(1270),s=r(4809);class a extends Error{constructor(){super("Aborted from map-subscribe"),this.name="MapUnsubscribedError"}}const c=(e,t,r,o)=>{var s;return(0,n.createTask)(`map-subscribe-${null!==(s=r.name)&&void 0!==s?s:r._name}`,((n,s)=>{var c;const i=Array.from(t.keys()),u=i.filter((e=>!n.includes(e))),f=n.filter((e=>!i.includes(e)));for(const e of u)null===(c=t.get(e))||void 0===c||c.abort(new a),t.delete(e);for(const n of f){const s=e.fork(r,n,o);t.set(n,s),s.finally((()=>t.delete(n))).catch((()=>{}))}}))};function i({fork:e,effects:t},r,o,s=(()=>!1)){const{UnsubscribedError:i}=t.state,u=e=>s(e)||e instanceof a||e instanceof i,f=new Map,l=e((0,n.createTask)("map-subscribe-wrapper",((e,t)=>{const{effects:n,abortSignal:s,fork:a}=t,{loop:i,state:l}=n,p=c(t,f,o,u);return l.subscribe(t,r,p,u),a(p,r,u),i(s)})),void 0,u);return(e=new a)=>l.abort(e)}function u(e,t,r,o=(()=>!1)){const s=e.effects.state.UnsubscribedError,a=e=>e instanceof s||o(e),c=()=>{null==f||f.abort(new s),f=void 0},i=(0,n.createTask)(`subscribe-and-run-${r._name}`,((e,t)=>(c(),t.fork(r,e,a)))),u=e.effects.state.subscribe(e,t,i,o);let f=e.fork(r,t,a);return()=>{c(),u()}}function f(e,t,r){Object.defineProperty(e,t,{get:()=>r(e)})}function l(e,t,r,s=(()=>!1)){let c;const i=e=>s(e)||e instanceof a,u=(0,n.createTask)(`subscribe-${r.name}-once`,((e,t)=>o(this,void 0,void 0,(function*(){yield t.fork(r,e,i),c()}))));return c=e.effects.state.subscribe(e,t,u,i)}function p(e){const{state:t}=e.effects,r=(e,t)=>(e.value=t,!0);return t.create({value:void 0},{trigger:r})}function d(e,t){let r=()=>{};const{abortable:o}=e.effects,{subscribeOnce:a}=e.registry.get(s.CoreExportNames.Utils).State,c=o((e=>r=e)),i=(0,n.createTask)("wait-for-transient",(({value:e},t)=>r(e)));return c.unsubscribe=a(e,t,i),c}t.default={mapSubscribe:i,subscribeAndRun:u,MapUnsubscribedError:a,subscribeOnce:l,waitFor:d,deriveFrom:f,createTransient:p}},4872:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});class r extends Error{constructor(e){super(`(${e})`),this.name="UnsupportedContainerFormatError"}}t.default={UnsupportedContainerFormatError:r}},9858:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentProcessingPackage=void 0;const o=r(7085),n=r(7269),s=r(4872),a=r(7026),c=r(158);t.SegmentProcessingPackage=(0,o.createPackage)("segment-processing",((e,t)=>{t.registry.set(c.SegmentProcessingExportNames.SegmentProcessorErrors,s.default),t.registry.set(c.SegmentProcessingExportNames.SegmentProcessorType,c.SegmentProcessorType),t.registry.maybeSet(c.SegmentProcessingExportNames.SegmentProcessingComponent,(0,a.createSegmentProcessingComponent)())}),[n.SourceExportNames.SourceState]),t.default=t.SegmentProcessingPackage},7026:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSegmentProcessingComponent=void 0;const o=r(5945),n=r(3023),s=r(158),a=[s.SegmentProcessorType.Decryptor,s.SegmentProcessorType.Preprocessor,s.SegmentProcessorType.Transmuxer];function c(e,t){const r=(0,n.getProcessorsOfType)(e.type,t);return t.set(e.type,r),r.includes(e)||(a.includes(e.type)?r.unshift(e):r.push(e)),()=>{const t=r.indexOf(e);-1!==t&&r.splice(t,1)}}function i(){const e=new Map;return{addProcessor:t=>c(t,e),process:(0,o.createProcessingTask)(e)}}t.createSegmentProcessingComponent=i},158:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SegmentProcessorType=t.SegmentProcessingExportNames=void 0,function(e){e.SegmentProcessingComponent="segment-processing-component",e.SegmentProcessorType="segment-processor-type",e.SegmentProcessorErrors="segment-processor-errors"}(t.SegmentProcessingExportNames||(t.SegmentProcessingExportNames={})),function(e){e.Decryptor="decryptor",e.Parser="parser",e.Preprocessor="preprocessor",e.Transmuxer="transmuxer",e.Postprocessor="postprocessor"}(t.SegmentProcessorType||(t.SegmentProcessorType={}))},3165:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.runDecryptor=void 0;const o=r(4809),n=r(3023),s=r(158);function a(e,t){for(const r of e)if(r.supportedEncryptionFormats.includes(t))return r}function c(e,t,r,c){const i=a((0,n.getProcessorsOfType)(s.SegmentProcessorType.Decryptor,t),"😽"),u={output:r,awaitable:void 0};if(i){const{createDataStreamAtom:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms).DataStream,n=t(e);u.output=n,u.awaitable=e.fork(i.process,{input:r,output:n,segment:c})}return u}t.runDecryptor=c},755:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))},n=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(r){t[r]=e[r]&&function(t){return new Promise((function(o,s){n(o,s,(t=e[r](t)).done,t.value)}))}}function n(e,t,r,o){Promise.resolve(o).then((function(t){e({value:t,done:r})}),t)}};Object.defineProperty(t,"__esModule",{value:!0}),t.runParsers=t.awaitFirstSegmentDataAtom=t.createParserData=void 0;const s=r(4809),a=r(4872),c=r(7433),i=r(3023),u=r(158),{UnsupportedContainerFormatError:f}=a.default;function l(e,t,r,o){const{createDataStreamAtom:n}=e.registry.get(s.CoreExportNames.CoreStateAtoms).DataStream;return Object.assign({input:t,segment:r,output:n(e)},o)}function p(e){var t,r,s,a,c,i,u;return o(this,void 0,void 0,(function*(){try{for(t=!0,r=n(e);s=yield r.next(),!(a=s.done);){u=s.value,t=!1;try{return u}finally{t=!0}}}catch(e){c={error:e}}finally{try{t||a||!(i=r.return)||(yield i.call(r))}finally{if(c)throw c.error}}throw new Error("Expected at least one SegmentDataAtom to be produced")}))}function d(e,t){const r=(0,c.createDefaultSegmentParser)(e);return e.fork(r.process,t)}function m(e,t,r){return e.effects.abortable(((n,s)=>o(this,void 0,void 0,(function*(){let o=!1;const a=e=>{const t=c.indexOf(e);t>-1&&c.splice(t,1),0===c.length&&(o?n():s(new Error("All parsers have failed")))},c=t.map((t=>{const n=e.fork(t.process,r,(e=>e instanceof f));return n.then((()=>o=!0)).finally((()=>a(n))).catch((()=>{})),n}))}))))}function y(e,t,r){const o=(0,i.getProcessorsOfType)(u.SegmentProcessorType.Parser,t);return 0===o.length?{output:r.output,awaitable:d(e,r)}:{output:r.output,awaitable:m(e,o,r).catch((()=>d(e,r)))}}t.createParserData=l,t.awaitFirstSegmentDataAtom=p,t.runParsers=y},8555:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.runProcessors=void 0;const n=r(4809),s=r(3023),a=r(158);function c(e,t,r){const o=e[e.length-1];if(o.outputContainer===r)return[e];if(0===t.length)return[];return t.filter((({inputContainer:e})=>o.outputContainer===e)).flatMap((o=>c([...e,o],t.filter((e=>e!==o)),r)))}function i(e,t,r){if(t===r)return[];const o=e.filter((e=>e.inputContainer===t)).flatMap((t=>c([t],e.filter((e=>e!==t)),r)));let n;for(const e of o)(void 0===n||n&&e.length<n.length)&&(n=e);return null!=n?n:[]}function u(e,t){const r=new Set(t.map((({outputContainer:e})=>e))),o=new Set([e]);for(const n of r){if(n===e)continue;const r=i(t,e,n);0!==r.length&&o.add(r[r.length-1].outputContainer)}return Array.from(o)}function f(e,t,r,c,f,l){return o(this,void 0,void 0,(function*(){const o=[],{createDataStreamAtom:p}=e.registry.get(n.CoreExportNames.CoreStateAtoms).DataStream,d=(0,s.getProcessorsOfType)(a.SegmentProcessorType.Preprocessor,r),m=(0,s.getProcessorsOfType)(a.SegmentProcessorType.Transmuxer,r),y=(0,s.getProcessorsOfType)(a.SegmentProcessorType.Postprocessor,r),g={output:t,awaitable:void 0},v=u(c,m),h=yield e.fork(l,{availableContainerFormats:v,segment:f}),b=i(m,c,h),P=b.length>0?b[b.length-1].outputContainer:c,S=[...d.filter((e=>e.container===c)),...b,...y.filter((e=>e.container===P))];let w=t;for(const t of S){const r=p(e),n=e.fork(t.process,{input:w,output:r,segment:f});o.push(n),g.output=r,w=r}return g.awaitable=Promise.all(o).then((()=>{})),g}))}t.runProcessors=f},5945:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))},n=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(r){t[r]=e[r]&&function(t){return new Promise((function(o,s){n(o,s,(t=e[r](t)).done,t.value)}))}}function n(e,t,r,o){Promise.resolve(o).then((function(t){e({value:t,done:r})}),t)}},s=this&&this.__rest||function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r};Object.defineProperty(t,"__esModule",{value:!0}),t.createProcessingTask=void 0;const a=r(1270),c=r(3165),i=r(755),u=r(8555);function f(e,t,r,s,a,c){var f,l,p,d;return o(this,void 0,void 0,(function*(){const{state:o}=e.effects,{containerFormat:m}=yield(0,i.awaitFirstSegmentDataAtom)(r),{output:y,awaitable:g}=yield(0,u.runProcessors)(e,r,t,m,a,c);try{for(var v,h=!0,b=n(y);v=yield b.next(),!(f=v.done);){d=v.value,h=!1;try{const e=d;o.dispatch(s.push,e)}finally{h=!0}}}catch(e){l={error:e}}finally{try{h||f||!(p=b.return)||(yield p.call(b))}finally{if(l)throw l.error}}yield g,o.dispatch(s.close)}))}t.createProcessingTask=(0,a.createTaskClosure)((e=>["segment-processing",(t,r)=>o(void 0,void 0,void 0,(function*(){var{input:o,output:n,segment:a,selectContainerFormat:u}=t,l=s(t,["input","output","segment","selectContainerFormat"]);const{output:p,awaitable:d}=(0,c.runDecryptor)(r,e,o,a),m=(0,i.createParserData)(r,p,a,l),{output:y,awaitable:g}=(0,i.runParsers)(r,e,m),v=f(r,e,y,n,a,u);yield Promise.all([d,g,v])}))]))},7433:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function a(e){try{i(o.next(e))}catch(e){s(e)}}function c(e){try{i(o.throw(e))}catch(e){s(e)}}function i(e){e.done?r(e.value):n(e.value).then(a,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createDefaultSegmentParser=void 0;const n=r(1270),s=r(1824),a=r(4809),c=r(158);function i(e){const{ContainerFormat:t}=e.registry.get(a.CoreExportNames.CoreStateAtoms).Segments;return{name:"default-segment-parser",type:c.SegmentProcessorType.Parser,container:t.Unknown,process:(0,n.createTask)("default-segment-parser",((e,t)=>o(this,void 0,void 0,(function*(){const{state:r}=t.effects,{Arrays:o,TypedArrays:n}=t.registry.get(a.CoreExportNames.Utils),{readToEnd:c}=o,{merge:i}=n,{createSegmentDataAtom:u,ContainerFormat:f}=t.registry.get(a.CoreExportNames.CoreStateAtoms).Segments,l=i(yield c(e.input)),p=(0,s.createDataStreamAtom)(t),d=u(t,{fragments:p,mediaTypes:[],containerFormat:f.Unknown});r.dispatch(p.push,{data:l}),r.dispatch(p.close),r.dispatch(e.output.push,d),r.dispatch(e.output.close)}))))}}t.createDefaultSegmentParser=i},3023:(e,t)=>{function r(e,t){var r;return null!==(r=t.get(e))&&void 0!==r?r:[]}Object.defineProperty(t,"__esModule",{value:!0}),t.getProcessorsOfType=void 0,t.getProcessorsOfType=r},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var s=t[o]={exports:{}};return e[o].call(s.exports,s,s.exports,r),s.exports}return r(9858)})()));
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.1.
|
|
8
|
+
* Bitmovin Player X Version 10.1.2
|
|
9
9
|
*******************************************************************************/
|
|
10
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.source=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.source=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function r(e,t,r){const o=t;return o._name=e,{onAdd:o,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function o(e){return(...t)=>{const[o,n]=e(...t);return r(o,n)}}function n(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=o,t.getTaskName=n},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},7755:(e,t)=>{function r(e,t){return e.length===t.length&&e.every(((e,r)=>e===t[r]))}function o(e,...t){return 0!==t.length&&(e.push(...t),!0)}function n(e,...t){const r=e.length;for(const r of t)e.includes(r)||e.push(r);return r===e.length}function a(e,t,...r){return 0!==r.length&&(e.splice(t,0,...r),!0)}function s(e,t,r){let o=0,n=e.length;for(;o<n;){const a=o+n>>>1;r(e[a])<r(t)?o=a+1:n=a}return o}function c(e,t,...r){const o=e.length;if(0===r.length)return!1;if(0===e.length)return e.push(...r.sort(((e,r)=>t(e)-t(r)))),!0;for(const o of r){const r=t(o),n=t(e[0]);if(t(e[e.length-1])<=r)e.push(o);else if(r<=n)e.unshift(o);else{const r=s(e,o,t);e.splice(r,0,o)}}return e.length!==o}function i(e,...t){let r=!1;for(const o of t){const t=e.indexOf(o);t<0||(r=!0,e.splice(t,1))}return r}function u(e){return 0!==e.length&&(e.splice(0,e.length),!0)}function l(e,t){if(r(e,t))return!1;const o=u(e);return t.forEach((t=>e.push(t))),o||t.length>0}Object.defineProperty(t,"__esModule",{value:!0}),t.createArrayAtom=void 0;const f=(e,t=[])=>{const r={add:o,insert:a,insertSorted:c,remove:i,clear:u,set:l,addIfNew:n};return e.effects.state.create(t,r)};t.createArrayAtom=f},5230:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPrimitiveAtom=void 0;const r=e=>({value:e});function o(e,t){return e.value!==t&&(e.value=t,!0)}function n(e,t){return e.effects.state.create(r(t),{setValue:o})}t.createPrimitiveAtom=n},8258:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createDataRangesAtom=void 0;const o=r(1270),n=r(4809);function a(){return{ranges:[],enclosingRange:{start:1/0,end:-1/0},source:{}}}function s(){return{media:{}}}function c(e){return e.map((e=>({start:e.segmentTiming.parsedPlaybackTime,end:e.segmentTiming.parsedPlaybackTime+e.segmentTiming.parsedDuration})))}function i(e,t){var r,o,a,s;const{mergeRanges:i}=e.registry.get(n.CoreExportNames.Utils).Ranges;let u=[];for(const e in t.source)u=i([...u,...c(t.source[e])]);t.ranges.splice(0,t.ranges.length),t.ranges.push(...u),t.enclosingRange.start=null!==(o=null===(r=null==u?void 0:u[0])||void 0===r?void 0:r.start)&&void 0!==o?o:1/0,t.enclosingRange.end=null!==(s=null===(a=null==u?void 0:u[u.length-1])||void 0===a?void 0:a.end)&&void 0!==s?s:-1/0}const u=(0,o.createTaskClosure)((e=>["segment-timing-subscriber",(t,r)=>i(r,e)]));function l(e,t,r,o,s,c){var l,f,d;const{insertSorted:m}=e.registry.get(n.CoreExportNames.Utils).Arrays.Sorted;if(r.media[o]||(r.media[o]=a()),r.media[o].source[s]||(r.media[o].source[s]=[]),r.media[o].source[s].includes(c))return!1;const{state:p}=e.effects,g=p.subscribe(e,c.segmentTiming,u(r.media[o]));null===(f=null===(l=t.get(s))||void 0===l?void 0:l.get(c))||void 0===f||f();const v=null!==(d=t.get(s))&&void 0!==d?d:new Map;return v.set(c,g),t.set(s,v),m(r.media[o].source[s],(e=>e.segmentTiming.parsedPlaybackTime),c),i(e,r.media[o]),!0}function f(e,t,r,o,n,a){var s,c,u;const l=r.media[o],f=null==l?void 0:l.source[n],d=f?f.indexOf(a):-1;return-1!==d&&(null===(c=null===(s=t.get(n))||void 0===s?void 0:s.get(a))||void 0===c||c(),null===(u=t.get(n))||void 0===u||u.delete(a),f.splice(d,1),0===f.length&&delete l.source[n],Object.keys(l.source).length?i(e,r.media[o]):delete r.media[o],!0)}function d(e,t){let r=!1;for(const e in t.media)delete t.media[e],r=!0;for(const[t,r]of e)for(const[e,t]of r)t();return e.clear(),r}function m(e,t,r,o,n){let a=!1;for(const s in r.media)if(o===s)for(const c in r.media[s].source){if(c!==n)continue;const i=r.media[s].source[c].slice();for(const s of i){a=f(e,t,r,o,n,s)||a}}return a}const p=e=>{const t=new Map;return e.effects.state.create(s(),{addSegment:(r,o,n,a)=>l(e,t,r,o,n,a),removeSegment:(r,o,n,a)=>f(e,t,r,o,n,a),clear:e=>d(t,e),deleteSource:(r,o,n)=>m(e,t,r,o,n)})};t.createDataRangesAtom=p},538:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createStreamAtom=t.StreamType=void 0;const o=r(2174),n=r(7755),a=r(5230),{createTransient:s}=o.default;function c(e,t){return e.type!==t&&(e.type=t,!0)}!function(e){e.Live="live",e.VoD="vod"}(t.StreamType||(t.StreamType={}));const i=(e,t)=>e.effects.state.create({tracks:(0,n.createArrayAtom)(e,[]),selectionGroups:(0,n.createArrayAtom)(e,[]),type:t,duration:(0,a.createPrimitiveAtom)(e,1/0),onPlaybackTimeMismatch:s(e),onDurationMismatch:s(e)},{setType:c});t.createStreamAtom=i},3658:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=t.LogLevel=void 0,function(e){e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warn=2]="Warn",e[e.Log=3]="Log",e[e.Debug=4]="Debug",e[e.Verbose=5]="Verbose"}(r=t.LogLevel||(t.LogLevel={}));class o{constructor(){this.noop=()=>{},this.logLevel=r.Off,this.verboseFn=this.debugFn=this.logFn=this.warnFn=this.errorFn=this.noop,this.setLevel(r.Verbose)}get verbose(){return this.verboseFn}get debug(){return this.debugFn}get log(){return this.logFn}get warn(){return this.warnFn}get error(){return this.errorFn}get level(){return this.logLevel}setLevel(e){this.logLevel=e,this.errorFn=e>=r.Error?console.error.bind(console):this.noop,this.warnFn=e>=r.Warn?console.warn.bind(console):this.noop,this.logFn=e>=r.Log?console.log.bind(console):this.noop,this.debugFn=e>=r.Debug?console.info.bind(console):this.noop,this.verboseFn=e>=r.Verbose?console.debug.bind(console):this.noop}}t.Logger=o},2174:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function s(e){try{i(o.next(e))}catch(e){a(e)}}function c(e){try{i(o.throw(e))}catch(e){a(e)}}function i(e){e.done?r(e.value):n(e.value).then(s,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const n=r(1270),a=r(4809);class s extends Error{constructor(){super("Aborted from map-subscribe"),this.name="MapUnsubscribedError"}}const c=(e,t,r,o)=>{var a;return(0,n.createTask)(`map-subscribe-${null!==(a=r.name)&&void 0!==a?a:r._name}`,((n,a)=>{var c;const i=Array.from(t.keys()),u=i.filter((e=>!n.includes(e))),l=n.filter((e=>!i.includes(e)));for(const e of u)null===(c=t.get(e))||void 0===c||c.abort(new s),t.delete(e);for(const n of l){const a=e.fork(r,n,o);t.set(n,a),a.finally((()=>t.delete(n))).catch((()=>{}))}}))};function i({fork:e,effects:t},r,o,a=(()=>!1)){const{UnsubscribedError:i}=t.state,u=e=>a(e)||e instanceof s||e instanceof i,l=new Map,f=e((0,n.createTask)("map-subscribe-wrapper",((e,t)=>{const{effects:n,abortSignal:a,fork:s}=t,{loop:i,state:f}=n,d=c(t,l,o,u);return f.subscribe(t,r,d,u),s(d,r,u),i(a)})),void 0,u);return(e=new s)=>f.abort(e)}function u(e,t,r){Object.defineProperty(e,t,{get:()=>r(e)})}function l(e,t,r,a=(()=>!1)){let c;const i=e=>a(e)||e instanceof s,u=(0,n.createTask)(`subscribe-${r.name}-once`,((e,t)=>o(this,void 0,void 0,(function*(){yield t.fork(r,e,i),c()}))));return c=e.effects.state.subscribe(e,t,u,i)}function f(e){const{state:t}=e.effects,r=(e,t)=>(e.value=t,!0);return t.create({value:void 0},{trigger:r})}function d(e,t){let r=()=>{};const{abortable:o}=e.effects,{subscribeOnce:s}=e.registry.get(a.CoreExportNames.Utils).State,c=o((e=>r=e)),i=(0,n.createTask)("wait-for-transient",(({value:e},t)=>r(e)));return c.unsubscribe=s(e,t,i),c}t.default={mapSubscribe:i,MapUnsubscribedError:s,subscribeOnce:l,waitFor:d,deriveFrom:u,createTransient:f}},4334:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourcePackage=void 0;const o=r(7085),n=r(4809),a=r(763),s=r(1082),c=r(7269);t.SourcePackage=(0,o.createPackage)("source-package",((e,t)=>{const{createArrayAtom:r}=t.registry.get(n.CoreExportNames.CoreStateAtoms),{StateEffectFactory:o,EventListenerEffectFactory:i}=t.registry.get(n.CoreExportNames.CoreEffects),u=t.using(o,i);t.registry.set(c.SourceExportNames.CreateSourceStateAtom,a.createSourceStateAtom),t.registry.set(c.SourceExportNames.CreateSourceReference,s.createSourceReference),t.registry.set(c.SourceExportNames.SourceReferences,r(u,[]))}),[n.CoreExportNames.CoreStateAtoms,n.CoreExportNames.CoreEffects]),t.default=t.SourcePackage},1082:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function s(e){try{i(o.next(e))}catch(e){a(e)}}function c(e){try{i(o.throw(e))}catch(e){a(e)}}function i(e){e.done?r(e.value):n(e.value).then(s,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceReference=void 0;const n=r(1270),a=r(4809),s=r(763),c=r(7269);function i(e,t){const{LoadControl:r}=e.registry.get(a.CoreExportNames.Constants);return Object.assign(Object.assign({loadControl:r.Data},t),{playback:Object.assign({autoplay:!1,muted:!1},null==t?void 0:t.playback)})}function u({context:e,sourceConfig:t,sourceOptions:r,sourceErrorHandler:o,task:n,sourceId:c}){const{generateId:u}=e.registry.get(a.CoreExportNames.Utils).String;c=null!=c?c:u();const f=(0,s.createSourceStateAtom)(e,t,i(e,r)),d=l(c,f,n);return{state:f,id:c,config:t,abortable:e.fork(d,void 0,o)}}t.createSourceReference=u;const l=(0,n.createTaskClosure)(((e,t,r)=>[`source-task-${e}`,(e,n)=>o(void 0,void 0,void 0,(function*(){const e=n.branchDependencies();return e.registry.set(c.SourceExportNames.SourceState,t),r&&(yield e.fork(r,void 0)),e.effects.loop(e.abortSignal)}))]))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},7262:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createBufferConfigAtom=void 0;const o=r(4809);function n(){return{forwardDuration:12,backwardDuration:6}}function a(e,t){const{MediaType:r}=e.registry.get(o.CoreExportNames.Constants);return Object.assign({[r.Video]:n(),[r.Audio]:n(),[r.Muxed]:n(),[r.Subtitle]:n(),[r.Thumbnail]:n(),[r.Unknown]:n()},t)}function s(e,t,r){return e[t].forwardDuration!==r&&(e[t].forwardDuration=r,!0)}function c(e,t,r){return e[t].backwardDuration!==r&&(e[t].backwardDuration=r,!0)}function i(e,t={}){return e.effects.state.create(a(e,t),{setForwardTargetLevel:s,setBackwardTargetLevel:c})}t.createBufferConfigAtom=i},72:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createMediaTypeMapAtom=void 0;const o=r(4809);function n(e,...t){const{createMapStateAtom:r,createArrayAtom:n}=e.registry.get(o.CoreExportNames.CoreStateAtoms),a=r(e);for(const r of t)e.effects.state.dispatch(a.add,r,n(e));return a}t.createMediaTypeMapAtom=n},5902:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPlaybackAtom=void 0;const o=r(8408);function n(e){return{playhead:(0,o.createPlayheadAtom)(e)}}function a(e){return e.effects.state.create(n(e),{})}t.createPlaybackAtom=a},5922:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPlaybackConfigAtom=void 0;const r=(e,t)=>{var r,o;return e.effects.state.create({autoplay:null!==(r=null==t?void 0:t.autoplay)&&void 0!==r&&r,muted:null!==(o=null==t?void 0:t.muted)&&void 0!==o&&o},{})};t.createPlaybackConfigAtom=r},8408:(e,t)=>{function r(e,t){return Math.round(e*t)/t}function o(e,t){return e.precision!==t&&(e.precision=t,!0)}function n(e,t){const o=r(t,e.precision);return e.position!==o&&(e.position=o,!0)}function a(e){return Object.assign({position:-1,precision:1e3},e)}function s(e,t={}){return e.effects.state.create(a(t),{setPrecision:o,setPosition:n})}Object.defineProperty(t,"__esModule",{value:!0}),t.createPlayheadAtom=void 0,t.createPlayheadAtom=s},5113:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceConfigAtom=void 0;const o=r(7755),n=r(4809),a=(e,t)=>{var r;const{ContentType:a}=e.registry.get(n.CoreExportNames.Constants);return e.effects.state.create({contentType:null!==(r=t.contentType)&&void 0!==r?r:a.Content,resources:(0,o.createArrayAtom)(e,t.resources.map((({url:e,type:t,metadata:r})=>({url:e,type:t,metadata:r}))))},{})};t.createSourceConfigAtom=a},763:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceStateAtom=void 0;const o=r(7755),n=r(8258),a=r(538),s=r(4809),c=r(3658),i=r(7262),u=r(72),l=r(5902),f=r(5922),d=r(5113),m=r(2245),p=r(4577);function g(e,t,r){var g,v;const{MediaType:b}=e.registry.get(s.CoreExportNames.Constants),{createPrimitiveAtom:y}=e.registry.get(s.CoreExportNames.CoreStateAtoms);return{url:null!==(v=null===(g=t.resources[0])||void 0===g?void 0:g.url)&&void 0!==v?v:"",stream:(0,a.createStreamAtom)(e,a.StreamType.VoD),activeTracks:(0,o.createArrayAtom)(e,[]),activeSelectionGroups:(0,o.createArrayAtom)(e,[]),config:{buffer:(0,i.createBufferConfigAtom)(e),startup:(0,m.createStartupOptionsAtom)(e),playback:(0,f.createPlaybackConfigAtom)(e,r.playback)},sourceConfig:(0,d.createSourceConfigAtom)(e,t),loadControl:y(e,r.loadControl),dataRanges:(0,n.createDataRangesAtom)(e),video:(0,p.createVideoElementAtom)(e),container:y(e,void 0),logLevel:y(e,c.LogLevel.Verbose),playback:(0,l.createPlaybackAtom)(e),activeMediaTypes:(0,u.createMediaTypeMapAtom)(e,b.Audio,b.Video,b.Unknown)}}const v=(e,t,r)=>e.effects.state.create(g(e,t,r),{forceVideoElementUpdate:()=>!0});t.createSourceStateAtom=v},2245:(e,t)=>{var r;function o(e,t){return e.position!==t&&(e.position=t,!0)}function n(e,t){return e.mode!==t&&(e.mode=t,!0)}function a(e){return Object.assign({position:-1,mode:r.Fast},e)}function s(e,t={}){return e.effects.state.create(a(t),{setPosition:o,setMode:n})}Object.defineProperty(t,"__esModule",{value:!0}),t.createStartupOptionsAtom=t.StartupMode=void 0,function(e){e.Fast="fast",e.Precise="precise"}(r=t.StartupMode||(t.StartupMode={})),t.createStartupOptionsAtom=s},4577:(e,t)=>{function r(){return{element:void 0}}function o(e,t){return e.element!==t&&(e.element=t,!0)}function n(e){return e.effects.state.create(r(),{setElement:o})}Object.defineProperty(t,"__esModule",{value:!0}),t.createVideoElementAtom=void 0,t.createVideoElementAtom=n}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var a=t[o]={exports:{}};return e[o].call(a.exports,a,a.exports,r),a.exports}return r(4334)})()));
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.source=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.source=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function r(e,t,r){const o=t;return o._name=e,{onAdd:o,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function o(e){return(...t)=>{const[o,n]=e(...t);return r(o,n)}}function n(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=o,t.getTaskName=n},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},7755:(e,t)=>{function r(e,t){return e.length===t.length&&e.every(((e,r)=>e===t[r]))}function o(e,...t){return 0!==t.length&&(e.push(...t),!0)}function n(e,...t){const r=e.length;for(const r of t)e.includes(r)||e.push(r);return r===e.length}function a(e,t,...r){return 0!==r.length&&(e.splice(t,0,...r),!0)}function s(e,t,r){let o=0,n=e.length;for(;o<n;){const a=o+n>>>1;r(e[a])<r(t)?o=a+1:n=a}return o}function c(e,t,...r){const o=e.length;if(0===r.length)return!1;if(0===e.length)return e.push(...r.sort(((e,r)=>t(e)-t(r)))),!0;for(const o of r){const r=t(o),n=t(e[0]);if(t(e[e.length-1])<=r)e.push(o);else if(r<=n)e.unshift(o);else{const r=s(e,o,t);e.splice(r,0,o)}}return e.length!==o}function i(e,...t){let r=!1;for(const o of t){const t=e.indexOf(o);t<0||(r=!0,e.splice(t,1))}return r}function u(e){return 0!==e.length&&(e.splice(0,e.length),!0)}function l(e,t){if(r(e,t))return!1;const o=u(e);return t.forEach((t=>e.push(t))),o||t.length>0}Object.defineProperty(t,"__esModule",{value:!0}),t.createArrayAtom=void 0;const f=(e,t=[])=>{const r={add:o,insert:a,insertSorted:c,remove:i,clear:u,set:l,addIfNew:n};return e.effects.state.create(t,r)};t.createArrayAtom=f},5230:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPrimitiveAtom=void 0;const r=e=>({value:e});function o(e,t){return e.value!==t&&(e.value=t,!0)}function n(e,t){return e.effects.state.create(r(t),{setValue:o})}t.createPrimitiveAtom=n},8258:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createDataRangesAtom=void 0;const o=r(1270),n=r(4809);function a(){return{ranges:[],enclosingRange:{start:1/0,end:-1/0},source:{}}}function s(){return{media:{}}}function c(e){return e.map((e=>({start:e.segmentTiming.parsedPlaybackTime,end:e.segmentTiming.parsedPlaybackTime+e.segmentTiming.parsedDuration})))}function i(e,t){var r,o,a,s;const{mergeRanges:i}=e.registry.get(n.CoreExportNames.Utils).Ranges;let u=[];for(const e in t.source)u=i([...u,...c(t.source[e])]);t.ranges.splice(0,t.ranges.length),t.ranges.push(...u),t.enclosingRange.start=null!==(o=null===(r=null==u?void 0:u[0])||void 0===r?void 0:r.start)&&void 0!==o?o:1/0,t.enclosingRange.end=null!==(s=null===(a=null==u?void 0:u[u.length-1])||void 0===a?void 0:a.end)&&void 0!==s?s:-1/0}const u=(0,o.createTaskClosure)((e=>["segment-timing-subscriber",(t,r)=>i(r,e)]));function l(e,t,r,o,s,c){var l,f,d;const{insertSorted:m}=e.registry.get(n.CoreExportNames.Utils).Arrays.Sorted;if(r.media[o]||(r.media[o]=a()),r.media[o].source[s]||(r.media[o].source[s]=[]),r.media[o].source[s].includes(c))return!1;const{state:p}=e.effects,g=p.subscribe(e,c.segmentTiming,u(r.media[o]));null===(f=null===(l=t.get(s))||void 0===l?void 0:l.get(c))||void 0===f||f();const v=null!==(d=t.get(s))&&void 0!==d?d:new Map;return v.set(c,g),t.set(s,v),m(r.media[o].source[s],(e=>e.segmentTiming.parsedPlaybackTime),c),i(e,r.media[o]),!0}function f(e,t,r,o,n,a){var s,c,u;const l=r.media[o],f=null==l?void 0:l.source[n],d=f?f.indexOf(a):-1;return-1!==d&&(null===(c=null===(s=t.get(n))||void 0===s?void 0:s.get(a))||void 0===c||c(),null===(u=t.get(n))||void 0===u||u.delete(a),f.splice(d,1),0===f.length&&delete l.source[n],Object.keys(l.source).length?i(e,r.media[o]):delete r.media[o],!0)}function d(e,t){let r=!1;for(const e in t.media)delete t.media[e],r=!0;for(const[t,r]of e)for(const[e,t]of r)t();return e.clear(),r}function m(e,t,r,o,n){let a=!1;for(const s in r.media)if(o===s)for(const c in r.media[s].source){if(c!==n)continue;const i=r.media[s].source[c].slice();for(const s of i){a=f(e,t,r,o,n,s)||a}}return a}const p=e=>{const t=new Map;return e.effects.state.create(s(),{addSegment:(r,o,n,a)=>l(e,t,r,o,n,a),removeSegment:(r,o,n,a)=>f(e,t,r,o,n,a),clear:e=>d(t,e),deleteSource:(r,o,n)=>m(e,t,r,o,n)})};t.createDataRangesAtom=p},538:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createStreamAtom=t.StreamType=void 0;const o=r(2174),n=r(7755),a=r(5230),{createTransient:s}=o.default;function c(e,t){return e.type!==t&&(e.type=t,!0)}!function(e){e.Live="live",e.VoD="vod"}(t.StreamType||(t.StreamType={}));const i=(e,t)=>e.effects.state.create({tracks:(0,n.createArrayAtom)(e,[]),selectionGroups:(0,n.createArrayAtom)(e,[]),type:t,duration:(0,a.createPrimitiveAtom)(e,1/0),onPlaybackTimeMismatch:s(e),onDurationMismatch:s(e)},{setType:c});t.createStreamAtom=i},3658:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=t.LogLevel=void 0,function(e){e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warn=2]="Warn",e[e.Log=3]="Log",e[e.Debug=4]="Debug",e[e.Verbose=5]="Verbose"}(r=t.LogLevel||(t.LogLevel={}));class o{constructor(){this.noop=()=>{},this.logLevel=r.Off,this.verboseFn=this.debugFn=this.logFn=this.warnFn=this.errorFn=this.noop,this.setLevel(r.Verbose)}get verbose(){return this.verboseFn}get debug(){return this.debugFn}get log(){return this.logFn}get warn(){return this.warnFn}get error(){return this.errorFn}get level(){return this.logLevel}setLevel(e){this.logLevel=e,this.errorFn=e>=r.Error?console.error.bind(console):this.noop,this.warnFn=e>=r.Warn?console.warn.bind(console):this.noop,this.logFn=e>=r.Log?console.log.bind(console):this.noop,this.debugFn=e>=r.Debug?console.info.bind(console):this.noop,this.verboseFn=e>=r.Verbose?console.debug.bind(console):this.noop}}t.Logger=o},2174:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function s(e){try{i(o.next(e))}catch(e){a(e)}}function c(e){try{i(o.throw(e))}catch(e){a(e)}}function i(e){e.done?r(e.value):n(e.value).then(s,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const n=r(1270),a=r(4809);class s extends Error{constructor(){super("Aborted from map-subscribe"),this.name="MapUnsubscribedError"}}const c=(e,t,r,o)=>{var a;return(0,n.createTask)(`map-subscribe-${null!==(a=r.name)&&void 0!==a?a:r._name}`,((n,a)=>{var c;const i=Array.from(t.keys()),u=i.filter((e=>!n.includes(e))),l=n.filter((e=>!i.includes(e)));for(const e of u)null===(c=t.get(e))||void 0===c||c.abort(new s),t.delete(e);for(const n of l){const a=e.fork(r,n,o);t.set(n,a),a.finally((()=>t.delete(n))).catch((()=>{}))}}))};function i({fork:e,effects:t},r,o,a=(()=>!1)){const{UnsubscribedError:i}=t.state,u=e=>a(e)||e instanceof s||e instanceof i,l=new Map,f=e((0,n.createTask)("map-subscribe-wrapper",((e,t)=>{const{effects:n,abortSignal:a,fork:s}=t,{loop:i,state:f}=n,d=c(t,l,o,u);return f.subscribe(t,r,d,u),s(d,r,u),i(a)})),void 0,u);return(e=new s)=>f.abort(e)}function u(e,t,r,o=(()=>!1)){const a=e.effects.state.UnsubscribedError,s=e=>e instanceof a||o(e),c=()=>{null==l||l.abort(new a),l=void 0},i=(0,n.createTask)(`subscribe-and-run-${r._name}`,((e,t)=>(c(),t.fork(r,e,s)))),u=e.effects.state.subscribe(e,t,i,o);let l=e.fork(r,t,s);return()=>{c(),u()}}function l(e,t,r){Object.defineProperty(e,t,{get:()=>r(e)})}function f(e,t,r,a=(()=>!1)){let c;const i=e=>a(e)||e instanceof s,u=(0,n.createTask)(`subscribe-${r.name}-once`,((e,t)=>o(this,void 0,void 0,(function*(){yield t.fork(r,e,i),c()}))));return c=e.effects.state.subscribe(e,t,u,i)}function d(e){const{state:t}=e.effects,r=(e,t)=>(e.value=t,!0);return t.create({value:void 0},{trigger:r})}function m(e,t){let r=()=>{};const{abortable:o}=e.effects,{subscribeOnce:s}=e.registry.get(a.CoreExportNames.Utils).State,c=o((e=>r=e)),i=(0,n.createTask)("wait-for-transient",(({value:e},t)=>r(e)));return c.unsubscribe=s(e,t,i),c}t.default={mapSubscribe:i,subscribeAndRun:u,MapUnsubscribedError:s,subscribeOnce:f,waitFor:m,deriveFrom:l,createTransient:d}},4334:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourcePackage=void 0;const o=r(7085),n=r(4809),a=r(763),s=r(1082),c=r(7269);t.SourcePackage=(0,o.createPackage)("source-package",((e,t)=>{const{createArrayAtom:r}=t.registry.get(n.CoreExportNames.CoreStateAtoms),{StateEffectFactory:o,EventListenerEffectFactory:i}=t.registry.get(n.CoreExportNames.CoreEffects),u=t.using(o,i);t.registry.set(c.SourceExportNames.CreateSourceStateAtom,a.createSourceStateAtom),t.registry.set(c.SourceExportNames.CreateSourceReference,s.createSourceReference),t.registry.set(c.SourceExportNames.SourceReferences,r(u,[]))}),[n.CoreExportNames.CoreStateAtoms,n.CoreExportNames.CoreEffects]),t.default=t.SourcePackage},1082:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function s(e){try{i(o.next(e))}catch(e){a(e)}}function c(e){try{i(o.throw(e))}catch(e){a(e)}}function i(e){e.done?r(e.value):n(e.value).then(s,c)}i((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceReference=void 0;const n=r(1270),a=r(4809),s=r(763),c=r(7269);function i(e,t){const{LoadControl:r}=e.registry.get(a.CoreExportNames.Constants);return Object.assign(Object.assign({loadControl:r.Data},t),{playback:Object.assign({autoplay:!1,muted:!1},null==t?void 0:t.playback)})}function u({context:e,sourceConfig:t,sourceOptions:r,sourceErrorHandler:o,task:n,sourceId:c}){const{generateId:u}=e.registry.get(a.CoreExportNames.Utils).String;c=null!=c?c:u();const f=(0,s.createSourceStateAtom)(e,t,i(e,r)),d=l(c,f,n);return{state:f,id:c,config:t,abortable:e.fork(d,void 0,o)}}t.createSourceReference=u;const l=(0,n.createTaskClosure)(((e,t,r)=>[`source-task-${e}`,(e,n)=>o(void 0,void 0,void 0,(function*(){const e=n.branchDependencies();return e.registry.set(c.SourceExportNames.SourceState,t),r&&(yield e.fork(r,void 0)),e.effects.loop(e.abortSignal)}))]))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},7262:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createBufferConfigAtom=void 0;const o=r(4809);function n(){return{forwardDuration:12,backwardDuration:6}}function a(e,t){const{MediaType:r}=e.registry.get(o.CoreExportNames.Constants);return Object.assign({[r.Video]:n(),[r.Audio]:n(),[r.Muxed]:n(),[r.Subtitle]:n(),[r.Thumbnail]:n(),[r.Unknown]:n()},t)}function s(e,t,r){return e[t].forwardDuration!==r&&(e[t].forwardDuration=r,!0)}function c(e,t,r){return e[t].backwardDuration!==r&&(e[t].backwardDuration=r,!0)}function i(e,t={}){return e.effects.state.create(a(e,t),{setForwardTargetLevel:s,setBackwardTargetLevel:c})}t.createBufferConfigAtom=i},72:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createMediaTypeMapAtom=void 0;const o=r(4809);function n(e,...t){const{createMapStateAtom:r,createArrayAtom:n}=e.registry.get(o.CoreExportNames.CoreStateAtoms),a=r(e);for(const r of t)e.effects.state.dispatch(a.add,r,n(e));return a}t.createMediaTypeMapAtom=n},5902:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPlaybackAtom=void 0;const o=r(8408);function n(e){return{playhead:(0,o.createPlayheadAtom)(e)}}function a(e){return e.effects.state.create(n(e),{})}t.createPlaybackAtom=a},5922:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPlaybackConfigAtom=void 0;const r=(e,t)=>{var r,o;return e.effects.state.create({autoplay:null!==(r=null==t?void 0:t.autoplay)&&void 0!==r&&r,muted:null!==(o=null==t?void 0:t.muted)&&void 0!==o&&o},{})};t.createPlaybackConfigAtom=r},8408:(e,t)=>{function r(e,t){return Math.round(e*t)/t}function o(e,t){return e.precision!==t&&(e.precision=t,!0)}function n(e,t){const o=r(t,e.precision);return e.position!==o&&(e.position=o,!0)}function a(e){return Object.assign({position:-1,precision:1e3},e)}function s(e,t={}){return e.effects.state.create(a(t),{setPrecision:o,setPosition:n})}Object.defineProperty(t,"__esModule",{value:!0}),t.createPlayheadAtom=void 0,t.createPlayheadAtom=s},5113:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceConfigAtom=void 0;const o=r(7755),n=r(4809),a=(e,t)=>{var r;const{ContentType:a}=e.registry.get(n.CoreExportNames.Constants);return e.effects.state.create({contentType:null!==(r=t.contentType)&&void 0!==r?r:a.Content,resources:(0,o.createArrayAtom)(e,t.resources.map((({url:e,type:t,metadata:r})=>({url:e,type:t,metadata:r}))))},{})};t.createSourceConfigAtom=a},763:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSourceStateAtom=void 0;const o=r(7755),n=r(8258),a=r(538),s=r(4809),c=r(3658),i=r(7262),u=r(72),l=r(5902),f=r(5922),d=r(5113),m=r(2245),p=r(4577);function g(e,t,r){var g,v;const{MediaType:b}=e.registry.get(s.CoreExportNames.Constants),{createPrimitiveAtom:y}=e.registry.get(s.CoreExportNames.CoreStateAtoms);return{url:null!==(v=null===(g=t.resources[0])||void 0===g?void 0:g.url)&&void 0!==v?v:"",stream:(0,a.createStreamAtom)(e,a.StreamType.VoD),activeTracks:(0,o.createArrayAtom)(e,[]),activeSelectionGroups:(0,o.createArrayAtom)(e,[]),config:{buffer:(0,i.createBufferConfigAtom)(e),startup:(0,m.createStartupOptionsAtom)(e),playback:(0,f.createPlaybackConfigAtom)(e,r.playback)},sourceConfig:(0,d.createSourceConfigAtom)(e,t),loadControl:y(e,r.loadControl),dataRanges:(0,n.createDataRangesAtom)(e),video:(0,p.createVideoElementAtom)(e),container:y(e,void 0),logLevel:y(e,c.LogLevel.Verbose),playback:(0,l.createPlaybackAtom)(e),activeMediaTypes:(0,u.createMediaTypeMapAtom)(e,b.Audio,b.Video,b.Unknown)}}const v=(e,t,r)=>e.effects.state.create(g(e,t,r),{forceVideoElementUpdate:()=>!0});t.createSourceStateAtom=v},2245:(e,t)=>{var r;function o(e,t){return e.position!==t&&(e.position=t,!0)}function n(e,t){return e.mode!==t&&(e.mode=t,!0)}function a(e){return Object.assign({position:-1,mode:r.Fast},e)}function s(e,t={}){return e.effects.state.create(a(t),{setPosition:o,setMode:n})}Object.defineProperty(t,"__esModule",{value:!0}),t.createStartupOptionsAtom=t.StartupMode=void 0,function(e){e.Fast="fast",e.Precise="precise"}(r=t.StartupMode||(t.StartupMode={})),t.createStartupOptionsAtom=s},4577:(e,t)=>{function r(){return{element:void 0}}function o(e,t){return e.element!==t&&(e.element=t,!0)}function n(e){return e.effects.state.create(r(),{setElement:o})}Object.defineProperty(t,"__esModule",{value:!0}),t.createVideoElementAtom=void 0,t.createVideoElementAtom=n}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var a=t[o]={exports:{}};return e[o].call(a.exports,a,a.exports,r),a.exports}return r(4334)})()));
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.1.
|
|
8
|
+
* Bitmovin Player X Version 10.1.2
|
|
9
9
|
*******************************************************************************/
|
|
10
10
|
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["sources-api"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["sources-api"]=t())}(self,(()=>(()=>{"use strict";var e={4997:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ApiManager=void 0;const o=r(3842);class s{constructor(){this.apiDisposedErrorGetter=()=>{throw new o.ApiDisposedError},this._api={}}get(e){return this._api[e]}set(e,t){this._api[e]=t}defineProperty(e,t){Object.defineProperty(this._api,e,t)}delete(e){delete this._api[e]}get api(){return this._api}dispose(){Object.keys(this._api).forEach((e=>Object.defineProperty(this._api,e,{get:this.apiDisposedErrorGetter})))}}t.ApiManager=s},3842:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ApiDisposedError=void 0;const o=r(9138);class s extends o.FrameworkError{constructor(){super("The API was disposed"),this.name="ApiDisposedError"}}t.ApiDisposedError=s},9138:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FrameworkError=void 0;class r extends Error{constructor(){super(...arguments),this.name="FrameworkError"}}t.FrameworkError=r},7085:(e,t)=>{function r(e,t,r){const o=t;return o._name=e,{onAdd:o,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function o(e){return(...t)=>{const[o,s]=e(...t);return r(o,s)}}function s(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=o,t.getTaskName=s},8668:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(t.BundleExportNames||(t.BundleExportNames={}))},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},1712:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.EventBusExportNames=void 0,function(e){e.CreateEventBus="create-event-bus"}(t.EventBusExportNames||(t.EventBusExportNames={}))},6022:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayerEvent=t.PlayerApiExportNames=void 0,function(e){e.PlayerEventBus="player-event-bus"}(t.PlayerApiExportNames||(t.PlayerApiExportNames={})),function(e){e.PlayerError="player-error"}(t.PlayerEvent||(t.PlayerEvent={}))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},9006:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceRemovedError=void 0;const o=r(9138);class s extends o.FrameworkError{constructor(){super("Source was removed"),this.name="SourceRemovedError"}}t.SourceRemovedError=s},604:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.startSourceStateVideoElementSubscriber=void 0;const o=r(1270),s=r(6022),n=r(1010);function a(e,t,r){const a=e.registry.get(s.PlayerApiExportNames.PlayerEventBus);let c=r.video.element;return e.effects.state.subscribe(e,r.video,(0,o.createTask)("source-video-subscriber",((r,o)=>{c&&c!==r.element&&a.dispatch(e,n.SourcesApiEvent.VideoDetached,{videoElement:c,sourceId:t}),r.element&&a.dispatch(e,n.SourcesApiEvent.VideoAttached,{videoElement:r.element,sourceId:t}),c=r.element})))}t.startSourceStateVideoElementSubscriber=a},726:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourcesApiPackage=void 0;const o=r(7085),s=r(8668),n=r(4809),a=r(1712),c=r(6022),i=r(7269),u=r(2737),d=r(1010),l=r(2433);t.SourcesApiPackage=(0,o.createPackage)("sources-api-package",((e,t)=>{t.registry.maybeSet(d.SourcesApiExportNames.VideoElementUtils,l.default);const{StateEffectFactory:r,EventListenerEffectFactory:o}=t.registry.get(n.CoreExportNames.CoreEffects),s=t.using(r,o),{sourcesApi:a,disposeApi:c}=(0,u.createSourcesApi)(s);e.set("sources",a);const i=()=>{var e;t.abortSignal.removeEventListener("abort",i),c(null!==(e=t.abortSignal.reason)&&void 0!==e?e:new Error("Sources API Package aborted"))};t.abortSignal.addEventListener("abort",i)}),[n.CoreExportNames.CoreEffects,n.CoreExportNames.CoreStateAtoms,s.BundleExportNames.Logger,n.CoreExportNames.Utils,n.CoreExportNames.Constants,i.SourceExportNames.CreateSourceStateAtom,c.PlayerApiExportNames.PlayerEventBus,a.EventBusExportNames.CreateEventBus]),t.default=t.SourcesApiPackage},1010:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourcesApiExportNames=t.SourcesApiEvent=void 0,function(e){e.SourceAdded="source-added",e.SourceRemoved="source-removed",e.VideoAttached="video-attached",e.VideoDetached="video-detached",e.SourceError="source-error"}(t.SourcesApiEvent||(t.SourcesApiEvent={})),function(e){e.SourceApiManager="source-api-manager",e.VideoElementUtils="video-element-utils",e.SourceEventBus="source-event-bus"}(t.SourcesApiExportNames||(t.SourcesApiExportNames={}))},2433:(e,t)=>{function r(e,t){return e.parentElement!==t&&t.appendChild(e),()=>o(e,t)}function o(e,t){t.removeChild(e)}function s(){return document.createElement("video")}function n(e,t){e.setAttribute("controls",""),e.style.width="100%",e.muted=t.muted}Object.defineProperty(t,"__esModule",{value:!0}),t.default={createVideoElement:s,attachVideoElement:r,detachVideoElement:o,configureVideoElement:n}},2738:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.addSource=void 0;const o=r(4944),s=r(8117);function n(e,t,r,n){return(a,c,i)=>{var u;const d=(0,o.initSource)(e,t,a,c,i),l=t.get(d);if(!l)throw new Error("Source reference is unexpectedly undefined");return(0,s.maybeAttachSource)(e,l.state,r,n,null===(u=null==c?void 0:c.attach)||void 0===u||u),d}}t.addSource=n},5693:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.attach=void 0;const o=r(8117);function s(e,t,r,s){return(n,a)=>{const c=t.get(n);if(!c)throw new Error("Source not found");(0,o.maybeAttachSource)(e,c.state,r,s,null==a||a)}}t.attach=s},8502:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getAttachContainerAndVideoElement=t.attachVideoElementToSource=t.detachSourceUsingVideo=void 0;const o=r(7269),s=r(1010);function n(e,t,r){const s=e.registry.get(o.SourceExportNames.SourceReferences).find((({state:e})=>e.video.element===r));s&&s.state!==t&&e.effects.state.dispatch(s.state.video.setElement,void 0)}function a(e,t,r,o){const{attachVideoElement:n}=e.registry.get(s.SourcesApiExportNames.VideoElementUtils);n(r,o),e.effects.state.dispatch(t.container.setValue,o),e.effects.state.dispatch(t.video.setElement,r)}function c(e,t,r){var o,s;let n=t,a=e;return i(r)&&(n=null!==(o=r.container)&&void 0!==o?o:n,a=null!==(s=r.video)&&void 0!==s?s:a),{container:n,videoElement:a}}function i(e){return"object"==typeof e}t.detachSourceUsingVideo=n,t.attachVideoElementToSource=a,t.getAttachContainerAndVideoElement=c},2737:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSourcesApi=void 0;const o=r(8668),s=r(1010),n=r(2738),a=r(5693),c=r(6593),i=r(1161);function u(e){var t;const r=new Map,u=e.registry.get(o.BundleExportNames.PlayerConfig),d=e.registry.get(s.SourcesApiExportNames.VideoElementUtils),{createVideoElement:l}=d,p=null!==(t=u.defaultVideoElement)&&void 0!==t?t:l(),v=u.defaultContainer,f=e=>{var t;for(const[t,o]of r)o.abortable.abort(e);u.defaultVideoElement||null===(t=p.parentElement)||void 0===t||t.removeChild(p)};return{sourcesApi:{list:()=>Array.from(r.keys()),add:(0,n.addSource)(e,r,p,v),remove:(0,i.removeSource)(e,r),attachVideo:(0,a.attach)(e,r,p,v),detachVideo:(0,c.detach)(e,r)},disposeApi:f}}t.createSourcesApi=u},6593:(e,t)=>{function r(e,t){return r=>{const o=t.get(r);if(!o)throw new Error("Source not found");e.effects.state.dispatch(o.state.video.setElement,void 0)}}Object.defineProperty(t,"__esModule",{value:!0}),t.detach=void 0,t.detach=r},4944:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.initSource=void 0;const o=r(4997),s=r(1270),n=r(8668),a=r(1712),c=r(6022),i=r(7269),u=r(9006),d=r(604),l=r(1010),p=r(1161);function v(e,t,r,s,v){const m=e.registry.get(n.BundleExportNames.Logger),E=e.registry.get(i.SourceExportNames.CreateSourceReference),S=e.registry.get(i.SourceExportNames.SourceReferences),g=e.registry.get(a.EventBusExportNames.CreateEventBus),y=e.registry.get(c.PlayerApiExportNames.PlayerEventBus);v=null!=v?v:S.length;const h=new o.ApiManager,b=g(),A=E({context:e,sourceConfig:r,sourceOptions:s,sourceErrorHandler:()=>!0,task:f(h,b)});t.set(h.api,A);const{state:x,abortable:_,id:P}=A;h.defineProperty("logLevel",{get:()=>x.logLevel.value,set:t=>e.effects.state.dispatch(x.logLevel.setValue,t)}),h.defineProperty("loadControl",{get:()=>x.loadControl.value,set:t=>e.effects.state.dispatch(x.loadControl.setValue,t)}),h.set("events",b),h.defineProperty("id",{get:()=>P});const N=(0,d.startSourceStateVideoElementSubscriber)(e,P,x);return _.catch((t=>{if(!(t instanceof u.SourceRemovedError)){const o=t instanceof Error?t:new Error(t);m.warn(`Encountered error for source ${P}`,o),y.dispatch(e,l.SourcesApiEvent.SourceError,{sourceConfig:r,sourceId:P,error:o})}})).finally((()=>{try{(0,p.removeSource)(e,t)(h.api)}catch(e){}N(),h.dispose()})),e.effects.state.dispatch(S.insert,v,A),y.dispatch(e,l.SourcesApiEvent.SourceAdded,{sourceConfig:r,sourceId:P,sourceOptions:s}),m.debug(`Source (${x.url}) added [id: ${P}]`),h.api}t.initSource=v;const f=(0,s.createTaskClosure)(((e,t)=>["",(r,o)=>(o.registry.set(l.SourcesApiExportNames.SourceApiManager,e),o.registry.set(l.SourcesApiExportNames.SourceEventBus,t),o.effects.loop(o.abortSignal))]))},8117:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.maybeAttachSource=void 0;const o=r(1010),s=r(8502);function n(e,t,r,n,a){var c;if(!a)return;const{configureVideoElement:i}=e.registry.get(o.SourcesApiExportNames.VideoElementUtils),{container:u,videoElement:d}=(0,s.getAttachContainerAndVideoElement)(r,n,a);(0,s.detachSourceUsingVideo)(e,t,d),i(d,null!==(c=t.config.playback)&&void 0!==c?c:{}),(0,s.attachVideoElementToSource)(e,t,d,u)}t.maybeAttachSource=n},1161:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeSource=void 0;const o=r(8668),s=r(6022),n=r(7269),a=r(9006),c=r(1010);function i(e,t){return r=>{const i=t.get(r);if(!i)throw new Error("Source not found");const{effects:{state:u},registry:d}=e,l=new a.SourceRemovedError,p=d.get(o.BundleExportNames.Logger),v=d.get(s.PlayerApiExportNames.PlayerEventBus),f=d.get(n.SourceExportNames.SourceReferences),{abortable:m,state:E,id:S,config:g}=i;p.debug(`Source (${E.url}) removed [id: ${S}]`);E.video.element&&u.dispatch(E.video.setElement,void 0),m.abort(l),u.dispatch(E.dataRanges.clear),u.dispatch(f.remove,i),v.dispatch(e,c.SourcesApiEvent.SourceRemoved,{sourceConfig:g,sourceId:S}),t.delete(r)}}t.removeSource=i}},t={};function r(o){var s=t[o];if(void 0!==s)return s.exports;var n=t[o]={exports:{}};return e[o](n,n.exports,r),n.exports}return r(726)})()));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../types/packages/subtitles/subtitle-base/SubtitleBase.package';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/*******************************************************************************
|
|
2
|
+
* This source code is the proprietary property of Bitmovin, Inc. Unauthorized
|
|
3
|
+
* copying, distribution, or use of this code, or any portion thereof, is
|
|
4
|
+
* strictly prohibited. © 2024 Bitmovin, Inc. All rights reserved. This
|
|
5
|
+
* source code is subject to the terms and conditions of the accompanying
|
|
6
|
+
* license agreement.
|
|
7
|
+
*
|
|
8
|
+
* Bitmovin Player X Version 10.1.2
|
|
9
|
+
*******************************************************************************/
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["subtitle-base"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["subtitle-base"]=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function o(e,t,o){const r=t;return r._name=e,{onAdd:r,dependencies:o}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=o},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},9468:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SubtitleBasePackage=void 0;const r=o(7085),a=o(4809),s=o(7269),u=o(4235),c=o(3455),i=o(2411);t.SubtitleBasePackage=(0,r.createPackage)("subtitle-base",((e,t)=>{const{EventListenerEffectFactory:o,StateEffectFactory:r}=t.registry.get(a.CoreExportNames.CoreEffects),s=t.using(o,r),n=(0,c.createSubtitleCueMapAtom)(s);s.registry.set(i.SubtitleBaseExportNames.SubtitleCueMapAtom,n),s.registry.set(i.SubtitleBaseExportNames.CreateSubtitleCueAtom,u.createSubtitleCueAtom)}),[a.CoreExportNames.CoreEffects,a.CoreExportNames.CoreStateAtoms,s.SourceExportNames.SourceState]),t.default=t.SubtitleBasePackage},4235:(e,t)=>{function o(e,t){return e.effects.state.create(Object.assign({},t),{})}Object.defineProperty(t,"__esModule",{value:!0}),t.createSubtitleCueAtom=void 0,t.createSubtitleCueAtom=o},3455:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSubtitleCueMapAtom=void 0;const r=o(4809);function a(e){return(0,e.registry.get(r.CoreExportNames.CoreStateAtoms).createMapStateAtom)(e)}t.createSubtitleCueMapAtom=a},2411:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SubtitleBaseExportNames=void 0,function(e){e.SubtitleCueMapAtom="subtitle-cue-map-atom",e.CreateSubtitleCueAtom="create-subtitle-cue-atom"}(t.SubtitleBaseExportNames||(t.SubtitleBaseExportNames={}))}},t={};function o(r){var a=t[r];if(void 0!==a)return a.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,o),s.exports}return o(9468)})()));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../types/packages/subtitles/subtitle-format-detection/SubtitleFormatDetection.package';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/*******************************************************************************
|
|
2
|
+
* This source code is the proprietary property of Bitmovin, Inc. Unauthorized
|
|
3
|
+
* copying, distribution, or use of this code, or any portion thereof, is
|
|
4
|
+
* strictly prohibited. © 2024 Bitmovin, Inc. All rights reserved. This
|
|
5
|
+
* source code is subject to the terms and conditions of the accompanying
|
|
6
|
+
* license agreement.
|
|
7
|
+
*
|
|
8
|
+
* Bitmovin Player X Version 10.1.2
|
|
9
|
+
*******************************************************************************/
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["subtitle-format-detection"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["subtitle-format-detection"]=t())}(self,(()=>(()=>{"use strict";var e={5205:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createEffectFactory=void 0;const r=e=>e;t.createEffectFactory=r},7085:(e,t)=>{function r(e,t,r){const o=t;return o._name=e,{onAdd:o,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},1270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function o(e){return(...t)=>{const[o,a]=e(...t);return r(o,a)}}function a(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=o,t.getTaskName=a},7342:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createTaskClosure=t.createTask=t.createPackage=t.createEffectFactory=void 0;var o=r(5205);Object.defineProperty(t,"createEffectFactory",{enumerable:!0,get:function(){return o.createEffectFactory}});var a=r(7085);Object.defineProperty(t,"createPackage",{enumerable:!0,get:function(){return a.createPackage}});var n=r(1270);Object.defineProperty(t,"createTask",{enumerable:!0,get:function(){return n.createTask}}),Object.defineProperty(t,"createTaskClosure",{enumerable:!0,get:function(){return n.createTaskClosure}})},8668:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(t.BundleExportNames||(t.BundleExportNames={}))},4809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},1146:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DataExportNames=void 0,function(e){e.StreamTimeline="stream-timeline"}(t.DataExportNames||(t.DataExportNames={}))},6650:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,n){function i(e){try{c(o.next(e))}catch(e){n(e)}}function s(e){try{c(o.throw(e))}catch(e){n(e)}}function c(e){e.done?r(e.value):a(e.value).then(i,s)}c((o=o.apply(e,t||[])).next())}))},a=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(r){t[r]=e[r]&&function(t){return new Promise((function(o,n){a(o,n,(t=e[r](t)).done,t.value)}))}}function a(e,t,r,o){Promise.resolve(o).then((function(t){e({value:t,done:r})}),t)}};Object.defineProperty(t,"__esModule",{value:!0}),t.processSegment=void 0;const n=r(8668),i=r(4809);function s(e,t){const{DataStreamClearedError:r,DataStreamClosedError:o}=e.registry.get(i.CoreExportNames.CoreStateAtoms).DataStream,{QueueItemRemovedError:a}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Queue,n=t instanceof Error?t:new Error("Failed to fetch subtitle");return[o,r,a].some((e=>n instanceof e))}function c(e,t){var r,c,u,f;return o(this,void 0,void 0,(function*(){const o=e.registry.get(n.BundleExportNames.Logger),{SubtitleFormatType:l}=e.registry.get(i.CoreExportNames.Constants),{merge:m,arrayBufferToString:d}=e.registry.get(i.CoreExportNames.Utils).TypedArrays,{isSubtitleTrack:p}=e.registry.get(i.CoreExportNames.CoreStateAtoms).Tracks;if(p(t.track))try{const n=[];try{for(var y,g=!0,v=a(t.data);y=yield v.next(),!(r=y.done);){f=y.value,g=!1;try{const e=f;n.push(e)}finally{g=!0}}}catch(e){c={error:e}}finally{try{g||r||!(u=v.return)||(yield u.call(v))}finally{if(c)throw c.error}}const i=d(m(n));i&&i.trim().startsWith("WEBVTT")&&(o.log(`Setting subtitle track format type to ${l.WebVTT}`),e.effects.state.dispatch(t.track.formatType.setValue,l.WebVTT))}catch(t){s(e,t)||o.log("Failed subtitle format type detection",t)}}))}t.processSegment=c},1327:function(e,t,r){var o=this&&this.__awaiter||function(e,t,r,o){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,n){function i(e){try{c(o.next(e))}catch(e){n(e)}}function s(e){try{c(o.throw(e))}catch(e){n(e)}}function c(e){e.done?r(e.value):a(e.value).then(i,s)}c((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.startSubtitleSegmentFormatDetection=void 0;const a=r(1270),n=r(4809),i=r(1146),s=r(6650);function c(e){const t=e.registry.get(i.DataExportNames.StreamTimeline),{mapSubscribe:r}=e.registry.get(n.CoreExportNames.Utils).State;r(e,t,u)}t.startSubtitleSegmentFormatDetection=c;const u=(0,a.createTask)("subtitle-format-detection-timeline-section-subscriber",((e,t)=>o(void 0,void 0,void 0,(function*(){const{mapSubscribe:r}=t.registry.get(n.CoreExportNames.Utils).State,{isSubtitleSelectionGroup:o}=t.registry.get(n.CoreExportNames.CoreStateAtoms).SelectionGroups;for(const[a,n]of e.streamSequenceMap)o(a)&&r(t,n,f)})))),f=(0,a.createTask)("subtitle-format-detection-data-stream-subscriber",((e,t)=>o(void 0,void 0,void 0,(function*(){const{isSubtitleTrack:r}=t.registry.get(n.CoreExportNames.CoreStateAtoms).Tracks,{SubtitleFormatType:o}=t.registry.get(n.CoreExportNames.Constants);r(e.track)&&e.track.formatType.value===o.Unknown&&(yield(0,s.processSegment)(t,e))}))))}},t={};function r(o){var a=t[o];if(void 0!==a)return a.exports;var n=t[o]={exports:{}};return e[o].call(n.exports,n,n.exports,r),n.exports}var o={};return(()=>{var e=o;Object.defineProperty(e,"__esModule",{value:!0}),e.SubtitleFormatDetectionPackage=void 0;const t=r(8668),a=r(7342),n=r(4809),i=r(1146),s=r(1327);e.SubtitleFormatDetectionPackage=(0,a.createPackage)("subtitle-format-detection-package",((e,t)=>{const{StateEffectFactory:r,EventListenerEffectFactory:o}=t.registry.get(n.CoreExportNames.CoreEffects),a=t.using(r,o);(0,s.startSubtitleSegmentFormatDetection)(a)}),[n.CoreExportNames.Utils,t.BundleExportNames.Logger,n.CoreExportNames.Constants,n.CoreExportNames.CoreEffects,n.CoreExportNames.CoreStateAtoms,i.DataExportNames.StreamTimeline])})(),o})()));
|