diff --git a/templates/iframe.pug b/templates/iframe.pug index 4d85615d..f62152b6 100644 --- a/templates/iframe.pug +++ b/templates/iframe.pug @@ -30,7 +30,7 @@ html(lang="en") fn(); } script(src="/js/jquery-1.12.4.min.js") - script(src="/js/video.js") - script(src="/js/videojs-resolution-switcher.js") + script(src="/js/vjs/video.js") + script(src="/js/vjs/videojs-resolution-switcher.js") script(src="/js/playerjs-0.0.12.js") script(src="/js/player.js") diff --git a/www/css/video-js.css b/www/css/video-js.css index 5678e588..c52a9f50 100644 --- a/www/css/video-js.css +++ b/www/css/video-js.css @@ -1,234 +1,337 @@ @charset "UTF-8"; -.video-js .vjs-big-play-button:before, .video-js .vjs-control:before, .video-js .vjs-modal-dialog, .vjs-modal-dialog .vjs-modal-dialog-content { +.vjs-modal-dialog .vjs-modal-dialog-content, .video-js .vjs-modal-dialog, .vjs-button > .vjs-icon-placeholder:before, .video-js .vjs-big-play-button .vjs-icon-placeholder:before { position: absolute; top: 0; left: 0; width: 100%; - height: 100%; } + height: 100%; +} -.video-js .vjs-big-play-button:before, .video-js .vjs-control:before { - text-align: center; } +.vjs-button > .vjs-icon-placeholder:before, .video-js .vjs-big-play-button .vjs-icon-placeholder:before { + text-align: center; +} @font-face { font-family: VideoJS; - src: url("../font/2.0.0/VideoJS.eot?#iefix") format("eot"); } - -@font-face { - font-family: VideoJS; - src: url(data:application/font-woff;charset=utf-8;base64,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) format("woff"), url(data:application/x-font-ttf;charset=utf-8;base64,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ATcuAScjBh8BHgEXDgEFMz8BFTMRIwYDJRUnAxyEzZRbCA2rgketCAEBqlRoCglxYwF+IiEOIysBAkswHQEECiQ0AgE+YyIhDiIsAQJLMB4BBQokNAE/YyIhDiIsAQJLMB4BBQokNAEBPvmD7kHhqs0s0gEnjgHJAv0FD2a9gIrADwUFAwPDAlVMZ3MF/pUHwgc1HTyWV325PgsJED+oY3G9TAc1HTyWV325PgsJED+oY3G9TAc1HTyWV325PgsJED+oY3G9UmQBZQMMR/61g/kBAAAAAAAQAMYAAQAAAAAAAQAHAAAAAQAAAAAAAgAHAAcAAQAAAAAAAwAHAA4AAQAAAAAABAAHABUAAQAAAAAABQALABwAAQAAAAAABgAHACcAAQAAAAAACgArAC4AAQAAAAAACwATAFkAAwABBAkAAQAOAGwAAwABBAkAAgAOAHoAAwABBAkAAwAOAIgAAwABBAkABAAOAJYAAwABBAkABQAWAKQAAwABBAkABgAOALoAAwABBAkACgBWAMgAAwABBAkACwAmAR5WaWRlb0pTUmVndWxhclZpZGVvSlNWaWRlb0pTVmVyc2lvbiAxLjBWaWRlb0pTR2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20AVgBpAGQAZQBvAEoAUwBSAGUAZwB1AGwAYQByAFYAaQBkAGUAbwBKAFMAVgBpAGQAZQBvAEoAUwBWAGUAcgBzAGkAbwBuACAAMQAuADAAVgBpAGQAZQBvAEoAUwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBEwEUARUBFgEXARgBGQEaARsBHAEdAR4EcGxheQtwbGF5LWNpcmNsZQVwYXVzZQt2b2x1bWUtbXV0ZQp2b2x1bWUtbG93CnZvbHVtZS1taWQLdm9sdW1lLWhpZ2gQZnVsbHNjcmVlbi1lbnRlcg9mdWxsc2NyZWVuLWV4aXQGc3F1YXJlB3NwaW5uZXIJc3VidGl0bGVzCGNhcHRpb25zCGNoYXB0ZXJzBXNoYXJlA2NvZwZjaXJjbGUOY2lyY2xlLW91dGxpbmUTY2lyY2xlLWlubmVyLWNpcmNsZQJoZAZjYW5jZWwGcmVwbGF5CGZhY2Vib29rBWdwbHVzCGxpbmtlZGluB3R3aXR0ZXIGdHVtYmxyCXBpbnRlcmVzdBFhdWRpby1kZXNjcmlwdGlvbgAAAAAA) format("truetype"); + src: url(data:application/font-woff;charset=utf-8;base64,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) format("woff"); font-weight: normal; - font-style: normal; } - -.vjs-icon-play, .video-js .vjs-big-play-button, .video-js .vjs-play-control { + font-style: normal; +} +.vjs-icon-play, .video-js .vjs-play-control .vjs-icon-placeholder, .video-js .vjs-big-play-button .vjs-icon-placeholder:before { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-play:before, .video-js .vjs-big-play-button:before, .video-js .vjs-play-control:before { - content: ""; } + font-style: normal; +} +.vjs-icon-play:before, .video-js .vjs-play-control .vjs-icon-placeholder:before, .video-js .vjs-big-play-button .vjs-icon-placeholder:before { + content: "\f101"; +} .vjs-icon-play-circle { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-play-circle:before { - content: ""; } + font-style: normal; +} +.vjs-icon-play-circle:before { + content: "\f102"; +} -.vjs-icon-pause, .video-js .vjs-play-control.vjs-playing { +.vjs-icon-pause, .video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-pause:before, .video-js .vjs-play-control.vjs-playing:before { - content: ""; } + font-style: normal; +} +.vjs-icon-pause:before, .video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before { + content: "\f103"; +} -.vjs-icon-volume-mute, .video-js .vjs-mute-control.vjs-vol-0, -.video-js .vjs-volume-menu-button.vjs-vol-0 { +.vjs-icon-volume-mute, .video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-volume-mute:before, .video-js .vjs-mute-control.vjs-vol-0:before, - .video-js .vjs-volume-menu-button.vjs-vol-0:before { - content: ""; } + font-style: normal; +} +.vjs-icon-volume-mute:before, .video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before { + content: "\f104"; +} -.vjs-icon-volume-low, .video-js .vjs-mute-control.vjs-vol-1, -.video-js .vjs-volume-menu-button.vjs-vol-1 { +.vjs-icon-volume-low, .video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-volume-low:before, .video-js .vjs-mute-control.vjs-vol-1:before, - .video-js .vjs-volume-menu-button.vjs-vol-1:before { - content: ""; } + font-style: normal; +} +.vjs-icon-volume-low:before, .video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before { + content: "\f105"; +} -.vjs-icon-volume-mid, .video-js .vjs-mute-control.vjs-vol-2, -.video-js .vjs-volume-menu-button.vjs-vol-2 { +.vjs-icon-volume-mid, .video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-volume-mid:before, .video-js .vjs-mute-control.vjs-vol-2:before, - .video-js .vjs-volume-menu-button.vjs-vol-2:before { - content: ""; } + font-style: normal; +} +.vjs-icon-volume-mid:before, .video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before { + content: "\f106"; +} -.vjs-icon-volume-high, .video-js .vjs-mute-control, -.video-js .vjs-volume-menu-button { +.vjs-icon-volume-high, .video-js .vjs-mute-control .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-volume-high:before, .video-js .vjs-mute-control:before, - .video-js .vjs-volume-menu-button:before { - content: ""; } + font-style: normal; +} +.vjs-icon-volume-high:before, .video-js .vjs-mute-control .vjs-icon-placeholder:before { + content: "\f107"; +} -.vjs-icon-fullscreen-enter, .video-js .vjs-fullscreen-control { +.vjs-icon-fullscreen-enter, .video-js .vjs-fullscreen-control .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-fullscreen-enter:before, .video-js .vjs-fullscreen-control:before { - content: ""; } + font-style: normal; +} +.vjs-icon-fullscreen-enter:before, .video-js .vjs-fullscreen-control .vjs-icon-placeholder:before { + content: "\f108"; +} -.vjs-icon-fullscreen-exit, .video-js.vjs-fullscreen .vjs-fullscreen-control { +.vjs-icon-fullscreen-exit, .video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-fullscreen-exit:before, .video-js.vjs-fullscreen .vjs-fullscreen-control:before { - content: ""; } + font-style: normal; +} +.vjs-icon-fullscreen-exit:before, .video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before { + content: "\f109"; +} .vjs-icon-square { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-square:before { - content: ""; } + font-style: normal; +} +.vjs-icon-square:before { + content: "\f10a"; +} .vjs-icon-spinner { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-spinner:before { - content: ""; } + font-style: normal; +} +.vjs-icon-spinner:before { + content: "\f10b"; +} -.vjs-icon-subtitles, .video-js .vjs-subtitles-button { +.vjs-icon-subtitles, .video-js .vjs-subs-caps-button .vjs-icon-placeholder, +.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder, +.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder, +.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder, +.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js .vjs-subtitles-button .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-subtitles:before, .video-js .vjs-subtitles-button:before { - content: ""; } + font-style: normal; +} +.vjs-icon-subtitles:before, .video-js .vjs-subs-caps-button .vjs-icon-placeholder:before, +.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before, +.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before, +.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before, +.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js .vjs-subtitles-button .vjs-icon-placeholder:before { + content: "\f10c"; +} -.vjs-icon-captions, .video-js .vjs-captions-button { +.vjs-icon-captions, .video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder, +.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js .vjs-captions-button .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-captions:before, .video-js .vjs-captions-button:before { - content: ""; } + font-style: normal; +} +.vjs-icon-captions:before, .video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before, +.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js .vjs-captions-button .vjs-icon-placeholder:before { + content: "\f10d"; +} -.vjs-icon-chapters, .video-js .vjs-chapters-button { +.vjs-icon-chapters, .video-js .vjs-chapters-button .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-chapters:before, .video-js .vjs-chapters-button:before { - content: ""; } + font-style: normal; +} +.vjs-icon-chapters:before, .video-js .vjs-chapters-button .vjs-icon-placeholder:before { + content: "\f10e"; +} .vjs-icon-share { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-share:before { - content: ""; } + font-style: normal; +} +.vjs-icon-share:before { + content: "\f10f"; +} .vjs-icon-cog { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-cog:before { - content: ""; } + font-style: normal; +} +.vjs-icon-cog:before { + content: "\f110"; +} -.vjs-icon-circle, .video-js .vjs-mouse-display, .video-js .vjs-play-progress, .video-js .vjs-volume-level { +.vjs-icon-circle, .vjs-seek-to-live-control .vjs-icon-placeholder, .video-js .vjs-volume-level, .video-js .vjs-play-progress { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-circle:before, .video-js .vjs-mouse-display:before, .video-js .vjs-play-progress:before, .video-js .vjs-volume-level:before { - content: ""; } + font-style: normal; +} +.vjs-icon-circle:before, .vjs-seek-to-live-control .vjs-icon-placeholder:before, .video-js .vjs-volume-level:before, .video-js .vjs-play-progress:before { + content: "\f111"; +} .vjs-icon-circle-outline { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-circle-outline:before { - content: ""; } + font-style: normal; +} +.vjs-icon-circle-outline:before { + content: "\f112"; +} .vjs-icon-circle-inner-circle { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-circle-inner-circle:before { - content: ""; } + font-style: normal; +} +.vjs-icon-circle-inner-circle:before { + content: "\f113"; +} .vjs-icon-hd { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-hd:before { - content: ""; } + font-style: normal; +} +.vjs-icon-hd:before { + content: "\f114"; +} -.vjs-icon-cancel, .video-js .vjs-control.vjs-close-button { +.vjs-icon-cancel, .video-js .vjs-control.vjs-close-button .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-cancel:before, .video-js .vjs-control.vjs-close-button:before { - content: ""; } + font-style: normal; +} +.vjs-icon-cancel:before, .video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before { + content: "\f115"; +} -.vjs-icon-replay { +.vjs-icon-replay, .video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-replay:before { - content: ""; } + font-style: normal; +} +.vjs-icon-replay:before, .video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before { + content: "\f116"; +} .vjs-icon-facebook { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-facebook:before { - content: ""; } + font-style: normal; +} +.vjs-icon-facebook:before { + content: "\f117"; +} .vjs-icon-gplus { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-gplus:before { - content: ""; } + font-style: normal; +} +.vjs-icon-gplus:before { + content: "\f118"; +} .vjs-icon-linkedin { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-linkedin:before { - content: ""; } + font-style: normal; +} +.vjs-icon-linkedin:before { + content: "\f119"; +} .vjs-icon-twitter { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-twitter:before { - content: ""; } + font-style: normal; +} +.vjs-icon-twitter:before { + content: "\f11a"; +} .vjs-icon-tumblr { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-tumblr:before { - content: ""; } + font-style: normal; +} +.vjs-icon-tumblr:before { + content: "\f11b"; +} .vjs-icon-pinterest { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-pinterest:before { - content: ""; } + font-style: normal; +} +.vjs-icon-pinterest:before { + content: "\f11c"; +} -.vjs-icon-audio-description, .video-js .vjs-descriptions-button { +.vjs-icon-audio-description, .video-js .vjs-descriptions-button .vjs-icon-placeholder { font-family: VideoJS; font-weight: normal; - font-style: normal; } - .vjs-icon-audio-description:before, .video-js .vjs-descriptions-button:before { - content: ""; } + font-style: normal; +} +.vjs-icon-audio-description:before, .video-js .vjs-descriptions-button .vjs-icon-placeholder:before { + content: "\f11d"; +} + +.vjs-icon-audio, .video-js .vjs-audio-button .vjs-icon-placeholder { + font-family: VideoJS; + font-weight: normal; + font-style: normal; +} +.vjs-icon-audio:before, .video-js .vjs-audio-button .vjs-icon-placeholder:before { + content: "\f11e"; +} + +.vjs-icon-next-item { + font-family: VideoJS; + font-weight: normal; + font-style: normal; +} +.vjs-icon-next-item:before { + content: "\f11f"; +} + +.vjs-icon-previous-item { + font-family: VideoJS; + font-weight: normal; + font-style: normal; +} +.vjs-icon-previous-item:before { + content: "\f120"; +} + +.vjs-icon-picture-in-picture-enter, .video-js .vjs-picture-in-picture-control .vjs-icon-placeholder { + font-family: VideoJS; + font-weight: normal; + font-style: normal; +} +.vjs-icon-picture-in-picture-enter:before, .video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before { + content: "\f121"; +} + +.vjs-icon-picture-in-picture-exit, .video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder { + font-family: VideoJS; + font-weight: normal; + font-style: normal; +} +.vjs-icon-picture-in-picture-exit:before, .video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before { + content: "\f122"; +} .video-js { display: block; @@ -243,20 +346,25 @@ font-weight: normal; font-style: normal; font-family: Arial, Helvetica, sans-serif; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; } - .video-js:-moz-full-screen { - position: absolute; } - .video-js:-webkit-full-screen { - width: 100% !important; - height: 100% !important; } + word-break: initial; +} +.video-js:-moz-full-screen { + position: absolute; +} +.video-js:-webkit-full-screen { + width: 100% !important; + height: 100% !important; +} + +.video-js[tabindex="-1"] { + outline: none; +} .video-js *, .video-js *:before, .video-js *:after { - box-sizing: inherit; } + box-sizing: inherit; +} .video-js ul { font-family: inherit; @@ -266,37 +374,53 @@ margin-left: 0; margin-right: 0; margin-top: 0; - margin-bottom: 0; } + margin-bottom: 0; +} .video-js.vjs-fluid, .video-js.vjs-16-9, -.video-js.vjs-4-3 { +.video-js.vjs-4-3, +.video-js.vjs-9-16, +.video-js.vjs-1-1 { width: 100%; max-width: 100%; - height: 0; } + height: 0; +} .video-js.vjs-16-9 { - padding-top: 56.25%; } + padding-top: 56.25%; +} .video-js.vjs-4-3 { - padding-top: 75%; } + padding-top: 75%; +} + +.video-js.vjs-9-16 { + padding-top: 177.7777777778%; +} + +.video-js.vjs-1-1 { + padding-top: 100%; +} .video-js.vjs-fill { width: 100%; - height: 100%; } + height: 100%; +} .video-js .vjs-tech { position: absolute; top: 0; left: 0; width: 100%; - height: 100%; } + height: 100%; +} body.vjs-full-window { padding: 0; margin: 0; height: 100%; - overflow-y: auto; } +} .vjs-full-window .video-js.vjs-fullscreen { position: fixed; @@ -305,34 +429,41 @@ body.vjs-full-window { left: 0; top: 0; bottom: 0; - right: 0; } + right: 0; +} -.video-js.vjs-fullscreen { +.video-js.vjs-fullscreen:not(.vjs-ios-native-fs) { width: 100% !important; height: 100% !important; - padding-top: 0 !important; } + padding-top: 0 !important; +} .video-js.vjs-fullscreen.vjs-user-inactive { - cursor: none; } + cursor: none; +} .vjs-hidden { - display: none !important; } + display: none !important; +} .vjs-disabled { opacity: 0.5; - cursor: default; } + cursor: default; +} .video-js .vjs-offscreen { height: 1px; left: -9999px; position: absolute; top: 0; - width: 1px; } + width: 1px; +} .vjs-lock-showing { display: block !important; - opacity: 1; - visibility: visible; } + opacity: 1 !important; + visibility: visible !important; +} .vjs-no-js { padding: 20px; @@ -343,16 +474,18 @@ body.vjs-full-window { text-align: center; width: 300px; height: 150px; - margin: 0px auto; } + margin: 0px auto; +} .vjs-no-js a, .vjs-no-js a:visited { - color: #66A8CC; } + color: #66A8CC; +} .video-js .vjs-big-play-button { font-size: 3em; line-height: 1.5em; - height: 1.5em; + height: 1.63332em; width: 3em; display: block; position: absolute; @@ -364,43 +497,40 @@ body.vjs-full-window { border: 0.06666em solid #fff; background-color: #2B333F; background-color: rgba(43, 51, 63, 0.7); - -webkit-border-radius: 0.3em; - -moz-border-radius: 0.3em; border-radius: 0.3em; - -webkit-transition: all 0.4s; - -moz-transition: all 0.4s; - -o-transition: all 0.4s; - transition: all 0.4s; } - + transition: all 0.4s; +} .vjs-big-play-centered .vjs-big-play-button { top: 50%; left: 50%; - margin-top: -0.75em; - margin-left: -1.5em; } + margin-top: -0.81666em; + margin-left: -1.5em; +} .video-js:hover .vjs-big-play-button, .video-js .vjs-big-play-button:focus { - outline: 0; border-color: #fff; background-color: #73859f; background-color: rgba(115, 133, 159, 0.5); - -webkit-transition: all 0s; - -moz-transition: all 0s; - -o-transition: all 0s; - transition: all 0s; } + transition: all 0s; +} .vjs-controls-disabled .vjs-big-play-button, .vjs-has-started .vjs-big-play-button, .vjs-using-native-controls .vjs-big-play-button, .vjs-error .vjs-big-play-button { - display: none; } + display: none; +} + +.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause .vjs-big-play-button { + display: block; +} .video-js button { background: none; border: none; color: inherit; display: inline-block; - overflow: visible; font-size: inherit; line-height: inherit; text-transform: none; @@ -408,7 +538,13 @@ body.vjs-full-window { transition: none; -webkit-appearance: none; -moz-appearance: none; - appearance: none; } + appearance: none; +} + +.vjs-control .vjs-button { + width: 100%; + height: 100%; +} .video-js .vjs-control.vjs-close-button { cursor: pointer; @@ -416,26 +552,52 @@ body.vjs-full-window { position: absolute; right: 0; top: 0.5em; - z-index: 2; } + z-index: 2; +} +.video-js .vjs-modal-dialog { + background: rgba(0, 0, 0, 0.8); + background: linear-gradient(180deg, rgba(0, 0, 0, 0.8), rgba(255, 255, 255, 0)); + overflow: auto; +} + +.video-js .vjs-modal-dialog > * { + box-sizing: border-box; +} + +.vjs-modal-dialog .vjs-modal-dialog-content { + font-size: 1.2em; + line-height: 1.5; + padding: 20px 24px; + z-index: 1; +} .vjs-menu-button { - cursor: pointer; } + cursor: pointer; +} .vjs-menu-button.vjs-disabled { - cursor: default; } + cursor: default; +} .vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu { - display: none; } + display: none; +} .vjs-menu .vjs-menu-content { display: block; padding: 0; margin: 0; + font-family: Arial, Helvetica, sans-serif; overflow: auto; - font-family: Arial, Helvetica, sans-serif; } +} -.vjs-scrubbing .vjs-menu-button:hover .vjs-menu { - display: none; } +.vjs-menu .vjs-menu-content > * { + box-sizing: border-box; +} + +.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu { + display: none; +} .vjs-menu li { list-style: none; @@ -444,19 +606,28 @@ body.vjs-full-window { line-height: 1.4em; font-size: 1.2em; text-align: center; - text-transform: lowercase; } + text-transform: lowercase; +} -.vjs-menu li:focus, -.vjs-menu li:hover { - outline: 0; +.vjs-menu li.vjs-menu-item:focus, +.vjs-menu li.vjs-menu-item:hover, +.js-focus-visible .vjs-menu li.vjs-menu-item:hover { background-color: #73859f; - background-color: rgba(115, 133, 159, 0.5); } + background-color: rgba(115, 133, 159, 0.5); +} .vjs-menu li.vjs-selected, .vjs-menu li.vjs-selected:focus, -.vjs-menu li.vjs-selected:hover { +.vjs-menu li.vjs-selected:hover, +.js-focus-visible .vjs-menu li.vjs-selected:hover { background-color: #fff; - color: #2B333F; } + color: #2B333F; +} + +.video-js .vjs-menu *:not(.vjs-selected):focus:not(:focus-visible), +.js-focus-visible .vjs-menu *:not(.vjs-selected):focus:not(.focus-visible) { + background: none; +} .vjs-menu li.vjs-menu-title { text-align: center; @@ -466,7 +637,8 @@ body.vjs-full-window { padding: 0; margin: 0 0 0.3em 0; font-weight: bold; - cursor: default; } + cursor: default; +} .vjs-menu-button-popup .vjs-menu { display: none; @@ -476,7 +648,8 @@ body.vjs-full-window { left: -3em; height: 0em; margin-bottom: 1.5em; - border-top-color: rgba(43, 51, 63, 0.7); } + border-top-color: rgba(43, 51, 63, 0.7); +} .vjs-menu-button-popup .vjs-menu .vjs-menu-content { background-color: #2B333F; @@ -484,33 +657,48 @@ body.vjs-full-window { position: absolute; width: 100%; bottom: 1.5em; - max-height: 15em; } + max-height: 15em; +} -.vjs-workinghover .vjs-menu-button-popup:hover .vjs-menu, +.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content, +.vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content { + max-height: 5em; +} + +.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content { + max-height: 10em; +} + +.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content { + max-height: 14em; +} + +.vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content, +.vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content, +.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content { + max-height: 25em; +} + +.vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu, .vjs-menu-button-popup .vjs-menu.vjs-lock-showing { - display: block; } + display: block; +} .video-js .vjs-menu-button-inline { - -webkit-transition: all 0.4s; - -moz-transition: all 0.4s; - -o-transition: all 0.4s; transition: all 0.4s; - overflow: hidden; } + overflow: hidden; +} .video-js .vjs-menu-button-inline:before { - width: 2.222222222em; } + width: 2.222222222em; +} .video-js .vjs-menu-button-inline:hover, .video-js .vjs-menu-button-inline:focus, .video-js .vjs-menu-button-inline.vjs-slider-active, .video-js.vjs-no-flex .vjs-menu-button-inline { - width: 12em; } - -.video-js .vjs-menu-button-inline.vjs-slider-active { - -webkit-transition: none; - -moz-transition: none; - -o-transition: none; - transition: none; } + width: 12em; +} .vjs-menu-button-inline .vjs-menu { opacity: 0; @@ -521,33 +709,35 @@ body.vjs-full-window { top: 0; padding: 0; margin: 0; - -webkit-transition: all 0.4s; - -moz-transition: all 0.4s; - -o-transition: all 0.4s; - transition: all 0.4s; } + transition: all 0.4s; +} .vjs-menu-button-inline:hover .vjs-menu, .vjs-menu-button-inline:focus .vjs-menu, .vjs-menu-button-inline.vjs-slider-active .vjs-menu { display: block; - opacity: 1; } + opacity: 1; +} .vjs-no-flex .vjs-menu-button-inline .vjs-menu { display: block; opacity: 1; position: relative; - width: auto; } + width: auto; +} .vjs-no-flex .vjs-menu-button-inline:hover .vjs-menu, .vjs-no-flex .vjs-menu-button-inline:focus .vjs-menu, .vjs-no-flex .vjs-menu-button-inline.vjs-slider-active .vjs-menu { - width: auto; } + width: auto; +} .vjs-menu-button-inline .vjs-menu-content { width: auto; height: 100%; margin: 0; - overflow: hidden; } + overflow: hidden; +} .video-js .vjs-control-bar { display: none; @@ -556,202 +746,188 @@ body.vjs-full-window { bottom: 0; left: 0; right: 0; - height: 3.0em; + height: 3em; background-color: #2B333F; - background-color: rgba(43, 51, 63, 0.7); } + background-color: rgba(43, 51, 63, 0.7); +} .vjs-has-started .vjs-control-bar { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; display: flex; visibility: visible; opacity: 1; - -webkit-transition: visibility 0.1s, opacity 0.1s; - -moz-transition: visibility 0.1s, opacity 0.1s; - -o-transition: visibility 0.1s, opacity 0.1s; - transition: visibility 0.1s, opacity 0.1s; } + transition: visibility 0.1s, opacity 0.1s; +} .vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar { visibility: visible; opacity: 0; - -webkit-transition: visibility 1s, opacity 1s; - -moz-transition: visibility 1s, opacity 1s; - -o-transition: visibility 1s, opacity 1s; - transition: visibility 1s, opacity 1s; } - @media \0screen { - .vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar { - visibility: hidden; } } + pointer-events: none; + transition: visibility 1s, opacity 1s; +} .vjs-controls-disabled .vjs-control-bar, .vjs-using-native-controls .vjs-control-bar, .vjs-error .vjs-control-bar { - display: none !important; } + display: none !important; +} .vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar { opacity: 1; - visibility: visible; } - -@media \0screen { - .vjs-user-inactive.vjs-playing .vjs-control-bar :before { - content: ""; } } + visibility: visible; +} .vjs-has-started.vjs-no-flex .vjs-control-bar { - display: table; } + display: table; +} .video-js .vjs-control { - outline: none; position: relative; text-align: center; margin: 0; padding: 0; height: 100%; width: 4em; - -webkit-box-flex: none; - -moz-box-flex: none; - -webkit-flex: none; - -ms-flex: none; - flex: none; } - .video-js .vjs-control:before { - font-size: 1.8em; - line-height: 1.67; } + flex: none; +} + +.vjs-button > .vjs-icon-placeholder:before { + font-size: 1.8em; + line-height: 1.67; +} + +.vjs-button > .vjs-icon-placeholder { + display: block; +} .video-js .vjs-control:focus:before, .video-js .vjs-control:hover:before, .video-js .vjs-control:focus { - text-shadow: 0em 0em 1em white; } + text-shadow: 0em 0em 1em white; +} .video-js .vjs-control-text { border: 0; clip: rect(0 0 0 0); height: 1px; - margin: -1px; overflow: hidden; padding: 0; position: absolute; - width: 1px; } + width: 1px; +} .vjs-no-flex .vjs-control { display: table-cell; - vertical-align: middle; } + vertical-align: middle; +} .video-js .vjs-custom-control-spacer { - display: none; } + display: none; +} .video-js .vjs-progress-control { - -webkit-box-flex: auto; - -moz-box-flex: auto; - -webkit-flex: auto; - -ms-flex: auto; + cursor: pointer; flex: auto; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; display: flex; - -webkit-box-align: center; - -webkit-align-items: center; - -ms-flex-align: center; align-items: center; - min-width: 4em; } + min-width: 4em; + touch-action: none; +} + +.video-js .vjs-progress-control.disabled { + cursor: default; +} .vjs-live .vjs-progress-control { - display: none; } + display: none; +} + +.vjs-liveui .vjs-progress-control { + display: flex; + align-items: center; +} + +.vjs-no-flex .vjs-progress-control { + width: auto; +} .video-js .vjs-progress-holder { - -webkit-box-flex: auto; - -moz-box-flex: auto; - -webkit-flex: auto; - -ms-flex: auto; flex: auto; - -webkit-transition: all 0.2s; - -moz-transition: all 0.2s; - -o-transition: all 0.2s; transition: all 0.2s; - height: 0.3em; } + height: 0.3em; +} + +.video-js .vjs-progress-control .vjs-progress-holder { + margin: 0 10px; +} .video-js .vjs-progress-control:hover .vjs-progress-holder { - font-size: 1.666666666666666666em; } + font-size: 1.6666666667em; +} -/* If we let the font size grow as much as everything else, the current time tooltip ends up - ginormous. If you'd like to enable the current time tooltip all the time, this should be disabled - to avoid a weird hitch when you roll off the hover. */ -.video-js .vjs-progress-control:hover .vjs-time-tooltip, -.video-js .vjs-progress-control:hover .vjs-mouse-display:after, -.video-js .vjs-progress-control:hover .vjs-play-progress:after { - font-family: Arial, Helvetica, sans-serif; - visibility: visible; - font-size: 0.6em; } +.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled { + font-size: 1em; +} .video-js .vjs-progress-holder .vjs-play-progress, .video-js .vjs-progress-holder .vjs-load-progress, -.video-js .vjs-progress-holder .vjs-tooltip-progress-bar, .video-js .vjs-progress-holder .vjs-load-progress div { position: absolute; display: block; - height: 0.3em; + height: 100%; margin: 0; padding: 0; width: 0; - left: 0; - top: 0; } - -.video-js .vjs-mouse-display:before { - display: none; } +} .video-js .vjs-play-progress { - background-color: #fff; } - .video-js .vjs-play-progress:before { - position: absolute; - top: -0.333333333333333em; - right: -0.5em; - font-size: 0.9em; } + background-color: #fff; +} +.video-js .vjs-play-progress:before { + font-size: 0.9em; + position: absolute; + right: -0.5em; + top: -0.3333333333em; + z-index: 1; +} -.video-js .vjs-time-tooltip, -.video-js .vjs-mouse-display:after, -.video-js .vjs-play-progress:after { - visibility: hidden; +.video-js .vjs-load-progress { + background: rgba(115, 133, 159, 0.5); +} + +.video-js .vjs-load-progress div { + background: rgba(115, 133, 159, 0.75); +} + +.video-js .vjs-time-tooltip { + background-color: #fff; + background-color: rgba(255, 255, 255, 0.8); + border-radius: 0.3em; + color: #000; + float: right; + font-family: Arial, Helvetica, sans-serif; + font-size: 1em; + padding: 6px 8px 8px 8px; pointer-events: none; position: absolute; top: -3.4em; - right: -1.9em; - font-size: 0.9em; - color: #000; - content: attr(data-current-time); - padding: 6px 8px 8px 8px; - background-color: #fff; - background-color: rgba(255, 255, 255, 0.8); - -webkit-border-radius: 0.3em; - -moz-border-radius: 0.3em; - border-radius: 0.3em; } + visibility: hidden; + z-index: 1; +} -.video-js .vjs-time-tooltip, -.video-js .vjs-play-progress:before, -.video-js .vjs-play-progress:after { - z-index: 1; } +.video-js .vjs-progress-holder:focus .vjs-time-tooltip { + display: none; +} -.video-js .vjs-progress-control .vjs-keep-tooltips-inside:after { - display: none; } +.video-js .vjs-progress-control:hover .vjs-time-tooltip, +.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip { + display: block; + font-size: 0.6em; + visibility: visible; +} -.video-js .vjs-load-progress { - background: #bfc7d3; - background: rgba(115, 133, 159, 0.5); } - -.video-js .vjs-load-progress div { - background: white; - background: rgba(115, 133, 159, 0.75); } - -.video-js.vjs-no-flex .vjs-progress-control { - width: auto; } - -.video-js .vjs-time-tooltip { - display: inline-block; - height: 2.4em; - position: relative; - float: right; - right: -1.9em; } - -.vjs-tooltip-progress-bar { - visibility: hidden; } +.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip { + font-size: 1em; +} .video-js .vjs-progress-control .vjs-mouse-display { display: none; @@ -759,147 +935,279 @@ body.vjs-full-window { width: 1px; height: 100%; background-color: #000; - z-index: 1; } + z-index: 1; +} .vjs-no-flex .vjs-progress-control .vjs-mouse-display { - z-index: 0; } + z-index: 0; +} .video-js .vjs-progress-control:hover .vjs-mouse-display { - display: block; } + display: block; +} -.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display, -.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display:after { +.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display { visibility: hidden; opacity: 0; - -webkit-transition: visibility 1s, opacity 1s; - -moz-transition: visibility 1s, opacity 1s; - -o-transition: visibility 1s, opacity 1s; - transition: visibility 1s, opacity 1s; } + transition: visibility 1s, opacity 1s; +} -.video-js.vjs-user-inactive.vjs-no-flex .vjs-progress-control .vjs-mouse-display, -.video-js.vjs-user-inactive.vjs-no-flex .vjs-progress-control .vjs-mouse-display:after { - display: none; } +.video-js.vjs-user-inactive.vjs-no-flex .vjs-progress-control .vjs-mouse-display { + display: none; +} -.vjs-mouse-display .vjs-time-tooltip, -.video-js .vjs-progress-control .vjs-mouse-display:after { +.vjs-mouse-display .vjs-time-tooltip { color: #fff; background-color: #000; - background-color: rgba(0, 0, 0, 0.8); } + background-color: rgba(0, 0, 0, 0.8); +} .video-js .vjs-slider { - outline: 0; position: relative; cursor: pointer; padding: 0; margin: 0 0.45em 0 0.45em; + /* iOS Safari */ + -webkit-touch-callout: none; + /* Safari */ + -webkit-user-select: none; + /* Konqueror HTML */ + /* Firefox */ + -moz-user-select: none; + /* Internet Explorer/Edge */ + -ms-user-select: none; + /* Non-prefixed version, currently supported by Chrome and Opera */ + user-select: none; background-color: #73859f; - background-color: rgba(115, 133, 159, 0.5); } + background-color: rgba(115, 133, 159, 0.5); +} + +.video-js .vjs-slider.disabled { + cursor: default; +} .video-js .vjs-slider:focus { text-shadow: 0em 0em 1em white; - -webkit-box-shadow: 0 0 1em #fff; - -moz-box-shadow: 0 0 1em #fff; - box-shadow: 0 0 1em #fff; } + box-shadow: 0 0 1em #fff; +} -.video-js .vjs-mute-control, -.video-js .vjs-volume-menu-button { +.video-js .vjs-mute-control { cursor: pointer; - -webkit-box-flex: none; - -moz-box-flex: none; - -webkit-flex: none; - -ms-flex: none; - flex: none; } - -.video-js .vjs-volume-control { - width: 5em; - -webkit-box-flex: none; - -moz-box-flex: none; - -webkit-flex: none; - -ms-flex: none; flex: none; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; +} +.video-js .vjs-volume-control { + cursor: pointer; + margin-right: 1em; display: flex; - -webkit-box-align: center; - -webkit-align-items: center; - -ms-flex-align: center; - align-items: center; } +} + +.video-js .vjs-volume-control.vjs-volume-horizontal { + width: 5em; +} + +.video-js .vjs-volume-panel .vjs-volume-control { + visibility: visible; + opacity: 0; + width: 1px; + height: 1px; + margin-left: -1px; +} + +.video-js .vjs-volume-panel { + transition: width 1s; +} +.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control, .video-js .vjs-volume-panel:active .vjs-volume-control, .video-js .vjs-volume-panel:focus .vjs-volume-control, .video-js .vjs-volume-panel .vjs-volume-control:active, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control, .video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active { + visibility: visible; + opacity: 1; + position: relative; + transition: visibility 0.1s, opacity 0.1s, height 0.1s, width 0.1s, left 0s, top 0s; +} +.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal { + width: 5em; + height: 3em; + margin-right: 0; +} +.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical { + left: -3.5em; + transition: left 0s; +} +.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active { + width: 10em; + transition: width 0.1s; +} +.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only { + width: 4em; +} + +.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical { + height: 8em; + width: 3em; + left: -3000em; + transition: visibility 1s, opacity 1s, height 1s 1s, width 1s 1s, left 1s 1s, top 1s 1s; +} + +.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal { + transition: visibility 1s, opacity 1s, height 1s 1s, width 1s, left 1s 1s, top 1s 1s; +} + +.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal { + width: 5em; + height: 3em; + visibility: visible; + opacity: 1; + position: relative; + transition: none; +} + +.video-js.vjs-no-flex .vjs-volume-control.vjs-volume-vertical, +.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical { + position: absolute; + bottom: 3em; + left: 0.5em; +} + +.video-js .vjs-volume-panel { + display: flex; +} .video-js .vjs-volume-bar { - margin: 1.35em 0.45em; } + margin: 1.35em 0.45em; +} .vjs-volume-bar.vjs-slider-horizontal { width: 5em; - height: 0.3em; } + height: 0.3em; +} .vjs-volume-bar.vjs-slider-vertical { width: 0.3em; height: 5em; - margin: 1.35em auto; } + margin: 1.35em auto; +} .video-js .vjs-volume-level { position: absolute; bottom: 0; left: 0; - background-color: #fff; } - .video-js .vjs-volume-level:before { - position: absolute; - font-size: 0.9em; } + background-color: #fff; +} +.video-js .vjs-volume-level:before { + position: absolute; + font-size: 0.9em; + z-index: 1; +} .vjs-slider-vertical .vjs-volume-level { - width: 0.3em; } - .vjs-slider-vertical .vjs-volume-level:before { - top: -0.5em; - left: -0.3em; } + width: 0.3em; +} +.vjs-slider-vertical .vjs-volume-level:before { + top: -0.5em; + left: -0.3em; + z-index: 1; +} .vjs-slider-horizontal .vjs-volume-level { - height: 0.3em; } - .vjs-slider-horizontal .vjs-volume-level:before { - top: -0.3em; - right: -0.5em; } + height: 0.3em; +} +.vjs-slider-horizontal .vjs-volume-level:before { + top: -0.3em; + right: -0.5em; +} + +.video-js .vjs-volume-panel.vjs-volume-panel-vertical { + width: 4em; +} .vjs-volume-bar.vjs-slider-vertical .vjs-volume-level { - height: 100%; } + height: 100%; +} .vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level { - width: 100%; } + width: 100%; +} -.vjs-menu-button-popup.vjs-volume-menu-button .vjs-menu { - display: block; - width: 0; - height: 0; - border-top-color: transparent; } - -.vjs-menu-button-popup.vjs-volume-menu-button-vertical .vjs-menu { - left: 0.5em; - height: 8em; } - -.vjs-menu-button-popup.vjs-volume-menu-button-horizontal .vjs-menu { - left: -2em; } - -.vjs-menu-button-popup.vjs-volume-menu-button .vjs-menu-content { - height: 0; - width: 0; - overflow-x: hidden; - overflow-y: hidden; } - -.vjs-volume-menu-button-vertical:hover .vjs-menu-content, -.vjs-volume-menu-button-vertical:focus .vjs-menu-content, -.vjs-volume-menu-button-vertical.vjs-slider-active .vjs-menu-content, -.vjs-volume-menu-button-vertical .vjs-lock-showing .vjs-menu-content { +.video-js .vjs-volume-vertical { + width: 3em; height: 8em; - width: 2.9em; } + bottom: 8em; + background-color: #2B333F; + background-color: rgba(43, 51, 63, 0.7); +} -.vjs-volume-menu-button-horizontal:hover .vjs-menu-content, -.vjs-volume-menu-button-horizontal:focus .vjs-menu-content, -.vjs-volume-menu-button-horizontal .vjs-slider-active .vjs-menu-content, -.vjs-volume-menu-button-horizontal .vjs-lock-showing .vjs-menu-content { - height: 2.9em; - width: 8em; } +.video-js .vjs-volume-horizontal .vjs-menu { + left: -2em; +} -.vjs-volume-menu-button.vjs-menu-button-inline .vjs-menu-content { - background-color: transparent !important; } +.video-js .vjs-volume-tooltip { + background-color: #fff; + background-color: rgba(255, 255, 255, 0.8); + border-radius: 0.3em; + color: #000; + float: right; + font-family: Arial, Helvetica, sans-serif; + font-size: 1em; + padding: 6px 8px 8px 8px; + pointer-events: none; + position: absolute; + top: -3.4em; + visibility: hidden; + z-index: 1; +} + +.video-js .vjs-volume-control:hover .vjs-volume-tooltip, +.video-js .vjs-volume-control:hover .vjs-progress-holder:focus .vjs-volume-tooltip { + display: block; + font-size: 1em; + visibility: visible; +} + +.video-js .vjs-volume-vertical:hover .vjs-volume-tooltip, +.video-js .vjs-volume-vertical:hover .vjs-progress-holder:focus .vjs-volume-tooltip { + left: 1em; + top: -12px; +} + +.video-js .vjs-volume-control.disabled:hover .vjs-volume-tooltip { + font-size: 1em; +} + +.video-js .vjs-volume-control .vjs-mouse-display { + display: none; + position: absolute; + width: 100%; + height: 1px; + background-color: #000; + z-index: 1; +} + +.video-js .vjs-volume-horizontal .vjs-mouse-display { + width: 1px; + height: 100%; +} + +.vjs-no-flex .vjs-volume-control .vjs-mouse-display { + z-index: 0; +} + +.video-js .vjs-volume-control:hover .vjs-mouse-display { + display: block; +} + +.video-js.vjs-user-inactive .vjs-volume-control .vjs-mouse-display { + visibility: hidden; + opacity: 0; + transition: visibility 1s, opacity 1s; +} + +.video-js.vjs-user-inactive.vjs-no-flex .vjs-volume-control .vjs-mouse-display { + display: none; +} + +.vjs-mouse-display .vjs-volume-tooltip { + color: #fff; + background-color: #000; + background-color: rgba(0, 0, 0, 0.8); +} .vjs-poster { display: inline-block; @@ -916,88 +1224,118 @@ body.vjs-full-window { right: 0; bottom: 0; left: 0; - height: 100%; } - -.vjs-poster img { - display: block; - vertical-align: middle; - margin: 0 auto; - max-height: 100%; - padding: 0; - width: 100%; } + height: 100%; +} .vjs-has-started .vjs-poster { - display: none; } + display: none; +} .vjs-audio.vjs-has-started .vjs-poster { - display: block; } - -.vjs-controls-disabled .vjs-poster { - display: none; } + display: block; +} .vjs-using-native-controls .vjs-poster { - display: none; } + display: none; +} .video-js .vjs-live-control { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; display: flex; - -webkit-box-align: flex-start; - -webkit-align-items: flex-start; - -ms-flex-align: flex-start; align-items: flex-start; - -webkit-box-flex: auto; - -moz-box-flex: auto; - -webkit-flex: auto; - -ms-flex: auto; flex: auto; font-size: 1em; - line-height: 3em; } + line-height: 3em; +} .vjs-no-flex .vjs-live-control { display: table-cell; width: auto; - text-align: left; } + text-align: left; +} + +.video-js:not(.vjs-live) .vjs-live-control, +.video-js.vjs-liveui .vjs-live-control { + display: none; +} + +.video-js .vjs-seek-to-live-control { + align-items: center; + cursor: pointer; + flex: none; + display: inline-flex; + height: 100%; + padding-left: 0.5em; + padding-right: 0.5em; + font-size: 1em; + line-height: 3em; + width: auto; + min-width: 4em; +} + +.vjs-no-flex .vjs-seek-to-live-control { + display: table-cell; + width: auto; + text-align: left; +} + +.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control, +.video-js:not(.vjs-live) .vjs-seek-to-live-control { + display: none; +} + +.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge { + cursor: auto; +} + +.vjs-seek-to-live-control .vjs-icon-placeholder { + margin-right: 0.5em; + color: #888; +} + +.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder { + color: red; +} .video-js .vjs-time-control { - -webkit-box-flex: none; - -moz-box-flex: none; - -webkit-flex: none; - -ms-flex: none; flex: none; font-size: 1em; line-height: 3em; min-width: 2em; width: auto; padding-left: 1em; - padding-right: 1em; } + padding-right: 1em; +} .vjs-live .vjs-time-control { - display: none; } + display: none; +} .video-js .vjs-current-time, .vjs-no-flex .vjs-current-time { - display: none; } + display: none; +} .video-js .vjs-duration, .vjs-no-flex .vjs-duration { - display: none; } + display: none; +} .vjs-time-divider { display: none; - line-height: 3em; } + line-height: 3em; +} .vjs-live .vjs-time-divider { - display: none; } + display: none; +} .video-js .vjs-play-control { cursor: pointer; - -webkit-box-flex: none; - -moz-box-flex: none; - -webkit-flex: none; - -ms-flex: none; - flex: none; } +} + +.video-js .vjs-play-control .vjs-icon-placeholder { + flex: none; +} .vjs-text-track-display { position: absolute; @@ -1005,70 +1343,76 @@ body.vjs-full-window { left: 0; right: 0; top: 0; - pointer-events: none; } + pointer-events: none; +} .video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display { - bottom: 1em; } + bottom: 1em; +} .video-js .vjs-text-track { font-size: 1.4em; text-align: center; margin-bottom: 0.1em; - background-color: #000; - background-color: rgba(0, 0, 0, 0.5); } +} .vjs-subtitles { - color: #fff; } + color: #fff; +} .vjs-captions { - color: #fc6; } + color: #fc6; +} .vjs-tt-cue { - display: block; } + display: block; +} video::-webkit-media-text-track-display { - -moz-transform: translateY(-3em); - -ms-transform: translateY(-3em); - -o-transform: translateY(-3em); - -webkit-transform: translateY(-3em); - transform: translateY(-3em); } + transform: translateY(-3em); +} .video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display { - -moz-transform: translateY(-1.5em); - -ms-transform: translateY(-1.5em); - -o-transform: translateY(-1.5em); - -webkit-transform: translateY(-1.5em); - transform: translateY(-1.5em); } + transform: translateY(-1.5em); +} +.video-js .vjs-picture-in-picture-control { + cursor: pointer; + flex: none; +} .video-js .vjs-fullscreen-control { cursor: pointer; - -webkit-box-flex: none; - -moz-box-flex: none; - -webkit-flex: none; - -ms-flex: none; - flex: none; } - + flex: none; +} +.vjs-playback-rate > .vjs-menu-button, .vjs-playback-rate .vjs-playback-rate-value { - font-size: 1.5em; - line-height: 2; position: absolute; top: 0; left: 0; width: 100%; height: 100%; - text-align: center; } +} + +.vjs-playback-rate .vjs-playback-rate-value { + pointer-events: none; + font-size: 1.5em; + line-height: 2; + text-align: center; +} .vjs-playback-rate .vjs-menu { width: 4em; - left: 0em; } + left: 0em; +} .vjs-error .vjs-error-display .vjs-modal-dialog-content { font-size: 1.4em; - text-align: center; } + text-align: center; +} .vjs-error .vjs-error-display:before { color: #fff; - content: 'X'; + content: "X"; font-family: Arial, Helvetica, sans-serif; font-size: 4em; left: 0; @@ -1079,7 +1423,8 @@ video::-webkit-media-text-track-display { text-align: center; top: 50%; vertical-align: middle; - width: 100%; } + width: 100%; +} .vjs-loading-spinner { display: none; @@ -1094,11 +1439,16 @@ video::-webkit-media-text-track-display { background-clip: padding-box; width: 50px; height: 50px; - border-radius: 25px; } + border-radius: 25px; + visibility: hidden; +} .vjs-seeking .vjs-loading-spinner, .vjs-waiting .vjs-loading-spinner { - display: block; } + display: block; + -webkit-animation: vjs-spinner-show 0s linear 0.3s forwards; + animation: vjs-spinner-show 0s linear 0.3s forwards; +} .vjs-loading-spinner:before, .vjs-loading-spinner:after { @@ -1112,159 +1462,287 @@ video::-webkit-media-text-track-display { opacity: 1; border: inherit; border-color: transparent; - border-top-color: white; } + border-top-color: white; +} .vjs-seeking .vjs-loading-spinner:before, .vjs-seeking .vjs-loading-spinner:after, .vjs-waiting .vjs-loading-spinner:before, .vjs-waiting .vjs-loading-spinner:after { -webkit-animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite; - animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite; } + animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite; +} .vjs-seeking .vjs-loading-spinner:before, .vjs-waiting .vjs-loading-spinner:before { - border-top-color: white; } + border-top-color: white; +} .vjs-seeking .vjs-loading-spinner:after, .vjs-waiting .vjs-loading-spinner:after { border-top-color: white; -webkit-animation-delay: 0.44s; - animation-delay: 0.44s; } + animation-delay: 0.44s; +} +@keyframes vjs-spinner-show { + to { + visibility: visible; + } +} +@-webkit-keyframes vjs-spinner-show { + to { + visibility: visible; + } +} @keyframes vjs-spinner-spin { 100% { - transform: rotate(360deg); } } - + transform: rotate(360deg); + } +} @-webkit-keyframes vjs-spinner-spin { 100% { - -webkit-transform: rotate(360deg); } } - + -webkit-transform: rotate(360deg); + } +} @keyframes vjs-spinner-fade { 0% { - border-top-color: #73859f; } + border-top-color: #73859f; + } 20% { - border-top-color: #73859f; } + border-top-color: #73859f; + } 35% { - border-top-color: white; } + border-top-color: white; + } 60% { - border-top-color: #73859f; } + border-top-color: #73859f; + } 100% { - border-top-color: #73859f; } } - + border-top-color: #73859f; + } +} @-webkit-keyframes vjs-spinner-fade { 0% { - border-top-color: #73859f; } + border-top-color: #73859f; + } 20% { - border-top-color: #73859f; } + border-top-color: #73859f; + } 35% { - border-top-color: white; } + border-top-color: white; + } 60% { - border-top-color: #73859f; } + border-top-color: #73859f; + } 100% { - border-top-color: #73859f; } } - + border-top-color: #73859f; + } +} .vjs-chapters-button .vjs-menu ul { - width: 24em; } + width: 24em; +} -.video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-custom-control-spacer { - -webkit-box-flex: auto; - -moz-box-flex: auto; - -webkit-flex: auto; - -ms-flex: auto; - flex: auto; } +.video-js .vjs-subs-caps-button + .vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder { + vertical-align: middle; + display: inline-block; + margin-bottom: -0.1em; +} -.video-js.vjs-layout-tiny:not(.vjs-fullscreen).vjs-no-flex .vjs-custom-control-spacer { - width: auto; } +.video-js .vjs-subs-caps-button + .vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before { + font-family: VideoJS; + content: ""; + font-size: 1.5em; + line-height: inherit; +} -.video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-current-time, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-time-divider, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-duration, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-remaining-time, -.video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-playback-rate, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-progress-control, -.video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-mute-control, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-volume-control, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-volume-menu-button, -.video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-chapters-button, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-captions-button, .video-js.vjs-layout-tiny:not(.vjs-fullscreen) .vjs-subtitles-button { - display: none; } +.video-js .vjs-audio-button + .vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder { + vertical-align: middle; + display: inline-block; + margin-bottom: -0.1em; +} -.video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-current-time, .video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-time-divider, .video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-duration, .video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-remaining-time, -.video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-playback-rate, -.video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-mute-control, .video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-volume-control, .video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-volume-menu-button, -.video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-chapters-button, .video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-captions-button, .video-js.vjs-layout-x-small:not(.vjs-fullscreen) .vjs-subtitles-button { - display: none; } +.video-js .vjs-audio-button + .vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before { + font-family: VideoJS; + content: " "; + font-size: 1.5em; + line-height: inherit; +} -.video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-current-time, .video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-time-divider, .video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-duration, .video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-remaining-time, -.video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-playback-rate, -.video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-mute-control, .video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-volume-control, -.video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-chapters-button, .video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-captions-button, .video-js.vjs-layout-small:not(.vjs-fullscreen) .vjs-subtitles-button { - display: none; } +.video-js.vjs-layout-small .vjs-current-time, +.video-js.vjs-layout-small .vjs-time-divider, +.video-js.vjs-layout-small .vjs-duration, +.video-js.vjs-layout-small .vjs-remaining-time, +.video-js.vjs-layout-small .vjs-playback-rate, +.video-js.vjs-layout-small .vjs-chapters-button, +.video-js.vjs-layout-small .vjs-descriptions-button, +.video-js.vjs-layout-small .vjs-captions-button, +.video-js.vjs-layout-small .vjs-subtitles-button, +.video-js.vjs-layout-small .vjs-audio-button, +.video-js.vjs-layout-small .vjs-volume-control, .video-js.vjs-layout-x-small .vjs-current-time, +.video-js.vjs-layout-x-small .vjs-time-divider, +.video-js.vjs-layout-x-small .vjs-duration, +.video-js.vjs-layout-x-small .vjs-remaining-time, +.video-js.vjs-layout-x-small .vjs-playback-rate, +.video-js.vjs-layout-x-small .vjs-chapters-button, +.video-js.vjs-layout-x-small .vjs-descriptions-button, +.video-js.vjs-layout-x-small .vjs-captions-button, +.video-js.vjs-layout-x-small .vjs-subtitles-button, +.video-js.vjs-layout-x-small .vjs-audio-button, +.video-js.vjs-layout-x-small .vjs-volume-control, .video-js.vjs-layout-tiny .vjs-current-time, +.video-js.vjs-layout-tiny .vjs-time-divider, +.video-js.vjs-layout-tiny .vjs-duration, +.video-js.vjs-layout-tiny .vjs-remaining-time, +.video-js.vjs-layout-tiny .vjs-playback-rate, +.video-js.vjs-layout-tiny .vjs-chapters-button, +.video-js.vjs-layout-tiny .vjs-descriptions-button, +.video-js.vjs-layout-tiny .vjs-captions-button, +.video-js.vjs-layout-tiny .vjs-subtitles-button, +.video-js.vjs-layout-tiny .vjs-audio-button, +.video-js.vjs-layout-tiny .vjs-volume-control { + display: none; +} +.video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover, .video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js.vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js.vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js.vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover { + width: auto; + width: initial; +} +.video-js.vjs-layout-x-small:not(.vjs-liveui) .vjs-subs-caps-button, .video-js.vjs-layout-x-small:not(.vjs-live) .vjs-subs-caps-button, .video-js.vjs-layout-tiny .vjs-subs-caps-button { + display: none; +} +.video-js.vjs-layout-x-small.vjs-liveui .vjs-custom-control-spacer, .video-js.vjs-layout-tiny .vjs-custom-control-spacer { + flex: auto; + display: block; +} +.video-js.vjs-layout-x-small.vjs-liveui.vjs-no-flex .vjs-custom-control-spacer, .video-js.vjs-layout-tiny.vjs-no-flex .vjs-custom-control-spacer { + width: auto; +} +.video-js.vjs-layout-x-small.vjs-liveui .vjs-progress-control, .video-js.vjs-layout-tiny .vjs-progress-control { + display: none; +} -.vjs-caption-settings { - position: relative; - top: 1em; +.vjs-modal-dialog.vjs-text-track-settings { background-color: #2B333F; background-color: rgba(43, 51, 63, 0.75); color: #fff; - margin: 0 auto; - padding: 0.5em; - height: 15em; - font-size: 12px; - width: 40em; } + height: 70%; +} -.vjs-caption-settings .vjs-tracksettings { - top: 0; - bottom: 2em; - left: 0; - right: 0; - position: absolute; - overflow: auto; } +.vjs-text-track-settings .vjs-modal-dialog-content { + display: table; +} -.vjs-caption-settings .vjs-tracksettings-colors, -.vjs-caption-settings .vjs-tracksettings-font { - float: left; } +.vjs-text-track-settings .vjs-track-settings-colors, +.vjs-text-track-settings .vjs-track-settings-font, +.vjs-text-track-settings .vjs-track-settings-controls { + display: table-cell; +} -.vjs-caption-settings .vjs-tracksettings-colors:after, -.vjs-caption-settings .vjs-tracksettings-font:after, -.vjs-caption-settings .vjs-tracksettings-controls:after { - clear: both; } +.vjs-text-track-settings .vjs-track-settings-controls { + text-align: right; + vertical-align: bottom; +} -.vjs-caption-settings .vjs-tracksettings-controls { - position: absolute; - bottom: 1em; - right: 1em; } +@supports (display: grid) { + .vjs-text-track-settings .vjs-modal-dialog-content { + display: grid; + grid-template-columns: 1fr 1fr; + grid-template-rows: 1fr; + padding: 20px 24px 0px 24px; + } -.vjs-caption-settings .vjs-tracksetting { + .vjs-track-settings-controls .vjs-default-button { + margin-bottom: 20px; + } + + .vjs-text-track-settings .vjs-track-settings-controls { + grid-column: 1/-1; + } + + .vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content, +.vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content, +.vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content { + grid-template-columns: 1fr; + } +} +.vjs-track-setting > select { + margin-right: 1em; + margin-bottom: 0.5em; +} + +.vjs-text-track-settings fieldset { margin: 5px; padding: 3px; - min-height: 40px; } + border: none; +} -.vjs-caption-settings .vjs-tracksetting label { +.vjs-text-track-settings fieldset span { + display: inline-block; +} + +.vjs-text-track-settings fieldset span > select { + max-width: 7.3em; +} + +.vjs-text-track-settings legend { + color: #fff; + margin: 0 0 5px 0; +} + +.vjs-text-track-settings .vjs-label { + position: absolute; + clip: rect(1px 1px 1px 1px); + clip: rect(1px, 1px, 1px, 1px); display: block; - width: 100px; - margin-bottom: 5px; } + margin: 0 0 5px 0; + padding: 0; + border: 0; + height: 1px; + width: 1px; + overflow: hidden; +} -.vjs-caption-settings .vjs-tracksetting span { - display: inline; - margin-left: 5px; } +.vjs-track-settings-controls button:focus, +.vjs-track-settings-controls button:active { + outline-style: solid; + outline-width: medium; + background-image: linear-gradient(0deg, #fff 88%, #73859f 100%); +} -.vjs-caption-settings .vjs-tracksetting > div { - margin-bottom: 5px; - min-height: 20px; } +.vjs-track-settings-controls button:hover { + color: rgba(43, 51, 63, 0.75); +} -.vjs-caption-settings .vjs-tracksetting > div:last-child { - margin-bottom: 0; - padding-bottom: 0; - min-height: 0; } +.vjs-track-settings-controls button { + background-color: #fff; + background-image: linear-gradient(-180deg, #fff 88%, #73859f 100%); + color: #2B333F; + cursor: pointer; + border-radius: 2px; +} -.vjs-caption-settings label > input { - margin-right: 10px; } +.vjs-track-settings-controls .vjs-default-button { + margin-right: 1em; +} -.vjs-caption-settings input[type="button"] { - width: 40px; - height: 40px; } +@media print { + .video-js > *:not(.vjs-tech):not(.vjs-poster) { + visibility: hidden; + } +} +.vjs-resize-manager { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border: none; + z-index: -1000; +} -.video-js .vjs-modal-dialog { - background: rgba(0, 0, 0, 0.8); - background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.8), rgba(255, 255, 255, 0)); - background: linear-gradient(180deg, rgba(0, 0, 0, 0.8), rgba(255, 255, 255, 0)); } +.js-focus-visible .video-js *:focus:not(.focus-visible) { + outline: none; +} -.vjs-modal-dialog .vjs-modal-dialog-content { - font-size: 1.2em; - line-height: 1.5; - padding: 20px 24px; - z-index: 1; } +.video-js *:focus:not(:focus-visible) { + outline: none; +} diff --git a/www/css/videojs-resolution-switcher.css b/www/css/videojs-resolution-switcher.css index c175c679..9b9bf1c4 100644 --- a/www/css/videojs-resolution-switcher.css +++ b/www/css/videojs-resolution-switcher.css @@ -1,4 +1,4 @@ -.vjs-resolution-button .vjs-menu-icon:before { +.vjs-resolution-button .vjs-icon-placeholder:before { content: '\f110'; font-family: VideoJS; font-weight: normal; diff --git a/www/js/vjs/dash.all.min.js b/www/js/vjs/dash.all.min.js index 194e9e91..70255cb4 100644 --- a/www/js/vjs/dash.all.min.js +++ b/www/js/vjs/dash.all.min.js @@ -1,30 +1,19 @@ -/*! v2.6.3-2af44f8, 2017-11-08T19:16:10Z */ -!function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c||a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g>6),b.push(128|63&d)):d<65536?(b.push(224|d>>12),b.push(128|63&d>>6),b.push(128|63&d)):(b.push(240|d>>18),b.push(128|63&d>>12),b.push(128|63&d>>6),b.push(128|63&d))}return b},e.decode=function(a){for(var b=[],c=0;c>18)),d.push(b.charAt(63&f>>12)),d.push(b.charAt(63&f>>6)),d.push(b.charAt(63&f))}if(2==a.length-c){var f=(a[c]<<16)+(a[c+1]<<8);d.push(b.charAt(63&f>>18)),d.push(b.charAt(63&f>>12)),d.push(b.charAt(63&f>>6)),d.push("=")}else if(1==a.length-c){var f=a[c]<<16;d.push(b.charAt(63&f>>18)),d.push(b.charAt(63&f>>12)),d.push("==")}return d.join("")},d=function(){for(var a=[],c=0;c=c&&console.log(this.time+" ["+a+"] "+b)}},l=function(a){for(var b=[],c=0;ce&&(k.log("ERROR","Too large cursor position "+this.pos),this.pos=e)},moveCursor:function(a){var b=this.pos+a;if(a>1)for(var c=this.pos+1;c=144&&this.backSpace();var b=c(a);if(this.pos>=e)return void k.log("ERROR","Cannot insert "+a.toString(16)+" ("+b+") at position "+this.pos+". Skipping it!");this.chars[this.pos].setChar(b,this.currPenState),this.moveCursor(1)},clearFromPos:function(a){var b;for(b=a;b0&&(c=a?"["+b.join(" | ")+"]":b.join("\n")),c},getTextAndFormat:function(){return this.rows}};var q=function(a,b){this.chNr=a,this.outputFilter=b,this.mode=null,this.verbose=0,this.displayedMemory=new p,this.nonDisplayedMemory=new p,this.lastOutputScreen=new p,this.currRollUpRow=this.displayedMemory.rows[d-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null};q.prototype={modes:["MODE_ROLL-UP","MODE_POP-ON","MODE_PAINT-ON","MODE_TEXT"],reset:function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.currRollUpRow=this.displayedMemory.rows[d-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.lastCueEndTime=null},getHandler:function(){return this.outputFilter},setHandler:function(a){this.outputFilter=a},setPAC:function(a){this.writeScreen.setPAC(a)},setBkgData:function(a){this.writeScreen.setBkgData(a)},setMode:function(a){a!==this.mode&&(this.mode=a,k.log("INFO","MODE="+a),"MODE_POP-ON"==this.mode?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),"MODE_ROLL-UP"!==this.mode&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=a)},insertChars:function(a){for(var b=0;b=46,b.italics)b.foreground="white";else{var c=Math.floor(a/2)-16,d=["white","green","blue","cyan","red","yellow","magenta"];b.foreground=d[c]}k.log("INFO","MIDROW: "+JSON.stringify(b)),this.writeScreen.setPen(b)},outputDataUpdate:function(){var a=k.time;null!==a&&this.outputFilter&&(this.outputFilter.updateData&&this.outputFilter.updateData(a,this.displayedMemory),null!==this.cueStartTime||this.displayedMemory.isEmpty()?this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,a,this.lastOutputScreen),this.cueStartTime=this.displayedMemory.isEmpty()?null:a):this.cueStartTime=a,this.lastOutputScreen.copy(this.displayedMemory))},cueSplitAtTime:function(a){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,a,this.displayedMemory),this.cueStartTime=a))}};var r=function(a,b,c){this.field=a||1,this.outputs=[b,c],this.channels=[new q(1,b),new q(2,c)],this.currChNr=-1,this.lastCmdA=null,this.lastCmdB=null,this.bufferedData=[],this.startTime=null,this.lastTime=null,this.dataCounters={padding:0,char:0,cmd:0,other:0}};r.prototype={getHandler:function(a){return this.channels[a].getHandler()},setHandler:function(a,b){this.channels[a].setHandler(b)},addData:function(a,b){var c,d,e,f=!1;this.lastTime=a,k.setTime(a);for(var g=0;g=16&&d<=31&&d===this.lastCmdA&&e===this.lastCmdB)this.lastCmdA=null,this.lastCmdB=null,k.log("DEBUG","Repeated command ("+l([d,e])+") is dropped");else if(0!==d||0!==e){if(k.log("DATA","["+l([b[g],b[g+1]])+"] -> ("+l([d,e])+")"),c=this.parseCmd(d,e),c||(c=this.parseMidrow(d,e)),c||(c=this.parsePAC(d,e)),c||(c=this.parseBackgroundAttributes(d,e)),!c&&(f=this.parseChars(d,e)))if(this.currChNr&&this.currChNr>=0){var h=this.channels[this.currChNr-1];h.insertChars(f)}else k.log("WARNING","No channel found yet. TEXT-MODE?");c?this.dataCounters.cmd+=2:f?this.dataCounters.char+=2:(this.dataCounters.other+=2,k.log("WARNING","Couldn't parse cleaned data "+l([d,e])+" orig: "+l([b[g],b[g+1]])))}else this.dataCounters.padding+=2},parseCmd:function(a,b){var c=null,d=(20===a||21===a||28===a||29===a)&&32<=b&&b<=47,e=(23===a||31===a)&&33<=b&&b<=35;if(!d&&!e)return!1;c=20===a||21===a||23===a?1:2;var f=this.channels[c-1];return 20===a||21===a||28===a||29===a?32===b?f.cc_RCL():33===b?f.cc_BS():34===b?f.cc_AOF():35===b?f.cc_AON():36===b?f.cc_DER():37===b?f.cc_RU(2):38===b?f.cc_RU(3):39===b?f.cc_RU(4):40===b?f.cc_FON():41===b?f.cc_RDC():42===b?f.cc_TR():43===b?f.cc_RTD():44===b?f.cc_EDM():45===b?f.cc_CR():46===b?f.cc_ENM():47===b&&f.cc_EOC():f.cc_TO(b-32),this.lastCmdA=a,this.lastCmdB=b,this.currChNr=c,!0},parseMidrow:function(a,b){var c=null;if((17===a||25===a)&&32<=b&&b<=47){if((c=17===a?1:2)!==this.currChNr)return k.log("ERROR","Mismatch channel in midrow parsing"),!1;var d=this.channels[c-1];return d.insertChars([32]),d.cc_MIDROW(b),k.log("DEBUG","MIDROW ("+l([a,b])+")"),this.lastCmdA=a,this.lastCmdB=b,!0}return!1},parsePAC:function(a,b){var c=null,d=null,e=(17<=a&&a<=23||25<=a&&a<=31)&&64<=b&&b<=127,j=(16===a||24===a)&&64<=b&&b<=95;if(!e&&!j)return!1;c=a<=23?1:2,d=64<=b&&b<=95?1===c?f[a]:h[a]:1===c?g[a]:i[a];var k=this.interpretPAC(d,b);return this.channels[c-1].setPAC(k),this.lastCmdA=a,this.lastCmdB=b,this.currChNr=c,!0},interpretPAC:function(a,b){var c=b,d={color:null,italics:!1,indent:null,underline:!1,row:a};return c=b>95?b-96:b-64,d.underline=1==(1&c),c<=13?d.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(c/2)]:c<=15?(d.italics=!0,d.color="white"):d.indent=4*Math.floor((c-16)/2),d},parseChars:function(a,b){var d=null,e=null,f=null;if(a>=25?(d=2,f=a-8):(d=1,f=a),17<=f&&f<=19){var g=b;g=17===f?b+80:18===f?b+112:b+144,k.log("INFO","Special char '"+c(g)+"' in channel "+d),e=[g],this.lastCmdA=a,this.lastCmdB=b}else 32<=a&&a<=127&&(e=0===b?[a]:[a,b],this.lastCmdA=null,this.lastCmdB=null);if(e){var h=l(e);k.log("DEBUG","Char codes = "+h.join(","))}return e},parseBackgroundAttributes:function(a,b){var c,d,e,f,g=(16===a||24===a)&&32<=b&&b<=47,h=(23===a||31===a)&&45<=b&&b<=47;return!(!g&&!h)&&(c={},16===a||24===a?(d=Math.floor((b-32)/2),c.background=j[d],b%2==1&&(c.background=c.background+"_semi")):45===b?c.background="transparent":(c.foreground="black",47===b&&(c.underline=!0)),e=a<24?1:2,f=this.channels[e-1],f.setBkgData(c),this.lastCmdA=a,this.lastCmdB=b,!0)},reset:function(){for(var a=0;a/g,">").replace(/"/g,""").replace(/'/g,"'"):a}function g(a,b,c,d){for(var e=0;e0&&g(a.arrayAccessFormPaths,b,c,d)&&(b[c]=[b[c]])}function i(a){var b=a.split(/[-T:+Z]/g),c=new Date(b[0],b[1]-1,b[2]),d=b[5].split(".");if(c.setHours(b[3],b[4],d[0]),d.length>1&&c.setMilliseconds(d[1]),b[6]&&b[7]){var e=60*b[6]+Number(b[7]);e=0+("-"==(/\d\d-\d\d:\d\d$/.test(a)?"-":"+")?-1*e:e),c.setMinutes(c.getMinutes()-e-c.getTimezoneOffset())}else-1!==a.indexOf("Z",a.length-1)&&(c=new Date(Date.UTC(c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),c.getMilliseconds())));return c}function j(b,c,d){if(a.datetimeAccessFormPaths.length>0){var e=d.split(".#")[0];return g(a.datetimeAccessFormPaths,b,c,e)?i(b):b}return b}function k(b,c,d,e){return!(c==z.ELEMENT_NODE&&a.xmlElementsFilter.length>0)||g(a.xmlElementsFilter,b,d,e)}function l(b,c){if(b.nodeType==z.DOCUMENT_NODE){for(var f=new Object,g=b.childNodes,i=0;i1&&null!=f.__text&&a.skipEmptyTextNodesForObj&&(a.stripWhitespaces&&""==f.__text||""==f.__text.trim())&&delete f.__text:f=f.__cdata,delete f.__cnt,!a.enableToStringFunc||null==f.__text&&null==f.__cdata||(f.toString=function(){return(null!=this.__text?this.__text:"")+(null!=this.__cdata?this.__cdata:"")}),f}if(b.nodeType==z.TEXT_NODE||b.nodeType==z.CDATA_SECTION_NODE)return b.nodeValue}function m(b,c,d,e){var g="<"+(null!=b&&null!=b.__prefix?b.__prefix+":":"")+c;if(null!=d)for(var h=0;h":">"}function n(a,b){return""}function o(a,b){return-1!==a.indexOf(b,a.length-b.length)}function p(b,c){return!!("property"==a.arrayAccessForm&&o(c.toString(),"_asArray")||0==c.toString().indexOf(a.attributePrefix)||0==c.toString().indexOf("__")||b[c]instanceof Function)}function q(a){var b=0;if(a instanceof Object)for(var c in a)p(a,c)||b++;return b}function r(b,c,d){return 0==a.jsonPropertiesFilter.length||""==d||g(a.jsonPropertiesFilter,b,c,d)}function s(b){var c=[];if(b instanceof Object)for(var d in b)-1==d.toString().indexOf("__")&&0==d.toString().indexOf(a.attributePrefix)&&c.push(d);return c}function t(b){var c="";return null!=b.__cdata&&(c+=""),null!=b.__text&&(a.escapeMode?c+=f(b.__text):c+=b.__text),c}function u(b){var c="";return b instanceof Object?c+=t(b):null!=b&&(a.escapeMode?c+=f(b):c+=b),c}function v(a,b){return""===a?b:a+"."+b}function w(a,b,c,d){var e="";if(0==a.length)e+=m(a,b,c,!0);else for(var f=0;f0)for(var d in a)if(!p(a,d)&&(""==b||r(a,d,v(b,d)))){var e=a[d],f=s(e);if(null==e||void 0==e)c+=m(e,d,f,!0);else if(e instanceof Object)if(e instanceof Array)c+=w(e,d,f,b);else if(e instanceof Date)c+=m(e,d,f,!1),c+=e.toISOString(),c+=n(e,d);else{var g=q(e);g>0||null!=e.__text||null!=e.__cdata?(c+=m(e,d,f,!1),c+=x(e,v(b,d)),c+=n(e,d)):c+=m(e,d,f,!0)}else c+=m(e,d,f,!1),c+=u(e),c+=n(e,d)}return c+=u(a)}var y="1.2.0";a=a||{},b(),c();var z={ELEMENT_NODE:1,TEXT_NODE:3,CDATA_SECTION_NODE:4,COMMENT_NODE:8,DOCUMENT_NODE:9};this.parseXmlString=function(a){window.ActiveXObject||window;if(void 0===a)return null;var b;if(window.DOMParser){var c=new window.DOMParser;try{b=c.parseFromString(a,"text/xml"),b.getElementsByTagNameNS("*","parseerror").length>0&&(b=null)}catch(d){b=null}}else 0==a.indexOf("")+2)),b=new ActiveXObject("Microsoft.XMLDOM"),b.async="false",b.loadXML(a);return b},this.asArray=function(a){return void 0===a||null==a?[]:a instanceof Array?a:[a]},this.toXmlDateTime=function(a){return a instanceof Date?a.toISOString():"number"==typeof a?new Date(a).toISOString():null},this.asDateTime=function(a){return"string"==typeof a?i(a):a},this.xml2json=function(a){return l(a)},this.xml_str2json=function(a){var b=this.parseXmlString(a);return null!=b?this.xml2json(b):null},this.json2xml_str=function(a){return x(a,"")},this.json2xml=function(a){var b=this.json2xml_str(a);return this.parseXmlString(b)},this.getVersion=function(){return y}}Object.defineProperty(c,"__esModule",{value:!0}),c.default=d,b.exports=c.default},{}],5:[function(a,b,c){"use strict";function d(a){return a&&a.__esModule?a:{default:a}}Object.defineProperty(c,"__esModule",{value:!0}),a(6);var e=a(116),f=d(e),g=a(147),h=d(g),i=a(95),j=d(i);dashjs.Protection=h.default,dashjs.MetricsReporting=f.default,dashjs.MediaPlayerFactory=j.default,c.default=dashjs,c.Protection=h.default,c.MetricsReporting=f.default,c.MediaPlayerFactory=j.default},{116:116,147:147,6:6,95:95}],6:[function(a,b,c){(function(b){"use strict";function d(a){return a&&a.__esModule?a:{default:a}}Object.defineProperty(c,"__esModule",{value:!0});var e=a(93),f=d(e),g=a(51),h=d(g),i=a(52),j="undefined"!=typeof window&&window||b,k=j.dashjs;k||(k=j.dashjs={}),k.MediaPlayer=f.default,k.FactoryMaker=h.default,k.Version=(0,i.getVersionString)(),c.default=k,c.MediaPlayer=f.default,c.FactoryMaker=h.default}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{51:51,52:52,93:93}],7:[function(a,b,c){!function(a){"use strict";function b(a){var b=a.charCodeAt(0);return b===f||b===k?62:b===g||b===l?63:b0)throw new Error("Invalid string. Length must be a multiple of 4");var k=a.length;i="="===a.charAt(k-2)?2:"="===a.charAt(k-1)?1:0,j=new e(3*a.length/4-i),g=i>0?a.length-4:a.length;var l=0;for(d=0,f=0;d>16),c((65280&h)>>8),c(255&h);return 2===i?(h=b(a.charAt(d))<<2|b(a.charAt(d+1))>>4,c(255&h)):1===i&&(h=b(a.charAt(d))<<10|b(a.charAt(d+1))<<4|b(a.charAt(d+2))>>2,c(h>>8&255),c(255&h)),j}function d(a){function b(a){return"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(a)}function c(a){return b(a>>18&63)+b(a>>12&63)+b(a>>6&63)+b(63&a)}var d,e,f,g=a.length%3,h="";for(d=0,f=a.length-g;d>2),h+=b(e<<4&63),h+="==";break;case 2:e=(a[a.length-2]<<8)+a[a.length-1],h+=b(e>>10),h+=b(e>>4&63),h+=b(e<<2&63),h+="="}return h}var e="undefined"!=typeof Uint8Array?Uint8Array:Array,f="+".charCodeAt(0),g="/".charCodeAt(0),h="0".charCodeAt(0),i="a".charCodeAt(0),j="A".charCodeAt(0),k="-".charCodeAt(0),l="_".charCodeAt(0);a.toByteArray=c,a.fromByteArray=d}(void 0===c?this.base64js={}:c)},{}],8:[function(a,b,c){},{}],9:[function(a,b,c){function d(a){if(a&&!i(a))throw new Error("Unknown encoding: "+a)}function e(a){return a.toString(this.encoding)}function f(a){this.charReceived=a.length%2,this.charLength=this.charReceived?2:0}function g(a){this.charReceived=a.length%3,this.charLength=this.charReceived?3:0}var h=a(10).Buffer,i=h.isEncoding||function(a){switch(a&&a.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}},j=c.StringDecoder=function(a){switch(this.encoding=(a||"utf8").toLowerCase().replace(/[-_]/,""),d(a),this.encoding){case"utf8":this.surrogateSize=3;break;case"ucs2":case"utf16le":this.surrogateSize=2,this.detectIncompleteChar=f;break;case"base64":this.surrogateSize=3,this.detectIncompleteChar=g;break;default:return void(this.write=e)}this.charBuffer=new h(6),this.charReceived=0,this.charLength=0};j.prototype.write=function(a){for(var b="";this.charLength;){var c=a.length>=this.charLength-this.charReceived?this.charLength-this.charReceived:a.length;if(a.copy(this.charBuffer,this.charReceived,0,c),this.charReceived+=c,this.charReceived=55296&&d<=56319)){if(this.charReceived=this.charLength=0,0===a.length)return b;break}this.charLength+=this.surrogateSize,b=""}this.detectIncompleteChar(a);var e=a.length;this.charLength&&(a.copy(this.charBuffer,0,a.length-this.charReceived,e),e-=this.charReceived),b+=a.toString(this.encoding,0,e);var e=b.length-1,d=b.charCodeAt(e);if(d>=55296&&d<=56319){var f=this.surrogateSize;return this.charLength+=f,this.charReceived+=f,this.charBuffer.copy(this.charBuffer,f,0,f),a.copy(this.charBuffer,0,0,f),b.substring(0,e)}return b},j.prototype.detectIncompleteChar=function(a){for(var b=a.length>=3?3:a.length;b>0;b--){var c=a[a.length-b];if(1==b&&c>>5==6){this.charLength=2;break}if(b<=2&&c>>4==14){this.charLength=3;break}if(b<=3&&c>>3==30){this.charLength=4;break}}this.charReceived=b},j.prototype.end=function(a){var b="";if(a&&a.length&&(b=this.write(a)),this.charReceived){var c=this.charReceived,d=this.charBuffer,e=this.encoding;b+=d.slice(0,c).toString(e)}return b}},{10:10}],10:[function(a,b,c){(function(b){/*! +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.dashjs=t():e.dashjs=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s=104)}([function(e,t,n){"use strict";function r(e,t){for(var n=0;n0&&(r+=" ");for(var s=arguments.length,u=new Array(s>2?s-2:0),l=2;l=e&&g[e](r),p&&p.get().debug.dispatchEvent&&h.trigger(i.a.LOG,{message:r,level:e})}return t={getLogger:function(e){return{fatal:y.bind(e),error:E.bind(e),warn:_.bind(e),info:v.bind(e),debug:T.bind(e)}},setLogTimestampVisible:function(e){n=e},setCalleeNameVisible:function(e){a=e}},n=!0,a=!0,f=(new Date).getTime(),"undefined"!=typeof window&&window.console&&(g[o]=m(window.console.error),g[s]=m(window.console.error),g[u]=m(window.console.warn),g[l]=m(window.console.info),g[c]=m(window.console.debug)),t}f.__dashjs_factory_name="Debug";var d=a.a.getSingletonFactory(f);d.LOG_LEVEL_NONE=0,d.LOG_LEVEL_FATAL=o,d.LOG_LEVEL_ERROR=s,d.LOG_LEVEL_WARNING=u,d.LOG_LEVEL_INFO=l,d.LOG_LEVEL_DEBUG=c,a.a.updateSingletonFactory(f.__dashjs_factory_name,d),t.a=d},function(e,t,n){"use strict";var r=n(3),i=n(4);function a(){var e={};function t(t,n,r){var i=-1;return e[t]?(e[t].some((function(e,t){if(e&&e.callback===n&&(!r||r===e.scope))return i=t,!0})),i):i}return{on:function(n,r,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(!n)throw new Error("event type cannot be null or undefined");if(!r||"function"!=typeof r)throw new Error("listener must be a function: "+r);var o=a.priority||0;if(!(t(n,r,i)>=0)){e[n]=e[n]||[];var s={callback:r,scope:i,priority:o};i&&i.getStreamId&&(s.streamId=i.getStreamId()),i&&i.getType&&(s.mediaType=i.getType()),a&&a.mode&&(s.mode=a.mode);var u=e[n].some((function(t,r){if(t&&o>t.priority)return e[n].splice(r,0,s),!0}));u||e[n].push(s)}},off:function(n,r,i){if(n&&r&&e[n]){var a=t(n,r,i);a<0||(e[n][a]=null)}},trigger:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t&&e[t]){if((n=n||{}).hasOwnProperty("type"))throw new Error("'type' is a reserved word for event dispatching");n.type=t,r.streamId&&(n.streamId=r.streamId),r.mediaType&&(n.mediaType=r.mediaType),e[t].filter((function(e){return!!e&&((!r.streamId||!e.streamId||e.streamId===r.streamId)&&((!r.mediaType||!e.mediaType||e.mediaType===r.mediaType)&&!(r.mode&&e.mode&&e.mode!==r.mode||!e.mode&&r.mode&&r.mode===i.a.EVENT_MODE_ON_RECEIVE)))})).forEach((function(e){return e&&e.callback.call(e.scope,n)}))}},reset:function(){e={}}}}a.__dashjs_factory_name="EventBus";var o=r.a.getSingletonFactory(a);o.EVENT_PRIORITY_LOW=0,o.EVENT_PRIORITY_HIGH=5e3,r.a.updateSingletonFactory(a.__dashjs_factory_name,o),t.a=o},function(e,t,n){"use strict";t.a=function e(t,n,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.code=t||null,this.message=n||null,this.data=r||null}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function a(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=s(e);if(t){var i=s(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return o(this,n)}}function o(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function s(e){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var u=new(function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(n,e);var t=a(n);function n(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,n),(e=t.call(this)).MANIFEST_LOADER_PARSING_FAILURE_ERROR_CODE=10,e.MANIFEST_LOADER_LOADING_FAILURE_ERROR_CODE=11,e.XLINK_LOADER_LOADING_FAILURE_ERROR_CODE=12,e.SEGMENT_BASE_LOADER_ERROR_CODE=15,e.TIME_SYNC_FAILED_ERROR_CODE=16,e.FRAGMENT_LOADER_LOADING_FAILURE_ERROR_CODE=17,e.FRAGMENT_LOADER_NULL_REQUEST_ERROR_CODE=18,e.URL_RESOLUTION_FAILED_GENERIC_ERROR_CODE=19,e.APPEND_ERROR_CODE=20,e.REMOVE_ERROR_CODE=21,e.DATA_UPDATE_FAILED_ERROR_CODE=22,e.CAPABILITY_MEDIASOURCE_ERROR_CODE=23,e.CAPABILITY_MEDIAKEYS_ERROR_CODE=24,e.DOWNLOAD_ERROR_ID_MANIFEST_CODE=25,e.DOWNLOAD_ERROR_ID_SIDX_CODE=26,e.DOWNLOAD_ERROR_ID_CONTENT_CODE=27,e.DOWNLOAD_ERROR_ID_INITIALIZATION_CODE=28,e.DOWNLOAD_ERROR_ID_XLINK_CODE=29,e.MANIFEST_ERROR_ID_PARSE_CODE=31,e.MANIFEST_ERROR_ID_NOSTREAMS_CODE=32,e.TIMED_TEXT_ERROR_ID_PARSE_CODE=33,e.MANIFEST_ERROR_ID_MULTIPLEXED_CODE=34,e.MEDIASOURCE_TYPE_UNSUPPORTED_CODE=35,e.MANIFEST_LOADER_PARSING_FAILURE_ERROR_MESSAGE="parsing failed for ",e.MANIFEST_LOADER_LOADING_FAILURE_ERROR_MESSAGE="Failed loading manifest: ",e.XLINK_LOADER_LOADING_FAILURE_ERROR_MESSAGE="Failed loading Xlink element: ",e.SEGMENTS_UPDATE_FAILED_ERROR_MESSAGE="Segments update failed",e.SEGMENTS_UNAVAILABLE_ERROR_MESSAGE="no segments are available yet",e.SEGMENT_BASE_LOADER_ERROR_MESSAGE="error loading segment ranges from sidx",e.TIME_SYNC_FAILED_ERROR_MESSAGE="Failed to synchronize client and server time",e.FRAGMENT_LOADER_NULL_REQUEST_ERROR_MESSAGE="request is null",e.URL_RESOLUTION_FAILED_GENERIC_ERROR_MESSAGE="Failed to resolve a valid URL",e.APPEND_ERROR_MESSAGE="chunk is not defined",e.REMOVE_ERROR_MESSAGE="Removing data from the SourceBuffer",e.DATA_UPDATE_FAILED_ERROR_MESSAGE="Data update failed",e.CAPABILITY_MEDIASOURCE_ERROR_MESSAGE="mediasource is not supported",e.CAPABILITY_MEDIAKEYS_ERROR_MESSAGE="mediakeys is not supported",e.TIMED_TEXT_ERROR_MESSAGE_PARSE="parsing error :",e.MEDIASOURCE_TYPE_UNSUPPORTED_MESSAGE="Error creating source buffer of type : ",e}return n}(n(24).a));t.a=u},function(e,t,n){"use strict";n.d(t,"e",(function(){return a})),n.d(t,"c",(function(){return o})),n.d(t,"d",(function(){return s})),n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return f}));var r=n(27);function i(e,t){for(;e.lengthr&&o=a)}return!0}function c(e,t,n,r){var i,a,o;i=n.segmentDuration,isNaN(i)&&(i=n.adaptation.period.duration),a=parseFloat((n.adaptation.period.start+r*i).toFixed(5)),o=parseFloat((a+i).toFixed(5));var s=u(n,i,a,e.calcMediaTimeFromPresentationTime(a,n),e,o,t,r);return l(e,n,s,t)?s:null}function f(e,t,n,r,i,a,o,c,f,d){var h,p,g=r/a,m=i/a;return h=e.calcPresentationTimeFromMediaTime(g,n),l(e,n,p=u(n,m,h,g,e,h+m,t,f),t)?(p.replacementTime=d||r,o=s(o,"Number",p.replacementNumber),o=s(o,"Time",p.replacementTime),p.media=o,p.mediaRange=c,p):null}},function(e,t,n){"use strict";var r=n(3);function i(){var e,t=/^[a-z][a-z0-9+\-_.]*:/i,n=/^https?:\/\//i,r=/^https:\/\//i,i=/^([a-z][a-z0-9+\-_.]*:\/\/[^\/]+)\/?/i,a=function(e,t){try{return new window.URL(e,t).toString()}catch(t){return e}},o=function(e,t){var n=s;if(!t)return e;if(!c(e))return e;f(e)&&(n=u),d(e)&&(n=l);var r=n(t),i="/"!==r.charAt(r.length-1)&&"/"!==e.charAt(0)?"/":"";return[r,e].join(i)};function s(e){var t=e.indexOf("/"),n=e.lastIndexOf("/");return-1!==t?n===t+1?e:(-1!==e.indexOf("?")&&(e=e.substring(0,e.indexOf("?"))),e.substring(0,n+1)):""}function u(e){var t=e.match(i);return t?t[1]:""}function l(e){var n=e.match(t);return n?n[0]:""}function c(e){return!t.test(e)}function f(e){return c(e)&&"/"===e.charAt(0)}function d(e){return 0===e.indexOf("//")}return function(){try{new window.URL("x","http://y");e=a}catch(e){}finally{e=e||o}}(),{parseBaseUrl:s,parseOrigin:u,parseScheme:l,isRelative:c,isPathAbsolute:f,isSchemeRelative:d,isHTTPURL:function(e){return n.test(e)},isHTTPS:function(e){return r.test(e)},removeHostname:function(e){return/^(?:\w+\:\/\/)?([^\/]+)(.*)$/.exec(e)[2].substring(1)},resolve:function(t,n){return e(t,n)}}}i.__dashjs_factory_name="DefaultURLUtils";var a=r.a.getSingletonFactory(i);function o(){var e,t=[],n=this.context;function r(n,r,i){var a=function(n){var r;for(r=0;r0&&(t[a.substring(0,o)]=a.substring(o+2))}return t}},{key:"generateUuid",value:function(){var e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var n=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"==t?n:3&n|8).toString(16)}))}},{key:"generateHashCode",value:function(e){var t=0;if(0===e.length)return t;for(var n=0;n=e-n}))}function m(e,t){t<=e+.5||(r=r.filter((function(n){var r=p(n);return isNaN(n.startTime)||n.startTime>=t-r||isNaN(n.duration)||n.startTime+n.duration<=e+r})))}function y(e,t,n){for(var r=e.length-1;r>=0;r--){var i=e[r],a=i.startTime,o=a+i.duration;if(n=isNaN(n)?p(i):n,!isNaN(a)&&!isNaN(o)&&t+n>=a&&t-n0&&m(n,t)}else g()},abortRequests:function(){n.debug("abort requests"),l.abort(),a=[]},executeRequest:function(e){switch(e.action){case i.a.ACTION_DOWNLOAD:E(e,"loading"),a.push(e),function(e){o.trigger(s.FRAGMENT_LOADING_STARTED,{request:e},{streamId:f.id,mediaType:d}),l.load(e)}(e);break;default:n.warn("Unknown request action.")}},reset:function(){o.off(s.LOADING_COMPLETED,_,this),o.off(s.LOADING_DATA_PROGRESS,v,this),o.off(s.LOADING_ABANDONED,T,this),l&&l.reset(),S()},resetInitialSettings:S,addExecutedRequest:function(e){r.push(e)}},n=c.getLogger(t),S(),o.on(s.LOADING_COMPLETED,_,t),o.on(s.LOADING_DATA_PROGRESS,v,t),o.on(s.LOADING_ABANDONED,T,t),t}a.__dashjs_factory_name="FragmentModel";var o=r.a.getClassFactory(a);o.FRAGMENT_MODEL_LOADING="loading",o.FRAGMENT_MODEL_EXECUTED="executed",o.FRAGMENT_MODEL_CANCELED="canceled",o.FRAGMENT_MODEL_FAILED="failed",r.a.updateClassFactory(a.__dashjs_factory_name,o),t.a=o},function(e,t,n){"use strict";var r=n(3),i=n(41);function a(e){e=e||{};var t,n,r=this.context;return t=Object(i.a)(r).getInstance(),{load:function(i){if(!n){var a=t.getLoader(i&&i.request?i.request.url:null);n=a(r).create({errHandler:e.errHandler,mediaPlayerModel:e.mediaPlayerModel,requestModifier:e.requestModifier,dashMetrics:e.dashMetrics,boxParser:e.boxParser?e.boxParser:null,constants:e.constants?e.constants:null,dashConstants:e.dashConstants?e.dashConstants:null,urlUtils:e.urlUtils?e.urlUtils:null,requestTimeout:isNaN(e.requestTimeout)?0:e.requestTimeout,errors:e.errors})}n.load(i)},abort:function(){n&&n.abort()}}}a.__dashjs_factory_name="URLLoader";var o=r.a.getClassFactory(a);t.a=o},function(e,t,n){"use strict";var r=n(6);function i(e,t){for(var n=0;n0?n[n.length-1]:null}}}s.__dashjs_factory_name="IsoFile";var u=o.a.getClassFactory(s),l=n(22),c=n.n(l);var f=function e(t,n,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.lastCompletedOffset=t,this.found=n,this.size=r};function d(){var e,t,n=this.context;function i(e){if(!e)return null;void 0===e.fileStart&&(e.fileStart=0);var t=c.a.parseBuffer(e),r=u(n).create();return r.setData(t),r}function a(e,t){return e[t+3]>>>0|e[t+2]<<8>>>0|e[t+1]<<16>>>0|e[t]<<24>>>0}function o(e,t){return String.fromCharCode(e[t++])+String.fromCharCode(e[t++])+String.fromCharCode(e[t++])+String.fromCharCode(e[t])}return t={parse:i,findLastTopIsoBoxCompleted:function(e,t,n){if(void 0===n&&(n=0),!t||n+8>=t.byteLength)return new f(0,!1);for(var r,i=t instanceof ArrayBuffer?new Uint8Array(t):t,s=0;n=0?r=new f(n,!0,u):s=n+u),n+=u}return r||new f(s,!1)},getMediaTimescaleFromMoov:function(e){var t=i(e),n=t?t.getBox("mdhd"):void 0;return n?n.timescale:NaN},getSamplesInfo:function(e){if(!e||0===e.byteLength)return{sampleList:[],lastSequenceNumber:NaN,totalDuration:NaN,numSequences:NaN};var t,n,r,a,o,s,u,l,c,f,d,h,p,g,m,y,E=i(e),_=E.getBoxes("moof"),v=E.getBoxes("mfhd");m=E.getBoxes("moof").length,g=v[v.length-1].sequence_number,n=0,o=[];var T=-1,S=-1;for(f=0;f<_.length;f++){var A=_[f],b=A.getChildBoxes("traf");for(l=0;lS&&(T++,S+=M.entries[T].sample_delta),u==S){O.subSizes=[];var P=M.entries[T];for(h=0;h=t.byteLength)return new f(0,!1);for(var r,i=t instanceof ArrayBuffer?new Uint8Array(t):t,s=0;n=0?r=new f(n,!0,u,l):s=n+u),n+=u}return r||new f(s,!1)}},e=Object(r.a)(n).getInstance().getLogger(t),t}d.__dashjs_factory_name="BoxParser";t.a=o.a.getSingletonFactory(d)},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){ +/*! codem-isoboxer v0.3.6 https://github.com/madebyhiro/codem-isoboxer/blob/master/LICENSE.txt */ +var r={parseBuffer:function(e){return new i(e).parse()},addBoxProcessor:function(e,t){"string"==typeof e&&"function"==typeof t&&(a.prototype._boxProcessors[e]=t)},createFile:function(){return new i},createBox:function(e,t,n){var r=a.create(e);return t&&t.append(r,n),r},createFullBox:function(e,t,n){var i=r.createBox(e,t,n);return i.version=0,i.flags=0,i},Utils:{}};r.Utils.dataViewToString=function(e,t){var n=t||"utf-8";if("undefined"!=typeof TextDecoder)return new TextDecoder(n).decode(e);var r=[],i=0;if("utf-8"===n)for(;i>6),t.push(128|63&r)):r<65536?(t.push(224|r>>12),t.push(128|63&r>>6),t.push(128|63&r)):(t.push(240|r>>18),t.push(128|63&r>>12),t.push(128|63&r>>6),t.push(128|63&r))}return t},r.Utils.appendBox=function(e,t,n){if(t._offset=e._cursor.offset,t._root=e._root?e._root:e,t._raw=e._raw,t._parent=e,-1!==n)if(null!=n){var r,i=-1;if("number"==typeof n)i=n;else{if("string"==typeof n)r=n;else{if("object"!=typeof n||!n.type)return void e.boxes.push(t);r=n.type}for(var a=0;a>3,t},a.prototype._readUint=function(e){var t,n,r=null,i=this._cursor.offset-this._raw.byteOffset;switch(e){case 8:r=this._raw.getUint8(i);break;case 16:r=this._raw.getUint16(i);break;case 24:r=((t=this._raw.getUint16(i))<<8)+(n=this._raw.getUint8(i+2));break;case 32:r=this._raw.getUint32(i);break;case 64:t=this._raw.getUint32(i),n=this._raw.getUint32(i+4),r=t*Math.pow(2,32)+n}return this._cursor.offset+=e>>3,r},a.prototype._readString=function(e){for(var t="",n=0;n0?e:this._raw.byteLength-(this._cursor.offset-this._offset);if(t>0){var n=new Uint8Array(this._raw.buffer,this._cursor.offset,t);return this._cursor.offset+=t,n}return null},a.prototype._readUTF8String=function(){var e=this._raw.byteLength-(this._cursor.offset-this._offset),t=null;return e>0&&(t=new DataView(this._raw.buffer,this._cursor.offset,e),this._cursor.offset+=e),t?r.Utils.dataViewToString(t):t},a.prototype._parseBox=function(){if(this._parsing=!0,this._cursor.offset=this._offset,this._offset+8>this._raw.buffer.byteLength)this._root._incomplete=!0;else{switch(this._procField("size","uint",32),this._procField("type","string",4),1===this.size&&this._procField("largesize","uint",64),"uuid"===this.type&&this._procFieldArray("usertype",16,"uint",8),this.size){case 0:this._raw=new DataView(this._raw.buffer,this._offset,this._raw.byteLength-this._cursor.offset+8);break;case 1:this._offset+this.size>this._raw.buffer.byteLength?(this._incomplete=!0,this._root._incomplete=!0):this._raw=new DataView(this._raw.buffer,this._offset,this.largesize);break;default:this._offset+this.size>this._raw.buffer.byteLength?(this._incomplete=!0,this._root._incomplete=!0):this._raw=new DataView(this._raw.buffer,this._offset,this.size)}this._incomplete||(this._boxProcessors[this.type]&&this._boxProcessors[this.type].call(this),-1!==this._boxContainers.indexOf(this.type)?this._parseContainerBox():this._data=this._readData())}},a.prototype._parseFullBox=function(){this.version=this._readUint(8),this.flags=this._readUint(24)},a.prototype._parseContainerBox=function(){for(this.boxes=[];this._cursor.offset-this._raw.byteOffset>3}else this.size+=e>>3},a.prototype._writeUint=function(e,t){if(this._rawo){var n,r,i=this._cursor.offset-this._rawo.byteOffset;switch(e){case 8:this._rawo.setUint8(i,t);break;case 16:this._rawo.setUint16(i,t);break;case 24:n=(16776960&t)>>8,r=255&t,this._rawo.setUint16(i,n),this._rawo.setUint8(i+2,r);break;case 32:this._rawo.setUint32(i,t);break;case 64:r=t-(n=Math.floor(t/Math.pow(2,32)))*Math.pow(2,32),this._rawo.setUint32(i,n),this._rawo.setUint32(i+4,r)}this._cursor.offset+=e>>3}else this.size+=e>>3},a.prototype._writeString=function(e,t){for(var n=0;n>10&31),96+(this.language>>5&31),96+(31&this.language))),this._procField("pre_defined","uint",16)},a.prototype._boxProcessors.mehd=function(){this._procFullBox(),this._procField("fragment_duration","uint",1==this.version?64:32)},a.prototype._boxProcessors.mfhd=function(){this._procFullBox(),this._procField("sequence_number","uint",32)},a.prototype._boxProcessors.mfro=function(){this._procFullBox(),this._procField("mfra_size","uint",32)},a.prototype._boxProcessors.mp4a=a.prototype._boxProcessors.enca=function(){this._procFieldArray("reserved1",6,"uint",8),this._procField("data_reference_index","uint",16),this._procFieldArray("reserved2",2,"uint",32),this._procField("channelcount","uint",16),this._procField("samplesize","uint",16),this._procField("pre_defined","uint",16),this._procField("reserved3","uint",16),this._procField("samplerate","template",32),this._procField("esds","data",-1)},a.prototype._boxProcessors.mvhd=function(){this._procFullBox(),this._procField("creation_time","uint",1==this.version?64:32),this._procField("modification_time","uint",1==this.version?64:32),this._procField("timescale","uint",32),this._procField("duration","uint",1==this.version?64:32),this._procField("rate","template",32),this._procField("volume","template",16),this._procField("reserved1","uint",16),this._procFieldArray("reserved2",2,"uint",32),this._procFieldArray("matrix",9,"template",32),this._procFieldArray("pre_defined",6,"uint",32),this._procField("next_track_ID","uint",32)},a.prototype._boxProcessors.payl=function(){this._procField("cue_text","utf8")},a.prototype._boxProcessors.pssh=function(){this._procFullBox(),this._procFieldArray("SystemID",16,"uint",8),this._procField("DataSize","uint",32),this._procFieldArray("Data",this.DataSize,"uint",8)},a.prototype._boxProcessors.schm=function(){this._procFullBox(),this._procField("scheme_type","uint",32),this._procField("scheme_version","uint",32),1&this.flags&&this._procField("scheme_uri","string",-1)},a.prototype._boxProcessors.sdtp=function(){this._procFullBox();var e=-1;this._parsing&&(e=this._raw.byteLength-(this._cursor.offset-this._raw.byteOffset)),this._procFieldArray("sample_dependency_table",e,"uint",8)},a.prototype._boxProcessors.sidx=function(){this._procFullBox(),this._procField("reference_ID","uint",32),this._procField("timescale","uint",32),this._procField("earliest_presentation_time","uint",1==this.version?64:32),this._procField("first_offset","uint",1==this.version?64:32),this._procField("reserved","uint",16),this._procField("reference_count","uint",16),this._procEntries("references",this.reference_count,(function(e){this._parsing||(e.reference=(1&e.reference_type)<<31,e.reference|=2147483647&e.referenced_size,e.sap=(1&e.starts_with_SAP)<<31,e.sap|=(3&e.SAP_type)<<28,e.sap|=268435455&e.SAP_delta_time),this._procEntryField(e,"reference","uint",32),this._procEntryField(e,"subsegment_duration","uint",32),this._procEntryField(e,"sap","uint",32),this._parsing&&(e.reference_type=e.reference>>31&1,e.referenced_size=2147483647&e.reference,e.starts_with_SAP=e.sap>>31&1,e.SAP_type=e.sap>>28&7,e.SAP_delta_time=268435455&e.sap)}))},a.prototype._boxProcessors.smhd=function(){this._procFullBox(),this._procField("balance","uint",16),this._procField("reserved","uint",16)},a.prototype._boxProcessors.ssix=function(){this._procFullBox(),this._procField("subsegment_count","uint",32),this._procEntries("subsegments",this.subsegment_count,(function(e){this._procEntryField(e,"ranges_count","uint",32),this._procSubEntries(e,"ranges",e.ranges_count,(function(e){this._procEntryField(e,"level","uint",8),this._procEntryField(e,"range_size","uint",24)}))}))},a.prototype._boxProcessors.stsd=function(){this._procFullBox(),this._procField("entry_count","uint",32),this._procSubBoxes("entries",this.entry_count)},a.prototype._boxProcessors.subs=function(){this._procFullBox(),this._procField("entry_count","uint",32),this._procEntries("entries",this.entry_count,(function(e){this._procEntryField(e,"sample_delta","uint",32),this._procEntryField(e,"subsample_count","uint",16),this._procSubEntries(e,"subsamples",e.subsample_count,(function(e){this._procEntryField(e,"subsample_size","uint",1===this.version?32:16),this._procEntryField(e,"subsample_priority","uint",8),this._procEntryField(e,"discardable","uint",8),this._procEntryField(e,"codec_specific_parameters","uint",32)}))}))},a.prototype._boxProcessors.tenc=function(){this._procFullBox(),this._procField("default_IsEncrypted","uint",24),this._procField("default_IV_size","uint",8),this._procFieldArray("default_KID",16,"uint",8)},a.prototype._boxProcessors.tfdt=function(){this._procFullBox(),this._procField("baseMediaDecodeTime","uint",1==this.version?64:32)},a.prototype._boxProcessors.tfhd=function(){this._procFullBox(),this._procField("track_ID","uint",32),1&this.flags&&this._procField("base_data_offset","uint",64),2&this.flags&&this._procField("sample_description_offset","uint",32),8&this.flags&&this._procField("default_sample_duration","uint",32),16&this.flags&&this._procField("default_sample_size","uint",32),32&this.flags&&this._procField("default_sample_flags","uint",32)},a.prototype._boxProcessors.tfra=function(){this._procFullBox(),this._procField("track_ID","uint",32),this._parsing||(this.reserved=0,this.reserved|=(48&this.length_size_of_traf_num)<<4,this.reserved|=(12&this.length_size_of_trun_num)<<2,this.reserved|=3&this.length_size_of_sample_num),this._procField("reserved","uint",32),this._parsing&&(this.length_size_of_traf_num=(48&this.reserved)>>4,this.length_size_of_trun_num=(12&this.reserved)>>2,this.length_size_of_sample_num=3&this.reserved),this._procField("number_of_entry","uint",32),this._procEntries("entries",this.number_of_entry,(function(e){this._procEntryField(e,"time","uint",1===this.version?64:32),this._procEntryField(e,"moof_offset","uint",1===this.version?64:32),this._procEntryField(e,"traf_number","uint",8*(this.length_size_of_traf_num+1)),this._procEntryField(e,"trun_number","uint",8*(this.length_size_of_trun_num+1)),this._procEntryField(e,"sample_number","uint",8*(this.length_size_of_sample_num+1))}))},a.prototype._boxProcessors.tkhd=function(){this._procFullBox(),this._procField("creation_time","uint",1==this.version?64:32),this._procField("modification_time","uint",1==this.version?64:32),this._procField("track_ID","uint",32),this._procField("reserved1","uint",32),this._procField("duration","uint",1==this.version?64:32),this._procFieldArray("reserved2",2,"uint",32),this._procField("layer","uint",16),this._procField("alternate_group","uint",16),this._procField("volume","template",16),this._procField("reserved3","uint",16),this._procFieldArray("matrix",9,"template",32),this._procField("width","template",32),this._procField("height","template",32)},a.prototype._boxProcessors.trex=function(){this._procFullBox(),this._procField("track_ID","uint",32),this._procField("default_sample_description_index","uint",32),this._procField("default_sample_duration","uint",32),this._procField("default_sample_size","uint",32),this._procField("default_sample_flags","uint",32)},a.prototype._boxProcessors.trun=function(){this._procFullBox(),this._procField("sample_count","uint",32),1&this.flags&&this._procField("data_offset","int",32),4&this.flags&&this._procField("first_sample_flags","uint",32),this._procEntries("samples",this.sample_count,(function(e){256&this.flags&&this._procEntryField(e,"sample_duration","uint",32),512&this.flags&&this._procEntryField(e,"sample_size","uint",32),1024&this.flags&&this._procEntryField(e,"sample_flags","uint",32),2048&this.flags&&this._procEntryField(e,"sample_composition_time_offset",1===this.version?"int":"uint",32)}))},a.prototype._boxProcessors["url "]=a.prototype._boxProcessors["urn "]=function(){this._procFullBox(),"urn "===this.type&&this._procField("name","string",-1),this._procField("location","string",-1)},a.prototype._boxProcessors.vlab=function(){this._procField("source_label","utf8")},a.prototype._boxProcessors.vmhd=function(){this._procFullBox(),this._procField("graphicsmode","uint",16),this._procFieldArray("opcolor",3,"uint",16)},a.prototype._boxProcessors.vttC=function(){this._procField("config","utf8")},a.prototype._boxProcessors.vtte=function(){}},function(e,t,n){"use strict";var r=n(3);function i(){return{modifyRequestURL:function(e){return e},modifyRequestHeader:function(e){return e}}}i.__dashjs_factory_name="RequestModifier",t.a=r.a.getSingletonFactory(i)},function(e,t,n){"use strict";function r(e,t){for(var n=0;n1)for(var n=1;n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&T.a.indexOf(n[0].schemeIdUri)>=0)return t===r.a.IMAGE}if(e.ContentComponent_asArray&&e.ContentComponent_asArray.length>0){if(e.ContentComponent_asArray.length>1)return t===r.a.MUXED;if(e.ContentComponent_asArray[0].contentType===t)return!0}var a=t===r.a.TEXT?new RegExp("(ttml|vtt|wvtt|stpp)"):new RegExp(t);if(e.Representation_asArray&&e.Representation_asArray.length){var o=e.Representation_asArray[0].codecs;if(a.test(o))return!0}if(e.hasOwnProperty(i.a.MIME_TYPE))return a.test(e.mimeType);if(e.Representation_asArray)for(var s,u=0;u0){var t=e.Representation_asArray[0];if(t.hasOwnProperty(i.a.SEGMENT_TEMPLATE)||t.hasOwnProperty(i.a.SEGMENT_TIMELINE)||t.hasOwnProperty(i.a.SEGMENT_LIST)||t.hasOwnProperty(i.a.SEGMENT_BASE))return!0}return!1}function R(e){return b(e,r.a.AUDIO)}function N(e){return b(e,r.a.VIDEO)}function w(e){return b(e,r.a.TEXT)}function C(e){return b(e,r.a.IMAGE)}function D(){return function(e,t){return e.bandwidth-t.bandwidth}}function O(e){return e&&Array.isArray(e.Representation_asArray)&&e.Representation_asArray.sort((function(e,t){return e.bandwidth-t.bandwidth})),e}function M(e,t){return e&&e.Period_asArray&&A(t)&&e.Period_asArray[t]?e.Period_asArray[t].AdaptationSet_asArray:[]}function P(e){return e&&e.Period_asArray?e.Period_asArray:[]}function L(e){var t=!1;return e&&e.hasOwnProperty("type")&&(t=e.type===i.a.DYNAMIC),t}function F(e){return e&&e.EssentialProperty_asArray&&e.EssentialProperty_asArray.length?e.EssentialProperty_asArray.map((function(e){return{schemeIdUri:e.schemeIdUri,value:e.value}})):null}function x(e){if(!e||!e.S_asArray)return NaN;var t=e.S_asArray[0],n=e.S_asArray[1];return t.hasOwnProperty("d")?t.d:n.t-t.t}function U(e,t){if(!e)throw new Error("Period cannot be null or undefined");var n=l.DEFAULT_ID+"_"+t;return e.hasOwnProperty(i.a.ID)&&e.id.length>0&&"__proto__"!==e.id&&(n=e.id),n}function B(e,t){var n,a=[];if(!e)return a;for(n=0;n0&&A(e)?r[e]:null},getIndexForAdaptation:function(e,t,n){if(!e)return-1;for(var r=M(t,n),i=0;i0&&A(e)?n[e]:null},getCodec:function(e,t,n){var r=null;if(e&&e.Representation_asArray&&e.Representation_asArray.length>0){var i=A(t)&&t>=0&&t0?e.Representation_asArray[0].mimeType:null},getKID:function(e){return e&&e.hasOwnProperty(i.a.CENC_DEFAULT_KID)?e[i.a.CENC_DEFAULT_KID]:null},getLabelsForAdaptation:function(e){if(!e||!Array.isArray(e.Label_asArray))return[];for(var t=[],n=0;n0&&(n=-1!==e.profiles.indexOf(t)),n},getDuration:function(e){return e&&e.hasOwnProperty(i.a.MEDIA_PRESENTATION_DURATION)?e.mediaPresentationDuration:e&&"dynamic"==e.type?Number.POSITIVE_INFINITY:Number.MAX_SAFE_INTEGER||Number.MAX_VALUE},getBandwidth:function(e){return e&&e.bandwidth?e.bandwidth:NaN},getManifestUpdatePeriod:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=NaN;return e&&e.hasOwnProperty(i.a.MINIMUM_UPDATE_PERIOD)&&(n=e.minimumUpdatePeriod),isNaN(n)?n:Math.max(n-t,1)},getPublishTime:function(e){return e&&e.hasOwnProperty(i.a.PUBLISH_TIME)?new Date(e[i.a.PUBLISH_TIME]):null},getRepresentationCount:function(e){return e&&Array.isArray(e.Representation_asArray)?e.Representation_asArray.length:0},getBitrateListForAdaptation:function(e){var t=O(e);return(t&&Array.isArray(t.Representation_asArray)?t.Representation_asArray:[]).map((function(e){return{bandwidth:e.bandwidth,width:e.width||0,height:e.height||0,scanType:e.scanType||null,id:e.id||null}}))},getRepresentationFor:function(e,t){return t&&t.Representation_asArray&&t.Representation_asArray.length>0&&A(e)?t.Representation_asArray[e]:null},getRepresentationsForAdaptation:function(e){var t,n,r,a,s=[],u=function(e){if(e&&e.period&&A(e.period.index)){var t=e.period.mpd.manifest.Period_asArray[e.period.index];if(t&&t.AdaptationSet_asArray&&A(e.index))return O(t.AdaptationSet_asArray[e.index])}}(e);if(u&&u.Representation_asArray){if(e&&e.period&&A(e.period.index)){var l=k(e.period.mpd.manifest);l&&(n=l[0])}for(var c=0,f=u.Representation_asArray.length;c=0&&e.value){var t=e.value.split("x");2!==t.length||isNaN(t[0])||isNaN(t[1])||(r.tilesHor=parseInt(t[0],10),r.tilesVert=parseInt(t[1],10))}})),t?m.updateSegmentData(e).then((function(t){!function(e,t,n){var r=[],i=function(e,t){var n,r,i,a,o=[],s=0;for(n=0,r=e.segments.length;ne)return i=t.url,!0})),i?n(i):t.segments.some((function(i){if(i.mediaStartTime<=e&&i.mediaStartTime+i.duration>e){var a=T.resolve(t.path);return y.load({method:"get",url:a.url,request:{range:i.mediaRange,responseType:"arraybuffer"},onload:function(e){var t=E.getSamplesInfo(e.target.response),a=new Blob([e.target.response.slice(t.sampleList[0].offset,t.sampleList[0].offset+t.sampleList[0].size)],{type:"image/jpeg"}),o=window.URL.createObjectURL(a);r.push({start:i.mediaStartTime,end:i.mediaStartTime+i.duration,url:o}),n&&n(o)}}),!0}}))}}(r,e,t)})):(r.startNumber=e.startNumber,r.segmentDuration=e.segmentDuration,r.timescale=e.timescale,r.templateUrl=function(e){var t=w.isRelative(e.media)?w.resolve(e.media,T.resolve(e.path).url):e.media;if(!t)return"";return Object(u.c)(t,e.id)}(e)),r.tilesHor>0&&r.tilesVert>0&&(r.widthPerTile=r.width/r.tilesHor,r.heightPerTile=r.height/r.tilesVert,n.push(r))}function D(){n=[],p=-1,g=null}return t={getTracks:function(){return n},addTracks:function(){if(S&&v&&(g=v.getMediaInfoForType(S,r.a.IMAGE))){var e=v.getVoRepresentations(g);e&&e.length>0&&e.forEach((function(e){(e.segmentInfoType===i.a.SEGMENT_TEMPLATE&&e.segmentDuration>0&&e.media||e.segmentInfoType===i.a.SEGMENT_TIMELINE)&&C(e),e.segmentInfoType===i.a.SEGMENT_BASE&&C(e,!0)})),n.length>0&&n.sort((function(e,t){return e.bitrate-t.bitrate}))}},reset:D,setTrackByIndex:function(e){n&&0!==n.length&&(e>=n.length&&(e=n.length-1),p=e)},getCurrentTrack:function(){return p<0?null:n[p]},getCurrentTrackIndex:function(){return p},getThumbnailRequestForTime:function(e){for(var t,r=v.getVoRepresentations(g),i=0;it)return!1;if(e.mediaFinishedInformation&&!isNaN(e.mediaFinishedInformation.numberOfSegments)&&!isNaN(a.index)&&a.index>=e.mediaFinishedInformation.numberOfSegments-1){if(!l||e.segmentInfoType===u.a.SEGMENT_TEMPLATE)return!0;if(l&&e.segmentInfoType===u.a.SEGMENT_LIST&&e.adaptation.period.nextPeriodId)return!0}return!!(l&&e.adaptation.period.nextPeriodId&&e.segmentInfoType===u.a.SEGMENT_TIMELINE&&e.mediaFinishedInformation&&!isNaN(e.mediaFinishedInformation.mediaTimeOfLastSignaledSegment)&&a&&!isNaN(a.mediaStartTime)&&!isNaN(a.duration)&&a.mediaStartTime+a.duration>=e.mediaFinishedInformation.mediaTimeOfLastSignaledSegment-.05)},reset:function(){v(),f.off(o.a.DYNAMIC_TO_STATIC,b,t)},getNextSegmentRequestIdempotent:function(e,t){var n=a?a.index+1:0,r=m.getSegmentByIndex(t,n,a?a.mediaStartTime:-1);return r?S(e,r):null},getValidSeekTimeCloseToTargetTime:function(e,t,n,r){try{if(isNaN(e)||!t||!n)return NaN;if(e<0&&(e=0),isNaN(r)&&(r=.5),A(t,n,e))return e;for(var i=n.adaptation.period.start,a=n.adaptation.period.start+n.adaptation.period.duration,o=Math.min(e+r,a),s=Math.max(e-r,i),u=NaN,l=null;o<=a||s>=i;){var c=null,f=null;if(o<=a&&(c=A(t,n,o)),s>=i&&(f=A(t,n,s)),f){u=s,l=f;break}if(c){u=o,l=c;break}o+=r,s-=r}if(l){var d=l.startTime+l.duration;return e>=l.startTime&&d-e>r?e:e=i-.5*f.d/d&&(l=!0),!1})),u},getSegmentByTime:function(e,r){if(o(),!e)return null;void 0===r&&(r=null);var i=null,u=n.calcMediaTimeFromPresentationTime(r,e);return s(e,(function(r,o,s,l,c,f,d,h){if(u=o){var p=s.media,g=c.mediaRange;return l&&(p=l[h].media||"",g=l[h].mediaRange),i=Object(a.b)(n,t,e,r,c.d,f,p,g,d,c.tManifest),!0}return!1})),i},getMediaFinishedInformation:function(e){if(!e)return 0;var t,n,r,i,a,o,s,l=(e.adaptation.period.mpd.manifest.Period_asArray[e.adaptation.period.index].AdaptationSet_asArray[e.adaptation.index].Representation_asArray[e.index].SegmentTemplate||e.adaptation.period.mpd.manifest.Period_asArray[e.adaptation.period.index].AdaptationSet_asArray[e.adaptation.index].Representation_asArray[e.index].SegmentList).SegmentTimeline,c=0,f=0,d=0;for(s=e.timescale,i=(t=l.S_asArray).length,r=0;r0)for(o=0;o=i&&t-n=n&&console.log(this.time+" ["+e+"] "+t)}},l=function(e){for(var t=[],n=0;n32&&(u.log("ERROR","Too large cursor position "+this.pos),this.pos=32)},moveCursor:function(e){var t=this.pos+e;if(e>1)for(var n=this.pos+1;n=144&&this.backSpace();var t=n(e);this.pos>=32?u.log("ERROR","Cannot insert "+e.toString(16)+" ("+t+") at position "+this.pos+". Skipping it!"):(this.chars[this.pos].setChar(t,this.currPenState),this.moveCursor(1))},clearFromPos:function(e){var t;for(t=e;t<32;t++)this.chars[t].reset()},clear:function(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()},clearToEndOfRow:function(){this.clearFromPos(this.pos)},getTextString:function(){for(var e=[],t=!0,n=0;n<32;n++){var r=this.chars[n].uchar;" "!==r&&(t=!1),e.push(r)}return t?"":e.join("")},setPenStyles:function(e){this.currPenState.setStyles(e),this.chars[this.pos].setPenState(this.currPenState)}};var h=function(){this.rows=[];for(var e=0;e<15;e++)this.rows.push(new d);this.currRow=14,this.nrRollUpRows=null,this.reset()};h.prototype={reset:function(){for(var e=0;e<15;e++)this.rows[e].clear();this.currRow=14},equals:function(e){for(var t=!0,n=0;n<15;n++)if(!this.rows[n].equals(e.rows[n])){t=!1;break}return t},copy:function(e){for(var t=0;t<15;t++)this.rows[t].copy(e.rows[t])},isEmpty:function(){for(var e=!0,t=0;t<15;t++)if(!this.rows[t].isEmpty()){e=!1;break}return e},backSpace:function(){this.rows[this.currRow].backSpace()},clearToEndOfRow:function(){this.rows[this.currRow].clearToEndOfRow()},insertChar:function(e){this.rows[this.currRow].insertChar(e)},setPen:function(e){this.rows[this.currRow].setPenStyles(e)},moveCursor:function(e){this.rows[this.currRow].moveCursor(e)},setCursor:function(e){u.log("INFO","setCursor: "+e),this.rows[this.currRow].setCursor(e)},setPAC:function(e){u.log("INFO","pacData = "+JSON.stringify(e));var t=e.row-1;this.nrRollUpRows&&t0&&(n=e?"["+t.join(" | ")+"]":t.join("\n")),n},getTextAndFormat:function(){return this.rows}};var p=function(e,t){this.chNr=e,this.outputFilter=t,this.mode=null,this.verbose=0,this.displayedMemory=new h,this.nonDisplayedMemory=new h,this.lastOutputScreen=new h,this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null};p.prototype={modes:["MODE_ROLL-UP","MODE_POP-ON","MODE_PAINT-ON","MODE_TEXT"],reset:function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.lastCueEndTime=null},getHandler:function(){return this.outputFilter},setHandler:function(e){this.outputFilter=e},setPAC:function(e){this.writeScreen.setPAC(e)},setBkgData:function(e){this.writeScreen.setBkgData(e)},setMode:function(e){e!==this.mode&&(this.mode=e,u.log("INFO","MODE="+e),"MODE_POP-ON"==this.mode?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),"MODE_ROLL-UP"!==this.mode&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=e)},insertChars:function(e){for(var t=0;t=46,t.italics)t.foreground="white";else{var n=Math.floor(e/2)-16;t.foreground=["white","green","blue","cyan","red","yellow","magenta"][n]}u.log("INFO","MIDROW: "+JSON.stringify(t)),this.writeScreen.setPen(t)},outputDataUpdate:function(){var e=u.time;null!==e&&this.outputFilter&&(this.outputFilter.updateData&&this.outputFilter.updateData(e,this.displayedMemory),null!==this.cueStartTime||this.displayedMemory.isEmpty()?this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,e,this.lastOutputScreen),this.cueStartTime=this.displayedMemory.isEmpty()?null:e):this.cueStartTime=e,this.lastOutputScreen.copy(this.displayedMemory))},cueSplitAtTime:function(e){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,e,this.displayedMemory),this.cueStartTime=e))}};var g=function(e,t,n){this.field=e||1,this.outputs=[t,n],this.channels=[new p(1,t),new p(2,n)],this.currChNr=-1,this.lastCmdA=null,this.lastCmdB=null,this.bufferedData=[],this.startTime=null,this.lastTime=null,this.dataCounters={padding:0,char:0,cmd:0,other:0}};g.prototype={getHandler:function(e){return this.channels[e].getHandler()},setHandler:function(e,t){this.channels[e].setHandler(t)},addData:function(e,t){var n,r,i,a=!1;this.lastTime=e,u.setTime(e);for(var o=0;o=16&&r<=31&&r===this.lastCmdA&&i===this.lastCmdB)this.lastCmdA=null,this.lastCmdB=null,u.log("DEBUG","Repeated command ("+l([r,i])+") is dropped");else if(0!==r||0!==i){if(u.log("DATA","["+l([t[o],t[o+1]])+"] -> ("+l([r,i])+")"),(n=this.parseCmd(r,i))||(n=this.parseMidrow(r,i)),n||(n=this.parsePAC(r,i)),n||(n=this.parseBackgroundAttributes(r,i)),!n)if(a=this.parseChars(r,i))if(this.currChNr&&this.currChNr>=0)this.channels[this.currChNr-1].insertChars(a);else u.log("WARNING","No channel found yet. TEXT-MODE?");n?this.dataCounters.cmd+=2:a?this.dataCounters.char+=2:(this.dataCounters.other+=2,u.log("WARNING","Couldn't parse cleaned data "+l([r,i])+" orig: "+l([t[o],t[o+1]])))}else this.dataCounters.padding+=2},parseCmd:function(e,t){var n=null;if(!((20===e||21===e||28===e||29===e)&&32<=t&&t<=47)&&!((23===e||31===e)&&33<=t&&t<=35))return!1;n=20===e||21===e||23===e?1:2;var r=this.channels[n-1];return 20===e||21===e||28===e||29===e?32===t?r.cc_RCL():33===t?r.cc_BS():34===t?r.cc_AOF():35===t?r.cc_AON():36===t?r.cc_DER():37===t?r.cc_RU(2):38===t?r.cc_RU(3):39===t?r.cc_RU(4):40===t?r.cc_FON():41===t?r.cc_RDC():42===t?r.cc_TR():43===t?r.cc_RTD():44===t?r.cc_EDM():45===t?r.cc_CR():46===t?r.cc_ENM():47===t&&r.cc_EOC():r.cc_TO(t-32),this.lastCmdA=e,this.lastCmdB=t,this.currChNr=n,!0},parseMidrow:function(e,t){var n=null;if((17===e||25===e)&&32<=t&&t<=47){if((n=17===e?1:2)!==this.currChNr)return u.log("ERROR","Mismatch channel in midrow parsing"),!1;var r=this.channels[n-1];return r.insertChars([32]),r.cc_MIDROW(t),u.log("DEBUG","MIDROW ("+l([e,t])+")"),this.lastCmdA=e,this.lastCmdB=t,!0}return!1},parsePAC:function(e,t){var n,s=null;if(!((17<=e&&e<=23||25<=e&&e<=31)&&64<=t&&t<=127)&&!((16===e||24===e)&&64<=t&&t<=95))return!1;n=e<=23?1:2,s=64<=t&&t<=95?1===n?r[e]:a[e]:1===n?i[e]:o[e];var u=this.interpretPAC(s,t);return this.channels[n-1].setPAC(u),this.lastCmdA=e,this.lastCmdB=t,this.currChNr=n,!0},interpretPAC:function(e,t){var n=t,r={color:null,italics:!1,indent:null,underline:!1,row:e};return n=t>95?t-96:t-64,r.underline=1==(1&n),n<=13?r.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(n/2)]:n<=15?(r.italics=!0,r.color="white"):r.indent=4*Math.floor((n-16)/2),r},parseChars:function(e,t){var r=null,i=null,a=null;if(e>=25?(r=2,a=e-8):(r=1,a=e),17<=a&&a<=19){var o=t;o=17===a?t+80:18===a?t+112:t+144,u.log("INFO","Special char '"+n(o)+"' in channel "+r),i=[o],this.lastCmdA=e,this.lastCmdB=t}else 32<=e&&e<=127&&(i=0===t?[e]:[e,t],this.lastCmdA=null,this.lastCmdB=null);if(i){var s=l(i);u.log("DEBUG","Char codes = "+s.join(","))}return i},parseBackgroundAttributes:function(e,t){var n,r,i;return((16===e||24===e)&&32<=t&&t<=47||(23===e||31===e)&&45<=t&&t<=47)&&(n={},16===e||24===e?(r=Math.floor((t-32)/2),n.background=s[r],t%2==1&&(n.background=n.background+"_semi")):45===t?n.background="transparent":(n.foreground="black",47===t&&(n.underline=!0)),i=e<24?1:2,this.channels[i-1].setBkgData(n),this.lastCmdA=e,this.lastCmdB=t,!0)},reset:function(){for(var e=0;e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n/g,">").replace(/"/g,""").replace(/'/g,"'"):e}function u(e,t,n,r){for(var i=0;i0&&u(e.arrayAccessFormPaths,t,n,r)&&(t[n]=[t[n]])}function c(e){var t=e.split(/[-T:+Z]/g),n=new Date(t[0],t[1]-1,t[2]),r=t[5].split(".");if(n.setHours(t[3],t[4],r[0]),r.length>1&&n.setMilliseconds(r[1]),t[6]&&t[7]){var i=60*t[6]+Number(t[7]);i=0+("-"==(/\d\d-\d\d:\d\d$/.test(e)?"-":"+")?-1*i:i),n.setMinutes(n.getMinutes()-i-n.getTimezoneOffset())}else-1!==e.indexOf("Z",e.length-1)&&(n=new Date(Date.UTC(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds())));return n}function f(n,r,i,a){return!(r==t&&e.xmlElementsFilter.length>0)||u(e.xmlElementsFilter,n,i,a)}function d(s,h){if(s.nodeType==a){for(var p=new Object,g=s.childNodes,m=0;m0){var i=r.split(".#")[0];return u(e.datetimeAccessFormPaths,t,n,i)?c(t):t}return t}(p.__text,_,h+"."+_)),null!=p["#cdata-section"]&&(p.__cdata=p["#cdata-section"],delete p["#cdata-section"],"property"==e.arrayAccessForm&&delete p["#cdata-section_asArray"]),0==p.__cnt&&"text"==e.emptyNodeForm?p="":1==p.__cnt&&null!=p.__text?p=p.__text:1!=p.__cnt||null==p.__cdata||e.keepCData?p.__cnt>1&&null!=p.__text&&e.skipEmptyTextNodesForObj&&(e.stripWhitespaces&&""==p.__text||""==p.__text.trim())&&delete p.__text:p=p.__cdata,delete p.__cnt,!e.enableToStringFunc||null==p.__text&&null==p.__cdata||(p.toString=function(){return(null!=this.__text?this.__text:"")+(null!=this.__cdata?this.__cdata:"")}),p}if(s.nodeType==n||s.nodeType==r)return s.nodeValue}function h(t,n,r,i){var a="<"+(null!=t&&null!=t.__prefix?t.__prefix+":":"")+n;if(null!=r)for(var o=0;o":">"}function p(e,t){return""}function g(t,n){return"property"==e.arrayAccessForm&&(r=n.toString(),i="_asArray",-1!==r.indexOf(i,r.length-i.length))||0==n.toString().indexOf(e.attributePrefix)||0==n.toString().indexOf("__")||t[n]instanceof Function;var r,i}function m(e){var t=0;if(e instanceof Object)for(var n in e)g(e,n)||t++;return t}function y(t,n,r){return 0==e.jsonPropertiesFilter.length||""==r||u(e.jsonPropertiesFilter,t,n,r)}function E(t){var n=[];if(t instanceof Object)for(var r in t)-1==r.toString().indexOf("__")&&0==r.toString().indexOf(e.attributePrefix)&&n.push(r);return n}function _(t){var n="";return t instanceof Object?n+=function(t){var n="";return null!=t.__cdata&&(n+=""),null!=t.__text&&(e.escapeMode?n+=s(t.__text):n+=t.__text),n}(t):null!=t&&(e.escapeMode?n+=s(t):n+=t),n}function v(e,t){return""===e?t:e+"."+t}function T(e,t,n,r){var i="";if(0==e.length)i+=h(e,t,n,!0);else for(var a=0;a0)for(var r in e)if(!g(e,r)&&(""==t||y(e,r,v(t,r)))){var i=e[r],a=E(i);if(null==i||null==i)n+=h(i,r,a,!0);else if(i instanceof Object)if(i instanceof Array)n+=T(i,r,a,t);else if(i instanceof Date)n+=h(i,r,a,!1),n+=i.toISOString(),n+=p(i,r);else{m(i)>0||null!=i.__text||null!=i.__cdata?(n+=h(i,r,a,!1),n+=S(i,v(t,r)),n+=p(i,r)):n+=h(i,r,a,!0)}else n+=h(i,r,a,!1),n+=_(i),n+=p(i,r)}return n+=_(e)}this.parseXmlString=function(e){var t;window.ActiveXObject||window;if(void 0===e)return null;if(window.DOMParser){var n=new window.DOMParser;try{(t=n.parseFromString(e,"text/xml")).getElementsByTagNameNS("*","parsererror").length>0&&(t=null)}catch(e){t=null}}else 0==e.indexOf("")+2)),(t=new ActiveXObject("Microsoft.XMLDOM")).async="false",t.loadXML(e);return t},this.asArray=function(e){return void 0===e||null==e?[]:e instanceof Array?e:[e]},this.toXmlDateTime=function(e){return e instanceof Date?e.toISOString():"number"==typeof e?new Date(e).toISOString():null},this.asDateTime=function(e){return"string"==typeof e?c(e):e},this.xml2json=function(e){return d(e)},this.xml_str2json=function(e){var t=this.parseXmlString(e);return null!=t?this.xml2json(t):null},this.json2xml_str=function(e){return S(e,"")},this.json2xml=function(e){var t=this.json2xml_str(e);return this.parseXmlString(t)},this.getVersion=function(){return"1.2.0"}}},function(e,t,n){"use strict";var r=n(3),i=n(25),a=n(15),o=n(1);function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}(e,t)||u(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){if(e){if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nt/4/e.length}))).length>1){var n=0,r=(e[e.length-1].ts-e[0].ts)/e.length;return e.forEach((function(t,i){var a=e[i+1];if(a){var o=a.ts-t.ts;n+=o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(r.headers.keys());try{for(p.s();!(a=p.n()).done;){var g=a.value;c+=g+": "+r.headers.get(g)+"\r\n"}}catch(e){p.e(e)}finally{p.f()}if(e.response.responseHeaders=c,!r.body)return r.arrayBuffer().then((function(t){e.response.response=t;var n={loaded:t.byteLength,total:t.byteLength,stream:!1};e.progress(n),e.onload(),e.onend()}));var m,y,T=parseInt(r.headers.get("Content-Length"),10),S=0,A=!1,b=new Uint8Array,I=0;if(E===o.a.ABR_FETCH_THROUGHPUT_CALCULATION_AAST&&i){var R=n,N=0,w=s(r.body.tee(),2),C=w[0],D=w[1];m=C.getReader(),y=[],m.read().then((function r(a){var o=a.value,s=a.done;if(N=Date.now(),o&&o.length){var u=N-R,l=o.length;y.push({chunkDownloadTimeRelativeMS:N-n,chunkDownloadDurationMS:u,chunkBytes:l,kbps:Math.round(8*l/(u/1e3)),bufferLevel:t.getCurrentBufferLevel(h.mediaType)})}if(s){var f=N-n,d=y.reduce((function(e,t){return e+t.chunkBytes}),0);return i.addMeasurement(h,f,y,_,v,c),void e.progress({loaded:d,total:d,lengthComputable:!0,time:i.getEstimatedDownloadDurationMS(h),stream:!0})}return R=Date.now(),m.read().then(r)})),e.reader=D.getReader()}else e.reader=r.body.getReader();var O=[],M=[],P=[],L=!0;f(e,(function t(n){var r=n.value;if(n.done){if(b){if(E!==o.a.ABR_FETCH_THROUGHPUT_CALCULATION_AAST){var i=null;E===o.a.ABR_FETCH_THROUGHPUT_CALCULATION_MOOF_PARSING&&(i=function(e,t){try{var n,r;n=e.filter((function(t,n){return n1){for(var a=0,o=0,s=0;s1)i.push(8*r[s].bytes/u);else{0===o&&(o=n[s].ts);var l=r[s].ts-o;l>1?(i.push(8*a/l),a=0,o=0):a+=r[s].bytes}}if(i.length>0)return i.reduce((function(e,t){return e+t}),0)/i.length}return null}catch(e){return null}}(M,P)),e.progress({loaded:S,total:isNaN(T)?S:T,lengthComputable:!0,time:d(O,S),throughput:i,stream:!0})}e.response.response=b.buffer}return e.onload(),void e.onend()}if(r&&r.length>0){if(b=function(e,t){if(0===e.length)return t;var n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}(b,r),S+=r.length,O.push({ts:Date.now(),bytes:r.length}),E===o.a.ABR_FETCH_THROUGHPUT_CALCULATION_MOOF_PARSING&&L)l.findLastTopIsoBoxCompleted(["moof"],b,I).found&&(L=!1,M.push({ts:performance.now(),bytes:r.length}));var a=l.findLastTopIsoBoxCompleted(["moov","mdat"],b,I);if(a.found){var s,u=a.lastCompletedOffset+a.size;E!==o.a.ABR_FETCH_THROUGHPUT_CALCULATION_MOOF_PARSING||L||(L=!0,P.push({ts:performance.now(),bytes:b.length})),u===b.length?(s=b,b=new Uint8Array):(s=new Uint8Array(b.subarray(0,u)),b=b.subarray(u)),e.progress({data:s.buffer,lengthComputable:!1,noTrace:!0}),I=0}else I=a.lastCompletedOffset,A||(e.progress({lengthComputable:!1,noTrace:!0}),A=!0)}f(e,t)}))})).catch((function(t){e.onerror&&e.onerror(t)}))}))},abort:function(e){if(e.abortController)e.abortController.abort();else if(e.reader)try{e.reader.cancel(),e.onabort()}catch(e){}},calculateDownloadedTime:d,setup:function(e){t=e.dashMetrics}}}c.__dashjs_factory_name="FetchLoader";var f=r.a.getClassFactory(c),d=n(5),h=n(8),p=n(36),g=n(14),m=n(6),y=n(7),E=n(2);function _(){var e,t,n=this.context,r={};function i(){t=Object(m.a)(n).getInstance().getLogger(e)}function a(e){for(var t={},n=0,r=0,i=0,a=0,o=e.length,s=0;se.bitrate&&(n=!1):t=e.bitrate})),n}return e={setup:i,addMeasurement:function(e,t,n,i,o){e&&e.mediaType&&!r[e.mediaType]&&(r[e.mediaType]=[]);var s=e.mediaInfo.bitrateList.find((function(t){return t.id===e.representationId}));r[e.mediaType].push({index:e.index,repId:e.representationId,mediaType:e.mediaType,requestTimeMS:i,adjustedAvailabilityStartTimeMS:e.availabilityStartTime.getTime(),segDurationMS:1e3*e.duration,chunksDurationMS:n.reduce((function(e,t){return e+t.chunkDownloadDurationMS}),0),segmentBytes:n.reduce((function(e,t){return e+t.chunkBytes}),0),bitrate:s&&s.bandwidth,bitrateList:e.mediaInfo.bitrateList,chunkMeasurements:n,fetchDownloadDurationMS:t,throughputCapacityDelayMS:o,getEstimatedBufferLevel:a(n.slice(1))}),r[e.mediaType].length>10&&r[e.mediaType].shift()},getThroughputCapacityDelayMS:function(e,t){var n=r[e.mediaType]&&r[e.mediaType].slice(-3);return!n||n.length<3?0:o(n)?t/4>250?250:t/4:0},getEstimatedDownloadDurationMS:function(e){var n=r[e.mediaType].slice(-1).pop(),i=r[e.mediaType].slice(-3),a=n.chunkMeasurements.slice(-1).pop().chunkDownloadTimeRelativeMS;n.bufferLevelAtSegmentStart=n.getEstimatedBufferLevel(a/2),n.bufferLevelAtSegmentEnd=n.getEstimatedBufferLevel(a);var s=o(i),u=s?.6:.8;if(n.isBufferStable&&1.05*n.segDurationMS.2*n.chunkMeasurements.length){var g=c/f,m=n.segmentBytes/g;return n.fetchDownloadDurationMSn.bitrate)return y=e.bandwidth,!0})),y===n.bitrate?n.fetchDownloadDurationMS*u:u*n.segmentBytes*8*1e3/y}},i(),e}_.__dashjs_factory_name="LowLatencyThroughputModel";var v=r.a.getSingletonFactory(_);function T(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e){e=e||{};var t,n,r,s,u,l,c,_,S,A=this.context,b=e.errHandler,I=e.dashMetrics,R=e.mediaPlayerModel,N=e.requestModifier,w=e.boxParser,C=e.errors,D=e.requestTimeout||0,O=Object(y.a)(A).getInstance(),M=Object(a.a)(A).getInstance();function P(e,t){var a,p=e.request,m=[],y=!0,v=!0,T=new Date,S=T,C=0;if(!N||!I||!b)throw new Error("config object is not correct or missing");var L,F=function(e){if(v=!1,p.requestStartDate=T,p.requestEndDate=new Date,p.firstByteDate=p.firstByteDate||T,!p.checkExistenceOnly){var t=a.response?a.response.responseURL:null,n=a.response?a.response.status:null,r=a.response&&a.response.getAllResponseHeaders?a.response.getAllResponseHeaders():a.response?a.response.responseHeaders:[];I.addHttpRequest(p,t,n,r,e?m:null),p.type===d.a.MPD_TYPE&&I.addManifestUpdate(p)}},x=function(){if(-1!==n.indexOf(a)&&(n.splice(n.indexOf(a),1),v))if(F(!1),t>0){try{if(M.get().streaming.utcSynchronization.enableBackgroundSyncAfterSegmentDownloadError&&p.type===d.a.MEDIA_SEGMENT_TYPE)R.getRetryAttemptsForType(d.a.MEDIA_SEGMENT_TYPE)===t&&O.trigger(E.a.ATTEMPT_BACKGROUND_SYNC)}catch(e){}t--;var r={config:e};s.push(r),r.timeout=setTimeout((function(){-1!==s.indexOf(r)&&(s.splice(s.indexOf(r),1),P(e,t))}),R.getRetryIntervalsForType(p.type))}else{if(p.type===d.a.MSS_FRAGMENT_INFO_SEGMENT_TYPE)return;b.error(new h.a(u[p.type],p.url+" is not available",{request:p,response:a.response})),e.error&&e.error(p,"error",a.response.statusText),e.complete&&e.complete(p,a.response.statusText)}};M.get().streaming.lowLatencyEnabled&&window.fetch&&"arraybuffer"===p.responseType&&p.type===d.a.MEDIA_SEGMENT_TYPE?(L=f(A).create({requestModifier:N,lowLatencyThroughputModel:c,boxParser:w})).setup({dashMetrics:I}):L=Object(i.a)(A).create({requestModifier:N});var U=null,B=N.modifyRequestURL(p.url);if(M.get().streaming.cmcd&&M.get().streaming.cmcd.enabled){var k=M.get().streaming.cmcd.mode;if(k===o.a.CMCD_MODE_QUERY){var G=function(e){try{var t=[],n=l.getQueryParameter(e);return n&&t.push(n),t}catch(e){return[]}}(p);B=g.a.addAditionalQueryParameterToUrl(B,G)}else k===o.a.CMCD_MODE_HEADER&&(U=l.getHeaderParameters(p))}p.url=B;var j=p.checkExistenceOnly?d.a.HEAD:d.a.GET,Y=R.getXHRWithCredentialsForType(p.type);a={url:B,method:j,withCredentials:Y,request:p,onload:function(){a.response.status>=200&&a.response.status<=299&&(F(!0),e.success&&e.success(a.response.response,a.response.statusText,a.response.responseURL),e.complete&&e.complete(p,a.response.statusText))},onend:x,onerror:x,progress:function(t){var n=new Date;y&&(y=!1,(!t.lengthComputable||t.lengthComputable&&t.total!==t.loaded)&&(p.firstByteDate=n)),t.lengthComputable&&(p.bytesLoaded=t.loaded,p.bytesTotal=t.total),t.noTrace||(m.push({s:S,d:t.time?t.time:n.getTime()-S.getTime(),b:[t.loaded?t.loaded-C:0],t:t.throughput}),S=n,C=t.loaded),e.progress&&t&&e.progress(t)},onabort:function(){e.abort&&e.abort(p)},ontimeout:function(e){var t;if(e.lengthComputable){var n=e.loaded/e.total*100;t="Request timeout: loaded: "+e.loaded+", out of: "+e.total+" : "+n.toFixed(3)+"% Completed"}else t="Request timeout: non-computable download size";_.warn(t)},loader:L,timeout:D,headers:U};var H=(new Date).getTime();if(isNaN(p.delayLoadingTime)||H>=p.delayLoadingTime)n.push(a),L.load(a);else{var K={httpRequest:a};r.push(K),K.delayTimeout=setTimeout((function(){if(-1!==r.indexOf(K)){r.splice(r.indexOf(K),1);try{T=new Date,S=T,n.push(K.httpRequest),L.load(K.httpRequest)}catch(e){K.httpRequest.onerror()}}}),p.delayLoadingTime-H)}}return t={load:function(e){e.request?P(e,R.getRetryAttemptsForType(e.request.type)):e.error&&e.error(e.request,"error")},abort:function(){s.forEach((function(e){clearTimeout(e.timeout),e.config.request&&e.config.abort&&e.config.abort(e.config.request)})),s=[],r.forEach((function(e){return clearTimeout(e.delayTimeout)})),r=[],n.forEach((function(e){e.request.type!==d.a.MSS_FRAGMENT_INFO_SEGMENT_TYPE&&(e.onloadend=e.onerror=e.onprogress=void 0,e.loader.abort(e))})),n=[]}},_=Object(m.a)(A).getInstance().getLogger(t),n=[],r=[],s=[],l=Object(p.a)(A).getInstance(),c=v(A).getInstance(),T(S={},d.a.MPD_TYPE,C.DOWNLOAD_ERROR_ID_MANIFEST_CODE),T(S,d.a.XLINK_EXPANSION_TYPE,C.DOWNLOAD_ERROR_ID_XLINK_CODE),T(S,d.a.INIT_SEGMENT_TYPE,C.DOWNLOAD_ERROR_ID_INITIALIZATION_CODE),T(S,d.a.MEDIA_SEGMENT_TYPE,C.DOWNLOAD_ERROR_ID_CONTENT_CODE),T(S,d.a.INDEX_SEGMENT_TYPE,C.DOWNLOAD_ERROR_ID_CONTENT_CODE),T(S,d.a.BITSTREAM_SWITCHING_SEGMENT_TYPE,C.DOWNLOAD_ERROR_ID_CONTENT_CODE),T(S,d.a.OTHER_TYPE,C.DOWNLOAD_ERROR_ID_CONTENT_CODE),u=S,t}S.__dashjs_factory_name="HTTPLoader";var A=r.a.getClassFactory(S);function b(){var e;function t(){e={}}function n(){t()}return n(),{getLoader:function(t){for(var n in e)if(e.hasOwnProperty(n)&&t.startsWith(n))return e[n];return A},registerLoader:function(t,n){e[t]=n},unregisterLoader:function(t){e[t]&&delete e[t]},unregisterAllLoader:t,reset:n}}b.__dashjs_factory_name="SchemeLoaderFactory";var I=r.a.getSingletonFactory(b);t.a=I},function(e,t,n){(function(e){function n(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===n(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===n(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===n(e)},t.isError=function(e){return"[object Error]"===n(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=e.isBuffer}).call(this,n(60).Buffer)},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!i;a--){var o=a>=0?arguments[a]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(t=o+"/"+t,i="/"===o.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var a=t.isAbsolute(e),o="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!a).join("/"))||a||(e="."),e&&o&&(e+="/"),(a?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(e,(function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e})).join("/"))},t.relative=function(e,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),a=r(n.split("/")),o=Math.min(i.length,a.length),s=o,u=0;u=1;--a)if(47===(t=e.charCodeAt(a))){if(!i){r=a;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,a=0,o=e.length-1;o>=0;--o){var s=e.charCodeAt(o);if(47!==s)-1===r&&(i=!1,r=o+1),46===s?-1===t?t=o:1!==a&&(a=1):-1!==t&&(a=-1);else if(!i){n=o+1;break}}return-1===t||-1===r||0===a||1===a&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(26))},function(e,t,n){t.generateISD=n(74).generateISD,t.fromXML=n(75).fromXML,t.renderHTML=n(91).render},function(e,t,n){"use strict";var r=n(3),i=n(13);function a(){return{customTimeRangeArray:[],length:0,add:function(e,t){var n=0;for(n=0;nthis.customTimeRangeArray[n].start;n++);for(this.customTimeRangeArray.splice(n,0,{start:e,end:t}),n=0;n=this.customTimeRangeArray[n].end)this.customTimeRangeArray.splice(n,1),n--;else{if(e>this.customTimeRangeArray[n].start&&tthis.customTimeRangeArray[n].start&&ethis.customTimeRangeArray[n].start&&t=this.customTimeRangeArray.length||e<0?NaN:this.customTimeRangeArray[e].start},end:function(e){return Object(i.a)(e),e>=this.customTimeRangeArray.length||e<0?NaN:this.customTimeRangeArray[e].end}}}a.__dashjs_factory_name="CustomTimeRanges",t.a=r.a.getClassFactory(a)},function(e,t,n){"use strict";n.d(t,"b",(function(){return s}));var r=n(3),i=n(29),a=n(1),o=[{codec:"avc1",compatibleCodecs:["avc3"]},{codec:"avc3",compatibleCodecs:["avc1"]}];function s(){var e="WebKitMediaSource"in window,t="MediaSource"in window;return e||t}function u(){var e,t,n;return e={setConfig:function(e){e&&e.settings&&(t=e.settings)},supportsMediaSource:s,supportsEncryptedMedia:function(){return n},supportsCodec:function(e,n){return n!==a.a.AUDIO&&n!==a.a.VIDEO?Promise.resolve(!0):function(e,n){return t.get().streaming.capabilities.useMediaCapabilitiesApi&&navigator.mediaCapabilities&&navigator.mediaCapabilities.decodingInfo&&(e.codec&&n===a.a.AUDIO||n===a.a.VIDEO&&e.codec&&e.width&&e.height&&e.bitrate&&e.framerate)}(e,n)?function(e,t){return new Promise((function(n){if(e&&e.codec){var r={type:"media-source"};r[t]={},r[t].contentType=e.codec,r[t].width=e.width,r[t].height=e.height,r[t].bitrate=parseInt(e.bitrate),r[t].framerate=parseFloat(e.framerate),navigator.mediaCapabilities.decodingInfo(r).then((function(e){n(e.supported)})).catch((function(){n(!1)}))}else n(!1)}))}(e,n):function(e){return new Promise((function(t){if(e&&e.codec){var n=e.codec;e.width&&e.height&&(n+=';width="'+e.width+'";height="'+e.height+'"'),"MediaSource"in window&&MediaSource.isTypeSupported(n)||"WebKitMediaSource"in window&&WebKitMediaSource.isTypeSupported(n)?t(!0):t(!1)}else t(!1)}))}(e)},setEncryptedMediaSupported:function(e){n=e},supportsEssentialProperty:function(e){try{return-1!==i.a.indexOf(e.schemeIdUri)}catch(e){return!0}},codecRootCompatibleWithCodec:function(e,t){for(var n,r=e.split(".")[0],i=0===t.indexOf(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:null;return parseFloat((O(e)-B()).toFixed(5))}function O(e){var t=e||g;return t.start+t.duration}function M(){g&&o&&o.getElement()?o.play():E=!0}function P(){return g&&o?o.isPaused():null}function L(){g&&o&&o.pause()}function F(){return g&&o?o.isSeeking():null}function x(){return g&&o?o.isStalled():null}function U(e,n,r){g&&o&&(e!==(isNaN(T)?o.getTime():T)&&((S=!0===r)||(T=e,C.trigger(c.a.PLAYBACK_SEEK_ASKED)),t.info("Requesting seek to time: "+e+(S?" (internal)":"")),o.setCurrentTime(e,n)))}function B(){return g&&o?o.getTime():null}function k(){var e=B();if(m&&!isNaN(v)){var t=v/1e3;e>t&&(e-=t)}return e}function G(){return g&&o?o.getPlaybackRate():null}function j(){return g&&o?o.getEnded():null}function Y(){return m}function H(){if(!m||isNaN(v))return NaN;var e=k();if(isNaN(e)||0===e)return 0;var t=(new Date).getTime()+1e3*s.getClientTimeOffset();return Math.max(((t-v-1e3*e)/1e3).toFixed(3),0)}function K(){L(),E=!1,p=0,v=0,R=!1,T=NaN,o&&(C.off(c.a.DATA_UPDATE_COMPLETED,X,e),C.off(c.a.LOADING_PROGRESS,ye,e),C.off(c.a.MANIFEST_UPDATED,Se,e),C.off(c.a.STREAMS_COMPOSED,Ae,e),C.off(h.a.BUFFER_LEVEL_STATE_CHANGED,Ee,e),C.off(h.a.PLAYBACK_PROGRESS,de,e),C.off(h.a.PLAYBACK_TIME_UPDATED,de,e),C.off(h.a.PLAYBACK_ENDED,ce,e),C.off(h.a.STREAM_INITIALIZING,ve,e),C.off(h.a.REPRESENTATION_SWITCH,Te,e),o.setPlaybackRate(1,!0),W(),o.removeEventListener("canplay",Q),o.removeEventListener("canplaythrough",$),o.removeEventListener("play",Z),o.removeEventListener("waiting",J),o.removeEventListener("playing",ee),o.removeEventListener("pause",te),o.removeEventListener("error",fe),o.removeEventListener("seeking",ne),o.removeEventListener("seeked",re),o.removeEventListener("timeupdate",ie),o.removeEventListener("progress",ae),o.removeEventListener("ratechange",oe),o.removeEventListener("loadedmetadata",se),o.removeEventListener("loadeddata",ue),o.removeEventListener("stalled",_e),o.removeEventListener("ended",le)),f=null,o=null,g=null,m=null}function q(e,t){var n=r.getCurrentDVRInfo(t),i=n?n.range:null;return i?e>i.end?Math.max(i.end-p,i.start):e>0&&e+.25_+500)&&(_=e,ie())):z())}),N.get().streaming.wallclockTimeUpdateInterval)}}function W(){clearInterval(f),f=null}function z(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!P()&&m&&0!==o.getReadyState()&&!F()&&!R){e||(e=n.hasVideoTrack()?a.a.VIDEO:a.a.AUDIO);var r=k(),i=q(r,e),s=!isNaN(i)&&i!==r;s&&!F()&&(x()||b||1===o.getReadyState())&&(t.debug("UpdateCurrentTime: Seek to actual time: ".concat(i," from currentTime: ").concat(r)),U(i))}}function X(e){var t=i.convertRepresentationToRepresentationInfo(e.currentRepresentation),n=t?t.mediaInfo.streamInfo:null;null!==n&&g.id===n.id&&(g=n)}function Q(){C.trigger(c.a.CAN_PLAY)}function $(){C.trigger(c.a.CAN_PLAY_THROUGH)}function Z(){t.info("Native video element event: play"),z(),V(),C.trigger(c.a.PLAYBACK_STARTED,{startTime:B()})}function J(){t.info("Native video element event: waiting"),C.trigger(c.a.PLAYBACK_WAITING,{playingTime:B()})}function ee(){t.info("Native video element event: playing"),C.trigger(c.a.PLAYBACK_PLAYING,{playingTime:B()})}function te(){t.info("Native video element event: pause"),C.trigger(c.a.PLAYBACK_PAUSED,{ended:j()})}function ne(){if(S)S=!1;else{var e=B();isNaN(T)||T===e||(e=T),T=NaN,t.info("Seeking to: "+e),V(),C.trigger(c.a.PLAYBACK_SEEKING,{seekTime:e,streamId:g.id})}}function re(){t.info("Native video element event: seeked"),C.trigger(c.a.PLAYBACK_SEEKED)}function ie(){g&&C.trigger(c.a.PLAYBACK_TIME_UPDATED,{timeToEnd:D(),time:B(),streamId:g.id})}function ae(){C.trigger(c.a.PLAYBACK_PROGRESS,{streamId:g.id})}function oe(){var e=G();t.info("Native video element event: ratechange: ",e),C.trigger(c.a.PLAYBACK_RATE_CHANGED,{playbackRate:e})}function se(){t.info("Native video element event: loadedmetadata"),C.trigger(c.a.PLAYBACK_METADATA_LOADED),V()}function ue(){t.info("Native video element event: loadeddata"),C.trigger(c.a.PLAYBACK_LOADED_DATA)}function le(){t.info("Native video element event: ended"),L(),W();var e=n?n.getActiveStreamInfo():null;e&&C.trigger(c.a.PLAYBACK_ENDED,{isLast:e.isLast})}function ce(e){if(f&&e.isLast){t.info("onPlaybackEnded -- PLAYBACK_ENDED but native video element didn't fire ended");var n=e.seekTime?e.seekTime:O();o.setCurrentTime(n),L(),W()}}function fe(e){var t=e.target||e.srcElement;C.trigger(c.a.PLAYBACK_ERROR,{error:t.error})}function de(){m&&he()&&N.get().streaming.liveCatchup.playbackRate>0&&!P()&&!F()&&(function(){try{if(he()&&N.get().streaming.liveCatchup.playbackRate>0&&B()>0){var e=ge(),t=H(),n=y.getLiveDelay(),r=y.getLiveCatchupLatencyThreshold(),i=N.get().streaming.liveCatchup.minDrift;if(e===a.a.LIVE_CATCHUP_MODE_LOLP){var o=pe(),s=N.get().streaming.liveCatchup.playbackBufferMin;return function(e,t,n,r,i,a){try{var o=Math.abs(e-t);return(isNaN(a)||e<=a)&&(o>n||rr&&(isNaN(n)||e<=n)}catch(e){return!1}}(t,n,r,i)}}catch(e){return!1}}()?function(){if(o){var e,i=o.getPlaybackRate(),s=N.get().streaming.liveCatchup.playbackRate,u=H(),l=y.getLiveDelay(),c=pe();if(ge()===a.a.LIVE_CATCHUP_MODE_LOLP){N.get().streaming.liveCatchup.minDrift;var f=N.get().streaming.liveCatchup.playbackBufferMin;e=function(e,n,r,i,a,o,s){var u,l=e;if(or/2&&(b=!1);Math.abs(s-u)<=I&&(u=null);return{newRate:u}}(s,u,l,0,f,c,i)}else e=function(e,t,n,r,i){var a=e,o=t-n,s=5*o,u=2*a/(1+Math.pow(Math.E,-s)),l=1-a+u;b&&(r>n/2?b=!1:o>0&&(l=1));Math.abs(i-l)<=I&&(l=null);return{newRate:l}}(s,u,l,c,i);var d=e.newRate;d&&o.setPlaybackRate(d);var h=u-l;N.get().streaming.liveCatchup.maxDrift>0&&!A&&h>N.get().streaming.liveCatchup.maxDrift?(t.info("Low Latency catchup mechanism. Latency too high, doing a seek to live point"),A=!0,p=n&&n.hasVideoTrack()?a.a.VIDEO:a.a.AUDIO,g=r.getCurrentDVRInfo(p),(m=g?g.range:null)&&!isNaN(m.end)&&U(m.end-y.getLiveDelay(),!0,!1)):A=!1}var p,g,m}():me())}function he(){return N.get().streaming.liveCatchup.enabled||N.get().streaming.lowLatencyEnabled}function pe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=null;return n.getActiveStreamProcessors().forEach((function(n){if(!e||0===e.length||-1===e.indexOf(n.getType())){var r=n.getBufferLevel();t=null===t?r:Math.min(t,r)}})),t}function ge(){var e=N.get().streaming.liveCatchup.playbackBufferMin;return N.get().streaming.liveCatchup.mode!==a.a.LIVE_CATCHUP_MODE_LOLP||null===e||isNaN(e)?a.a.LIVE_CATCHUP_MODE_DEFAULT:a.a.LIVE_CATCHUP_MODE_LOLP}function me(){o&&o.setPlaybackRate(1)}function ye(e){if(!1===e.stream&&N.get().streaming.lowLatencyEnabled&&!isNaN(e.request.duration)){var n=1.2*e.request.duration;n>y.getLiveDelay()&&(t.warn("Browser does not support fetch API with StreamReader. Increasing live delay to be 20% higher than segment duration:",n.toFixed(2)),N.update({streaming:{delay:{liveDelay:n}}}))}}function Ee(e){e.streamId===g.id&&(he()?e.state!==u.BUFFER_EMPTY||F()||b||(b=!0,me()):N.get().streaming.buffer.setStallState&&o.setStallState(e.mediaType,e.state===u.BUFFER_EMPTY))}function _e(e){C.trigger(c.a.PLAYBACK_STALLED,{e:e})}function ve(e){var n;(n=e.mediaInfo)&&n.supplementalProperties&&"true"===n.supplementalProperties[a.a.SUPPLEMENTAL_PROPERTY_LL_SCHEME]&&(t.debug("Low Latency critical SupplementalProperty set: Enabling low Latency"),N.update({streaming:{lowLatencyEnabled:!0}}))}function Te(e){var t=n.getActiveStreamInfo();if(N.get().streaming.lowLatencyEnabledByManifest&&e&&t&&e.currentRepresentation&&e.streamId&&e.streamId===t.id&&e.mediaType&&(e.mediaType===a.a.VIDEO||e.mediaType===a.a.AUDIO)){var r=!e.currentRepresentation.availabilityTimeComplete;r&&N.update({streaming:{lowLatencyEnabled:r}})}}function Se(){R=!0}function Ae(){R=!1}return e={initialize:function(t,n){g=t,!0!==n&&function(){o.addEventListener("canplay",Q),o.addEventListener("canplaythrough",$),o.addEventListener("play",Z),o.addEventListener("waiting",J),o.addEventListener("playing",ee),o.addEventListener("pause",te),o.addEventListener("error",fe),o.addEventListener("seeking",ne),o.addEventListener("seeked",re),o.addEventListener("timeupdate",ie),o.addEventListener("progress",ae),o.addEventListener("ratechange",oe),o.addEventListener("loadedmetadata",se),o.addEventListener("loadeddata",ue),o.addEventListener("stalled",_e),o.addEventListener("ended",le),m=g.manifestInfo.isDynamic,A=!1,b=!1,S=!1;var t="undefined"!=typeof navigator?navigator.userAgent.toLowerCase():"",n=/safari/.test(t)&&!/chrome/.test(t);I=n?.25:.02,C.on(c.a.DATA_UPDATE_COMPLETED,X,e),C.on(c.a.LOADING_PROGRESS,ye,e),C.on(c.a.MANIFEST_UPDATED,Se,e),C.on(c.a.STREAMS_COMPOSED,Ae,e),C.on(h.a.BUFFER_LEVEL_STATE_CHANGED,Ee,e),C.on(h.a.PLAYBACK_PROGRESS,de,e),C.on(h.a.PLAYBACK_TIME_UPDATED,de,e),C.on(h.a.PLAYBACK_ENDED,ce,e,{priority:l.a.EVENT_PRIORITY_HIGH}),C.on(h.a.STREAM_INITIALIZING,ve,e),C.on(h.a.REPRESENTATION_SWITCH,Te,e),E&&(E=!1,M())}()},setConfig:function(e){e&&(e.streamController&&(n=e.streamController),e.dashMetrics&&(r=e.dashMetrics),e.mediaPlayerModel&&(y=e.mediaPlayerModel),e.adapter&&(i=e.adapter),e.videoModel&&(o=e.videoModel),e.timelineConverter&&(s=e.timelineConverter),e.settings&&(N=e.settings))},getTimeToStreamEnd:D,getBufferLevel:pe,getTime:B,getNormalizedTime:k,getIsManifestUpdateInProgress:function(){return R},getPlaybackRate:G,getPlayedRanges:function(){return g&&o?o.getPlayedRanges():null},getEnded:j,getIsDynamic:Y,getStreamController:function(){return n},computeAndSetLiveDelay:function(e,n){var r,o,s,u=!isNaN(e)&&isFinite(e)?e:NaN,l=i.getSuggestedPresentationDelay();if(N.get().streaming.delay.applyServiceDescription&&isNaN(N.get().streaming.delay.liveDelay)&&isNaN(N.get().streaming.delay.liveDelayFragmentCount)&&function(e){if(!e||!e.serviceDescriptions)return;for(var n=null,r=0;r0&&(t.debug("Apply LL properties coming from service description. Target Latency (ms):",n.latency.target),N.update({streaming:{delay:{liveDelay:n.latency.target/1e3},liveCatchup:{minDrift:(n.latency.target+500)/1e3,maxDrift:n.latency.max>n.latency.target?(n.latency.max-n.latency.target+500)/1e3:void 0}}})),n.playbackRate&&n.playbackRate.max>1&&(t.debug("Apply LL properties coming from service description. Max PlaybackRate:",n.playbackRate.max),N.update({streaming:{liveCatchup:{playbackRate:n.playbackRate.max-1}}})))}(n),r=y.getLiveDelay()?y.getLiveDelay():null===N.get().streaming.delay.liveDelayFragmentCount||isNaN(N.get().streaming.delay.liveDelayFragmentCount)||isNaN(u)?!0===N.get().streaming.delay.useSuggestedPresentationDelay&&null!==l&&!isNaN(l)&&l>0?l:isNaN(u)?n&&!isNaN(n.minBufferTime)?4*n.minBufferTime:4*g.manifestInfo.minBufferTime:4*u:u*N.get().streaming.delay.liveDelayFragmentCount,null!==(s=i.getAvailabilityStartTime())&&(v=s),n&&n.dvrWindowSize>0){var c=Math.max(n.dvrWindowSize-10,n.dvrWindowSize/2);o=Math.min(r,c)}else o=r;return p=o,o},getLiveDelay:function(){return p},getCurrentLiveLatency:H,play:M,isPaused:P,pause:L,isSeeking:F,getStreamEndTime:O,seek:U,reset:K,updateCurrentTime:z,getAvailabilityStartTime:function(){return v}},t=Object(d.a)(w).getInstance().getLogger(e),K(),e}p.__dashjs_factory_name="PlaybackController";var g=f.a.getSingletonFactory(p),m=n(18),y=n(8),E=n(9),_=n(15),v=n(5);function T(e){var t,n,r,i,o,s,u=this.context,l=Object(_.a)(u).getInstance(),f=e.textController,h=e.eventBus,p=[],g=[],m=!1,T=e.mediaSource,S=null;function A(e){return new Promise((function(t){P((function(){i.changeType&&i.changeType(e),t()}))}))}function b(e){return i=f.getTextSourceBuffer(e),Promise.resolve()}function I(){if("function"==typeof i.addEventListener)try{i.addEventListener("updateend",O,!1),i.addEventListener("error",M,!1),i.addEventListener("abort",M,!1)}catch(e){s=setInterval(O,50)}else s=setInterval(O,50)}function R(e){return new Promise((function(t){i&&l.get().streaming.buffer.useAppendWindow?P((function(){try{if(!i)return void t();var n=T.duration,a=0;e&&!isNaN(e.start)&&!isNaN(e.duration)&&isFinite(e.duration)&&(n=e.start+e.duration),e&&!isNaN(e.start)&&(a=e.start),i.appendWindowEnd===n&&i.appendWindowStart===a||(i.appendWindowStart=0,i.appendWindowEnd=n+.01,i.appendWindowStart=Math.max(a-.1,0),r.debug("Updated append window for ".concat(o.type,". Set start to ").concat(i.appendWindowStart," and end to ").concat(i.appendWindowEnd))),t()}catch(e){r.warn("Failed to set append window"),t()}})):t()}))}function N(e){return new Promise((function(t){i?P((function(){try{i.timestampOffset===e||isNaN(e)||(i.timestampOffset=e,r.debug("Set MSE timestamp offset to ".concat(e))),t()}catch(e){t()}})):t()}))}function w(){return new Promise((function(e){P((function(){var t=i.appendWindowStart,n=i.appendWindowEnd;i&&(i.abort(),i.appendWindowStart=t,i.appendWindowEnd=n),e()}))}))}function C(){if(!m&&g.length>0){m=!0;var e=g[0];g.splice(0,1);var t=function(){m=!1,g.length>0&&C.call(this),e&&e.data&&e.data.segmentType&&e.data.segmentType!==v.a.INIT_SEGMENT_TYPE&&delete e.data.bytes,e.promise.resolve({chunk:e.data})};try{S=e.request,0===e.data.bytes.byteLength?t.call(this):(i.appendBuffer?i.appendBuffer(e.data.bytes):i.append(e.data.bytes,e.data),P(t.bind(this)))}catch(t){r.fatal('SourceBuffer append failed "'+t+'"'),g.length>0?C():m=!1,delete e.data.bytes,e.promise.reject({chunk:e.data,error:new y.a(t.code,t.message)})}}}function D(){p.length>0&&(i.updating||(p.shift()(),D()))}function O(){i.updating||D()}function M(e){var t,r,i=e.target||{};t=c.a.SOURCE_BUFFER_ERROR,r={error:i,lastRequestAppended:S}||{},h.trigger(t,r,{streamId:o.streamInfo.id,mediaType:n})}function P(e){p.push(e),i.updating||D()}return t={getType:function(){return n},getAllBufferRanges:function(){try{return i.buffered}catch(e){return r.error("getAllBufferRanges exception: "+e.message),null}},getBuffer:function(){return i},append:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return new Promise((function(r,i){e?(g.push({data:e,promise:{resolve:r,reject:i},request:n}),P(C.bind(t))):i({chunk:e,error:new y.a(E.a.APPEND_ERROR_CODE,E.a.APPEND_ERROR_MESSAGE)})}))},remove:function(e){return new Promise((function(t,n){var r=e.start,a=e.end;r>=0&&a>r?P((function(){try{i.remove(r,a),P((function(){t({from:r,to:a,unintended:!1}),e.resolve&&e.resolve()}))}catch(t){n({from:r,to:a,unintended:!1,error:new y.a(E.a.REMOVE_ERROR_CODE,E.a.REMOVE_ERROR_MESSAGE)}),e.reject&&e.reject(t)}})):t()}))},abort:function(){return new Promise((function(e){try{g=[],"open"===T.readyState?P((function(){try{i&&i.abort(),e()}catch(t){e()}})):i&&i.setTextTrack&&"ended"===T.readyState?(i.abort(),e()):e()}catch(t){e()}}))},reset:function(){if(i){try{p=[],function(){try{"function"==typeof i.removeEventListener&&(i.removeEventListener("updateend",O,!1),i.removeEventListener("error",M,!1),i.removeEventListener("abort",M,!1)),clearInterval(s)}catch(e){r.error(e)}}(),m=!1,g=[],i.getClassName&&"TextSourceBuffer"===i.getClassName()||(r.debug("Removing sourcebuffer from media source"),T.removeSourceBuffer(i))}catch(e){}i=null}S=null},updateTimestampOffset:N,initializeForStreamSwitch:function(e,t,r){n=(o=e).type;var a=o.codec;!function(e){i=e.getBuffer()}(r),I();var s=[];return s.push(w),s.push(R(o.streamInfo)),s.push(A(a)),t&&void 0!==t.MSETimeOffset&&s.push(N(t.MSETimeOffset)),Promise.all(s)},initializeForFirstUse:function(e,t,r){n=(o=t).type;var s=o.codec;try{if(s.match(/application\/mp4;\s*codecs="(stpp|wvtt).*"/i))return b(e);i=T.addSourceBuffer(s),I();var u=[];return u.push(R(o.streamInfo)),r&&void 0!==r.MSETimeOffset&&u.push(N(r.MSETimeOffset)),Promise.all(u)}catch(t){return o.type==a.a.TEXT&&!o.isFragmented||-1!==s.indexOf('codecs="stpp')||-1!==s.indexOf('codecs="vtt')?b(e):Promise.reject(t)}},updateAppendWindow:R,changeType:A},r=Object(d.a)(u).getInstance().getLogger(t),t}T.__dashjs_factory_name="SourceBufferSink";var S=f.a.getClassFactory(T);function A(){var e={};return{save:function(t){var n=t.streamId,r=t.representationId;e[n]=e[n]||{},e[n][r]=t},extract:function(t,n){return e&&e[t]&&e[t][n]?e[t][n]:null},reset:function(){e={}}}}A.__dashjs_factory_name="InitCache";var b=f.a.getSingletonFactory(A);function I(e){e=e||{};var t,n,r,i,o,s,f,p,g,_,T,A,I,R,N,w,C,D,O=this.context,M=Object(l.a)(O).getInstance(),P=e.errHandler,L=e.fragmentModel,F=e.representationController,x=e.adapter,U=e.textController,B=e.abrController,k=e.playbackController,G=e.streamInfo,j=e.type,Y=e.settings;function H(e){s=e}function K(e){return x.convertRepresentationToRepresentationInfo(F.getRepresentationForQuality(e))}function q(e,t,n){var r=K(n);return t&&t[j]&&(j===a.a.VIDEO||j===a.a.AUDIO)?g.initializeForStreamSwitch(e,r,t[j]):g.initializeForFirstUse(G,e,r)}function V(e){Y.get().streaming.cacheInitSegments&&(n.info("Init fragment finished loading saving to",j+"'s init cache"),N.save(e.chunk)),n.debug("Append Init fragment",j," with representationId:",e.chunk.representationId," and quality:",e.chunk.quality,", data size:",e.chunk.bytes.byteLength),z(e.chunk)}function W(e){z(e.chunk,e.request)}function z(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;g.append(e,t).then((function(e){Q(e)})).catch((function(e){Q(e)})),e.mediaInfo.type===a.a.VIDEO&&Ee(c.a.VIDEO_CHUNK_RECEIVED,{chunk:e})}function X(e){if(e&&e.length>0)for(var t=0,r=e.length;t0){var e=Math.max(.2*o,1),t=o-e,r=Math.min(Y.get().streaming.buffer.bufferTimeAtTopQuality,.9*t),i=Math.min(Y.get().streaming.buffer.bufferTimeAtTopQualityLongForm,.9*t),a={streaming:{buffer:{bufferToKeep:parseFloat(e.toFixed(5)),bufferTimeAtTopQuality:parseFloat(r.toFixed(5)),bufferTimeAtTopQualityLongForm:parseFloat(i.toFixed(5))}}};Y.update(a)}}(),void(22!==e.error.code&&ye()||(n.warn("Clearing playback buffer to overcome quota exceed situation"),Ee(c.a.QUOTA_EXCEEDED,{criticalBufferLevel:o,quotaExceededTime:e.chunk.start}),ue(se())));if(g&&(re(),R=!1,(T=e.chunk)&&T.endFragment)){T&&!isNaN(T.index)&&(f=Math.max(T.index,f),ie());var t=g.getAllBufferRanges();T.segmentType===v.a.MEDIA_SEGMENT_TYPE&&(X(t),J(),function(){if(isNaN(D))return;if(j!==a.a.AUDIO&&j!==a.a.VIDEO)return void(D=NaN);var e=k.getTime(),t=ne(D,0);if(e===D&&t)return void(D=NaN);var n=F.getCurrentRepresentation().segmentDuration;if(!(t=ne(D,n)))return;Y.get().streaming.buffer.enableSeekDecorrelationFix&&Math.abs(e-D)>n?D<=t.end&&k.seek(Math.max(D,t.start),!1,!0):en){var i=Math.max(0,e-n),a=L.getRequests({state:m.a.FRAGMENT_MODEL_EXECUTED,time:e,threshold:.01})[0];if(a&&(i=Math.min(a.startTime,i)),i>0)return{start:r,end:i}}return null}(e,n),i=function(e,t){var n=t.end(t.length-1)+.5,r=G.manifestInfo.duration>=Y.get().streaming.buffer.longFormContentDurationThreshold?Y.get().streaming.buffer.bufferTimeAtTopQualityLongForm:Y.get().streaming.buffer.bufferTimeAtTopQuality;if(n-e>r){var i=e+r,a=L.getRequests({state:m.a.FRAGMENT_MODEL_EXECUTED,time:e,threshold:.01})[0];if(a&&(i=Math.max(a.startTime+a.duration,i)),i=a&&e=p-1,t=k.getTimeToStreamEnd(G)-i<=0;!e&&!t||r||(ge(!0),n.debug("checkIfBufferingCompleted trigger BUFFERING_COMPLETED for stream id ".concat(G.id," and type ").concat(j)))}function ae(){j!==a.a.AUDIO&&j!==a.a.VIDEO||((!Y.get().streaming.lowLatencyEnabled&&i=Y.get().streaming.buffer.stallThreshold||Y.get().streaming.lowLatencyEnabled&&i>0)&&oe(u.BUFFER_LOADED))}function oe(e){_===e||e===u.BUFFER_EMPTY&&0===k.getTime()||j===a.a.TEXT&&!U.isTextEnabled()||(_=e,Ee(c.a.BUFFER_LEVEL_STATE_CHANGED,{state:e}),Ee(e===u.BUFFER_LOADED?c.a.BUFFER_LOADED:c.a.BUFFER_EMPTY),n.debug(e===u.BUFFER_LOADED?"Got enough buffer to start":"Waiting for more buffer before starting playback"))}function se(){var e=[],t=g.getAllBufferRanges();if(!t||0===t.length)return e;var n=k.getTime(),r=Math.max(0,n-Y.get().streaming.buffer.bufferToKeep),i=L.getRequests({state:m.a.FRAGMENT_MODEL_EXECUTED,time:n,threshold:.01})[0];if(i)r=Math.min(i.startTime,r);else if(0===n&&k.getIsDynamic())return[];if(t.start(0)<=r){for(var a={start:0,end:r},o=0;o=Y.get().streaming.buffer.bufferPruningInterval&&(A=0,g&&j!==a.a.TEXT&&(r||ue(se())))}function pe(){ae()}function ge(e){r!==e&&((r=e)?Ee(c.a.BUFFERING_COMPLETED):p=Number.POSITIVE_INFINITY)}function me(){try{var e,t,n=g.getAllBufferRanges(),r=0;if(!n)return r;for(t=0,e=n.length;t1&&void 0!==arguments[1]?arguments[1]:[];return new Promise((function(r,i){if(N&&e&&s){var a=B.getQualityFor(j,G.id);g=S(O).create({mediaSource:s,textController:U,eventBus:M}),q(e,t,a).then((function(){return fe(K(a))})).then((function(){r(g)})).catch((function(e){n.fatal("Caught error on create SourceBuffer: "+e),P.error(new y.a(E.a.MEDIASOURCE_TYPE_UNSUPPORTED_CODE,E.a.MEDIASOURCE_TYPE_UNSUPPORTED_MESSAGE+j)),i(e)}))}else r(null)}))},getBuffer:function(){return g},getBufferLevel:function(){return i},getRangeAt:ne,setMediaSource:H,getMediaSource:function(){return s},appendInitSegmentFromCache:function(e){var t=N.extract(G.id,e);return!!t&&(n.info("Append Init fragment",j," with representationId:",t.representationId," and quality:",t.quality,", data size:",t.bytes.byteLength),z(t),!0)},getIsBufferingCompleted:function(){return r},setIsBufferingCompleted:ge,getIsPruningInProgress:function(){return I},reset:function(e,t){M.off(c.a.INIT_FRAGMENT_LOADED,V,this),M.off(c.a.MEDIA_FRAGMENT_LOADED,W,this),M.off(c.a.WALLCLOCK_TIME_UPDATED,he,this),M.off(h.a.PLAYBACK_PLAYING,te,this),M.off(h.a.PLAYBACK_PROGRESS,J,this),M.off(h.a.PLAYBACK_TIME_UPDATED,J,this),M.off(h.a.PLAYBACK_RATE_CHANGED,pe,this),M.off(h.a.PLAYBACK_STALLED,ee,this),_e(e,t)},prepareForPlaybackSeek:function(){return r&&ge(!1),g.abort()},prepareForReplacementTrackSwitch:function(e){return new Promise((function(t,n){g.abort().then((function(){return de()})).then((function(){return g.changeType(e)})).then((function(){return $()})).then((function(){ge(!1),t()})).catch((function(e){n(e)}))}))},prepareForNonReplacementTrackSwitch:function(e){return new Promise((function(t,n){de().then((function(){return g.changeType(e)})).then((function(){t()})).catch((function(e){n(e)}))}))},prepareForReplacementQualitySwitch:function(){return new Promise((function(e,t){g.abort().then((function(){return de()})).then((function(){return $()})).then((function(){ge(!1),e()})).catch((function(e){t(e)}))}))},updateAppendWindow:de,getAllRangesWithSafetyFactor:Z,getContinuousBufferTimeForTargetTime:function(e){try{var t=e,n=g.getAllBufferRanges();if(!n||0===n.length)return NaN;for(var r=0;t===e&&r=i&&t<=a&&(t=a),r+=1}return t===e?NaN:t}catch(e){}},clearBuffers:ue,pruneAllSafely:$,updateBufferTimestampOffset:fe,setSeekTarget:function(e){D=e},segmentRequestingCompleted:function(e){isNaN(e)||(p=e,ie())}},n=Object(d.a)(O).getInstance().getLogger(t),N=b(O).getInstance(),_e(),t}I.__dashjs_factory_name="BufferController";var R=f.a.getClassFactory(I);function N(e){e=e||{};var t,n,r,i,a,o,s=this.context,u=Object(l.a)(s).getInstance(),f=e.textController,d=e.errHandler,h=e.streamInfo,p=e.type;function g(e){i=e}function m(e){var t,r,i;n!==e&&((n=e)&&(t=c.a.BUFFERING_COMPLETED,i=r||{},u.trigger(t,i,{streamId:h.id,mediaType:p})))}function _(e){e.chunk.bytes&&!n&&(o.save(e.chunk),a.append(e.chunk),m(!0))}return t={initialize:function(e){g(e)},getStreamId:function(){return h.id},getType:function(){return p},getBufferControllerType:function(){return"NotFragmentedTextBufferController"},createBufferSink:function(e){return new Promise((function(t,n){try{(a=S(s).create({mediaSource:i,textController:f,eventBus:u})).initializeForFirstUse(h,e),r||(a.getBuffer()&&"function"==typeof a.getBuffer().initialize&&a.getBuffer().initialize(),r=!0),t(a)}catch(e){d.error(new y.a(E.a.MEDIASOURCE_TYPE_UNSUPPORTED_CODE,E.a.MEDIASOURCE_TYPE_UNSUPPORTED_MESSAGE+p)),n(e)}}))},getBuffer:function(){return a},getBufferLevel:function(){return 0},getRangeAt:function(){return null},getAllRangesWithSafetyFactor:function(){return[]},getContinuousBufferTimeForTargetTime:function(){return Number.POSITIVE_INFINITY},setMediaSource:g,getMediaSource:function(){return i},appendInitSegmentFromCache:function(e){return null!==o.extract(h.id,e)},getIsBufferingCompleted:function(){return n},setIsBufferingCompleted:m,getIsPruningInProgress:function(){return!1},reset:function(e){u.off(c.a.INIT_FRAGMENT_LOADED,_,t),!e&&a&&(a.abort(),a.reset(),a=null)},clearBuffers:function(){return Promise.resolve()},prepareForPlaybackSeek:function(){return Promise.resolve()},prepareForReplacementTrackSwitch:function(){return n=!1,Promise.resolve()},setSeekTarget:function(){},updateAppendWindow:function(){return Promise.resolve()},pruneAllSafely:function(){return Promise.resolve()},updateBufferTimestampOffset:function(){return Promise.resolve()},segmentRequestingCompleted:function(){}},r=!1,i=null,n=!1,o=b(s).getInstance(),u.on(c.a.INIT_FRAGMENT_LOADED,_,t),t}N.__dashjs_factory_name="NotFragmentedTextBufferController";var w=f.a.getClassFactory(N);function C(e){e=e||{};var t,n,r,i,o,s,f,p,g,y,E,_,v,T=this.context,S=Object(l.a)(T).getInstance(),A=e.dashMetrics,b=e.mediaPlayerModel,I=e.fragmentModel,R=e.abrController,N=e.playbackController,w=e.textController,C=e.type,D=e.bufferController,O=e.settings;function M(e){if(!D.getIsBufferingCompleted()){P();var t=isNaN(e)?0:e;s=setTimeout(L,t)}}function P(){s&&(clearTimeout(s),s=null)}function L(){try{if(function(){try{return C===a.a.TEXT&&!w.isTextEnabled()||N.isPaused()&&(!N.getStreamController().getInitialPlayback()||!N.getStreamController().getAutoPlay())&&!O.get().streaming.scheduling.scheduleWhilePaused}catch(e){return!1}}())return void P();if(function(){try{return i&&(isNaN(y)||E||(e=n.id,t=R.getMaxAllowedIndexFor(C,e),!(!isNaN(g)&&g==t||(r.info("Top quality "+C+" index has changed from "+g+" to "+t),g=t,0)))||function(){if(!C||!i)return!0;return A.getCurrentBufferLevel(C)=O.get().streaming.buffer.longFormContentDurationThreshold?O.get().streaming.buffer.bufferTimeAtTopQualityLongForm:O.get().streaming.buffer.bufferTimeAtTopQuality:b.getStableBufferTime()}catch(e){return b.getStableBufferTime()}}():e}function x(){U(!0)}function U(e){if(N&&I){var t=I.getRequests({state:m.a.FRAGMENT_MODEL_EXECUTED,time:N.getTime(),threshold:0})[0];t&&N.getTime()>=t.startTime&&((!p.mediaInfo||t.mediaInfo.type===p.mediaInfo.type&&t.mediaInfo.id!==p.mediaInfo.id)&&e&&S.trigger(c.a.TRACK_CHANGE_RENDERED,{mediaType:C,oldMediaInfo:p.mediaInfo,newMediaInfo:t.mediaInfo,streamId:n.id}),t.quality===p.quality&&t.adaptationIndex===p.adaptationIndex||!e||(r.debug("Quality change rendered for streamId ".concat(n.id," and type ").concat(C)),S.trigger(c.a.QUALITY_CHANGE_RENDERED,{mediaType:C,oldQuality:p.quality,newQuality:t.quality,streamId:n.id})),p={mediaInfo:t.mediaInfo,quality:t.quality,adaptationIndex:t.adaptationIndex})}}function B(e){r.debug("Appended bytes for ".concat(e.mediaType," and stream id ").concat(n.id)),(isNaN(e.index)||isNaN(y))&&(y=e.quality,r.info("["+C+"] lastInitializedRepresentationInfo changed to "+e.quality)),M(0)}function k(){I.abortRequests(),P()}function G(){O.get().streaming.scheduling.scheduleWhilePaused||M()}function j(e){A.updatePlayListTraceMetrics({playbackspeed:e.playbackRate.toString()})}function Y(){v=!0,o=0,y=NaN,p={mediaInfo:void 0,quality:NaN,adaptationIndex:NaN},g=NaN,E=!1,_=!1}return t={initialize:function(e){f=e,S.on(c.a.BYTES_APPENDED_END_FRAGMENT,B,t),S.on(c.a.URL_RESOLUTION_FAILED,k,t),S.on(h.a.PLAYBACK_STARTED,G,t),S.on(h.a.PLAYBACK_RATE_CHANGED,j,t),S.on(h.a.PLAYBACK_TIME_UPDATED,x,t)},getType:function(){return C},getStreamId:function(){return n.id},setCurrentRepresentation:function(e){i=e},setTimeToLoadDelay:function(e){o=e},getTimeToLoadDelay:function(){return o},setSwitchTrack:function(e){E=e},getSwitchStrack:function(){return E},startScheduleTimer:M,clearScheduleTimer:P,reset:function(){S.off(c.a.BYTES_APPENDED_END_FRAGMENT,B,t),S.off(c.a.URL_RESOLUTION_FAILED,k,t),S.off(h.a.PLAYBACK_STARTED,G,t),S.off(h.a.PLAYBACK_RATE_CHANGED,j,t),S.off(h.a.PLAYBACK_TIME_UPDATED,x,t),P(),U(!1),Y(),n=null},getBufferTarget:F,getPlaybackController:function(){return N},setCheckPlaybackQuality:function(e){v=e},setInitSegmentRequired:function(e){_=e}},r=Object(d.a)(T).getInstance().getLogger(t),Y(),n=e.streamInfo,t}C.__dashjs_factory_name="ScheduleController";var D=f.a.getClassFactory(C),O=n(54),M=n(13),P=n(31),L=n(23),F=n(11),x=n(20);function U(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var B=function e(){U(this,e),this.start=null,this.mstart=null,this.starttype=null,this.trace=[]};B.INITIAL_PLAYOUT_START_REASON="initial_playout",B.SEEK_START_REASON="seek",B.RESUME_FROM_PAUSE_START_REASON="resume",B.METRICS_COLLECTION_START_REASON="metrics_collection_start";var k=function e(){U(this,e),this.representationid=null,this.subreplevel=null,this.start=null,this.mstart=null,this.duration=null,this.playbackspeed=null,this.stopreason=null};k.REPRESENTATION_SWITCH_STOP_REASON="representation_switch",k.REBUFFERING_REASON="rebuffering",k.USER_REQUEST_STOP_REASON="user_request",k.END_OF_PERIOD_STOP_REASON="end_of_period",k.END_OF_CONTENT_STOP_REASON="end_of_content",k.METRICS_COLLECTION_STOP_REASON="metrics_collection_end",k.FAILURE_STOP_REASON="failure";var G=n(32);function j(e){e=e||{};var t,n,r,i,s,f,h,p,g,_,T,S,A,b=this.context,I=Object(l.a)(b).getInstance(),N=e.streamInfo,C=e.type,U=e.errHandler,B=e.mimeType,j=e.timelineConverter,Y=e.adapter,H=e.manifestModel,K=e.mediaPlayerModel,q=e.fragmentModel,V=e.abrController,W=e.playbackController,z=e.mediaController,X=e.textController,Q=e.dashMetrics,$=e.settings,Z=e.boxParser,J=e.segmentBlacklistController;function ee(){return N.id}function te(){return C}function ne(){return Y.getIsTextTrack(p.getData())}function re(){s=[],i=null,A=0,g=!1,_=!1}function ie(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(e.sender)if(W.getIsManifestUpdateInProgress())le();else if((!ne()||X.isTextEnabled())&&f&&e.representationId&&!f.appendInitSegmentFromCache(e.representationId)){var n=p.getCurrentRepresentation();if(0===n.range)return void ae();var r=T?T.getInitRequest(i,n):null;r?q.executeRequest(r):t&&(h.setInitSegmentRequired(!0),le())}}function ae(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(W.getIsManifestUpdateInProgress()||f.getIsPruningInProgress())le();else{var n=ue();n?(g=!1,oe(n)):se(t)}}function oe(e){isNaN(e.startTime+e.duration)||(A=e.startTime+e.duration),e.delayLoadingTime=(new Date).getTime()+h.getTimeToLoadDelay(),h.setTimeToLoadDelay(0),!function(e){var t=e.url;e.range&&(t=t.concat("_",e.range));return J.contains(t)}(e)?(n.debug("Next fragment request url for stream id ".concat(N.id," and media type ").concat(C," is ").concat(e.url)),q.executeRequest(e)):(n.warn("Fragment request url ".concat(e.url," for stream id ").concat(N.id," and media type ").concat(C," is on the ignore list and will be skipped")),le())}function se(e){var t=p.getCurrentRepresentation();if($.get().streaming.gaps.enableSeekFix&&!r&&g&&(W.isSeeking()||0===W.getTime())){var a=T.getValidSeekTimeCloseToTargetTime(A,i,t,$.get().streaming.gaps.threshold);if(!isNaN(a))return void W.seek(a,!1,!1)}if(T.isLastSegmentRequested(t,A)){var o=T.getCurrentIndex();return n.debug("Segment requesting for stream ".concat(N.id," has finished")),I.trigger(c.a.STREAM_REQUESTING_COMPLETED,{segmentIndex:o},{streamId:N.id,mediaType:C}),f.segmentRequestingCompleted(o),void h.clearScheduleTimer()}e&&le()}function ue(){var e,t=Ae();if(isNaN(A)||te()===a.a.TEXT&&!X.isTextEnabled())return null;var n=g;if(T){var r=p&&t?p.getRepresentationForQuality(t.quality):null;e=n?T.getSegmentRequestForTime(i,r,A):T.getNextSegmentRequest(i,r)}return e}function le(){h.startScheduleTimer($.get().streaming.lowLatencyEnabled?$.get().streaming.scheduling.lowLatencyTimeout:$.get().streaming.scheduling.defaultTimeout)}function ce(e){e.error||(h.setCurrentRepresentation(Y.convertRepresentationToRepresentationInfo(e.currentRepresentation)),f.getIsBufferingCompleted()||f.updateBufferTimestampOffset(e.currentRepresentation))}function fe(e){Q.addBufferState(C,e.state,h.getBufferTarget()),e.state!==u.BUFFER_EMPTY||W.isSeeking()||(n.info("Buffer is empty! Stalling!"),Q.pushPlayListTraceMetrics(new Date,k.REBUFFERING_REASON))}function de(e){q.syncExecutedRequestsWithBufferedRange(f.getBuffer().getAllBufferRanges(),N.duration),e.quotaExceeded&&e.from>W.getTime()&&Ce(e.from),e.hasEnoughSpaceToAppend&&e.quotaExceeded&&h.startScheduleTimer()}function he(e){if(e&&e.lastRequestAppended&&e.lastRequestAppended.url){var t=e.lastRequestAppended.url;e.lastRequestAppended.range&&(t=t.concat("_",e.lastRequestAppended.range)),n.warn("Blacklisting segment with url ".concat(t)),J.add(t)}}function pe(){Ne(),_=!1}function ge(e){n.info("onFragmentLoadingAbandoned request: "+e.request.url+" has been aborted"),W.isSeeking()||h.getSwitchStrack()||_||(n.info("onFragmentLoadingAbandoned request: "+e.request.url+" has to be downloaded again, origin is not seeking process or switch track call"),e.request&&e.request.isInitializationRequest()?h.setInitSegmentRequired(!0):Ce(e.request.startTime+e.request.duration/2),h.startScheduleTimer(0))}function me(e){n.info("OnFragmentLoadingCompleted for stream id "+N.id+" and media type "+C+" - Url:",e.request?e.request.url:"undefined",e.request.range?", Range:"+e.request.range:""),ne()&&h.startScheduleTimer(0),e.error&&e.request.serviceLocation&&function(e){if(n.info("Fragment loading completed with an error"),!e||!e.request||!e.request.type)return;e.request.type===v.a.INIT_SEGMENT_TYPE?ie({representationId:e.request.representationId,sender:{}},!1):e.request.type===v.a.MEDIA_SEGMENT_TYPE&&(Ce(e.request.startTime+e.request.duration/2),ae({},!1))}(e)}function ye(){Ce(W.getTime()),Se().startScheduleTimer()}function Ee(e){var t=e.currentTrackInfo;if(t){var n=s.find((function(e){return e.index===t.index&&e.lang===t.lang}));n&&Te(n).then((function(){f.setIsBufferingCompleted(!1),Ce(W.getTime()),h.setInitSegmentRequired(!0),h.startScheduleTimer()}))}}function _e(e){Ce(e.quotaExceededTime),h.clearScheduleTimer()}function ve(){return f?f.getBuffer():null}function Te(e){e===i||e&&i&&e.type!==i.type||(i=e);var t=Y.getRealAdaptation(N,i),n=Y.getVoRepresentations(i);if(p){var o,s=p.getData(),u=V.getMaxAllowedIndexFor(C,N.id),l=V.getMinAllowedIndexFor(C,N.id),c=null;return null!==s&&s.id===t.id||C===a.a.TEXT?o=V.getQualityFor(C,N.id):(c=V.getThroughputHistory().getAverageThroughput(C,r)||V.getInitialBitrateFor(C,N.id),o=V.getQualityForBitrate(i,c,N.id)),void 0!==l&&ou&&(o=u),p.updateData(t,n,C,i.isFragmented,o)}return Promise.resolve()}function Se(){return h}function Ae(e){var t;return void 0!==e?(Object(M.a)(e),t=p?p.getRepresentationForQuality(e):null):t=p?p.getCurrentRepresentation():null,Y.convertRepresentationToRepresentationInfo(t)}function be(){return!!f&&f.getIsBufferingCompleted()}function Ie(e){var t=e.chunk,n=t.bytes,r=t.quality,i=Ae(r),a=p&&i?p.getRepresentationForQuality(i.quality):null;if(i&&a){var o=Y.getEventsFor(i.mediaInfo),s=Y.getEventsFor(i,a);if(o&&o.length>0||s&&s.length>0){var u=function(e,t,n,r){try{for(var i={},a=[],o=n.concat(r),s=0,u=o.length;s$.get().streaming.buffer.stallThreshold;if(f.getIsBufferingCompleted()&&!t)return f.prepareForNonReplacementTrackSwitch(i.codec).then((function(){I.trigger(c.a.BUFFERING_COMPLETED,{},{streamId:N.id,mediaType:C})})).catch((function(){I.trigger(c.a.BUFFERING_COMPLETED,{},{streamId:N.id,mediaType:C})})),void e();h.clearScheduleTimer(),h.setSwitchTrack(!0),t?(I.trigger(c.a.BUFFER_REPLACEMENT_STARTED,{mediaType:C,streamId:N.id},{mediaType:C,streamId:N.id}),q.abortRequests(),f.prepareForReplacementTrackSwitch(i.codec).then((function(){var e=Ae();return f.updateBufferTimestampOffset(e)})).then((function(){Re(),e()})).catch((function(){Re(),e()}))):f.prepareForNonReplacementTrackSwitch(i.codec).then((function(){Ne(),e()})).catch((function(){Ne(),e()}))}))},prepareQualityChange:function(e){n.debug("Preparing quality switch for type ".concat(C));var t=e.newQuality;_=!0,h.clearScheduleTimer();var r=Ae(t);h.setCurrentRepresentation(r),p.prepareQualityChange(t),q.abortRequests(),f.updateBufferTimestampOffset(r).then((function(){e.reason&&e.reason.forceReplace?(I.trigger(c.a.BUFFER_REPLACEMENT_STARTED,{mediaType:C,streamId:N.id},{mediaType:C,streamId:N.id}),f.prepareForReplacementQualitySwitch().then((function(){Re(),_=!1})).catch((function(){Re(),_=!1}))):$.get().streaming.buffer.fastSwitchEnabled?function(e){var t=W.getTime(),n=q.getRequests({state:m.a.FRAGMENT_MODEL_EXECUTED,time:t+1.5,threshold:0})[0];if(n&&!ne()){var r=f.getBufferLevel(),i=V.getAbandonmentStateFor(N.id,C);if(n.quality=1.5&&i!==u.ABANDON_LOAD)Ce(t+1.5),h.setCheckPlaybackQuality(!1),h.startScheduleTimer();else pe()}else h.startScheduleTimer();_=!1}(r):pe(),Q.pushPlayListTraceMetrics(new Date,k.REPRESENTATION_SWITCH_STOP_REASON),Q.createPlaylistTraceMetrics(r.id,1e3*W.getTime(),W.getPlaybackRate())}))},getMediaInfo:function(){return i},getMediaSource:function(){return f.getMediaSource()},setMediaSource:function(e){f.setMediaSource(e)},getBuffer:ve,setExplicitBufferingTime:Ce,finalisePlayList:function(e,t){Q.pushPlayListTraceMetrics(e,t)},probeNextRequest:function(){var e=Ae(),t=p&&e?p.getRepresentationForQuality(e.quality):null;return T.getNextSegmentRequestIdempotent(i,t)},prepareInnerPeriodPlaybackSeeking:function(e){return new Promise((function(t){h.clearScheduleTimer(),q.abortRequests(),f.prepareForPlaybackSeek().then((function(){var t=f.getAllRangesWithSafetyFactor(e.seekTime);return f.clearBuffers(t)})).then((function(){var n=f.getContinuousBufferTimeForTargetTime(e.seekTime);if(!isNaN(n)&&!isNaN(N.duration)&&isFinite(N.duration)&&n>=N.start+N.duration)f.setIsBufferingCompleted(!0),t();else{var r=isNaN(n)?e.seekTime:n;Ce(r),f.setSeekTarget(r);var i=[];i.push(f.updateAppendWindow());var a=Ae();i.push(f.updateBufferTimestampOffset(a)),Promise.all(i).then((function(){h.setInitSegmentRequired(!0),h.setCheckPlaybackQuality(!1),h.startScheduleTimer(),t()}))}})).catch((function(e){n.error(e)}))}))},prepareOuterPeriodPlaybackSeeking:function(){return new Promise((function(e,t){try{h.clearScheduleTimer(),q.abortRequests(),f.prepareForPlaybackSeek().then((function(){return f.pruneAllSafely()})).then((function(){e()}))}catch(e){t(e)}}))},reset:function(e,n){T&&T.reset(),f&&(f.reset(e,n),f=null),h&&(h.reset(),h=null),p&&(p.reset(),p=null),S&&(S=null),V&&V.unRegisterStreamType(ee(),C),I.off(c.a.DATA_UPDATE_COMPLETED,ce,t),I.off(c.a.INIT_FRAGMENT_NEEDED,ie,t),I.off(c.a.MEDIA_FRAGMENT_NEEDED,ae,t),I.off(c.a.MEDIA_FRAGMENT_LOADED,Ie,t),I.off(c.a.BUFFER_LEVEL_STATE_CHANGED,fe,t),I.off(c.a.BUFFER_CLEARED,de,t),I.off(c.a.SEEK_TARGET,we,t),I.off(c.a.FRAGMENT_LOADING_ABANDONED,ge,t),I.off(c.a.FRAGMENT_LOADING_COMPLETED,me,t),I.off(c.a.SET_FRAGMENTED_TEXT_AFTER_DISABLED,ye,t),I.off(c.a.SET_NON_FRAGMENTED_TEXT,Ee,t),I.off(c.a.QUOTA_EXCEEDED,_e,t),I.off(c.a.SOURCE_BUFFER_ERROR,he,t),re(),C=null,N=null}},n=Object(d.a)(b).getInstance().getLogger(t),re(),I.on(c.a.DATA_UPDATE_COMPLETED,ce,t,{priority:l.a.EVENT_PRIORITY_HIGH}),I.on(c.a.INIT_FRAGMENT_NEEDED,ie,t),I.on(c.a.MEDIA_FRAGMENT_NEEDED,ae,t),I.on(c.a.MEDIA_FRAGMENT_LOADED,Ie,t),I.on(c.a.BUFFER_LEVEL_STATE_CHANGED,fe,t),I.on(c.a.BUFFER_CLEARED,de,t),I.on(c.a.SEEK_TARGET,we,t),I.on(c.a.FRAGMENT_LOADING_ABANDONED,ge,t),I.on(c.a.FRAGMENT_LOADING_COMPLETED,me,t),I.on(c.a.QUOTA_EXCEEDED,_e,t),I.on(c.a.SET_FRAGMENTED_TEXT_AFTER_DISABLED,ye,t),I.on(c.a.SET_NON_FRAGMENTED_TEXT,Ee,t),I.on(c.a.SOURCE_BUFFER_ERROR,he,t),t}j.__dashjs_factory_name="StreamProcessor";var Y=f.a.getClassFactory(j),H=n(55),K=n(58);function q(e){e=e||{};var t,n,r,i=this.context,o=Object(l.a)(i).getInstance(),s=e.errHandler,u=e.mediaPlayerModel,f=e.dashMetrics,p=Object(d.a)(i).getInstance(),g=e.streamInfo;function y(){return g.id}function _(){for(var e in r)r[e].reset();r={}}function v(e){if(e.sender){var t=e.request,r=e.response,i=t.isInitializationRequest(),s=t.mediaInfo.streamInfo;if(e.error&&(t.mediaType===a.a.AUDIO||t.mediaType===a.a.VIDEO||t.mediaType===a.a.TEXT&&t.mediaInfo.isFragmented)&&o.trigger(c.a.SERVICE_LOCATION_BLACKLIST_ADD,{entry:e.request.serviceLocation}),r&&s){var u=function(e,t,n,r){var i=new H.a;return i.streamId=n,i.mediaInfo=t.mediaInfo,i.segmentType=t.type,i.start=t.startTime,i.duration=t.duration,i.end=i.start+i.duration,i.bytes=e,i.index=t.index,i.quality=t.quality,i.representationId=t.representationId,i.endFragment=r,i}(r,t,g.id,e.type!==c.a.FRAGMENT_LOADING_PROGRESS);o.trigger(i?c.a.INIT_FRAGMENT_LOADED:c.a.MEDIA_FRAGMENT_LOADED,{chunk:u,request:t},{streamId:s.id,mediaType:t.mediaType})}else n.warn("No "+t.mediaType+" bytes to push or stream is inactive.")}}return t={getStreamId:y,getModel:function(t){var n=r[t];return n||(n=Object(m.a)(i).create({streamInfo:g,type:t,dashMetrics:f,fragmentLoader:Object(K.a)(i).create({dashMetrics:f,mediaPlayerModel:u,errHandler:s,requestModifier:Object(L.a)(i).getInstance(),settings:e.settings,boxParser:e.boxParser,eventBus:o,events:c.a,errors:E.a,dashConstants:e.dashConstants,urlUtils:e.urlUtils,streamId:y()}),debug:p,eventBus:o,events:c.a}),r[t]=n),n},reset:function(){o.off(h.a.FRAGMENT_LOADING_COMPLETED,v,this),o.off(h.a.FRAGMENT_LOADING_PROGRESS,v,this),_()}},n=p.getLogger(t),_(),o.on(h.a.FRAGMENT_LOADING_COMPLETED,v,t),o.on(h.a.FRAGMENT_LOADING_PROGRESS,v,t),t}q.__dashjs_factory_name="FragmentController";var V=f.a.getClassFactory(q);var W=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.url=null,this.width=null,this.height=null,this.x=null,this.y=null},z=n(29);var X=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.mediaType=null,this.bitrate=null,this.width=null,this.height=null,this.scanType=null,this.qualityIndex=NaN},Q=n(10);function $(e){var t,n,r=this.context,i=e.streamInfo;function o(e){n.setTrackByIndex(e)}function s(){n&&n.reset()}return t={getStreamId:function(){return i.id},initialize:function(){n.addTracks();var e=n.getTracks();e&&e.length>0&&o(0)},provide:function(e,t){if("function"==typeof t){var r,i,a=n.getCurrentTrack();if(!a||a.segmentDuration<=0||null==e)t(null);else{(i=n.getThumbnailRequestForTime(e))&&(a.segmentDuration=i.duration),r=e%a.segmentDuration;var o=Math.floor(r*a.tilesHor*a.tilesVert/a.segmentDuration),s=new W;if(s.width=Math.floor(a.widthPerTile),s.height=Math.floor(a.heightPerTile),s.x=Math.floor(o%a.tilesHor)*a.widthPerTile,s.y=Math.floor(o/a.tilesHor)*a.heightPerTile,"readThumbnail"in a)return a.readThumbnail(e,(function(e){s.url=e,t(s)}));if(i)s.url=i.url,a.segmentDuration=NaN;else{var u=Math.floor(e/a.segmentDuration);s.url=function(e,t){var n=t+e.startNumber,r=Object(Q.d)(e.templateUrl,"Number",n);return r=Object(Q.d)(r,"Time",(n-1)*e.segmentDuration*e.timescale),r=Object(Q.d)(r,"Bandwidth",e.bandwidth),Object(Q.e)(r)}(a,u)}t(s)}}},setTrackByIndex:o,getCurrentTrackIndex:function(){return n.getCurrentTrackIndex()},getBitrateList:function(){var e=n.getTracks(),t=0;return e.map((function(e){var n=new X;return n.mediaType=a.a.IMAGE,n.qualityIndex=t++,n.bitrate=e.bitrate,n.width=e.width,n.height=e.height,n}))},reset:s},s(),n=Object(z.b)(r).create({streamInfo:i,adapter:e.adapter,baseURLController:e.baseURLController,timelineConverter:e.timelineConverter,debug:e.debug,eventBus:e.eventBus,events:e.events,dashConstants:e.dashConstants,dashMetrics:e.dashMetrics,segmentBaseController:e.segmentBaseController}),t}$.__dashjs_factory_name="ThumbnailController";var Z=f.a.getClassFactory($);function J(e){var t;e=e||{};var n=[],r=Object(l.a)(this.context).getInstance(),i=e.updateEventName,a=e.addBlacklistEventName;function o(e){-1===n.indexOf(e)&&(n.push(e),r.trigger(i,{entry:e}))}function s(e){o(e.entry)}return t={add:o,contains:function(e){return!!(n.length&&e&&e.length)&&-1!==n.indexOf(e)},reset:function(){n=[]}},a&&r.on(a,s,t),t}J.__dashjs_factory_name="BlackListController";var ee=f.a.getClassFactory(J),te=[a.a.VIDEO,a.a.AUDIO,a.a.TEXT,a.a.MUXED,a.a.IMAGE];function ne(e){e=e||{};var t,n,r,i,s,u,f,h,p,g,m,_,v,T,S,A,b,I,R=this.context,N=Object(l.a)(R).getInstance(),w=Object(F.a)(R).getInstance(),C=e.manifestModel,D=e.mediaPlayerModel,O=e.dashMetrics,M=e.manifestUpdater,P=e.adapter,L=e.timelineConverter,U=e.capabilities,B=e.errHandler,k=e.abrController,G=e.playbackController,j=e.eventController,H=e.mediaController,K=e.protectionController,q=e.textController,W=e.videoModel,z=e.streamInfo,X=e.settings;function Q(t,i){return new Promise((function(s,u){se(),g=!0,le();var l,d=W.getElement();te.forEach((function(i){(i!==a.a.VIDEO||!d||d&&/^VIDEO$/i.test(d.nodeName))&&function(t,i){var s,u=P.getAllMediaInfoForType(z,t),l=[],d=null;if(!u||0===u.length)return void n.info("No "+t+" data.");t===a.a.VIDEO&&(f=!0);t===a.a.AUDIO&&(h=!0);for(var p=0,g=u.length;p0&&(H.setInitialMediaSettingsForType(t,z),q.setInitialSettings(H.getInitialSettings(t)),q.addMediaInfosToBuffer(z,t,l));if(0===(u=u.filter((function(e){return!e.isEmbedded}))).length)return;if(t===a.a.IMAGE)return void(_=Z(R).create({streamInfo:z,adapter:P,baseURLController:e.baseURLController,timelineConverter:e.timelineConverter,debug:A,eventBus:N,events:c.a,dashConstants:o.a,dashMetrics:e.dashMetrics,segmentBaseController:e.segmentBaseController})).initialize();N.trigger(c.a.STREAM_INITIALIZING,{streamInfo:z,mediaInfo:d}),H.setInitialMediaSettingsForType(t,z);var y=function(t,n){var i=t&&t.length>0?t[0]:null,o=m.getModel(i?i.type:null),s=i?i.type:null,u=i?i.mimeType:null,l=i?i.isFragmented:null,c=Y(R).create({streamInfo:z,type:s,mimeType:u,timelineConverter:L,adapter:P,manifestModel:C,mediaPlayerModel:D,fragmentModel:o,dashMetrics:e.dashMetrics,baseURLController:e.baseURLController,segmentBaseController:e.segmentBaseController,abrController:k,playbackController:G,mediaController:H,textController:q,errHandler:B,settings:X,boxParser:S,segmentBlacklistController:v});c.initialize(n,f,l),r.push(c);for(var d=0;d0&&e.Representation[0].ContentProtection)}function _e(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(!e||!e.hasOwnProperty("getStreamInfo"))return!1;var r=e.getStreamInfo(),i=n?n.getStreamInfo():oe();if(!r||!i)return!1;var a=P.getAdaptationForType(r.index,t,r),o=P.getAdaptationForType(i.index,t,i);if(!a||!o)return!a&&!o;var s=a&&o&&a.mimeType===o.mimeType,u=o.Representation_asArray.map((function(e){return e.codecs})),l=a.Representation_asArray.map((function(e){return e.codecs})),c=l.some((function(e){return u.indexOf(e)>-1})),f=l.some((function(e){return u.some((function(t){return U.codecRootCompatibleWithCodec(t,e)}))}));return c||f&&s}function ve(e){T=e}function Te(){return T}return t={initialize:function(){N.on(c.a.BUFFERING_COMPLETED,fe,t),N.on(c.a.DATA_UPDATE_COMPLETED,de,t),N.on(c.a.INBAND_EVENTS,he,t),K&&(N.on(c.a.KEY_ERROR,ue,t),N.on(c.a.SERVER_CERTIFICATE_UPDATED,ue,t),N.on(c.a.LICENSE_REQUEST_COMPLETE,ue,t),N.on(c.a.KEY_SYSTEM_SELECTED,ue,t),N.on(c.a.KEY_SESSION_CREATED,ue,t),N.on(c.a.KEY_STATUSES_CHANGED,ue,t)),q.initializeForStream(z),N.trigger(c.a.STREAM_UPDATED,{streamInfo:z})},getStreamId:function(){return z?z.id:null},activate:function(e,t){return new Promise((function(n,r){if(!s)return Te()?(s=!0,N.trigger(c.a.STREAM_ACTIVATED,{streamInfo:z}),void n(t)):void function(e,t){return Q(e,t)}(e,t).then((function(e){s=!0,N.trigger(c.a.STREAM_ACTIVATED,{streamInfo:z}),n(e)})).catch((function(e){r(e)}));n(t)}))},deactivate:J,getIsActive:function(){return s},getDuration:function(){return z?z.duration:NaN},getStartTime:ie,getId:ae,getStreamInfo:oe,getHasAudioTrack:function(){return h},getHasVideoTrack:function(){return f},startPreloading:function(e,t){return new Promise((function(i,a){Te()?a():(n.info("[startPreloading] Preloading next stream with id ".concat(ae())),ve(!0),Q(e,t).then((function(){for(var e=0;e0;){var e=I.pop(),t=e.newMediaInfo,r=pe(e.oldMediaInfo);if(!r)return;n.push(r.prepareTrackSwitch()),r.selectMediaInfo(t)}return Promise.all(n)})).then((function(){g=!1,ce(),N.trigger(c.a.STREAM_UPDATED,{streamInfo:z}),t()}))}))},reset:function(e){m&&(m.reset(),m=null),k&&z&&k.clearDataForStream(z.id),v&&(v.reset(),v=null),ne(e),z=null,N.off(c.a.DATA_UPDATE_COMPLETED,de,t),N.off(c.a.BUFFERING_COMPLETED,fe,t),N.off(c.a.INBAND_EVENTS,he,t),K&&(N.off(c.a.KEY_ERROR,ue,t),N.off(c.a.SERVER_CERTIFICATE_UPDATED,ue,t),N.off(c.a.LICENSE_REQUEST_COMPLETE,ue,t),N.off(c.a.KEY_SYSTEM_SELECTED,ue,t),N.off(c.a.KEY_SESSION_CREATED,ue,t),N.off(c.a.KEY_STATUSES_CHANGED,ue,t))},getProcessors:me,setMediaSource:function(e){for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:null;return _e(e,a.a.VIDEO,t)&&_e(e,a.a.AUDIO,t)},isProtectionCompatible:function(e){return!e||ye(a.a.VIDEO,e)&&ye(a.a.AUDIO,e)},getPreloaded:Te,getIsEndedEventSignaled:function(){return b},setIsEndedEventSignaled:re,getAdapter:function(){return P},getHasFinishedBuffering:function(){return u},setPreloaded:ve,startScheduleControllers:function(){for(var e=r.length,t=0;t0&&void 0!==arguments[0]&&arguments[0];s=!0;var t=f.getValue(),n=t.url,r=p.getPatchLocation(t),i=p.getLocation(t);r&&!e?n=r:i&&(n=i),v.isRelative(n)&&(n=v.resolve(n,t.url)),u.load(n)}function I(e){if(e){if(p.getIsPatch(e)){var r=e;e=f.getValue();var u=p.isPatchValid(e,r),l=u;if(u){var d=p.getPublishTime(e);l=p.applyPatchToManifest(e,r);var h=p.getPublishTime(e);l=d.getTime()!=h.getTime()}if(!l)return t.debug("Patch provided is invalid, performing full manifest refresh"),void b(!0);e.loadedTime=new Date}}else(e=f.getValue()).loadedTime=new Date;if(f.getValue()&&f.getValue().type===o.a.DYNAMIC&&e.type===o.a.STATIC)return _.trigger(c.a.DYNAMIC_TO_STATIC),s=!1,void(a=!0);f.setValue(e);var g=new Date,m=(g.getTime()-e.loadedTime.getTime())/1e3;1e3*(n=p.getManifestUpdatePeriod(e,m))>2147483647&&(n=2147483.647),_.trigger(c.a.MANIFEST_UPDATED,{manifest:e}),t.info("Manifest has been refreshed at "+g+"["+g.getTime()/1e3+"] "),i||A()}function R(){i||(s?A(m.get().streaming.manifestUpdateRetryInterval):b())}function N(e){e.error?e.error.code===E.a.MANIFEST_LOADER_PARSING_FAILURE_ERROR_CODE&&g.error(e.error):I(e.manifest)}function w(){i=!1,A()}function C(){(i=!m.get().streaming.scheduling.scheduleWhilePaused)&&S()}function D(){s=!1}return e={initialize:function(){T(),_.on(c.a.STREAMS_COMPOSED,D,this),_.on(h.a.PLAYBACK_STARTED,w,this),_.on(h.a.PLAYBACK_PAUSED,C,this),_.on(c.a.INTERNAL_MANIFEST_LOADED,N,this)},setManifest:function(e){I(e)},refreshManifest:b,getIsUpdating:function(){return s},setConfig:function(e){e&&(e.manifestModel&&(f=e.manifestModel),e.adapter&&(p=e.adapter),e.manifestLoader&&(u=e.manifestLoader),e.errHandler&&(g=e.errHandler),e.settings&&(m=e.settings))},reset:function(){_.off(h.a.PLAYBACK_STARTED,w,this),_.off(h.a.PLAYBACK_PAUSED,C,this),_.off(c.a.STREAMS_COMPOSED,D,this),_.off(c.a.INTERNAL_MANIFEST_LOADED,N,this),T()}},t=Object(d.a)(y).getInstance().getLogger(e),e}ie.__dashjs_factory_name="ManifestUpdater";var ae=f.a.getClassFactory(ie);function oe(){var e,t,n,r,i,a,o,s,u,f,h,p,g,m,_,T,S=this.context,A=Object(l.a)(S).getInstance(),b=Object(F.a)(S).getInstance();function I(){s=[],u=[],f=null,h=null,g=null,p=NaN,n=!1,r=!1,m=i.get().streaming.utcSynchronization.timeBetweenSyncAttempts}function R(){i.get().streaming.utcSynchronization.enabled&&!n&&!r&&g&&g.value&&g.schemeIdUri&&!isNaN(p)&&!isNaN(i.get().streaming.utcSynchronization.backgroundAttempts)&&(h&&(Date.now()-h)/1e3<30||(s=[],r=!0,function e(t){try{if(t<=0)return void k();var n=Date.now();a[g.schemeIdUri](g.value,(function(r){var i=Date.now(),a=N(n,i,r);s.push(a),e(t-1)}),(function(){k()}))}catch(e){k()}}(isNaN(i.get().streaming.utcSynchronization.backgroundAttempts)?2:i.get().streaming.utcSynchronization.backgroundAttempts)))}function N(e,t,n){return n-(t-(t-e)/2)}function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:NaN,t=isNaN(e);t&&i.get().streaming.utcSynchronization.useManifestDateHeaderTimeSource?U():B(t,e)}function C(e){var t=Date.parse(e);return isNaN(t)&&(t=function(e){var t,n,r=/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2})(?::([0-9]*)(\.[0-9]*)?)?(?:([+\-])([0-9]{2})([0-9]{2}))?/.exec(e);return t=Date.UTC(parseInt(r[1],10),parseInt(r[2],10)-1,parseInt(r[3],10),parseInt(r[4],10),parseInt(r[5],10),r[6]&&(parseInt(r[6],10)||0),r[7]&&1e3*parseFloat(r[7])||0),r[9]&&r[10]&&(n=60*parseInt(r[9],10)+parseInt(r[10],10),t+=("+"===r[8]?-1:1)*n*60*1e3),new Date(t).getTime()}(e)),t}function D(e){return Date.parse(e)}function O(e){return Date.parse(e)}function M(e,t,n){n()}function P(e,t,n){var r=C(e);isNaN(r)?n():t(r)}function L(e,t,n,r,i){var a,o,s=!1,u=new XMLHttpRequest,l=i?v.a.HEAD:v.a.GET,c=t.match(/\S+/g);if(t=c.shift(),a=function(){s||(s=!0,c.length?L(e,c.join(" "),n,r,i):r())},o=function(){var t,r;200===u.status&&(t=i?u.getResponseHeader("Date"):u.response,r=e(t),isNaN(r)||(n(r),s=!0))},b.isRelative(t)){var f=T.resolve();f&&(t=b.resolve(t,f.url))}u.open(l,t),u.timeout=5e3,u.onload=o,u.onloadend=a,u.send()}function x(e,t,n){L(O,e,t,n,!0)}function U(){var e=o.getLatestMPDRequestHeaderValueByID("Date"),t=null!==e?new Date(e).getTime():Number.NaN;isNaN(t)?B(!0):B(!1,t-Date.now())}function B(e,r){if(isNaN(p)||isNaN(r)||e||function(e){try{var n,r=G(e),a=isNaN(m)?30:m,o=isNaN(i.get().streaming.utcSynchronization.timeBetweenSyncAttemptsAdjustmentFactor)?2:i.get().streaming.utcSynchronization.timeBetweenSyncAttemptsAdjustmentFactor,s=isNaN(i.get().streaming.utcSynchronization.maximumTimeBetweenSyncAttempts)?600:i.get().streaming.utcSynchronization.maximumTimeBetweenSyncAttempts,u=isNaN(i.get().streaming.utcSynchronization.minimumTimeBetweenSyncAttempts)?2:i.get().streaming.utcSynchronization.minimumTimeBetweenSyncAttempts;r?(n=Math.min(a*o,s),t.debug("Increasing timeBetweenSyncAttempts to ".concat(n))):(n=Math.max(a/o,u),t.debug("Decreasing timeBetweenSyncAttempts to ".concat(n))),m=n}catch(e){}}(r),!e&&!isNaN(r)){f=Date.now(),n=!1;var a=isNaN(p);p=r,a&&R(),t.debug("Completed UTC sync. Setting client - server offset to ".concat(r))}e&&(g=null,n=!1,_.error(new y.a(E.a.TIME_SYNC_FAILED_ERROR_CODE,E.a.TIME_SYNC_FAILED_ERROR_MESSAGE))),A.trigger(c.a.UPDATE_TIME_SYNC_OFFSET,{offset:r}),A.trigger(c.a.TIME_SYNCHRONIZATION_COMPLETED)}function k(){if(s&&0!==s.length){var e=s.reduce((function(e,t){return e+t}),0)/s.length;G(e)?t.debug("Completed background UTC sync. Offset is within allowed threshold and is not adjusted."):(t.debug("Completed background UTC sync. Setting client - server offset to ".concat(e)),p=e,A.trigger(c.a.UPDATE_TIME_SYNC_OFFSET,{offset:p})),r=!1,h=Date.now()}}function G(e){try{if(isNaN(p))return!0;var t=i.get().streaming.utcSynchronization.maximumAllowedDrift&&!isNaN(i.get().streaming.utcSynchronization.maximumAllowedDrift)?i.get().streaming.utcSynchronization.maximumAllowedDrift:100;return e>=p-t&&e<=p+t}catch(e){return!0}}return e={initialize:function(){I(),a={"urn:mpeg:dash:utc:http-head:2014":x,"urn:mpeg:dash:utc:http-xsdate:2014":L.bind(null,C),"urn:mpeg:dash:utc:http-iso:2014":L.bind(null,D),"urn:mpeg:dash:utc:direct:2014":P,"urn:mpeg:dash:utc:http-head:2012":x,"urn:mpeg:dash:utc:http-xsdate:2012":L.bind(null,C),"urn:mpeg:dash:utc:http-iso:2012":L.bind(null,D),"urn:mpeg:dash:utc:direct:2012":P,"urn:mpeg:dash:utc:http-ntp:2014":M,"urn:mpeg:dash:utc:ntp:2014":M,"urn:mpeg:dash:utc:sntp:2014":M}},attemptSync:function(e,t){u=e,n||(!function(e){try{if(!e||!i.get().streaming.utcSynchronization.enabled)return!1;var t=isNaN(m)?30:m;return!(f&&t&&!isNaN(t))||(Date.now()-f)/1e3>=t}catch(e){return!0}}(t)?A.trigger(c.a.TIME_SYNCHRONIZATION_COMPLETED):(n=!0,function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=t||0;if(!u||0===u.length||n>=u.length)return void w();var r=u[n];if(r)if(a.hasOwnProperty(r.schemeIdUri)){var i=(new Date).getTime();a[r.schemeIdUri](r.value,(function(e){var t=(new Date).getTime(),n=N(i,t,e);g=r,w(n)}),(function(){e(n+1)}))}else e(n+1);else w()}()))},setConfig:function(e){e&&(e.dashMetrics&&(o=e.dashMetrics),e.baseURLController&&(T=e.baseURLController),e.errHandler&&(_=e.errHandler),e.settings&&(i=e.settings))},reset:function(){I(),A.off(c.a.ATTEMPT_BACKGROUND_SYNC,R,e)}},t=Object(d.a)(S).getInstance().getLogger(e),A.on(c.a.ATTEMPT_BACKGROUND_SYNC,R,e),e}oe.__dashjs_factory_name="TimeSyncController";var se=f.a.getSingletonFactory(oe);se.HTTP_TIMEOUT_MS=5e3,f.a.updateSingletonFactory(oe.__dashjs_factory_name,se);var ue=se;function le(){var e,t,n,r=this.context;return e={createMediaSource:function(){var e="WebKitMediaSource"in window;return"MediaSource"in window?t=new MediaSource:e&&(t=new WebKitMediaSource),t},attachMediaSource:function(e){var n=window.URL.createObjectURL(t);return e.setSource(n),n},detachMediaSource:function(e){e.setSource(null)},setDuration:function e(r){t&&"open"===t.readyState&&(null===r&&isNaN(r)||t.duration!==r&&(!function(e){for(var t=e.sourceBuffers,n=0;n=0&&e2&&void 0!==arguments[2]&&arguments[2],r=e.eventStream.schemeIdUri,i=e.eventStream.value,a=e.id,o=p;t[r]||(t[r]=[]);var s=t[r].findIndex((function(e){return(!i||e.eventStream.value&&e.eventStream.value===i)&&e.id===a}));return-1===s?(t[r].push(e),o=m):n&&(t[r][s]=e,o=g),o}function A(e){try{if(1==e.eventStream.value){var t,n=e.calculatedPresentationTime;t=4294967295==e.calculatedPresentationTime?NaN:e.calculatedPresentationTime+e.duration,E.trigger(h.a.MANIFEST_VALIDITY_CHANGED,{id:e.id,validUntil:n,newDuration:t,newManifestValidAfter:NaN},{mode:h.a.EVENT_MODE_ON_START})}}catch(e){}}function b(){try{if(!c){c=!0;var e=s.getTime(),t=e-a;t=a>0?Math.max(0,t):0,I(r,t,e),I(n,t,e),a=e,c=!1}}catch(e){c=!1}}function I(e,n,r){try{N(e,(function(i){if(void 0!==i){var a=isNaN(i.duration)?0:i.duration;i.calculatedPresentationTime<=r&&i.calculatedPresentationTime+n+a>=r?w(i,e,h.a.EVENT_MODE_ON_START):(function(e,t,n){try{return e-t>n}catch(e){return!1}}(r,a+n,i.calculatedPresentationTime)||function(e){try{var t=e.eventStream.period.start+e.eventStream.period.duration;return e.calculatedPresentationTime>t}catch(e){return!1}}(i))&&(t.debug("Deleting event ".concat(i.id," as it is expired or invalid")),C(e,i))}}))}catch(e){}}function R(e){try{var t=s.getTime();N(e,(function(n){var r=n.eventStream&&n.eventStream.period&&!isNaN(n.eventStream.period.duration)?n.eventStream.period.duration:NaN,i=n.eventStream&&n.eventStream.period&&!isNaN(n.eventStream.period.start)?n.eventStream.period.start:NaN;if(!isNaN(r)&&!isNaN(i)){var a=n.calculatedPresentationTime;Math.abs(a-t)<300&&w(n,e,h.a.EVENT_MODE_ON_START)}}))}catch(e){}}function N(e,t){try{if(e)for(var n=Object.keys(e),r=0;re.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&function(e){D=D.filter((function(n){var r=e.filter((function(e){return e.id===n.getId()})).length>0||n.getId()===O.getId();return r||(t.debug("Removing stream ".concat(n.getId())),n.reset(!0)),r}))}(e);for(var n=[],r=0,i=e.length;r0&&n.forEach((function(t){t&&e.push(t)})),e}),[]).reduce((function(e,t){var n=f.convertRepresentationToRepresentationInfo(t);return n&&n.fragmentDuration&&!isNaN(n.fragmentDuration)&&e.push(n.fragmentDuration),e}),[]);n=Math.max.apply(Math,ge(i))}return isFinite(n)?n:NaN}catch(e){return NaN}}(n,o);K.computeAndSetLiveDelay(s,o)}var u=function(){var e;if(f.getIsDynamic()){var n=p.getCurrentDVRInfo(),r=n&&n.range?n.range.end:0;e=r-K.getLiveDelay();var i=n?n.range:null;if(i){var a=xe(!0);if(!isNaN(a)){t.info("Start time from URI parameters: "+a);var o=Z.get().streaming.timeShiftBuffer.calcFromSegmentTimeline?.1:0;e=Math.max(Math.min(e,a),i.start+o)}}}else{var s=Qe()[0].getStreamInfo();e=s.start;var u=xe(!1);isNaN(u)||(t.info("Start time from URI parameters: "+u),e=Math.max(e,u))}return e}(),l=Ae(u),d=null!==l?l:D[0];ie.trigger(c.a.INITIAL_STREAM_SWITCH,{startTime:u}),fe(d,null,u),z||(z=setInterval((function(){!U&&K.getTimeToStreamEnd()<=0&&!K.isSeeking()&&ie.trigger(c.a.PLAYBACK_ENDED,{isLast:He().isLast})}),200))}(e),ie.trigger(c.a.STREAMS_COMPOSED),Oe()})).catch((function(e){throw e}))}catch(e){w.error(new y.a(E.a.MANIFEST_ERROR_ID_NOSTREAMS_CODE,e.message+"nostreamscomposed",s.getValue())),j=!0,ze()}}()}function se(){J=!0}function le(e){var t=Ke(e.id);return t?t.updateData(e):(t=re(ne).create({manifestModel:s,mediaPlayerModel:q,dashMetrics:p,manifestUpdater:i,adapter:f,timelineConverter:C,capabilities:n,capabilitiesFilter:r,errHandler:w,baseURLController:_,segmentBaseController:v,textController:P,abrController:S,playbackController:K,eventController:I,mediaController:A,protectionController:M,videoModel:H,streamInfo:e,settings:Z}),D.push(t),t.initialize(),Promise.resolve())}function fe(e,n,r){try{if(U||!e||n===e&&e.getIsActive())return;U=!0,ie.trigger(c.a.PERIOD_SWITCH_STARTED,{fromStreamInfo:n?n.getStreamInfo():null,toStreamInfo:e.getStreamInfo()});var i=!1;O=e,n&&(i=Te(e,n),n.deactivate(i)),r=isNaN(r)?!i&&n?e.getStreamInfo().start:NaN:r,t.info("Switch to stream ".concat(e.getId(),". Seektime is ").concat(r,", current playback time is ").concat(K.getTime(),". Seamless period switch is set to ").concat(i)),Q=Q.filter((function(e){return e.getId()!==O.getId()})),K.initialize(He(),!!n),H.getElement()&&de(r,i)}catch(e){U=!1}}function de(e,n){var r;function i(){if(Y&&"open"===Y.readyState){t.debug("MediaSource is open!"),window.URL.revokeObjectURL(r),Y.removeEventListener("sourceopen",i),Y.removeEventListener("webkitsourceopen",i),Fe();var a=p.getCurrentDVRInfo();g.setSeekable(a.range.start,a.range.end),me(e,n)}}function a(){Y.addEventListener("sourceopen",i,!1),Y.addEventListener("webkitsourceopen",i,!1),r=g.attachMediaSource(H),t.debug("MediaSource attached to element. Waiting on open...")}Y?n?me(e,n):(g.detachMediaSource(H),a()):(Y=g.createMediaSource(),a())}function me(e,t){O.activate(Y,t?X:void 0,e).then((function(t){if(t){var n=Object.keys(t);n.length>0&&t[n[0]].getBuffer().changeType&&($=!0),X=t}isNaN(e)||(ie.trigger(c.a.SEEK_TARGET,{time:e},{streamId:O.getId()}),K.seek(e,!1,!0),O.startScheduleControllers()),U=!1,ie.trigger(c.a.PERIOD_SWITCH_COMPLETED,{toStreamInfo:He()})}))}function ye(e){var t=K.getTime(),n=e.seekTime,r=Ae(n);r&&r!==O?r&&r!==O&&(Ee(t,n,r),function(e,t){var n=e&&!isNaN(e.seekTime)?e.seekTime:NaN,r=O.getProcessors().map((function(t){return t.prepareOuterPeriodPlaybackSeeking(e)}));Promise.all(r).then((function(){fe(t,O,n)})).catch((function(e){w.error(e)}))}(e,r)):(Ee(t,n),function(e){O.getProcessors().forEach((function(t){return t.prepareInnerPeriodPlaybackSeeking(e)})),Ge(k.USER_REQUEST_STOP_REASON)}(e)),je(B.SEEK_START_REASON)}function Ee(e,t){_e()}function _e(){Q&&Q.length>0&&(Q.forEach((function(e){e.deactivate(!0)})),Q=[])}function ve(e){e.newMediaInfo.streamInfo.id===O.getId()&&(_e(),O.prepareTrackChange(e))}function Te(e,t){try{return Z.get().streaming.buffer.reuseExistingSourceBuffers&&(t.isProtectionCompatible(e)||J)&&($||t.isMediaCodecCompatible(e,t))}catch(e){return!1}}function Se(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(Y&&!e.getPreloaded()){var n=Te(e,t);n&&e.startPreloading(Y,X).then((function(){Q.push(e)}))}}function Ae(e){if(isNaN(e))return null;for(var t=D.length,n=0;nK.getLiveDelay())&&(W=!1,je(B.INITIAL_PLAYOUT_START_REASON),K.play())}e&&e.mediaType&&p.addBufferLevel(e.mediaType,new Date,1e3*e.bufferLevel)}function Re(e){e.streamInfo.id===O.getId()&&e.reason&&e.reason.forceReplace&&_e(),Ke(e.streamInfo.id).prepareQualityChange(e)}function Ne(){if(Be()){var e=H.getPlaybackQuality();e&&p.addDroppedFrames(e)}}function we(){t.debug("[onPlaybackStarted]"),!W&&V&&je(B.RESUME_FROM_PAUSE_START_REASON),W&&(W=!1),V=!1}function Ce(e){t.debug("[onPlaybackPaused]"),e.ended||(V=!0,Ge(k.USER_REQUEST_STOP_REASON))}function De(e){t.debug("Stream with id ".concat(e.streamInfo.id," finished buffering"));var n=e.streamInfo.isLast;Y&&n?(t.info("[onStreamBufferingCompleted] calls signalEndOfStream of mediaSourceController."),g.signalEndOfStream(Y)):Oe()}function Oe(){if(O&&O.getHasFinishedBuffering())for(var e=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;try{var t=e||(O||null);if(t){var n=t.getStreamInfo();return D.filter((function(e){var t=e.getStreamInfo();return t.start>n.start&&n.id!==t.id}))}}catch(e){return[]}}(O),t=0;t0&&void 0!==arguments[0]?arguments[0]:null,t=e||(O||null);if(!t)return null;var n=t.getStreamInfo(),r=n.start,i=0,a=-1,o=NaN;for(;i0&&(isNaN(o)||l=0)return D[a];return null}();n?(t.debug("StreamController onEnded, found next stream with id ".concat(n.getStreamInfo().id,". Switching from ").concat(O.getStreamInfo().id," to ").concat(n.getStreamInfo().id)),fe(n,O,NaN)):(t.debug("StreamController no next stream found"),O.setIsEndedEventSignaled(!1)),Ge(n?k.END_OF_PERIOD_STOP_REASON:k.END_OF_CONTENT_STOP_REASON)}e&&e.isLast&&Me()}function Fe(e){var t=e||He().manifestInfo.duration;g.setDuration(t)}function xe(e){var t=T.getURIFragmentData();if(!t||!t.t)return NaN;var n=Qe()[0].getStreamInfo().start;t.t=t.t.split(",")[0];var r=-1!==t.t.indexOf("posix:")?"now"===t.t.substring(6)?Date.now()/1e3:parseInt(t.t.substring(6)):NaN;return e&&!isNaN(r)?r-K.getAvailabilityStartTime()/1e3:parseInt(t.t)+n}function Ue(e){if(e.error)j=!0,ze();else{t.info("Manifest updated... updating data system wide.");var n=e.manifest;f.updatePeriods(n);var i=f.getUTCTimingSources();!f.getIsDynamic()||i&&0!==i.length||ie.trigger(h.a.CONFORMANCE_VIOLATION,{level:pe.LEVELS.WARNING,event:pe.EVENTS.NO_UTC_TIMING_ELEMENT});var a=f.getIsDynamic()?i.concat(q.getUTCTimingSources()):i,o=N.isHTTPS(e.manifest.url);a.forEach((function(e){e.value.replace(/.*?:\/\//g,"")===q.getDefaultUtcTimingSource().value.replace(/.*?:\/\//g,"")&&(e.value=e.value.replace(o?new RegExp(/^(http:)?\/\//i):new RegExp(/^(https:)?\/\//i),o?"https://":"http://"),t.debug("Matching default timing source protocol to manifest protocol: ",e.value))})),r.filterUnsupportedFeatures(n).then((function(){_.initialize(n),m.attemptSync(a,f.getIsDynamic())}))}}function Be(){return!!O&&O.getHasVideoTrack()}function ke(){return!!O&&O.getHasAudioTrack()}function Ge(e,t){t=t||new Date,Pe().forEach((function(n){n.finalisePlayList(t,e)})),p.addPlayList()}function je(e){p.createPlaylistMetrics(1e3*K.getTime(),e)}function Ye(e){if(e.error){var n="";switch(e.error.code){case 1:n="MEDIA_ERR_ABORTED";break;case 2:n="MEDIA_ERR_NETWORK";break;case 3:n="MEDIA_ERR_DECODE",te.counts.mediaErrorDecode+=1;break;case 4:n="MEDIA_ERR_SRC_NOT_SUPPORTED";break;case 5:n="MEDIA_ERR_ENCRYPTED";break;default:n="UNKNOWN"}"MEDIA_ERR_DECODE"===n&&Z.get().errors.recoverAttempts.mediaErrorDecode>=te.counts.mediaErrorDecode?function(){t.warn("A MEDIA_ERR_DECODE occured: Resetting the MediaSource");var e=K.getTime();O.deactivate(!1),t.warn("MediaSource has been resetted. Resuming playback from time ".concat(e)),de(e,!1)}():(G=!0,e.error.message&&(n+=" ("+e.error.message+")"),e.error.msExtendedCode&&(n+=" (0x"+(e.error.msExtendedCode>>>0).toString(16).toUpperCase()+")"),t.fatal("Video Element Error: "+n),e.error&&t.fatal(e.error),w.error(new y.a(e.error.code,n)),ze())}}function He(){return O?O.getStreamInfo():null}function Ke(e){for(var t=0,n=D.length;t=10){var e=o.getTime();t===e?R(e,!0):(t=e,a=NaN),r=0}}function A(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!s.getActiveStream())return!1;var t=Object.keys(h).some((function(e){return h[e]})),r=!!e&&b();return!t&&n.get().streaming.gaps.jumpGaps&&s.getActiveStreamProcessors().length>0&&(!o.isSeeking()||r)&&!o.isPaused()&&!s.getIsStreamSwitchInProgress()&&!s.getHasMediaOrInitialisationError()}function b(){var e=s.getActiveStream(),t=parseFloat((e.getStartTime()+e.getDuration()).toFixed(5));return o.getTime()+n.get().streaming.gaps.threshold>=t}function I(e,t){try{if(!e||e.length<=1&&t>0)return NaN;for(var r=NaN,i=0;isNaN(r)&&i0?e.end(i-1):0;t1&&void 0!==arguments[1]&&arguments[1],i=n.get().streaming.gaps.smallGapLimit,l=n.get().streaming.gaps.jumpLargeGaps,c=u.getBufferRange(),d=NaN,h=!1;if(t=I(c,e),!isNaN(t)){var g=c.start(t),m=g-e;m>0&&(m<=i||l)&&(d=g)}var y=o.getTimeToStreamEnd();if(isNaN(d)&&r&&isFinite(y)&&!isNaN(y)&&y0&&a!==d&&d>e&&!f){var E=d-e;if(h){var _=s.getStreamForTime(d),v=_&&!!_.getPreloaded();p.warn("Jumping to end of stream because of gap from ".concat(e," to ").concat(d,". Gap duration: ").concat(E)),o.seek(d,!0,v)}else{var T=o.getIsDynamic(),S=t>0?c.end(t-1):e,A=T?1e3*Math.max(0,E-.1):0;f=window.setTimeout((function(){o.seek(d,!0,!0),p.warn("Jumping gap occuring in period ".concat(s.getActiveStream().getStreamId()," starting at ").concat(S," and ending at ").concat(d,". Jumping by: ").concat(E-A/1e3)),f=null}),A)}a=d}}return e={reset:y,setConfig:function(e){e&&(e.settings&&(n=e.settings),e.playbackController&&(o=e.playbackController),e.streamController&&(s=e.streamController),e.videoModel&&(u=e.videoModel))},initialize:function(){!function(){m.on(c.a.WALLCLOCK_TIME_UPDATED,S,this),m.on(c.a.INITIAL_STREAM_SWITCH,T,this),m.on(c.a.PLAYBACK_SEEKING,E,this),m.on(c.a.BUFFER_REPLACEMENT_STARTED,_,e),m.on(c.a.TRACK_CHANGE_RENDERED,v,e)}()}},p=Object(d.a)(g).getInstance().getLogger(e),y(),e}_e.__dashjs_factory_name="GapController";var ve=f.a.getSingletonFactory(_e);function Te(){var e,t,n,r,i,o,s,u,f=this.context,h=Object(l.a)(f).getInstance();function p(e,t){return e&&n[t]&&n[t][e]?n[t][e].list:[]}function g(e,t){return e&&n[t]&&n[t][e]?n[t][e].current:null}function m(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(e&&e.streamInfo){var i=e.type,u=e.streamInfo,l=u.id,f=g(i,l);if(n[l]&&n[l][i]&&!_(e,f)&&(n[l][i].current=e,n[l][i].current&&(i!==a.a.TEXT||i===a.a.TEXT&&e.isFragmented)&&h.trigger(c.a.CURRENT_TRACK_CHANGED,{oldMediaInfo:f,newMediaInfo:e,switchMode:r.get().streaming.trackSwitchMode[i]},{streamId:l}),!t)){var d=T(e);if(!d||!n[l][i].storeLastSettings)return;d.roles&&(d.role=d.roles[0],delete d.roles),d.accessibility&&(d.accessibility=d.accessibility[0]),d.audioChannelConfiguration&&(d.audioChannelConfiguration=d.audioChannelConfiguration[0]),o[i]=d,s.setSavedMediaSettings(i,d)}}}function y(e,t){e&&t&&(i[e]=t)}function E(e){return e?i[e]:null}function _(e,t){if(!e&&!t)return!0;if(!e||!t)return!1;var n=e.id===t.id,r=e.viewpoint===t.viewpoint,i=e.lang===t.lang,a=e.codec===t.codec,o=e.roles.toString()===t.roles.toString(),s=e.accessibility.toString()===t.accessibility.toString(),u=e.audioChannelConfiguration.toString()===t.audioChannelConfiguration.toString();return n&&a&&r&&i&&o&&s&&u}function v(){n={},o={},i={audio:null,video:null,text:null}}function T(e){var t={lang:e.lang,viewpoint:e.viewpoint,roles:e.roles,accessibility:e.accessibility,audioChannelConfiguration:e.audioChannelConfiguration};return t.lang||t.viewpoint||t.role&&t.role.length>0||t.accessibility&&t.accessibility.length>0||t.audioChannelConfiguration&&t.audioChannelConfiguration.length>0?t:null}function S(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=!e.lang||t.lang.match(e.lang),i=void 0===e.index||null===e.index||t.index===e.index,o=!e.viewpoint||e.viewpoint===t.viewpoint,s=!e.role||!!t.roles.filter((function(t){return t===e.role}))[0],u=!e.accessibility||!!t.accessibility.filter((function(t){return t===e.accessibility}))[0],l=!e.audioChannelConfiguration||!!t.audioChannelConfiguration.filter((function(t){return t===e.audioChannelConfiguration}))[0];return r&&i&&o&&(s||t.type===a.a.AUDIO&&n)&&u&&l}function A(e){var t,n=0,r=[];return e.forEach((function(e){(t=Math.max.apply(Math,e.bitrateList.map((function(e){return e.bandwidth}))))>n?(n=t,r=[e]):t===n&&r.push(e)})),r}function b(e){var t,n=1/0,r=[];return e.forEach((function(e){var i=e.bitrateList.reduce((function(e,t){var n=Math.max(1,t.width*t.height);return e+t.bandwidth/n}),0);(t=i/e.bitrateList.length)n?(n=t,r=[e]):t===n&&r.push(e)})),r}function R(e,n){if(e===a.a.TEXT)return n[0];var i,o=r.get().streaming.selectionModeForInitialTrack;if(u&&"function"==typeof u)i=u(n);else switch(o){case a.a.TRACK_SELECTION_MODE_HIGHEST_SELECTION_PRIORITY:i=function(e){var t=(n=e,r=0,i=[],n.forEach((function(e){isNaN(e.selectionPriority)||(e.selectionPriority>r?(r=e.selectionPriority,i=[e]):e.selectionPriority===r&&i.push(e))})),i);var n,r,i;t.length>1&&(t=A(t));t.length>1&&(t=I(t));return t}(n);break;case a.a.TRACK_SELECTION_MODE_HIGHEST_BITRATE:i=function(e){var t=A(e);t.length>1&&(t=I(t));return t}(n);break;case a.a.TRACK_SELECTION_MODE_FIRST_TRACK:i=N(n);break;case a.a.TRACK_SELECTION_MODE_HIGHEST_EFFICIENCY:i=function(e){var t=b(e);t.length>1&&(t=A(t));return t}(n);break;case a.a.TRACK_SELECTION_MODE_WIDEST_RANGE:i=function(e){var t=I(e);t.length>1&&(t=A(e));return t}(n);break;default:t.warn("Track selection mode ".concat(o," is not supported. Falling back to TRACK_SELECTION_MODE_FIRST_TRACK")),i=N(n)}return i.length>0?i[0]:n[0]}function N(e){return e[0]}return e={setInitialMediaSettingsForType:function(e,t){var n=o[e]||E(e),r=p(e,t.id),i=[];n||(n=s.getSavedMediaSettings(e),y(e,n)),r&&0!==r.length&&(n&&r.forEach((function(t){S(n,t,!!o[e])&&i.push(t)})),0===i.length?m(R(e,r),!0):i.length>1?m(R(e,i,o[e])):m(i[0]))},addTrack:function(e){if(e){var t=e.type;if((r=t)===a.a.AUDIO||r===a.a.VIDEO||r===a.a.TEXT||r===a.a.IMAGE){var r,i=e.streamInfo.id;n[i]||(n[i]={audio:{list:[],storeLastSettings:!0,current:null},video:{list:[],storeLastSettings:!0,current:null},text:{list:[],storeLastSettings:!0,current:null},image:{list:[],storeLastSettings:!0,current:null}});for(var o=n[i][t].list,s=0,u=o.length;s1&&(n.forEach((function(e){r+=e.dvb_weight,i.push(r)})),t=Math.floor(Math.random()*(r-1)),i.every((function(e,n){return a=n,!(t")+2),r=t.resolvedContent.substr(0,i)+""+t.resolvedContent.substr(i)+"",t.resolvedContent=a.xml_str2json(r)}(function(e){var t;for(t=0;t=0;o--){if(t=e.elements[o],n=t.type+"_asArray",t.resolvedContent){if(t.resolvedContent)for(s=0;s0&&r.run(i)}(e),"onActuate"===e.resolveType&&f.trigger(c.a.XLINK_READY,{manifest:i}),"onLoad"===e.resolveType)switch(e.type){case o.a.PERIOD:for(t=0;t=0;a--)(i=e[a]).hasOwnProperty("xlink:href")&&"urn:mpeg:dash:resolve-to-zero:2013"===i["xlink:href"]&&e.splice(a,1);for(a=0;a-1?(p&&(t=p.createMssParser(),p.registerEvents()),t):e.indexOf("MPD")>-1||e.indexOf("Patch")>-1?Object(Qe.a)(u).create({debug:f}):t}(t)),null!==s){i.setMatchers(s.getMatchers()),i.setIron(s.getIron());try{m=s.parse(t)}catch(t){return void d.trigger(c.a.INTERNAL_MANIFEST_LOADED,{manifest:null,error:new y.a(E.a.MANIFEST_LOADER_PARSING_FAILURE_ERROR_CODE,E.a.MANIFEST_LOADER_PARSING_FAILURE_ERROR_MESSAGE+"".concat(e))})}m?(m.url=l||e,m.originalUrl||(m.originalUrl=m.url),m.hasOwnProperty(a.a.LOCATION)&&(g=h.parseBaseUrl(m.Location_asArray[0]),n.debug("BaseURI set by Location to: "+g)),m.baseUri=g,m.loadedTime=new Date,i.resolveManifestOnLoad(m),d.trigger(c.a.ORIGINAL_MANIFEST_LOADED,{originalManifest:t})):d.trigger(c.a.INTERNAL_MANIFEST_LOADED,{manifest:null,error:new y.a(E.a.MANIFEST_LOADER_PARSING_FAILURE_ERROR_CODE,E.a.MANIFEST_LOADER_PARSING_FAILURE_ERROR_MESSAGE+"".concat(e))})}else d.trigger(c.a.INTERNAL_MANIFEST_LOADED,{manifest:null,error:new y.a(E.a.MANIFEST_LOADER_PARSING_FAILURE_ERROR_CODE,E.a.MANIFEST_LOADER_PARSING_FAILURE_ERROR_MESSAGE+"".concat(e))});else d.trigger(c.a.INTERNAL_MANIFEST_LOADED,{manifest:null})},error:function(t,n,r){d.trigger(c.a.INTERNAL_MANIFEST_LOADED,{manifest:null,error:new y.a(E.a.MANIFEST_LOADER_LOADING_FAILURE_ERROR_CODE,E.a.MANIFEST_LOADER_LOADING_FAILURE_ERROR_MESSAGE+"".concat(e,", ").concat(r))})}})},reset:function(){d.off(c.a.XLINK_READY,m,t),p&&p.reset(),i&&(i.reset(),i=null),r&&(r.abort(),r=null)}},n=f.getLogger(t),d.on(c.a.XLINK_READY,m,t),r=Object(Ue.a)(u).create({errHandler:e.errHandler,dashMetrics:e.dashMetrics,mediaPlayerModel:e.mediaPlayerModel,requestModifier:e.requestModifier,urlUtils:h,constants:a.a,dashConstants:o.a,errors:E.a}),i=Xe(u).create({errHandler:g,dashMetrics:e.dashMetrics,mediaPlayerModel:e.mediaPlayerModel,requestModifier:e.requestModifier,settings:e.settings}),s=null,t}$e.__dashjs_factory_name="ManifestLoader";var Ze=f.a.getClassFactory($e);function Je(){var e=this.context,t=Object(l.a)(e).getInstance();return{error:function(e){t.trigger(c.a.ERROR,{error:e})}}}Je.__dashjs_factory_name="ErrorHandler";var et=f.a.getSingletonFactory(Je),tt=n(46);function nt(){var e,t,n,r,i,o,s=this.context;function u(e,r){if(!r||!r.Period_asArray||0===r.Period_asArray.length)return Promise.resolve();var o=[];return r.Period_asArray.forEach((function(r){o.push(function(e,r){return new Promise((function(o){if(e&&e.AdaptationSet_asArray&&0!==e.AdaptationSet_asArray.length){var s=[];e.AdaptationSet_asArray.forEach((function(e){t.getIsTypeOf(e,r)&&s.push(function(e,r){return new Promise((function(o){if(e.Representation_asArray&&0!==e.Representation_asArray.length){var s=[],u=[];e.Representation_asArray.forEach((function(i,o){var l=t.getCodec(e,o,!1),c=function(e,t,n){switch(e){case a.a.VIDEO:return function(e,t){var n=e.width||null,r=e.height||null,i=e.frameRate||null,a=e.bandwidth||null;return{codec:t,width:n,height:r,framerate:i,bitrate:a}}(t,n);case a.a.AUDIO:return function(e,t){var n=e.audioSamplingRate||null,r=e.bandwidth||null;return{codec:t,bitrate:r,samplerate:n}}(t,n);default:return null}}(r,i,l);u.push(c),s.push(n.supportsCodec(c,r))})),Promise.all(s).then((function(t){e.Representation_asArray=e.Representation_asArray.filter((function(e,n){return t[n]||i.debug("[Stream] Codec ".concat(u[n].codec," not supported ")),t[n]})),o()})).catch((function(){o()}))}else o()}))}(e,r))})),Promise.all(s).then((function(){e.AdaptationSet_asArray=e.AdaptationSet_asArray.filter((function(e){var t=e.Representation_asArray&&e.Representation_asArray.length>0;return t||i.warn("AdaptationSet has been removed because of no supported Representation"),t})),o()})).catch((function(){o()}))}else o()}))}(r,e))})),Promise.all(o)}return e={setConfig:function(e){e&&(e.adapter&&(t=e.adapter),e.capabilities&&(n=e.capabilities),e.settings&&(r=e.settings))},filterUnsupportedFeatures:function(e){return new Promise((function(s){var l=[];l.push(u(a.a.VIDEO,e)),l.push(u(a.a.AUDIO,e)),Promise.all(l).then((function(){r.get().streaming.capabilities.filterUnsupportedEssentialProperties&&function(e){if(!e||!e.Period_asArray||0===e.Period_asArray.length)return;e.Period_asArray.forEach((function(e){e.AdaptationSet_asArray=e.AdaptationSet_asArray.filter((function(e){return!e.Representation_asArray||0===e.Representation_asArray.length||(e.Representation_asArray=e.Representation_asArray.filter((function(e){var r=t.getEssentialPropertiesForRepresentation(e);if(r&&r.length>0)for(var a=0;a0)}))}))}(e),function(e){if(!o||0===o.length||!e||!e.Period_asArray||0===e.Period_asArray.length)return;e.Period_asArray.forEach((function(e){e.AdaptationSet_asArray=e.AdaptationSet_asArray.filter((function(e){return!e.Representation_asArray||0===e.Representation_asArray.length||(e.Representation_asArray=e.Representation_asArray.filter((function(e){return!o.some((function(t){return!t(e)}))})),e.Representation_asArray&&e.Representation_asArray.length>0)}))}))}(e),s()})).catch((function(){s()}))}))},setCustomCapabilitiesFilters:function(e){o=e}},i=Object(d.a)(s).getInstance().getLogger(e),e}nt.__dashjs_factory_name="CapabilitiesFilter";var rt=f.a.getSingletonFactory(nt);var it=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.t=null,this.xywh=null,this.track=null,this.id=null,this.s=null,this.r=null};function at(){var e;return{initialize:function(t){if(e=new it,!t)return null;var n=t.indexOf("#");if(-1!==n)for(var r=t.substr(n+1).split("&"),i=0,a=r.length;i0&&r[e.mediaType].ignoreCount--}return t={getMaxIndex:function(e){var t=ht(i).create();if(!e||!e.hasOwnProperty("getMediaType"))return t;!function(){if(!s||!s.hasOwnProperty("getCurrentBufferLevel")||!s.hasOwnProperty("getCurrentBufferState"))throw new Error(a.a.MISSING_CONFIG_ERROR)}();var o=e.getMediaType(),l=s.getCurrentBufferState(o),c=e.getRepresentationInfo().fragmentDuration,d=e.getStreamInfo(),h=d?d.id:null,p=d&&d.manifestInfo&&d.manifestInfo.isDynamic;if(function(e){return!f.get().streaming.lowLatencyEnabled&&r[e].ignoreCount>0}(o)||!c)return t;if(l&&l.state===u.BUFFER_EMPTY)n.debug("["+o+"] Switch to index 0; buffer is empty."),t.quality=0,t.reason="InsufficientBufferRule: Buffer is empty";else{var g=e.getMediaInfo(),m=e.getAbrController(),y=m.getThroughputHistory(),E=s.getCurrentBufferLevel(o),_=y.getAverageThroughput(o,p),v=y.getAverageLatency(o),T=_*(E/c)*.5;t.quality=m.getQualityForBitrate(g,T,h,v),t.reason="InsufficientBufferRule: being conservative to avoid immediate rebuffering"}return t},reset:function(){p(),o.off(h.a.PLAYBACK_SEEKING,g,t),o.off(c.a.BYTES_APPENDED_END_FRAGMENT,m,t)}},n=Object(d.a)(i).getInstance().getLogger(t),p(),o.on(h.a.PLAYBACK_SEEKING,g,t),o.on(c.a.BYTES_APPENDED_END_FRAGMENT,m,t),t}mt.__dashjs_factory_name="InsufficientBufferRule";var yt=f.a.getClassFactory(mt);function Et(e){e=e||{};var t,n,r,i,a,o=this.context,s=e.mediaPlayerModel,u=e.dashMetrics,l=e.settings;function c(){r={},i={},a=[]}return t={shouldAbandon:function(e){var t=ht(o).create(ht.NO_CHANGE,{name:Et.__dashjs_factory_name});if(!(e&&e.hasOwnProperty("getMediaInfo")&&e.hasOwnProperty("getMediaType")&&e.hasOwnProperty("getCurrentRequest")&&e.hasOwnProperty("getRepresentationInfo")&&e.hasOwnProperty("getAbrController")))return t;var c,f,d=e.getMediaInfo(),h=e.getMediaType(),p=e.getStreamInfo(),g=p?p.id:null,m=e.getCurrentRequest();if(!isNaN(m.index)){c=h,f=m.index,r[c]=r[c]||{},r[c][f]=r[c][f]||{};var y=s.getStableBufferTime();if(u.getCurrentBufferLevel(h)>y)return t;var E=r[h][m.index];if(null===E||null===m.firstByteDate||i.hasOwnProperty(E.id))return t;if(void 0===E.firstByteTime&&(a[h]=[],E.firstByteTime=m.firstByteDate.getTime(),E.segmentDuration=m.duration,E.bytesTotal=m.bytesTotal,E.id=m.index),E.bytesLoaded=m.bytesLoaded,E.elapsedTime=(new Date).getTime()-E.firstByteTime,E.bytesLoaded>0&&E.elapsedTime>0&&function(e,t){a[e]=a[e]||[],a[e].push(t)}(h,Math.round(8*E.bytesLoaded/E.elapsedTime)),a[h].length>=5&&E.elapsedTime>500&&E.bytesLoadedE.bytesTotal*S[I].bitrate/S[v.getQualityFor(h,g)].bitrate&&(t.quality=I,t.reason.throughput=E.measuredBandwidthInKbps,t.reason.fragmentID=E.id,i[E.id]=E,n.debug("["+h+"] frag id",E.id," is asking to abandon and switch to quality to ",I," measured bandwidth was",E.measuredBandwidthInKbps),delete r[h][E.id])}}else E.bytesLoaded===E.bytesTotal&&delete r[h][E.id]}return t},reset:c},n=Object(d.a)(o).getInstance().getLogger(t),c(),t}Et.__dashjs_factory_name="AbandonRequestsRule";var _t=f.a.getClassFactory(Et);function vt(){var e,t,n=this.context;return e={getMaxIndex:function(e){var r=ht(n).create();if(!e||!e.hasOwnProperty("getDroppedFramesHistory"))return r;var i=e.getDroppedFramesHistory(),a=e.getStreamInfo().id;if(i){var o=i.getFrameHistory(a);if(!o||0===o.length)return r;for(var s=0,u=0,l=ht.NO_CHANGE,c=1;c375&&s/u>.15)){l=c-1,t.debug("index: "+l+" Dropped Frames: "+s+" Total Frames: "+u);break}return ht(n).create(l,{droppedFrames:s})}return r}},t=Object(d.a)(n).getInstance().getLogger(e),e}vt.__dashjs_factory_name="DroppedFramesRule";var Tt=f.a.getClassFactory(vt);function St(){var e,t,n=this.context;return e={getMaxIndex:function(e){for(var r=e?e.getSwitchHistory():null,i=r?r.getSwitchRequests():[],a=0,o=0,s=0,u=ht(n).create(),l=0;l=6&&a/o>.075)){u.quality=l>0&&i[l].drops>0?l-1:l,u.reason={index:u.quality,drops:a,noDrops:o,dropSize:s},t.debug("Switch history rule index: "+u.quality+" samples: "+(a+o)+" drops: "+a);break}return u}},t=Object(d.a)(n).getInstance().getLogger(e),e}St.__dashjs_factory_name="SwitchHistoryRule";var At=f.a.getClassFactory(St);function bt(e){e=e||{};var t,n,r,i=this.context,a=e.dashMetrics,o=e.mediaPlayerModel,s=Object(l.a)(i).getInstance();function f(e,t,n){var r=n.reduce((function(e,t,r){return t>n[e]?r:e}),0);if(0===r)return null;var i=Math.max(e,10+2*t.length),a=(n[r]-1)/(i/10-1);return{gp:a,Vp:10/a}}function p(e){var t={},n=e.getMediaInfo().bitrateList.map((function(e){return e.bandwidth})),r=function(e){return e.map((function(e){return Math.log(e)}))}(n);r=r.map((function(e){return e-r[0]+1}));var i=o.getStableBufferTime(),a=f(i,n,r);return a?(t.state=1,t.bitrates=n,t.utilities=r,t.stableBufferTime=i,t.Vp=a.Vp,t.gp=a.gp,t.lastQuality=0,g(t)):t.state=0,t}function g(e){e.placeholderBuffer=0,e.mostAdvancedSegmentStart=NaN,e.lastSegmentWasReplacement=!1,e.lastSegmentStart=NaN,e.lastSegmentDurationS=NaN,e.lastSegmentRequestTimeMs=NaN,e.lastSegmentFinishTimeMs=NaN}function m(e,t){var n=o.getStableBufferTime();if(e.stableBufferTime!==n){var r=f(n,e.bitrates,e.utilities);if(r.Vp!==e.Vp||r.gp!==e.gp){var i=a.getCurrentBufferLevel(t),s=i+e.placeholderBuffer;s-=10,s*=r.Vp/e.Vp,s+=10,e.stableBufferTime=n,e.Vp=r.Vp,e.gp=r.gp,e.placeholderBuffer=Math.max(0,s-i)}}}function y(e,t){return e.Vp*(e.utilities[t]+e.gp)}function E(e,t){for(var n=e.bitrates[t],r=e.utilities[t],i=0,a=t-1;a>=0;--a)if(e.utilities[a]t.mostAdvancedSegmentStart?(t.mostAdvancedSegmentStart=n,t.lastSegmentWasReplacement=!1):t.lastSegmentWasReplacement=!0,t.lastSegmentStart=n,t.lastSegmentDurationS=e.chunk.duration,t.lastQuality=e.chunk.quality,b(t,e.chunk.mediaInfo.type)}}}function A(e){if(e&&e.metric===u.HTTP_REQUEST&&e.value&&e.value.type===v.a.MEDIA_SEGMENT_TYPE&&e.value.trace&&e.value.trace.length){var t=r[e.mediaType];t&&0!==t.state&&(t.lastSegmentRequestTimeMs=e.value.trequest.getTime(),t.lastSegmentFinishTimeMs=e.value._tfinish.getTime(),b(t,e.mediaType))}}function b(e,t){if(!isNaN(e.lastSegmentStart)&&!isNaN(e.lastSegmentRequestTimeMs)&&!isNaN(e.placeholderBuffer)){if(e.placeholderBuffer*=.99,!isNaN(e.lastSegmentFinishTimeMs)){var n=a.getCurrentBufferLevel(t)+.001*(e.lastSegmentFinishTimeMs-e.lastSegmentRequestTimeMs),r=y(e,e.lastQuality),i=Math.max(0,r-n);e.placeholderBuffer=Math.min(i,e.placeholderBuffer)}e.lastSegmentWasReplacement&&!isNaN(e.lastSegmentDurationS)&&(e.placeholderBuffer+=e.lastSegmentDurationS),e.lastSegmentStart=NaN,e.lastSegmentRequestTimeMs=NaN}}function I(e){if(e){var t=r[e.mediaType];t&&0!==t.state&&(t.abrQuality=e.newQuality)}}function R(e){if(e){var t=r[e.mediaType];if(t&&0!==t.state){var n,i=a.getCurrentBufferLevel(e.mediaType);n=t.abrQuality>0?E(t,t.abrQuality):10;var o=Math.max(0,n-i);t.placeholderBuffer=Math.min(t.placeholderBuffer,o)}}}function N(){r={}}return t={getMaxIndex:function(e){var t=ht(i).create();if(!(e&&e.hasOwnProperty("getMediaInfo")&&e.hasOwnProperty("getMediaType")&&e.hasOwnProperty("getScheduleController")&&e.hasOwnProperty("getStreamInfo")&&e.hasOwnProperty("getAbrController")&&e.hasOwnProperty("useBufferOccupancyABR")))return t;var o=e.getMediaInfo(),s=e.getMediaType(),u=e.getScheduleController(),l=e.getStreamInfo(),c=e.getAbrController(),f=c.getThroughputHistory(),d=l?l.id:null,h=l&&l.manifestInfo&&l.manifestInfo.isDynamic,_=e.useBufferOccupancyABR();if(t.reason=t.reason||{},!_)return t;u.setTimeToLoadDelay(0);var v=function(e){var t=e.getMediaType(),n=r[t];return n?0!==n.state&&m(n,t):(n=p(e),r[t]=n),n}(e);if(0===v.state)return t;var T,S=a.getCurrentBufferLevel(s),A=f.getAverageThroughput(s,h),b=f.getSafeAverageThroughput(s,h),I=f.getAverageLatency(s);if(t.reason.state=v.state,t.reason.throughput=A,t.reason.latency=I,isNaN(A))return t;switch(v.state){case 1:T=c.getQualityForBitrate(o,b,d,I),t.quality=T,t.reason.throughput=b,v.placeholderBuffer=Math.max(0,E(v,T)-S),v.lastQuality=T,!isNaN(v.lastSegmentDurationS)&&S>=v.lastSegmentDurationS&&(v.state=2);break;case 2:!function(e,t){var n=Date.now();if(isNaN(e.lastSegmentFinishTimeMs)){if(!isNaN(e.lastCallTimeMs)){var r=.001*(n-e.lastCallTimeMs);e.placeholderBuffer+=Math.max(0,r)}}else{var i=.001*(n-e.lastSegmentFinishTimeMs);e.placeholderBuffer+=Math.max(0,i)}e.lastCallTimeMs=n,e.lastSegmentStart=NaN,e.lastSegmentRequestTimeMs=NaN,e.lastSegmentFinishTimeMs=NaN,m(e,t)}(v,s),T=function(e,t){for(var n=e.bitrates.length,r=NaN,i=NaN,a=0;a=i)&&(i=o,r=a)}return r}(v,S+v.placeholderBuffer);var R=c.getQualityForBitrate(o,b,d,I);T>v.lastQuality&&T>R&&(T=Math.max(R,v.lastQuality));var N=Math.max(0,S+v.placeholderBuffer-y(v,T));N<=v.placeholderBuffer?(v.placeholderBuffer-=N,N=0):(N-=v.placeholderBuffer,v.placeholderBuffer=0,Tt.mostAdvancedSegmentStart?(t.mostAdvancedSegmentStart=a,t.lastSegmentWasReplacement=!1):t.lastSegmentWasReplacement=!0,t.lastSegmentStart=a,t.lastSegmentDurationS=e.chunk.duration,t.lastQuality=e.chunk.quality,E(t,i)}}}function y(e){if(e&&e.metric===u.HTTP_REQUEST&&e.value&&e.value.type===v.a.MEDIA_SEGMENT_TYPE&&e.value.trace&&e.value.trace.length){var t=n[e.mediaType],i=r[e.mediaType];t&&0!==t.state&&(t.lastSegmentRequestTimeMs=e.value.trequest.getTime(),t.lastSegmentFinishTimeMs=e.value._tfinish.getTime(),E(t,i))}}function E(e,t){isNaN(e.lastSegmentStart)||isNaN(e.lastSegmentRequestTimeMs)||(t.segment_request_start_s=.001*e.lastSegmentRequestTimeMs,t.segment_download_finish_s=.001*e.lastSegmentFinishTimeMs,e.lastSegmentStart=NaN,e.lastSegmentRequestTimeMs=NaN)}function _(e){if(e&&e.mediaType){var t=n[e.mediaType];t&&0!==t.state&&(t.abrQuality=e.newQuality)}}function T(e,t){if(e.length!==t.length)return-1;for(var n=0,r=0;r=D.B_target){C.state=2,D.Q=l;for(var O=0;OF&&(U=-1),D.w[B]=D.prev_w[B]+U*(x/(2*c))*((D.Q+l)*(w*g[B]/F));D.w=function(e){for(var t=e.length,n=!1,r=[],i=0;i=a[l+1]){n=!0;break}n||(s=(o+a[t-1]-1)/t);for(var c=0;cC.lastQuality&&g[C.lastQuality+1]<=F&&(t=C.lastQuality+1),g[t]>=F&&(D.Q=2*Math.max(l,D.Q)),u.quality=t,u.reason.throughput=R,u.reason.latency=N,u.reason.bufferLevel=b,C.lastQuality=u.quality;break;default:i.debug("L2A ABR rule invoked in bad state."),u.quality=_.getQualityForBitrate(f,I,E.id,N),u.reason.state=C.state,u.reason.throughput=I,u.reason.latency=N,C.state=1,p(C)}return u},reset:function(){S(),f.off(c.a.PLAYBACK_SEEKING,g,t),f.off(c.a.MEDIA_FRAGMENT_LOADED,m,t),f.off(c.a.METRIC_ADDED,y,t),f.off(c.a.QUALITY_CHANGE_REQUESTED,_,t)}},i=Object(d.a)(o).getInstance().getLogger(t),S(),f.on(c.a.PLAYBACK_SEEKING,g,t),f.on(c.a.MEDIA_FRAGMENT_LOADED,m,t),f.on(c.a.METRIC_ADDED,y,t),f.on(c.a.QUALITY_CHANGE_REQUESTED,_,t),t}Rt.__dashjs_factory_name="L2ARule";var Nt=f.a.getClassFactory(Rt),wt="manual_weight_selection",Ct="random_weight_selection",Dt="dynamic_weight_selection";function Ot(){var e,t,n,r,i,a,o,s,u,l=this.context;function c(){n=null,r=1,i=100,a=0,o=null,s=null,u=Dt}function f(){var e=0;if(n)for(var t=0;te&&(e=r.state.throughput)}return e}function h(e,t,n){var r=e.map((function(e,r){return n[r]*Math.pow(e-t[r],2)})).reduce((function(e,t){return e+t}));return(r<0?-1:1)*Math.sqrt(Math.abs(r))}function p(e,t){return h([e.state.throughput,e.state.latency,e.state.rebuffer,e.state.switch],[t.state.throughput,t.state.latency,t.state.rebuffer,t.state.switch],[1,1,1,1])}function g(e,t,n){for(var r=0;ro)&&(a=u,o=l)}t.push(a)}for(var p=null,g=null,m=0;mp)&&(p=y,g=m)}var _=[];_.push(t[g]),t.splice(g,1);for(;t.length>0;){for(var v=null,T=null,S=0;S1&&(A=f()),c/=i,t.debug("getNextQuality called throughput:".concat(A," latency:").concat(c," bufferSize:").concat(d," currentQualityIndex:").concat(m," playbackRate:").concat(p));var b=S[m],I=b.bitrate*E.getSegmentDuration()/T,R=Math.max(0,I-v);if(v-In?e-n:e+n-t}return t={getMinBuffer:function(){return s},getSegmentDuration:c,getNextBufferWithBitrate:function(e,t,n){return f(t,e*u/n)},getNextBuffer:f,findWeightVector:function(e,t,i,a,c,d){var h=null,p=null,g=null,m=Math.abs(t-r);return e.forEach((function(e){n.forEach((function(n){n[0];var r=n[1],a=n[2],y=(n[3],e.bitrate*u/c),E=f(i,y),_=(0===a?10:1/a)*Math.max(1e-5,y-E),v=(0===r?10:1/r)*e.state.latency,T=l.calculateSingleUseQoe(e.bitrate,_,v,d);(null===h||T>h)&&function(e,t,n){if(e>o+n)return!1;return t>=s}(t,E,m)&&(h=T,p=n,g=e.bitrate)}))})),null===p&&null===g&&(p=-1),r=t,p}},i=[.2,.4,.6,.8,1],a=4,n=function e(t,n,r){if(r===n)return t;for(var a=t.length,o=0;oI?I=N:NA?D-A:0;i.setupPerSegmentQoe(A,I,b),i.logSegmentMetrics(w,O,_,v);var M=Ut(s).create({targetLatency:1.5,bufferMin:.3,segmentDuration:A,qoeEvaluator:i});return n.quality=r.getNextQuality(h,1e3*T,_,m,v,d,M),n.reason={throughput:T,latency:_},n.priority=ht.PRIORITY.STRONG,g.setTimeToLoadDelay(0),n.quality!==d&&console.log("[TgcLearningRule]["+l+"] requesting switch to index: ",n.quality,"Average throughput",Math.round(T),"kbps"),n}catch(e){throw e}},reset:function(){r.reset(),i.reset()}},t=Object(d.a)(s).getInstance().getLogger(n),r=Mt(s).create(),i=Ft(s).create(),n}Bt.__dashjs_factory_name="LoLPRule";var kt=f.a.getClassFactory(Bt);function Gt(e){e=e||{};var t,n,r=this.context,i=e.mediaPlayerModel,o=e.dashMetrics,s=e.settings;function u(e){return e.filter((function(e){return e.quality>ht.NO_CHANGE}))}function l(e){var t,n,i,a,o,s={},u=null;if(0!==e.length){for(s[ht.PRIORITY.STRONG]={quality:ht.NO_CHANGE,reason:null},s[ht.PRIORITY.WEAK]={quality:ht.NO_CHANGE,reason:null},s[ht.PRIORITY.DEFAULT]={quality:ht.NO_CHANGE,reason:null},t=0,n=e.length;ti.quality)&&(s[i.priority].quality=i.quality,s[i.priority].reason=i.reason||null);return s[ht.PRIORITY.WEAK].quality!==ht.NO_CHANGE&&(u=s[ht.PRIORITY.WEAK]),s[ht.PRIORITY.DEFAULT].quality!==ht.NO_CHANGE&&(u=s[ht.PRIORITY.DEFAULT]),s[ht.PRIORITY.STRONG].quality!==ht.NO_CHANGE&&(u=s[ht.PRIORITY.STRONG]),u&&(a=u.quality,o=u.reason),ht(r).create(a,o)}}return{initialize:function(){t=[],n=[],s.get().streaming.abr.useDefaultABRRules&&(s.get().streaming.abr.ABRStrategy===a.a.ABR_STRATEGY_L2A?t.push(Nt(r).create({dashMetrics:o,mediaPlayerModel:i,settings:s})):s.get().streaming.abr.ABRStrategy===a.a.ABR_STRATEGY_LoLP?t.push(kt(r).create({dashMetrics:o})):(t.push(It(r).create({dashMetrics:o,mediaPlayerModel:i,settings:s})),t.push(gt(r).create({dashMetrics:o})),s.get().streaming.abr.additionalAbrRules.insufficientBufferRule&&t.push(yt(r).create({dashMetrics:o,settings:s})),s.get().streaming.abr.additionalAbrRules.switchHistoryRule&&t.push(At(r).create()),s.get().streaming.abr.additionalAbrRules.droppedFramesRule&&t.push(Tt(r).create()),s.get().streaming.abr.additionalAbrRules.abandonRequestsRule&&n.push(_t(r).create({dashMetrics:o,mediaPlayerModel:i,settings:s})))),i.getABRCustomRules().forEach((function(e){"qualitySwitchRules"===e.type&&t.push(e.rule(r).create()),"abandonFragmentRules"===e.type&&n.push(e.rule(r).create())}))},reset:function(){[t,n].forEach((function(e){e&&e.length&&e.forEach((function(e){return e.reset&&e.reset()}))})),t=[],n=[]},getMaxQuality:function(e){return l(u(t.map((function(t){return t.getMaxIndex(e)}))))||ht(r).create()},getMinSwitchRequest:l,shouldAbandonFragment:function(e,t){return l(u(n.map((function(n){return n.shouldAbandon(e,t)}))))||ht(r).create()},getQualitySwitchRules:function(){return t}}}Gt.__dashjs_factory_name="ABRRulesCollection";var jt=f.a.getClassFactory(Gt);jt.QUALITY_SWITCH_RULES="qualitySwitchRules",jt.ABANDON_FRAGMENT_RULES="abandonFragmentRules",f.a.updateSingletonFactory(Gt.__dashjs_factory_name,jt);var Yt=jt;function Ht(){var e,t,n,r,i=this.context,o=Object(_.a)(i).getInstance();function s(e){var t;for(t=0;t0?e:o.get().streaming.buffer.fastSwitchEnabled?20:12}function l(){return o.get().streaming.lowLatencyEnabled?o.get().streaming.delay.liveDelay||3:o.get().streaming.delay.liveDelay}function c(e,n){f(e,n);var r=new lt.a;r.schemeIdUri=e,r.value=n,t.push(r)}function f(e,n){Object(M.b)(e,"string"),Object(M.b)(n,"string"),t.forEach((function(r,i){r.schemeIdUri===e&&r.value===n&&t.splice(i,1)}))}return e={getABRCustomRules:function(){return r},addABRCustomRule:function(e,t,n){if("string"!=typeof e||e!==Yt.ABANDON_FRAGMENT_RULES&&e!==Yt.QUALITY_SWITCH_RULES||"string"!=typeof t)throw a.a.BAD_ARGUMENT_ERROR;var i=s(t);-1===i?r.push({type:e,rulename:t,rule:n}):(r[i].type=e,r[i].rule=n)},removeABRCustomRule:function(e){if(e){var t=s(e);-1!==t&&r.splice(t,1)}else r=[]},getStableBufferTime:u,getInitialBufferLevel:function(){var e=o.get().streaming.buffer.initialBufferLevel;return isNaN(e)||e<0?0:Math.min(u(),e)},getRetryAttemptsForType:function(e){var t=isNaN(o.get().streaming.retryAttempts.lowLatencyMultiplyFactor)?5:o.get().streaming.retryAttempts.lowLatencyMultiplyFactor;return o.get().streaming.lowLatencyEnabled?o.get().streaming.retryAttempts[e]*t:o.get().streaming.retryAttempts[e]},getRetryIntervalsForType:function(e){var t=isNaN(o.get().streaming.retryIntervals.lowLatencyReductionFactor)?10:o.get().streaming.retryIntervals.lowLatencyReductionFactor;return o.get().streaming.lowLatencyEnabled?o.get().streaming.retryIntervals[e]/t:o.get().streaming.retryIntervals[e]},getLiveDelay:l,getLiveCatchupLatencyThreshold:function(){try{var e=o.get().streaming.liveCatchup.latencyThreshold,t=l();if(null!==e&&!isNaN(e))return Math.max(e,t);var n=o.get().streaming.liveCatchup.minDrift,r=!isNaN(t)&&t?isNaN(n)?l():o.get().streaming.liveCatchup.minDrift+l():NaN;return r&&!isNaN(r)?Math.max(4*r,5):NaN}catch(e){return NaN}},addUTCTimingSource:c,removeUTCTimingSource:f,getUTCTimingSources:function(){return t},clearDefaultUTCTimingSources:function(){t=[]},restoreDefaultUTCTimingSources:function(){var e=o.get().streaming.utcSynchronization.defaultTimingSource;c(e.scheme,e.value)},setXHRWithCredentialsForType:function e(t,r){t?n[t]=!!r:Object.keys(n).forEach((function(t){e(t,r)}))},getXHRWithCredentialsForType:function(e){var t=n[e];return void 0===t?n.default:t},getDefaultUtcTimingSource:function(){return o.get().streaming.utcSynchronization.defaultTimingSource},reset:function(){}},t=[],n={default:!1},r=[],e}Ht.__dashjs_factory_name="MediaPlayerModel";var Kt=f.a.getSingletonFactory(Ht);function qt(e){var t=(e=e||{}).abrController,n=e.switchHistory,r=e.droppedFramesHistory,i=e.currentRequest,a=e.useBufferOccupancyABR,o=e.useL2AABR,s=e.useLoLPABR,u=e.streamProcessor?e.streamProcessor.getScheduleController():null,l=e.streamProcessor?e.streamProcessor.getRepresentationInfo():null,c=e.videoModel?e.videoModel:null;function f(){return l?l.mediaInfo:null}return{getMediaType:function(){var e=f();return e?e.type:null},getMediaInfo:f,getDroppedFramesHistory:function(){return r},getCurrentRequest:function(){return i},getSwitchHistory:function(){return n},getStreamInfo:function(){var e=f();return e?e.streamInfo:null},getScheduleController:function(){return u},getAbrController:function(){return t},getRepresentationInfo:function(){return l},useBufferOccupancyABR:function(){return a},useL2AABR:function(){return o},useLoLPABR:function(){return s},getVideoModel:function(){return c}}}qt.__dashjs_factory_name="RulesContext";var Vt=f.a.getClassFactory(qt);function Wt(){var e=[],t=[];return{push:function(n){n.newValue===ht.NO_CHANGE&&(n.newValue=n.oldValue),e[n.oldValue]||(e[n.oldValue]={noDrops:0,drops:0,dropSize:0});var r=n.newValue-n.oldValue,i=r<0?1:0,a=i?-r:0,o=i?0:1;if(e[n.oldValue].drops+=i,e[n.oldValue].dropSize+=a,e[n.oldValue].noDrops+=o,t.push({idx:n.oldValue,noDrop:o,drop:i,dropSize:a}),t.length>8){var s=t.shift();e[s.idx].drops-=s.drop,e[s.idx].dropSize-=s.dropSize,e[s.idx].noDrops-=s.noDrop}},getSwitchRequests:function(){return e},reset:function(){e=[],t=[]}}}Wt.__dashjs_factory_name="SwitchRequestHistory";var zt=f.a.getClassFactory(Wt);function Xt(){var e={},t={},n={};return{push:function(r,i,a){if(i){e[r]||(e[r]=[],t[r]=0,n[r]=0);var o=a&&a.droppedVideoFrames?a.droppedVideoFrames:0,s=a&&a.totalVideoFrames?a.totalVideoFrames:0,u=o-t;t[r]=o;var l=s-n;n[r]=s;var c=e[r];isNaN(i)||(c[i]?(c[i].droppedVideoFrames+=u,c[i].totalVideoFrames+=l):c[i]={droppedVideoFrames:u,totalVideoFrames:l})}},getFrameHistory:function(t){return e[t]},clearForStream:function(r){try{delete e[r],delete t[r],delete n[r]}catch(e){}},reset:function(){e={},t={},n={}}}}Xt.__dashjs_factory_name="DroppedFramesHistory";var Qt=f.a.getClassFactory(Xt);function $t(e){var t,n,r,i,o,s=(e=e||{}).settings;function u(e,t,n,r){var i=Math.pow(.5,n/r.fast);e.fastEstimate=(1-i)*t+i*e.fastEstimate;var a=Math.pow(.5,n/r.slow);e.slowEstimate=(1-a)*t+a*e.slowEstimate,e.totalWeight+=n}function l(e,u,l){return s.get().streaming.abr.movingAverageMethod!==a.a.MOVING_AVERAGE_SLIDING_WINDOW?function(e,t){var n=e?o.throughputHalfLife:o.latencyHalfLife,a=e?r[t]:i[t];if(!a||a.totalWeight<=0)return NaN;var s=a.fastEstimate/(1-Math.pow(.5,a.totalWeight/n.fast)),u=a.slowEstimate/(1-Math.pow(.5,a.totalWeight/n.slow));return e?Math.min(s,u):Math.max(s,u)}(e,u):function(e,r,i){var a=function(e,r,i){var a,o;if(e?(a=t[r],o=i?3:4):(a=n[r],o=4),a){if(o>=a.length)o=a.length;else if(e)for(var s=1;s=1.3||u<=1/1.3)&&(o+=1)===a.length)break}}else o=0;return o}(e,r,i),o=(e?t:n)[r];if(0===a||!o||0===o.length)return NaN;return(o=o.slice(-a)).reduce((function(e,t){return e+t}))/o.length}(e,u,l)}function c(e,t){return l(!0,e,t)}function f(e){t[e]=t[e]||[],n[e]=n[e]||[],r[e]=r[e]||{fastEstimate:0,slowEstimate:0,totalWeight:0},i[e]=i[e]||{fastEstimate:0,slowEstimate:0,totalWeight:0}}function d(){t={},n={},r={},i={}}var h={push:function(e,l,c){if(l.trace&&l.trace.length){var d=l.tresponse.getTime()-l.trequest.getTime()||1,h=l._tfinish.getTime()-l.tresponse.getTime()||1,p=l.trace.reduce((function(e,t){return e+t.b[0]}),0),g=0,m=0;if(s.get().streaming.lowLatencyEnabled){if(s.get().streaming.abr.fetchThroughputCalculationMode===a.a.ABR_FETCH_THROUGHPUT_CALCULATION_MOOF_PARSING){var y=l.trace.reduce((function(e,t){return e+t.t}),0);m=Math.round(y/l.trace.length)}0===m&&(g=l.trace.reduce((function(e,t){return e+t.d}),0))}else g=c?h:d+h;if(0!==g&&(m=Math.round(8*p/g)),f(e),function(e,t,n){return e===a.a.VIDEO?n0&&!t[e].hasCachedEntries)return;t[e].hasCachedEntries=!0}else t[e]&&t[e].hasCachedEntries&&function(e){delete t[e],delete n[e],delete r[e],delete i[e],f(e)}(e);t[e].push(m),t[e].length>20&&t[e].shift(),n[e].push(d),n[e].length>20&&n[e].shift(),u(r[e],m,.001*h,o.throughputHalfLife),u(i[e],d,1,o.latencyHalfLife)}},getAverageThroughput:c,getSafeAverageThroughput:function(e,t){var n=c(e,t);return isNaN(n)||(n*=s.get().streaming.abr.bandwidthSafetyFactor),n},getAverageLatency:function(e){return l(!1,e)},reset:d};return o={throughputHalfLife:{fast:3,slow:8},latencyHalfLife:{fast:1,slow:2}},d(),h}$t.__dashjs_factory_name="ThroughputHistory";var Zt=f.a.getClassFactory($t);function Jt(){var e,t,n,r,i,o,s,f,p,g,y,E,_,T,S,A,b,I,R,N,w,C,D,O,P,L=this.context,F=Object(d.a)(L).getInstance(),x=Object(l.a)(L).getInstance();function U(){i={},o={},f={},s={},I={},w={},C={},D={},void 0===g&&(g=!1),R&&R.reset(),b=void 0,R=void 0,N=void 0,clearTimeout(p),p=null}function B(t){var i=t.request.mediaType,a=t.streamId;if(i&&a&&s[a]&&P.get().streaming.abr.autoSwitchBitrate[i]){var o=s[a][i];if(o){var l=Vt(L).create({abrController:e,streamProcessor:o,currentRequest:t.request,useBufferOccupancyABR:w[i],useL2AABR:C[i],useLoLPABR:D[i],videoModel:T}),c=n.shouldAbandonFragment(l,a);if(c.quality>ht.NO_CHANGE){var d=o.getFragmentModel();d.getRequests({state:m.a.FRAGMENT_MODEL_LOADING,index:t.request.index})[0]&&(d.abortRequests(),f[a][i].state=u.ABANDON_LOAD,I[a][i].reset(),I[a][i].push({oldValue:H(i,a),newValue:c.quality,confidence:1,reason:c.reason}),K(i,r.getActiveStreamInfo(),c.quality,c.reason),clearTimeout(p),p=setTimeout((function(){f[a][i].state=u.ALLOW_LOAD,p=null}),P.get().streaming.abandonLoadTimeout))}}}}function k(e){e.mediaType===a.a.VIDEO&&(void 0!==b&&R.push(e.streamId,b,T.getPlaybackQuality()),b=e.newQuality)}function G(e){var n,r;e.metric!==u.HTTP_REQUEST||!e.value||e.value.type!==v.a.MEDIA_SEGMENT_TYPE||e.mediaType!==a.a.AUDIO&&e.mediaType!==a.a.VIDEO||N.push(e.mediaType,e.value,P.get().streaming.abr.useDeadTimeLatency),e.metric!==u.BUFFER_LEVEL||e.mediaType!==a.a.AUDIO&&e.mediaType!==a.a.VIDEO||(n=e.mediaType,r=.001*e.value.level,P.get().streaming.abr.ABRStrategy===a.a.ABR_STRATEGY_DYNAMIC&&function(e,n){var r=S.getStableBufferTime(),i=r,a=.5*r,o=w[e],s=n>(o?a:i);w[e]=s,s!==o&&(s?t.info("["+e+"] switching from throughput to buffer occupancy ABR rule (buffer: "+n.toFixed(3)+")."):t.info("["+e+"] switching from buffer occupancy to throughput ABR rule (buffer: "+n.toFixed(3)+")."))}(n,r))}function j(e,t){try{return i[t]=i[t]||{},i[t].hasOwnProperty(e)||(i[t][e]=0),function(e,t,n){if(t!==a.a.VIDEO||!P.get().streaming.abr.limitBitrateByPortal||!s[n]||!s[n][t])return e;g||z();var r=s[n][t].getStreamInfo(),i=_.getAdaptationForType(r.index,t,r).Representation,o=e;if(y>0&&E>0){for(;o>0&&i[o]&&y=1||a<0)return e;return Math.min(e,Math.round(r*a))}(function(e,t){var n=i[t][e],r=n;if(!s[t]||!s[t][e])return r;var a=Y(e,t);void 0!==a&&(r=Math.max(n,a));var o=function(e,t){try{var n=P.get().streaming.abr.maxBitrate[e];return n>-1?V(s[t][e].getMediaInfo(),n,t):void 0}catch(e){return}}(e,t);void 0!==o&&(r=Math.min(r,o));return r}(e,t),e,t),e,t)}catch(e){return}}function Y(e,t){try{return function(e,t){try{var n=P.get().streaming.abr.minBitrate[e];if(n>-1){var r=s[t][e].getMediaInfo(),i=W(r),a=V(r,n,t);return i[a]&&a1&&void 0!==arguments[1]?arguments[1]:null;try{if(t||(t=r.getActiveStreamInfo().id),e&&s[t]&&s[t][e])if(t)return o[t]=o[t]||{},o[t].hasOwnProperty(e)||(o[t][e]=0),o[t][e];return 0}catch(e){return 0}}function K(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;if(t&&t.id&&e){var i=t.id,a=H(e,i);Object(M.a)(n);var o=j(e,i);n!==a&&n>=0&&n<=o&&q(e,a,n,o,r,i)}}function q(e,n,r,i,a,u){if(e&&s[u]&&s[u][e]){var l=s[u][e].getStreamInfo(),f=l&&l.manifestInfo&&l.manifestInfo.isDynamic,d=O.getCurrentBufferLevel(e);t.info("Stream ID: "+u+" ["+e+"] switch from "+n+" to "+r+"/"+i+" (buffer: "+d+") "+(a?JSON.stringify(a):".")),o[u]=o[u]||{},o[u][e]=r;var h=function(e,t,n){if(t&&s&&s[e]&&s[e][t]){var r=W(s[e][t].getMediaInfo());return r[n]?r[n]:null}return null}(u,e,r);x.trigger(c.a.QUALITY_CHANGE_REQUESTED,{oldQuality:n,newQuality:r,reason:a,streamInfo:l,bitrateInfo:h,maxIdx:i,mediaType:e},{streamId:l.id,mediaType:e});var p=N.getAverageThroughput(e,f);isNaN(p)||A.setSavedBitrateSettings(e,p)}}function V(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=e&&e.type?s[n][e.type].getRepresentationInfo():null;if(P.get().streaming.abr.useDeadTimeLatency&&r&&i&&i.fragmentDuration){r/=1e3;var a=i.fragmentDuration;if(r>a)return 0;var o=r/a;t*=1-o}for(var u=W(e),l=u.length-1;l>=0;l--){var c=u[l];if(1e3*t>=c.bitrate)return l}return 0}function W(e){var t=[];if(!e||!e.bitrateList)return t;for(var n,r=e.bitrateList,i=e.type,a=0,o=r.length;a1&&void 0!==arguments[1]?arguments[1]:null;if(t||(t=r.getActiveStreamInfo().id),e&&s&&s[t]&&s[t][e]){var n=j(e,t),i=W(s[t][e].getMediaInfo());return i[n]?i[n]:null}return null},getMinAllowedIndexFor:Y,getMaxAllowedIndexFor:j,getInitialBitrateFor:function(e,t){if(function(){if(!A||!A.hasOwnProperty("getSavedBitrateSettings"))throw new Error(a.a.MISSING_CONFIG_ERROR)}(),e===a.a.TEXT)return NaN;var n=A.getSavedBitrateSettings(e),r=P.get().streaming.abr.initialBitrate[e],i=P.get().streaming.abr.initialRepresentationRatio[e];if(-1===r)if(i>-1){var o=s[t][e].getStreamInfo(),u=_.getAdaptationForType(o.index,e,o).Representation;if(Array.isArray(u))r=u[Math.max(Math.round(u.length*i)-1,0)].bandwidth/1e3;else r=0}else r=isNaN(n)?e===a.a.VIDEO?1e3:100:n;return r},getQualityFor:H,getAbandonmentStateFor:function(e,t){return f[e]&&f[e][t]?f[e][t].state:null},setPlaybackQuality:K,checkPlaybackQuality:function(t,r){try{if(!(t&&s&&s[r]&&s[r][t]))return!1;if(R){var i=T.getPlaybackQuality();i&&R.push(r,b,i)}if(!P.get().streaming.abr.autoSwitchBitrate[t])return!1;var a=H(t,r),o=Vt(L).create({abrController:e,switchHistory:I[r][t],droppedFramesHistory:R,streamProcessor:s[r][t],currentValue:a,useBufferOccupancyABR:w[t],useL2AABR:C[t],useLoLPABR:D[t],videoModel:T}),l=Y(t,r),c=j(t,r),d=n.getMaxQuality(o),h=d.quality;return void 0!==l&&(h>ht.NO_CHANGE?h:a)c&&(h=c),I[r][t].push({oldValue:a,newValue:h}),h>ht.NO_CHANGE&&h!==a&&(f[r][t].state===u.ALLOW_LOAD||h>a)&&(q(t,a,h,c,d.reason,r),!0)}catch(e){return!1}},setElementSize:z,setWindowResizeEventCalled:function(e){g=e},registerStreamType:function(e,t){var n=t.getStreamInfo().id;s[n]||(s[n]={}),I[n]||(I[n]={}),f[n]||(f[n]={}),I[n][e]=zt(L).create(),s[n][e]=t,f[n][e]={},f[n][e].state=u.ALLOW_LOAD,function(e){var t=P.get().streaming.abr.ABRStrategy;t===a.a.ABR_STRATEGY_L2A?(w[e]=!1,D[e]=!1,C[e]=!0):t===a.a.ABR_STRATEGY_LoLP?(w[e]=!1,D[e]=!0,C[e]=!1):t===a.a.ABR_STRATEGY_BOLA?(w[e]=!0,D[e]=!1,C[e]=!1):t===a.a.ABR_STRATEGY_THROUGHPUT?(w[e]=!1,D[e]=!1,C[e]=!1):t===a.a.ABR_STRATEGY_DYNAMIC&&(w[e]=!(!w||!w[e])&&w[e],D[e]=!1,C[e]=!1)}(e),e===a.a.VIDEO&&z()},unRegisterStreamType:function(e,t){try{s[e]&&s[e][t]&&delete s[e][t],I[e]&&I[e][t]&&delete I[e][t],f[e]&&f[e][t]&&delete f[e][t]}catch(e){}},setConfig:function(e){e&&(e.streamController&&(r=e.streamController),e.domStorage&&(A=e.domStorage),e.mediaPlayerModel&&(S=e.mediaPlayerModel),e.dashMetrics&&(O=e.dashMetrics),e.adapter&&(_=e.adapter),e.videoModel&&(T=e.videoModel),e.settings&&(P=e.settings))},reset:function(){U(),x.off(c.a.LOADING_PROGRESS,B,e),x.off(h.a.QUALITY_CHANGE_RENDERED,k,e),x.off(h.a.METRIC_ADDED,G,e),n&&n.reset()}},t=F.getLogger(e),U(),e}Jt.__dashjs_factory_name="AbrController";var en=f.a.getSingletonFactory(Jt);en.QUALITY_DEFAULT=0,f.a.updateSingletonFactory(Jt.__dashjs_factory_name,en);var tn=en,nn=n(41),rn=new Map([[a.a.VIDEO_ELEMENT_READY_STATES.HAVE_METADATA,"loadedmetadata"],[a.a.VIDEO_ELEMENT_READY_STATES.HAVE_CURRENT_DATA,"loadeddata"],[a.a.VIDEO_ELEMENT_READY_STATES.HAVE_FUTURE_DATA,"canplay"],[a.a.VIDEO_ELEMENT_READY_STATES.HAVE_ENOUGH_DATA,"canplaythrough"]]);function an(){var e,t,n,r,i=this.context,o=Object(l.a)(i).getInstance(),s=[];function u(){n&&(n.playbackRate=1,n.removeEventListener("canplay",u))}function f(){return s.length>0}function h(){if(n&&f()&&0===n.playbackRate){var e=document.createEvent("Event");e.initEvent("waiting",!0,!1),n.dispatchEvent(e)}}function p(e,t){n&&n.addEventListener(e,t)}function g(e,t){n&&n.removeEventListener(e,t)}function m(){return n?n.readyState:NaN}function y(){return n?n.buffered:null}function E(e,t,r,i,a){if(n)for(var o=0;o=e?t():function(e,t){p(e,(function n(){g(e,n),t(e)}))}(rn.get(e),t)}return e={initialize:function(){o.on(c.a.PLAYBACK_PLAYING,h,this)},setCurrentTime:function(e,t){_(a.a.VIDEO_ELEMENT_READY_STATES.HAVE_METADATA,(function(){if(n){if(n.currentTime===e)return;try{e=t?function(e){var t=y(),n=e,r=9999999999;if(t)for(var i=0;i=a&&e<=o)return e;s1&&void 0!==arguments[1]&&arguments[1];n&&(!t&&n.readyState<=2&&e>0?n.addEventListener("canplay",u):n.playbackRate=e)},getPlayedRanges:function(){return n?n.played:null},getEnded:function(){return n?n.ended:null},setStallState:function(e,t){!function(e,t){t?function(e){if(null===e||!n||n.seeking||-1!==s.indexOf(e))return;s.push(e)}(e):function(e){var t=s.indexOf(e);if(null===e)return;-1!==t&&s.splice(t,1)}(e)}(e,t)},getElement:function(){return n},setElement:function(e){if(!(null==e||e&&/^(VIDEO|AUDIO)$/i.test(e.nodeName)))throw"element is not video or audio DOM type!";(n=e)&&(n.preload="auto")},setSource:function(e){n&&(e?n.src=e:(n.removeAttribute("src"),n.load()))},getSource:function(){return n?n.src:null},getTTMLRenderingDiv:function(){return r},setTTMLRenderingDiv:function(e){(r=e).style.position="absolute",r.style.display="flex",r.style.overflow="hidden",r.style.pointerEvents="none",r.style.top=0,r.style.left=0},getPlaybackQuality:function(){if(!n)return null;var e="webkitDroppedFrameCount"in n&&"webkitDecodedFrameCount"in n,t=null;return"getVideoPlaybackQuality"in n?t=n.getVideoPlaybackQuality():e&&(t={droppedVideoFrames:n.webkitDroppedFrameCount,totalVideoFrames:n.webkitDroppedFrameCount+n.webkitDecodedFrameCount,creationTime:new Date}),t},addEventListener:p,removeEventListener:g,getReadyState:m,getBufferRange:y,getClientWidth:function(){return n?n.clientWidth:NaN},getClientHeight:function(){return n?n.clientHeight:NaN},getTextTracks:function(){return n?n.textTracks:[]},getTextTrack:E,addTextTrack:function(e,t,r,i,a){if(!n)return null;var o=E(e,t,r,i,a);return o||((o=n.addTextTrack(e,t,r)).isEmbedded=a,o.isTTML=i),o},appendChild:function(e){n&&(n.appendChild(e),void 0!==e.isTTML&&(n.textTracks[n.textTracks.length-1].isTTML=e.isTTML,n.textTracks[n.textTracks.length-1].isEmbedded=e.isEmbedded))},removeChild:function(e){n&&n.removeChild(e)},getVideoWidth:function(){return n?n.videoWidth:NaN},getVideoHeight:function(){return n?n.videoHeight:NaN},getVideoRelativeOffsetTop:function(){var e=n.parentNode.host||n.parentNode;return e?n.getBoundingClientRect().top-e.getBoundingClientRect().top:NaN},getVideoRelativeOffsetLeft:function(){var e=n.parentNode.host||n.parentNode;return e?n.getBoundingClientRect().left-e.getBoundingClientRect().left:NaN},waitForReadyState:_,reset:function(){o.off(c.a.PLAYBACK_PLAYING,h,this)}},t=Object(d.a)(i).getInstance().getLogger(e),e}an.__dashjs_factory_name="VideoModel";var on=f.a.getSingletonFactory(an),sn=n(36),un=[{oldKey:"dashjs_vbitrate",newKey:"dashjs_video_bitrate"},{oldKey:"dashjs_abitrate",newKey:"dashjs_audio_bitrate"},{oldKey:"dashjs_vsettings",newKey:"dashjs_video_settings"},{oldKey:"dashjs_asettings",newKey:"dashjs_audio_settings"}];function ln(e){e=e||{};var t,n,r,i=this.context,o=e.settings;function s(e){if(void 0!==r)return r;r=!1;var t;try{"undefined"!=typeof window&&(t=window[e])}catch(e){return n.warn("DOMStorage access denied: "+e.message),r}if(!t||"localStorage"!==e&&"sessionStorage"!==e)return r;try{t.setItem("1","1"),t.removeItem("1"),r=!0}catch(e){n.warn("DOMStorage is supported, but cannot be used: "+e.message)}return r}function u(){return 6e5*Math.round((new Date).getTime()/6e5)}function l(e,t){return s(e)&&o.get().streaming[t+"CachingInfo"].enabled}function c(){if(!o)throw new Error(a.a.MISSING_CONFIG_ERROR)}return t={getSavedBitrateSettings:function(e){var t=NaN;if(c(),l("localStorage","lastBitrate")){var r="dashjs_?_bitrate".replace(/\?/,e);try{var i=JSON.parse(localStorage.getItem(r))||{},a=(new Date).getTime()-parseInt(i.timestamp,10)>=o.get().streaming.lastBitrateCachingInfo.ttl||!1,s=parseFloat(i.bitrate);isNaN(s)||a?a&&localStorage.removeItem(r):(t=s,n.debug("Last saved bitrate for "+e+" was "+s))}catch(e){return null}}return t},setSavedBitrateSettings:function(e,t){if(l("localStorage","lastBitrate")&&t){var r="dashjs_?_bitrate".replace(/\?/,e);try{localStorage.setItem(r,JSON.stringify({bitrate:t.toFixed(3),timestamp:u()}))}catch(e){n.error(e.message)}}},getSavedMediaSettings:function(e){var t=null;if(c(),l("localStorage","lastMediaSettings")){var n="dashjs_?_settings".replace(/\?/,e);try{var r=JSON.parse(localStorage.getItem(n))||{},i=(new Date).getTime()-parseInt(r.timestamp,10)>=o.get().streaming.lastMediaSettingsCachingInfo.ttl||!1;t=r.settings,i&&(localStorage.removeItem(n),t=null)}catch(e){return null}}return t},setSavedMediaSettings:function(e,t){if(l("localStorage","lastMediaSettings")){var r="dashjs_?_settings".replace(/\?/,e);try{localStorage.setItem(r,JSON.stringify({settings:t,timestamp:u()}))}catch(e){n.error(e.message)}}}},n=Object(d.a)(i).getInstance().getLogger(t),s("localStorage")&&un.forEach((function(e){var t=localStorage.getItem(e.oldKey);if(t){localStorage.removeItem(e.oldKey);try{localStorage.setItem(e.newKey,t)}catch(e){n.error(e.message)}}})),t}ln.__dashjs_factory_name="DOMStorage";var cn=f.a.getSingletonFactory(ln),fn=n(51),dn=n(27);function hn(){var e,t,n,r,i,a,o,s,u,l,c,f,d,h=this.context;function p(e,t,n){n({segments:e,representation:t,error:e?void 0:new y.a(u.SEGMENT_BASE_LOADER_ERROR_CODE,u.SEGMENT_BASE_LOADER_ERROR_MESSAGE)})}function g(e){if(e.url){var t=new Be.a;return t.setInfo(e),t}}return e={setConfig:function(s){s.baseURLController&&(d=s.baseURLController),s.dashMetrics&&(a=s.dashMetrics),s.mediaPlayerModel&&(o=s.mediaPlayerModel),s.errHandler&&(n=s.errHandler),s.boxParser&&(r=s.boxParser),s.debug&&(t=s.debug.getLogger(e)),s.requestModifier&&(i=s.requestModifier),s.errors&&(u=s.errors),s.urlUtils&&(f=s.urlUtils),s.constants&&(l=s.constants),s.dashConstants&&(c=s.dashConstants)},initialize:function(){s=Object(Ue.a)(h).create({errHandler:n,dashMetrics:a,mediaPlayerModel:o,requestModifier:i,boxParser:r,errors:u,urlUtils:f,constants:l,dashConstants:c})},loadInitialization:function(e,n){return new Promise((function(i){!function e(n,i,a,o){var u=null,l=n?d.resolve(n.path):null,c=o||{init:!0,url:l?l.url:void 0,range:{start:0,end:1500},searching:!1,bytesLoaded:0,bytesToLoad:1500,mediaType:i};t.debug("Start searching for initialization.");var f=g(c),h=function(t){if(c.bytesLoaded=c.range.end,!(u=r.findInitRange(t)))return c.range.end=c.bytesLoaded+c.bytesToLoad,e(n,i,a,c);n.range=u,a(n)};s.load({request:f,success:h,error:function(){a(n)}}),t.debug("Perform init search: "+c.url)}(e,n,i)}))},loadSegments:function(e,n,i){return new Promise((function(a){!function e(n,i,a,o,u,l){if(a&&(void 0===a.start||void 0===a.end)){var c=a?a.toString().split("-"):null;a=c?{start:parseFloat(c[0]),end:parseFloat(c[1])}:null}u=u||p;var f=null,h=null,m=!!a,y=n?d.resolve(n.path):null,E={init:!1,url:y?y.url:void 0,range:m?a:{start:0,end:1500},searching:!m,bytesLoaded:l?l.bytesLoaded:0,bytesToLoad:1500,mediaType:i},_=g(E),v=function(a){var s=E.bytesToLoad,l=a.byteLength;if(E.bytesLoaded=E.range.end-E.range.start,f=r.parse(a),(h=f.getBox("sidx"))&&h.isComplete){var c,d,p=h.references;if(null!=p&&p.length>0&&(c=1===p[0].reference_type),c){var g,m,y,_;t.debug("Initiate multiple SIDX load."),E.range.end=E.range.start+h.size;var v=[],T=0,S=(h.offset||E.range.start)+h.size,A=function(e){e?(v=v.concat(e),++T>=m&&(v.sort((function(e,t){return e.startTime-t.startTime<0?-1:0})),u(v,n,o))):u(null,n,o)};for(g=0,m=p.length;g16777215?(n.getUint32(r)!==e.tag&&(i=!1),a=4):e.tag>65535?(256*n.getUint16(r)+n.getUint8(r+2)!==e.tag&&(i=!1),a=3):e.tag>255?(n.getUint16(r)!==e.tag&&(i=!1),a=2):(n.getUint8(r)!==e.tag&&(i=!1),a=1),!i&&e.required&&!t)throw new Error("required tag not found");return i&&(r+=a),i}function a(e){var t=1,i=128,a=-1,o=0,s=n.getUint8(r),u=0;for(u=0;u<8;u+=1){if((s&i)===i){o=void 0===e?s&~i:s,a=u;break}i>>=1}for(u=0;u1&&a){var l=d(a,n);if(i[a.id]&&i[a.id][n])for(var f=0,h=u.length;f0))return u;s=r[0].mpd.manifest}var l=E(e,o),c=t.getAdaptationsForType(s,e?e.index:null,n);return u=f(s,l,e,c,n),n===a.TEXT&&(c=t.getAdaptationsForType(s,e?e.index:null,a.VIDEO),u=u.concat(f(s,l,e,c,n,!0))),u}function h(e){var n=p(e);return t.getRegularPeriods(n)}function p(e){var n=m(e);return t.getMpd(n)}function g(){r=[],i={}}function m(e){return e||(r.length>0?r[0].mpd.manifest:null)}function y(e){try{var n=E(e.streamInfo,r),i=t.getAdaptationsForPeriod(n);return e&&e.streamInfo&&void 0!==e.streamInfo.id&&i?i[e.index]:null}catch(e){return null}}function E(e,t){for(var n=t.length,r=0;r=0&&void 0!==s&&(n=t?"cea-608:"+t:"cea-608",r.embeddedCaptions=!0),n})),r.audioChannelConfiguration=t.getAudioChannelConfigurationForAdaptation(i).map((function(e){return e.value})),0===r.audioChannelConfiguration.length&&Array.isArray(i.Representation_asArray)&&i.Representation_asArray.length>0&&(r.audioChannelConfiguration=t.getAudioChannelConfigurationForRepresentation(i.Representation_asArray[0]).map((function(e){return e.value}))),r.roles=t.getRolesForAdaptation(i).map((function(e){return e.value})),r.codec=t.getCodec(i),r.mimeType=t.getMimeType(i),r.contentProtection=t.getContentProtectionData(i),r.bitrateList=t.getBitrateListForAdaptation(i),r.selectionPriority=t.getSelectionPriority(i),r.contentProtection){var a=r.contentProtection.map((function(e){return t.getKID(e)})).filter((function(e){return null!==e}));if(a.length){var o=a[0];r.contentProtection.forEach((function(e){e.keyId=o}))}}return r.isText=t.getIsText(i),r.supplementalProperties=t.getSupplementalProperties(i),r.isFragmented=t.getIsFragmented(i),r.isEmbedded=!1,r}function v(e,t,n){e.id=t,e.index=100+parseInt(t.substring(2,3)),e.type=a.TEXT,e.codec="cea-608-in-SEI",e.isEmbedded=!0,e.isFragmented=!1,e.lang=n,e.roles=["caption"]}function T(e){var n,r,i=new An;return i.id=e.id,i.index=e.index,i.start=e.start,i.duration=e.duration,i.manifestInfo=(n=e.mpd,(r=new bn).dvrWindowSize=n.timeShiftBufferDepth,r.loadedTime=n.manifest.loadedTime,r.availableFrom=n.availabilityStartTime,r.minBufferTime=n.manifest.minBufferTime,r.maxFragmentDuration=n.maxSegmentDuration,r.duration=t.getDuration(n.manifest),r.isDynamic=t.getIsDynamic(n.manifest),r.serviceDescriptions=t.getServiceDescriptions(n.manifest),r.protocol=n.manifest.protocol,r),i.isLast=1===e.mpd.manifest.Period_asArray.length||Math.abs(i.start+i.duration-i.manifestInfo.duration)<1,i}function S(){if(!a)throw new Error("setConfig function has to be called previously")}function A(e){return r.length>0?r[0].mpd.manifest.Period_asArray[e]:null}function b(e,t,n){var r,i,a,o,s;if(e)for(r=e.AdaptationSet_asArray,o=0;o0?e.segments[0].duration:NaN),n.MSETimeOffset=e.MSETimeOffset,n.mediaInfo=_(e.adaptation),n}return null},getStreamsInfo:function(e,t){var n=[],i=r;if(e&&(S(),i=h(e)),i.length>0){(!t||t>i.length)&&(t=i.length);for(var a=0;a0&&o&&(a=i?t.getAdaptationForId(i,r[0].mpd.manifest,o.index):t.getAdaptationForIndex(n?n.index:null,r[0].mpd.manifest,o.index)),a},getRealPeriodByIndex:function(e){return t.getRealPeriodForIndex(e,r[0].mpd.manifest)},getEssentialPropertiesForRepresentation:function(e){try{return t.getEssentialPropertiesForRepresentation(e)}catch(e){return[]}},getVoRepresentations:function(e){var n=y(e);return t.getRepresentationsForAdaptation(n)},getEventsFor:function(e,n){var i=[];if(r.length>0){var a=r[0].mpd.manifest;e instanceof An?i=t.getEventsForPeriod(E(e,r)):e instanceof Sn?i=t.getEventStreamForAdaptationSet(a,y(e)):e instanceof Tn&&(i=t.getEventStreamForRepresentation(a,n))}return i},getEvent:function(e,t,n,r){try{if(!e||!t||isNaN(n)||!r)return null;var i=e.scheme_id_uri,a=e.value;if(!t[i+"/"+a])return null;var o,s=new In.a,u=e.timescale||1,l=r.adaptation.period.start,c=t[i+"/"+a],f=isNaN(r.presentationTimeOffset)?isNaN(c.presentationTimeOffset)?0:c.presentationTimeOffset:r.presentationTimeOffset,d=e.presentation_time_delta/u;o=0===e.version?l+n-f+d:l-f+d;var h=e.event_duration,p=e.id,g=e.message_data;return s.eventStream=c,s.eventStream.value=a,s.eventStream.timescale=u,s.duration=h,s.id=p,s.calculatedPresentationTime=o,s.messageData=g,s.presentationTimeDelta=d,s}catch(e){return null}},getMpd:p,setConfig:function(e){e&&(e.constants&&(a=e.constants),e.cea608parser&&(s=e.cea608parser),e.errHandler&&t.setConfig({errHandler:e.errHandler}),e.BASE64&&t.setConfig({BASE64:e.BASE64}))},updatePeriods:function(e){if(!e)return null;S(),r=h(e)},getIsTextTrack:function(e){return t.getIsText(e)},getUTCTimingSources:function(){var e=m();return t.getUTCTimingSources(e)},getSuggestedPresentationDelay:function(){var e=r.length>0?r[0].mpd:null;return t.getSuggestedPresentationDelay(e)},getAvailabilityStartTime:function(e){var n=p(e);return t.getAvailabilityStartTime(n)},getIsTypeOf:function(e,n){return t.getIsTypeOf(e,n)},getIsDynamic:function(e){var n=m(e);return t.getIsDynamic(n)},getDuration:function(e){var n=m(e);return t.getDuration(n)},getRegularPeriods:h,getLocation:function(e){return t.getLocation(e)},getPatchLocation:function(e){var n=t.getPatchLocation(e),r=t.getPublishTime(e);if(!n||!r)return null;if(n.hasOwnProperty("ttl")&&r){var i=1e3*parseFloat(n.ttl);if(r.getTime()+i<=(new Date).getTime())return null}return n.__text},getManifestUpdatePeriod:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t.getManifestUpdatePeriod(e,n)},getPublishTime:function(e){return t.getPublishTime(e)},getIsDVB:function(e){return t.hasProfile(e,"urn:dvb:dash:profile:dvb-dash:2014")},getIsPatch:function(e){return n.getIsPatch(e)},getBaseURLsFromElement:function(e){return t.getBaseURLsFromElement(e)},getRepresentationSortFunction:function(){return t.getRepresentationSortFunction()},getCodec:function(e,n,r){return t.getCodec(e,n,r)},getPeriodById:function(e){if(!e||0===r.length)return null;var t=r.filter((function(t){return t.id===e}));return t&&t.length>0?t[0]:null},setCurrentMediaInfo:function(e,t,n){i[e]=i[e]||{},i[e][t]=i[e][t]||{},i[e][t]=n},isPatchValid:function(e,r){var i=t.getId(e),a=n.getMpdId(r),o=t.getPublishTime(e),s=n.getPublishTime(r),u=n.getOriginalPublishTime(r);return!!(i&&a&&i==a&&o&&u&&o.getTime()==u.getTime()&&s&&o.getTime()1?i[r]=u:1==u.length?i[r]=u[0]:delete i[r+"_asArray"]}"add"!==t.action&&"replace"!==t.action||Object.keys(t.value).forEach((function(e){var n=t.value[e],a=i[e+"_asArray"]||[];if(0===a.length&&i[e]&&a.push(i[e]),0===a.length)a=n;else{var u=a.length;u=e==r&&-1!=o?o+(s?0:1)+("replace"==t.action?-1:0):s?0:a.length,a.splice.apply(a,[u,0].concat(n))}i[e+"_asArray"]=a,i[e]=1==a.length?a[0]:a}))}}}))},areMediaInfosEqual:c,reset:g},t=Object(Rn.a)(u).getInstance(),n=Mn(u).getInstance(),g(),e}Pn.__dashjs_factory_name="DashAdapter";var Ln=f.a.getSingletonFactory(Pn);function Fn(e,t){for(var n=0;nr.get().streaming.metrics.maxListDepth&&i[t].shift())}function m(e,t,n){g(e,t,n),h(e,t,n)}return t={clearCurrentMetricsForType:function(e){delete n[e],f(e)},clearAllCurrentMetrics:function(){n={},s()},getMetricsFor:p,addHttpRequest:function e(t,n,r,i,a,o,s,l,c,f,d,h,p,g,y){var E=new v.a;o&&o!==i&&(e(t,null,r,i,a,null,null,l,c,null,null,null,p,null,null),E.actualurl=o),E.tcpid=n,E.type=r,E.url=i,E.range=l,E.trequest=c,E.tresponse=f,E.responsecode=h,E._tfinish=d,E._stream=t,E._mediaduration=p,E._quality=a,E._responseHeaders=g,E._serviceLocation=s,y?y.forEach((function(e){!function(e,t,n,r,i){var a=new v.b;a.s=t,a.d=n,a.b=r,a.t=i,e.trace.push(a),e.interval||(e.interval=0),e.interval+=n}(E,e.s,e.d,e.b,e.t)})):(delete E.interval,delete E.trace),m(t,u.HTTP_REQUEST,E)},addRepresentationSwitch:function(e,t,n,r,i){var a=new Bn;a.t=t,a.mt=n,a.to=r,i?a.lto=i:delete a.lto,m(e,u.TRACK_SWITCH,a)},addBufferLevel:function(e,t,n){var r=new kn;r.t=t,r.level=n,m(e,u.BUFFER_LEVEL,r)},addBufferState:function(e,t,n){var r=new Gn;r.target=n,r.state=t,m(e,u.BUFFER_STATE,r)},addDVRInfo:function(e,t,n,r){var i=new jn;i.time=t,i.range=r,i.manifestInfo=n,m(e,u.DVR_INFO,i)},addDroppedFrames:function(e,t){var n=new Yn,r=p(e).DroppedFrames;t&&(n.time=t.creationTime,n.droppedFrames=t.droppedVideoFrames,r.length>0&&r[r.length-1]==n||m(e,u.DROPPED_FRAMES,n))},addSchedulingInfo:function(e,t,n,r,i,a,o,s,l){var c=new Wn;c.mediaType=e,c.t=t,c.type=n,c.startTime=r,c.availabilityStartTime=i,c.duration=a,c.quality=o,c.range=s,c.state=l,m(e,u.SCHEDULING_INFO,c)},addRequestsQueue:function(e,t,n){var r=new zn;r.loadingRequests=t,r.executedRequests=n,p(e).RequestsQueue=r,h(e,u.REQUESTS_QUEUE,r)},addManifestUpdate:function(e,t,n,r,i,o,s,l,c,f){var d=new Kn;d.mediaType=e,d.type=t,d.requestTime=n,d.fetchTime=r,d.availabilityStartTime=i,d.presentationStartTime=o,d.clientTimeOffset=s,d.currentTime=l,d.buffered=c,d.latency=f,g(a.a.STREAM,u.MANIFEST_UPDATE,d),h(e,u.MANIFEST_UPDATE,d)},updateManifestUpdateInfo:function(e,t){if(e){for(var n in t)e[n]=t[n];d(e.mediaType,u.MANIFEST_UPDATE,e)}},addManifestUpdateStreamInfo:function(e,t,n,r,i){if(e){var a=new qn;a.id=t,a.index=n,a.start=r,a.duration=i,e.streamInfo.push(a),d(e.mediaType,u.MANIFEST_UPDATE_STREAM_INFO,e)}},addManifestUpdateRepresentationInfo:function(e,t,n,r,i,a,o,s){if(e&&e.representationInfo){var l=new Vn;l.id=t,l.index=n,l.streamIndex=r,l.mediaType=i,l.startNumber=o,l.fragmentInfoType=s,l.presentationTimeOffset=a,e.representationInfo.push(l),d(e.mediaType,u.MANIFEST_UPDATE_TRACK_INFO,e)}},addPlayList:function(e){e.trace&&Array.isArray(e.trace)?e.trace.forEach((function(e){e.hasOwnProperty("subreplevel")&&!e.subreplevel&&delete e.subreplevel})):delete e.trace,m(a.a.STREAM,u.PLAY_LIST,e)},addDVBErrors:function(e){m(a.a.STREAM,u.DVB_ERRORS,e)}},n={},t}Xn.__dashjs_factory_name="MetricsModel";var Qn=f.a.getSingletonFactory(Xn),$n=n(14);function Zn(e){e=e||{};var t,n,r,i,o=this.context,s=e.metricsModel;function l(e){var t=s.getMetricsFor(e,!0);if(!t)return null;var n,r=t.HttpList,i=null;if(!r||r.length<=0)return null;for(n=r.length-1;n>=0;){if(r[n].responsecode){i=r[n];break}n--}return i}function c(e){var t=s.getMetricsFor(e,!0);return t&&t.HttpList?t.HttpList:[]}function f(e,t){if(!e)return null;var n=e[t];return n&&0!==n.length?n[n.length-1]:null}return t={getCurrentRepresentationSwitch:function(e){return f(s.getMetricsFor(e,!0),u.TRACK_SWITCH)},getCurrentBufferState:function(e){return f(s.getMetricsFor(e,!0),u.BUFFER_STATE)},getCurrentBufferLevel:function(e){var t=f(s.getMetricsFor(e,!0),u.BUFFER_LEVEL);return t?xn.round10(t.level/1e3,-3):0},getCurrentHttpRequest:l,getHttpRequests:c,getCurrentDroppedFrames:function(){return f(s.getMetricsFor(a.a.VIDEO,!0),u.DROPPED_FRAMES)},getCurrentSchedulingInfo:function(e){return f(s.getMetricsFor(e,!0),u.SCHEDULING_INFO)},getCurrentDVRInfo:function(e){return f(e?s.getMetricsFor(e,!0):s.getMetricsFor(a.a.VIDEO,!0)||s.getMetricsFor(a.a.AUDIO,!0),u.DVR_INFO)},getCurrentManifestUpdate:function(){return f(s.getMetricsFor(a.a.STREAM),u.MANIFEST_UPDATE)},getLatestFragmentRequestHeaderValueByID:function(e,t){if(!t)return null;var n={},r=l(e);r&&(n=$n.a.parseHttpHeaders(r._responseHeaders));var i=n[t.toLowerCase()];return void 0===i?null:i},getLatestMPDRequestHeaderValueByID:function(e){if(!e)return null;var t,n,r,i={};for(r=(t=c(a.a.STREAM)).length-1;r>=0;r--)if((n=t[r]).type===v.a.MPD_TYPE){i=$n.a.parseHttpHeaders(n._responseHeaders);break}var o=i[e.toLowerCase()];return void 0===o?null:o},addRepresentationSwitch:function(e,t,n,r,i){s.addRepresentationSwitch(e,t,n,r,i)},addDVRInfo:function(e,t,n,r){s.addDVRInfo(e,t,n,r)},updateManifestUpdateInfo:function(e){var t=this.getCurrentManifestUpdate();s.updateManifestUpdateInfo(t,e)},addManifestUpdateStreamInfo:function(e){if(e){var t=this.getCurrentManifestUpdate();s.addManifestUpdateStreamInfo(t,e.id,e.index,e.start,e.duration)}},addManifestUpdateRepresentationInfo:function(e,t){if(e){var n=this.getCurrentManifestUpdate();s.addManifestUpdateRepresentationInfo(n,e.id,e.index,e.streamIndex,t,e.presentationTimeOffset,e.startNumber,e.fragmentInfoType)}},addManifestUpdate:function(e){s.addManifestUpdate(a.a.STREAM,e.type,e.requestStartDate,e.requestEndDate)},addHttpRequest:function(e,t,n,r,i){s.addHttpRequest(e.mediaType,null,e.type,e.url,e.quality,t,e.serviceLocation||null,e.range||null,e.requestStartDate,e.firstByteDate,e.requestEndDate,n,e.duration,r,i)},addSchedulingInfo:function(e,t){s.addSchedulingInfo(e.mediaType,new Date,e.type,e.startTime,e.availabilityStartTime,e.duration,e.quality,e.range,t)},addRequestsQueue:function(e,t,n){s.addRequestsQueue(e,t,n)},addBufferLevel:function(e,t,n){s.addBufferLevel(e,t,n)},addBufferState:function(e,t,n){s.addBufferState(e,t,n)},addDroppedFrames:function(e){s.addDroppedFrames(a.a.VIDEO,e)},addPlayList:function(){i&&(s.addPlayList(i),i=null)},addDVBErrors:function(e){s.addDVBErrors(e)},createPlaylistMetrics:function(e,t){(i=new B).start=new Date,i.mstart=e,i.starttype=t},createPlaylistTraceMetrics:function(e,t,i){!0===n&&(n=!1,(r=new k).representationid=e,r.start=new Date,r.mstart=t,r.playbackspeed=null!==i?i.toString():null)},updatePlayListTraceMetrics:function(e){if(r)for(var t in r)r[t]=e[t]},pushPlayListTraceMetrics:function(e,t){if(!1===n&&i&&r&&r.start){var a=r.start,o=e.getTime()-a.getTime();r.duration=o,r.stopreason=t,i.trace.push(r),n=!0}},clearAllCurrentMetrics:function(){s.clearAllCurrentMetrics()}},s=s||Qn(o).getInstance({settings:e.settings}),n=!0,r=null,i=null,t}Zn.__dashjs_factory_name="DashMetrics";var Jn=f.a.getSingletonFactory(Zn);function er(){var e,t,n,r,i=this.context,s=Object(l.a)(i).getInstance(),u=Object(_.a)(i).getInstance();function f(e){r=e}function d(e,t,n,r){var i,a=t.adaptation.period.mpd,o=a.availabilityStartTime;if(r)i=n&&a.timeShiftBufferDepth!==Number.POSITIVE_INFINITY?new Date(o.getTime()+1e3*(e+a.timeShiftBufferDepth)):a.availabilityEndTime;else if(n){var s=t.availabilityTimeOffset;i=new Date(o.getTime()+1e3*(e-s))}else i=o;return i}function p(e,t){return(e.getTime()-t.mpd.availabilityStartTime.getTime()+1e3*r)/1e3}function g(e,t){return e+(t.adaptation.period.start-t.presentationTimeOffset)}function m(e){var n={start:NaN,end:NaN},r=e[0].getAdapter().getRegularPeriods()[0],i=p(new Date,r);if(!e||0===e.length)return{range:n,now:i};e.forEach((function(e){var r=e.getAdapter(),s=r.getMediaInfoForType(e.getStreamInfo(),a.a.VIDEO)||r.getMediaInfoForType(e.getStreamInfo(),a.a.AUDIO),u=r.getVoRepresentations(s)[0],l={start:NaN,end:NaN};if(u)if(u.segmentInfoType===o.a.SEGMENT_TIMELINE)l=function(e){var n,r,i,a,o=e.adaptation.period.mpd.manifest.Period_asArray[e.adaptation.period.index].AdaptationSet_asArray[e.adaptation.index],s=t.getRepresentationFor(e.index,o),u=s.SegmentTemplate.SegmentTimeline,l=s.SegmentTemplate.timescale,c=u.S_asArray,f={start:0,end:0},d=0;for(f.start=g(c[0].t/l,e),i=0,a=c.length;il.start)&&(n.start=l.start),!isNaN(l.end)&&(isNaN(n.end)||n.end2&&void 0!==arguments[2]&&arguments[2];try{for(var r=0,i=!1,a=NaN;!i&&r=t)?(a=t,i=!0):!n&&o.start>t&&(isNaN(a)||o.starta)&&(a=o.start+o.duration),r+=1}return a}catch(e){return t}}function v(e){void 0===e.offset||isNaN(e.offset)||f(e.offset/1e3)}function T(){r=0,n=0}function S(){s.off(c.a.UPDATE_TIME_SYNC_OFFSET,v,this),T()}return e={initialize:function(){T(),s.on(c.a.UPDATE_TIME_SYNC_OFFSET,v,this)},getClientTimeOffset:function(){return r},setClientTimeOffset:f,getClientReferenceTime:function(){return Date.now()-1e3*n+1e3*r},calcAvailabilityStartTimeFromPresentationTime:function(e,t,n){return d(e,t,n)},calcAvailabilityEndTimeFromPresentationTime:function(e,t,n){return d(e,t,n,!0)},calcPresentationTimeFromWallTime:p,calcPresentationTimeFromMediaTime:g,calcPeriodRelativeTimeFromMpdRelativeTime:function(e,t){return t-e.adaptation.period.start},calcMediaTimeFromPresentationTime:function(e,t){return e-t.adaptation.period.start+t.presentationTimeOffset},calcWallTimeForSegment:function(e,t){var n,r,i;return t&&(n=e.representation.adaptation.period.mpd.suggestedPresentationDelay,r=e.presentationStartTime+n,i=new Date(e.availabilityStartTime.getTime()+1e3*r)),i},calcTimeShiftBufferWindow:function(e,t){if(!t)return function(e){var t={start:NaN,end:NaN},n=0,r=NaN;return e.forEach((function(e){var t=e.getStreamInfo();n+=t.duration,(isNaN(r)||t.start0&&(g.spans.push({name:m,line:T,row:c}),T="");var N="style_cea608_"+R.foreground+"_"+R.background;R.underline&&(N+="_underline"),R.italics&&(N+="_italics"),E.hasOwnProperty(N)||(E[N]=JSON.parse(JSON.stringify(R))),S=R,m=N}T+=I.uchar}T.trim().length>0&&g.spans.push({name:m,line:T,row:c}),h=!0,p=A}else h=!1,p=-1,d&&(d.p.push(g),g={start:s,end:u,spans:[]},d.y2=c,d.name="region_"+d.x+"_"+d.y1+"_"+d.y2,!1===y.hasOwnProperty(d.name)?(_.push(d),y[d.name]=d):y[d.name].p.contat(d.p),d=null)}d&&(d.p.push(g),d.y2=c+1,d.name="region_"+d.x+"_"+d.y1+"_"+d.y2,!1===y.hasOwnProperty(d.name)?(_.push(d),y[d.name]=d):y[d.name].p.contat(d.p),d=null);var w=[];for(c=0;c<_.length;++c){var C=_[c],D="sub_cea608_"+e++,O=document.createElement("div");O.id=D;var M=n(C);O.style.cssText="position: absolute; margin: 0; display: flex; box-sizing: border-box; pointer-events: none;"+M;var P=document.createElement("div");P.className="paragraph bodyStyle",P.style.cssText=i(r);var L=document.createElement("div");L.className="cueUniWrapper",L.style.cssText="unicode-bidi: normal; direction: ltr;";for(var F=0;F0){if(0!==f&&U!=B.row){var k=document.createElement("br");k.className="lineBreak",L.appendChild(k)}var G=!1;U===B.row&&(G=!0),U=B.row;var j=E[B.name],Y=document.createElement("span");Y.className="spanPadding "+B.name+" customSpanColor",Y.style.cssText=i(r,j),0!==f&&G?f===x.spans.length-1?Y.textContent=o(B.line):Y.textContent=B.line:x.spans.length>1&&f1&&e.isEmbedded?t=e.id&&e.id===a.a.CC1:1===_.length?e.id&&"string"==typeof e.id&&"CC"===e.id.substring(0,2)&&(t=!0):0===_.length&&(t=e.index===s[0].index);return t}(e),t.isFragmented=e.isFragmented,t.isEmbedded=!!e.isEmbedded,t.isTTML=function(e){return e.codec&&e.codec.search(a.a.STPP)>=0||e.mimeType&&e.mimeType.search(a.a.TTML)>=0}(e),t.kind=function(e,t){var n=e.roles&&e.roles.length>0?t[e.roles[0]]:t.caption;return n=n===t.caption||n===t.subtitle?n:t.caption}(e,{subtitle:"subtitles",caption:"captions"}),C.addTextTrack(t)}function k(e){var t=e.chunk;t.mediaInfo.embeddedCaptions&&j(t.bytes,t)}function G(e){m=e}function j(e,s){var l=s.mediaInfo,c=l.type,d=l.mimeType,p=l.codec||d;p?-1!==l.codec.indexOf("application/mp4")?function(e,i,s){var l,c;if("InitializationSegment"===i.segmentType)f=!0,h=r.getMediaTimescaleFromMoov(e);else{if(!f)return;c=r.getSamplesInfo(e),(l=c.sampleList).length>0&&(g=l[0].cts-i.start*h),s.search(a.a.STPP)>=0?function(e,r,i){var s,l;for(o=null!==o?o:K(i),s=0;s0&&C.addCaptions(m,0,s)}(e,l)}}(e,s,p):c===a.a.VIDEO?function(e,t){var a,o;if(t.segmentType===v.a.INIT_SEGMENT_TYPE)0===T&&(T=r.getMediaTimescaleFromMoov(e));else if(t.segmentType===v.a.MEDIA_SEGMENT_TYPE){if(0===T)return void n.warn("CEA-608: No timescale for embeddedTextTrack yet");var s=(o=r.getSamplesInfo(e)).lastSequenceNumber;if(A[0]||A[1]||function(){for(var e,t=0;t<_.length;t++){if(-1===(e=C.getTrackIdxForId(_[t].id)))return void n.warn("CEA-608: data before track is ready.");var r=Y(e);A[t]=new i.a.Cea608Parser(t+1,{newCue:r},null)}}(),T){if(null!==S&&s!==S+o.numSequences)for(a=0;a0){o.cts!==u?l=0:l+=1;var h=H();n.fields[d].push([o.cts+h*T,f[d],l]),u=o.cts}return n.fields.forEach((function(e){e.sort((function(e,t){return e[0]===t[0]?e[2]-t[2]:e[0]-t[0]}))})),n}(e,o.sampleList),l=0;l=0?t=D:(e.search(a.a.TTML)>=0||e.search(a.a.STPP)>=0)&&(t=O),t}function q(e){_.forEach((function(t){var n=C.getTrackIdxForId(t.id);n>=0&&C.deleteCuesFromTrackIdx(n,e.from,e.to)}))}return t={initialize:function(){F||(_=[],m=null,T=0,A=[],S=null,F=!0,b=pr(P).getInstance(),L.on(c.a.VIDEO_CHUNK_RECEIVED,k,t),L.on(c.a.BUFFER_CLEARED,q,t))},addMediaInfos:function(e,n,r){if(s=s.concat(n),e===a.a.TEXT&&n[0].isFragmented&&!n[0].isEmbedded){u=r,t.buffered=Object(dr.a)(P).create(),p=N.getTracksFor(a.a.TEXT,M.id).filter((function(e){return e.isFragmented}));for(var i=N.getCurrentTrackFor(a.a.TEXT,M.id),o=0;on/r?o=(s=t)/r*n:s=(o=e)/n*r;var u,l,c=0,f=0;return o/s>i?(f=s,c=s*i):(c=o,f=o/i),u=(e-c)/2,l=(t-f)/2,a?{x:u+.1*c,y:l+.1*f,w:.8*c,h:.8*f}:{x:u,y:l,w:c,h:f}}function w(e,t){var n=I.getClientWidth(),r=I.getClientHeight(),i=I.getVideoWidth(),a=I.getVideoHeight(),o=I.getVideoRelativeOffsetTop(),s=I.getVideoRelativeOffsetLeft();if(0!==i&&0!==a){var l=i/a,c=!1;e.isFromCEA608&&(l=3.5/3,c=!0);var d=N.call(this,n,r,i,a,l,c),y=d.w,v=d.h,S=d.x,A=d.y;if(y!=p||v!=g||S!=u||A!=f||t){if(u=S+s,f=A+o,p=y,g=v,m){var R=m.style;R&&(R.left=u+"px",R.top=f+"px",R.width=p+"px",R.height=g+"px",R.zIndex=E&&document[E]||_?T:null,b.trigger(h.a.CAPTION_CONTAINER_RESIZE))}var w=e.activeCues;if(w)for(var C=w.length,D=0;D=0&&i[e]?I.getTextTrack(i[e].kind,i[e].id,i[e].lang,i[e].isTTML,i[e].isEmbedded):null}function P(e){var t=this;if(e!==s){var n=M(s=e);L.call(this,n),y&&(clearInterval(y),y=null),n&&"html"===n.renderingType&&(w.call(this,n,!0),window.ResizeObserver?(S=new window.ResizeObserver((function(){w.call(t,n,!0)}))).observe(I.getElement()):y=setInterval(w.bind(this,n),500))}}function L(e){G.call(this),e&&"html"===e.renderingType?B.call(this):k.call(this)}function F(e,t){if(!e.cues)return!1;for(var n=0;n=t)&&(isNaN(n)||e.endTime<=n)}function U(e,t,n){if(e.cues)for(var r=e.cues,i=r.length-1;i>=0;i--)x(r[i],t,n)&&(r[i].onexit&&r[i].onexit(),e.removeCue(r[i]))}function B(){var e=document.getElementById("native-cue-style");if(!e){(e=document.createElement("style")).id="native-cue-style",document.head.appendChild(e);var t=e.sheet,r=I.getElement();try{r&&(r.id?t.insertRule("#"+r.id+"::cue {background: transparent}",0):0!==r.classList.length?t.insertRule("."+r.className+"::cue {background: transparent}",0):t.insertRule("video::cue {background: transparent}",0))}catch(e){n.info(""+e.message)}}}function k(){var e=document.getElementById("native-cue-style");e&&document.head.removeChild(e)}function G(){if(m)for(;m.firstChild;)m.removeChild(m.firstChild)}return t={initialize:function(){"undefined"!=typeof window&&"undefined"!=typeof navigator&&(r=window.VTTCue||window.TextTrackCue,i=[],o=[],s=-1,u=0,f=0,p=0,g=0,m=null,y=null,_=!1,T=2147483647,v=null,void 0!==document.fullscreenElement?E="fullscreenElement":void 0!==document.webkitIsFullScreen?E="webkitIsFullScreen":document.msFullscreenElement?E="msFullscreenElement":document.mozFullScreen&&(E="mozFullScreen"))},getStreamId:function(){return R.id},addTextTrack:function(e){i.push(e)},addCaptions:O,createTracks:function(){i.sort((function(e,t){return e.index-t.index})),m=I.getTTMLRenderingDiv();for(var e,t,n,r,u,l,f=-1,d=0;d=0){b.on(h.a.PLAYBACK_METADATA_LOADED,(function e(){var t=M(f);t&&"html"===t.renderingType&&w.call(this,t,!0),b.off(h.a.PLAYBACK_METADATA_LOADED,e,this)}),this);for(var y=0;y1){var n=e.split(/:/)[1];n&&-1!=n.search(/%/)&&(n=parseInt(n.replace(/%/,""),10)),(e.match(/align/)||e.match(/A/))&&(t.align=n),(e.match(/line/)||e.match(/L/))&&(t.line=n),(e.match(/position/)||e.match(/P/))&&(t.position=n),(e.match(/size/)||e.match(/S/))&&(t.size=n)}})),t}function c(e,t){for(var n,i=t,a="",o="";""!==e[i]&&i1)for(var s=0;s0&&"WEBVTT"!==d&&d.match(r)){var h=u(d),p=h.cuePoints,g=h.styles,m=c(e,f+1),y=s(p[0].replace(i,"")),E=s(p[1].replace(i,""));!isNaN(y)&&!isNaN(E)&&y>=o&&E>y?""!==m?(o=y,l.push({start:y,end:E,data:m,styles:g})):t.error("Skipping cue due to empty/malformed cue text"):t.error("Skipping cue due to incorrect cue timing")}}return l}},t=Object(d.a)(o).getInstance().getLogger(e),n=/(?:\r\n|\r|\n)/gm,r=/-->/,i=/(^[\s]+|[\s]+$)/g,a=/\s\b/g,e}vr.__dashjs_factory_name="VTTParser";var Tr=f.a.getSingletonFactory(vr);function Sr(){var e,t,n=this.context,r=Object(l.a)(n).getInstance(),i=0;return e={parse:function(e,n,a,o,s){var u,l,f,d="",p=[],g={},m={},y="",E="",_={onOpenTag:function(e,n,i){if(i[" imagetype"]&&!i[" imageType"]&&(r.trigger(h.a.CONFORMANCE_VIOLATION,{level:pe.LEVELS.ERROR,event:pe.EVENTS.NON_COMPLIANT_SMPTE_IMAGE_ATTRIBUTE}),i[" imageType"]=i[" imagetype"]),"image"===n&&("http://www.smpte-ra.org/schemas/2052-1/2010/smpte-tt"===e||"http://www.smpte-ra.org/schemas/2052-1/2013/smpte-tt"===e)){if(!i[" imageType"]||"PNG"!==i[" imageType"].value)return void t.warn("smpte-tt imageType != PNG. Discarded");y=i["http://www.w3.org/XML/1998/namespace id"].value}},onCloseTag:function(){y&&(m[y]=E.trim()),E="",y=""},onText:function(e){y&&(E+=e)}};if(!e)throw d="no ttml data to parse",new Error(d);g.data=e,r.trigger(c.a.TTML_TO_PARSE,g);var v=Object(yr.fromXML)(g.data,(function(e){d=e}),_);r.trigger(c.a.TTML_PARSED,{ttmlString:g.data,ttmlDoc:v});var T,S=v.getMediaTimeEvents();for(f=0;fo?o:S[f+1]+n)&&p.push({start:u,end:l,type:"html",cueID:(T=void 0,T="cue_TTML_"+i,i++,T),isd:A,images:s,embeddedImages:m})}if(""!==d)throw t.error(d),new Error(d);return p}},t=Object(d.a)(n).getInstance().getLogger(e),e}Sr.__dashjs_factory_name="TTMLParser";var Ar=f.a.getSingletonFactory(Sr);function br(e){var t,n,r,i,o,s,u,f,d,p,g,m,y,E=this.context,_=e.adapter,v=e.errHandler,T=e.manifestModel,S=e.mediaController,A=e.videoModel,b=e.settings;function I(e){var t=e.tracks,r=e.index,i=e.streamId;!1===b.get().streaming.text.defaultEnabled&&!N()||y?w(i,-1):(f&&t.some((function(e,t){if(S.matchSettings(f,e))return w(i,t),r=t,!0})),p=!1),n[i].lastEnabledIndex=r,u.trigger(h.a.TEXT_TRACKS_ADDED,{enabled:N(),index:r,tracks:t,streamId:i}),m=!0}function R(e){if(!d&&e&&e.newMediaInfo){var t=e.newMediaInfo;t.type===a.a.TEXT&&(f={lang:t.lang,role:t.roles[0],index:t.index,codec:t.codec,accessibility:t.accessibility[0]})}}function N(){var e=!0;return p&&!g&&(e=!1),e}function w(e,t){(p=-1===t)&&S&&S.saveTextSettingsDisabled();var n=C(e);if(n!==t&&i[e]){i[e].setModeForTrackIdx(n,a.a.TEXT_HIDDEN),i[e].setCurrentTrackIdx(t),i[e].setModeForTrackIdx(t,a.a.TEXT_SHOWING);var o=i[e].getCurrentTrackInfo();o&&o.isFragmented&&!o.isEmbedded?function(e,t,n){if(!r[e])return;for(var o=r[e].getConfig().fragmentedTracks,s=0;s3&&void 0!==arguments[3]?arguments[3]:null,a=e.id;r[a]&&r[a].addMediaInfos(t,n,i)},reset:function(){D(),u.off(c.a.CURRENT_TRACK_CHANGED,R,t),u.off(c.a.TEXT_TRACKS_QUEUE_INITIALIZED,I,t),Object.keys(r).forEach((function(e){r[e].resetEmbedded(),r[e].reset()}))}},f=null,g=!1,m=!1,d=!1,y=!1,o=Tr(E).getInstance(),s=Ar(E).getInstance(),u=Object(l.a)(E).getInstance(),D(),t}br.__dashjs_factory_name="TextController";var Ir=f.a.getClassFactory(br);function Rr(){var e,t,n,r,s,p,m,T,S,A,b,I,R,N,w,C,D,O,P,U,B,k,G,j,Y,H,K,q,V,W,z,X,Q,$,Z,J,ee="You must first call initialize() and set a source before calling this method",te="You must first call initialize() and set a valid source and view before calling this method",ne="You must first call attachView() to set the video element before calling this method",re=this.context,ie=Object(l.a)(re).getInstance(),oe=Object(_.a)(re).getInstance(),se=Object(d.a)(re).getInstance({settings:oe});function ue(){Ie(null),Te(null),r=null,R&&(R.reset(),R=null),N&&(N.reset(),N=null),oe.reset(),C&&(C.reset(),C=null)}function le(){return!!n&&!!W.getElement()}function ce(){return Object(fn.a)()}function fe(){if(!m)throw te;return H.isPaused()}function de(e){var t=G&&G.hasVideoTrack()?a.a.VIDEO:a.a.AUDIO,n=K.getCurrentDVRInfo(t);if(!n)return 0;var r=H.getLiveDelay(),i=n.range.start+e;return i>n.range.end-r&&(i=n.range.end-r),i}function he(e){if(!m)throw te;var t=_e().currentTime;if(void 0!==e)t=G.getTimeRelativeToStreamId(t,e);else if(H.getIsDynamic()){var n=G&&G.hasVideoTrack()?a.a.VIDEO:a.a.AUDIO,r=K.getCurrentDVRInfo(n);t=null===r||0===t?0:Math.max(0,t-r.range.start)}return t}function pe(){if(!m)throw te;var e=_e().duration;if(H.getIsDynamic()){var t=G&&G.hasVideoTrack()?a.a.VIDEO:a.a.AUDIO,n=K.getCurrentDVRInfo(t);e=n?n.range.end-n.range.start:0}return e}function ge(e){Object(M.b)(e,"boolean"),T=e}function me(){O.restoreDefaultUTCTimingSources()}function ye(){return K}function _e(){if(!W.getElement())throw ne;return W.getElement()}function Te(e){if(!s)throw"MediaPlayer not initialized!";W.setElement(e),e&&(Ce(),function(){if(N)return;var e=dashjs.MetricsReporting;if("function"==typeof e){var t=e(re).create();N=t.createMetricsReporting({debug:se,eventBus:ie,mediaElement:_e(),adapter:D,dashMetrics:K,events:c.a,constants:a.a,metricsConstants:u})}}(),function(){if(w)return;var e=dashjs.MssHandler;"function"==typeof e&&(E.a.extend(e.errors),w=e(re).create({eventBus:ie,mediaPlayerModel:O,dashMetrics:K,manifestModel:q,playbackController:H,streamController:G,protectionController:R,baseURLController:U,errHandler:P,events:c.a,constants:a.a,debug:se,initSegmentType:v.a.INIT_SEGMENT_TYPE,BASE64:rr.a,ISOBoxer:ar.a,settings:oe}))}(),G&&G.switchToVideoElement()),m&&Ne(),Me()}function Se(e){if(!p)throw ee;var t=G.getActiveStreamInfo();return t?I.getTracksFor(e,t.id):[]}function be(e,t){var n=-1;e.some((function(e,r){if(e===t)return n=r,!0})),n<0||e.splice(n,1)}function Ie(e){if(!s)throw"MediaPlayer not initialized!";"string"==typeof e&&z.initialize(e),n=e,(p||m)&&Ne(),le()&&Me()}function Re(){if(!p)throw ee;var e=G.getActiveStreamInfo();return e?G.getStreamById(e.id):null}function Ne(){m=!1,p=!1,D.reset(),G.reset(),Y.reset(),H.reset(),S.reset(),I.reset(),Q.reset(),R&&(oe.get().streaming.protection.keepProtectionMediaKeys?R.stop():(R.reset(),R=null,Ce())),j.reset(),V.reset()}function we(){return Ze(re).create({debug:se,errHandler:P,dashMetrics:K,mediaPlayerModel:O,requestModifier:Object(L.a)(re).getInstance(),mssHandler:w,settings:oe})}function Ce(){if(R)return R;var e=dashjs.Protection;if("function"==typeof e){var t=e(re).create();return c.a.extend(e.events),h.a.extend(e.events,{publicOnly:!0}),E.a.extend(e.errors),B||(B=Object(tt.a)(re).getInstance()),(R=t.createProtectionSystem({debug:se,errHandler:P,videoModel:W,capabilities:B,eventBus:ie,events:c.a,BASE64:rr.a,constants:a.a,cmcdModel:V,settings:oe}))&&(R.setLicenseRequestFilters($),R.setLicenseResponseFilters(Z)),R}return null}function De(){if(!s)throw"MediaPlayer not initialized!";if(C)return C;var e=dashjs.OfflineController;if("function"==typeof e){c.a.extend(e.events),h.a.extend(e.events,{publicOnly:!0}),E.a.extend(e.errors);var t=we(),n=ae(re).create();return n.setConfig({manifestModel:q,adapter:D,manifestLoader:t,errHandler:P}),C=e(re).create({debug:se,manifestUpdater:n,baseURLController:U,manifestLoader:t,manifestModel:q,mediaPlayerModel:O,abrController:S,playbackController:H,adapter:D,errHandler:P,dashMetrics:K,timelineConverter:b,segmentBaseController:Q,schemeLoaderFactory:A,eventBus:ie,events:c.a,errors:E.a,constants:a.a,settings:oe,dashConstants:o.a,urlUtils:Object(F.a)(re).getInstance()})}return null}function Oe(e){var t=G&&G.hasVideoTrack()?a.a.VIDEO:a.a.AUDIO,n=K.getCurrentDVRInfo(t);return n?e+(n.manifestInfo.availableFrom.getTime()/1e3+n.range.start):0}function Me(){var e;C&&C.resetRecords(),!p&&n&&(p=!0,t.info("Streaming Initialized"),e=we(),G||(G=Ee(re).getInstance()),j||(j=Ir(re).create({errHandler:P,manifestModel:q,adapter:D,mediaController:I,videoModel:W,settings:oe})),k.setConfig({capabilities:B,adapter:D,settings:oe,manifestModel:q,errHandler:P}),k.setCustomCapabilitiesFilters(J),G.setConfig({capabilities:B,capabilitiesFilter:k,manifestLoader:e,manifestModel:q,mediaPlayerModel:O,protectionController:R,textController:j,adapter:D,dashMetrics:K,errHandler:P,timelineConverter:b,videoModel:W,playbackController:H,abrController:S,mediaController:I,settings:oe,baseURLController:U,uriFragmentModel:z,segmentBaseController:Q}),Y.setConfig({settings:oe,playbackController:H,streamController:G,videoModel:W,timelineConverter:b,adapter:D}),H.setConfig({streamController:G,dashMetrics:K,mediaPlayerModel:O,adapter:D,videoModel:W,timelineConverter:b,settings:oe}),S.setConfig({streamController:G,domStorage:X,mediaPlayerModel:O,dashMetrics:K,adapter:D,videoModel:W,settings:oe}),V.setConfig({abrController:S,dashMetrics:K,playbackController:H}),S.initialize(),G.initialize(T,r),j.initialize(),Y.initialize(),V.initialize(),Q.initialize(),"string"==typeof n?G.load(n):G.loadWithManifest(n)),!m&&le()&&(m=!0,t.info("Playback Initialized"))}return e={initialize:function(e,n,r){B||(B=Object(tt.a)(re).getInstance()).setConfig({settings:oe}),P||(P=et(re).getInstance()),B.supportsMediaSource()?(s||(s=!0,b=tr(re).getInstance(),S||(S=tn(re).getInstance()).setConfig({settings:oe}),A||(A=Object(nn.a)(re).getInstance()),H||(H=g(re).getInstance()),I||(I=Ae(re).getInstance()),G||(G=Ee(re).getInstance()),Y||(Y=ve(re).getInstance()),k||(k=rt(re).getInstance()),D=Ln(re).getInstance(),q=ut(re).getInstance(),V=Object(sn.a)(re).getInstance(),K=Jn(re).getInstance({settings:oe}),X=cn(re).getInstance({settings:oe}),D.setConfig({constants:a.a,cea608parser:i.a,errHandler:P,BASE64:rr.a}),U||(U=xe(re).create()),U.setConfig({adapter:D}),Q||(Q=vn(re).getInstance({dashMetrics:K,mediaPlayerModel:O,errHandler:P,baseURLController:U,events:c.a,eventBus:ie,debug:se,boxParser:Object(x.a)(re).getInstance(),requestModifier:Object(L.a)(re).getInstance(),errors:E.a})),I.setConfig({domStorage:X,settings:oe}),me(),ge(void 0===r||r),De()),e&&Te(e),n&&Ie(n),t.info("[dash.js "+ce()+"] MediaPlayer has been initialized")):P.error(new y.a(E.a.CAPABILITY_MEDIASOURCE_ERROR_CODE,E.a.CAPABILITY_MEDIASOURCE_ERROR_MESSAGE))},setConfig:function(e){e&&(e.capabilities&&(B=e.capabilities),e.capabilitiesFilter&&(k=e.capabilitiesFilter),e.streamController&&(G=e.streamController),e.textController&&(j=e.textController),e.gapController&&(Y=e.gapController),e.playbackController&&(H=e.playbackController),e.mediaPlayerModel&&(O=e.mediaPlayerModel),e.abrController&&(S=e.abrController),e.schemeLoaderFactory&&(A=e.schemeLoaderFactory),e.mediaController&&(I=e.mediaController),e.settings&&(oe=e.settings))},on:function(e,t,n,r){ie.on(e,t,n,r)},off:function(e,t,n){ie.off(e,t,n)},extend:function(e,t,n){f.a.extend(e,t,n,re)},attachView:Te,attachSource:Ie,isReady:le,play:function(){if(!m)throw te;(!T||fe()&&m)&&H.play()},isPaused:fe,pause:function(){if(!m)throw te;H.pause()},isSeeking:function(){if(!m)throw te;return H.isSeeking()},isDynamic:function(){if(!m)throw te;return H.getIsDynamic()},seek:function(e){if(!m)throw te;if(Object(M.b)(e,"number"),isNaN(e))throw a.a.BAD_ARGUMENT_ERROR;var t=H.getIsDynamic()?de(e):e;H.seek(t)},setPlaybackRate:function(e){_e().playbackRate=e},getPlaybackRate:function(){return _e().playbackRate},setMute:function(e){Object(M.b)(e,"boolean"),_e().muted=e},isMuted:function(){return _e().muted},setVolume:function(e){if("number"!=typeof e||isNaN(e)||e<0||e>1)throw a.a.BAD_ARGUMENT_ERROR;_e().volume=e},getVolume:function(){return _e().volume},time:he,duration:pe,timeAsUTC:function(){if(!m)throw te;return he()<0?NaN:Oe(he())},durationAsUTC:function(){if(!m)throw te;return Oe(pe())},getActiveStream:Re,getDVRWindowSize:function(){var e=G&&G.hasVideoTrack()?a.a.VIDEO:a.a.AUDIO,t=K.getCurrentDVRInfo(e);return t?t.manifestInfo.dvrWindowSize:0},getDVRSeekOffset:de,convertToTimeCode:function(e){e=Math.max(e,0);var t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=Math.floor(e%3600%60);return(0===t?"":t<10?"0"+t.toString()+":":t.toString()+":")+(n<10?"0"+n.toString():n.toString())+":"+(r<10?"0"+r.toString():r.toString())},formatUTC:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=new Date(1e3*e),a=i.toLocaleDateString(t),o=i.toLocaleTimeString(t,{hour12:n});return r?o+" "+a:o},getVersion:ce,getDebug:function(){return se},getBufferLength:function(e){var n=[a.a.VIDEO,a.a.AUDIO,a.a.TEXT];if(e){if(-1!==n.indexOf(e)){var r=ye().getCurrentBufferLevel(e);return r||NaN}return t.warn("getBufferLength requested for invalid type"),NaN}var i=n.map((function(e){return Se(e).length>0?ye().getCurrentBufferLevel(e):Number.MAX_VALUE})).reduce((function(e,t){return Math.min(e,t)}));return i===Number.MAX_VALUE?NaN:i},getTTMLRenderingDiv:function(){return W?W.getTTMLRenderingDiv():null},getVideoElement:_e,getSource:function(){if(!n)throw"You must first call attachSource() with a valid source before calling this method";return n},getCurrentLiveLatency:function(){if(!s)throw"MediaPlayer not initialized!";return m?H.getCurrentLiveLatency():NaN},getTopBitrateInfoFor:function(e){if(!p)throw ee;return S.getTopBitrateInfoFor(e)},setAutoPlay:ge,getAutoPlay:function(){return T},getDashMetrics:ye,getQualityFor:function(e){if(!p)throw ee;if(e===a.a.IMAGE){var t=Re();if(!t)return-1;var n=t.getThumbnailController();return n?n.getCurrentTrackIndex():-1}return S.getQualityFor(e)},setQualityFor:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!p)throw ee;if(e===a.a.IMAGE){var r=Re();if(!r)return;var i=r.getThumbnailController();i&&i.setTrackByIndex(t)}S.setPlaybackQuality(e,G.getActiveStreamInfo(),t,{forceReplace:n})},updatePortalSize:function(){S.setElementSize(),S.setWindowResizeEventCalled(!0)},enableText:function(e){var t=G.getActiveStreamInfo();return!(!t||!j)&&j.enableText(t.id,e)},enableForcedTextStreaming:function(e){return!(!G.getActiveStreamInfo()||!j)&&j.enableForcedTextStreaming(e)},isTextEnabled:function(){var e=G.getActiveStreamInfo();return!(!e||!j)&&j.isTextEnabled(e)},setTextTrack:function(e){if(!m)throw te;var t=G.getActiveStreamInfo();t&&j&&j.setTextTrack(t.id,e)},getBitrateInfoListFor:function(e){if(!p)throw ee;var t=Re();return t?t.getBitrateListFor(e):[]},getStreamsFromManifest:function(e){if(!p)throw ee;return D.getStreamsInfo(e)},getTracksFor:Se,getTracksForTypeFromManifest:function(e,t,n){if(!p)throw ee;return(n=n||D.getStreamsInfo(t,1)[0])?D.getAllMediaInfoForType(n,e,t):[]},getCurrentTrackFor:function(e){if(!p)throw ee;var t=G.getActiveStreamInfo();return I.getCurrentTrackFor(e,t.id)},setInitialMediaSettingsFor:function(e,t){if(!s)throw"MediaPlayer not initialized!";I.setInitialSettings(e,t)},getInitialMediaSettingsFor:function(e){if(!s)throw"MediaPlayer not initialized!";return I.getInitialSettings(e)},setCurrentTrack:function(e){if(!p)throw ee;I.setTrack(e)},addABRCustomRule:function(e,t,n){O.addABRCustomRule(e,t,n)},removeABRCustomRule:function(e){O.removeABRCustomRule(e)},removeAllABRCustomRule:function(){O.removeABRCustomRule()},getAverageThroughput:function(e){var t=S.getThroughputHistory(),n=H.getIsDynamic();return t?t.getAverageThroughput(e,n):0},retrieveManifest:function(e,t){var n=we(),r=this;ie.on(c.a.INTERNAL_MANIFEST_LOADED,(function e(i){i.error?t(null,i.error):t(i.manifest),ie.off(c.a.INTERNAL_MANIFEST_LOADED,e,r),n.reset()}),r),z.initialize(e),n.load(e)},addUTCTimingSource:function(e,t){O.addUTCTimingSource(e,t)},removeUTCTimingSource:function(e,t){O.removeUTCTimingSource(e,t)},clearDefaultUTCTimingSources:function(){O.clearDefaultUTCTimingSources()},restoreDefaultUTCTimingSources:me,setXHRWithCredentialsForType:function(e,t){O.setXHRWithCredentialsForType(e,t)},getXHRWithCredentialsForType:function(e){return O.getXHRWithCredentialsForType(e)},getProtectionController:function(){return Ce()},attachProtectionController:function(e){R=e},setProtectionData:function(e){r=e,G&&G.setProtectionData(r)},registerLicenseRequestFilter:function(e){$.push(e),R&&R.setLicenseRequestFilters($)},registerLicenseResponseFilter:function(e){Z.push(e),R&&R.setLicenseResponseFilters(Z)},unregisterLicenseRequestFilter:function(e){be($,e),R&&R.setLicenseRequestFilters($)},unregisterLicenseResponseFilter:function(e){be(Z,e),R&&R.setLicenseResponseFilters(Z)},registerCustomCapabilitiesFilter:function(e){J.push(e),k&&k.setCustomCapabilitiesFilters(J)},unregisterCustomCapabilitiesFilter:function(e){be(J,e),k&&k.setCustomCapabilitiesFilters(J)},setCustomInitialTrackSelectionFunction:function(e){I&&I.setCustomInitialTrackSelectionFunction(e)},resetCustomInitialTrackSelectionFunction:function(){I&&I.setCustomInitialTrackSelectionFunction(null)},attachTTMLRenderingDiv:function(e){if(!W.getElement())throw ne;W.setTTMLRenderingDiv(e)},getCurrentTextTrackIndex:function(){var e=G.getActiveStreamInfo();if(e&&j)return j.getCurrentTrackIdx(e.id)},provideThumbnail:function(e,t){if("function"==typeof t)if(e<0)t(null);else{var n=H.getIsDynamic()?de(e):e,r=G.getStreamForTime(n);if(null!==r){var i=r.getThumbnailController();if(i){var a=G.getTimeRelativeToStreamId(n,r.getId());return i.provide(a,t)}t(null)}else t(null)}},getDashAdapter:function(){return D},getOfflineController:function(){return De()},getSettings:function(){return oe.get()},updateSettings:function(e){oe.update(e)},resetSettings:function(){oe.reset()},reset:ue,destroy:function(){ue(),$=[],Z=[],J=[],f.a.deleteSingletonInstances(re)}},t=se.getLogger(e),s=!1,m=!1,p=!1,T=!0,R=null,C=null,r=null,D=null,Q=null,c.a.extend(h.a),O=Kt(re).getInstance(),W=on(re).getInstance(),z=ot(re).getInstance(),$=[],Z=[],J=[],e}Rr.__dashjs_factory_name="MediaPlayer";var Nr=f.a.getClassFactory(Rr);Nr.events=h.a,Nr.errors=E.a,f.a.updateClassFactory(Rr.__dashjs_factory_name,Nr);t.a=Nr},function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));function r(){return"4.3.0"}},function(e,t,n){var r,i,o,u,l,c={encode:function(e){for(var t=[],n=0;n>6),t.push(128|63&r)):r<65536?(t.push(224|r>>12),t.push(128|63&r>>6),t.push(128|63&r)):(t.push(240|r>>18),t.push(128|63&r>>12),t.push(128|63&r>>6),t.push(128|63&r))}return t},decode:function(e){for(var t=[],n=0;n>18)),n.push(r.charAt(63&a>>12)),n.push(r.charAt(63&a>>6)),n.push(r.charAt(63&a))}return 2==e.length-t?(a=(e[t]<<16)+(e[t+1]<<8),n.push(r.charAt(63&a>>18)),n.push(r.charAt(63&a>>12)),n.push(r.charAt(63&a>>6)),n.push("=")):1==e.length-t&&(a=e[t]<<16,n.push(r.charAt(63&a>>18)),n.push(r.charAt(63&a>>12)),n.push("==")),n.join("")},o=function(){for(var e=[],t=0;t0&&(e.segments=u);return e}(e,n[1])),(r=e).mediaFinishedInformation=E.getMediaFinishedInformation(r),function(e){if(!S())return;var t,n=d.getCurrentManifestUpdate(),r=!1;if(n){for(var i=0;i=s.length?null:s[e]}function w(e){i=!1,l.trigger(c.DATA_UPDATE_COMPLETED,{data:n,currentRepresentation:u,error:e},{streamId:m.id,mediaType:g})}function C(e){u=e}function D(e){if(e.newDuration){var t=A();if(t&&t.adaptation.period)t.adaptation.period.duration=e.newDuration}}return t={getStreamId:function(){return m.id},getType:v,getData:function(){return n},isUpdating:S,updateData:function(e,t,a,o,u){if(T(),i=!0,s=t,C(N(u)),n=e,a!==r.a.VIDEO&&a!==r.a.AUDIO&&(a!==r.a.TEXT||!o))return w(),Promise.resolve();for(var l=[],c=0,f=s.length;c=0}return!1}),(function(e){return String(e)}))}return n}(l),E=n(1);function _(e){return(_="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function v(e,t){return(v=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function T(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=A(e);if(t){var i=A(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return S(this,n)}}function S(e,t){return!t||"object"!==_(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function A(e){return(A=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var b=/^([-])?P(([\d.]*)Y)?(([\d.]*)M)?(([\d.]*)D)?T?(([\d.]*)H)?(([\d.]*)M)?(([\d.]*)S)?/,I=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&v(e,t)}(n,e);var t=T(n);function n(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,n),t.call(this,(function(e){for(var t=[c.a.MIN_BUFFER_TIME,c.a.MEDIA_PRESENTATION_DURATION,c.a.MINIMUM_UPDATE_PERIOD,c.a.TIMESHIFT_BUFFER_DEPTH,c.a.MAX_SEGMENT_DURATION,c.a.MAX_SUBSEGMENT_DURATION,c.a.SUGGESTED_PRESENTATION_DELAY,c.a.START,E.a.START_TIME,c.a.DURATION],n=t.length,r=0;r4)return null;var r=[];for(var i in t){var a=n.parseLength(t[i]);if(!a)return null;r.push(a)}return r}),(function(t,n,r,i,a){var o;if(1===i.length)o=[i[0],i[0],i[0],i[0]];else if(2===i.length)o=[i[0],i[1],i[0],i[1]];else if(3===i.length)o=[i[0],i[1],i[2],i[1]];else{if(4!==i.length)return null;o=[i[0],i[1],i[2],i[3]]}var s=r.styleAttrs[e.byName.writingMode.qname];if("lrtb"===s||"lr"===s)o=[o[0],o[3],o[2],o[1]];else if("rltb"===s||"rl"===s)o=[o[0],o[1],o[2],o[3]];else if("tblr"===s)o=[o[3],o[0],o[1],o[2]];else{if("tbrl"!==s&&"tb"!==s)return null;o=[o[3],o[2],o[1],o[0]]}var u=[];for(var l in o)if(0===o[l].value)u[l]=0;else if("%"===o[l].unit)u[l]="0"===l||"2"===l?r.styleAttrs[e.byName.extent.qname].h*o[l].value/100:r.styleAttrs[e.byName.extent.qname].w*o[l].value/100;else if("em"===o[l].unit)u[l]=r.styleAttrs[e.byName.fontSize.qname]*o[l].value;else if("c"===o[l].unit)u[l]=o[l].value/t.cellResolution.h;else{if("px"!==o[l].unit)return null;u[l]="0"===l||"2"===l?o[l].value/t.pxDimensions.h:o[l].value/t.pxDimensions.w}return u})),new r(t.ns_tts,"showBackground","always",["region"],!1,!0,(function(e){return e}),null),new r(t.ns_tts,"textAlign","start",["p"],!0,!0,(function(e){return e}),(function(e,t,n,r,i){return"left"===r?"start":"right"===r?"end":r})),new r(t.ns_tts,"textDecoration","none",["span"],!0,!0,(function(e){return e.split(" ")}),null),new r(t.ns_tts,"textOutline","none",["span"],!0,!0,(function(e){if("none"===e)return e;var t={},r=e.split(" ");if(0===r.length||r.length>2)return null;var i=n.parseColor(r[0]);if(t.color=i,null!==i&&r.shift(),1!==r.length)return null;var a=n.parseLength(r[0]);return a?(t.thickness=a,t):null}),(function(t,n,r,i,a){if("none"===i)return i;var o={};if(null===i.color?o.color=r.styleAttrs[e.byName.color.qname]:o.color=i.color,"%"===i.thickness.unit)o.thickness=r.styleAttrs[e.byName.fontSize.qname]*i.thickness.value/100;else if("em"===i.thickness.unit)o.thickness=r.styleAttrs[e.byName.fontSize.qname]*i.thickness.value;else if("c"===i.thickness.unit)o.thickness=i.thickness.value/t.cellResolution.h;else{if("px"!==i.thickness.unit)return null;o.thickness=i.thickness.value/t.pxDimensions.h}return o})),new r(t.ns_tts,"unicodeBidi","normal",["span","p"],!1,!0,(function(e){return e}),null),new r(t.ns_tts,"visibility","visible",["body","div","p","region","span"],!0,!0,(function(e){return e}),null),new r(t.ns_tts,"wrapOption","wrap",["span"],!0,!0,(function(e){return e}),null),new r(t.ns_tts,"writingMode","lrtb",["region"],!1,!0,(function(e){return e}),null),new r(t.ns_tts,"zIndex","auto",["region"],!1,!0,(function(e){var t;return"auto"===e?t=e:(t=parseInt(e),isNaN(t)&&(t=null)),t}),null),new r(t.ns_ebutts,"linePadding","0c",["p"],!0,!1,n.parseLength,(function(e,t,n,r,i){return"c"===r.unit?r.value/e.cellResolution.h:null})),new r(t.ns_ebutts,"multiRowAlign","auto",["p"],!0,!1,(function(e){return e}),null),new r(t.ns_smpte,"backgroundImage",null,["div"],!1,!1,(function(e){return e}),null),new r(t.ns_itts,"forcedDisplay","false",["body","div","p","region","span"],!0,!0,(function(e){return"true"===e}),null),new r(t.ns_itts,"fillLineGap","false",["p"],!0,!0,(function(e){return"true"===e}),null)],e.byQName={},e.all)e.byQName[e.all[i].qname]=e.all[i];for(var a in e.byName={},e.all)e.byName[e.all[a].name]=e.all[a]}(t,"undefined"==typeof imscNames?n(47):imscNames,"undefined"==typeof imscUtils?n(65):imscUtils)},function(e,t,n){"use strict";(function(e){ +/*! * The buffer module from node.js, for the browser. * - * @author Feross Aboukhadijeh + * @author Feross Aboukhadijeh * @license MIT */ -"use strict";function d(){function a(){}try{var b=new Uint8Array(1);return b.foo=function(){return 42},b.constructor=a,42===b.foo()&&b.constructor===a&&"function"==typeof b.subarray&&0===b.subarray(1,1).byteLength}catch(c){return!1}}function e(){return f.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function f(a){return this instanceof f?(f.TYPED_ARRAY_SUPPORT||(this.length=0,this.parent=void 0),"number"==typeof a?g(this,a):"string"==typeof a?h(this,a,arguments.length>1?arguments[1]:"utf8"):i(this,a)):arguments.length>1?new f(a,arguments[1]):new f(a)}function g(a,b){if(a=p(a,b<0?0:0|q(b)),!f.TYPED_ARRAY_SUPPORT)for(var c=0;c>>1&&(a.parent=Z),a}function q(a){if(a>=e())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+e().toString(16)+" bytes");return 0|a}function r(a,b){if(!(this instanceof r))return new r(a,b);var c=new f(a,b);return delete c.parent,c}function s(a,b){"string"!=typeof a&&(a=""+a);var c=a.length;if(0===c)return 0;for(var d=!1;;)switch(b){case"ascii":case"binary":case"raw":case"raws":return c;case"utf8":case"utf-8":return R(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*c;case"hex":return c>>>1;case"base64":return U(a).length;default:if(d)return R(a).length;b=(""+b).toLowerCase(),d=!0}}function t(a,b,c){var d=!1;if(b|=0,c=void 0===c||c===1/0?this.length:0|c,a||(a="utf8"),b<0&&(b=0),c>this.length&&(c=this.length),c<=b)return"";for(;;)switch(a){case"hex":return F(this,b,c);case"utf8":case"utf-8":return B(this,b,c);case"ascii":return D(this,b,c);case"binary":return E(this,b,c);case"base64":return A(this,b,c);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G(this,b,c);default:if(d)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),d=!0}}function u(a,b,c,d){c=Number(c)||0;var e=a.length-c;d?(d=Number(d))>e&&(d=e):d=e;var f=b.length;if(f%2!=0)throw new Error("Invalid hex string");d>f/2&&(d=f/2);for(var g=0;g239?4:f>223?3:f>191?2:1;if(e+h<=c){var i,j,k,l;switch(h){case 1:f<128&&(g=f);break;case 2:i=a[e+1],128==(192&i)&&(l=(31&f)<<6|63&i)>127&&(g=l);break;case 3:i=a[e+1],j=a[e+2],128==(192&i)&&128==(192&j)&&(l=(15&f)<<12|(63&i)<<6|63&j)>2047&&(l<55296||l>57343)&&(g=l);break;case 4:i=a[e+1],j=a[e+2],k=a[e+3],128==(192&i)&&128==(192&j)&&128==(192&k)&&(l=(15&f)<<18|(63&i)<<12|(63&j)<<6|63&k)>65535&&l<1114112&&(g=l)}}null===g?(g=65533,h=1):g>65535&&(g-=65536,d.push(g>>>10&1023|55296),g=56320|1023&g),d.push(g),e+=h}return C(d)}function C(a){var b=a.length;if(b<=$)return String.fromCharCode.apply(String,a);for(var c="",d=0;dd)&&(c=d);for(var e="",f=b;fc)throw new RangeError("Trying to access beyond buffer length")}function I(a,b,c,d,e,g){if(!f.isBuffer(a))throw new TypeError("buffer must be a Buffer instance");if(b>e||ba.length)throw new RangeError("index out of range")}function J(a,b,c,d){b<0&&(b=65535+b+1);for(var e=0,f=Math.min(a.length-c,2);e>>8*(d?e:1-e)}function K(a,b,c,d){b<0&&(b=4294967295+b+1);for(var e=0,f=Math.min(a.length-c,4);e>>8*(d?e:3-e)&255}function L(a,b,c,d,e,f){if(b>e||ba.length)throw new RangeError("index out of range");if(c<0)throw new RangeError("index out of range")}function M(a,b,c,d,e){return e||L(a,b,c,4,3.4028234663852886e38,-3.4028234663852886e38),X.write(a,b,c,d,23,4),c+4}function N(a,b,c,d,e){return e||L(a,b,c,8,1.7976931348623157e308,-1.7976931348623157e308),X.write(a,b,c,d,52,8),c+8}function O(a){if(a=P(a).replace(aa,""),a.length<2)return"";for(;a.length%4!=0;)a+="=";return a}function P(a){return a.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function Q(a){return a<16?"0"+a.toString(16):a.toString(16)}function R(a,b){b=b||1/0;for(var c,d=a.length,e=null,f=[],g=0;g55295&&c<57344){if(!e){if(c>56319){(b-=3)>-1&&f.push(239,191,189);continue}if(g+1===d){(b-=3)>-1&&f.push(239,191,189);continue}e=c;continue}if(c<56320){(b-=3)>-1&&f.push(239,191,189),e=c;continue}c=65536+(e-55296<<10|c-56320)}else e&&(b-=3)>-1&&f.push(239,191,189);if(e=null,c<128){if((b-=1)<0)break;f.push(c)}else if(c<2048){if((b-=2)<0)break;f.push(c>>6|192,63&c|128)}else if(c<65536){if((b-=3)<0)break;f.push(c>>12|224,c>>6&63|128,63&c|128)}else{if(!(c<1114112))throw new Error("Invalid code point");if((b-=4)<0)break;f.push(c>>18|240,c>>12&63|128,c>>6&63|128,63&c|128)}}return f}function S(a){for(var b=[],c=0;c>8,e=c%256,f.push(e),f.push(d);return f}function U(a){return W.toByteArray(O(a))}function V(a,b,c,d){for(var e=0;e=b.length||e>=a.length);e++)b[e+c]=a[e];return e}var W=a(7),X=a(17),Y=a(27);c.Buffer=f,c.SlowBuffer=r,c.INSPECT_MAX_BYTES=50,f.poolSize=8192;var Z={};f.TYPED_ARRAY_SUPPORT=void 0!==b.TYPED_ARRAY_SUPPORT?b.TYPED_ARRAY_SUPPORT:d(),f.TYPED_ARRAY_SUPPORT?(f.prototype.__proto__=Uint8Array.prototype,f.__proto__=Uint8Array):(f.prototype.length=void 0,f.prototype.parent=void 0),f.isBuffer=function(a){return!(null==a||!a._isBuffer)},f.compare=function(a,b){if(!f.isBuffer(a)||!f.isBuffer(b))throw new TypeError("Arguments must be Buffers");if(a===b)return 0;for(var c=a.length,d=b.length,e=0,g=Math.min(c,d);e0&&(a=this.toString("hex",0,b).match(/.{2}/g).join(" "),this.length>b&&(a+=" ... ")),""},f.prototype.compare=function(a){if(!f.isBuffer(a))throw new TypeError("Argument must be a Buffer");return this===a?0:f.compare(this,a)},f.prototype.indexOf=function(a,b){function c(a,b,c){for(var d=-1,e=0;c+e2147483647?b=2147483647:b<-2147483648&&(b=-2147483648),b>>=0,0===this.length)return-1;if(b>=this.length)return-1;if(b<0&&(b=Math.max(this.length+b,0)),"string"==typeof a)return 0===a.length?-1:String.prototype.indexOf.call(this,a,b);if(f.isBuffer(a))return c(this,a,b);if("number"==typeof a)return f.TYPED_ARRAY_SUPPORT&&"function"===Uint8Array.prototype.indexOf?Uint8Array.prototype.indexOf.call(this,a,b):c(this,[a],b);throw new TypeError("val must be string, number or Buffer")},f.prototype.get=function(a){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(a)},f.prototype.set=function(a,b){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(a,b)},f.prototype.write=function(a,b,c,d){if(void 0===b)d="utf8",c=this.length,b=0;else if(void 0===c&&"string"==typeof b)d=b,c=this.length,b=0;else if(isFinite(b))b|=0,isFinite(c)?(c|=0,void 0===d&&(d="utf8")):(d=c,c=void 0);else{var e=d;d=b,b=0|c,c=e}var f=this.length-b;if((void 0===c||c>f)&&(c=f),a.length>0&&(c<0||b<0)||b>this.length)throw new RangeError("attempt to write outside buffer bounds");d||(d="utf8");for(var g=!1;;)switch(d){case"hex":return u(this,a,b,c);case"utf8":case"utf-8":return v(this,a,b,c);case"ascii":return w(this,a,b,c);case"binary":return x(this,a,b,c);case"base64":return y(this,a,b,c);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return z(this,a,b,c);default:if(g)throw new TypeError("Unknown encoding: "+d);d=(""+d).toLowerCase(),g=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var $=4096;f.prototype.slice=function(a,b){var c=this.length;a=~~a,b=void 0===b?c:~~b,a<0?(a+=c)<0&&(a=0):a>c&&(a=c),b<0?(b+=c)<0&&(b=0):b>c&&(b=c),b0&&(e*=256);)d+=this[a+--b]*e;return d},f.prototype.readUInt8=function(a,b){return b||H(a,1,this.length),this[a]},f.prototype.readUInt16LE=function(a,b){return b||H(a,2,this.length),this[a]|this[a+1]<<8},f.prototype.readUInt16BE=function(a,b){return b||H(a,2,this.length),this[a]<<8|this[a+1]},f.prototype.readUInt32LE=function(a,b){return b||H(a,4,this.length),(this[a]|this[a+1]<<8|this[a+2]<<16)+16777216*this[a+3]},f.prototype.readUInt32BE=function(a,b){return b||H(a,4,this.length),16777216*this[a]+(this[a+1]<<16|this[a+2]<<8|this[a+3])},f.prototype.readIntLE=function(a,b,c){a|=0,b|=0,c||H(a,b,this.length);for(var d=this[a],e=1,f=0;++f=e&&(d-=Math.pow(2,8*b)),d},f.prototype.readIntBE=function(a,b,c){a|=0,b|=0,c||H(a,b,this.length);for(var d=b,e=1,f=this[a+--d];d>0&&(e*=256);)f+=this[a+--d]*e;return e*=128,f>=e&&(f-=Math.pow(2,8*b)),f},f.prototype.readInt8=function(a,b){return b||H(a,1,this.length),128&this[a]?-1*(255-this[a]+1):this[a]},f.prototype.readInt16LE=function(a,b){b||H(a,2,this.length);var c=this[a]|this[a+1]<<8;return 32768&c?4294901760|c:c},f.prototype.readInt16BE=function(a,b){b||H(a,2,this.length);var c=this[a+1]|this[a]<<8;return 32768&c?4294901760|c:c},f.prototype.readInt32LE=function(a,b){return b||H(a,4,this.length),this[a]|this[a+1]<<8|this[a+2]<<16|this[a+3]<<24},f.prototype.readInt32BE=function(a,b){return b||H(a,4,this.length),this[a]<<24|this[a+1]<<16|this[a+2]<<8|this[a+3]},f.prototype.readFloatLE=function(a,b){return b||H(a,4,this.length),X.read(this,a,!0,23,4)},f.prototype.readFloatBE=function(a,b){return b||H(a,4,this.length),X.read(this,a,!1,23,4)},f.prototype.readDoubleLE=function(a,b){return b||H(a,8,this.length),X.read(this,a,!0,52,8)},f.prototype.readDoubleBE=function(a,b){return b||H(a,8,this.length),X.read(this,a,!1,52,8)},f.prototype.writeUIntLE=function(a,b,c,d){a=+a,b|=0,c|=0,d||I(this,a,b,c,Math.pow(2,8*c),0);var e=1,f=0;for(this[b]=255&a;++f=0&&(f*=256);)this[b+e]=a/f&255;return b+c},f.prototype.writeUInt8=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,1,255,0),f.TYPED_ARRAY_SUPPORT||(a=Math.floor(a)),this[b]=255&a,b+1},f.prototype.writeUInt16LE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[b]=255&a,this[b+1]=a>>>8):J(this,a,b,!0),b+2},f.prototype.writeUInt16BE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[b]=a>>>8,this[b+1]=255&a):J(this,a,b,!1),b+2},f.prototype.writeUInt32LE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[b+3]=a>>>24,this[b+2]=a>>>16,this[b+1]=a>>>8,this[b]=255&a):K(this,a,b,!0),b+4},f.prototype.writeUInt32BE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[b]=a>>>24,this[b+1]=a>>>16,this[b+2]=a>>>8,this[b+3]=255&a):K(this,a,b,!1),b+4},f.prototype.writeIntLE=function(a,b,c,d){if(a=+a,b|=0,!d){var e=Math.pow(2,8*c-1);I(this,a,b,c,e-1,-e)}var f=0,g=1,h=a<0?1:0;for(this[b]=255&a;++f>0)-h&255;return b+c},f.prototype.writeIntBE=function(a,b,c,d){if(a=+a,b|=0,!d){var e=Math.pow(2,8*c-1);I(this,a,b,c,e-1,-e)}var f=c-1,g=1,h=a<0?1:0;for(this[b+f]=255&a;--f>=0&&(g*=256);)this[b+f]=(a/g>>0)-h&255;return b+c},f.prototype.writeInt8=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,1,127,-128),f.TYPED_ARRAY_SUPPORT||(a=Math.floor(a)),a<0&&(a=255+a+1),this[b]=255&a,b+1},f.prototype.writeInt16LE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[b]=255&a,this[b+1]=a>>>8):J(this,a,b,!0),b+2},f.prototype.writeInt16BE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[b]=a>>>8,this[b+1]=255&a):J(this,a,b,!1),b+2},f.prototype.writeInt32LE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,4,2147483647,-2147483648),f.TYPED_ARRAY_SUPPORT?(this[b]=255&a,this[b+1]=a>>>8,this[b+2]=a>>>16,this[b+3]=a>>>24):K(this,a,b,!0),b+4},f.prototype.writeInt32BE=function(a,b,c){return a=+a,b|=0,c||I(this,a,b,4,2147483647,-2147483648),a<0&&(a=4294967295+a+1),f.TYPED_ARRAY_SUPPORT?(this[b]=a>>>24,this[b+1]=a>>>16,this[b+2]=a>>>8,this[b+3]=255&a):K(this,a,b,!1),b+4},f.prototype.writeFloatLE=function(a,b,c){return M(this,a,b,!0,c)},f.prototype.writeFloatBE=function(a,b,c){return M(this,a,b,!1,c)},f.prototype.writeDoubleLE=function(a,b,c){return N(this,a,b,!0,c)},f.prototype.writeDoubleBE=function(a,b,c){return N(this,a,b,!1,c)},f.prototype.copy=function(a,b,c,d){if(c||(c=0),d||0===d||(d=this.length),b>=a.length&&(b=a.length),b||(b=0),d>0&&d=this.length)throw new RangeError("sourceStart out of bounds");if(d<0)throw new RangeError("sourceEnd out of bounds");d>this.length&&(d=this.length),a.length-b=0;e--)a[e+b]=this[e+c];else if(g<1e3||!f.TYPED_ARRAY_SUPPORT)for(e=0;e=this.length)throw new RangeError("start out of bounds");if(c<0||c>this.length)throw new RangeError("end out of bounds");var d;if("number"==typeof a)for(d=b;d>6),b.push(128|63&d)):d<65536?(b.push(224|d>>12),b.push(128|63&d>>6),b.push(128|63&d)):(b.push(240|d>>18),b.push(128|63&d>>12),b.push(128|63&d>>6),b.push(128|63&d))}return b},d.Utils.appendBox=function(a,b,c){if(b._offset=a._cursor.offset,b._root=a._root?a._root:a,b._raw=a._raw,b._parent=a,-1!==c){if(void 0===c||null===c)return void a.boxes.push(b);var d,e=-1;if("number"==typeof c)e=c;else{if("string"==typeof c)d=c;else{if("object"!=typeof c||!c.type)return void a.boxes.push(b);d=c.type}for(var f=0;f>3,b},f.prototype._readUint=function(a){var b,c,d=null,e=this._cursor.offset-this._raw.byteOffset;switch(a){case 8:d=this._raw.getUint8(e);break;case 16:d=this._raw.getUint16(e);break;case 24:b=this._raw.getUint16(e),c=this._raw.getUint8(e+2),d=(b<<8)+c;break;case 32:d=this._raw.getUint32(e);break;case 64:b=this._raw.getUint32(e),c=this._raw.getUint32(e+4),d=b*Math.pow(2,32)+c}return this._cursor.offset+=a>>3,d},f.prototype._readString=function(a){for(var b="",c=0;c0?a:this._raw.byteLength-(this._cursor.offset-this._offset),c=new DataView(this._raw.buffer,this._cursor.offset,b);return this._cursor.offset+=b,c},f.prototype._readUTF8String=function(){var a=this._readData();return d.Utils.dataViewToString(a)},f.prototype._parseBox=function(){if(this._parsing=!0,this._cursor.offset=this._offset,this._offset+8>this._raw.buffer.byteLength)return void(this._root._incomplete=!0);switch(this._procField("size","uint",32),this._procField("type","string",4),1===this.size&&this._procField("largesize","uint",64),"uuid"===this.type&&this._procFieldArray("usertype",16,"uint",8),this.size){case 0:this._raw=new DataView(this._raw.buffer,this._offset,this._raw.byteLength-this._cursor.offset+8);break;case 1:this._offset+this.size>this._raw.buffer.byteLength?(this._incomplete=!0,this._root._incomplete=!0):this._raw=new DataView(this._raw.buffer,this._offset,this.largesize);break;default:this._offset+this.size>this._raw.buffer.byteLength?(this._incomplete=!0,this._root._incomplete=!0):this._raw=new DataView(this._raw.buffer,this._offset,this.size)}this._incomplete||(this._boxProcessors[this.type]&&this._boxProcessors[this.type].call(this),-1!==this._boxContainers.indexOf(this.type)?this._parseContainerBox():this._data=this._readData())},f.prototype._parseFullBox=function(){this.version=this._readUint(8),this.flags=this._readUint(24)},f.prototype._parseContainerBox=function(){for(this.boxes=[];this._cursor.offset-this._raw.byteOffset>3}else this.size+=a>>3},f.prototype._writeUint=function(a,b){if(this._rawo){var c,d,e=this._cursor.offset-this._rawo.byteOffset;switch(a){case 8:this._rawo.setUint8(e,b);break;case 16:this._rawo.setUint16(e,b);break;case 24:c=(16776960&b)>>8,d=255&b,this._rawo.setUint16(e,c),this._rawo.setUint8(e+2,d);break;case 32:this._rawo.setUint32(e,b);break;case 64:c=Math.floor(b/Math.pow(2,32)),d=b-c*Math.pow(2,32),this._rawo.setUint32(e,c),this._rawo.setUint32(e+4,d)}this._cursor.offset+=a>>3}else this.size+=a>>3},f.prototype._writeString=function(a,b){for(var c=0;c>10&31),96+(this.language>>5&31),96+(31&this.language))),this._procField("pre_defined","uint",16)},f.prototype._boxProcessors.mehd=function(){this._procFullBox(),this._procField("fragment_duration","uint",1==this.version?64:32)},f.prototype._boxProcessors.mfhd=function(){this._procFullBox(),this._procField("sequence_number","uint",32)},f.prototype._boxProcessors.mfro=function(){this._procFullBox(),this._procField("mfra_size","uint",32)},f.prototype._boxProcessors.mp4a=f.prototype._boxProcessors.enca=function(){this._procFieldArray("reserved1",6,"uint",8),this._procField("data_reference_index","uint",16),this._procFieldArray("reserved2",2,"uint",32),this._procField("channelcount","uint",16),this._procField("samplesize","uint",16),this._procField("pre_defined","uint",16),this._procField("reserved3","uint",16),this._procField("samplerate","template",32),this._procField("esds","data",-1)},f.prototype._boxProcessors.mvhd=function(){this._procFullBox(),this._procField("creation_time","uint",1==this.version?64:32),this._procField("modification_time","uint",1==this.version?64:32),this._procField("timescale","uint",32),this._procField("duration","uint",1==this.version?64:32),this._procField("rate","template",32),this._procField("volume","template",16),this._procField("reserved1","uint",16),this._procFieldArray("reserved2",2,"uint",32),this._procFieldArray("matrix",9,"template",32),this._procFieldArray("pre_defined",6,"uint",32),this._procField("next_track_ID","uint",32)},f.prototype._boxProcessors.payl=function(){this._procField("cue_text","utf8")},f.prototype._boxProcessors.pssh=function(){this._procFullBox(),this._procFieldArray("SystemID",16,"uint",8),this._procField("DataSize","uint",32),this._procFieldArray("Data",this.DataSize,"uint",8)},f.prototype._boxProcessors.schm=function(){this._procFullBox(),this._procField("scheme_type","uint",32),this._procField("scheme_version","uint",32),1&this.flags&&this._procField("scheme_uri","string",-1)},f.prototype._boxProcessors.sdtp=function(){this._procFullBox();var a=-1;this._parsing&&(a=this._raw.byteLength-(this._cursor.offset-this._raw.byteOffset)),this._procFieldArray("sample_dependency_table",a,"uint",8)},f.prototype._boxProcessors.sidx=function(){this._procFullBox(),this._procField("reference_ID","uint",32),this._procField("timescale","uint",32),this._procField("earliest_presentation_time","uint",1==this.version?64:32),this._procField("first_offset","uint",1==this.version?64:32),this._procField("reserved","uint",16),this._procField("reference_count","uint",16),this._procEntries("references",this.reference_count,function(a){this._parsing||(a.reference=(1&a.reference_type)<<31,a.reference|=2147483647&a.referenced_size,a.sap=(1&a.starts_with_SAP)<<31,a.sap|=(3&a.SAP_type)<<28,a.sap|=268435455&a.SAP_delta_time),this._procEntryField(a,"reference","uint",32),this._procEntryField(a,"subsegment_duration","uint",32),this._procEntryField(a,"sap","uint",32),this._parsing&&(a.reference_type=a.reference>>31&1,a.referenced_size=2147483647&a.reference,a.starts_with_SAP=a.sap>>31&1,a.SAP_type=a.sap>>28&7,a.SAP_delta_time=268435455&a.sap)})},f.prototype._boxProcessors.smhd=function(){this._procFullBox(),this._procField("balance","uint",16),this._procField("reserved","uint",16)},f.prototype._boxProcessors.ssix=function(){this._procFullBox(),this._procField("subsegment_count","uint",32),this._procEntries("subsegments",this.subsegment_count,function(a){this._procEntryField(a,"ranges_count","uint",32),this._procSubEntries(a,"ranges",a.ranges_count,function(a){this._procEntryField(a,"level","uint",8),this._procEntryField(a,"range_size","uint",24)})})},f.prototype._boxProcessors.stsd=function(){this._procFullBox(),this._procField("entry_count","uint",32),this._procSubBoxes("entries",this.entry_count)},f.prototype._boxProcessors.subs=function(){this._procFullBox(),this._procField("entry_count","uint",32),this._procEntries("entries",this.entry_count,function(a){this._procEntryField(a,"sample_delta","uint",32),this._procEntryField(a,"subsample_count","uint",16),this._procSubEntries(a,"subsamples",a.subsample_count,function(a){this._procEntryField(a,"subsample_size","uint",1===this.version?32:16),this._procEntryField(a,"subsample_priority","uint",8),this._procEntryField(a,"discardable","uint",8),this._procEntryField(a,"codec_specific_parameters","uint",32)})})},f.prototype._boxProcessors.tenc=function(){this._procFullBox(),this._procField("default_IsEncrypted","uint",24),this._procField("default_IV_size","uint",8),this._procFieldArray("default_KID",16,"uint",8)},f.prototype._boxProcessors.tfdt=function(){this._procFullBox(),this._procField("baseMediaDecodeTime","uint",1==this.version?64:32)},f.prototype._boxProcessors.tfhd=function(){this._procFullBox(),this._procField("track_ID","uint",32),1&this.flags&&this._procField("base_data_offset","uint",64),2&this.flags&&this._procField("sample_description_offset","uint",32),8&this.flags&&this._procField("default_sample_duration","uint",32),16&this.flags&&this._procField("default_sample_size","uint",32),32&this.flags&&this._procField("default_sample_flags","uint",32)},f.prototype._boxProcessors.tfra=function(){this._procFullBox(),this._procField("track_ID","uint",32),this._parsing||(this.reserved=0,this.reserved|=(48&this.length_size_of_traf_num)<<4,this.reserved|=(12&this.length_size_of_trun_num)<<2,this.reserved|=3&this.length_size_of_sample_num),this._procField("reserved","uint",32),this._parsing&&(this.length_size_of_traf_num=(48&this.reserved)>>4,this.length_size_of_trun_num=(12&this.reserved)>>2,this.length_size_of_sample_num=3&this.reserved),this._procField("number_of_entry","uint",32),this._procEntries("entries",this.number_of_entry,function(a){this._procEntryField(a,"time","uint",1===this.version?64:32),this._procEntryField(a,"moof_offset","uint",1===this.version?64:32),this._procEntryField(a,"traf_number","uint",8*(this.length_size_of_traf_num+1)),this._procEntryField(a,"trun_number","uint",8*(this.length_size_of_trun_num+1)),this._procEntryField(a,"sample_number","uint",8*(this.length_size_of_sample_num+1))})},f.prototype._boxProcessors.tkhd=function(){this._procFullBox(),this._procField("creation_time","uint",1==this.version?64:32),this._procField("modification_time","uint",1==this.version?64:32),this._procField("track_ID","uint",32),this._procField("reserved1","uint",32),this._procField("duration","uint",1==this.version?64:32),this._procFieldArray("reserved2",2,"uint",32),this._procField("layer","uint",16),this._procField("alternate_group","uint",16),this._procField("volume","template",16),this._procField("reserved3","uint",16),this._procFieldArray("matrix",9,"template",32),this._procField("width","template",32),this._procField("height","template",32)},f.prototype._boxProcessors.trex=function(){this._procFullBox(),this._procField("track_ID","uint",32),this._procField("default_sample_description_index","uint",32),this._procField("default_sample_duration","uint",32),this._procField("default_sample_size","uint",32),this._procField("default_sample_flags","uint",32)},f.prototype._boxProcessors.trun=function(){this._procFullBox(),this._procField("sample_count","uint",32),1&this.flags&&this._procField("data_offset","int",32),4&this.flags&&this._procField("first_sample_flags","uint",32),this._procEntries("samples",this.sample_count,function(a){256&this.flags&&this._procEntryField(a,"sample_duration","uint",32),512&this.flags&&this._procEntryField(a,"sample_size","uint",32),1024&this.flags&&this._procEntryField(a,"sample_flags","uint",32),2048&this.flags&&this._procEntryField(a,"sample_composition_time_offset",1===this.version?"int":"uint",32)})},f.prototype._boxProcessors["url "]=f.prototype._boxProcessors["urn "]=function(){this._procFullBox(),"urn "===this.type&&this._procField("name","string",-1),this._procField("location","string",-1)},f.prototype._boxProcessors.vlab=function(){this._procField("source_label","utf8")},f.prototype._boxProcessors.vmhd=function(){this._procFullBox(),this._procField("graphicsmode","uint",16),this._procFieldArray("opcolor",3,"uint",16)},f.prototype._boxProcessors.vttC=function(){this._procField("config","utf8")},f.prototype._boxProcessors.vtte=function(){}},{}],12:[function(a,b,c){(function(a){function b(a){return Array.isArray?Array.isArray(a):"[object Array]"===q(a)}function d(a){return"boolean"==typeof a}function e(a){return null===a}function f(a){return null==a}function g(a){return"number"==typeof a}function h(a){return"string"==typeof a}function i(a){return"symbol"==typeof a}function j(a){return void 0===a}function k(a){return"[object RegExp]"===q(a)}function l(a){return"object"==typeof a&&null!==a}function m(a){return"[object Date]"===q(a)}function n(a){return"[object Error]"===q(a)||a instanceof Error}function o(a){return"function"==typeof a}function p(a){return null===a||"boolean"==typeof a||"number"==typeof a||"string"==typeof a||"symbol"==typeof a||void 0===a}function q(a){return Object.prototype.toString.call(a)}c.isArray=b,c.isBoolean=d,c.isNull=e,c.isNullOrUndefined=f,c.isNumber=g,c.isString=h,c.isSymbol=i,c.isUndefined=j,c.isRegExp=k,c.isObject=l,c.isDate=m,c.isError=n,c.isFunction=o,c.isPrimitive=p,c.isBuffer=a.isBuffer}).call(this,{isBuffer:a(26)})},{26:26}],13:[function(a,b,c){function d(a){return null===a||void 0===a}function e(a){return!(!a||"object"!=typeof a||"number"!=typeof a.length)&&("function"==typeof a.copy&&"function"==typeof a.slice&&!(a.length>0&&"number"!=typeof a[0]))}function f(a,b,c){var f,k;if(d(a)||d(b))return!1;if(a.prototype!==b.prototype)return!1;if(i(a))return!!i(b)&&(a=g.call(a),b=g.call(b),j(a,b,c));if(e(a)){if(!e(b))return!1;if(a.length!==b.length)return!1;for(f=0;f=0;f--)if(l[f]!=m[f])return!1;for(f=l.length-1;f>=0;f--)if(k=l[f],!j(a[k],b[k],c))return!1;return typeof a==typeof b}var g=Array.prototype.slice,h=a(15),i=a(14),j=b.exports=function(a,b,c){return c||(c={}),a===b||(a instanceof Date&&b instanceof Date?a.getTime()===b.getTime():!a||!b||"object"!=typeof a&&"object"!=typeof b?c.strict?a===b:a==b:f(a,b,c))}},{14:14,15:15}],14:[function(a,b,c){function d(a){return"[object Arguments]"==Object.prototype.toString.call(a)}function e(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Object.prototype.hasOwnProperty.call(a,"callee")&&!Object.prototype.propertyIsEnumerable.call(a,"callee")||!1}var f="[object Arguments]"==function(){return Object.prototype.toString.call(arguments)}();c=b.exports=f?d:e,c.supported=d,c.unsupported=e},{}],15:[function(a,b,c){function d(a){var b=[];for(var c in a)b.push(c);return b}c=b.exports="function"==typeof Object.keys?Object.keys:d,c.shim=d},{}],16:[function(a,b,c){function d(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function e(a){return"function"==typeof a}function f(a){return"number"==typeof a}function g(a){return"object"==typeof a&&null!==a}function h(a){return void 0===a}b.exports=d,d.EventEmitter=d,d.prototype._events=void 0,d.prototype._maxListeners=void 0,d.defaultMaxListeners=10,d.prototype.setMaxListeners=function(a){if(!f(a)||a<0||isNaN(a))throw TypeError("n must be a positive number");return this._maxListeners=a,this},d.prototype.emit=function(a){var b,c,d,f,i,j;if(this._events||(this._events={}),"error"===a&&(!this._events.error||g(this._events.error)&&!this._events.error.length)){if((b=arguments[1])instanceof Error)throw b;throw TypeError('Uncaught, unspecified "error" event.')}if(c=this._events[a],h(c))return!1;if(e(c))switch(arguments.length){case 1:c.call(this);break;case 2:c.call(this,arguments[1]);break;case 3:c.call(this,arguments[1],arguments[2]);break;default:for(d=arguments.length,f=new Array(d-1),i=1;i0&&this._events[a].length>c&&(this._events[a].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[a].length),"function"==typeof console.trace&&console.trace())}return this},d.prototype.on=d.prototype.addListener,d.prototype.once=function(a,b){function c(){this.removeListener(a,c),d||(d=!0,b.apply(this,arguments))}if(!e(b))throw TypeError("listener must be a function");var d=!1;return c.listener=b,this.on(a,c),this},d.prototype.removeListener=function(a,b){var c,d,f,h;if(!e(b))throw TypeError("listener must be a function");if(!this._events||!this._events[a])return this;if(c=this._events[a],f=c.length,d=-1,c===b||e(c.listener)&&c.listener===b)delete this._events[a],this._events.removeListener&&this.emit("removeListener",a,b);else if(g(c)){for(h=f;h-- >0;)if(c[h]===b||c[h].listener&&c[h].listener===b){d=h;break}if(d<0)return this;1===c.length?(c.length=0,delete this._events[a]):c.splice(d,1),this._events.removeListener&&this.emit("removeListener",a,b)}return this},d.prototype.removeAllListeners=function(a){var b,c;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[a]&&delete this._events[a],this;if(0===arguments.length){for(b in this._events)"removeListener"!==b&&this.removeAllListeners(b);return this.removeAllListeners("removeListener"),this._events={},this}if(c=this._events[a],e(c))this.removeListener(a,c);else for(;c.length;)this.removeListener(a,c[c.length-1]);return delete this._events[a],this},d.prototype.listeners=function(a){return this._events&&this._events[a]?e(this._events[a])?[this._events[a]]:this._events[a].slice():[]},d.listenerCount=function(a,b){return a._events&&a._events[b]?e(a._events[b])?1:a._events[b].length:0}},{}],17:[function(a,b,c){c.read=function(a,b,c,d,e){var f,g,h=8*e-d-1,i=(1<>1,k=-7,l=c?e-1:0,m=c?-1:1,n=a[b+l];for(l+=m,f=n&(1<<-k)-1,n>>=-k,k+=h;k>0;f=256*f+a[b+l],l+=m,k-=8);for(g=f&(1<<-k)-1,f>>=-k,k+=d;k>0;g=256*g+a[b+l],l+=m,k-=8);if(0===f)f=1-j;else{if(f===i)return g?NaN:1/0*(n?-1:1);g+=Math.pow(2,d),f-=j}return(n?-1:1)*g*Math.pow(2,f-d)},c.write=function(a,b,c,d,e,f){var g,h,i,j=8*f-e-1,k=(1<>1,m=23===e?Math.pow(2,-24)-Math.pow(2,-77):0,n=d?0:f-1,o=d?1:-1,p=b<0||0===b&&1/b<0?1:0;for(b=Math.abs(b),isNaN(b)||b===1/0?(h=isNaN(b)?1:0,g=k):(g=Math.floor(Math.log(b)/Math.LN2),b*(i=Math.pow(2,-g))<1&&(g--,i*=2),b+=g+l>=1?m/i:m*Math.pow(2,1-l),b*i>=2&&(g++,i/=2),g+l>=k?(h=0,g=k):g+l>=1?(h=(b*i-1)*Math.pow(2,e),g+=l):(h=b*Math.pow(2,l-1)*Math.pow(2,e),g=0));e>=8;a[c+n]=255&h,n+=o,h/=256,e-=8);for(g=g<0;a[c+n]=255&g,n+=o,g/=256,j-=8);a[c+n-o]|=128*p}},{}],18:[function(a,b,c){!function(a,b,c,d,e){function f(a){this.node=a}function g(){this.events=[],this.head=null,this.body=null}function h(){this.styling=null,this.layout=null}function i(){this.styles={}}function j(){this.id=null,this.styleAttrs=null,this.styleRefs=null}function k(){this.regions={}}function l(a){this.kind=a,this.begin=null,this.end=null,this.styleAttrs=null,this.regionID=null,this.sets=null,this.timeContainer=null}function m(){l.call(this,"body")}function n(){l.call(this,"div")}function o(){l.call(this,"p")}function p(){l.call(this,"span"),this.space=null}function q(){l.call(this,"span"),this.space=null,this.text=null}function r(){l.call(this,"br")}function s(){this.id=null,this.begin=null,this.end=null,this.styleAttrs=null,this.sets=null}function t(){this.begin=null,this.end=null,this.qname=null,this.value=null}function u(a){return a&&"xml:id"in a.attributes?a.attributes["xml:id"].value||null:null}function v(a){return a&&"region"in a.attributes?a.attributes.region.value:""}function w(a,b){var c=a&&"timeContainer"in a.attributes?a.attributes.timeContainer.value:null;return c&&"par"!==c?"seq"===c?"seq":(K(b,"Illegal value of timeContainer (assuming 'par')"),"par"):"par"}function x(a){return a&&"style"in a.attributes?a.attributes.style.value.split(" "):[]}function y(a,b){var c={};if(null!==a)for(var e in a.attributes){var f=a.attributes[e].uri+" "+a.attributes[e].local,g=d.byQName[f];if(void 0!==g){var h=g.parse(a.attributes[e].value);null!==h?(c[f]=h,g===d.byName.zIndex&&J(b,"zIndex attribute present but not used by IMSC1 since regions do not overlap")):K(b,"Cannot parse styling attribute "+f+" --\x3e "+a.attributes[e].value)}}return c}function z(a,b,c){for(var d in a.attributes)if(a.attributes[d].uri===b&&a.attributes[d].local===c)return a.attributes[d].value;return null}function A(a,b){var d=z(a,c.ns_ittp,"aspectRatio"),e=null;if(null!==d){var f=/(\d+) (\d+)/,g=f.exec(d);if(null!==g){var h=parseInt(g[1]),i=parseInt(g[2]);0!==h&&0!==i?e=h/i:K(b,"Illegal aspectRatio values (ignoring)")}else K(b,"Malformed aspectRatio attribute (ignoring)")}return e}function B(a,b){var d=z(a,c.ns_ttp,"cellResolution"),e=15,f=32;if(null!==d){var g=/(\d+) (\d+)/,h=g.exec(d);null!==h?(f=parseInt(h[1]),e=parseInt(h[2])):J(b,"Malformed cellResolution value (using initial value instead)")}return{w:f,h:e}}function C(a,b){var d,e=z(a,c.ns_ttp,"frameRate"),f=30;if(null!==e){d=/(\d+)/.exec(e),null!==d?f=parseInt(d[1]):J(b,"Malformed frame rate attribute (using initial value instead)")}var g=z(a,c.ns_ttp,"frameRateMultiplier"),h=1;if(null!==g){ -d=/(\d+) (\d+)/.exec(g),null!==d?h=parseInt(d[1])/parseInt(d[2]):J(b,"Malformed frame rate multiplier attribute (using initial value instead)")}var i=h*f,j=1,k=z(a,c.ns_ttp,"tickRate");if(null===k)null!==e&&(j=i);else{d=/(\d+)/.exec(k),null!==d?j=parseInt(d[1]):J(b,"Malformed tick rate attribute (using initial value instead)")}return{effectiveFrameRate:i,tickRate:j}}function D(a,b){var d=z(a,c.ns_tts,"extent");if(null===d)return null;var f=d.split(" ");if(2!==f.length)return J(b,"Malformed extent (ignoring)"),null;var g=e.parseLength(f[0]),h=e.parseLength(f[1]);return h&&g?{h:h,w:g}:(J(b,"Malformed extent values (ignoring)"),null)}function E(a,b,c){var d,e=/^(\d{2,}):(\d\d):(\d\d(?:\.\d+)?)$/,f=/^(\d{2,}):(\d\d):(\d\d)\:(\d{2,})$/,g=/^(\d+(?:\.\d+)?)f$/,h=/^(\d+(?:\.\d+)?)t$/,i=/^(\d+(?:\.\d+)?)ms$/,j=/^(\d+(?:\.\d+)?)s$/,k=/^(\d+(?:\.\d+)?)h$/,l=/^(\d+(?:\.\d+)?)m$/,m=null;return null!==(d=g.exec(c))?null!==b&&(m=parseFloat(d[1])/b):null!==(d=h.exec(c))?null!==a&&(m=parseFloat(d[1])/a):null!==(d=i.exec(c))?m=parseFloat(d[1])/1e3:null!==(d=j.exec(c))?m=parseFloat(d[1]):null!==(d=k.exec(c))?m=3600*parseFloat(d[1]):null!==(d=l.exec(c))?m=60*parseFloat(d[1]):null!==(d=e.exec(c))?m=3600*parseInt(d[1])+60*parseInt(d[2])+parseFloat(d[3]):null!==(d=f.exec(c))&&null!==b&&(m=3600*parseInt(d[1])+60*parseInt(d[2])+parseInt(d[3])+(null===d[4]?0:parseInt(d[4])/b)),m}function F(a,b,c,d){var e=b&&"seq"===b.timeContainer,f=0;c&&"begin"in c.attributes&&null===(f=E(a.tickRate,a.effectiveFrameRate,c.attributes.begin.value))&&(J(d,"Malformed begin value "+c.attributes.begin.value+" (using 0)"),f=0);var g=e?0:null;c&&"dur"in c.attributes&&null===(g=E(a.tickRate,a.effectiveFrameRate,c.attributes.dur.value))&&J(d,"Malformed dur value "+c.attributes.dur.value+" (ignoring)");var h=null;c&&"end"in c.attributes&&null===(h=E(a.tickRate,a.effectiveFrameRate,c.attributes.end.value))&&J(d,"Malformed end value (ignoring)");var i=0;if(b&&(i=e&&"contents"in b&&b.contents.length>0?b.contents[b.contents.length-1].end:b.begin||0),f+=i,null!==g)h=f+g;else{var j=b&&"end"in b?b.end:Number.POSITIVE_INFINITY;h=null!==h?h+i:j}return{begin:f,end:h}}function G(a,b,c){for(;b.styleRefs.length>0;){var d=b.styleRefs.pop();d in a.styles?(G(a,a.styles[d],c),I(a.styles[d].styleAttrs,b.styleAttrs)):K(c,"Non-existant style id referenced")}}function H(a,b,c,d){for(var e=b.length-1;e>=0;e--){var f=b[e];f in a.styles?I(a.styles[f].styleAttrs,c):K(d,"Non-existant style id referenced")}}function I(a,b){for(var c in a)c in b||(b[c]=a[c])}function J(a,b){if(a&&a.warn&&a.warn(b))throw b}function K(a,b){if(a&&a.error&&a.error(b))throw b}function L(a,b){throw a&&a.fatal&&a.fatal(b),b}function M(a,b){for(var c,d=0,e=a.length-1;d<=e;){c=Math.floor((d+e)/2);var f=a[c];if(fb))return{found:!0,index:c};e=c-1}}return{found:!1,index:d}}a.fromXML=function(a,d,e){var l=b.parser(!0,{xmlns:!0}),u=[],v=[],w=[],x=0,y=null;l.onclosetag=function(a){if(u[0]instanceof i)for(var b in u[0].styles)G(u[0],u[0].styles[b],d);else if(u[0]instanceof o||u[0]instanceof p){if(u[0].contents.length>1){var g,h=[u[0].contents[0]];for(g=1;g0&&e&&"onCloseTag"in e&&e.onCloseTag());w.shift(),v.shift(),u.shift()},l.ontext=function(a){if(void 0===u[0]);else if(u[0]instanceof p||u[0]instanceof o){var b=new q;b.initFromText(y,u[0],a,w[0],d),u[0].contents.push(b)}else u[0]instanceof f&&x>0&&e&&"onText"in e&&e.onText(a)},l.onopentag=function(a){var b=a.attributes["xml:space"];b?w.unshift(b.value):0===w.length?w.unshift("default"):w.unshift(w[0]);var l=a.attributes["xml:lang"];if(l?v.unshift(l.value):0===v.length?v.unshift(""):v.unshift(v[0]),a.uri===c.ns_tt)if("tt"===a.local)null!==y&&L("Two elements at ("+this.line+","+this.column+")"),y=new g,y.initFromNode(a,d),u.unshift(y);else if("head"===a.local)u[0]instanceof g||L("Parent of element is not at ("+this.line+","+this.column+")"),null!==y.head&&L("Second element at ("+this.line+","+this.column+")"),y.head=new h,u.unshift(y.head);else if("styling"===a.local)u[0]instanceof h||L("Parent of element is not at ("+this.line+","+this.column+")"),null!==y.head.styling&&L("Second element at ("+this.line+","+this.column+")"),y.head.styling=new i,u.unshift(y.head.styling);else if("style"===a.local){var q;u[0]instanceof i?(q=new j,q.initFromNode(a,d),q.id?y.head.styling.styles[q.id]=q:K("