@bitmovin/player-web-x 10.1.3 → 10.1.4
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 +1 -1
- package/packages/playerx-adaptation.package.js +2 -2
- package/packages/playerx-analytics.package.js +1 -1
- 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 +1 -1
- 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 +1 -1
- package/packages/playerx-source.package.js +1 -1
- package/packages/playerx-sources-api.package.js +1 -1
- package/packages/playerx-subtitle-api.package.js +1 -1
- package/packages/playerx-subtitle-base.package.js +1 -1
- package/packages/playerx-subtitle-format-detection.package.js +1 -1
- package/packages/playerx-subtitle-native-renderer.package.js +1 -1
- package/packages/playerx-subtitles.package.js +1 -1
- package/packages/playerx-trick-play.package.js +1 -1
- 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 +1 -1
- package/playerx-framework-utils.js +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.4
|
|
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.hls=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.hls=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,s]=e(...t);return r(n,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=n,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={}))},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 s(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 o(e,t,r){let n=0,s=e.length;for(;n<s;){const a=n+s>>>1;r(e[a])<r(t)?n=a+1:s=a}return n}function i(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),s=t(e[0]);if(t(e[e.length-1])<=r)e.push(n);else if(r<=s)e.unshift(n);else{const r=o(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 l(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:a,insertSorted:i,remove:c,clear:u,set:l,addIfNew:s};return e.effects.state.create(t,r)};t.createArrayAtom=d},5230:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPrimitiveAtom=void 0;const r=e=>({value:e});function n(e,t){return e.value!==t&&(e.value=t,!0)}function s(e,t){return e.effects.state.create(r(t),{setValue:n})}t.createPrimitiveAtom=s},538:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createStreamAtom=t.StreamType=void 0;const n=r(2174),s=r(7755),a=r(5230),{createTransient:o}=n.default;function i(e,t){return e.type!==t&&(e.type=t,!0)}!function(e){e.Live="live",e.VoD="vod"}(t.StreamType||(t.StreamType={}));const c=(e,t)=>e.effects.state.create({tracks:(0,s.createArrayAtom)(e,[]),selectionGroups:(0,s.createArrayAtom)(e,[]),type:t,duration:(0,a.createPrimitiveAtom)(e,1/0),onPlaybackTimeMismatch:o(e),onDurationMismatch:o(e)},{setType:i});t.createStreamAtom=c},6664:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.mapSubscribe=void 0;const n=r(1270),s=r(5231),a=(e,t,r,a)=>{var c;return(0,n.createTask)(`map-subscribe-${null!==(c=r.name)&&void 0!==c?c:r._name}`,((n,c)=>{var u;const{removedKeys:l,addedKeys:d}=i(t,n);for(const e of l)null===(u=t.get(e))||void 0===u||u.abort(new s.MapUnsubscribedError),t.delete(e);for(const s of d){const i=o(n)?s:[s,n.get(s)],c=e.fork(r,i,a);t.set(s,c),c.finally((()=>t.delete(s))).catch((()=>{}))}}))};function o(e){return"insert"in e}function i(e,t){const r=Array.from(e.keys());if(o(t)){return{removedKeys:r.filter((e=>!t.includes(e))),addedKeys:t.filter((e=>!r.includes(e)))}}return{removedKeys:r.filter((e=>!t.has(e))),addedKeys:Array.from(t.keys()).filter((e=>!r.includes(e)))}}function c({fork:e,effects:t},r,o,i=(()=>!1)){const{UnsubscribedError:c}=t.state,u=e=>i(e)||e instanceof s.MapUnsubscribedError||e instanceof c,l=new Map,d=e((0,n.createTask)("map-subscribe-wrapper",((e,t)=>{const{effects:n,abortSignal:s,fork:i}=t,{loop:c,state:d}=n,f=a(t,l,o,u);return d.subscribe(t,r,f,u),i(f,r,u),c(s)})),void 0,u);return(e=new s.MapUnsubscribedError)=>d.abort(e)}t.mapSubscribe=c},5231:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MapUnsubscribedError=void 0;class r extends Error{constructor(){super("Aborted from map-subscribe"),this.name="MapUnsubscribedError"}}t.MapUnsubscribedError=r},2174:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function s(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function i(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){e.done?r(e.value):s(e.value).then(o,i)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const s=r(1270),a=r(4809),o=r(6664),i=r(5231);function c(e,t,r,n=(()=>!1)){const a=e.effects.state.UnsubscribedError,o=e=>e instanceof a||n(e),i=()=>{null==l||l.abort(new a),l=void 0},c=(0,s.createTask)(`subscribe-and-run-${r._name}`,((e,t)=>(i(),t.fork(r,e,o)))),u=e.effects.state.subscribe(e,t,c,n);let l=e.fork(r,t,o);return()=>{i(),u()}}function u(e,t,r){Object.defineProperty(e,t,{get:()=>r(e)})}function l(e,t,r,a=(()=>!1)){let o;const c=e=>a(e)||e instanceof i.MapUnsubscribedError,u=(0,s.createTask)(`subscribe-${r.name}-once`,((e,t)=>n(this,void 0,void 0,(function*(){yield t.fork(r,e,c),o()}))));return o=e.effects.state.subscribe(e,t,u,c)}function d(e){const{state:t}=e.effects,r=(e,t)=>(e.value=t,!0);return t.create({value:void 0},{trigger:r})}function f(e,t){let r=()=>{};const{abortable:n}=e.effects,{subscribeOnce:o}=e.registry.get(a.CoreExportNames.Utils).State,i=n((e=>r=e)),c=(0,s.createTask)("wait-for-transient",(({value:e},t)=>r(e)));return i.unsubscribe=o(e,t,c),i}t.default={mapSubscribe:o.mapSubscribe,subscribeAndRun:c,MapUnsubscribedError:i.MapUnsubscribedError,subscribeOnce:l,waitFor:f,deriveFrom:u,createTransient:d}},8149:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.HlsParsingExportNames=t.PlaylistType=t.TagType=t.MetadataType=t.HlsEncryptionMethod=void 0,function(e){e.NONE="NONE",e.AES_128="AES-128",e.SAMPLE_AES="SAMPLE-AES"}(t.HlsEncryptionMethod||(t.HlsEncryptionMethod={})),function(e){e.CUETAG="CUETAG",e.DATERANGE="DATERANGE",e.CUSTOM="CUSTOM",e.SCTE="SCTE",e.ID3="ID3",e.EMSG="EMSG"}(t.MetadataType||(t.MetadataType={})),function(e){e.M3u="m3u",e.AllowCache="allow-cache",e.ByteRange="byterange",e.EndList="endlist",e.Inf="inf",e.Key="key",e.MediaSequence="media-sequence",e.DiscontinuitySequence="discontinuity-sequence",e.PlaylistType="playlist-type",e.StreamInf="stream-inf",e.IframeStreamInf="i-frame-stream-inf",e.Media="media",e.Start="start",e.Discontinuity="discontinuity",e.DateTime="date-time",e.TargetDuration="targetduration",e.Map="map",e.IndependentSegments="independent-segments",e.SessionData="session-data",e.SessionKey="session-key",e.CueOut="cue-out",e.CueOutCont="cue-out-cont",e.CueIn="cue-in",e.Scte35="scte35",e.DateRange="daterange",e.Version="version",e.Uri="uri",e.Unknown="unknown"}(t.TagType||(t.TagType={})),function(e){e.Vod="VOD",e.Event="EVENT"}(t.PlaylistType||(t.PlaylistType={})),function(e){e.ParsingTask="hls-parsing-task",e.ParsingFunctions="hls-parsing-functions",e.Errors="hls-parsing-errors"}(t.HlsParsingExportNames||(t.HlsParsingExportNames={}))},9194:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createActivePlaylistAtom=void 0;const n=r(4809),s=(e,t)=>{const{createArrayAtom:r}=e.registry.get(n.CoreExportNames.CoreStateAtoms);return r(e,t)};t.createActivePlaylistAtom=s},9897:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ActiveTrackSubscriber=void 0;const n=r(1270),s=r(4809);t.ActiveTrackSubscriber=(0,n.createTaskClosure)((({activePlaylistsAtom:e})=>["active-track-subscriber",(t,r)=>{const{state:n}=r.effects,{isMediaOrSubtitleTrack:a}=r.registry.get(s.CoreExportNames.CoreStateAtoms).Tracks,o=[];for(const e of t)a(e)&&(void 0===e.uri||o.includes(e.uri)||o.push(e.uri));const i=o.filter((t=>!e.includes(t))),c=e.filter((e=>!o.includes(e)));n.dispatch(e.add,...i),n.dispatch(e.remove,...c)}]))},9059:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function s(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function i(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){e.done?r(e.value):s(e.value).then(o,i)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.FetchPlaylistTask=void 0;const s=r(1270),a=r(3408),o=r(8149);t.FetchPlaylistTask=(0,s.createTask)("fetch-playlist",((e,t)=>n(void 0,void 0,void 0,(function*(){const r=t.registry.get(a.NetworkExportNames.NetworkTask),n=t.registry.get(o.HlsParsingExportNames.ParsingTask),s={url:e,method:a.HttpRequestMethod.GET,responseType:a.HttpResponseType.TEXT},i=yield t.fork(r,[s,void 0]);return t.fork(n,i.body)}))))},7184:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function s(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function i(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){e.done?r(e.value):s(e.value).then(o,i)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.HlsPackage=void 0;const s=r(7085),a=r(1270),o=r(8668),i=r(4809),c=r(3408),u=r(7269),l=r(8149),d=r(791),f=r(9194),m=r(9897),p=r(9591),g=r(4088),y=r(232),T=r(4766),v=()=>{};t.HlsPackage=(0,s.createPackage)("hls-package",((e,t)=>{const{StateEffectFactory:r,EventListenerEffectFactory:s}=t.registry.get(i.CoreExportNames.CoreEffects),o=t.using(r).using(s),{state:c}=o.effects,l=o.registry.maybeSetAndGet(T.HlsPackageExportNames.HlsManifestLoadTask,p.ManifestLoadTask),d=t.registry.get(u.SourceExportNames.SourceState),{LoadControl:b}=t.registry.get(i.CoreExportNames.Constants),E=(0,f.createActivePlaylistAtom)(o,[]),h=(0,g.PlaylistUpdaterOrchestrator)(o,new Map,d.url);let k;c.subscribe(o,d.activeTracks,(0,m.ActiveTrackSubscriber)({activePlaylistsAtom:E})),c.subscribe(o,E,h),(0,y.setUpSegmentTimingMismatchHandling)(o),c.subscribe(o,d.loadControl,(0,a.createTask)("load-control-subscribe",((e,t)=>n(void 0,void 0,void 0,(function*(){e.value>b.Nothing&&(k&&(yield k),d.stream.selectionGroups.length?o.fork(h,E):o.fork(l,d))}))))),d.loadControl.value>b.Nothing&&(k=o.fork(l,d),k.finally((()=>k=void 0)).catch(v))}),[c.NetworkExportNames.NetworkTask,o.BundleExportNames.Logger,i.CoreExportNames.Utils,i.CoreExportNames.CoreEffects,u.SourceExportNames.SourceState,l.HlsParsingExportNames.ParsingFunctions,l.HlsParsingExportNames.ParsingTask,d.HlsTranslationExportNames.HlsVariantTranslator,d.HlsTranslationExportNames.HlsMultivariantTranslator]),t.default=t.HlsPackage},9591:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function s(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function i(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){e.done?r(e.value):s(e.value).then(o,i)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.ManifestLoadTask=void 0;const s=r(1270),a=r(8149),o=r(791),i=r(9059),c=r(4766);t.ManifestLoadTask=(0,s.createTask)(c.HlsPackageExportNames.HlsManifestLoadTask,((e,t)=>n(void 0,void 0,void 0,(function*(){const{isMultivariantPlaylist:r}=t.registry.get(a.HlsParsingExportNames.ParsingFunctions),n=t.registry.get(o.HlsTranslationExportNames.HlsMultivariantTranslator),s=t.registry.get(o.HlsTranslationExportNames.HlsVariantTranslator),c=e.url,u=yield t.fork(i.FetchPlaylistTask,c);return r(u)?t.fork(n,[u,c,e.stream]):t.fork(s,[u,c,c,e.stream,new Map])}))))},1077:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){function s(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function i(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){e.done?r(e.value):s(e.value).then(o,i)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.PlaylistLoadTask=void 0;const s=r(1270),a=r(8668),o=r(538),i=r(4809),c=r(7269),u=r(8149),l=r(791),d=r(9059);function f(e,t){const r=t.registry.get(c.SourceExportNames.SourceState).stream,n=r.tracks.filter((r=>m(t,r,e)));if(!n.length)return!1;const s=r.type===o.StreamType.VoD,a=n.some((e=>e.segments.length));return!(s&&a)}function m(e,t,r){const{Tracks:{isSubtitleTrack:n,isMediaTrack:s}}=e.registry.get(i.CoreExportNames.CoreStateAtoms);return(s(t)||n(t)&&t.fragmented)&&t.uri===r}function p(e){var t,r;return e.targetDuration?e.targetDuration:null!==(r=null===(t=e.segments[e.segments.length-1])||void 0===t?void 0:t.duration)&&void 0!==r?r:2}t.PlaylistLoadTask=(0,s.createTaskClosure)(((e,t)=>["playlist-loader",(r,s)=>n(void 0,void 0,void 0,(function*(){const n=s.registry.get(a.BundleExportNames.Logger);if(!f(r,s))return void n.log("Ignoring playlist load request, already loaded");let o;const m=new Map,g=s.registry.get(c.SourceExportNames.SourceState),{LoadControl:y}=s.registry.get(i.CoreExportNames.Constants);do{n.log("Loading playlist",r);const{isMediaPlaylist:t}=s.registry.get(u.HlsParsingExportNames.ParsingFunctions),a=s.registry.get(c.SourceExportNames.SourceState),i=s.registry.get(l.HlsTranslationExportNames.HlsVariantTranslator),f=yield s.fork(d.FetchPlaylistTask,r);if(!t(f))throw new Error("Manifest is not a variant playlist");o=f,yield s.fork(i,[o,r,e,a.stream,m]),o.endList||(yield s.effects.timeout(s.abortSignal,1e3*p(o)))}while(!o.endList&&!s.abortSignal.aborted&&t.includes(r)&&g.loadControl.value>y.Nothing)}))]))},4088:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlaylistUpdaterOrchestrator=void 0;const n=r(1270),s=r(4809),a=r(7269),o=r(1077);t.PlaylistUpdaterOrchestrator=(0,n.createTaskClosure)(((e,t,r)=>["active-playlist-url-subscriber",(n,i)=>{const c=e.registry.get(a.SourceExportNames.SourceState),{LoadControl:u}=e.registry.get(s.CoreExportNames.Constants);if(c.loadControl.value!==u.Nothing)for(const s of n){if(t.has(s))continue;const a=e.fork((0,o.PlaylistLoadTask)(r,n),s);t.set(s,a),a.finally((()=>t.delete(s))).catch((()=>{}))}}]))},232:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.setUpSegmentTimingMismatchHandling=void 0;const n=r(1270),s=r(8668),a=r(4809),o=r(7269);function i(e,t,r,n){const{state:s}=e.effects,{isDataOrSelfInitSegment:o}=e.registry.get(a.CoreExportNames.CoreStateAtoms).Segments;for(const e of t.segments){if(!o(e))continue;const t=e.segmentTiming;if(t.parsedPlaybackTime<r)continue;const a=t.parsedPlaybackTime-n;s.dispatch(t.manifestParsed,t.parsedDuration,a)}}function c(e,t,r,n,s){const{state:c}=e.effects,u=e.registry.get(o.SourceExportNames.SourceState),{isMediaTrack:l}=e.registry.get(a.CoreExportNames.CoreStateAtoms).Tracks,d=r.segmentTiming,{parsedPlaybackTime:f}=d,m=f-s,p=r.track.segments.findIndex((e=>e===r)),g=r.track.segments[p+1];if(c.dispatch(d.manifestParsed,d.parsedDuration,m),!g)return;const y=g.segmentTiming.parsedPlaybackTime;for(const r of u.stream.tracks)l(r)&&r.uri===t&&!n.includes(r)&&i(e,r,y,s)}const u=(0,n.createTaskClosure)((e=>["playback-time-mismatch-handler",({value:t},r)=>{if(void 0===t)return;const{track:n,expectedTime:o,actualTime:i,segment:u}=t,{isMediaTrack:l}=r.registry.get(a.CoreExportNames.CoreStateAtoms).Tracks;if(!l(n)||void 0===n.uri)return;const d=i-o;r.registry.get(s.BundleExportNames.Logger).log(`Encountered playback time mismatch of ${d.toFixed(2)}s, correcting...`),r.effects.state.dispatch(e.add,n),c(r,n.uri,u,e,d)}])),l=(0,n.createTask)("duration-mismatch-handler",(({value:e},t)=>{if(void 0===e)return;const{state:r}=t.effects,n=t.registry.get(o.SourceExportNames.SourceState),{track:i,segment:c,expectedDuration:u,actualDuration:l}=e;if(l<0)return;const d=u-l,{isMediaTrack:f}=t.registry.get(a.CoreExportNames.CoreStateAtoms).Tracks;if(!f(i))return;const m=i.uri,p=i.sequenceNumber,g=c.segmentTiming.parsedPlaybackTime,y=e=>e.uri===m,T=[];t.registry.get(s.BundleExportNames.Logger).log(`Encountered mismatching segment duration (${u} → ${l}), correcting...`);for(const e of n.stream.tracks)!f(e)||!y(e)||e.sequenceNumber<=p||T.push(e);r.dispatch(c.segmentTiming.manifestParsed,l,c.segmentTiming.parsedPlaybackTime);for(const e of i.segments){const{parsedPlaybackTime:t,parsedDuration:n}=e.segmentTiming;if(t<=g)continue;const s=t-d;r.dispatch(e.segmentTiming.manifestParsed,n,s)}for(const e of T)for(const t of e.segments){const{parsedPlaybackTime:e,parsedDuration:n}=t.segmentTiming,s=e-d;r.dispatch(t.segmentTiming.manifestParsed,n,s)}})),d=(0,n.createTaskClosure)((e=>["track-subscriber",(t,r)=>{const n=[];for(const r of e)t.includes(r)||n.push(r);r.effects.state.dispatch(e.remove,...n)}]));function f(e){const{state:t}=e.effects,{createArrayAtom:r}=e.registry.get(a.CoreExportNames.CoreStateAtoms),n=r(e,[]),s=e.registry.get(o.SourceExportNames.SourceState);t.subscribe(e,s.stream.onPlaybackTimeMismatch,u(n)),t.subscribe(e,s.stream.onDurationMismatch,l),t.subscribe(e,s.stream.tracks,d(n))}t.setUpSegmentTimingMismatchHandling=f},4766:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.HlsPackageExportNames=void 0,function(e){e.HlsManifestLoadTask="hls-manifest-load-task"}(t.HlsPackageExportNames||(t.HlsPackageExportNames={}))},791:(e,t)=>{function r(e){return void 0!==e.attributes.URI}function n(e){return e.attributes.AUDIO}function s(e){return e.attributes.VIDEO}Object.defineProperty(t,"__esModule",{value:!0}),t.HlsTranslationExportNames=t.getReferencedVideoGroupId=t.getReferencedAudioGroupId=t.isMediaTagWithUri=void 0,t.isMediaTagWithUri=r,t.getReferencedAudioGroupId=n,t.getReferencedVideoGroupId=s,function(e){e.HlsMultivariantTranslator="hls-multivariant-translator",e.HlsVariantTranslator="hls-variant-translator"}(t.HlsTranslationExportNames||(t.HlsTranslationExportNames={}))},3408:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkExportNames=t.HttpRequestMethod=t.HttpResponseType=t.HttpRequestType=void 0,function(e){e.MANIFEST_HLS_MULTIVARIANT="manifest/hls/multivariant",e.MANIFEST_HLS_VARIANT="manifest/hls/variant",e.MEDIA_AUDIO="media/audio",e.MEDIA_VIDEO="media/video",e.MEDIA_SUBTITLES="media/subtitles",e.MEDIA_THUMBNAILS="media/thumbnails",e.MEDIA_SEGMENTINDEX="media/segmentindex",e.KEY_HLS_AES="key/hls/aes",e.TIME_SYNC="time/sync"}(t.HttpRequestType||(t.HttpRequestType={})),function(e){e.ARRAYBUFFER="arraybuffer",e.BLOB="blob",e.DOCUMENT="document",e.JSON="json",e.TEXT="text"}(t.HttpResponseType||(t.HttpResponseType={})),function(e){e.GET="GET",e.POST="POST",e.HEAD="HEAD"}(t.HttpRequestMethod||(t.HttpRequestMethod={})),function(e){e.NetworkAtom="network-atom",e.NetworkTask="network-task",e.FetchTask="fetch-task"}(t.NetworkExportNames||(t.NetworkExportNames={}))},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 s=t[n];if(void 0!==s)return s.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}return r(7184)})()));
|
|
@@ -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.4
|
|
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.network=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.network=t())}(self,(()=>(()=>{"use strict";var e={3590: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.isAbortable=t.sequence=t.rightCompose=t.race=t.forEach=t.map=t.abortAndWaitForExit=t.waitForExit=t.rejectAfter=t.resolveAfter=t.linkAbortSignal=t.Abortable=void 0;const o=r(4902);class s extends o.Awaitable{constructor(e,t=new AbortController){const r=[],n=()=>r.forEach((e=>e()));super(((o,s)=>{r.push((()=>t.signal.removeEventListener("abort",i)));const i=()=>{n(),s(t.signal.reason)},a=e=>{t.signal.aborted?s(t.signal.reason):o(e)},c=e=>{t.abort(e),s(e)};t.signal.addEventListener("abort",i);try{const r=e(a,c,t);r instanceof Promise&&r.catch(s)}catch(e){s(e)}})),this.abortController=t,this.finally(n).catch((()=>{}))}abort(e){this.abortController.abort(e)}static resolve(e){return new s((t=>t(e)))}static reject(e){return new s(((t,r)=>r(e)))}}function i(e,t){const r=()=>{t.removeEventListener("abort",r),e.abort(t.reason)};return t.addEventListener("abort",r),e.finally((()=>t.removeEventListener("abort",r))).catch((()=>{})),e}function a(e,t,r){try{const n=t(r);return i(b(n)?n:s.resolve(n),e)}catch(e){return s.reject(e instanceof Error?e:new Error(String(e)))}}function c(e,t){return new s(((r,o,s)=>{i(e,s.signal).then((e=>n(this,void 0,void 0,(function*(){yield t(),s.signal.aborted?o(s.signal.reason):r(e)})))).catch((e=>o(e)))}))}function u(e,t){const r=new s(((r,o)=>{e.then((e=>r(e))).catch((e=>n(this,void 0,void 0,(function*(){yield t(e),o(e)}))))}));return r.abort=t=>{e.abort(t)},r}function d(e){return e.catch((()=>{})).then((()=>{}))}function l(e,t){return t.abort(e),d(t)}function h(e,t){return new s(((r,n,o)=>{const s=[];let i=Promise.resolve();e.forEach((e=>i=i.then((()=>{o.signal.aborted?n(o.signal.reason):s.push(t(e))})))),i=i.then((()=>r(s))).catch(n)}))}function f(e,t){return new s(((r,n,o)=>{i(h(e,t),o.signal).then((()=>r())).catch(n)}))}function p(e){return new s(((t,r,n)=>Promise.race(e.map((e=>i(e,n.signal)))).then((e=>t(e))).catch((e=>r(e)))))}function m(e,t,r){return i(new s(((e,o,s)=>{i(t,s.signal).then((t=>n(this,void 0,void 0,(function*(){s.signal.aborted?o(s.signal.reason):i(r(t),s.signal).then(e).catch(o)})))).catch(o)})),e)}function v(e,...t){if(1===t.length)return r=>a(e,t[0],r);const[r,...n]=t;return t=>m(e,a(e,r,t),v(e,...n))}function b(e){return Boolean(e)&&"object"==typeof e&&null!==e&&"abort"in e&&"function"==typeof e.abort}t.Abortable=s,t.linkAbortSignal=i,t.resolveAfter=c,t.rejectAfter=u,t.waitForExit=d,t.abortAndWaitForExit=l,t.map=h,t.forEach=f,t.race=p,t.rightCompose=m,t.sequence=v,t.isAbortable=b},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 n=t;return n._name=e,{onAdd:n,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},5554:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isTask=t.bindTask=void 0;const n=r(3590);function o(e,t){const r=[r=>t(r,e)];return t=>(0,n.sequence)(e.abortSignal,...r)(t)}function s(e){return null!=e&&"function"==typeof e&&"_name"in e}t.bindTask=o,t.isTask=s},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},4788: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.Thread=t.ThreadState=t.ThreadDisposedError=t.ThreadTerminationError=void 0;const o=r(3590),s=r(9138),i=r(5554),a=r(1270),c=r(7590),u=r(2947),d=r(3264);class l extends s.FrameworkError{constructor(e){super(null==e?void 0:e.message),this.name="ThreadTerminationError",this.threadStack=[]}}t.ThreadTerminationError=l;class h extends s.FrameworkError{constructor(e){super(e),this.name="ThreadDisposedError"}}var f;t.ThreadDisposedError=h,function(e){e.Idle="idle",e.Disposing="disposing",e.Disposed="disposed"}(f||(t.ThreadState=f={}));class p extends d.ThreadEventBus{constructor(e){super(e),this.waitForChildren=()=>{const e=this.getChildAbortables().map(o.waitForExit);return Promise.all(e).then((()=>{if(0!==this.getChildAbortables().length)return this.waitForChildren()}))},this.handleError=e=>n(this,void 0,void 0,(function*(){var t;e instanceof l||(yield this.abortAndWaitForChildren(e),this.abortController.abort(e),null===(t=this.abortable)||void 0===t||t.abort(e),this.dispose())})),this.abortAndWaitForChildren=e=>n(this,void 0,void 0,(function*(){var t;if(this.threadState=f.Disposing,0===this.children.size)return;const r=[];for(const n of this.children){const s=(0,o.abortAndWaitForExit)(e,null!==(t=n.abortable)&&void 0!==t?t:o.Abortable.resolve());s.then((()=>{this.children.delete(n)})),r.push(s)}yield Promise.all(r),yield this.abortAndWaitForChildren(e)})),this.dispose=()=>{this.threadState=f.Disposed,this.children.clear(),this.disposeEventBus()},this.id=(0,u.generateId)(),this.threadState=f.Idle,this.executionDeferred=new c.Deferred,this.children=new Set,this.abortController=new AbortController;const t=()=>this.executionDeferred.reject(this.abortController.signal.reason);this.removeAbortListener=()=>this.abortController.signal.removeEventListener("abort",t),this.abortController.signal.addEventListener("abort",t),this.executionDeferred.finally(this.removeAbortListener).catch((()=>{}))}get onExit(){return this.executionDeferred}get state(){return this.threadState}createChild(e,t=(()=>!1)){if(this.threadState===f.Disposed)throw new h(`Calling fork on already disposed thread for ${e}`);const r=new p(this.eventBus);return this.children.add(r),r.onExit.catch((r=>{let n=!1;try{n=t(r)}catch(t){console.warn(`Uncaught exception in handleError for task ${e}`,t)}return n?Promise.resolve():this.handleError(r)})).finally((()=>this.removeChild(r))),r}getChildAbortables(){return Array.from(this.children).map((e=>{var t;return null!==(t=e.abortable)&&void 0!==t?t:o.Abortable.resolve()}))}abort(e){var t;null===(t=this.abortable)||void 0===t||t.abort(e),this.abortController.abort(e),this.getChildAbortables().forEach((t=>t.abort(e)))}fork(e,t,r){this.eventBus.dispatch(d.ThreadEventType.Bound,{taskName:(0,a.getTaskName)(t),context:e,param:r,task:t});const n=(0,i.bindTask)(e,t),s=()=>this.waitForChildren().finally(this.dispose),c=(0,o.resolveAfter)(n(r),s);return this.abortable=(0,o.rejectAfter)(c,this.abortAndWaitForChildren),this.abortable.catch((e=>{this.abortController.abort(e),this.executionDeferred.reject(e)})).then((()=>this.executionDeferred.resolve())),this.abortable}removeChild(e){this.children.delete(e)}}t.Thread=p},3264:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.ThreadEventBus=t.ThreadEventType=void 0,function(e){e.Bound="bound",e.Started="started",e.Finished="finished",e.Aborted="aborted"}(r||(t.ThreadEventType=r={}));class n{constructor(e){this.eventBus=e,this.unsubscribes=[]}attach(e,t){const r=this.eventBus.on(e,t);return this.unsubscribes.push(r),()=>{this.unsubscribes=this.unsubscribes.filter((e=>e!==r)),r()}}disposeEventBus(){for(const e of this.unsubscribes)e();this.unsubscribes=[]}}t.ThreadEventBus=n},4902:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Awaitable=void 0;class r{constructor(e){const t=new Promise(((t,r)=>{this._reject=r,this._resolve=t,null==e||e(t,r)}));this.boundThen=t.then.bind(t),this.boundCatch=t.catch.bind(t),this.boundFinally=t.finally.bind(t)}get then(){return this.boundThen}get catch(){return this.boundCatch}get finally(){return this.boundFinally}get[Symbol.toStringTag](){return this.constructor.name}}t.Awaitable=r},7590:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Deferred=void 0;const n=r(4902);class o extends n.Awaitable{constructor(){super(),this.then((e=>{var t;return null===(t=this.lastFulfilledCallback)||void 0===t?void 0:t.call(this,e)})).catch((()=>{}))}last(e){this.lastFulfilledCallback=e}get resolve(){return this._resolve}get reject(){return this._reject}}t.Deferred=o},2947:(e,t)=>{function r(){const e=16,t=Math.pow(1048576,3),r=1;return Date.now().toString(e)+Math.floor((r+Math.random())*t).toString(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.generateId=void 0,t.generateId=r},7732:(e,t)=>{var r=o;function n(){var e=["mte0mJy2nKPWqMPRsW","x19LC01VzhvSzq","mJGYmJi1CKTQrLbK","ndbWDhfvEgy","mJHJDuj5v24","nZq5nZm4ug9ovfHR","Bwv0CMLJCW","nZC3mJCWEKjmBMX3","twv0CMLJCW","ntq5mtiYqMLTshHq","u2HVDwXKq2fUy2vS","zgvMAw5LuhjVCgvYDhK","C2HVDwXKlwnHBMnLBa","u2vSzwn0","mtfwBfj6C2y","mtbTt1bvtMS","qwrHChrHDgLVBLrHC2S","otuYmdu0ognsuxbXuq","ywrHChrHDgLVBI10yxnR","mte4mtK3BMfTAgnk","ndKWA2PtreDP","qwrHChrHDgLVBKv4Cg9YDe5HBwvZ","C2vSzwn0"];return(n=function(){return e})()}function o(e,t){var r=n();return o=function(t,n){var s=r[t-=139];if(void 0===o.pzMVOL){var i=function(e){for(var t,r,n="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",o="",s="",i=0,a=0;r=e.charAt(a++);~r&&(t=i%4?64*t+r:r,i++%4)?o+=String.fromCharCode(255&t>>(-2*i&6)):0)r=n.indexOf(r);for(var c=0,u=o.length;c<u;c++)s+="%"+("00"+o.charCodeAt(c).toString(16)).slice(-2);return decodeURIComponent(s)};o.btqnWA=i,e=arguments,o.pzMVOL=!0}var a=t+r[0],c=e[a];return c?s=c:(s=o.btqnWA(s),e[a]=s),s},o(e,t)}!function(e,t){for(var r=o,n=e();;)try{if(-parseInt(r(151))/1+parseInt(r(155))/2+-parseInt(r(148))/3*(-parseInt(r(150))/4)+-parseInt(r(161))/5*(parseInt(r(153))/6)+-parseInt(r(146))/7*(parseInt(r(149))/8)+-parseInt(r(142))/9*(-parseInt(r(143))/10)+parseInt(r(160))/11*(parseInt(r(140))/12)===t)break;n.push(n.shift())}catch(e){n.push(n.shift())}}(n,544964),Object[r(157)](t,r(147),{value:!0}),t[r(144)]=void 0,function(e){var t=o;e[t(156)]=t(158),e[t(159)]=t(145),e[t(154)]=t(152),e[t(139)]=t(141)}(t[r(144)]||(t[r(144)]={}))},8246:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FrameworkError=void 0;class r extends Error{constructor(e){super(e),this.name="FrameworkError"}}t.FrameworkError=r},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={}))},1979:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createNetworkAtom=void 0;const n=r(7391);function o(e,t){return e.lastMessage={type:n.NetworkMessageType.RequestOpened,openedTimestamp:t},!0}function s(e,t,r){return e.lastMessage={type:n.NetworkMessageType.HeadersReceived,headersReceivedTimestamp:t,contentLength:r},!0}function i(e,t,r,o,s){return e.lastMessage={type:n.NetworkMessageType.Progress,progressTimestamp:t,chunk:r,loadedBytes:o,elapsedTime:s},!0}function a(e,t){return e.lastMessage={type:n.NetworkMessageType.Error,error:t},!0}function c(e,t){return e.lastMessage={type:n.NetworkMessageType.Done,doneTimestamp:t},!0}function u(e){const t={lastMessage:{type:n.NetworkMessageType.Initial}};return e.effects.state.create(t,{requestOpened:o,headersReceived:s,progress:i,error:a,done:c})}t.createNetworkAtom=u},591:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnsupportedResponseTypeError=t.FetchFailedError=t.RequestFailedError=t.RequestTimeoutError=void 0;const n=r(8246);class o extends n.FrameworkError{constructor(e){super(`Request timed out after ${e} seconds`),this.name="RequestTimeoutError"}}t.RequestTimeoutError=o;class s extends n.FrameworkError{constructor(e){super(`Request failed: ${e}`),this.name="RequestFailedError"}}t.RequestFailedError=s;class i extends n.FrameworkError{constructor(e,t){super(`Fetch failed ${e}: ${t}`),this.status=e,this.statusText=t,this.name="FetchFailedError"}}t.FetchFailedError=i;class a extends n.FrameworkError{constructor(e){super(`The given response type (${e}) is not supported`),this.name="UnsupportedResponseTypeError"}}t.UnsupportedResponseTypeError=a},7319: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.extractContentLength=t.createChunkReader=t.createHttpResponse=t.typedArrayToHttpResponse=t.mergeChunks=void 0;const o=r(591),s=r(3408);function i(e,t,r,n){const o=()=>e.removeEventListener(t,s),s=n=>{e.removeEventListener(t,s),r(n)};return e.addEventListener(t,s,n),o}function a(e){const t=new Uint8Array(e.reduce(((e,t)=>e+t.byteLength),0));let r=0;return e.forEach((e=>{t.set(e,r),r+=e.byteLength})),t}function c(e){return(new TextDecoder).decode(e)}function u(e){const t={};return e.headers.forEach(((e,r)=>t[r]=e)),t}function d(e,t){switch(e){case s.HttpResponseType.ARRAYBUFFER:return t.buffer;case s.HttpResponseType.BLOB:return new Blob([t.buffer]);case s.HttpResponseType.JSON:return JSON.parse(c(t));case s.HttpResponseType.TEXT:return c(t);case s.HttpResponseType.DOCUMENT:default:throw new o.UnsupportedResponseTypeError(e)}}function l(e,t,r,n){return{config:e.config,url:e.config.url,headers:u(t),status:t.status,statusText:t.statusText,body:r,length:n,timingInformation:e.timingInformation}}function h({abortSignal:e,effects:{state:t}},r){const s=r.response.body;if(!s)throw new o.RequestFailedError("Response body is not a ReadableStream");const a=s.getReader(),c=i(e,"abort",(()=>{c(),a.cancel(e.reason).catch((()=>{}))}));let u=0;return()=>n(this,void 0,void 0,(function*(){try{const e=yield a.read(),n=e.done;if(void 0!==e.value){const n=Date.now(),o=n-r.timingInformation.openedTimestamp;u+=e.value.byteLength,r.timingInformation.progressTimestamp=n,r.networkAtom&&t.dispatch(r.networkAtom.progress,n,e.value,u,o)}return n&&c(),e}catch(e){throw c(),e}}))}function f(e){const t=e.headers.get("Content-Length");return t?Number(t):-1}t.mergeChunks=a,t.typedArrayToHttpResponse=d,t.createHttpResponse=l,t.createChunkReader=h,t.extractContentLength=f},7322: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.FetchTask=void 0;const o=r(1270),s=r(591),i=r(7319);function a({networkAtom:e,config:t},r){return n(this,void 0,void 0,(function*(){const{response:n,timingInformation:o}=yield c({networkAtom:e,config:t},r),s=yield u({response:n,timingInformation:o,networkAtom:e,config:t},r);return d({response:n,timingInformation:o,networkAtom:e,config:t,chunks:s},r)}))}function c(e,t){return n(this,void 0,void 0,(function*(){const{effects:{state:r,timeout:n},abortSignal:o}=t,{body:a,url:c,headers:u,method:d,credentials:l,requestTimeout:h}=e.config,f={body:a,credentials:l,method:d,headers:u},p={sendTimestamp:-1,openedTimestamp:-1,headersReceivedTimestamp:-1,progressTimestamp:-1,doneTimestamp:-1},m=n(o,1e3*h),v=m.then((()=>{throw new s.RequestTimeoutError(h)})),b=Date.now();p.openedTimestamp=b,p.sendTimestamp=b,e.networkAtom&&r.dispatch(e.networkAtom.requestOpened,b);const g=yield Promise.race([fetch(c,Object.assign(Object.assign({},f),{signal:o})),v]),y=Date.now();if(m.catch((()=>{})),m.abort(new Error("Timeout has timed out")),p.headersReceivedTimestamp=y,e.networkAtom&&r.dispatch(e.networkAtom.headersReceived,y,(0,i.extractContentLength)(g)),!g.ok)throw new s.FetchFailedError(g.status,g.statusText);return{response:g,timingInformation:p}}))}function u(e,t){return n(this,void 0,void 0,(function*(){const r=[],n=(0,i.createChunkReader)(t,e);let o;do{o=yield n(),o.done||r.push(o.value)}while(!o.done);return r}))}function d(e,{effects:{state:t}}){const r=(0,i.mergeChunks)(e.chunks),n=(0,i.typedArrayToHttpResponse)(e.config.responseType,r),o=Date.now();return e.timingInformation.doneTimestamp=o,e.networkAtom&&t.dispatch(e.networkAtom.done,o),(0,i.createHttpResponse)(e,e.response,n,r.byteLength)}t.FetchTask=(0,o.createTask)("fetch-task",a)},8808:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkPackage=void 0;const n=r(7085),o=r(7732),s=r(1979),i=r(4809),a=r(7322),c=r(4099),u=r(3408);t.NetworkPackage=(0,n.createPackage)("network-package",((e,t)=>{t.registry.set(u.NetworkExportNames.NetworkAtom,s.createNetworkAtom),t.registry.set(u.NetworkExportNames.FetchTask,a.FetchTask),t.registry.set(u.NetworkExportNames.NetworkTask,c.NetworkTask)}),[i.CoreExportNames.CoreEffects,i.CoreExportNames.Utils,o.AdaptationExportNames.Metrics]),t.default=t.NetworkPackage},7391:(e,t)=>{var r;function n(e){return e.type===r.RequestOpened}function o(e){return e.type===r.HeadersReceived}function s(e){return e.type===r.Progress}function i(e){return e.type===r.Error}function a(e){return e.type===r.Done}Object.defineProperty(t,"__esModule",{value:!0}),t.isDoneMessage=t.isErrorMessage=t.isProgressMessage=t.isHeadersReceivedMessage=t.isRequestOpenedMessage=t.NetworkMessageType=void 0,function(e){e.Initial="initial",e.RequestOpened="request-opened",e.HeadersReceived="headers-received",e.Progress="progress",e.Error="error",e.Done="done"}(r=t.NetworkMessageType||(t.NetworkMessageType={})),t.isRequestOpenedMessage=n,t.isHeadersReceivedMessage=o,t.isProgressMessage=s,t.isErrorMessage=i,t.isDoneMessage=a},4099: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.NetworkTask=void 0;const o=r(1270),s=r(4788),i=r(4809),a=r(591),c=r(3408);function u(e,t){return Object.keys(t).reduce(((r,n)=>{var o;return r[n]=null!==(o=e[n])&&void 0!==o?o:t[n],r}),{})}function d(e,t,r){const n=void 0!==r&&e.disableRetriesForResponseStatus.includes(r),o=t>=e.numRetries;return!n&&!o}function l(e){return{body:void 0,url:"",method:c.HttpRequestMethod.GET,numRetries:3,headers:{},responseType:e,credentials:"omit",retryDelay:1,requestTimeout:100,disableRetriesForResponseStatus:[]}}function h({effects:{state:e}},t,r){t&&e.dispatch(t.error,r)}t.NetworkTask=(0,o.createTask)(c.NetworkExportNames.NetworkTask,(function([e,t],r){return n(this,void 0,void 0,(function*(){const n={config:u(e,l(e.responseType)),networkAtom:t},{timeout:o}=r.effects,{fork:f,registry:p,abortSignal:m}=r,v=p.get(c.NetworkExportNames.FetchTask),{formatError:b}=p.get(i.CoreExportNames.Utils).Error;if(void 0===v)throw new Error("FetchTask is missing");let g=0;for(;;)try{return yield f(v,n,(()=>!0))}catch(e){const t=b(e),i=t instanceof a.FetchFailedError?t.status:void 0;if(h(r,n.networkAtom,t),e instanceof s.ThreadTerminationError)throw e;if(!d(n.config,++g,i))throw new a.RequestFailedError(`Network request failed: ${t.message}`);yield o(m,1e3*n.config.retryDelay)}}))}))},3408:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkExportNames=t.HttpRequestMethod=t.HttpResponseType=t.HttpRequestType=void 0,function(e){e.MANIFEST_HLS_MULTIVARIANT="manifest/hls/multivariant",e.MANIFEST_HLS_VARIANT="manifest/hls/variant",e.MEDIA_AUDIO="media/audio",e.MEDIA_VIDEO="media/video",e.MEDIA_SUBTITLES="media/subtitles",e.MEDIA_THUMBNAILS="media/thumbnails",e.MEDIA_SEGMENTINDEX="media/segmentindex",e.KEY_HLS_AES="key/hls/aes",e.TIME_SYNC="time/sync"}(t.HttpRequestType||(t.HttpRequestType={})),function(e){e.ARRAYBUFFER="arraybuffer",e.BLOB="blob",e.DOCUMENT="document",e.JSON="json",e.TEXT="text"}(t.HttpResponseType||(t.HttpResponseType={})),function(e){e.GET="GET",e.POST="POST",e.HEAD="HEAD"}(t.HttpRequestMethod||(t.HttpRequestMethod={})),function(e){e.NetworkAtom="network-atom",e.NetworkTask="network-task",e.FetchTask="fetch-task"}(t.NetworkExportNames||(t.NetworkExportNames={}))}},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(8808)})()));
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.network=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.network=t())}(self,(()=>(()=>{"use strict";var e={3590: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.isAbortable=t.sequence=t.rightCompose=t.race=t.forEach=t.map=t.abortAndWaitForExit=t.waitForExit=t.rejectAfter=t.resolveAfter=t.linkAbortSignal=t.Abortable=void 0;const o=r(4902);class s extends o.Awaitable{constructor(e,t=new AbortController){const r=[],n=()=>r.forEach((e=>e()));super(((o,s)=>{r.push((()=>t.signal.removeEventListener("abort",i)));const i=()=>{n(),s(t.signal.reason)},a=e=>{t.signal.aborted?s(t.signal.reason):o(e)},c=e=>{t.abort(e),s(e)};t.signal.addEventListener("abort",i);try{const r=e(a,c,t);r instanceof Promise&&r.catch(s)}catch(e){s(e)}})),this.abortController=t,this.finally(n).catch((()=>{}))}abort(e){this.abortController.abort(e)}static resolve(e){return new s((t=>t(e)))}static reject(e){return new s(((t,r)=>r(e)))}}function i(e,t){const r=()=>{t.removeEventListener("abort",r),e.abort(t.reason)};return t.addEventListener("abort",r),e.finally((()=>t.removeEventListener("abort",r))).catch((()=>{})),e}function a(e,t,r){try{const n=t(r);return i(b(n)?n:s.resolve(n),e)}catch(e){return s.reject(e instanceof Error?e:new Error(String(e)))}}function c(e,t){return new s(((r,o,s)=>{i(e,s.signal).then((e=>n(this,void 0,void 0,(function*(){yield t(),s.signal.aborted?o(s.signal.reason):r(e)})))).catch((e=>o(e)))}))}function u(e,t){const r=new s(((r,o)=>{e.then((e=>r(e))).catch((e=>n(this,void 0,void 0,(function*(){yield t(e),o(e)}))))}));return r.abort=t=>{e.abort(t)},r}function d(e){return e.catch((()=>{})).then((()=>{}))}function l(e,t){return t.abort(e),d(t)}function h(e,t){return new s(((r,n,o)=>{const s=[];let i=Promise.resolve();e.forEach((e=>i=i.then((()=>{o.signal.aborted?n(o.signal.reason):s.push(t(e))})))),i=i.then((()=>r(s))).catch(n)}))}function f(e,t){return new s(((r,n,o)=>{i(h(e,t),o.signal).then((()=>r())).catch(n)}))}function p(e){return new s(((t,r,n)=>Promise.race(e.map((e=>i(e,n.signal)))).then((e=>t(e))).catch((e=>r(e)))))}function m(e,t,r){return i(new s(((e,o,s)=>{i(t,s.signal).then((t=>n(this,void 0,void 0,(function*(){s.signal.aborted?o(s.signal.reason):i(r(t),s.signal).then(e).catch(o)})))).catch(o)})),e)}function v(e,...t){if(1===t.length)return r=>a(e,t[0],r);const[r,...n]=t;return t=>m(e,a(e,r,t),v(e,...n))}function b(e){return Boolean(e)&&"object"==typeof e&&null!==e&&"abort"in e&&"function"==typeof e.abort}t.Abortable=s,t.linkAbortSignal=i,t.resolveAfter=c,t.rejectAfter=u,t.waitForExit=d,t.abortAndWaitForExit=l,t.map=h,t.forEach=f,t.race=p,t.rightCompose=m,t.sequence=v,t.isAbortable=b},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 n=t;return n._name=e,{onAdd:n,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},5554:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isTask=t.bindTask=void 0;const n=r(3590);function o(e,t){const r=[r=>t(r,e)];return t=>(0,n.sequence)(e.abortSignal,...r)(t)}function s(e){return null!=e&&"function"==typeof e&&"_name"in e}t.bindTask=o,t.isTask=s},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},4788: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.Thread=t.ThreadState=t.ThreadDisposedError=t.ThreadTerminationError=void 0;const o=r(3590),s=r(9138),i=r(5554),a=r(1270),c=r(7590),u=r(2947),d=r(3264);class l extends s.FrameworkError{constructor(e){super(null==e?void 0:e.message),this.name="ThreadTerminationError",this.threadStack=[]}}t.ThreadTerminationError=l;class h extends s.FrameworkError{constructor(e){super(e),this.name="ThreadDisposedError"}}var f;t.ThreadDisposedError=h,function(e){e.Idle="idle",e.Disposing="disposing",e.Disposed="disposed"}(f||(t.ThreadState=f={}));class p extends d.ThreadEventBus{constructor(e){super(e),this.waitForChildren=()=>{const e=this.getChildAbortables().map(o.waitForExit);return Promise.all(e).then((()=>{if(0!==this.getChildAbortables().length)return this.waitForChildren()}))},this.handleError=e=>n(this,void 0,void 0,(function*(){var t;e instanceof l||(yield this.abortAndWaitForChildren(e),this.abortController.abort(e),null===(t=this.abortable)||void 0===t||t.abort(e),this.dispose())})),this.abortAndWaitForChildren=e=>n(this,void 0,void 0,(function*(){var t;if(this.threadState=f.Disposing,0===this.children.size)return;const r=[];for(const n of this.children){const s=(0,o.abortAndWaitForExit)(e,null!==(t=n.abortable)&&void 0!==t?t:o.Abortable.resolve());s.then((()=>{this.children.delete(n)})),r.push(s)}yield Promise.all(r),yield this.abortAndWaitForChildren(e)})),this.dispose=()=>{this.threadState=f.Disposed,this.children.clear(),this.disposeEventBus()},this.id=(0,u.generateId)(),this.threadState=f.Idle,this.executionDeferred=new c.Deferred,this.children=new Set,this.abortController=new AbortController;const t=()=>this.executionDeferred.reject(this.abortController.signal.reason);this.removeAbortListener=()=>this.abortController.signal.removeEventListener("abort",t),this.abortController.signal.addEventListener("abort",t),this.executionDeferred.finally(this.removeAbortListener).catch((()=>{}))}get onExit(){return this.executionDeferred}get state(){return this.threadState}createChild(e,t=(()=>!1)){if(this.threadState===f.Disposed)throw new h(`Calling fork on already disposed thread for ${e}`);const r=new p(this.eventBus);return this.children.add(r),r.onExit.catch((r=>{let n=!1;try{n=t(r)}catch(t){console.warn(`Uncaught exception in handleError for task ${e}`,t)}return n?Promise.resolve():this.handleError(r)})).finally((()=>this.removeChild(r))),r}getChildAbortables(){return Array.from(this.children).map((e=>{var t;return null!==(t=e.abortable)&&void 0!==t?t:o.Abortable.resolve()}))}abort(e){var t;null===(t=this.abortable)||void 0===t||t.abort(e),this.abortController.abort(e),this.getChildAbortables().forEach((t=>t.abort(e)))}fork(e,t,r){this.eventBus.dispatch(d.ThreadEventType.Bound,{taskName:(0,a.getTaskName)(t),context:e,param:r,task:t});const n=(0,i.bindTask)(e,t),s=()=>this.waitForChildren().finally(this.dispose),c=(0,o.resolveAfter)(n(r),s);return this.abortable=(0,o.rejectAfter)(c,this.abortAndWaitForChildren),this.abortable.catch((e=>{this.abortController.abort(e),this.executionDeferred.reject(e)})).then((()=>this.executionDeferred.resolve())),this.abortable}removeChild(e){this.children.delete(e)}}t.Thread=p},3264:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.ThreadEventBus=t.ThreadEventType=void 0,function(e){e.Bound="bound",e.Started="started",e.Finished="finished",e.Aborted="aborted"}(r||(t.ThreadEventType=r={}));class n{constructor(e){this.eventBus=e,this.unsubscribes=[]}attach(e,t){const r=this.eventBus.on(e,t);return this.unsubscribes.push(r),()=>{this.unsubscribes=this.unsubscribes.filter((e=>e!==r)),r()}}disposeEventBus(){for(const e of this.unsubscribes)e();this.unsubscribes=[]}}t.ThreadEventBus=n},4902:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Awaitable=void 0;class r{constructor(e){const t=new Promise(((t,r)=>{this._reject=r,this._resolve=t,null==e||e(t,r)}));this.boundThen=t.then.bind(t),this.boundCatch=t.catch.bind(t),this.boundFinally=t.finally.bind(t)}get then(){return this.boundThen}get catch(){return this.boundCatch}get finally(){return this.boundFinally}get[Symbol.toStringTag](){return this.constructor.name}}t.Awaitable=r},7590:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Deferred=void 0;const n=r(4902);class o extends n.Awaitable{constructor(){super(),this.then((e=>{var t;return null===(t=this.lastFulfilledCallback)||void 0===t?void 0:t.call(this,e)})).catch((()=>{}))}last(e){this.lastFulfilledCallback=e}get resolve(){return this._resolve}get reject(){return this._reject}}t.Deferred=o},2947:(e,t)=>{function r(){const e=16,t=Math.pow(1048576,3),r=1;return Date.now().toString(e)+Math.floor((r+Math.random())*t).toString(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.generateId=void 0,t.generateId=r},7732:(e,t)=>{var r=o;function n(){var e=["mteXmZC0nhz2yuL5ua","twv0CMLJCW","ndu4mte2EvrMCLvo","qwrHChrHDgLVBKv4Cg9YDe5HBwvZ","odmZotrVBuzPyMe","x19LC01VzhvSzq","u2vSzwn0","mZq3mKnAD1LPsq","otCZs1nPzvr0","zgvMAw5LuhjVCgvYDhK","mJuWBfPxy2j3","mZi2nZLss2rJv1u","ngTmuxnoBW","ywrHChrHDgLVBI10yxnR","C2vSzwn0","otm0mtDsAg1YrLa","Bwv0CMLJCW","qwrHChrHDgLVBLrHC2S","ndK2ndqZmMDzwxDnBa","u2HVDwXKq2fUy2vS","C2HVDwXKlwnHBMnLBa","nvLfvhjvEG"];return(n=function(){return e})()}function o(e,t){var r=n();return o=function(t,n){var s=r[t-=292];if(void 0===o.XfIUJm){var i=function(e){for(var t,r,n="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",o="",s="",i=0,a=0;r=e.charAt(a++);~r&&(t=i%4?64*t+r:r,i++%4)?o+=String.fromCharCode(255&t>>(-2*i&6)):0)r=n.indexOf(r);for(var c=0,u=o.length;c<u;c++)s+="%"+("00"+o.charCodeAt(c).toString(16)).slice(-2);return decodeURIComponent(s)};o.SATzOW=i,e=arguments,o.XfIUJm=!0}var a=t+r[0],c=e[a];return c?s=c:(s=o.SATzOW(s),e[a]=s),s},o(e,t)}!function(e,t){for(var r=o,n=e();;)try{if(-parseInt(r(295))/1+parseInt(r(304))/2+parseInt(r(313))/3*(parseInt(r(292))/4)+parseInt(r(301))/5*(-parseInt(r(302))/6)+-parseInt(r(310))/7*(parseInt(r(309))/8)+parseInt(r(306))/9*(-parseInt(r(312))/10)+parseInt(r(298))/11===t)break;n.push(n.shift())}catch(e){n.push(n.shift())}}(n,120246),Object[r(311)](t,r(307),{value:!0}),t[r(305)]=void 0,function(e){var t=o;e[t(299)]=t(300),e[t(308)]=t(294),e[t(303)]=t(296),e[t(297)]=t(293)}(t[r(305)]||(t[r(305)]={}))},8246:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FrameworkError=void 0;class r extends Error{constructor(e){super(e),this.name="FrameworkError"}}t.FrameworkError=r},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={}))},1979:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createNetworkAtom=void 0;const n=r(7391);function o(e,t){return e.lastMessage={type:n.NetworkMessageType.RequestOpened,openedTimestamp:t},!0}function s(e,t,r){return e.lastMessage={type:n.NetworkMessageType.HeadersReceived,headersReceivedTimestamp:t,contentLength:r},!0}function i(e,t,r,o,s){return e.lastMessage={type:n.NetworkMessageType.Progress,progressTimestamp:t,chunk:r,loadedBytes:o,elapsedTime:s},!0}function a(e,t){return e.lastMessage={type:n.NetworkMessageType.Error,error:t},!0}function c(e,t){return e.lastMessage={type:n.NetworkMessageType.Done,doneTimestamp:t},!0}function u(e){const t={lastMessage:{type:n.NetworkMessageType.Initial}};return e.effects.state.create(t,{requestOpened:o,headersReceived:s,progress:i,error:a,done:c})}t.createNetworkAtom=u},591:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnsupportedResponseTypeError=t.FetchFailedError=t.RequestFailedError=t.RequestTimeoutError=void 0;const n=r(8246);class o extends n.FrameworkError{constructor(e){super(`Request timed out after ${e} seconds`),this.name="RequestTimeoutError"}}t.RequestTimeoutError=o;class s extends n.FrameworkError{constructor(e){super(`Request failed: ${e}`),this.name="RequestFailedError"}}t.RequestFailedError=s;class i extends n.FrameworkError{constructor(e,t){super(`Fetch failed ${e}: ${t}`),this.status=e,this.statusText=t,this.name="FetchFailedError"}}t.FetchFailedError=i;class a extends n.FrameworkError{constructor(e){super(`The given response type (${e}) is not supported`),this.name="UnsupportedResponseTypeError"}}t.UnsupportedResponseTypeError=a},7319: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.extractContentLength=t.createChunkReader=t.createHttpResponse=t.typedArrayToHttpResponse=t.mergeChunks=void 0;const o=r(591),s=r(3408);function i(e,t,r,n){const o=()=>e.removeEventListener(t,s),s=n=>{e.removeEventListener(t,s),r(n)};return e.addEventListener(t,s,n),o}function a(e){const t=new Uint8Array(e.reduce(((e,t)=>e+t.byteLength),0));let r=0;return e.forEach((e=>{t.set(e,r),r+=e.byteLength})),t}function c(e){return(new TextDecoder).decode(e)}function u(e){const t={};return e.headers.forEach(((e,r)=>t[r]=e)),t}function d(e,t){switch(e){case s.HttpResponseType.ARRAYBUFFER:return t.buffer;case s.HttpResponseType.BLOB:return new Blob([t.buffer]);case s.HttpResponseType.JSON:return JSON.parse(c(t));case s.HttpResponseType.TEXT:return c(t);case s.HttpResponseType.DOCUMENT:default:throw new o.UnsupportedResponseTypeError(e)}}function l(e,t,r,n){return{config:e.config,url:e.config.url,headers:u(t),status:t.status,statusText:t.statusText,body:r,length:n,timingInformation:e.timingInformation}}function h({abortSignal:e,effects:{state:t}},r){const s=r.response.body;if(!s)throw new o.RequestFailedError("Response body is not a ReadableStream");const a=s.getReader(),c=i(e,"abort",(()=>{c(),a.cancel(e.reason).catch((()=>{}))}));let u=0;return()=>n(this,void 0,void 0,(function*(){try{const e=yield a.read(),n=e.done;if(void 0!==e.value){const n=Date.now(),o=n-r.timingInformation.openedTimestamp;u+=e.value.byteLength,r.timingInformation.progressTimestamp=n,r.networkAtom&&t.dispatch(r.networkAtom.progress,n,e.value,u,o)}return n&&c(),e}catch(e){throw c(),e}}))}function f(e){const t=e.headers.get("Content-Length");return t?Number(t):-1}t.mergeChunks=a,t.typedArrayToHttpResponse=d,t.createHttpResponse=l,t.createChunkReader=h,t.extractContentLength=f},7322: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.FetchTask=void 0;const o=r(1270),s=r(591),i=r(7319);function a({networkAtom:e,config:t},r){return n(this,void 0,void 0,(function*(){const{response:n,timingInformation:o}=yield c({networkAtom:e,config:t},r),s=yield u({response:n,timingInformation:o,networkAtom:e,config:t},r);return d({response:n,timingInformation:o,networkAtom:e,config:t,chunks:s},r)}))}function c(e,t){return n(this,void 0,void 0,(function*(){const{effects:{state:r,timeout:n},abortSignal:o}=t,{body:a,url:c,headers:u,method:d,credentials:l,requestTimeout:h}=e.config,f={body:a,credentials:l,method:d,headers:u},p={sendTimestamp:-1,openedTimestamp:-1,headersReceivedTimestamp:-1,progressTimestamp:-1,doneTimestamp:-1},m=n(o,1e3*h),v=m.then((()=>{throw new s.RequestTimeoutError(h)})),b=Date.now();p.openedTimestamp=b,p.sendTimestamp=b,e.networkAtom&&r.dispatch(e.networkAtom.requestOpened,b);const g=yield Promise.race([fetch(c,Object.assign(Object.assign({},f),{signal:o})),v]),y=Date.now();if(m.catch((()=>{})),m.abort(new Error("Timeout has timed out")),p.headersReceivedTimestamp=y,e.networkAtom&&r.dispatch(e.networkAtom.headersReceived,y,(0,i.extractContentLength)(g)),!g.ok)throw new s.FetchFailedError(g.status,g.statusText);return{response:g,timingInformation:p}}))}function u(e,t){return n(this,void 0,void 0,(function*(){const r=[],n=(0,i.createChunkReader)(t,e);let o;do{o=yield n(),o.done||r.push(o.value)}while(!o.done);return r}))}function d(e,{effects:{state:t}}){const r=(0,i.mergeChunks)(e.chunks),n=(0,i.typedArrayToHttpResponse)(e.config.responseType,r),o=Date.now();return e.timingInformation.doneTimestamp=o,e.networkAtom&&t.dispatch(e.networkAtom.done,o),(0,i.createHttpResponse)(e,e.response,n,r.byteLength)}t.FetchTask=(0,o.createTask)("fetch-task",a)},8808:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkPackage=void 0;const n=r(7085),o=r(7732),s=r(1979),i=r(4809),a=r(7322),c=r(4099),u=r(3408);t.NetworkPackage=(0,n.createPackage)("network-package",((e,t)=>{t.registry.set(u.NetworkExportNames.NetworkAtom,s.createNetworkAtom),t.registry.set(u.NetworkExportNames.FetchTask,a.FetchTask),t.registry.set(u.NetworkExportNames.NetworkTask,c.NetworkTask)}),[i.CoreExportNames.CoreEffects,i.CoreExportNames.Utils,o.AdaptationExportNames.Metrics]),t.default=t.NetworkPackage},7391:(e,t)=>{var r;function n(e){return e.type===r.RequestOpened}function o(e){return e.type===r.HeadersReceived}function s(e){return e.type===r.Progress}function i(e){return e.type===r.Error}function a(e){return e.type===r.Done}Object.defineProperty(t,"__esModule",{value:!0}),t.isDoneMessage=t.isErrorMessage=t.isProgressMessage=t.isHeadersReceivedMessage=t.isRequestOpenedMessage=t.NetworkMessageType=void 0,function(e){e.Initial="initial",e.RequestOpened="request-opened",e.HeadersReceived="headers-received",e.Progress="progress",e.Error="error",e.Done="done"}(r=t.NetworkMessageType||(t.NetworkMessageType={})),t.isRequestOpenedMessage=n,t.isHeadersReceivedMessage=o,t.isProgressMessage=s,t.isErrorMessage=i,t.isDoneMessage=a},4099: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.NetworkTask=void 0;const o=r(1270),s=r(4788),i=r(4809),a=r(591),c=r(3408);function u(e,t){return Object.keys(t).reduce(((r,n)=>{var o;return r[n]=null!==(o=e[n])&&void 0!==o?o:t[n],r}),{})}function d(e,t,r){const n=void 0!==r&&e.disableRetriesForResponseStatus.includes(r),o=t>=e.numRetries;return!n&&!o}function l(e){return{body:void 0,url:"",method:c.HttpRequestMethod.GET,numRetries:3,headers:{},responseType:e,credentials:"omit",retryDelay:1,requestTimeout:100,disableRetriesForResponseStatus:[]}}function h({effects:{state:e}},t,r){t&&e.dispatch(t.error,r)}t.NetworkTask=(0,o.createTask)(c.NetworkExportNames.NetworkTask,(function([e,t],r){return n(this,void 0,void 0,(function*(){const n={config:u(e,l(e.responseType)),networkAtom:t},{timeout:o}=r.effects,{fork:f,registry:p,abortSignal:m}=r,v=p.get(c.NetworkExportNames.FetchTask),{formatError:b}=p.get(i.CoreExportNames.Utils).Error;if(void 0===v)throw new Error("FetchTask is missing");let g=0;for(;;)try{return yield f(v,n,(()=>!0))}catch(e){const t=b(e),i=t instanceof a.FetchFailedError?t.status:void 0;if(h(r,n.networkAtom,t),e instanceof s.ThreadTerminationError)throw e;if(!d(n.config,++g,i))throw new a.RequestFailedError(`Network request failed: ${t.message}`);yield o(m,1e3*n.config.retryDelay)}}))}))},3408:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkExportNames=t.HttpRequestMethod=t.HttpResponseType=t.HttpRequestType=void 0,function(e){e.MANIFEST_HLS_MULTIVARIANT="manifest/hls/multivariant",e.MANIFEST_HLS_VARIANT="manifest/hls/variant",e.MEDIA_AUDIO="media/audio",e.MEDIA_VIDEO="media/video",e.MEDIA_SUBTITLES="media/subtitles",e.MEDIA_THUMBNAILS="media/thumbnails",e.MEDIA_SEGMENTINDEX="media/segmentindex",e.KEY_HLS_AES="key/hls/aes",e.TIME_SYNC="time/sync"}(t.HttpRequestType||(t.HttpRequestType={})),function(e){e.ARRAYBUFFER="arraybuffer",e.BLOB="blob",e.DOCUMENT="document",e.JSON="json",e.TEXT="text"}(t.HttpResponseType||(t.HttpResponseType={})),function(e){e.GET="GET",e.POST="POST",e.HEAD="HEAD"}(t.HttpRequestMethod||(t.HttpRequestMethod={})),function(e){e.NetworkAtom="network-atom",e.NetworkTask="network-task",e.FetchTask="fetch-task"}(t.NetworkExportNames||(t.NetworkExportNames={}))}},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(8808)})()));
|
|
@@ -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.4
|
|
9
9
|
*******************************************************************************/
|
|
10
10
|
!function(e,a){"object"==typeof exports&&"object"==typeof module?module.exports=a():"function"==typeof define&&define.amd?define([],a):"object"==typeof exports?exports["playback-api"]=a():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["playback-api"]=a())}(self,(()=>(()=>{"use strict";var e={7085:(e,a)=>{function t(e,a,t){const n=a;return n._name=e,{onAdd:n,dependencies:t}}Object.defineProperty(a,"__esModule",{value:!0}),a.createPackage=void 0,a.createPackage=t},1270:(e,a)=>{function t(e,a){const t=a;return t._name=e,t}function n(e){return(...a)=>{const[n,r]=e(...a);return t(n,r)}}function r(e){var a;return null!==(a=e._name)&&void 0!==a?a:e.name}Object.defineProperty(a,"__esModule",{value:!0}),a.getTaskName=a.createTaskClosure=a.createTask=void 0,a.createTask=t,a.createTaskClosure=n,a.getTaskName=r},8668:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(a.BundleExportNames||(a.BundleExportNames={}))},4809:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(a.CoreExportNames||(a.CoreExportNames={}))},2903:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.PlaybackApiPackage=void 0;const n=t(7085),r=t(7670),c=t(6562);a.PlaybackApiPackage=(0,n.createPackage)("playback-api-package",(e=>{const a=e.api.packages;a.add(r.default),a.add(c.default)}),[]),a.default=a.PlaybackApiPackage},7670:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.PlayPauseApiPackage=void 0;const n=t(7085),r=t(1270),c=t(4809),o=t(6921),i=t(8443),s=t(1010);a.PlayPauseApiPackage=(0,n.createPackage)("play-pause-api-package",((e,a)=>{const{StateEffectFactory:t,EventListenerEffectFactory:n}=a.registry.get(c.CoreExportNames.CoreEffects),l=a.using(t,n),d=l.registry.get(s.SourcesApiExportNames.SourceApiManager),y=l.registry.get(o.PlayPauseExportNames.TargetPlaybackState),u=l.registry.get(o.PlayPauseExportNames.TargetPlaybackStateAtom),E=l.registry.get(i.VideoElementStateExportNames.VideoElementState),{state:P}=l.effects;d.set("pause",(()=>P.dispatch(u.setValue,y.Paused))),d.set("play",(()=>(P.dispatch(u.setValue,y.Playing),E.playing.value?Promise.resolve():new Promise(((e,a)=>{const t=(0,r.createTask)("play-subscriber",((e,a)=>{!0===e.value&&s()})),n=(0,r.createTask)("pause-subscriber",((e,a)=>{!0===e.value&&d()})),c=(0,r.createTask)("error-subscriber",((e,a)=>{d(e.value)})),o=[P.subscribe(l,E.playing,t),P.subscribe(l,E.paused,n),P.subscribe(l,E.onPlayRejected,c)],i=()=>{for(const e of o)e()},s=()=>{e(),i()},d=e=>{a(e),i()}})))))}),[c.CoreExportNames.CoreEffects,s.SourcesApiExportNames.SourceApiManager,o.PlayPauseExportNames.TargetPlaybackStateAtom,i.VideoElementStateExportNames.VideoElementState]),a.default=a.PlayPauseApiPackage},6562:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.PlaybackApiEventsPackage=void 0;const n=t(7085),r=t(1270),c=t(8668),o=t(4809),i=t(2773),s=t(7269),l=t(1010),d=t(4747),y=t(8843),u=t(6279),E=t(2426),P=t(7536);a.PlaybackApiEventsPackage=(0,n.createPackage)("playback-api-events-package",((e,a)=>{const{StateEffectFactory:t,EventListenerEffectFactory:n}=a.registry.get(o.CoreExportNames.CoreEffects),c=a.using(t,n),v=c.registry.get(i.PlaybackStatePackageExportNames.PlaybackState),k=c.registry.get(i.PlaybackStatePackageExportNames.PlaybackStateMachine),p=c.registry.get(l.SourcesApiExportNames.SourceEventBus),b=c.registry.get(l.SourcesApiExportNames.SourceApiManager),g=c.registry.get(s.SourceExportNames.SourceState),{state:S}=c.effects,m=(0,E.createEventDispatcher)(c,(0,E.transition)(v.Initial,v.Ready,y.PlaybackEvent.Ready),(0,E.transition)(v.Ready,v.Play,y.PlaybackEvent.Play),(0,E.transition)(v.Ready,v.Paused,y.PlaybackEvent.Paused),(0,E.transition)(v.Play,v.Playing,y.PlaybackEvent.Playing),(0,E.transition)(v.Play,v.Paused,y.PlaybackEvent.Paused),(0,E.transition)(v.Play,v.Seeking,y.PlaybackEvent.Seeking),(0,E.transition)(v.Play,v.Stalled,y.PlaybackEvent.StallStarted),(0,E.transition)(v.Playing,v.Paused,y.PlaybackEvent.Paused),(0,E.transition)(v.Playing,v.Seeking,y.PlaybackEvent.Seeking),(0,E.transition)(v.Playing,v.Stalled,y.PlaybackEvent.StallStarted),(0,E.transition)(v.Playing,v.Ended,y.PlaybackEvent.Ended),(0,E.transition)(v.Paused,v.Play,y.PlaybackEvent.Play),(0,E.transition)(v.Paused,v.Seeking,y.PlaybackEvent.Seeking),(0,E.transition)(v.Stalled,v.Playing,[y.PlaybackEvent.StallEnded,y.PlaybackEvent.Playing]),(0,E.transition)(v.Stalled,v.Paused,[y.PlaybackEvent.StallEnded,y.PlaybackEvent.Paused]),(0,E.transition)(v.Stalled,v.Seeking,[y.PlaybackEvent.StallEnded,y.PlaybackEvent.Seeking]),(0,E.transition)(v.Detached,v.Paused,[y.PlaybackEvent.VideoAttached,y.PlaybackEvent.Paused]),(0,E.transition)(v.Detached,v.Seeking,[y.PlaybackEvent.VideoAttached,y.PlaybackEvent.Seeking]),(0,E.transition)(v.Detached,v.Play,[y.PlaybackEvent.VideoAttached,y.PlaybackEvent.Play]),(0,E.transition)(v.Seeking,v.Playing,[y.PlaybackEvent.Seeked,y.PlaybackEvent.Playing]),(0,E.transition)(v.Seeking,v.Paused,[y.PlaybackEvent.Seeked,y.PlaybackEvent.Paused]),(0,E.transition)(v.Seeking,v.Detached,[y.PlaybackEvent.Seeked,y.PlaybackEvent.VideoDetached]),(0,E.transition)(v.Seeking,v.Ended,[y.PlaybackEvent.Seeked,y.PlaybackEvent.Ended]),(0,E.transition)(v.Ended,v.Seeking,y.PlaybackEvent.Seeking),(0,E.transition)(v.Ended,v.Play,y.PlaybackEvent.Play));let f=void 0!==g.video.element;return b.set("getState",(()=>k.current)),c.registry.set(P.PlaybackApiEventsPackageExportNames.PlaybackEvent,y.PlaybackEvent),S.subscribe(c,k,m),S.subscribe(c,g.playback.playhead,(0,r.createTask)("playhead-subscriber",((e,a)=>p.dispatch(a,y.PlaybackEvent.TimeChanged,(0,u.createTimeChangedEvent)(a))))),S.subscribe(c,g.video,(0,r.createTask)("video-element-subscriber",((e,a)=>{const t=void 0!==e.element,n=t&&f;(f||!t)&&p.dispatch(a,y.PlaybackEvent.VideoDetached,(0,d.createBaseEvent)(y.PlaybackEvent.VideoDetached)),n&&p.dispatch(a,y.PlaybackEvent.VideoAttached,(0,d.createBaseEvent)(y.PlaybackEvent.VideoAttached)),f=t}))),c.effects.loop(c.abortSignal)}),[c.BundleExportNames.Logger,o.CoreExportNames.CoreEffects,i.PlaybackStatePackageExportNames.PlaybackState,i.PlaybackStatePackageExportNames.PlaybackStateMachine,l.SourcesApiExportNames.SourceEventBus,l.SourcesApiExportNames.SourceApiManager,s.SourceExportNames.SourceState]),a.default=a.PlaybackApiEventsPackage},2426:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.createEventDispatcher=a.transition=void 0;const n=t(1270),r=t(1010),c=t(1770);function o(e,a,t){return{from:e,to:a,eventOrEvents:t}}function i(e,a){const t=a.from===e.previous,n=a.to===e.current;return t&&n}function s(e,...a){const t=e.registry.get(r.SourcesApiExportNames.SourceEventBus);return(0,n.createTask)("playback-state-subscriber",((e,n)=>{for(const r of a){if(!i(e,r))continue;const a="string"==typeof r.eventOrEvents?[r.eventOrEvents]:r.eventOrEvents;for(const e of a)t.dispatch(n,e,(0,c.createEvent)(e,n))}}))}a.transition=o,a.createEventDispatcher=s},7536:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.PlaybackApiEventsPackageExportNames=void 0,function(e){e.PlaybackEvent="playback-event"}(a.PlaybackApiEventsPackageExportNames||(a.PlaybackApiEventsPackageExportNames={}))},4747:(e,a)=>{function t(e){return{timestamp:Date.now(),type:e}}Object.defineProperty(a,"__esModule",{value:!0}),a.createBaseEvent=void 0,a.createBaseEvent=t},8843:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.PlaybackEvent=void 0,function(e){e.Ready="ready",e.Play="play",e.Playing="playing",e.Paused="paused",e.Seeking="seeking",e.Seeked="seeked",e.Ended="ended",e.TimeChanged="time-changed",e.StallStarted="stall-started",e.StallEnded="stall-ended",e.VideoDetached="video-detached",e.VideoAttached="video-attached"}(a.PlaybackEvent||(a.PlaybackEvent={}))},9884:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.createSeekedEvent=void 0;const n=t(4747),r=t(8843);function c(e){return Object.assign(Object.assign({},(0,n.createBaseEvent)(r.PlaybackEvent.Seeked)),{targetTime:void 0})}a.createSeekedEvent=c},9099:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.createSeekingEvent=void 0;const n=t(4747),r=t(8843);function c(e){return Object.assign(Object.assign({},(0,n.createBaseEvent)(r.PlaybackEvent.Seeking)),{position:void 0,targetTime:void 0})}a.createSeekingEvent=c},6279:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.createTimeChangedEvent=void 0;const n=t(7269),r=t(4747),c=t(8843);function o(e){const a=e.registry.get(n.SourceExportNames.SourceState).playback.playhead.position;return Object.assign(Object.assign({},(0,r.createBaseEvent)(c.PlaybackEvent.TimeChanged)),{time:a})}a.createTimeChangedEvent=o},1770:(e,a,t)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.createEvent=void 0;const n=t(4747),r=t(8843),c=t(9884),o=t(9099),i=t(6279),s=e=>()=>(0,n.createBaseEvent)(e),l={[r.PlaybackEvent.Ready]:s(r.PlaybackEvent.Ready),[r.PlaybackEvent.Play]:s(r.PlaybackEvent.Play),[r.PlaybackEvent.Playing]:s(r.PlaybackEvent.Playing),[r.PlaybackEvent.Paused]:s(r.PlaybackEvent.Paused),[r.PlaybackEvent.Seeking]:o.createSeekingEvent,[r.PlaybackEvent.Seeked]:c.createSeekedEvent,[r.PlaybackEvent.Ended]:s(r.PlaybackEvent.Ended),[r.PlaybackEvent.TimeChanged]:i.createTimeChangedEvent,[r.PlaybackEvent.StallStarted]:s(r.PlaybackEvent.StallStarted),[r.PlaybackEvent.StallEnded]:s(r.PlaybackEvent.StallEnded),[r.PlaybackEvent.VideoDetached]:s(r.PlaybackEvent.VideoDetached),[r.PlaybackEvent.VideoAttached]:s(r.PlaybackEvent.VideoAttached)};function d(e,a){const t=l[e];if(void 0===t)throw new Error(`Attempted to create unknown event of type "${e}"`);return t(a)}a.createEvent=d},6921:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.PlayPauseExportNames=void 0,function(e){e.TargetPlaybackStateAtom="target-playback-state-atom",e.TargetPlaybackState="target-playback-state"}(a.PlayPauseExportNames||(a.PlayPauseExportNames={}))},2773:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.PlaybackState=a.PlaybackStatePackageExportNames=void 0,function(e){e.PlaybackState="playback-state",e.PlaybackStateMachine="playback-state-machine"}(a.PlaybackStatePackageExportNames||(a.PlaybackStatePackageExportNames={})),function(e){e.Initial="initial",e.Ready="ready",e.Paused="paused",e.Play="play",e.Playing="playing",e.Seeking="seeking",e.Stalled="stalled",e.Ended="ended",e.Detached="detached"}(a.PlaybackState||(a.PlaybackState={}))},8443:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.MediaElementReadyState=a.VideoElementStateExportNames=void 0,function(e){e.VideoElementState="video-element-state",e.MediaElementReadyState="media-element-ready-state"}(a.VideoElementStateExportNames||(a.VideoElementStateExportNames={})),function(e){e[e.HaveNothing=HTMLMediaElement.HAVE_NOTHING]="HaveNothing",e[e.HaveMetadata=HTMLMediaElement.HAVE_METADATA]="HaveMetadata",e[e.HaveCurrentData=HTMLMediaElement.HAVE_CURRENT_DATA]="HaveCurrentData",e[e.HaveFutureData=HTMLMediaElement.HAVE_FUTURE_DATA]="HaveFutureData",e[e.HaveEnoughData=HTMLMediaElement.HAVE_ENOUGH_DATA]="HaveEnoughData"}(a.MediaElementReadyState||(a.MediaElementReadyState={}))},7269:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.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"}(a.SourceExportNames||(a.SourceExportNames={}))},1010:(e,a)=>{Object.defineProperty(a,"__esModule",{value:!0}),a.SourcesApiExportNames=a.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"}(a.SourcesApiEvent||(a.SourcesApiEvent={})),function(e){e.SourceApiManager="source-api-manager",e.VideoElementUtils="video-element-utils",e.SourceEventBus="source-event-bus"}(a.SourcesApiExportNames||(a.SourcesApiExportNames={}))}},a={};function t(n){var r=a[n];if(void 0!==r)return r.exports;var c=a[n]={exports:{}};return e[n](c,c.exports,t),c.exports}return t(2903)})()));
|
|
@@ -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.4
|
|
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.playback=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.playback=t())}(self,(()=>(()=>{"use strict";var e={7085:(e,t)=>{function a(e,t,a){const i=t;return i._name=e,{onAdd:i,dependencies:a}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=a},1270:(e,t)=>{function a(e,t){const a=t;return a._name=e,a}function i(e){return(...t)=>{const[i,r]=e(...t);return a(i,r)}}function r(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=a,t.createTaskClosure=i,t.getTaskName=r},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={}))},3177:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlaybackPackage=void 0;const i=a(7085),r=a(6595),s=a(7953),n=a(7642);t.PlaybackPackage=(0,i.createPackage)("playback-package",(e=>{const t=e.api.packages;t.add(r.default),t.add(s.default),t.add(n.default)}),[]),t.default=t.PlaybackPackage},6595:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayPausePackage=void 0;const i=a(7085),r=a(8668),s=a(4809),n=a(7269),o=a(8443),d=a(2694),c=a(2439),l=a(6921),u=a(1357);t.PlayPausePackage=(0,i.createPackage)("play-pause-package",((e,t)=>{const{EventListenerEffectFactory:a,StateEffectFactory:i}=t.registry.get(s.CoreExportNames.CoreEffects),r=t.using(a,i),y=r.registry.get(n.SourceExportNames.SourceState),{createPrimitiveAtom:g}=r.registry.get(s.CoreExportNames.CoreStateAtoms),b=g(r,y.config.playback.autoplay?d.TargetPlaybackState.Playing:d.TargetPlaybackState.Paused),p=r.registry.get(o.VideoElementStateExportNames.VideoElementState),S=(0,c.TargetPlaybackStateSubscriberClosure)(b);(0,u.addVideoElementStateSubscribers)(r,p,b),r.effects.state.subscribe(r,b,S),r.effects.state.subscribe(r,y.video,S),r.effects.state.subscribe(r,p.readyState,S),r.fork(S,b),r.registry.set(l.PlayPauseExportNames.TargetPlaybackState,d.TargetPlaybackState),r.registry.set(l.PlayPauseExportNames.TargetPlaybackStateAtom,b)}),[n.SourceExportNames.SourceState,s.CoreExportNames.CoreEffects,s.CoreExportNames.CoreStateAtoms,r.BundleExportNames.Logger,o.VideoElementStateExportNames.VideoElementState]),t.default=t.PlayPausePackage},2694:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TargetPlaybackState=void 0,function(e){e.Paused="paused",e.Playing="playing"}(t.TargetPlaybackState||(t.TargetPlaybackState={}))},2439:function(e,t,a){var i=this&&this.__awaiter||function(e,t,a,i){function r(e){return e instanceof a?e:new a((function(t){t(e)}))}return new(a||(a=Promise))((function(a,s){function n(e){try{d(i.next(e))}catch(e){s(e)}}function o(e){try{d(i.throw(e))}catch(e){s(e)}}function d(e){e.done?a(e.value):r(e.value).then(n,o)}d((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.TargetPlaybackStateSubscriberClosure=void 0;const r=a(1270),s=a(8668),n=a(7269),o=a(8443),d=a(2694);var c;!function(e){e.NotAllowedToPlay="video-is-not-allowed-to-play",e.InterruptedByPause="play-was-interrupted-by-pause",e.InterruptedByLoad="play-was-interrupted-by-load",e.Unknown="play-was-interrupted"}(c||(c={}));class l extends Error{constructor(e){super(`Attempting to play failed with reason: ${e} `),this.failureReason=e,this.name="PlayFailedError"}}function u(e,t){switch(e instanceof DOMException?e.name:void 0){case"AbortError":return!t.paused||t.networkState!==t.NETWORK_EMPTY&&t.networkState!==t.NETWORK_NO_SOURCE?c.InterruptedByPause:c.InterruptedByLoad;case"NotAllowedError":return c.NotAllowedToPlay;default:return c.Unknown}}function y(e,t){return new l(u(e,t))}function g(e){return[c.NotAllowedToPlay,c.InterruptedByPause].includes(e.failureReason)}function b(e,t){e.effects.state.dispatch(t.setValue,d.TargetPlaybackState.Paused)}function p(e,t,a,i){const r=y(t,a);e.registry.get(s.BundleExportNames.Logger).log('Failed to call "play" on video element:',r.message);const n=e.registry.get(o.VideoElementStateExportNames.VideoElementState);e.effects.state.dispatch(n.onPlayRejected.trigger,t),g(r)&&b(e,i)}function S(e,t,a){return i(this,void 0,void 0,(function*(){try{yield e.effects.abortable(((e,a)=>t.play().then(e).catch(a)))}catch(i){p(e,i,t,a)}}))}function P(e){return i(this,void 0,void 0,(function*(){e.pause()}))}function f(e,t,a){switch(a.value){case d.TargetPlaybackState.Playing:return S(e,t,a);case d.TargetPlaybackState.Paused:return P(t)}}t.TargetPlaybackStateSubscriberClosure=(0,r.createTaskClosure)((e=>["playback-transition",(t,a)=>i(void 0,void 0,void 0,(function*(){const t=a.registry.get(n.SourceExportNames.SourceState).video.element;void 0!==t&&(yield f(a,t,e))}))]))},6921:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayPauseExportNames=void 0,function(e){e.TargetPlaybackStateAtom="target-playback-state-atom",e.TargetPlaybackState="target-playback-state"}(t.PlayPauseExportNames||(t.PlayPauseExportNames={}))},1357:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.addVideoElementStateSubscribers=void 0;const i=a(1270),r=a(2694),s=(0,i.createTaskClosure)(((e,t)=>["playing-subscriber",(a,i)=>{const{state:s}=i.effects;e.playing.value&&e.playEventTriggered.value&&s.dispatch(t.setValue,r.TargetPlaybackState.Playing)}])),n=(0,i.createTaskClosure)(((e,t)=>["playing-subscriber",(a,i)=>{const{state:s}=i.effects;e.paused.value&&e.pauseEventTriggered.value&&s.dispatch(t.setValue,r.TargetPlaybackState.Paused)}]));function o(e,t,a){const i=s(t,a),r=n(t,a);e.effects.state.subscribe(e,t.playing,i),e.effects.state.subscribe(e,t.playEventTriggered,i),e.effects.state.subscribe(e,t.paused,r),e.effects.state.subscribe(e,t.pauseEventTriggered,r)}t.addVideoElementStateSubscribers=o},493:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.logTransitions=void 0;const i=a(1270),r=a(8668),s=a(4809);function n(e,t){const a=(0,i.createTask)("playback-state-machine-subscriber",((e,a)=>{const i=a.registry.get(r.BundleExportNames.Logger),{bold:n,blue:o,red:d,green:c}=a.registry.get(s.CoreExportNames.Utils).AnsiEscapeSequences;i.debug(`${o(n("PlaybackState"))} changed: ${d(n(t.previous))} → ${c(n(t.current))}`)}));e.effects.state.subscribe(e,t,a)}t.logTransitions=n},9104:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createPlaybackStateMachineAtom=void 0;const i=a(4809),r=a(2640),s=a(6828),n=a(6708),o=a(2198),d=a(4191),c=a(7908),l=a(7685),u=a(7627),y=a(5908),g=a(2773);function b(e){const{createStateMachineAtom:t}=e.registry.get(i.CoreExportNames.CoreStateAtoms).StateMachine;return t(e,g.PlaybackState.Initial,{[g.PlaybackState.Initial]:n.initialTransitionHandler,[g.PlaybackState.Ready]:l.readyTransitionHandler,[g.PlaybackState.Play]:d.playTransitionHandler,[g.PlaybackState.Playing]:c.playingTransitionHandler,[g.PlaybackState.Paused]:o.pausedTransitionHandler,[g.PlaybackState.Stalled]:y.stalledTransitionHandler,[g.PlaybackState.Seeking]:u.seekingTransitionHandler,[g.PlaybackState.Detached]:r.detachedTransitionHandler,[g.PlaybackState.Ended]:s.endedTransitionHandler})}t.createPlaybackStateMachineAtom=b},7953:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlaybackStatePackage=void 0;const i=a(7085),r=a(1270),s=a(4809),n=a(7269),o=a(6921),d=a(8443),c=a(493),l=a(9104),u=a(2773);t.PlaybackStatePackage=(0,i.createPackage)("playback-state-package",((e,t)=>{const{StateEffectFactory:a,EventListenerEffectFactory:i}=t.registry.get(s.CoreExportNames.CoreEffects),y=t.using(a,i),{state:g}=y.effects,b=(0,l.createPlaybackStateMachineAtom)(y),p=y.registry.get(n.SourceExportNames.SourceState),S=y.registry.get(d.VideoElementStateExportNames.VideoElementState),P=y.registry.get(o.PlayPauseExportNames.TargetPlaybackStateAtom),f=(0,r.createTask)("state-machine-updated",((e,t)=>t.effects.state.dispatch(b.updateState)));return(0,c.logTransitions)(y,b),g.subscribe(y,p.video,f),g.subscribe(y,p.playback.playhead,f),g.subscribe(y,p.stream.duration,f),g.subscribe(y,P,f),g.subscribe(y,S.ended,f),g.subscribe(y,S.playing,f),g.subscribe(y,S.paused,f),g.subscribe(y,S.seeking,f),g.subscribe(y,S.waiting,f),y.registry.set(u.PlaybackStatePackageExportNames.PlaybackState,u.PlaybackState),y.registry.set(u.PlaybackStatePackageExportNames.PlaybackStateMachine,b),y.effects.loop(y.abortSignal)}),[s.CoreExportNames.CoreEffects,n.SourceExportNames.SourceState,s.CoreExportNames.CoreStateAtoms,o.PlayPauseExportNames.TargetPlaybackState,o.PlayPauseExportNames.TargetPlaybackStateAtom,d.VideoElementStateExportNames.VideoElementState]),t.default=t.PlaybackStatePackage},2773:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlaybackState=t.PlaybackStatePackageExportNames=void 0,function(e){e.PlaybackState="playback-state",e.PlaybackStateMachine="playback-state-machine"}(t.PlaybackStatePackageExportNames||(t.PlaybackStatePackageExportNames={})),function(e){e.Initial="initial",e.Ready="ready",e.Paused="paused",e.Play="play",e.Playing="playing",e.Seeking="seeking",e.Stalled="stalled",e.Ended="ended",e.Detached="detached"}(t.PlaybackState||(t.PlaybackState={}))},2640:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.detachedTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&!(0,s.isVideoPlaying)(e)}function o(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePaused)(e)&&(0,s.isVideoPaused)(e)}function d(e){return(0,s.isVideoSeeking)(e)}t.detachedTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Detached,[n,i.PlaybackState.Play],[o,i.PlaybackState.Paused],[d,i.PlaybackState.Seeking])},6828:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.endedTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isVideoAttached)(e)&&(0,s.isVideoSeeking)(e)}function o(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&!(0,s.isVideoEnded)(e)&&!(0,s.isVideoPlaying)(e)}function d(e){return!(0,s.isVideoAttached)(e)}t.endedTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Ended,[n,i.PlaybackState.Seeking],[o,i.PlaybackState.Play],[d,i.PlaybackState.Detached])},6708:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.initialTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isStreamDurationKnown)(e)}t.initialTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Initial,[n,i.PlaybackState.Ready])},2198:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.pausedTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isVideoAttached)(e)&&(0,s.isVideoSeeking)(e)}function o(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)}function d(e){return!(0,s.isVideoAttached)(e)}t.pausedTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Paused,[n,i.PlaybackState.Seeking],[o,i.PlaybackState.Play],[d,i.PlaybackState.Detached])},4191:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.playTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isVideoPlaying)(e)}function o(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isVideoSeeking)(e)}function d(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePaused)(e)}function c(e){return!(0,s.isVideoAttached)(e)}function l(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isVideoStalled)(e)}t.playTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Play,[n,i.PlaybackState.Playing],[o,i.PlaybackState.Seeking],[d,i.PlaybackState.Paused],[c,i.PlaybackState.Detached],[l,i.PlaybackState.Stalled])},7908:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.playingTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isVideoPlaying)(e)&&(0,s.isVideoSeeking)(e)}function o(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isAtEndOfStream)(e)&&(0,s.isVideoEnded)(e)}function d(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isVideoStalled)(e)}function c(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePaused)(e)&&(0,s.isVideoPaused)(e)}function l(e){return!(0,s.isVideoAttached)(e)}t.playingTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Playing,[n,i.PlaybackState.Seeking],[o,i.PlaybackState.Ended],[d,i.PlaybackState.Stalled],[c,i.PlaybackState.Paused],[l,i.PlaybackState.Detached])},7685:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.readyTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return!(0,s.isVideoAttached)(e)}function o(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePaused)(e)&&(0,s.isVideoPaused)(e)}function d(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePlaying)(e)&&!(0,s.isVideoPlaying)(e)}t.readyTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Ready,[n,i.PlaybackState.Detached],[o,i.PlaybackState.Paused],[d,i.PlaybackState.Play])},7627:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.seekingTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isVideoAttached)(e)&&!(0,s.isVideoSeeking)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isVideoPlaying)(e)}function o(e){return(0,s.isVideoAttached)(e)&&!(0,s.isVideoSeeking)(e)&&(0,s.isTargetStatePaused)(e)&&(0,s.isVideoPaused)(e)}function d(e){return!(0,s.isVideoAttached)(e)}function c(e){return(0,s.isVideoAttached)(e)&&!(0,s.isVideoSeeking)(e)&&(0,s.isAtEndOfStream)(e)&&(0,s.isVideoEnded)(e)}t.seekingTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Seeking,[n,i.PlaybackState.Playing],[o,i.PlaybackState.Paused],[d,i.PlaybackState.Detached],[c,i.PlaybackState.Ended])},5908:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.stalledTransitionHandler=void 0;const i=a(2773),r=a(3882),s=a(6793);function n(e){return(0,s.isVideoAttached)(e)&&!(0,s.isVideoStalled)(e)&&(0,s.isTargetStatePlaying)(e)&&(0,s.isVideoPlaying)(e)}function o(e){return(0,s.isVideoAttached)(e)&&(0,s.isTargetStatePaused)(e)&&(0,s.isVideoPaused)(e)}function d(e){return!(0,s.isVideoAttached)(e)}function c(e){return(0,s.isVideoAttached)(e)&&(0,s.isVideoSeeking)(e)}t.stalledTransitionHandler=(0,r.createTransitionHandler)(i.PlaybackState.Stalled,[n,i.PlaybackState.Playing],[o,i.PlaybackState.Paused],[d,i.PlaybackState.Detached],[c,i.PlaybackState.Seeking])},3882:(e,t)=>{function a(e,...t){return a=>{for(const[e,i]of t)if(e(a))return i;return e}}Object.defineProperty(t,"__esModule",{value:!0}),t.createTransitionHandler=void 0,t.createTransitionHandler=a},6793:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isAtEndOfStream=t.isStreamDurationKnown=t.isVideoEnded=t.isVideoPaused=t.isVideoPlaying=t.isVideoStalled=t.isVideoSeeking=t.isTargetStatePaused=t.isTargetStatePlaying=t.isVideoAttached=void 0;const i=a(7269),r=a(6921),s=a(8443);function n(e){return void 0!==e.registry.get(i.SourceExportNames.SourceState).video.element}function o(e){const t=e.registry.get(r.PlayPauseExportNames.TargetPlaybackState);return e.registry.get(r.PlayPauseExportNames.TargetPlaybackStateAtom).value===t.Playing}function d(e){const t=e.registry.get(r.PlayPauseExportNames.TargetPlaybackState);return e.registry.get(r.PlayPauseExportNames.TargetPlaybackStateAtom).value===t.Paused}function c(e){return!0===e.registry.get(s.VideoElementStateExportNames.VideoElementState).seeking.value}function l(e){return!0===e.registry.get(s.VideoElementStateExportNames.VideoElementState).waiting.value}function u(e){const t=e.registry.get(s.VideoElementStateExportNames.VideoElementState);return!0===t.playing.value&&!0===t.playEventTriggered.value}function y(e){return!0===e.registry.get(s.VideoElementStateExportNames.VideoElementState).paused.value}function g(e){return!0===e.registry.get(s.VideoElementStateExportNames.VideoElementState).ended.value}function b(e){const t=e.registry.get(i.SourceExportNames.SourceState);return isFinite(t.stream.duration.value)}function p(e){const t=e.registry.get(i.SourceExportNames.SourceState);return t.playback.playhead.position>=t.stream.duration.value-.5}t.isVideoAttached=n,t.isTargetStatePlaying=o,t.isTargetStatePaused=d,t.isVideoSeeking=c,t.isVideoStalled=l,t.isVideoPlaying=u,t.isVideoPaused=y,t.isVideoEnded=g,t.isStreamDurationKnown=b,t.isAtEndOfStream=p},8443:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MediaElementReadyState=t.VideoElementStateExportNames=void 0,function(e){e.VideoElementState="video-element-state",e.MediaElementReadyState="media-element-ready-state"}(t.VideoElementStateExportNames||(t.VideoElementStateExportNames={})),function(e){e[e.HaveNothing=HTMLMediaElement.HAVE_NOTHING]="HaveNothing",e[e.HaveMetadata=HTMLMediaElement.HAVE_METADATA]="HaveMetadata",e[e.HaveCurrentData=HTMLMediaElement.HAVE_CURRENT_DATA]="HaveCurrentData",e[e.HaveFutureData=HTMLMediaElement.HAVE_FUTURE_DATA]="HaveFutureData",e[e.HaveEnoughData=HTMLMediaElement.HAVE_ENOUGH_DATA]="HaveEnoughData"}(t.MediaElementReadyState||(t.MediaElementReadyState={}))},7577:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isAttachedVideoElementStateAtom=t.createVideoElementStateAtom=void 0;const i=a(4809);function r(e){const{createPrimitiveAtom:t}=e.registry.get(i.CoreExportNames.CoreStateAtoms),{createTransient:a}=e.registry.get(i.CoreExportNames.Utils).State;return{error:t(e,void 0),ended:t(e,void 0),paused:t(e,void 0),playing:t(e,void 0),seeking:t(e,void 0),waiting:t(e,void 0),muted:t(e,void 0),volume:t(e,void 0),playbackRate:t(e,void 0),currentTime:t(e,void 0),duration:t(e,void 0),readyState:t(e,void 0),playEventTriggered:t(e,void 0),pauseEventTriggered:t(e,void 0),onPlayRejected:a(e)}}function s(e){return void 0!==e.readyState.value}function n(e,t){if(!s(t))return!1;const{state:a}=e.effects,i=t;return a.dispatch(i.error.setValue,void 0),a.dispatch(i.paused.setValue,void 0),a.dispatch(i.ended.setValue,void 0),a.dispatch(i.playing.setValue,void 0),a.dispatch(i.seeking.setValue,void 0),a.dispatch(i.waiting.setValue,void 0),a.dispatch(i.muted.setValue,void 0),a.dispatch(i.volume.setValue,void 0),a.dispatch(i.playbackRate.setValue,void 0),a.dispatch(i.currentTime.setValue,void 0),a.dispatch(i.duration.setValue,void 0),a.dispatch(i.readyState.setValue,void 0),!0}function o(e){return e.effects.state.create(r(e),{detach:n.bind(void 0,e)})}function d(e){return void 0!==e.readyState.value}t.createVideoElementStateAtom=o,t.isAttachedVideoElementStateAtom=d},7642:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VideoElementStatePackage=void 0;const i=a(7085),r=a(4809),s=a(7269),n=a(8443),o=a(7577),d=a(1624);t.VideoElementStatePackage=(0,i.createPackage)("video-element-state-package",((e,t)=>{const{StateEffectFactory:a,EventListenerEffectFactory:i}=t.registry.get(r.CoreExportNames.CoreEffects),c=t.using(a,i),l=(0,o.createVideoElementStateAtom)(c),{state:u}=c.effects,y=c.registry.get(s.SourceExportNames.SourceState),g=(0,d.VideoElementSubscriberClosure)(l);u.subscribe(c,y.video,g),c.fork(g,y.video),c.registry.set(n.VideoElementStateExportNames.VideoElementState,l),c.registry.set(n.VideoElementStateExportNames.MediaElementReadyState,n.MediaElementReadyState)}),[r.CoreExportNames.CoreStateAtoms,r.CoreExportNames.Utils,r.CoreExportNames.CoreEffects,s.SourceExportNames.SourceState]),t.default=t.VideoElementStatePackage},5017:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VideoElementStateUpdater=void 0;const i=a(1270),r=(0,i.createTaskClosure)(((e,t)=>["video-element-state-updater-closure",(a,i)=>{var r,s,n,o;const{state:d}=i.effects;d.dispatch(t.playing.setValue,!e.paused),d.dispatch(t.paused.setValue,e.paused),d.dispatch(t.seeking.setValue,e.seeking),d.dispatch(t.currentTime.setValue,e.currentTime),d.dispatch(t.error.setValue,null!==(r=e.error)&&void 0!==r?r:void 0),d.dispatch(t.ended.setValue,e.ended),d.dispatch(t.duration.setValue,e.duration),d.dispatch(t.readyState.setValue,e.readyState),d.dispatch(t.muted.setValue,e.muted),d.dispatch(t.volume.setValue,e.volume),d.dispatch(t.playbackRate.setValue,e.playbackRate),d.dispatch(t.waiting.setValue,null!==(s=t.waiting.value)&&void 0!==s&&s),d.dispatch(t.playEventTriggered.setValue,null!==(n=t.playEventTriggered.value)&&void 0!==n&&n),d.dispatch(t.pauseEventTriggered.setValue,null!==(o=t.pauseEventTriggered.value)&&void 0!==o&&o)}])),s=(0,i.createTaskClosure)((e=>["pause-event-listener",(t,a)=>{a.effects.state.dispatch(e.pauseEventTriggered.setValue,!0),a.effects.state.dispatch(e.playEventTriggered.setValue,!1)}])),n=(0,i.createTaskClosure)((e=>["play-event-listener",(t,a)=>{a.effects.state.dispatch(e.pauseEventTriggered.setValue,!1),a.effects.state.dispatch(e.playEventTriggered.setValue,!0)}])),o=(0,i.createTaskClosure)((e=>["waiting-event-listener",(t,a)=>{const{state:i}=a.effects;i.dispatch(e.waiting.setValue,!0)}])),d=(0,i.createTaskClosure)((e=>["can-play-event-listener",(t,a)=>{const{state:i}=a.effects;i.dispatch(e.waiting.setValue,!1)}]));t.VideoElementStateUpdater=(0,i.createTaskClosure)((e=>["video-element-state-updater",(t,a)=>{const{abortSignal:i,effects:c}=a,{loop:l,events:u}=c,y=r(t,e),g=n(e),b=s(e),p=o(e),S=d(e);return u.subscribe(a,t,"play",g),u.subscribe(a,t,"pause",b),u.subscribe(a,t,"waiting",p),u.subscribe(a,t,"canplay",S),u.subscribe(a,t,"canplaythrough",S),u.subscribe(a,t,"playing",S),u.subscribe(a,t,"loadeddata",y),u.subscribe(a,t,"loadstart",y),u.subscribe(a,t,"loadedmetadata",y),u.subscribe(a,t,"seeking",y),u.subscribe(a,t,"seeked",y),u.subscribe(a,t,"play",y),u.subscribe(a,t,"pause",y),u.subscribe(a,t,"playing",y),u.subscribe(a,t,"canplay",y),u.subscribe(a,t,"canplaythrough",y),u.subscribe(a,t,"progress",y),u.subscribe(a,t,"waiting",y),u.subscribe(a,t,"stalled",y),u.subscribe(a,t,"suspend",y),u.subscribe(a,t,"timeupdate",y),u.subscribe(a,t,"ended",y),u.subscribe(a,t,"error",y),u.subscribe(a,t,"ratechange",y),u.subscribe(a,t,"volumechange",y),u.subscribe(a,t,"durationchange",y),u.subscribe(a,t,"emptied",y),u.subscribe(a,t,"abort",y),a.fork(y,""),l(i)}]))},1624:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VideoElementSubscriberClosure=void 0;const i=a(1270),r=a(5017);t.VideoElementSubscriberClosure=(0,i.createTaskClosure)((e=>["video-element-subscriber",(t,a)=>{const{state:i}=a.effects;void 0===t.element?i.dispatch(e.detach):a.fork((0,r.VideoElementStateUpdater)(e),t.element)}]))},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 a(i){var r=t[i];if(void 0!==r)return r.exports;var s=t[i]={exports:{}};return e[i].call(s.exports,s,s.exports,a),s.exports}return a(3177)})()));
|
|
@@ -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.4
|
|
9
9
|
*******************************************************************************/
|
|
10
10
|
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports["player-api"]=r():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["player-api"]=r())}(self,(()=>(()=>{"use strict";var e={7085:(e,r)=>{function t(e,r,t){const o=r;return o._name=e,{onAdd:o,dependencies:t}}Object.defineProperty(r,"__esModule",{value:!0}),r.createPackage=void 0,r.createPackage=t},1270:(e,r)=>{function t(e,r){const t=r;return t._name=e,t}function o(e){return(...r)=>{const[o,a]=e(...r);return t(o,a)}}function a(e){var r;return null!==(r=e._name)&&void 0!==r?r:e.name}Object.defineProperty(r,"__esModule",{value:!0}),r.getTaskName=r.createTaskClosure=r.createTask=void 0,r.createTask=t,r.createTaskClosure=o,r.getTaskName=a},8668:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(r.BundleExportNames||(r.BundleExportNames={}))},1712:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.EventBusExportNames=void 0,function(e){e.CreateEventBus="create-event-bus"}(r.EventBusExportNames||(r.EventBusExportNames={}))},4709:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.trackFrameworkError=void 0;const o=t(1270),a=t(6022);function n(e){return{name:e.name,message:e.message,stack:e.stack}}function s(e,r){const t=e.abort;e.abort=o=>(r(o),t.call(e,o))}function u(e,r){let t;const u=(0,o.createTask)("error-tracker",((e,r)=>{const{abortSignal:o,effects:a}=r,{loop:n}=a;return t=r,n(o)})),l=e.fork(u,void 0),c=o=>{const s=null!=t?t:e,u=n(o);r.dispatch(s,a.PlayerEvent.PlayerError,u)};l.catch((()=>{})),s(l,c)}r.trackFrameworkError=u},6022:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.PlayerEvent=r.PlayerApiExportNames=void 0,function(e){e.PlayerEventBus="player-event-bus"}(r.PlayerApiExportNames||(r.PlayerApiExportNames={})),function(e){e.PlayerError="player-error"}(r.PlayerEvent||(r.PlayerEvent={}))}},r={};function t(o){var a=r[o];if(void 0!==a)return a.exports;var n=r[o]={exports:{}};return e[o](n,n.exports,t),n.exports}var o={};return(()=>{var e=o;Object.defineProperty(e,"__esModule",{value:!0});const r=t(7085),a=t(8668),n=t(1712),s=t(4709),u=t(6022),l=(0,r.createPackage)("player-api-package",((e,r)=>{const t=r.registry.get(n.EventBusExportNames.CreateEventBus),o=r.registry.get(a.BundleExportNames.Logger),l=t();(0,s.trackFrameworkError)(r,l),e.set("events",l),r.registry.set(u.PlayerApiExportNames.PlayerEventBus,l),e.defineProperty("logLevel",{get:()=>o.level,set:e=>o.setLevel(e)})}),[n.EventBusExportNames.CreateEventBus,a.BundleExportNames.Logger]);e.default=l})(),o})()));
|
|
@@ -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.4
|
|
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),a=r.registry.get(s.DataExportNames.StreamTimeline),{mapSubscribe:f}=r.registry.get(o.CoreExportNames.Utils).State,d=u([e,t]),g=c(d);return r.effects.state.subscribe(r,n.playback.playhead,d),f(r,a,g),r.fork(d,a),r.effects.loop(r.abortSignal)}));const c=(0,n.createTaskClosure)((e=>["stream-timeline-sub",(t,r)=>{const{subscribeAndRun:n}=r.registry.get(o.CoreExportNames.Utils).State;return n(r,t.streamSequenceMap,e),r.effects.loop(r.abortSignal)}])),u=(0,n.createTaskClosure)((([e,t])=>["active-section-update",(r,n)=>{if(!g(n)||f(n))return;const o=l(n,t.dataRangeIds.buffered);o&&n.effects.state.dispatch(e.setActiveSection,o)}]));function f(e){const t=e.registry.get(i.SourceExportNames.SourceState),r=t.playback.playhead.position;return t.stream.duration.value<r||r<0}function d(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 g(e){const{isMediaSelectionGroup:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,r=e.registry.get(s.DataExportNames.StreamTimeline),n=d(e);return r.length>0&&r.some((e=>Array.from(e.streamSequenceMap.keys()).filter(t).length===n))}function m(e,t){return e>=t.start&&e<=t.end}function l(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=d(e);return n.find((n=>{const o=b(e,n);if(o.length!==u)return!1;return!!o.every((({mediaType:e,selectionGroup:t})=>{const n=(0,a.getMediaTypeTargetRanges)(r,e);return m(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=y(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,l=g.length>0&&g.some((e=>e.start<=m&&m<=e.end)),b=p(e,d,s,t);return!l||!b}))}))}function p(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 y(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 b(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,{subscribeAndRun:i}=e.registry.get(s.CoreExportNames.Utils).State;return n((n=>{const s=(0,o.createTask)("segment-container-format-subscriber",((e,t)=>{r()&&(n(),a())})),a=i(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,{Tracks:{isMediaTrack:o},SelectionGroups:{isMediaSelectionGroup:s}}=e.registry.get(i.CoreExportNames.CoreStateAtoms);for(const[e]of t.streamSequenceMap){if(!s(e))continue;const t=n.get(e);if(void 0===t)throw new Error("Container format is unexpectedly undefined");let i,a=-1/0;for(const t of e.tracks){if(!o(t))continue;const{bitrate:e,codecs:r}=t;e>a&&r.size>0&&(a=e,i=r)}if(void 0===i)throw new Error("Could not determine codec to create buffers with");const c=Array.from(i.keys()),u=Array.from(i.values()).flat();r.push([u,t,c])}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{subscribeAndRun:r}=t.registry.get(s.CoreExportNames.Utils).State;return r(t,e.streamSequenceMap,u),t.effects.loop(t.abortSignal)})))),u=(0,o.createTask)("timeline-sequence-map-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)r(t,o,a.SegmentDataStreamSubscriber);return t.effects.loop(t.abortSignal)}))));function f(e){const t=e.registry.get(i.DataExportNames.StreamTimeline),{mapSubscribe:r}=e.registry.get(s.CoreExportNames.Utils).State;return r(e,t,c),e.effects.loop(e.abortSignal)}t.startPresentationSegmentProcessing=f},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),a=r.registry.get(s.DataExportNames.StreamTimeline),{mapSubscribe:f}=r.registry.get(o.CoreExportNames.Utils).State,d=u([e,t]),g=c(d);return r.effects.state.subscribe(r,n.playback.playhead,d),f(r,a,g),r.fork(d,a),r.effects.loop(r.abortSignal)}));const c=(0,n.createTaskClosure)((e=>["stream-timeline-sub",(t,r)=>{const{subscribeAndRun:n}=r.registry.get(o.CoreExportNames.Utils).State;return n(r,t.streamSequenceMap,e),r.effects.loop(r.abortSignal)}])),u=(0,n.createTaskClosure)((([e,t])=>["active-section-update",(r,n)=>{if(!g(n)||f(n))return;const o=l(n,t.dataRangeIds.buffered);o&&n.effects.state.dispatch(e.setActiveSection,o)}]));function f(e){const t=e.registry.get(i.SourceExportNames.SourceState),r=t.playback.playhead.position;return t.stream.duration.value<r||r<0}function d(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 g(e){const{isMediaSelectionGroup:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms).SelectionGroups,r=e.registry.get(s.DataExportNames.StreamTimeline),n=d(e);return r.length>0&&r.some((e=>Array.from(e.streamSequenceMap.keys()).filter(t).length===n))}function m(e,t){return e>=t.start&&e<=t.end}function l(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=d(e);return n.find((n=>{const o=b(e,n);if(o.length!==u)return!1;return!!o.every((({mediaType:e,selectionGroup:t})=>{const n=(0,a.getMediaTypeTargetRanges)(r,e);return m(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=y(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,l=g.length>0&&g.some((e=>e.start<=m&&m<=e.end)),b=p(e,d,s,t);return!l||!b}))}))}function p(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 y(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 b(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,{subscribeAndRun:i}=e.registry.get(s.CoreExportNames.Utils).State;return n((n=>{const s=(0,o.createTask)("segment-container-format-subscriber",((e,t)=>{r()&&(n(),a())})),a=i(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){const r=C(e,t),n=[],{containerFormatMap:o}=e.effects.store,{Tracks:{isMediaTrack:s},SelectionGroups:{isMediaSelectionGroup:a}}=e.registry.get(i.CoreExportNames.CoreStateAtoms);for(const[e]of t.streamSequenceMap){if(!a(e))continue;const t=o.get(e);if(void 0===t)throw new Error("Container format is unexpectedly undefined");let i,c=-1/0;for(const t of e.tracks){if(!s(t))continue;const{bitrate:e,codecs:r}=t;e>c&&r.size>0&&(c=e,i=r)}if(void 0===i)throw new Error("Could not determine codec to create buffers with");if(r)for(const[e,r]of i)n.push([r,t,[e]]);else{const e=Array.from(i.keys()),r=Array.from(i.values()).flat();n.push([r,t,e])}}return n}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{subscribeAndRun:r}=t.registry.get(s.CoreExportNames.Utils).State;return r(t,e.streamSequenceMap,u),t.effects.loop(t.abortSignal)})))),u=(0,o.createTask)("timeline-sequence-map-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)r(t,o,a.SegmentDataStreamSubscriber);return t.effects.loop(t.abortSignal)}))));function f(e){const t=e.registry.get(i.DataExportNames.StreamTimeline),{mapSubscribe:r}=e.registry.get(s.CoreExportNames.Utils).State;return r(e,t,c),e.effects.loop(e.abortSignal)}t.startPresentationSegmentProcessing=f},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)})()));
|