From ed3f7bb07881f87b1be9b7ce6ad629f2c8e33efe Mon Sep 17 00:00:00 2001 From: Huong Nguyen Date: Mon, 18 Oct 2021 11:36:01 +0700 Subject: [PATCH] MDL-65943 media_videojs: add videojs-ogvjs plugin VideoJS now support to play Ogg Vorbis/Opus/Theora and WebM VP8/VP9/AV1 video on: - Safari on Mac OS - Safari on iPhone OS - Safari on iPad OS --- lib/wasmlib.php | 129 +++ media/player/videojs/amd/build/loader.min.js | 2 +- .../videojs/amd/build/loader.min.js.map | 2 +- .../videojs/amd/build/local/ogv/ogv.min.js | 2 + .../amd/build/local/ogv/ogv.min.js.map | 1 + .../amd/build/videojs-ogvjs-lazy.min.js | 2 + .../amd/build/videojs-ogvjs-lazy.min.js.map | 1 + media/player/videojs/amd/src/loader.js | 9 + media/player/videojs/amd/src/local/ogv/ogv.js | 2 + .../videojs/amd/src/videojs-ogvjs-lazy.js | 853 ++++++++++++++++++ media/player/videojs/classes/plugin.php | 22 + media/player/videojs/ogvjs/COPYING | 21 + media/player/videojs/ogvjs/COPYING-dav1d.txt | 23 + media/player/videojs/ogvjs/COPYING-ogg.txt | 28 + media/player/videojs/ogvjs/COPYING-opus.txt | 44 + media/player/videojs/ogvjs/COPYING-theora.txt | 28 + media/player/videojs/ogvjs/COPYING-vorbis.txt | 28 + .../player/videojs/ogvjs/LICENSE-nestegg.txt | 13 + media/player/videojs/ogvjs/LICENSE-vpx.txt | 31 + media/player/videojs/ogvjs/PATENTS-vpx.txt | 23 + media/player/videojs/ogvjs/README.md | 382 ++++++++ .../ogvjs/ogv-decoder-audio-opus-wasm.js | 39 + .../ogvjs/ogv-decoder-audio-opus-wasm.wasm | Bin 0 -> 136877 bytes .../ogvjs/ogv-decoder-audio-vorbis-wasm.js | 40 + .../ogvjs/ogv-decoder-audio-vorbis-wasm.wasm | Bin 0 -> 145191 bytes .../ogvjs/ogv-decoder-video-av1-mt-wasm.js | 21 + .../ogvjs/ogv-decoder-video-av1-mt-wasm.wasm | Bin 0 -> 416642 bytes .../ogv-decoder-video-av1-mt-wasm.worker.js | 1 + .../ogvjs/ogv-decoder-video-av1-wasm.js | 44 + .../ogvjs/ogv-decoder-video-av1-wasm.wasm | Bin 0 -> 405673 bytes .../ogvjs/ogv-decoder-video-theora-wasm.js | 43 + .../ogvjs/ogv-decoder-video-theora-wasm.wasm | Bin 0 -> 49045 bytes .../ogvjs/ogv-decoder-video-vp8-mt-wasm.js | 21 + .../ogvjs/ogv-decoder-video-vp8-mt-wasm.wasm | Bin 0 -> 138515 bytes .../ogv-decoder-video-vp8-mt-wasm.worker.js | 1 + .../ogvjs/ogv-decoder-video-vp8-wasm.js | 45 + .../ogvjs/ogv-decoder-video-vp8-wasm.wasm | Bin 0 -> 113396 bytes .../ogvjs/ogv-decoder-video-vp9-mt-wasm.js | 21 + .../ogvjs/ogv-decoder-video-vp9-mt-wasm.wasm | Bin 0 -> 259755 bytes .../ogv-decoder-video-vp9-mt-wasm.worker.js | 1 + .../ogvjs/ogv-decoder-video-vp9-wasm.js | 46 + .../ogvjs/ogv-decoder-video-vp9-wasm.wasm | Bin 0 -> 242794 bytes .../videojs/ogvjs/ogv-demuxer-ogg-wasm.js | 44 + .../videojs/ogvjs/ogv-demuxer-ogg-wasm.wasm | Bin 0 -> 41845 bytes .../videojs/ogvjs/ogv-demuxer-webm-wasm.js | 46 + .../videojs/ogvjs/ogv-demuxer-webm-wasm.wasm | Bin 0 -> 43449 bytes media/player/videojs/ogvjs/ogv-es2017.js | 2 + media/player/videojs/ogvjs/ogv-support.js | 1 + media/player/videojs/ogvjs/ogv-version.js | 1 + .../player/videojs/ogvjs/ogv-worker-audio.js | 1 + .../player/videojs/ogvjs/ogv-worker-video.js | 1 + media/player/videojs/ogvjs/ogv.js | 2 + media/player/videojs/ogvjs/readme_moodle.txt | 10 + media/player/videojs/ogvloader.php | 182 ++++ media/player/videojs/readme_moodle.txt | 27 +- media/player/videojs/thirdpartylibs.xml | 20 + 56 files changed, 2303 insertions(+), 3 deletions(-) create mode 100644 lib/wasmlib.php create mode 100644 media/player/videojs/amd/build/local/ogv/ogv.min.js create mode 100644 media/player/videojs/amd/build/local/ogv/ogv.min.js.map create mode 100644 media/player/videojs/amd/build/videojs-ogvjs-lazy.min.js create mode 100644 media/player/videojs/amd/build/videojs-ogvjs-lazy.min.js.map create mode 100644 media/player/videojs/amd/src/local/ogv/ogv.js create mode 100644 media/player/videojs/amd/src/videojs-ogvjs-lazy.js create mode 100644 media/player/videojs/ogvjs/COPYING create mode 100644 media/player/videojs/ogvjs/COPYING-dav1d.txt create mode 100644 media/player/videojs/ogvjs/COPYING-ogg.txt create mode 100644 media/player/videojs/ogvjs/COPYING-opus.txt create mode 100644 media/player/videojs/ogvjs/COPYING-theora.txt create mode 100644 media/player/videojs/ogvjs/COPYING-vorbis.txt create mode 100644 media/player/videojs/ogvjs/LICENSE-nestegg.txt create mode 100644 media/player/videojs/ogvjs/LICENSE-vpx.txt create mode 100644 media/player/videojs/ogvjs/PATENTS-vpx.txt create mode 100644 media/player/videojs/ogvjs/README.md create mode 100644 media/player/videojs/ogvjs/ogv-decoder-audio-opus-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-audio-opus-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-audio-vorbis-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-audio-vorbis-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.worker.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-av1-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-av1-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-theora-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-theora-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp8-mt-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp8-mt-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp8-mt-wasm.worker.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp8-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp8-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.worker.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp9-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-decoder-video-vp9-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-demuxer-ogg-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-demuxer-ogg-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-demuxer-webm-wasm.js create mode 100644 media/player/videojs/ogvjs/ogv-demuxer-webm-wasm.wasm create mode 100644 media/player/videojs/ogvjs/ogv-es2017.js create mode 100644 media/player/videojs/ogvjs/ogv-support.js create mode 100644 media/player/videojs/ogvjs/ogv-version.js create mode 100644 media/player/videojs/ogvjs/ogv-worker-audio.js create mode 100644 media/player/videojs/ogvjs/ogv-worker-video.js create mode 100644 media/player/videojs/ogvjs/ogv.js create mode 100644 media/player/videojs/ogvjs/readme_moodle.txt create mode 100644 media/player/videojs/ogvloader.php diff --git a/lib/wasmlib.php b/lib/wasmlib.php new file mode 100644 index 00000000000..783b51e71c2 --- /dev/null +++ b/lib/wasmlib.php @@ -0,0 +1,129 @@ +. + +/** + * This file contains various Web Assembly related functions, + * all functions here are self-contained and can be used in ABORT_AFTER_CONFIG scripts. + * + * @package core_lib + * @copyright 2021 Huong Nguyen + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Send Web Assembly file content with as much caching as possible + * + * @param string $wasmpath Path to Web Assembly file + * @param string $etag Etag + * @param string $filename File name to be served + */ +function wasm_send_cached(string $wasmpath, string $etag, string $filename = 'wasm.php'): void { + require(__DIR__ . '/xsendfilelib.php'); + + // 90 days only - based on Moodle point release cadence being every 3 months. + $lifetime = 60 * 60 * 24 * 90; + + header('Etag: "' . $etag . '"'); + header('Content-Disposition: inline; filename="' . $filename . '"'); + header('Last-Modified: ' . gmdate('D, d M Y H:i:s', filemtime($wasmpath)) . ' GMT'); + header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $lifetime) . ' GMT'); + header('Pragma: '); + header('Cache-Control: public, max-age=' . $lifetime . ', immutable'); + header('Accept-Ranges: none'); + header('Content-Type: application/wasm'); + + if (xsendfile($wasmpath)) { + die; + } + + if (!min_enable_zlib_compression()) { + header('Content-Length: ' . filesize($wasmpath)); + } + + readfile($wasmpath); + die; +} + +/** + * Send Web Assembly file without any caching + * + * @param string $wasm Web Assembly file content + * @param string $filename File name to be served + */ +function wasm_send_uncached(string $wasm, string $filename = 'wasm.php'): void { + header('Content-Disposition: inline; filename="' . $filename . '"'); + header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT'); + header('Expires: ' . gmdate('D, d M Y H:i:s', time() + 2) . ' GMT'); + header('Pragma: '); + header('Accept-Ranges: none'); + header('Content-Type: application/wasm'); + header('Content-Length: ' . strlen($wasm)); + + echo $wasm; + die; +} + +/** + * Send Web Assembly file not modified headers + * + * @param int $lastmodified Last modified timestamp + * @param string $etag Etag + */ +function wasm_send_unmodified(int $lastmodified, string $etag): void { + // 90 days only - based on Moodle point release cadence being every 3 months. + $lifetime = 60 * 60 * 24 * 90; + header('HTTP/1.1 304 Not Modified'); + header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $lifetime) . ' GMT'); + header('Cache-Control: public, max-age=' . $lifetime); + header('Content-Type: application/wasm'); + header('Etag: "' . $etag . '"'); + if ($lastmodified) { + header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $lastmodified) . ' GMT'); + } + die; +} + +/** + * Create cache file for Web Assembly content + * + * @param string $file full file path to cache file + * @param string $content Web Assembly content + */ +function wasm_write_cache_file_content(string $file, string $content): void { + global $CFG; + + clearstatcache(); + if (!file_exists(dirname($file))) { + @mkdir(dirname($file), $CFG->directorypermissions, true); + } + + // Prevent serving of incomplete file from concurrent request, + // the rename() should be more atomic than fwrite(). + ignore_user_abort(true); + if ($fp = fopen($file . '.tmp', 'xb')) { + fwrite($fp, $content); + fclose($fp); + rename($file . '.tmp', $file); + @chmod($file, $CFG->filepermissions); + @unlink($file . '.tmp'); // Just in case anything fails. + } + ignore_user_abort(false); + if (connection_aborted()) { + die; + } +} diff --git a/media/player/videojs/amd/build/loader.min.js b/media/player/videojs/amd/build/loader.min.js index 4bbd57621f3..a9974cd906a 100644 --- a/media/player/videojs/amd/build/loader.min.js +++ b/media/player/videojs/amd/build/loader.min.js @@ -1,2 +1,2 @@ -define ("media_videojs/loader",["exports","core/config","core/event","jquery","core/ajax","core/localstorage","core/notification"],function(a,b,c,d,e,f,g){"use strict";Object.defineProperty(a,"__esModule",{value:!0});a.setUp=void 0;b=h(b);c=h(c);d=h(d);e=h(e);f=h(f);g=h(g);var o="undefined"!=typeof window?window:"undefined"!=typeof self?self:"undefined"!=typeof global?global:{};function h(a){return a&&a.__esModule?a:{default:a}}function i(a,b){return n(a)||m(a,b)||k(a,b)||j()}function j(){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 k(a,b){if(!a)return;if("string"==typeof a)return l(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);if("Object"===c&&a.constructor)c=a.constructor.name;if("Map"===c||"Set"===c)return Array.from(c);if("Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c))return l(a,b)}function l(a,b){if(null==b||b>a.length)b=a.length;for(var c=0,d=Array(b);ca.length)b=a.length;for(var c=0,d=Array(b);c.\n\n/**\n * Video JS loader.\n *\n * This takes care of applying the filter on content which was dynamically loaded.\n *\n * @module media_videojs/loader\n * @copyright 2016 Frédéric Massart - FMCorz.net\n * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\nimport Config from 'core/config';\nimport Event from 'core/event';\nimport jQuery from 'jquery';\nimport Ajax from 'core/ajax';\nimport LocalStorage from 'core/localstorage';\nimport Notification from 'core/notification';\n\n/** @var {bool} Whether this is the first load of videojs module */\nlet firstLoad;\n\n/** @var {string} The language that is used in the player */\nlet language;\n\n/** @var {object} List of languages and translations for the current page */\nlet langStringCache;\n\n/**\n * Set-up.\n *\n * Adds the listener for the event to then notify video.js.\n * @param {string} lang Language to be used in the player\n */\nexport const setUp = (lang) => {\n language = lang;\n firstLoad = true;\n // Notify Video.js about the nodes already present on the page.\n notifyVideoJS(null, jQuery('body'));\n // We need to call popover automatically if nodes are added to the page later.\n Event.getLegacyEvents().done((events) => {\n jQuery(document).on(events.FILTER_CONTENT_UPDATED, notifyVideoJS);\n });\n};\n\n/**\n * Notify video.js of new nodes.\n *\n * @param {Event} e The event.\n * @param {NodeList} nodes List of new nodes.\n */\nconst notifyVideoJS = (e, nodes) => {\n const selector = '.mediaplugin_videojs';\n const langStrings = getLanguageJson();\n\n // Find the descendants matching the expected parent of the audio and video\n // tags. Then also addBack the nodes matching the same selector. Finally,\n // we find the audio and video tags contained in those parents. Kind thanks\n // to jQuery for the simplicity.\n nodes.find(selector)\n .addBack(selector)\n .find('audio, video').each((index, element) => {\n const id = jQuery(element).attr('id');\n const config = jQuery(element).data('setup-lazy');\n const modulePromises = [import('media_videojs/video-lazy')];\n\n if (config.techOrder && config.techOrder.indexOf('youtube') !== -1) {\n // Add YouTube to the list of modules we require.\n modulePromises.push(import('media_videojs/Youtube-lazy'));\n }\n if (config.techOrder && config.techOrder.indexOf('flash') !== -1) {\n // Add Flash to the list of modules we require.\n modulePromises.push(import('media_videojs/videojs-flash-lazy'));\n }\n Promise.all([langStrings, ...modulePromises])\n .then(([langJson, videojs]) => {\n if (firstLoad) {\n videojs.options.flash.swf = `${Config.wwwroot}/media/player/videojs/videojs/video-js.swf`;\n videojs.options.playbackRates = [0.5, 0.75, 1, 1.25, 1.5, 1.75, 2];\n videojs.options.userActions = {\n hotkeys: true,\n };\n videojs.addLanguage(language, langJson);\n\n firstLoad = false;\n }\n videojs(id, config);\n return;\n })\n .catch(Notification.exception);\n });\n};\n\n/**\n * Returns the json object of the language strings to be used in the player.\n *\n * @returns {Promise}\n */\nconst getLanguageJson = () => {\n if (langStringCache) {\n return Promise.resolve(langStringCache);\n }\n\n const cacheKey = `media_videojs/${language}`;\n\n const rawCacheContent = LocalStorage.get(cacheKey);\n if (rawCacheContent) {\n const cacheContent = JSON.parse(rawCacheContent);\n\n langStringCache = cacheContent;\n\n return Promise.resolve(langStringCache);\n }\n\n const request = {\n methodname: 'media_videojs_get_language',\n args: {\n lang: language,\n },\n };\n\n return Ajax.call([request])[0]\n .then(langStringData => {\n LocalStorage.set(cacheKey, langStringData);\n\n return langStringData;\n })\n .then(result => JSON.parse(result))\n .then(langStrings => {\n langStringCache = langStrings;\n\n return langStrings;\n });\n};\n"],"file":"loader.min.js"} \ No newline at end of file +{"version":3,"sources":["../src/loader.js"],"names":["firstLoad","language","langStringCache","setUp","lang","notifyVideoJS","Event","getLegacyEvents","done","events","document","on","FILTER_CONTENT_UPDATED","e","nodes","langStrings","getLanguageJson","find","addBack","each","index","element","id","attr","config","data","modulePromises","techOrder","indexOf","push","ogvjs","worker","wasm","base","Config","wwwroot","jsrev","Promise","all","then","langJson","videojs","options","flash","swf","playbackRates","userActions","hotkeys","addLanguage","catch","Notification","exception","resolve","cacheKey","rawCacheContent","LocalStorage","get","cacheContent","JSON","parse","request","methodname","args","Ajax","call","langStringData","set","result"],"mappings":"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","sourcesContent":["// This file is part of Moodle - http://moodle.org/\n//\n// Moodle is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// Moodle is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with Moodle. If not, see .\n\n/**\n * Video JS loader.\n *\n * This takes care of applying the filter on content which was dynamically loaded.\n *\n * @module media_videojs/loader\n * @copyright 2016 Frédéric Massart - FMCorz.net\n * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\nimport Config from 'core/config';\nimport Event from 'core/event';\nimport jQuery from 'jquery';\nimport Ajax from 'core/ajax';\nimport LocalStorage from 'core/localstorage';\nimport Notification from 'core/notification';\n\n/** @var {bool} Whether this is the first load of videojs module */\nlet firstLoad;\n\n/** @var {string} The language that is used in the player */\nlet language;\n\n/** @var {object} List of languages and translations for the current page */\nlet langStringCache;\n\n/**\n * Set-up.\n *\n * Adds the listener for the event to then notify video.js.\n * @param {string} lang Language to be used in the player\n */\nexport const setUp = (lang) => {\n language = lang;\n firstLoad = true;\n // Notify Video.js about the nodes already present on the page.\n notifyVideoJS(null, jQuery('body'));\n // We need to call popover automatically if nodes are added to the page later.\n Event.getLegacyEvents().done((events) => {\n jQuery(document).on(events.FILTER_CONTENT_UPDATED, notifyVideoJS);\n });\n};\n\n/**\n * Notify video.js of new nodes.\n *\n * @param {Event} e The event.\n * @param {NodeList} nodes List of new nodes.\n */\nconst notifyVideoJS = (e, nodes) => {\n const selector = '.mediaplugin_videojs';\n const langStrings = getLanguageJson();\n\n // Find the descendants matching the expected parent of the audio and video\n // tags. Then also addBack the nodes matching the same selector. Finally,\n // we find the audio and video tags contained in those parents. Kind thanks\n // to jQuery for the simplicity.\n nodes.find(selector)\n .addBack(selector)\n .find('audio, video').each((index, element) => {\n const id = jQuery(element).attr('id');\n const config = jQuery(element).data('setup-lazy');\n const modulePromises = [import('media_videojs/video-lazy')];\n\n if (config.techOrder && config.techOrder.indexOf('youtube') !== -1) {\n // Add YouTube to the list of modules we require.\n modulePromises.push(import('media_videojs/Youtube-lazy'));\n }\n if (config.techOrder && config.techOrder.indexOf('flash') !== -1) {\n // Add Flash to the list of modules we require.\n modulePromises.push(import('media_videojs/videojs-flash-lazy'));\n }\n if (config.techOrder && config.techOrder.indexOf('OgvJS') !== -1) {\n config.ogvjs = {\n worker: true,\n wasm: true,\n base: Config.wwwroot + '/media/player/videojs/ogvloader.php/' + Config.jsrev + '/'\n };\n // Add Ogv.JS to the list of modules we require.\n modulePromises.push(import('media_videojs/videojs-ogvjs-lazy'));\n }\n Promise.all([langStrings, ...modulePromises])\n .then(([langJson, videojs]) => {\n if (firstLoad) {\n videojs.options.flash.swf = `${Config.wwwroot}/media/player/videojs/videojs/video-js.swf`;\n videojs.options.playbackRates = [0.5, 0.75, 1, 1.25, 1.5, 1.75, 2];\n videojs.options.userActions = {\n hotkeys: true,\n };\n videojs.addLanguage(language, langJson);\n\n firstLoad = false;\n }\n videojs(id, config);\n return;\n })\n .catch(Notification.exception);\n });\n};\n\n/**\n * Returns the json object of the language strings to be used in the player.\n *\n * @returns {Promise}\n */\nconst getLanguageJson = () => {\n if (langStringCache) {\n return Promise.resolve(langStringCache);\n }\n\n const cacheKey = `media_videojs/${language}`;\n\n const rawCacheContent = LocalStorage.get(cacheKey);\n if (rawCacheContent) {\n const cacheContent = JSON.parse(rawCacheContent);\n\n langStringCache = cacheContent;\n\n return Promise.resolve(langStringCache);\n }\n\n const request = {\n methodname: 'media_videojs_get_language',\n args: {\n lang: language,\n },\n };\n\n return Ajax.call([request])[0]\n .then(langStringData => {\n LocalStorage.set(cacheKey, langStringData);\n\n return langStringData;\n })\n .then(result => JSON.parse(result))\n .then(langStrings => {\n langStringCache = langStrings;\n\n return langStrings;\n });\n};\n"],"file":"loader.min.js"} \ No newline at end of file diff --git a/media/player/videojs/amd/build/local/ogv/ogv.min.js b/media/player/videojs/amd/build/local/ogv/ogv.min.js new file mode 100644 index 00000000000..3fac86935b2 --- /dev/null +++ b/media/player/videojs/amd/build/local/ogv/ogv.min.js @@ -0,0 +1,2 @@ +function _createForOfIteratorHelper(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=_unsupportedIterableToArray(e))){var t=0,a=function(){};return{s:a,n:function n(){if(t>=e.length)return{done:!0};return{done:!1,value:e[t++]}},e:function e(e){throw e},f:a}}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 r,d=!0,n=!1,s;return{s:function s(){r=e[Symbol.iterator]()},n:function n(){var e=r.next();d=e.done;return e},e:function e(e){n=!0;s=e},f:function f(){try{if(!d&&null!=r.return)r.return()}finally{if(n)throw s}}}}function _unsupportedIterableToArray(e,t){if(!e)return;if("string"==typeof e)return _arrayLikeToArray(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);if("Object"===a&&e.constructor)a=e.constructor.name;if("Map"===a||"Set"===a)return Array.from(a);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return _arrayLikeToArray(e,t)}function _arrayLikeToArray(e,t){if(null==t||t>e.length)t=e.length;for(var a=0,r=Array(t);aa||a!==Math.round(a))throw"Invalid channel count for BufferQueue";this.channels=a,this.bufferSize=e,this.flush()}e.prototype.flush=function(){this._buffers=[],this._pendingBuffer=this.createBuffer(this.bufferSize),this._pendingPos=0},e.prototype.sampleCount=function(){var a=0;return this._buffers.forEach(function(e){a+=e[0].length}),a},e.prototype.createBuffer=function(a){for(var e=[],t=0;t=r)return a;for(var i=[],d=0;de?i&&0t&&(_=Math.SQRT1_2);for(var c=0,p;c=t&&(p=0);var f=a[p],y=new Float32Array(l);i(f,y,this._resampleLastSampleData?this._resampleLastSampleData[p]:void 0,_),d.push(y)}return this._resampleFractional=u-l,this._resampleLastSampleData=a,d},e.prototype.bufferData=function(a){if(!this._backend)throw"Invalid state: AudioFeeder cannot bufferData before init";var e=this._resample(a);e=this._tempoChanger.process(e),this._backend.appendBuffer(e)},e.prototype.getPlaybackState=function(){if(this._backend){var t=this._backend.getPlaybackState();return t.outputPlaybackPosition=t.playbackPosition,t.playbackPosition=this._tempoChanger.mapOutputToInputTime(t.outputPlaybackPosition),t}throw"Invalid state: AudioFeeder cannot getPlaybackState before init"},e.prototype.waitUntilReady=function(t){if(!this._backend)throw"Invalid state: AudioFeeder cannot waitUntilReady before init";this._backend.waitUntilReady(t)},e.prototype.start=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot start before init";this._backend.start()},e.prototype.stop=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot stop before init";this._backend.stop()},e.prototype.flush=function(){if(this._resampleFractional=0,this._resampleLastSampleData=void 0,!this._backend)throw"Invalid state: AudioFeeder cannot flush before init";this._tempoChanger.flush(this.durationBuffered),this._backend.flush()},e.prototype.close=function(){this._backend&&(this._backend.close(),this._backend=null)},e.prototype.onstarved=null,e.prototype.onbufferlow=null,e.isSupported=function(){return!!Float32Array&&o.isSupported()},e.initSharedAudioContext=function(){return o.isSupported()?o.initSharedAudioContext():null},a.exports=e}()},function(a,e,r){!function(){var o=window.AudioContext||window.webkitAudioContext,u=r(0),_=r(3);function n(a,e,t){var r=t.audioContext||n.initSharedAudioContext();if(this._context=r,this.output=t.output||r.destination,this.rate=r.sampleRate,this.channels=2,t.bufferSize&&(this.bufferSize=0|t.bufferSize),this.bufferThreshold=2*this.bufferSize,this._bufferQueue=new u(this.channels,this.bufferSize),this._playbackTimeAtBufferTail=r.currentTime,this._queuedTime=0,this._delayedTime=0,this._dropped=0,this._liveBuffer=this._bufferQueue.createBuffer(this.bufferSize),r.createScriptProcessor)this._node=r.createScriptProcessor(this.bufferSize,0,this.channels);else{if(!r.createJavaScriptNode)throw new Error("Bad version of web audio API?");this._node=r.createJavaScriptNode(this.bufferSize,0,this.channels)}}n.prototype.bufferSize=4096,n.prototype.bufferThreshold=8192,n.prototype._volume=1,Object.defineProperty(n.prototype,"volume",{get:function get(){return this._volume},set:function set(t){this._volume=+t}}),n.prototype._muted=!1,Object.defineProperty(n.prototype,"muted",{get:function get(){return this._muted},set:function set(t){this._muted=!!t}}),n.prototype._audioProcess=function(a){var e,r,o,d,n;n="number"==typeof a.playbackTime?a.playbackTime:this._context.currentTime+this.bufferSize/this.rate;var p=this._playbackTimeAtBufferTail;if(pt?(this._bufferQueue.prependBuffer(this._liveBuffer),this._bufferQueue.prependBuffer(this._bufferQueue.createBuffer(e-t))):this._bufferQueue.prependBuffer(this._bufferQueue.trimBuffer(this._liveBuffer,t-e,e)),this._playbackTimeAtBufferTail-=a}this._node.onaudioprocess=null,this._node.disconnect()}},n.prototype.flush=function(){this._bufferQueue.flush()},n.prototype.close=function(){this.stop(),this._context=null},n.prototype.onstarved=null,n.prototype.onbufferlow=null,n.isSupported=function(){return!!o},n.sharedAudioContext=null,n.initSharedAudioContext=function(){if(!n.sharedAudioContext&&n.isSupported()){var t,a=new o;if(a.createScriptProcessor)t=a.createScriptProcessor(1024,0,2);else{if(!a.createJavaScriptNode)throw new Error("Bad version of web audio API?");t=a.createJavaScriptNode(1024,0,2)}t.connect(a.destination),t.disconnect(),n.sharedAudioContext=a}return n.sharedAudioContext},a.exports=n}()},function(t){t.exports=function(){if(void 0!==window.setImmediate)return window.setImmediate;if(window&&window.postMessage){var a=[];return window.addEventListener("message",function(e){if(e.source===window){var t=e.data;if("object"==_typeof(t)&&t.nextTickBrowserPingMessage){var r=a.pop();r&&r()}}}),function(e){a.push(e),window.postMessage({nextTickBrowserPingMessage:!0},document.location.toString())}}return function(t){setTimeout(t,0)}}()},function(t){var e;window,e=function(){return function(a){var e={};function o(t){if(e[t])return e[t].exports;var r=e[t]={i:t,l:!1,exports:{}};return a[t].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=a,o.c=e,o.d=function(a,e,t){o.o(a,e)||Object.defineProperty(a,e,{enumerable:!0,get:t})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(a,r){if(1&r&&(a=o(a)),8&r)return a;if(4&r&&"object"==_typeof(a)&&a&&a.__esModule)return a;var t=Object.create(null);if(o.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:a}),2&r&&"string"!=typeof a)for(var i in a){o.d(t,i,function(e){return a[e]}.bind(null,i))}return t},o.n=function(a){var e=a&&a.__esModule?function(){return a.default}:function(){return a};return o.d(e,"a",e),e},o.o=function(a,e){return Object.prototype.hasOwnProperty.call(a,e)},o.p="",o(o.s=1)}([function(t){t.exports={float_array:function float_array(t){return new Float32Array(t)},blit:function blit(a,e,t,r,o){t.set(a.subarray(e,e+o),r)}}},function(a,e,t){var r,o;r=t(0),o=t(2),a.exports=function(a){var n=(a=a||{}).sampleRate||44100,t=a.wsizeLog||11,Q=a.tempo||1,K=(a.numChannels,Math.pow(2,50/1200)-1),Z=1<>1),b=r.float_array(l),T=r.float_array(l),v=r.float_array(l),k=r.float_array(l),P=r.float_array(l),E=r.float_array(l),x=1+(l>>1),ee=[0,0],te=[],O=[],F=[],A=[];for(u=0;2>u;u++){te.push(r.float_array(x)),O.push(r.float_array(x)),F.push(r.float_array(x)),A.push(r.float_array(l))}var S=r.float_array(x),C=r.float_array(x),D=0,B=0,w=[{in_time:0,out_time:0,tempo:Q}],I=0,ae=0,re=1,oe=0,ie=0,de=0,ne=0,se={mapOutputToInputTime:function mapOutputToInputTime(a){for(var e=w.length-1;ae;e++){for(var r=0;rt&&(t=a[r])}var o=1e-8*t,d=1,n=1;for(e[0]=1,r=2;ro&&a[r]>a[r-1]&&a[r]>=a[r+1]){var l=r+(a[r-1]-a[r+1])/(2*(a[r-1]-2*a[r]+a[r+1]));l-e[d-1]>u?(e[d++]=l,n=r):a[r]>a[n]&&(e[d-1]=l,n=r)}}return d}(p,f),y=O[d],T=F[d];if(0!=a&&0!=g){var h=0;for(N=0;Nl[h]&&h!=u;){++h}var v=h;0.1*p[Math.round(U)]){var P=Y(e,t,U),R=_[v]+c[v]+J(P,U,_[v],l[v],i)-P;y[N]=P,T[N]=R,S[N]=Math.cos(R),C[N]=Math.sin(R)}else y[N]=Y(e,t,U),T[N]=0,S[N]=1,C[N]=0}f[g]=2*Z;var w=f[v=0],D=f[v+1],B=S[v],V=C[v];for(m=1;m=w&&m-w>D-m&&(w=f[++v],D=f[v+1],B=S[v],V=C[v]);var M=e[m]*B-t[m]*V,G=e[m]*V+t[m]*B;e[m]=M,t[m]=G}}else for(var N=0,U;Ni&&(i=Math.abs(2*s.m_re[e]))}for(e=0;ei&&(i=Math.abs(s.m_re[e+$+a]+s.m_im[e]))}for(e=Z-$;ei&&(i=Math.abs(2*s.m_im[e]))}var m=1/Math.floor(1*Z/(2*$));for(n*i>m&&(n=m/i),e=0;ev&&(v=ne);var k=r.float_array(v);r.blit(_,0,k,0,ne);for(var S=0,w=ne,C=0,I=0,V;;){V=Z+p-de;if(S+V>a){r.blit(o,S,c,de,a-S),de+=a-S,S=a;break}0>=V?de-=2*p:(r.blit(o,S,c,de,V),S+=V,de=Z-p),I=q(),D+=2*p/n,B+=I/n,0>(C=w+I-v)&&(C=0),r.blit(_,0,k,w,I-C),w+=I}r.blit(_,I-C,_,0,C),ne=C;var L=[];for(u=0;u>=1}n.m_revTgt[e]=i}n.twiddleRe=r.float_array(n.m_logN),n.twiddleIm=r.float_array(n.m_logN);for(var m=1,g=0,y;g>1,d=r>>1,s=r;if(a)for(var h=1/r,f=0;f>=1,d>>=1,s>>=1}for(var R,H,j=n.m_revTgt,S=0;SS&&(H=e[R=j[S]],e[R]=e[S],e[S]=H,H=t[R],t[R]=t[S],t[S]=H)}};var b=o>>1;return n.unpack=function(t,e,a,r){t[0]=n.m_re[0],a[0]=n.m_im[0],e[0]=r[0]=0,t[b]=n.m_re[b],a[b]=n.m_im[b],e[b]=r[b]=0;for(var i=1;i=this._timeUpdateInterval)&&(this._lastTimeUpdate=e,this._fireEventAsync("timeupdate")),this._codec&&o.yCbCrBuffer&&this._codec.recycleFrame(o.yCbCrBuffer)}},{key:"_seekStream",value:function _seekStream(t){var a=this;this._stream.seeking&&this._stream.abort(),this._stream.buffering&&this._stream.abort(),this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._stream.seek(t).then(function(){a._readBytesAndWait()}).catch(function(t){a._onStreamError(t)})}},{key:"_onStreamError",value:function _onStreamError(t){"AbortError"===t.name?this._log("i/o promise canceled; ignoring"):(this._log("i/o error: "+t),this._mediaError=new _.default(_.default.MEDIA_ERR_NETWORK,t+""),this._state="ERROR",this._stopPlayback())}},{key:"_seek",value:function _seek(a,e){var t=this;if(this._log("requested seek to "+a+", mode "+e),this.readyState==this.HAVE_NOTHING)return this._log("not yet loaded; saving seek position for later"),void(this._initialSeekTime=a);if(this._stream&&!this._stream.seekable)throw new Error("Cannot seek a non-seekable stream");if(this._codec&&!this._codec.seekable)throw new Error("Cannot seek in a non-seekable file");var r=function(r){t._stream&&t._stream.buffering&&t._stream.abort(),t._stream&&t._stream.seeking&&t._stream.abort(),t._actionQueue.splice(0,t._actionQueue.length),t._stopPlayback(),t._prebufferingAudio=!1,t._audioFeeder&&t._audioFeeder.flush(),t._state="SEEKING",t._seekTargetTime=a,t._seekMode=e,t._codec?t._codec.flush(r):r()};r(function(){t._isProcessing()||t._pingProcessing(0)}),this._actionQueue.push(function(){r(function(){t._doSeek(a)})})}},{key:"_doSeek",value:function _doSeek(a){var r=this;this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._state="SEEKING",this._seekTargetTime=a,this._lastSeekPosition=-1,this._decodedFrames=[],this._pendingFrames=[],this._pendingFrame=0,this._pendingAudio=0,this._didSeek=!1,this._codec.seekToKeypoint(a,function(e){if(e)return r._seekState="LINEAR_TO_TARGET",r._fireEventAsync("seeking"),r._didSeek?void 0:void r._pingProcessing();r._codec.getKeypointOffset(a,function(t){0o?this._codec.process(function(t){if(t)a._pingProcessing();else if(a._streamEnded){if(a._log("stream ended during bisection seek"),!a._seekBisector.right())throw a._log("failed going back"),new Error("not sure what to do")}else a._readBytesAndWait()}):o-r/2>this._bisectTargetTime?this._seekBisector.left()||(this._log("close enough (left)"),this._seekTargetTime=o,this._continueSeekedPlayback()):o+r/2=2*this._audioFeeder.bufferThreshold&&(!r.hasVideo||this._decodedFrames.length>=this._framePipelineDepth)||this._dataEnded)&&(this._log("prebuffering audio done; buffered to "+this._audioFeeder.durationBuffered),this._startPlayback(D),this._prebufferingAudio=!1),C.dropped!=this._droppedAudio&&this._log("dropped "+(C.dropped-this._droppedAudio)),C.delayed!=this._delayedAudio&&this._log("delayed "+(C.delayed-this._delayedAudio)),this._droppedAudio=C.dropped,this._delayedAudio=C.delayed,(e=this._audioFeeder.durationBuffered<=2*this._audioFeeder.bufferThreshold)&&(this._codec.audioReady?this._pendingAudio>=this._audioPipelineDepth&&(this._log("audio decode disabled: "+this._pendingAudio+" packets in flight"),e=!1):e=!1)):(D=this._getPlaybackTime(),e=this._codec.audioReady&&this._audioEndTimestamp=V){for(var l=-1,L=0;L=m){this._log("skipping late frame at "+this._decodedFrames[0].frameEndTimestamp+" vs "+D+", expect to see keyframe at "+p);for(var g=0,G;g=B||(o=!1)}if(n){this._log("play loop: ready to decode frame; thread depth: "+this._pendingFrame+", have buffered: "+this._decodedFrames.length),0==this._videoInfo.fps&&0-1/256?this._nextProcessingTimer=setTimeout(function(){t._pingProcessing()},a):this._depth?this._needProcessing=!0:this._doProcessing()}}},{key:"_startProcessingVideo",value:function _startProcessingVideo(a){var r=this;if(!this._started&&!this._codec){this._framesProcessed=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._started=!0,this._ended=!1;var o={base:this._options.base,worker:this._enableWorker,threading:this._enableThreading,simd:this._enableSIMD};this._detectedType&&(o.type=this._detectedType),this._codec=new f.default(o),this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastDrawingTime=0,this._lastProxyTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastFrameDrawingTime=0,this._currentVideoCpuTime=0,this._codec.onseek=function(t){r._didSeek=!0,r._stream&&r._seekStream(t)},this._codec.init(function(){r._codec.receiveInput(a,function(){r._readBytesAndWait()})})}}},{key:"_loadCodec",value:function _loadCodec(a){var e=this;this._stream.read(1024).then(function(r){var t=new Uint8Array(r);4r.offsetWidth/r.offsetHeight){var i=r.offsetWidth/o,d=(r.offsetHeight-i)/2;a.style.width="100%",a.style.height=i+"px",a.style.marginLeft=0,a.style.marginRight=0,a.style.marginTop=d+"px",a.style.marginBottom=d+"px"}else{var n=r.offsetHeight*o,s=(r.offsetWidth-n)/2;a.style.width=n+"px",a.style.height="100%",a.style.marginLeft=s+"px",a.style.marginRight=s+"px",a.style.marginTop=0,a.style.marginBottom=0}}function a(a,e){var t=document.querySelectorAll(a);Array.prototype.slice.call(t).forEach(e)}a("ogvjs > canvas",function(a){t(a,a.width,a.height)}),a("ogvjs > img",function(a){t(a,a.naturalWidth,a.naturalHeight)})};var h=function(){g(b.updatePositionOnResize)};window.addEventListener("resize",b.updatePositionOnResize),window.addEventListener("orientationchange",b.updatePositionOnResize),document.addEventListener("fullscreenchange",h),document.addEventListener("mozfullscreenchange",h),document.addEventListener("webkitfullscreenchange",h),document.addEventListener("MSFullscreenChange",h)}e.default=b},580:function _(a,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;e.default=function(a){return function(){function e(r,t,o){var i=this;_classCallCheck2(this,e);for(var n in o=o||{},this.worker=r,this.transferables=function(){var t=new ArrayBuffer(1024),e=new Uint8Array(t);try{return r.postMessage({action:"transferTest",bytes:e},[t]),!t.byteLength}catch(t){return!1}}(),a){a.hasOwnProperty(n)&&(this[n]=a[n])}this.processingQueue=0,Object.defineProperty(this,"processing",{get:function(){return 0t||t>this.length||t!==(0|t))throw new RangeError("Invalid index");return this._ranges[t][0]}},{key:"end",value:function end(t){if(0>t||t>this.length||t!==(0|t))throw new RangeError("Invalid index");return this._ranges[t][1]}}]);return t}();e.default=t},625:function _(a,e,t){"use strict";var r=t(318);Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var o=r(t(964)),i=function(){function t(a){_classCallCheck2(this,t);return this.options=a||{},this.demuxer=null,this.videoDecoder=null,this.audioDecoder=null,this.flushIter=0,this.loadedMetadata=!1,this.processing=!1,Object.defineProperties(this,{duration:{get:function(){return this.loadedMetadata?this.demuxer.duration:NaN}},hasAudio:{get:function(){return this.loadedMetadata&&!!this.audioDecoder}},audioReady:{get:function(){return this.hasAudio&&this.demuxer.audioReady}},audioTimestamp:{get:function(){return this.demuxer.audioTimestamp}},audioFormat:{get:function(){return this.hasAudio?this.audioDecoder.audioFormat:null}},audioBuffer:{get:function(){return this.hasAudio?this.audioDecoder.audioBuffer:null}},hasVideo:{get:function(){return this.loadedMetadata&&!!this.videoDecoder}},frameReady:{get:function(){return this.hasVideo&&this.demuxer.frameReady}},frameTimestamp:{get:function(){return this.demuxer.frameTimestamp}},keyframeTimestamp:{get:function(){return this.demuxer.keyframeTimestamp}},nextKeyframeTimestamp:{get:function(){return this.demuxer.nextKeyframeTimestamp}},videoFormat:{get:function(){return this.hasVideo?this.videoDecoder.videoFormat:null}},frameBuffer:{get:function(){return this.hasVideo?this.videoDecoder.frameBuffer:null}},seekable:{get:function(){return this.demuxer.seekable}},demuxerCpuTime:{get:function(){return this.demuxer?this.demuxer.cpuTime:0}},audioCpuTime:{get:function(){return this.audioDecoder?this.audioDecoder.cpuTime:0}},videoCpuTime:{get:function(){return this.videoDecoder?this.videoDecoder.cpuTime:0}}}),this.loadedDemuxerMetadata=!1,this.loadedAudioMetadata=!1,this.loadedVideoMetadata=!1,this.loadedAllMetadata=!1,this.onseek=null,this.videoBytes=0,this.audioBytes=0,this}_createClass(t,[{key:"flushSafe",value:function flushSafe(a){var e=this,r=this.flushIter;return function(t){e.flushIter<=r&&a(t)}}},{key:"init",value:function init(a){var r=this,i;this.processing=!0,i="video/webm"===this.options.type||"audio/webm"===this.options.type?"OGVDemuxerWebMW":"OGVDemuxerOggW",o.default.loadClass(i,function(e){e().then(function(e){r.demuxer=e,e.onseek=function(t){r.onseek&&r.onseek(t)},e.init(function(){r.processing=!1,a()})})})}},{key:"close",value:function close(){this.demuxer&&(this.demuxer.close(),this.demuxer=null),this.videoDecoder&&(this.videoDecoder.close(),this.videoDecoder=null),this.audioDecoder&&(this.audioDecoder.close(),this.audioDecoder=null)}},{key:"receiveInput",value:function receiveInput(a,e){this.demuxer.receiveInput(a,e)}},{key:"process",value:function process(a){var r=this;if(this.processing)throw new Error("reentrancy fail on OGVWrapperCodec.process");this.processing=!0;var o=function(e){r.processing=!1,a(e)},i=function(){r.demuxer.process(o)};this.demuxer.loadedMetadata&&!this.loadedDemuxerMetadata?this.loadAudioCodec(function(){r.loadVideoCodec(function(){r.loadedDemuxerMetadata=!0,r.loadedAudioMetadata=!r.audioDecoder,r.loadedVideoMetadata=!r.videoDecoder,r.loadedAllMetadata=r.loadedAudioMetadata&&r.loadedVideoMetadata,o(!0)})}):this.loadedDemuxerMetadata&&!this.loadedAudioMetadata?this.audioDecoder.loadedMetadata?(this.loadedAudioMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,o(!0)):this.demuxer.audioReady?this.demuxer.dequeueAudioPacket(function(t){r.audioBytes+=t.byteLength,r.audioDecoder.processHeader(t,function(){o(!0)})}):i():this.loadedAudioMetadata&&!this.loadedVideoMetadata?this.videoDecoder.loadedMetadata?(this.loadedVideoMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,o(!0)):this.demuxer.frameReady?(this.processing=!0,this.demuxer.dequeueVideoPacket(function(t){r.videoBytes+=t.byteLength,r.videoDecoder.processHeader(t,function(){o(!0)})})):i():this.loadedVideoMetadata&&!this.loadedMetadata&&this.loadedAllMetadata?(this.loadedMetadata=!0,o(!0)):!this.loadedMetadata||this.hasAudio&&!this.demuxer.audioReady||this.hasVideo&&!this.demuxer.frameReady?i():o(!0)}},{key:"decodeFrame",value:function decodeFrame(a){var r=this,o=this.flushSafe(a),t=this.frameTimestamp,i=this.keyframeTimestamp;this.demuxer.dequeueVideoPacket(function(a){r.videoBytes+=a.byteLength,r.videoDecoder.processFrame(a,function(a){var e=r.videoDecoder.frameBuffer;e&&(e.timestamp=t,e.keyframeTimestamp=i),o(a)})})}},{key:"decodeAudio",value:function decodeAudio(a){var r=this,o=this.flushSafe(a);this.demuxer.dequeueAudioPacket(function(t,a){r.audioBytes+=t.byteLength,r.audioDecoder.processAudio(t,function(t){if(a){var e=r.audioDecoder.audioBuffer,i=[],d=_createForOfIteratorHelper(e),n;try{for(d.s();!(n=d.n()).done;){var s=n.value,l=Math.round(a*r.audioFormat.rate/1e9);0a.xhr.status?(a.length=r(a.xhr),a.headers=function(a){var r={};return a.getAllResponseHeaders().split(/\r?\n/).forEach(function(t){var e=t.split(/:\s*/,2);1=a)t();else{var o=null;e._onAbort=function(t){o(),r(t)};var i=function(){e.offset>=a&&!e.eof&&(o(),t())},n=function(){o(),t()},s=function(){o(),r(new Error("error streaming"))};o=function(){e.buffering=!1,e.off("buffer",i),e.off("done",n),e.off("error",s),e._onAbort=null},e.buffering=!0,e.on("buffer",i),e.on("done",n),e.on("error",s)}})}},{key:"initXHR",value:function(){n(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"initXHR",this).call(this)}},{key:"onXHRStart",value:function(){var t=this;this.xhr.addEventListener("progress",function(){return t.onXHRProgress()}),this.xhr.addEventListener("error",function(){return t.onXHRError()}),this.xhr.addEventListener("load",function(){return t.onXHRLoad()}),this.emit("open")}},{key:"onXHRProgress",value:function(){throw new Error("abstract")}},{key:"onXHRError",value:function(){this.emit("error")}},{key:"onXHRLoad",value:function(){this.eof=!0,this.emit("done")}}]),e}(t(306));a.exports=d},761:function _(a,e,t){"use strict";var r=t(855),o=t(810),i=t(431),d=null;a.exports=function(t){if(!1===t.progressive)return new i(t);if(d||(d=function(){return r.supported()?r:o.supported()?o:null}()),!d)throw new Error("No supported backend class");return new d(t)}},855:function _(a,e,t){"use strict";var i=function(){function a(a,e){for(var t=0,r;t=this.start&&(t=o);d=d.next){var n=Math.min(o,d.end),s=a.subarray(i-r,n-r);d.readBytes(s,i,n),i=n}return this.readOffset=i,this.readCursor=this.readCursor.first(function(t){return t.contains(i)}),t}},{key:"write",value:function(a){var e=this.bufferItem(a),t=this.writeCursor;if(!t.empty)throw new Error("write cursor not empty");if(!t.contains(e.end)&&t.end!==e.end)throw new Error("write cursor too small");t.startthis.readOffset+this.chunkSize)&&r.push(t))}if(a>this.cacheSize){r.sort(function(a,e){return a.timestamp-e.timestamp});for(var o=0,n;o=a.length)return void e(null);var s=a._clampToLength(t.writeOffset+t.bytesWritable(o))-t.writeOffset;if(0==s)e(null);else{var u=a._backend=new d({url:a.url,offset:a._cache.writeOffset,length:s,cachever:a._cachever,progressive:a.progressive}),l=null,c=function(){u!==a._backend?(l(),r(new Error("invalid state"))):(u.on("buffer",function(e){u===a._backend&&a._cache.write(e)}),u.on("done",function(){u===a._backend&&(-1===a.length&&(a.length=a._backend.offset+a._backend.bytesRead),a._backend=null)}),e(u))},p=function(e){u!==a._backend?r(new Error("invalid state")):(a._backend=null,r(e))};l=function(){u.off("open",c),u.off("error",p)},u.on("open",c),u.on("error",p),u.on("cachever",function(){a._cachever++}),u.load()}}})}},{key:"_readAhead",value:function(){var a=this;return new Promise(function(e,t){a._backend||a.eof?e():a._openBackend().then(function(){e()}).catch(function(a){t(a)})})}},{key:"seek",value:function(a){var e=this;return new Promise(function(t,r){if(!e.loaded||e.buffering||e.seeking)throw new Error("invalid state");if(a!==(0|a)||0>a)throw new Error("invalid input");if(0<=e.length&&a>e.length)throw new Error("seek past end of file");if(!e.seekable)throw new Error("seek on non-seekable stream");e._backend&&e.abort(),e._cache.seekRead(a),e._cache.seekWrite(a),e._readAhead().then(t).catch(r)})}},{key:"read",value:function(a){var r=this;return this.buffer(a).then(function(t){return r.readSync(t)})}},{key:"readSync",value:function(a){var e=this.bytesAvailable(a),t=new Uint8Array(e);if(this.readBytes(t)!==e)throw new Error("failed to read expected data");return t.buffer}},{key:"readBytes",value:function(a){if(!this.loaded||this.buffering||this.seeking)throw new Error("invalid state");if(!(a instanceof Uint8Array))throw new Error("invalid input");var e=this._cache.readBytes(a);return this._readAhead(),e}},{key:"buffer",value:function(a){var r=this;return new Promise(function(t,o){if(!r.loaded||r.buffering||r.seeking)throw new Error("invalid state");if(a!==(0|a)||0>a)throw new Error("invalid input");var e=r._clampToLength(r.offset+a),i=e-r.offset,d=r.bytesAvailable(i);d>=i?t(d):(r.buffering=!0,r._openBackend().then(function(t){return t?t.bufferToOffset(e).then(function(){return r.buffering=!1,r.buffer(a)}):Promise.resolve(d)}).then(function(a){r.buffering=!1,t(a)}).catch(function(t){"AbortError"!==t.name&&(r.buffering=!1),o(t)}))})}},{key:"bytesAvailable",value:function(){var t=0this.length?t:Math.min(this.length,t)}}]),a}();a.exports=i},826:function _(t){t.exports={vertex:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aLumaPosition;\nattribute vec2 aChromaPosition;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vLumaPosition = aLumaPosition;\n vChromaPosition = aChromaPosition;\n}\n",fragment:"// inspired by https://github.com/mbebenita/Broadway/blob/master/Player/canvas.js\n\nprecision lowp float;\n\nuniform sampler2D uTextureY;\nuniform sampler2D uTextureCb;\nuniform sampler2D uTextureCr;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n // Y, Cb, and Cr planes are uploaded as LUMINANCE textures.\n float fY = texture2D(uTextureY, vLumaPosition).x;\n float fCb = texture2D(uTextureCb, vChromaPosition).x;\n float fCr = texture2D(uTextureCr, vChromaPosition).x;\n\n // Premultipy the Y...\n float fYmul = fY * 1.1643828125;\n\n // And convert that to RGB!\n gl_FragColor = vec4(\n fYmul + 1.59602734375 * fCr - 0.87078515625,\n fYmul - 0.39176171875 * fCb - 0.81296875 * fCr + 0.52959375,\n fYmul + 2.017234375 * fCb - 1.081390625,\n 1\n );\n}\n",vertexStripe:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aTexturePosition;\nvarying vec2 vTexturePosition;\n\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vTexturePosition = aTexturePosition;\n}\n",fragmentStripe:"// extra 'stripe' texture fiddling to work around IE 11's poor performance on gl.LUMINANCE and gl.ALPHA textures\n\nprecision lowp float;\n\nuniform sampler2D uStripe;\nuniform sampler2D uTexture;\nvarying vec2 vTexturePosition;\nvoid main() {\n // Y, Cb, and Cr planes are mapped into a pseudo-RGBA texture\n // so we can upload them without expanding the bytes on IE 11\n // which doesn't allow LUMINANCE or ALPHA textures\n // The stripe textures mark which channel to keep for each pixel.\n // Each texture extraction will contain the relevant value in one\n // channel only.\n\n float fLuminance = dot(\n texture2D(uStripe, vTexturePosition),\n texture2D(uTexture, vTexturePosition)\n );\n\n gl_FragColor = vec4(fLuminance, fLuminance, fLuminance, 1);\n}\n"}},487:function _(t){!function(){"use strict";function e(){throw new Error("abstract")}e.prototype.drawFrame=function(){throw new Error("abstract")},e.prototype.clear=function(){throw new Error("abstract")},t.exports=e}()},926:function _(a,e,r){!function(){"use strict";var o=r(487),n=r(627);function e(a){var e=this,r=a.getContext("2d"),o=null,i=null,s=null;return e.drawFrame=function(e){var t=e.format;a.width===t.displayWidth&&a.height===t.displayHeight||(a.width=t.displayWidth,a.height=t.displayHeight),null!==o&&o.width==t.width&&o.height==t.height||function(a,e){for(var t=(o=r.createImageData(a,e)).data,i=0;i<4*(a*e);i+=4){t[i+3]=255}}(t.width,t.height),n.convertYCbCr(e,o.data);var d,u=t.cropWidth!=t.displayWidth||t.cropHeight!=t.displayHeight;u?(i||function(a,e){(i=document.createElement("canvas")).width=a,i.height=e,s=i.getContext("2d")}(t.cropWidth,t.cropHeight),d=s):d=r,d.putImageData(o,-t.cropLeft,-t.cropTop,t.cropLeft,t.cropTop,t.cropWidth,t.cropHeight),u&&r.drawImage(i,0,0,t.displayWidth,t.displayHeight)},e.clear=function(){r.clearRect(0,0,a.width,a.height)},e}e.prototype=Object.create(o.prototype),a.exports=e}()},895:function _(a,e,r){!function(){"use strict";var i=r(487),d=r(826);function o(a){var R,F,e=this,S=o.contextForCanvas(a);if(null===S)throw new Error("WebGL unavailable");function r(a,e){var t=S.createShader(a);if(S.shaderSource(t,e),S.compileShader(t),!S.getShaderParameter(t,S.COMPILE_STATUS)){var r=S.getShaderInfoLog(t);throw S.deleteShader(t),new Error("GL shader compilation for "+a+" failed: "+r)}return t}var h,w,C,D,O,I,B,V,L,M,G=new Float32Array([-1,-1,1,-1,-1,1,-1,1,1,-1,1,1]),b={},T={},k={};function n(t){return b[t]||(b[t]=S.createTexture()),b[t]}function s(a,e,t,r){var i=n(a);if(S.activeTexture(S.TEXTURE0),o.stripe){var d=!b[a+"_temp"],s=n(a+"_temp");S.bindTexture(S.TEXTURE_2D,s),d?(S.texParameteri(S.TEXTURE_2D,S.TEXTURE_WRAP_S,S.CLAMP_TO_EDGE),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_WRAP_T,S.CLAMP_TO_EDGE),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_MIN_FILTER,S.NEAREST),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_MAG_FILTER,S.NEAREST),S.texImage2D(S.TEXTURE_2D,0,S.RGBA,e/4,t,0,S.RGBA,S.UNSIGNED_BYTE,r)):S.texSubImage2D(S.TEXTURE_2D,0,0,0,e/4,t,S.RGBA,S.UNSIGNED_BYTE,r);var u=b[a+"_stripe"],_=!u;_&&(u=n(a+"_stripe")),S.bindTexture(S.TEXTURE_2D,u),_&&(S.texParameteri(S.TEXTURE_2D,S.TEXTURE_WRAP_S,S.CLAMP_TO_EDGE),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_WRAP_T,S.CLAMP_TO_EDGE),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_MIN_FILTER,S.NEAREST),S.texParameteri(S.TEXTURE_2D,S.TEXTURE_MAG_FILTER,S.NEAREST),S.texImage2D(S.TEXTURE_2D,0,S.RGBA,e,1,0,S.RGBA,S.UNSIGNED_BYTE,function(a){if(k[a])return k[a];for(var e=a,t=new Uint32Array(e),r=0;r>8,e[L+1]=W-H>>8,e[L+2]=W+j>>8,L+=4,W=0|298*n[f++],e[L]=W+X>>8,e[L+1]=W-H>>8,e[L+2]=W+j>>8,L+=4,W=0|298*n[g++],e[G]=W+X>>8,e[G+1]=W-H>>8,e[G+2]=W+j>>8,G+=4,W=0|298*n[g++],e[G]=W+X>>8,e[G+1]=W-H>>8,e[G+2]=W+j>>8,G+=4}L+=p,G+=p,K++}else for(V=0,Y=0;Y>d)*_,I=0|K*c,z=0;z>i)],X=0|(0|409*(U=0|u[I+Q]))-57088,H=0|(0|100*N)+(0|208*U)-34816,j=0|(0|516*N)-70912,W=0|298*n[m++],e[V]=W+X>>8,e[V+1]=W-H>>8,e[V+2]=W+j>>8,V+=4}}}}}()},877:function _(t){!function(){"use strict";t.exports=function(a){for(var e=0,r=a>>1;0!=r;){r>>=1,e++}if(a!==1<{var e={318:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},848:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var s=t[i]={i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)r.d(i,s,function(t){return e[t]}.bind(null,s));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=1)}([function(e,t){function r(e,t){if(e<1||e!==Math.round(e))throw\"Invalid channel count for BufferQueue\";this.channels=e,this.bufferSize=t,this.flush()}r.prototype.flush=function(){this._buffers=[],this._pendingBuffer=this.createBuffer(this.bufferSize),this._pendingPos=0},r.prototype.sampleCount=function(){var e=0;return this._buffers.forEach((function(t){e+=t[0].length})),e},r.prototype.createBuffer=function(e){for(var t=[],i=0;i=s)return e;for(var h=[],u=0;u0?d[d.length+t]:e[0]:e[t]},u=0;ui&&(m=Math.SQRT1_2);for(var g=0;g=i&&(v=0);var y=e[v],b=new Float32Array(_);h(y,b,this._resampleLastSampleData?this._resampleLastSampleData[v]:void 0,m),u.push(b)}return this._resampleFractional=p,this._resampleLastSampleData=e,u},n.prototype.bufferData=function(e){if(!this._backend)throw\"Invalid state: AudioFeeder cannot bufferData before init\";var t=this._resample(e);t=this._tempoChanger.process(t),this._backend.appendBuffer(t)},n.prototype.getPlaybackState=function(){if(this._backend){var e=this._backend.getPlaybackState();return e.outputPlaybackPosition=e.playbackPosition,e.playbackPosition=this._tempoChanger.mapOutputToInputTime(e.outputPlaybackPosition),e}throw\"Invalid state: AudioFeeder cannot getPlaybackState before init\"},n.prototype.waitUntilReady=function(e){if(!this._backend)throw\"Invalid state: AudioFeeder cannot waitUntilReady before init\";this._backend.waitUntilReady(e)},n.prototype.start=function(){if(!this._backend)throw\"Invalid state: AudioFeeder cannot start before init\";this._backend.start()},n.prototype.stop=function(){if(!this._backend)throw\"Invalid state: AudioFeeder cannot stop before init\";this._backend.stop()},n.prototype.flush=function(){if(this._resampleFractional=0,this._resampleLastSampleData=void 0,!this._backend)throw\"Invalid state: AudioFeeder cannot flush before init\";this._tempoChanger.flush(this.durationBuffered),this._backend.flush()},n.prototype.close=function(){this._backend&&(this._backend.close(),this._backend=null)},n.prototype.onstarved=null,n.prototype.onbufferlow=null,n.isSupported=function(){return!!Float32Array&&t.isSupported()},n.initSharedAudioContext=function(){return t.isSupported()?t.initSharedAudioContext():null},e.exports=n}()},function(e,t,i){!function(){var t=window.AudioContext||window.webkitAudioContext,s=i(0),d=i(3);function o(e,t,i){var d=i.audioContext||o.initSharedAudioContext();if(this._context=d,this.output=i.output||d.destination,this.rate=d.sampleRate,this.channels=2,i.bufferSize&&(this.bufferSize=0|i.bufferSize),this.bufferThreshold=2*this.bufferSize,this._bufferQueue=new s(this.channels,this.bufferSize),this._playbackTimeAtBufferTail=d.currentTime,this._queuedTime=0,this._delayedTime=0,this._dropped=0,this._liveBuffer=this._bufferQueue.createBuffer(this.bufferSize),d.createScriptProcessor)this._node=d.createScriptProcessor(this.bufferSize,0,this.channels);else{if(!d.createJavaScriptNode)throw new Error(\"Bad version of web audio API?\");this._node=d.createJavaScriptNode(this.bufferSize,0,this.channels)}}o.prototype.bufferSize=4096,o.prototype.bufferThreshold=8192,o.prototype._volume=1,Object.defineProperty(o.prototype,\"volume\",{get:function(){return this._volume},set:function(e){this._volume=+e}}),o.prototype._muted=!1,Object.defineProperty(o.prototype,\"muted\",{get:function(){return this._muted},set:function(e){this._muted=!!e}}),o.prototype._audioProcess=function(e){var t,i,s,h,u;u=\"number\"==typeof e.playbackTime?e.playbackTime:this._context.currentTime+this.bufferSize/this.rate;var c=this._playbackTimeAtBufferTail;if(c0){var t=Math.round(e*this.rate),i=this._liveBuffer?this._liveBuffer[0].length:0;t>i?(this._bufferQueue.prependBuffer(this._liveBuffer),this._bufferQueue.prependBuffer(this._bufferQueue.createBuffer(t-i))):this._bufferQueue.prependBuffer(this._bufferQueue.trimBuffer(this._liveBuffer,i-t,t)),this._playbackTimeAtBufferTail-=e}this._node.onaudioprocess=null,this._node.disconnect()}},o.prototype.flush=function(){this._bufferQueue.flush()},o.prototype.close=function(){this.stop(),this._context=null},o.prototype.onstarved=null,o.prototype.onbufferlow=null,o.isSupported=function(){return!!t},o.sharedAudioContext=null,o.initSharedAudioContext=function(){if(!o.sharedAudioContext&&o.isSupported()){var e,i=new t;if(i.createScriptProcessor)e=i.createScriptProcessor(1024,0,2);else{if(!i.createJavaScriptNode)throw new Error(\"Bad version of web audio API?\");e=i.createJavaScriptNode(1024,0,2)}e.connect(i.destination),e.disconnect(),o.sharedAudioContext=i}return o.sharedAudioContext},e.exports=o}()},function(e,t){e.exports=function(){if(void 0!==window.setImmediate)return window.setImmediate;if(window&&window.postMessage){var e=[];return window.addEventListener(\"message\",(function(t){if(t.source===window){var i=t.data;if(\"object\"==typeof i&&i.nextTickBrowserPingMessage){var s=e.pop();s&&s()}}})),function(t){e.push(t),window.postMessage({nextTickBrowserPingMessage:!0},document.location.toString())}}return function(e){setTimeout(e,0)}}()},function(e,t,i){var s;window,s=function(){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var s=t[i]={i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)r.d(i,s,function(t){return e[t]}.bind(null,s));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=1)}([function(e,t){var i={float_array:function(e){return new Float32Array(e)},blit:function(e,t,i,s,d){i.set(e.subarray(t,t+d),s)}};e.exports=i},function(e,t,i){var s,d;s=i(0),d=i(2),e.exports=function(e){var t=(e=e||{}).sampleRate||44100,i=e.wsizeLog||11,h=e.tempo||1,u=(e.numChannels,Math.pow(2,50/1200)-1),c=1<>1),T=s.float_array(b),k=s.float_array(b),P=s.float_array(b),w=s.float_array(b),E=s.float_array(b),x=s.float_array(b),A=1+(b>>1),R=[0,0],O=[],F=[],S=[],C=[];for(y=0;y<2;y++)O.push(s.float_array(A)),F.push(s.float_array(A)),S.push(s.float_array(A)),C.push(s.float_array(b));var B=s.float_array(A),D=s.float_array(A),M=0,V=0,I=[{in_time:0,out_time:0,tempo:h}],L=0,j=0,W=1,X=0,N=0,H=0,z=0,Y={mapOutputToInputTime:function(e){for(var t=I.length-1;e0;)t--;var i=I[t];return i.in_time+i.tempo*(e-i.out_time)},flush:function(e){X=0,R=[0,0],j=0,z=0,H=0;for(var t=0;t<2;t++)for(var i=0;i=0;)I.pop(),s--;I.push({in_time:M,out_time:V,tempo:h})}},getTempo:function(){return h},setTempo:function(e){m=g=f,e>=1?g=Math.round(m/e):m=Math.round(g*e),N=(1/e-1*g/m)*m,W=function(e,t){for(var i=e.length/t|0,s=0,d=0;di&&(i=e[s]);var d=1e-8*i,h=1,c=1;for(t[0]=1,s=2;sd&&e[s]>e[s-1]&&e[s]>=e[s+1]){var f=s+(e[s-1]-e[s+1])/(2*(e[s-1]-2*e[s]+e[s+1]));f-t[h-1]>l?(t[h++]=f,c=s):e[s]>e[c]&&(t[h-1]=f,c=s)}}return h}(y,T),P=F[l],w=S[l];if(0!=e&&0!=k){var E=0;for(H=0;Hm[E]&&E!=p;)++E;var x=E;E>0&&z-m[E-1].1*y[Math.round(z)]){var M=J(t,i,z),V=g[x]+v[x]+U(M,z,g[x],m[x],h)-M;P[H]=M,w[H]=V,B[H]=Math.cos(V),D[H]=Math.sin(V)}else P[H]=J(t,i,z),w[H]=0,B[H]=1,D[H]=0}T[k]=2*c;var I=T[x=0],L=T[x+1],j=B[x],W=D[x];for(b=1;b=I&&b-I>L-b&&(I=T[++x],L=T[x+1],j=B[x],W=D[x]);var X=t[b]*j-i[b]*W,N=t[b]*W+i[b]*j;t[b]=X,i[b]=N}}else for(var H=0;Hd&&(d=Math.abs(2*l.m_re[t]));for(t=0;td&&(d=Math.abs(l.m_re[t+g+e]+l.m_im[t]));for(t=c-g;td&&(d=Math.abs(2*l.m_im[t]));var u=1/Math.floor(1*c/(2*g));for(h*d>u&&(h=u/d),t=0;t1){d=s.float_array(e[0].length);for(var u=1/e.length,l=0;l0){var v=z+H+i,y=[];for(l=0;lP&&(P=z);var w=s.float_array(P);s.blit(p,0,w,0,z);for(var E=0,x=z,A=0,R=0;;){var O=c+m-H;if(E+O>i){s.blit(d,E,_,H,i-E),H+=i-E,E=i;break}O<=0?H-=2*m:(s.blit(d,E,_,H,O),E+=O,H=c-m),R=G(),M+=2*m/t,V+=R/t,(A=x+R-P)<0&&(A=0),s.blit(p,0,w,x,R-A),x+=R}s.blit(p,R-A,p,0,A),z=A;var F=[];for(l=0;l>=1;i.m_revTgt[d]=u}i.twiddleRe=s.float_array(i.m_logN),i.twiddleIm=s.float_array(i.m_logN);for(var l=1,f=0;f>1,c=d>>1,l=d;if(e)for(var f=1/d,_=0;_>=1,c>>=1,l>>=1}for(var O,F,S=i.m_revTgt,C=0;CC&&(F=t[O=S[C]],t[O]=t[C],t[C]=F,F=s[O],s[O]=s[C],s[C]=F)};var p=t>>1;return i.unpack=function(e,s,d,h){e[0]=i.m_re[0],d[0]=i.m_im[0],s[0]=h[0]=0,e[p]=i.m_re[p],d[p]=i.m_im[p],s[p]=h[p]=0;for(var u=1;u{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var i=class Bisector{constructor(e){this.lower=e.start,this.upper=e.end,this.onprocess=e.process,this.position=0,this.n=0}iterate(){return this.n++,this.position=Math.floor((this.lower+this.upper)/2),this.onprocess(this.lower,this.upper,this.position)}start(){return this.iterate(),this}left(){return this.upper=this.position,this.iterate()}right(){return this.lower=this.position,this.iterate()}};t.default=i},523:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var i=new class{hasTypedArrays(){return!!window.Uint32Array}hasWebAssembly(){return!!window.WebAssembly}hasWebAudio(){return!(!window.AudioContext&&!window.webkitAudioContext)}hasFlash(){return!1}hasAudio(){return this.hasWebAudio()}isBlacklisted(e){return!1}isSlow(){return!1}isTooSlow(){return!1}supported(e){return\"OGVDecoder\"===e?this.hasWebAssembly():\"OGVPlayer\"===e&&(this.supported(\"OGVDecoder\")&&this.hasAudio())}};t.default=i},408:(e,t,i)=>{\"use strict\";var s=i(318);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var d=s(i(580));class OGVDecoderAudioProxy extends((0,d.default)({loadedMetadata:!1,audioFormat:null,audioBuffer:null,cpuTime:0})){init(e){this.proxy(\"init\",[],e)}processHeader(e,t){this.proxy(\"processHeader\",[e],t,[e])}processAudio(e,t){this.proxy(\"processAudio\",[e],t,[e])}close(){this.terminate()}}var h=OGVDecoderAudioProxy;t.default=h},319:(e,t,i)=>{\"use strict\";var s=i(318);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var d=s(i(580));class OGVDecoderVideoProxy extends((0,d.default)({loadedMetadata:!1,videoFormat:null,frameBuffer:null,cpuTime:0})){init(e){this.proxy(\"init\",[],e)}processHeader(e,t){this.proxy(\"processHeader\",[e],t,[e])}processFrame(e,t){this.proxy(\"processFrame\",[e],t,[e])}close(){this.terminate()}sync(){this.proxy(\"sync\",[],(()=>{}))}recycleFrame(e){this.proxy(\"recycleFrame\",[e],(()=>{}),[e.y.bytes.buffer,e.u.bytes.buffer,e.v.bytes.buffer])}}var h=OGVDecoderVideoProxy;t.default=h},445:(e,t,i)=>{\"use strict\";var s=i(318);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var d=s(i(539)),h=\"1.8.4-20210702161914-bd3a07f\",u={OGVDemuxerOggW:\"ogv-demuxer-ogg-wasm.js\",OGVDemuxerWebMW:\"ogv-demuxer-webm-wasm.js\",OGVDecoderAudioOpusW:\"ogv-decoder-audio-opus-wasm.js\",OGVDecoderAudioVorbisW:\"ogv-decoder-audio-vorbis-wasm.js\",OGVDecoderVideoTheoraW:\"ogv-decoder-video-theora-wasm.js\",OGVDecoderVideoVP8W:\"ogv-decoder-video-vp8-wasm.js\",OGVDecoderVideoVP8MTW:\"ogv-decoder-video-vp8-mt-wasm.js\",OGVDecoderVideoVP9W:\"ogv-decoder-video-vp9-wasm.js\",OGVDecoderVideoVP9SIMDW:\"ogv-decoder-video-vp9-simd-wasm.js\",OGVDecoderVideoVP9MTW:\"ogv-decoder-video-vp9-mt-wasm.js\",OGVDecoderVideoVP9SIMDMTW:\"ogv-decoder-video-vp9-simd-mt-wasm.js\",OGVDecoderVideoAV1W:\"ogv-decoder-video-av1-wasm.js\",OGVDecoderVideoAV1SIMDW:\"ogv-decoder-video-av1-simd-wasm.js\",OGVDecoderVideoAV1MTW:\"ogv-decoder-video-av1-mt-wasm.js\",OGVDecoderVideoAV1SIMDMTW:\"ogv-decoder-video-av1-simd-mt-wasm.js\"};var c=class OGVLoaderBase{constructor(){this.base=this.defaultBase()}defaultBase(){}wasmSupported(){return d.default.wasmSupported()}scriptForClass(e){return u[e]}urlForClass(e){var t=this.scriptForClass(e);if(t)return this.urlForScript(t);throw new Error(\"asked for URL for unknown class \"+e)}urlForScript(e){if(e){var t=this.base;return void 0===t?t=\"\":t+=\"/\",t+e+\"?version=\"+encodeURIComponent(h)}throw new Error(\"asked for URL for unknown script \"+e)}loadClass(e,t,i){i=i||{};var s=this.getGlobal(),d=this.urlForClass(e),classWrapper=t=>((t=t||{}).locateFile=e=>\"data:\"===e.slice(0,5)?e:this.urlForScript(e),t.mainScriptUrlOrBlob=this.scriptForClass(e)+\"?version=\"+encodeURIComponent(h),s[e](t));\"function\"==typeof s[e]?t(classWrapper):this.loadScript(d,(()=>{t(classWrapper)}))}};t.default=c},964:(e,t,i)=>{\"use strict\";var s=i(318);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var d=s(i(408)),h=s(i(319)),u=s(i(445)),c={audio:{proxy:d.default,worker:\"ogv-worker-audio.js\"},video:{proxy:h.default,worker:\"ogv-worker-video.js\"}},l={OGVDecoderAudioOpusW:\"audio\",OGVDecoderAudioVorbisW:\"audio\",OGVDecoderVideoTheoraW:\"video\",OGVDecoderVideoVP8W:\"video\",OGVDecoderVideoVP9W:\"video\",OGVDecoderVideoVP9SIMDW:\"video\",OGVDecoderVideoAV1W:\"video\",OGVDecoderVideoAV1SIMDW:\"video\"};class OGVLoaderWeb extends u.default{constructor(){super(),this.scriptStatus={},this.scriptCallbacks={}}getGlobal(){return window}defaultBase(){for(var e,t,i=document.querySelectorAll(\"script\"),s=/^(?:|(.*)\\/)ogv(?:-support|-es2017)?\\.js(?:\\?|#|$)/,d=0;d{var i=this.scriptCallbacks[e];delete this.scriptCallbacks[e],this.scriptStatus[e]=\"done\",i.forEach((e=>{e()}))};i.addEventListener(\"load\",done),i.addEventListener(\"error\",done),i.src=e,document.querySelector(\"head\").appendChild(i)}}workerProxy(e,t){var i=c[l[e]];if(!i)throw new Error(\"Requested worker for class with no proxy: \"+e);var s,d=i.proxy,h=i.worker,u=this.urlForScript(this.scriptForClass(e)),_=this.urlForScript(h),p=function construct(t){return new d(s,e,t)};if(_.match(/^https?:|\\/\\//i)){var m,g,v,y,b,T=!1,k=!1;function completionCheck(){if(1==T&&1==k){var e=v+\" \"+y+\"\\nOGVLoader.base = \"+JSON.stringify(f.base);try{b=new Blob([e],{type:\"application/javascript\"})}catch(t){window.BlobBuilder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,(b=new BlobBuilder).append(e),b=b.getBlob()}s=new Worker(URL.createObjectURL(b)),t((function(e){return Promise.resolve(new p(e))}))}}(m=new XMLHttpRequest).open(\"GET\",u,!0),m.onreadystatechange=function(){4==m.readyState&&200==m.status&&(v=m.responseText,T=!0,completionCheck())},m.send(),(g=new XMLHttpRequest).open(\"GET\",_,!0),g.onreadystatechange=function(){4==g.readyState&&200==g.status&&(y=g.responseText,k=!0,completionCheck())},g.send()}else s=new Worker(_),t((function(e){return Promise.resolve(new p(e))}))}}var f=new OGVLoaderWeb,_=f;t.default=_},759:(e,t,i)=>{\"use strict\";var s=i(318);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var d=s(i(309)),h={MEDIA_ERR_ABORTED:1,MEDIA_ERR_NETWORK:2,MEDIA_ERR_DECODE:3,MEDIA_ERR_SRC_NOT_SUPPORTED:4};class OGVMediaError{constructor(e,t){this.code=e,this.message=t}}(0,d.default)(OGVMediaError,h),(0,d.default)(OGVMediaError.prototype,h);var u=OGVMediaError;t.default=u},278:(e,t)=>{\"use strict\";function split(e,t,i){var s=e.split(t,i).map((e=>function trim(e){return e.replace(/^\\s+/,\"\").replace(/\\s+$/,\"\")}(e)));if(\"number\"==typeof i)for(;s.length{\"use strict\";var s=i(318);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var d,h=s(i(731)),u=s(i(936)),c=s(i(848)),l=s(i(964)),f=s(i(893)),_=s(i(309)),p=s(i(759)),m=s(i(278)),g=s(i(168)),v=s(i(625)),y=(()=>{if(\"function\"==typeof setImmediate)return setImmediate;var e=new MessageChannel,t=[];return e.port1.onmessage=e=>{t.shift()()},function nextTick(i){t.push(i),e.port2.postMessage({})}})(),b={NETWORK_EMPTY:0,NETWORK_IDLE:1,NETWORK_LOADING:2,NETWORK_NO_SOURCE:3,HAVE_NOTHING:0,HAVE_METADATA:1,HAVE_CURRENT_DATA:2,HAVE_FUTURE_DATA:3,HAVE_ENOUGH_DATA:4},T=\"INITIAL\",k=\"SEEKING_END\",P=\"LOADED\",w=\"PRELOAD\",E=\"READY\",x=\"PLAYING\",A=\"SEEKING\",R=\"ERROR\",O=\"NOT_SEEKING\",F=\"BISECT_TO_TARGET\",S=\"BISECT_TO_KEYPOINT\",C=\"LINEAR_TO_TARGET\",B=\"exact\",D=\"fast\";function OGVJSElement(){var e=document.createElement(\"ogvjs\");return Object.setPrototypeOf?Object.setPrototypeOf(e,Object.getPrototypeOf(this)):e.__proto__=this.__proto__,e}d=\"undefined\"==typeof performance||void 0===typeof performance.now?Date.now:performance.now.bind(performance),OGVJSElement.prototype=Object.create(HTMLElement.prototype,{});class OGVPlayer extends OGVJSElement{constructor(e){if(super(),(e=e||{}).base=e.base||l.default.base,this._options=e,this._instanceId=\"ogvjs\"+ ++OGVPlayer.instanceCount,void 0!==e.worker?this._enableWorker=!!e.worker:this._enableWorker=!!window.Worker,!l.default.wasmSupported())throw new Error(\"WebAssembly not supported\");this._enableThreading=!!e.threading,this._enableSIMD=!!e.simd,this._state=T,this._seekState=O,this._detectedType=null,this._canvas=document.createElement(\"canvas\"),this._frameSink=null,e.video&&this._canvas.captureStream?(this._mediaStream=new MediaStream,this._video=\"object\"==typeof e.video?e.video:document.createElement(\"video\"),this._video.playsInline=!0,this._video.srcObject=this._mediaStream):this._video=null,this._videoTrack=null,this._audioTrack=null,this._canvasStream=null,this.className=this._instanceId,(0,_.default)(this,b),this._view=this._video||this._canvas,this._view.style.position=\"absolute\",this._view.style.top=\"0\",this._view.style.left=\"0\",this._view.style.width=\"100%\",this._view.style.height=\"100%\",this._view.style.objectFit=\"contain\",this.appendChild(this._view),this._startTime=d(),this._codec=null,this._audioInfo=null,this._videoInfo=null,this._actionQueue=[],this._audioFeeder=null,this._muted=!1,this._initialPlaybackPosition=0,this._initialPlaybackOffset=0,this._prebufferingAudio=!1,this._initialSeekTime=0,this._currentSrc=\"\",this._streamEnded=!1,this._mediaError=null,this._dataEnded=!1,this._byteLength=0,this._duration=null,this._lastSeenTimestamp=null,this._nextProcessingTimer,this._nextFrameTimer=null,this._loading=!1,this._started=!1,this._paused=!0,this._ended=!1,this._startedPlaybackInDocument=!1,this._stream=void 0,this._framesProcessed=0,this._targetPerFrameTime=1e3/60,this._actualPerFrameTime=0,this._totalFrameTime=0,this._totalFrameCount=0,this._playTime=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._totalJitter=0,this._droppedAudio=0,this._delayedAudio=0,this._lateFrames=0,this._poster=\"\",this._thumbnail=null,this._frameEndTimestamp=0,this._audioEndTimestamp=0,this._decodedFrames=[],this._pendingFrames=[],this._lastFrameDecodeTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameDrawingTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastProxyTime=0,this._lastDrawingTime=0,this._lastFrameTimestamp=0,this._currentVideoCpuTime=0,this._lastTimeUpdate=0,this._timeUpdateInterval=250,this._seekTargetTime=0,this._bisectTargetTime=0,this._seekMode=null,this._lastSeekPosition=null,this._seekBisector=null,this._didSeek=null,this._depth=0,this._needProcessing=!1,this._pendingFrame=0,this._pendingAudio=0,this._framePipelineDepth=8,this._frameParallelism=this._enableThreading?Math.min(16,navigator.hardwareConcurrency)||1:0,this._audioPipelineDepth=12,this._videoInfo=null,this._audioInfo=null,this._width=0,this._height=0,this._volume=1,this._playbackRate=1,Object.defineProperties(this,{src:{get:function getSrc(){return this.getAttribute(\"src\")||\"\"},set:function setSrc(e){this.setAttribute(\"src\",e),this._loading=!1,this._prepForLoad(\"interactive\")}},buffered:{get:function getBuffered(){var e;return e=this._stream&&this._byteLength&&this._duration?this._stream.getBufferedRanges().map((e=>e.map((e=>e/this._stream.length*this._duration)))):[[0,0]],new g.default(e)}},seekable:{get:function getSeekable(){return this.duration<1/0&&this._stream&&this._stream.seekable&&this._codec&&this._codec.seekable?new g.default([[0,this._duration]]):new g.default([])}},currentTime:{get:function getCurrentTime(){return this._state==A?this._seekTargetTime:this._codec?this._state!=x||this._paused?this._initialPlaybackOffset:this._getPlaybackTime():this._initialSeekTime},set:function setCurrentTime(e){this._seek(e,B)}},duration:{get:function getDuration(){return this._codec&&this._codec.loadedMetadata?null!==this._duration?this._duration:1/0:NaN}},paused:{get:function getPaused(){return this._paused}},ended:{get:function getEnded(){return this._ended}},seeking:{get:function getSeeking(){return this._state==A}},muted:{get:function getMuted(){return this._muted},set:function setMuted(e){this._muted=e,this._audioFeeder?this._audioFeeder.muted=this._muted:this._started&&!this._muted&&this._codec&&this._codec.hasAudio&&(this._log(\"unmuting: switching from timer to audio clock\"),this._initAudioFeeder(),this._startPlayback(this._audioEndTimestamp)),this._fireEventAsync(\"volumechange\")}},poster:{get:function getPoster(){return this._poster},set:function setPoster(e){if(this._poster=e,!this._started){this._thumbnail&&this.removeChild(this._thumbnail);var t=new Image;t.src=this._poster,t.className=\"ogvjs-poster\",t.style.position=\"absolute\",t.style.top=\"0\",t.style.left=\"0\",t.style.width=\"100%\",t.style.height=\"100%\",t.style.objectFit=\"contain\",t.style.visibility=\"hidden\",t.addEventListener(\"load\",(()=>{this._thumbnail===t&&(OGVPlayer.styleManager.appendRule(\".\"+this._instanceId,{width:t.naturalWidth+\"px\",height:t.naturalHeight+\"px\"}),OGVPlayer.updatePositionOnResize(),t.style.visibility=\"visible\")})),this._thumbnail=t,this.appendChild(t)}}},videoWidth:{get:function getVideoWidth(){return this._videoInfo?this._videoInfo.displayWidth:0}},videoHeight:{get:function getVideoHeight(){return this._videoInfo?this._videoInfo.displayHeight:0}},ogvjsVideoFrameRate:{get:function getOgvJsVideoFrameRate(){return this._videoInfo?0==this._videoInfo.fps?this._totalFrameCount/(this._totalFrameTime/1e3):this._videoInfo.fps:0}},ogvjsAudioChannels:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.channels:0}},ogvjsAudioSampleRate:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.rate:0}},width:{get:function getWidth(){return this._width},set:function setWidth(e){this._width=parseInt(e,10),this.style.width=this._width+\"px\",OGVPlayer.updatePositionOnResize()}},height:{get:function getHeight(){return this._height},set:function setHeight(e){this._height=parseInt(e,10),this.style.height=this._height+\"px\",OGVPlayer.updatePositionOnResize()}},autoplay:{get:function getAutoplay(){return!1},set:function setAutoplay(e){}},controls:{get:function getControls(){return!1},set:function setControls(e){}},loop:{get:function getLoop(){return!1},set:function setLoop(e){}},crossOrigin:{get:function getCrossOrigin(){return null},set:function setCrossOrigin(e){}},currentSrc:{get:function getCurrentSrc(){return this._currentSrc}},defaultMuted:{get:function getDefaultMuted(){return!1}},defaultPlaybackRate:{get:function getDefaultPlaybackRate(){return 1}},error:{get:function getError(){return this._state===R?this._mediaError?this._mediaError:new p.default(\"unknown error occurred in media procesing\"):null}},preload:{get:function getPreload(){return this.getAttribute(\"preload\")||\"\"},set:function setPreload(e){this.setAttribute(\"preload\",e)}},readyState:{get:function getReadyState(){return this._stream&&this._codec&&this._codec.loadedMetadata?OGVPlayer.HAVE_ENOUGH_DATA:OGVPlayer.HAVE_NOTHING}},networkState:{get:function getNetworkState(){return this._stream?this._stream.waiting?OGVPlayer.NETWORK_LOADING:OGVPlayer.NETWORK_IDLE:this.readyState==OGVPlayer.HAVE_NOTHING?OGVPlayer.NETWORK_EMPTY:OGVPlayer.NETWORK_NO_SOURCE}},playbackRate:{get:function getPlaybackRate(){return this._playbackRate},set:function setPlaybackRate(e){var t=Number(e)||1;this._audioFeeder?this._audioFeeder.tempo=t:this._paused||(this._initialPlaybackOffset=this._getPlaybackTime(),this._initialPlaybackPosition=t*d()/1e3),this._playbackRate=t,this._fireEventAsync(\"ratechange\")}},played:{get:function getPlayed(){return new g.default([[0,this.currentTime]])}},volume:{get:function getVolume(){return this._volume},set:function setVolume(e){this._volume=+e,this._audioFeeder&&(this._audioFeeder.volume=this._volume),this._fireEventAsync(\"volumechange\")}}}),this.onframecallback=null,this.onloadstate=null,this.onprogress=null,this.onsuspend=null,this.onabort=null,this.onemptied=null,this.onstalled=null,this.onloadedmetadata=null,this.onloadeddata=null,this.oncanplay=null,this.oncanplaythrough=null,this.onplaying=null,this.onwaiting=null,this.onseeking=null,this.onseeked=null,this.onended=null,this.ondurationchange=null,this.ontimeupdate=null,this.onplay=null,this.onpause=null,this.onratechange=null,this.onresize=null,this.onvolumechange=null,this.onaudiofeedercreated=null}_time(e){var t=d();e();var i=d()-t;return this._lastFrameDecodeTime+=i,i}_log(e){var t=this._options;if(t.debug){var i=d()-this._startTime;t.debugFilter&&!e.match(t.debugFilter)||console.log(\"[\"+Math.round(10*i)/10+\"ms] \"+e)}}_fireEvent(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log(\"fireEvent \"+e);var i,s=\"function\"==typeof Event;for(var d in s?i=new CustomEvent(e):(i=document.createEvent(\"Event\")).initEvent(e,!1,!1),t)t.hasOwnProperty(d)&&(i[d]=t[d]);var h=this.dispatchEvent(i);!s&&\"resize\"===e&&this.onresize&&h&&this.onresize.call(this,i)}_fireEventAsync(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log(\"fireEventAsync \"+e),y((()=>{this._fireEvent(e,t)}))}static initSharedAudioContext(){c.default.initSharedAudioContext()}_initAudioFeeder(){var e=this._options,t={bufferSize:8192};if(e.audioContext&&(t.audioContext=e.audioContext),e.audioDestination&&(t.output=e.audioDestination),e.audioBackendFactory&&(t.backendFactory=e.audioBackendFactory),this._video&&!t.output){t.audioContext||(t.audioContext=c.default.initSharedAudioContext());var i=t.audioContext.createMediaStreamDestination();this._audioTrack=i.stream.getAudioTracks()[0],this._mediaStream.addTrack(this._audioTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream),this._video.play(),t.output=i}var s=this._audioFeeder=new c.default(t);s.init(this._audioInfo.channels,this._audioInfo.rate),this.onaudiofeedercreated&&this.onaudiofeedercreated(this._audioFeeder),s.bufferThreshold=1,s.volume=this.volume,s.muted=this.muted,s.tempo=this.playbackRate,s.onbufferlow=()=>{this._log(\"onbufferlow\"),this._stream&&(this._stream.buffering||this._stream.seeking)||this._pendingAudio||this._pingProcessing()},s.onstarved=()=>{this._dataEnded?this._log(\"onstarved: appear to have reached end of audio\"):(this._log(\"onstarved: halting audio due to starvation\"),this._stopPlayback(),this._prebufferingAudio=!0),this._isProcessing()||this._pingProcessing(0)}}_startPlayback(e){if(this._audioFeeder){this._audioFeeder.start();var t=this._audioFeeder.getPlaybackState();this._initialPlaybackPosition=t.playbackPosition}else this._initialPlaybackPosition=this._playbackRate*d()/1e3;void 0!==e&&(this._initialPlaybackOffset=e),this._prebufferingAudio=!1,this._log(\"continuing at \"+this._initialPlaybackPosition+\", \"+this._initialPlaybackOffset)}_stopPlayback(){this._initialPlaybackOffset=this._getPlaybackTime(),this._log(\"pausing at \"+this._initialPlaybackOffset),this._audioFeeder&&this._audioFeeder.stop()}_getPlaybackTime(e){return this._prebufferingAudio||this._paused?this._initialPlaybackOffset:(this._audioFeeder?(e=e||this._audioFeeder.getPlaybackState()).playbackPosition:this._playbackRate*d()/1e3)-this._initialPlaybackPosition+this._initialPlaybackOffset}_stopVideo(){this._log(\"STOPPING\"),this._state=T,this._seekState=O,this._started=!1,this._ended=!1,this._frameEndTimestamp=0,this._audioEndTimestamp=0,this._lastFrameDecodeTime=0,this._prebufferingAudio=!1,this._actionQueue.splice(0,this._actionQueue.length),this._stream&&(this._stream.abort(),this._stream=null,this._streamEnded=!1),this._codec&&(this._codec.close(),this._codec=null,this._pendingFrame=0,this._pendingAudio=0,this._dataEnded=!1),this._videoInfo=null,this._audioInfo=null,this._audioFeeder&&(this._audioFeeder.close(),this._audioFeeder=null),this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._frameSink&&(this._frameSink.clear(),this._frameSink=null),this._decodedFrames&&(this._decodedFrames=[]),this._pendingFrames&&(this._pendingFrames=[]),this._initialSeekTime=0,this._initialPlaybackPosition=0,this._initialPlaybackOffset=0,this._duration=null}_doFrameComplete(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._startedPlaybackInDocument&&!document.body.contains(this)&&y((()=>{this.stop()}));var t=d(),i=t-this._lastFrameTimestamp,s=this._actualPerFrameTime-this._targetPerFrameTime;this._totalJitter+=Math.abs(s),this._playTime+=i;var h={cpuTime:this._lastFrameDecodeTime,drawingTime:this._drawingTime-this._lastFrameDrawingTime,bufferTime:this._bufferTime-this._lastFrameBufferTime,proxyTime:this._proxyTime-this._lastFrameProxyTime,demuxerTime:0,videoTime:0,audioTime:0,clockTime:this._actualPerFrameTime,late:e.dropped,dropped:e.dropped};function n(e){return Math.round(10*e)/10}this._codec&&(h.demuxerTime=this._codec.demuxerCpuTime-this._lastFrameDemuxerCpuTime,h.videoTime+=this._currentVideoCpuTime-this._lastFrameVideoCpuTime,h.audioTime+=this._codec.audioCpuTime-this._lastFrameAudioCpuTime),h.cpuTime+=h.demuxerTime,this._lastFrameDecodeTime=0,this._lastFrameTimestamp=t,this._codec?(this._lastFrameVideoCpuTime=this._currentVideoCpuTime,this._lastFrameAudioCpuTime=this._codec.audioCpuTime,this._lastFrameDemuxerCpuTime=this._codec.demuxerCpuTime):(this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0),this._lastFrameDrawingTime=this._drawingTime,this._lastFrameBufferTime=this._bufferTime,this._lastFrameProxyTime=this._proxyTime,this._log(\"drew frame \"+e.frameEndTimestamp+\": clock time \"+n(i)+\" (jitter \"+n(s)+\") cpu: \"+n(h.cpuTime)+\" (mux: \"+n(h.demuxerTime)+\" buf: \"+n(h.bufferTime)+\" draw: \"+n(h.drawingTime)+\" proxy: \"+n(h.proxyTime)+\") vid: \"+n(h.videoTime)+\" aud: \"+n(h.audioTime)),this._fireEventAsync(\"framecallback\",h),(!this._lastTimeUpdate||t-this._lastTimeUpdate>=this._timeUpdateInterval)&&(this._lastTimeUpdate=t,this._fireEventAsync(\"timeupdate\")),this._codec&&e.yCbCrBuffer&&this._codec.recycleFrame(e.yCbCrBuffer)}_seekStream(e){this._stream.seeking&&this._stream.abort(),this._stream.buffering&&this._stream.abort(),this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._stream.seek(e).then((()=>{this._readBytesAndWait()})).catch((e=>{this._onStreamError(e)}))}_onStreamError(e){\"AbortError\"===e.name?this._log(\"i/o promise canceled; ignoring\"):(this._log(\"i/o error: \"+e),this._mediaError=new p.default(p.default.MEDIA_ERR_NETWORK,String(e)),this._state=R,this._stopPlayback())}_seek(e,t){if(this._log(\"requested seek to \"+e+\", mode \"+t),this.readyState==this.HAVE_NOTHING)return this._log(\"not yet loaded; saving seek position for later\"),void(this._initialSeekTime=e);if(this._stream&&!this._stream.seekable)throw new Error(\"Cannot seek a non-seekable stream\");if(this._codec&&!this._codec.seekable)throw new Error(\"Cannot seek in a non-seekable file\");var prepForSeek=i=>{this._stream&&this._stream.buffering&&this._stream.abort(),this._stream&&this._stream.seeking&&this._stream.abort(),this._actionQueue.splice(0,this._actionQueue.length),this._stopPlayback(),this._prebufferingAudio=!1,this._audioFeeder&&this._audioFeeder.flush(),this._state=A,this._seekTargetTime=e,this._seekMode=t,this._codec?this._codec.flush(i):i()};prepForSeek((()=>{this._isProcessing()||this._pingProcessing(0)})),this._actionQueue.push((()=>{prepForSeek((()=>{this._doSeek(e)}))}))}_doSeek(e){this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._state=A,this._seekTargetTime=e,this._lastSeekPosition=-1,this._decodedFrames=[],this._pendingFrames=[],this._pendingFrame=0,this._pendingAudio=0,this._didSeek=!1,this._codec.seekToKeypoint(e,(t=>{if(t)return this._seekState=C,this._fireEventAsync(\"seeking\"),this._didSeek?void 0:void this._pingProcessing();this._codec.getKeypointOffset(e,(e=>{e>0?(this._seekState=C,this._seekStream(e)):(this._seekState=F,this._startBisection(this._seekTargetTime)),this._fireEventAsync(\"seeking\")}))}))}_startBisection(e){var t=Math.max(0,this._stream.length-65536);this._bisectTargetTime=e,this._seekBisector=new f.default({start:0,end:t,process:(e,t,i)=>i!=this._lastSeekPosition&&(this._lastSeekPosition=i,this._codec.flush((()=>{this._seekStream(i)})),!0)}),this._seekBisector.start()}_continueSeekedPlayback(){this._seekState=O,this._state=E,this._frameEndTimestamp=this._codec.frameTimestamp,this._audioEndTimestamp=this._codec.audioTimestamp,this._codec.hasAudio?this._seekTargetTime=this._codec.audioTimestamp:this._seekTargetTime=this._codec.frameTimestamp,this._initialPlaybackOffset=this._seekTargetTime;var finishedSeeking=()=>{this._lastTimeUpdate=this._seekTargetTime,this._fireEventAsync(\"timeupdate\"),this._fireEventAsync(\"seeked\"),this._isProcessing()||this._pingProcessing()};if(this._codec.hasVideo&&this._decodedFrames.length){var e=this._decodedFrames.shift();this._drawFrame(e.yCbCrBuffer),finishedSeeking()}else{if(this._codec.hasVideo&&this._codec.frameReady)return this._codec.decodeFrame((e=>{e&&this._drawFrame(this._codec.frameBuffer),finishedSeeking()})),void this._codec.sync();finishedSeeking()}}_drawFrame(e){this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null),this._frameSink.drawFrame(e),this._video&&(this._canvasStream||(this._canvasStream=this._canvas.captureStream(0),this._videoTrack=this._canvasStream.getVideoTracks()[0],this._mediaStream.addTrack(this._videoTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream,this._video.play())),this._videoTrack&&this._videoTrack.requestFrame?this._videoTrack.requestFrame():this._canvasStream&&this._canvasStream.requestFrame&&this._canvasStream.requestFrame())}_doProcessLinearSeeking(){var e;if(e=this._codec.hasVideo?this._targetPerFrameTime/1e3:1/256,this._codec.hasVideo){if(this._pendingFrame)return;if(!this._codec.frameReady)return void this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?(this._log(\"stream ended during linear seeking on video\"),this._dataEnded=!0,this._continueSeekedPlayback()):this._readBytesAndWait()}));if(this._seekMode===D&&this._codec.keyframeTimestamp==this._codec.frameTimestamp)return void this._continueSeekedPlayback();if(this._codec.frameTimestamp<=this._seekTargetTime){var t=this._codec.frameTimestamp;return this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:t}),this._decodedFrames.splice(0,this._decodedFrames.length),this._codec.decodeFrame((e=>{this._pendingFrame--,this._pendingFrames.shift(),this._decodedFrames.push({yCbCrBuffer:this._codec.frameBuffer,videoCpuTime:this._codec.videoCpuTime,frameEndTimestamp:t}),this._pingProcessing()})),void this._codec.sync()}if(!this._codec.hasAudio)return void this._continueSeekedPlayback()}if(this._codec.hasAudio){if(this._pendingAudio)return;return this._codec.audioReady?this._codec.audioTimestamp+e{this._pingProcessing()})):void this._continueSeekedPlayback():void this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?(this._log(\"stream ended during linear seeking on audio\"),this._dataEnded=!0,this._continueSeekedPlayback()):this._readBytesAndWait()}))}}_doProcessBisectionSeek(){var e,t;if(this._codec.hasVideo)t=this._codec.frameTimestamp,e=this._targetPerFrameTime/1e3;else{if(!this._codec.hasAudio)throw new Error(\"Invalid seek state; no audio or video track available\");t=this._codec.audioTimestamp,e=1/256}t<0?this._codec.process((e=>{if(e)this._pingProcessing();else if(this._streamEnded){if(this._log(\"stream ended during bisection seek\"),!this._seekBisector.right())throw this._log(\"failed going back\"),new Error(\"not sure what to do\")}else this._readBytesAndWait()})):t-e/2>this._bisectTargetTime?this._seekBisector.left()||(this._log(\"close enough (left)\"),this._seekTargetTime=t,this._continueSeekedPlayback()):t+e/20?this._targetPerFrameTime=1e3/this._videoInfo.fps:this._targetPerFrameTime=16.667,this._canvas.width=this._videoInfo.displayWidth,this._canvas.height=this._videoInfo.displayHeight,OGVPlayer.styleManager.appendRule(\".\"+this._instanceId,{width:this._videoInfo.displayWidth+\"px\",height:this._videoInfo.displayHeight+\"px\"}),OGVPlayer.updatePositionOnResize();var e={};void 0!==this._options.webGL&&(e.webGL=this._options.webGL),this._options.forceWebGL&&(e.webGL=\"required\"),this._frameSink=h.default.attach(this._canvas,e)}_doProcessing(){if(this._didSeek&&(this._didSeek=!1),this._nextProcessingTimer=null,this._isProcessing(),this._depth>0)throw new Error(\"REENTRANCY FAIL: doProcessing recursing unexpectedly\");var e=0;do{if(this._needProcessing=!1,this._depth++,this._doProcessingLoop(),this._depth--,this._needProcessing&&this._isProcessing())throw new Error(\"REENTRANCY FAIL: waiting on input or codec but asked to keep processing\");++e>500&&(this._log(\"stuck in processing loop; breaking with timer\"),this._needProcessing=0,this._pingProcessing(0))}while(this._needProcessing)}_doProcessingLoop(){if(this._actionQueue.length)this._actionQueue.shift()();else if(this._state==T)this._doProcessInitial();else if(this._state==k)this._doProcessSeekingEnd();else if(this._state==P)this._doProcessLoaded();else if(this._state==w)this._doProcessPreload();else if(this._state==E)this._doProcessReady();else if(this._state==A)this._doProcessSeeking();else if(this._state==x)this._doProcessPlay();else{if(this._state!=R)throw new Error(\"Unexpected OGVPlayer state \"+this._state);this._doProcessError()}}_doProcessInitial(){if(this._codec.loadedMetadata){if(!this._codec.hasVideo&&!this._codec.hasAudio)throw new Error(\"No audio or video found, something is wrong\");this._codec.hasAudio&&(this._audioInfo=this._codec.audioFormat),this._codec.hasVideo&&(this._videoInfo=this._codec.videoFormat,this._setupVideo()),isNaN(this._codec.duration)||(this._duration=this._codec.duration),null===this._duration&&this._stream.seekable&&\"video/ogg\"==this._detectedType?(this._state=k,this._lastSeenTimestamp=-1,this._codec.flush((()=>{this._seekStream(Math.max(0,this._stream.length-131072))}))):(this._state=P,this._pingProcessing())}else this._codec.process((e=>{if(e)this._pingProcessing();else{if(this._streamEnded)throw new Error(\"end of file before headers found\");this._log(\"reading more cause we are out of data\"),this._readBytesAndWait()}}))}_doProcessSeekingEnd(){this._codec.frameReady?(this._log(\"saw frame with \"+this._codec.frameTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.frameTimestamp),this._codec.discardFrame((()=>{this._pingProcessing()}))):this._codec.audioReady?(this._log(\"saw audio with \"+this._codec.audioTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.audioTimestamp),this._codec.discardAudio((()=>{this._pingProcessing()}))):this._codec.process((e=>{e?this._pingProcessing():this._stream.eof?(this._log(\"seek-duration: we are at the end: \"+this._lastSeenTimestamp),this._lastSeenTimestamp>0&&(this._duration=this._lastSeenTimestamp),this._state=P,this._codec.flush((()=>{this._streamEnded=!1,this._dataEnded=!1,this._seekStream(0)}))):this._readBytesAndWait()}))}_doProcessLoaded(){this._state=w,this._fireEventAsync(\"loadedmetadata\"),this._fireEventAsync(\"durationchange\"),this._codec.hasVideo&&this._fireEventAsync(\"resize\"),this._pingProcessing(0)}_doProcessPreload(){!this._codec.frameReady&&this._codec.hasVideo||!this._codec.audioReady&&this._codec.hasAudio?this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?this._ended=!0:this._readBytesAndWait()})):(this._state=E,this._fireEventAsync(\"loadeddata\"),this._pingProcessing())}_doProcessReady(){if(this._log(\"initial seek to \"+this._initialSeekTime),this._initialSeekTime>0){var e=this._initialSeekTime;this._initialSeekTime=0,this._log(\"initial seek to \"+e),this._doSeek(e)}else if(this._paused)this._log(\"paused while in ready\");else{var finishStartPlaying=()=>{this._log(\"finishStartPlaying\"),this._state=x,this._lastFrameTimestamp=d(),this._codec.hasAudio&&this._audioFeeder?this._prebufferingAudio=!0:this._startPlayback(),this._pingProcessing(0),this._fireEventAsync(\"play\"),this._fireEventAsync(\"playing\")};!this._codec.hasAudio||this._audioFeeder||this._muted?finishStartPlaying():(this._initAudioFeeder(),this._audioFeeder.waitUntilReady(finishStartPlaying))}}_doProcessSeeking(){if(this._seekState==O)throw new Error(\"seeking in invalid state (not seeking?)\");if(this._seekState==F)this._doProcessBisectionSeek();else if(this._seekState==S)this._doProcessBisectionSeek();else{if(this._seekState!=C)throw new Error(\"Invalid seek state \"+this._seekState);this._doProcessLinearSeeking()}}_doProcessPlay(){var e=this._codec;if(this._paused)this._log(\"paused during playback; stopping loop\");else if((!e.hasAudio||e.audioReady||this._pendingAudio||this._dataEnded)&&(!e.hasVideo||e.frameReady||this._pendingFrame||this._decodedFrames.length||this._dataEnded)){var t,i,s,d=null,h=0,u=!1,c=0;if(e.hasAudio&&this._audioFeeder?(d=this._audioFeeder.getPlaybackState(),h=this._getPlaybackTime(d),u=this._dataEnded&&0==this._audioFeeder.durationBuffered,this._prebufferingAudio&&(this._audioFeeder.durationBuffered>=2*this._audioFeeder.bufferThreshold&&(!e.hasVideo||this._decodedFrames.length>=this._framePipelineDepth)||this._dataEnded)&&(this._log(\"prebuffering audio done; buffered to \"+this._audioFeeder.durationBuffered),this._startPlayback(h),this._prebufferingAudio=!1),d.dropped!=this._droppedAudio&&this._log(\"dropped \"+(d.dropped-this._droppedAudio)),d.delayed!=this._delayedAudio&&this._log(\"delayed \"+(d.delayed-this._delayedAudio)),this._droppedAudio=d.dropped,this._delayedAudio=d.delayed,(t=this._audioFeeder.durationBuffered<=2*this._audioFeeder.bufferThreshold)&&(this._codec.audioReady?this._pendingAudio>=this._audioPipelineDepth&&(this._log(\"audio decode disabled: \"+this._pendingAudio+\" packets in flight\"),t=!1):t=!1)):(h=this._getPlaybackTime(),t=this._codec.audioReady&&this._audioEndTimestamp0,s=this._pendingFrame+this._decodedFrames.length=l){for(var f=-1,_=0;_=0)for(;f-- >=0;){this._lateFrames++;var p=this._decodedFrames.shift();this._log(\"skipping already-decoded late frame at \"+p.frameEndTimestamp),c=1e3*(p.frameEndTimestamp-h),this._frameEndTimestamp=p.frameEndTimestamp,this._actualPerFrameTime=this._targetPerFrameTime-c,this._framesProcessed++,p.dropped=!0,this._doFrameComplete(p)}var m=this._codec.nextKeyframeTimestamp,g=m-this._targetPerFrameTime/1e3*(this._framePipelineDepth+this._pendingFrame);if(m>=0&&m!=this._codec.frameTimestamp&&h>=g){this._log(\"skipping late frame at \"+this._decodedFrames[0].frameEndTimestamp+\" vs \"+h+\", expect to see keyframe at \"+m);for(var v=0;v{})),this._framesProcessed++,this._doFrameComplete(k)}return void(this._isProcessing()||this._pingProcessing())}}else i&&c<=4||(i=!1)}if(s){this._log(\"play loop: ready to decode frame; thread depth: \"+this._pendingFrame+\", have buffered: \"+this._decodedFrames.length),0==this._videoInfo.fps&&this._codec.frameTimestamp-this._frameEndTimestamp>0&&(this._targetPerFrameTime=1e3*(this._codec.frameTimestamp-this._frameEndTimestamp)),this._totalFrameTime+=this._targetPerFrameTime,this._totalFrameCount++;var P=this._frameEndTimestamp=this._codec.frameTimestamp;this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:P});var w=this._pendingFrames,E=!1,x=this._time((()=>{this._codec.decodeFrame((e=>{w===this._pendingFrames?(this._log(\"play loop callback: decoded frame\"),this._pendingFrame--,this._pendingFrames.shift(),e?this._decodedFrames.push({yCbCrBuffer:this._codec.frameBuffer,videoCpuTime:this._codec.videoCpuTime,frameEndTimestamp:P}):this._log(\"Bad video packet or something\"),this._codec.process((()=>{this._isProcessing()||this._pingProcessing(E?void 0:0)}))):this._log(\"play loop callback after flush, discarding\")}))}));this._pendingFrame&&(E=!0,this._proxyTime+=x,this._pingProcessing(),this._dataEnded&&this._codec.sync())}else if(t){this._log(\"play loop: ready for audio; depth: \"+this._pendingAudio),this._pendingAudio++;var A=this._codec.audioTimestamp,R=this._time((()=>{this._codec.decodeAudio((e=>{if(this._pendingAudio--,this._log(\"play loop callback: decoded audio\"),this._audioEndTimestamp=A,e){var t=this._codec.audioBuffer;if(t&&(this._bufferTime+=this._time((()=>{this._audioFeeder&&this._audioFeeder.bufferData(t)})),!this._codec.hasVideo)){this._framesProcessed++;var i={frameEndTimestamp:this._audioEndTimestamp};this._doFrameComplete(i)}}this._isProcessing()||this._pingProcessing()}))}));this._pendingAudio&&(this._proxyTime+=R,this._codec.audioReady?this._pingProcessing():this._doProcessPlayDemux())}else if(i){this._log(\"play loop: ready to draw frame\"),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null);var O=this._decodedFrames.shift();this._currentVideoCpuTime=O.videoCpuTime,this._drawingTime+=this._time((()=>{this._drawFrame(O.yCbCrBuffer)})),this._framesProcessed++,this._doFrameComplete(O),this._pingProcessing()}else if(!this._decodedFrames.length||this._nextFrameTimer||this._prebufferingAudio)if(this._dataEnded&&!(this._pendingAudio||this._pendingFrame||this._decodedFrames.length)){this._log(\"play loop: playback reached end of data \"+[this._pendingAudio,this._pendingFrame,this._decodedFrames.length]);var F=0;this._codec.hasAudio&&this._audioFeeder&&(F=1e3*this._audioFeeder.durationBuffered),F>0?(this._log(\"play loop: ending pending \"+F+\" ms\"),this._pingProcessing(Math.max(0,F))):(this._log(\"play loop: ENDING NOW: playback time \"+this._getPlaybackTime()+\"; frameEndTimestamp: \"+this._frameEndTimestamp),this._stopPlayback(),this._prebufferingAudio=!1,this._initialPlaybackOffset=Math.max(this._audioEndTimestamp,this._frameEndTimestamp),this._ended=!0,this._paused=!0,this._fireEventAsync(\"pause\"),this._fireEventAsync(\"ended\"))}else this._prebufferingAudio&&(e.hasVideo&&!e.frameReady||e.hasAudio&&!e.audioReady)?(this._log(\"play loop: prebuffering demuxing\"),this._doProcessPlayDemux()):this._log(\"play loop: waiting on async/timers\");else{var S=c;this._log(\"play loop: setting a timer for drawing \"+S),this._nextFrameTimer=setTimeout((()=>{this._nextFrameTimer=null,this._pingProcessing()}),S)}}else this._log(\"play loop: demuxing\"),this._doProcessPlayDemux()}_doProcessPlayDemux(){var e=this._codec.frameReady,t=this._codec.audioReady;this._codec.process((i=>{this._codec.frameReady&&!e||this._codec.audioReady&&!t?(this._log(\"demuxer has packets\"),this._pingProcessing()):i?(this._log(\"demuxer processing to find more packets\"),this._pingProcessing()):(this._log(\"demuxer ran out of data\"),this._streamEnded?(this._log(\"demuxer reached end of data stream\"),this._dataEnded=!0,this._pingProcessing()):(this._log(\"demuxer loading more data\"),this._readBytesAndWait()))}))}_doProcessError(){}_isProcessing(){return this._stream&&(this._stream.buffering||this._stream.seeking)||this._codec&&this._codec.processing}_readBytesAndWait(){if(this._stream.buffering||this._stream.seeking)this._log(\"readBytesAndWait during i/o\");else{this._stream.read(32768).then((e=>{this._log(\"got input \"+[e.byteLength]),e.byteLength&&this._actionQueue.push((()=>{this._codec.receiveInput(e,(()=>{this._pingProcessing()}))})),this._stream.eof&&(this._log(\"stream is at end!\"),this._streamEnded=!0),this._isProcessing()||this._pingProcessing()})).catch((e=>{this._onStreamError(e)}))}}_pingProcessing(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(this._stream&&this._stream.waiting)this._log(\"waiting on input\");else{this._nextProcessingTimer&&(this._log(\"canceling old processing timer\"),clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null);e>-1/256?this._nextProcessingTimer=setTimeout((()=>{this._pingProcessing()}),e):this._depth?this._needProcessing=!0:this._doProcessing()}}_startProcessingVideo(e){if(!this._started&&!this._codec){this._framesProcessed=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._started=!0,this._ended=!1;var t={base:this._options.base,worker:this._enableWorker,threading:this._enableThreading,simd:this._enableSIMD};this._detectedType&&(t.type=this._detectedType),this._codec=new v.default(t),this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastDrawingTime=0,this._lastProxyTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastFrameDrawingTime=0,this._currentVideoCpuTime=0,this._codec.onseek=e=>{this._didSeek=!0,this._stream&&this._seekStream(e)},this._codec.init((()=>{this._codec.receiveInput(e,(()=>{this._readBytesAndWait()}))}))}}_loadCodec(e){this._stream.read(1024).then((t=>{var i=new Uint8Array(t);i.length>4&&i[0]==\"O\".charCodeAt(0)&&i[1]==\"g\".charCodeAt(0)&&i[2]==\"g\".charCodeAt(0)&&i[3]==\"S\".charCodeAt(0)?this._detectedType=\"video/ogg\":i.length>4&&26==i[0]&&69==i[1]&&223==i[2]&&163==i[3]?this._detectedType=\"video/webm\":this._detectedType=\"video/ogg\",e(t)}))}_prepForLoad(e){this._stopVideo();var doLoad=()=>{this._options.stream?this._stream=this._options.stream:this._stream=new u.default({url:this.src,cacheSize:16777216,progressive:!1}),this._stream.load().then((()=>{this._loading=!1,this._currentSrc=this.src,this._byteLength=this._stream.seekable?this._stream.length:0;var e=this._stream.headers[\"x-content-duration\"];\"string\"==typeof e&&(this._duration=parseFloat(e)),this._loadCodec((e=>{this._startProcessingVideo(e)}))})).catch((e=>{this._onStreamError(e)}))};this._currentSrc=\"\",this._loading=!0,this._actionQueue.push((()=>{e&&\"none\"===this.preload?this._loading=!1:doLoad()})),this._pingProcessing(0)}load(){this._prepForLoad()}canPlayType(e){var t=new m.default(e);function checkTypes(e){if(t.codecs){var i=0,s=0;return t.codecs.forEach((t=>{e.indexOf(t)>=0?i++:s++})),0===i||s>0?\"\":\"probably\"}return\"maybe\"}return\"ogg\"!==t.minor||\"audio\"!==t.major&&\"video\"!==t.major&&\"application\"!==t.major?\"webm\"!==t.minor||\"audio\"!==t.major&&\"video\"!==t.major?\"\":checkTypes([\"vorbis\",\"opus\",\"vp8\",\"vp9\"]):checkTypes([\"vorbis\",\"opus\",\"theora\"])}play(){this._muted||this._options.audioContext||OGVPlayer.initSharedAudioContext(),this._paused&&(this._startedPlaybackInDocument=document.body.contains(this),this._paused=!1,this._state==A||(this._started&&this._codec&&this._codec.loadedMetadata?(this._ended&&this._stream&&this._byteLength?(this._log(\".play() starting over after end\"),this._seek(0)):this._log(\".play() while already started\"),this._state=E,this._isProcessing()||this._pingProcessing()):this._loading?this._log(\".play() while loading\"):(this._log(\".play() before started\"),this._stream||this.load()))),this._video&&this._video.paused&&this._video.play()}getPlaybackStats(){return{targetPerFrameTime:this._targetPerFrameTime,framesProcessed:this._framesProcessed,videoBytes:this._codec?this._codec.videoBytes:0,audioBytes:this._codec?this._codec.audioBytes:0,playTime:this._playTime,demuxingTime:this._codec?this._codec.demuxerCpuTime-this._lastDemuxerCpuTime:0,videoDecodingTime:this._codec?this._codec.videoCpuTime-this._lastVideoCpuTime:0,audioDecodingTime:this._codec?this._codec.audioCpuTime-this._lastAudioCpuTime:0,bufferTime:this._bufferTime-this._lastBufferTime,drawingTime:this._drawingTime-this._lastDrawingTime,proxyTime:this._proxyTime-this._lastProxyTime,droppedAudio:this._droppedAudio,delayedAudio:this._delayedAudio,jitter:this._totalJitter/this._framesProcessed,lateFrames:this._lateFrames}}resetPlaybackStats(){this._framesProcessed=0,this._playTime=0,this._codec&&(this._lastDemuxerCpuTime=this._codec.demuxerCpuTime,this._lastVideoCpuTime=this._codec.videoCpuTime,this._lastAudioCpuTime=this._codec.audioCpuTime,this._codec.videoBytes=0,this._codec.audioBytes=0),this._lastBufferTime=this._bufferTime,this._lastDrawingTime=this._drawingTime,this._lastProxyTime=this._proxyTime,this._totalJitter=0,this._totalFrameTime=0,this._totalFrameCount=0}getVideoFrameSink(){return this._frameSink}getCanvas(){return this._canvas}getVideo(){return this._video}pause(){this._paused||(this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._stopPlayback(),this._prebufferingAudio=!1,this._paused=!0,this._fireEvent(\"pause\"))}stop(){this._stopVideo(),this._paused=!0}fastSeek(e){this._seek(+e,D)}}if((0,_.default)(OGVPlayer,b),OGVPlayer.instanceCount=0,OGVPlayer.styleManager=new function StyleManager(){var e=document.createElement(\"style\");e.type=\"text/css\",e.textContent=\"ogvjs { display: inline-block; position: relative; -webkit-user-select: none; -webkit-tap-highlight-color: rgba(0,0,0,0); \",document.head.appendChild(e);var t=e.sheet;this.appendRule=function(e,i){var s=[];for(var d in i)i.hasOwnProperty(d)&&s.push(d+\":\"+i[d]);var h=e+\"{\"+s.join(\";\")+\"}\";t.insertRule(h,t.cssRules.length-1)}},OGVPlayer.supportsObjectFit=\"string\"==typeof document.createElement(\"canvas\").style.objectFit,OGVPlayer.supportsObjectFit&&navigator.userAgent.match(/iPhone|iPad|iPod Touch/)&&(OGVPlayer.supportsObjectFit=!1),OGVPlayer.supportsObjectFit&&navigator.userAgent.match(/Edge/)&&(OGVPlayer.supportsObjectFit=!1),OGVPlayer.supportsObjectFit)OGVPlayer.updatePositionOnResize=function(){};else{OGVPlayer.updatePositionOnResize=function(){function fixup(e,t,i){var s=e.offsetParent||e.parentNode,d=t/i;if(d>s.offsetWidth/s.offsetHeight){var h=s.offsetWidth/d,u=(s.offsetHeight-h)/2;e.style.width=\"100%\",e.style.height=h+\"px\",e.style.marginLeft=0,e.style.marginRight=0,e.style.marginTop=u+\"px\",e.style.marginBottom=u+\"px\"}else{var c=s.offsetHeight*d,l=(s.offsetWidth-c)/2;e.style.width=c+\"px\",e.style.height=\"100%\",e.style.marginLeft=l+\"px\",e.style.marginRight=l+\"px\",e.style.marginTop=0,e.style.marginBottom=0}}function queryOver(e,t){var i=document.querySelectorAll(e);Array.prototype.slice.call(i).forEach(t)}queryOver(\"ogvjs > canvas\",(function(e){fixup(e,e.width,e.height)})),queryOver(\"ogvjs > img\",(function(e){fixup(e,e.naturalWidth,e.naturalHeight)}))};var M=function fullResizeVideo(){y(OGVPlayer.updatePositionOnResize)};window.addEventListener(\"resize\",OGVPlayer.updatePositionOnResize),window.addEventListener(\"orientationchange\",OGVPlayer.updatePositionOnResize),document.addEventListener(\"fullscreenchange\",M),document.addEventListener(\"mozfullscreenchange\",M),document.addEventListener(\"webkitfullscreenchange\",M),document.addEventListener(\"MSFullscreenChange\",M)}var V=OGVPlayer;t.default=V},580:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var i=function OGVProxyClass(e){return class{constructor(t,i,s){for(var d in s=s||{},this.worker=t,this.transferables=function(){var e=new ArrayBuffer(1024),i=new Uint8Array(e);try{return t.postMessage({action:\"transferTest\",bytes:i},[e]),!e.byteLength}catch(e){return!1}}(),e)e.hasOwnProperty(d)&&(this[d]=e[d]);this.processingQueue=0,Object.defineProperty(this,\"processing\",{get:function get(){return this.processingQueue>0}}),this.messageCount=0,this.pendingCallbacks={},this.worker.addEventListener(\"message\",(e=>{this.handleMessage(e)})),this.proxy(\"construct\",[i,s],(()=>{}))}proxy(e,t,i){var s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];if(!this.worker)throw'Tried to call \"'+e+'\" method on closed proxy object';var d=\"callback-\"+ ++this.messageCount+\"-\"+e;i&&(this.pendingCallbacks[d]=i);var h={action:e,callbackId:d,args:t||[]};this.processingQueue++,this.transferables?this.worker.postMessage(h,s):this.worker.postMessage(h)}terminate(){this.worker&&(this.worker.terminate(),this.worker=null,this.processingQueue=0,this.pendingCallbacks={})}handleMessage(e){if(this.processingQueue--,\"callback\"===e.data.action){var t=e.data,i=t.callbackId,s=t.args,d=this.pendingCallbacks[i];if(t.props)for(var h in t.props)t.props.hasOwnProperty(h)&&(this[h]=t.props[h]);d&&(delete this.pendingCallbacks[i],d.apply(this,s))}}}};t.default=i},168:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var i=class OGVTimeRanges{constructor(e){this._ranges=e,this.length=e.length}start(e){if(e<0||e>this.length||e!==(0|e))throw new RangeError(\"Invalid index\");return this._ranges[e][0]}end(e){if(e<0||e>this.length||e!==(0|e))throw new RangeError(\"Invalid index\");return this._ranges[e][1]}};t.default=i},625:(e,t,i)=>{\"use strict\";var s=i(318);Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var d=s(i(964));var h=class OGVWrapperCodec{constructor(e){return this.options=e||{},this.demuxer=null,this.videoDecoder=null,this.audioDecoder=null,this.flushIter=0,this.loadedMetadata=!1,this.processing=!1,Object.defineProperties(this,{duration:{get:function get(){return this.loadedMetadata?this.demuxer.duration:NaN}},hasAudio:{get:function get(){return this.loadedMetadata&&!!this.audioDecoder}},audioReady:{get:function get(){return this.hasAudio&&this.demuxer.audioReady}},audioTimestamp:{get:function get(){return this.demuxer.audioTimestamp}},audioFormat:{get:function get(){return this.hasAudio?this.audioDecoder.audioFormat:null}},audioBuffer:{get:function get(){return this.hasAudio?this.audioDecoder.audioBuffer:null}},hasVideo:{get:function get(){return this.loadedMetadata&&!!this.videoDecoder}},frameReady:{get:function get(){return this.hasVideo&&this.demuxer.frameReady}},frameTimestamp:{get:function get(){return this.demuxer.frameTimestamp}},keyframeTimestamp:{get:function get(){return this.demuxer.keyframeTimestamp}},nextKeyframeTimestamp:{get:function get(){return this.demuxer.nextKeyframeTimestamp}},videoFormat:{get:function get(){return this.hasVideo?this.videoDecoder.videoFormat:null}},frameBuffer:{get:function get(){return this.hasVideo?this.videoDecoder.frameBuffer:null}},seekable:{get:function get(){return this.demuxer.seekable}},demuxerCpuTime:{get:function get(){return this.demuxer?this.demuxer.cpuTime:0}},audioCpuTime:{get:function get(){return this.audioDecoder?this.audioDecoder.cpuTime:0}},videoCpuTime:{get:function get(){return this.videoDecoder?this.videoDecoder.cpuTime:0}}}),this.loadedDemuxerMetadata=!1,this.loadedAudioMetadata=!1,this.loadedVideoMetadata=!1,this.loadedAllMetadata=!1,this.onseek=null,this.videoBytes=0,this.audioBytes=0,this}flushSafe(e){var t=this.flushIter;return i=>{this.flushIter<=t&&e(i)}}init(e){var t;this.processing=!0,t=\"video/webm\"===this.options.type||\"audio/webm\"===this.options.type?\"OGVDemuxerWebMW\":\"OGVDemuxerOggW\",d.default.loadClass(t,(t=>{t().then((t=>{this.demuxer=t,t.onseek=e=>{this.onseek&&this.onseek(e)},t.init((()=>{this.processing=!1,e()}))}))}))}close(){this.demuxer&&(this.demuxer.close(),this.demuxer=null),this.videoDecoder&&(this.videoDecoder.close(),this.videoDecoder=null),this.audioDecoder&&(this.audioDecoder.close(),this.audioDecoder=null)}receiveInput(e,t){this.demuxer.receiveInput(e,t)}process(e){if(this.processing)throw new Error(\"reentrancy fail on OGVWrapperCodec.process\");this.processing=!0;var finish=t=>{this.processing=!1,e(t)},doProcessData=()=>{this.demuxer.process(finish)};this.demuxer.loadedMetadata&&!this.loadedDemuxerMetadata?this.loadAudioCodec((()=>{this.loadVideoCodec((()=>{this.loadedDemuxerMetadata=!0,this.loadedAudioMetadata=!this.audioDecoder,this.loadedVideoMetadata=!this.videoDecoder,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)}))})):this.loadedDemuxerMetadata&&!this.loadedAudioMetadata?this.audioDecoder.loadedMetadata?(this.loadedAudioMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)):this.demuxer.audioReady?this.demuxer.dequeueAudioPacket(((e,t)=>{this.audioBytes+=e.byteLength,this.audioDecoder.processHeader(e,(e=>{finish(!0)}))})):doProcessData():this.loadedAudioMetadata&&!this.loadedVideoMetadata?this.videoDecoder.loadedMetadata?(this.loadedVideoMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)):this.demuxer.frameReady?(this.processing=!0,this.demuxer.dequeueVideoPacket((e=>{this.videoBytes+=e.byteLength,this.videoDecoder.processHeader(e,(()=>{finish(!0)}))}))):doProcessData():this.loadedVideoMetadata&&!this.loadedMetadata&&this.loadedAllMetadata?(this.loadedMetadata=!0,finish(!0)):!this.loadedMetadata||this.hasAudio&&!this.demuxer.audioReady||this.hasVideo&&!this.demuxer.frameReady?doProcessData():finish(!0)}decodeFrame(e){var t=this.flushSafe(e),i=this.frameTimestamp,s=this.keyframeTimestamp;this.demuxer.dequeueVideoPacket((e=>{this.videoBytes+=e.byteLength,this.videoDecoder.processFrame(e,(e=>{var d=this.videoDecoder.frameBuffer;d&&(d.timestamp=i,d.keyframeTimestamp=s),t(e)}))}))}decodeAudio(e){var t=this.flushSafe(e);this.demuxer.dequeueAudioPacket(((e,i)=>{this.audioBytes+=e.byteLength,this.audioDecoder.processAudio(e,(e=>{if(i){var s=this.audioDecoder.audioBuffer,d=[];for(var h of s){var u=Math.round(i*this.audioFormat.rate/1e9);u>0?d.push(h.subarray(0,h.length-Math.min(u,h.length))):d.push(h.subarray(Math.min(Math.abs(u),h.length),h.length))}this.audioDecoder.audioBuffer=d}return t(e)}))}))}discardFrame(e){this.demuxer.dequeueVideoPacket((t=>{this.videoBytes+=t.byteLength,e()}))}discardAudio(e){this.demuxer.dequeueAudioPacket(((t,i)=>{this.audioBytes+=t.byteLength,e()}))}flush(e){this.flushIter++,this.demuxer.flush(e)}sync(){this.videoDecoder&&this.videoDecoder.sync()}recycleFrame(e){this.videoDecoder&&this.videoDecoder.recycleFrame(e)}getKeypointOffset(e,t){this.demuxer.getKeypointOffset(e,t)}seekToKeypoint(e,t){this.demuxer.seekToKeypoint(e,this.flushSafe(t))}loadAudioCodec(e){if(this.demuxer.audioCodec){var t={vorbis:\"OGVDecoderAudioVorbisW\",opus:\"OGVDecoderAudioOpusW\"}[this.demuxer.audioCodec];this.processing=!0,d.default.loadClass(t,(t=>{var i={};this.demuxer.audioFormat&&(i.audioFormat=this.demuxer.audioFormat),t(i).then((t=>{this.audioDecoder=t,t.init((()=>{this.loadedAudioMetadata=t.loadedMetadata,this.processing=!1,e()}))}))}),{worker:this.options.worker})}else e()}loadVideoCodec(e){if(this.demuxer.videoCodec){var t=!!this.options.simd,i=!!this.options.threading,s={theora:\"OGVDecoderVideoTheoraW\",vp8:i?\"OGVDecoderVideoVP8MTW\":\"OGVDecoderVideoVP8W\",vp9:i?t?\"OGVDecoderVideoVP9SIMDMTW\":\"OGVDecoderVideoVP9MTW\":t?\"OGVDecoderVideoVP9SIMDW\":\"OGVDecoderVideoVP9W\",av1:i?t?\"OGVDecoderVideoAV1SIMDMTW\":\"OGVDecoderVideoAV1MTW\":t?\"OGVDecoderVideoAV1SIMDW\":\"OGVDecoderVideoAV1W\"}[this.demuxer.videoCodec];this.processing=!0,d.default.loadClass(s,(t=>{var s={};this.demuxer.videoFormat&&(s.videoFormat=this.demuxer.videoFormat),i&&delete window.ENVIRONMENT_IS_PTHREAD,t(s).then((t=>{this.videoDecoder=t,t.init((()=>{this.loadedVideoMetadata=t.loadedMetadata,this.processing=!1,e()}))}))}),{worker:this.options.worker&&!this.options.threading})}else e()}};t.default=h},539:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var i=new class WebAssemblyChecker{constructor(){this.tested=!1,this.testResult=void 0}wasmSupported(){if(!this.tested){try{\"object\"==typeof WebAssembly?this.testResult=function testSafariWebAssemblyBug(){var e=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),t=new WebAssembly.Module(e);return 0!==new WebAssembly.Instance(t,{}).exports.test(4)}():this.testResult=!1}catch(e){console.log(\"Exception while testing WebAssembly\",e),this.testResult=!1}this.tested=!0}return this.testResult}};t.default=i},309:(e,t)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=void 0;var i=function extend(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])};t.default=i},431:(e,t,i)=>{\"use strict\";var s=function(){function defineProperties(e,t){for(var i=0;i{\"use strict\";var s=function(){function defineProperties(e,t){for(var i=0;i=200&&e.xhr.status<300?(e.length=getXHRLength(e.xhr),e.headers=function getXHRHeaders(e){var t={};return e.getAllResponseHeaders().split(/\\r?\\n/).forEach((function(e){var i=e.split(/:\\s*/,2);i.length>1&&(t[i[0].toLowerCase()]=i[1])})),t}(e.xhr),e.onXHRStart()):(s(),i(new Error(\"HTTP error \"+e.xhr.status)))}},h=function checkError(){s(),i(new Error(\"network error\"))},u=function checkBackendOpen(){s(),t()};s=function oncomplete(){e.xhr.removeEventListener(\"readystatechange\",d),e.xhr.removeEventListener(\"error\",h),e.off(\"open\",u),e._onAbort=null},e.initXHR(),e.xhr.addEventListener(\"readystatechange\",d),e.xhr.addEventListener(\"error\",h),e.on(\"open\",u),e.xhr.send()}))}},{key:\"bufferToOffset\",value:function bufferToOffset(e){return Promise.reject(new Error(\"abstract\"))}},{key:\"abort\",value:function abort(){if(this.xhr.abort(),this._onAbort){var e=this._onAbort;this._onAbort=null;var t=new Error(\"Aborted\");t.name=\"AbortError\",e(t)}}},{key:\"initXHR\",value:function initXHR(){var e=this.url;this.cachever&&(e+=\"?buggy_cachever=\"+this.cachever),this.xhr.open(\"GET\",e);var t=null;(this.offset||this.length)&&(t=\"bytes=\"+this.offset+\"-\"),this.length&&(t+=this.offset+this.length-1),null!==t&&this.xhr.setRequestHeader(\"Range\",t)}},{key:\"onXHRStart\",value:function onXHRStart(){throw new Error(\"abstract\")}}]),Backend}(i(566));e.exports=d},810:(e,t,i)=>{\"use strict\";var s=function(){function defineProperties(e,t){for(var i=0;i0&&(this.bytesRead+=e.length,this.emit(\"buffer\",e))}},{key:\"onXHRLoad\",value:function onXHRLoad(){this.onXHRProgress(),d(BinaryStringBackend.prototype.__proto__||Object.getPrototypeOf(BinaryStringBackend.prototype),\"onXHRLoad\",this).call(this)}}]),BinaryStringBackend}(i(828));h.supported=function(){try{return!!(new XMLHttpRequest).overrideMimeType}catch(e){return!1}},e.exports=h},828:(e,t,i)=>{\"use strict\";var s=function(){function defineProperties(e,t){for(var i=0;i=e)i();else{var d=null;t._onAbort=function(e){d(),s(e)};var h=function checkBuffer(){t.offset>=e&&!t.eof&&(d(),i())},u=function checkDone(){d(),i()},c=function checkError(){d(),s(new Error(\"error streaming\"))};d=function oncomplete(){t.buffering=!1,t.off(\"buffer\",h),t.off(\"done\",u),t.off(\"error\",c),t._onAbort=null},t.buffering=!0,t.on(\"buffer\",h),t.on(\"done\",u),t.on(\"error\",c)}}))}},{key:\"initXHR\",value:function initXHR(){d(DownloadBackend.prototype.__proto__||Object.getPrototypeOf(DownloadBackend.prototype),\"initXHR\",this).call(this)}},{key:\"onXHRStart\",value:function onXHRStart(){var e=this;this.xhr.addEventListener(\"progress\",(function(){return e.onXHRProgress()})),this.xhr.addEventListener(\"error\",(function(){return e.onXHRError()})),this.xhr.addEventListener(\"load\",(function(){return e.onXHRLoad()})),this.emit(\"open\")}},{key:\"onXHRProgress\",value:function onXHRProgress(){throw new Error(\"abstract\")}},{key:\"onXHRError\",value:function onXHRError(){this.emit(\"error\")}},{key:\"onXHRLoad\",value:function onXHRLoad(){this.eof=!0,this.emit(\"done\")}}]),DownloadBackend}(i(306));e.exports=h},761:(e,t,i)=>{\"use strict\";var s=i(855),d=i(810),h=i(431);var u=null;e.exports=function instantiate(e){if(!1===e.progressive)return new h(e);if(u||(u=function autoselect(){return s.supported()?s:d.supported()?d:null}()),!u)throw new Error(\"No supported backend class\");return new u(e)}},855:(e,t,i)=>{\"use strict\";var s=function(){function defineProperties(e,t){for(var i=0;i{\"use strict\";var t=function(){function defineProperties(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{},t=e.buffer,i=void 0===t?void 0:t,s=e.string,d=void 0===s?void 0:s,h=e.start,u=void 0===h?0:h,c=e.end,l=void 0===c?u+(i?i.byteLength:d?d.length:0):c,f=e.prev,_=void 0===f?null:f,p=e.next,m=void 0===p?null:p,g=e.eof,v=void 0!==g&&g,y=e.empty,b=void 0===y?!(i||d):y,T=e.timestamp,k=void 0===T?Date.now():T;_classCallCheck(this,CacheItem),this.start=u,this.end=l,this.prev=_,this.next=m,this.eof=v,this.empty=b,this.timestamp=k,this.buffer=i,this.string=d,Object.defineProperty(this,\"length\",{get:function get(){return this.end-this.start}})}return t(CacheItem,[{key:\"contains\",value:function contains(e){return e>=this.start&&(e{\"use strict\";var s=function(){function defineProperties(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{},t=e.cacheSize,i=void 0===t?0:t;_classCallCheck(this,CachePool);var s=new d({eof:!0});this.head=s,this.tail=s,this.readOffset=0,this.readCursor=s,this.writeOffset=0,this.writeCursor=s,this.cacheSize=i}return s(CachePool,[{key:\"bytesReadable\",value:function bytesReadable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,t=this.readOffset,i=this.readCursor,s=i.last((function(i){return!i.empty&&i.start<=t+e}));return s?Math.min(e,s.end-t):0}},{key:\"bytesWritable\",value:function bytesWritable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,t=this.writeOffset,i=this.writeCursor;if(i.eof)return e;var s=i.last((function(i){return i.empty&&i.start<=t+e}));return s?Math.min(e,s.end-t):0}},{key:\"seekRead\",value:function seekRead(e){var t=this.head.first((function(t){return t.contains(e)}));if(!t)throw new Error(\"read seek out of range\");this.readOffset=e,this.readCursor=t}},{key:\"seekWrite\",value:function seekWrite(e){var t=this.head.first((function(t){return t.contains(e)}));if(!t)throw new Error(\"write seek out of range\");this.writeOffset=e,this.writeCursor=t}},{key:\"readBytes\",value:function readBytes(e){for(var t=e.byteLength,i=this.bytesReadable(t),s=this.readOffset,d=s+i,h=s,u=this.readCursor;u&&!u.empty&&!(u.start>=d);u=u.next){var c=Math.min(d,u.end),l=e.subarray(h-s,c-s);u.readBytes(l,h,c),h=c}return this.readOffset=h,this.readCursor=this.readCursor.first((function(e){return e.contains(h)})),i}},{key:\"write\",value:function write(e){var t=this.bufferItem(e),i=this.writeCursor;if(!i.empty)throw new Error(\"write cursor not empty\");if(!i.contains(t.end)&&i.end!==t.end)throw new Error(\"write cursor too small\");i.startthis.readOffset+this.chunkSize)&&t.push(i));if(e>this.cacheSize){t.sort((function(e,t){return e.timestamp-t.timestamp}));for(var s=0;s{\"use strict\";e.exports=i(91)},566:e=>{\"use strict\";var t=function(){function defineProperties(e,t){for(var i=0;i=0&&i.splice(s,1)}},{key:\"emit\",value:function emit(e,t){(this._e[e]||[]).slice().forEach((function(e){return e(t)}))}}]),TinyEvents}();e.exports=i},936:(e,t,i)=>{\"use strict\";var s=function(){function defineProperties(e,t){for(var i=0;i=0&&c>=e.length)return void t(null);var l=e._clampToLength(s.writeOffset+s.bytesWritable(d))-s.writeOffset;if(0===l)t(null);else{var f=e._backend=new h({url:e.url,offset:e._cache.writeOffset,length:l,cachever:e._cachever,progressive:e.progressive}),_=null,p=function checkOpen(){f!==e._backend?(_(),i(new Error(\"invalid state\"))):(f.on(\"buffer\",(function(t){f===e._backend&&e._cache.write(t)})),f.on(\"done\",(function(){f===e._backend&&(-1===e.length&&(e.length=e._backend.offset+e._backend.bytesRead),e._backend=null)})),t(f))},m=function checkError(t){f!==e._backend?i(new Error(\"invalid state\")):(e._backend=null,i(t))};_=function oncomplete(){f.off(\"open\",p),f.off(\"error\",m)},f.on(\"open\",p),f.on(\"error\",m),f.on(\"cachever\",(function(){e._cachever++})),f.load()}}}))}},{key:\"_readAhead\",value:function _readAhead(){var e=this;return new Promise((function(t,i){e._backend||e.eof?t():e._openBackend().then((function(){t()})).catch((function(e){i(e)}))}))}},{key:\"seek\",value:function seek(e){var t=this;return new Promise((function(i,s){if(!t.loaded||t.buffering||t.seeking)throw new Error(\"invalid state\");if(e!==(0|e)||e<0)throw new Error(\"invalid input\");if(t.length>=0&&e>t.length)throw new Error(\"seek past end of file\");if(!t.seekable)throw new Error(\"seek on non-seekable stream\");t._backend&&t.abort(),t._cache.seekRead(e),t._cache.seekWrite(e),t._readAhead().then(i).catch(s)}))}},{key:\"read\",value:function read(e){var t=this;return this.buffer(e).then((function(e){return t.readSync(e)}))}},{key:\"readSync\",value:function readSync(e){var t=this.bytesAvailable(e),i=new Uint8Array(t);if(this.readBytes(i)!==t)throw new Error(\"failed to read expected data\");return i.buffer}},{key:\"readBytes\",value:function readBytes(e){if(!this.loaded||this.buffering||this.seeking)throw new Error(\"invalid state\");if(!(e instanceof Uint8Array))throw new Error(\"invalid input\");var t=this._cache.readBytes(e);return this._readAhead(),t}},{key:\"buffer\",value:function buffer(e){var t=this;return new Promise((function(i,s){if(!t.loaded||t.buffering||t.seeking)throw new Error(\"invalid state\");if(e!==(0|e)||e<0)throw new Error(\"invalid input\");var d=t._clampToLength(t.offset+e),h=d-t.offset,u=t.bytesAvailable(h);u>=h?i(u):(t.buffering=!0,t._openBackend().then((function(i){return i?i.bufferToOffset(d).then((function(){return t.buffering=!1,t.buffer(e)})):Promise.resolve(u)})).then((function(e){t.buffering=!1,i(e)})).catch((function(e){\"AbortError\"!==e.name&&(t.buffering=!1),s(e)})))}))}},{key:\"bytesAvailable\",value:function bytesAvailable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0;return this._cache.bytesReadable(e)}},{key:\"abort\",value:function abort(){this.loading&&(this.loading=!1),this.buffering&&(this.buffering=!1),this.seeking&&(this.seeking=!1),this._backend&&(this._backend.abort(),this._backend=null)}},{key:\"getBufferedRanges\",value:function getBufferedRanges(){return this._cache.ranges()}},{key:\"_clampToLength\",value:function _clampToLength(e){return this.length<0?e:Math.min(this.length,e)}}]),StreamFile}();e.exports=u},826:e=>{e.exports={vertex:\"precision lowp float;\\n\\nattribute vec2 aPosition;\\nattribute vec2 aLumaPosition;\\nattribute vec2 aChromaPosition;\\nvarying vec2 vLumaPosition;\\nvarying vec2 vChromaPosition;\\nvoid main() {\\n gl_Position = vec4(aPosition, 0, 1);\\n vLumaPosition = aLumaPosition;\\n vChromaPosition = aChromaPosition;\\n}\\n\",fragment:\"// inspired by https://github.com/mbebenita/Broadway/blob/master/Player/canvas.js\\n\\nprecision lowp float;\\n\\nuniform sampler2D uTextureY;\\nuniform sampler2D uTextureCb;\\nuniform sampler2D uTextureCr;\\nvarying vec2 vLumaPosition;\\nvarying vec2 vChromaPosition;\\nvoid main() {\\n // Y, Cb, and Cr planes are uploaded as LUMINANCE textures.\\n float fY = texture2D(uTextureY, vLumaPosition).x;\\n float fCb = texture2D(uTextureCb, vChromaPosition).x;\\n float fCr = texture2D(uTextureCr, vChromaPosition).x;\\n\\n // Premultipy the Y...\\n float fYmul = fY * 1.1643828125;\\n\\n // And convert that to RGB!\\n gl_FragColor = vec4(\\n fYmul + 1.59602734375 * fCr - 0.87078515625,\\n fYmul - 0.39176171875 * fCb - 0.81296875 * fCr + 0.52959375,\\n fYmul + 2.017234375 * fCb - 1.081390625,\\n 1\\n );\\n}\\n\",vertexStripe:\"precision lowp float;\\n\\nattribute vec2 aPosition;\\nattribute vec2 aTexturePosition;\\nvarying vec2 vTexturePosition;\\n\\nvoid main() {\\n gl_Position = vec4(aPosition, 0, 1);\\n vTexturePosition = aTexturePosition;\\n}\\n\",fragmentStripe:\"// extra 'stripe' texture fiddling to work around IE 11's poor performance on gl.LUMINANCE and gl.ALPHA textures\\n\\nprecision lowp float;\\n\\nuniform sampler2D uStripe;\\nuniform sampler2D uTexture;\\nvarying vec2 vTexturePosition;\\nvoid main() {\\n // Y, Cb, and Cr planes are mapped into a pseudo-RGBA texture\\n // so we can upload them without expanding the bytes on IE 11\\n // which doesn't allow LUMINANCE or ALPHA textures\\n // The stripe textures mark which channel to keep for each pixel.\\n // Each texture extraction will contain the relevant value in one\\n // channel only.\\n\\n float fLuminance = dot(\\n texture2D(uStripe, vTexturePosition),\\n texture2D(uTexture, vTexturePosition)\\n );\\n\\n gl_FragColor = vec4(fLuminance, fLuminance, fLuminance, 1);\\n}\\n\"}},487:e=>{!function(){\"use strict\";function FrameSink(e,t){throw new Error(\"abstract\")}FrameSink.prototype.drawFrame=function(e){throw new Error(\"abstract\")},FrameSink.prototype.clear=function(){throw new Error(\"abstract\")},e.exports=FrameSink}()},926:(e,t,i)=>{!function(){\"use strict\";var t=i(487),s=i(627);function SoftwareFrameSink(e){var t=this,i=e.getContext(\"2d\"),d=null,h=null,u=null;return t.drawFrame=function drawFrame(t){var c=t.format;e.width===c.displayWidth&&e.height===c.displayHeight||(e.width=c.displayWidth,e.height=c.displayHeight),null!==d&&d.width==c.width&&d.height==c.height||function initImageData(e,t){for(var s=(d=i.createImageData(e,t)).data,h=e*t*4,u=0;u{!function(){\"use strict\";var t=i(487),s=i(826);function WebGLFrameSink(e){var t,i,d=this,h=WebGLFrameSink.contextForCanvas(e);if(null===h)throw new Error(\"WebGL unavailable\");function compileShader(e,t){var i=h.createShader(e);if(h.shaderSource(i,t),h.compileShader(i),!h.getShaderParameter(i,h.COMPILE_STATUS)){var s=h.getShaderInfoLog(i);throw h.deleteShader(i),new Error(\"GL shader compilation for \"+e+\" failed: \"+s)}return i}var u,c,l,f,_,p,m,g,v,y,b=new Float32Array([-1,-1,1,-1,-1,1,-1,1,1,-1,1,1]),T={},k={},P={};function createOrReuseTexture(e){return T[e]||(T[e]=h.createTexture()),T[e]}function uploadTexture(e,t,i,s){var d=createOrReuseTexture(e);if(h.activeTexture(h.TEXTURE0),WebGLFrameSink.stripe){var u=!T[e+\"_temp\"],c=createOrReuseTexture(e+\"_temp\");h.bindTexture(h.TEXTURE_2D,c),u?(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,t/4,i,0,h.RGBA,h.UNSIGNED_BYTE,s)):h.texSubImage2D(h.TEXTURE_2D,0,0,0,t/4,i,h.RGBA,h.UNSIGNED_BYTE,s);var l=T[e+\"_stripe\"],f=!l;f&&(l=createOrReuseTexture(e+\"_stripe\")),h.bindTexture(h.TEXTURE_2D,l),f&&(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,t,1,0,h.RGBA,h.UNSIGNED_BYTE,function buildStripe(e){if(P[e])return P[e];for(var t=e,i=new Uint32Array(t),s=0;s{!function(){\"use strict\";var t=i(877);e.exports={convertYCbCr:function convertYCbCr(e,i){var s=0|e.format.width,d=0|e.format.height,h=0|t(e.format.width/e.format.chromaWidth),u=0|t(e.format.height/e.format.chromaHeight),c=e.y.bytes,l=e.u.bytes,f=e.v.bytes,_=0|e.y.stride,p=0|e.u.stride,m=0|e.v.stride,g=s<<2,v=0,y=0,b=0,T=0,k=0,P=0,w=0,E=0,x=0,A=0,R=0,O=0,F=0,S=0,C=0,B=0,D=0,M=0;if(1==h&&1==u)for(w=0,E=g,M=0,B=0;B>8,i[w+1]=R-F>>8,i[w+2]=R+S>>8,w+=4,R=298*c[y++]|0,i[w]=R+O>>8,i[w+1]=R-F>>8,i[w+2]=R+S>>8,w+=4,R=298*c[b++]|0,i[E]=R+O>>8,i[E+1]=R-F>>8,i[E+2]=R+S>>8,E+=4,R=298*c[b++]|0,i[E]=R+O>>8,i[E+1]=R-F>>8,i[E+2]=R+S>>8,E+=4;w+=g,E+=g,M++}else for(P=0,B=0;B>u)*p|0,k=M*m|0,C=0;C>h)],O=(409*(A=0|f[k+D])|0)-57088|0,F=(100*x|0)+(208*A|0)-34816|0,S=(516*x|0)-70912|0,R=298*c[v++]|0,i[P]=R+O>>8,i[P+1]=R-F>>8,i[P+2]=R+S>>8,P+=4}}}()},877:e=>{!function(){\"use strict\";e.exports=function depower(e){for(var t=0,i=e>>1;0!=i;)i>>=1,t++;if(e!==1<{!function(){\"use strict\";var t=i(487),s=i(926),d=i(895),h={FrameSink:t,SoftwareFrameSink:s,WebGLFrameSink:d,attach:function(e,t){return(\"webGL\"in(t=t||{})?t.webGL:d.isAvailable())?new d(e,t):new s(e,t)}};e.exports=h}()}},t={};function __webpack_require__(i){var s=t[i];if(void 0!==s)return s.exports;var d=t[i]={exports:{}};return e[i](d,d.exports,__webpack_require__),d.exports}var i={};return(()=>{\"use strict\";var e=i,t=__webpack_require__(318);Object.defineProperty(e,\"__esModule\",{value:!0}),Object.defineProperty(e,\"OGVCompat\",{enumerable:!0,get:function get(){return s.default}}),Object.defineProperty(e,\"OGVLoader\",{enumerable:!0,get:function get(){return d.default}}),Object.defineProperty(e,\"OGVMediaError\",{enumerable:!0,get:function get(){return h.default}}),Object.defineProperty(e,\"OGVMediaType\",{enumerable:!0,get:function get(){return u.default}}),Object.defineProperty(e,\"OGVPlayer\",{enumerable:!0,get:function get(){return c.default}}),Object.defineProperty(e,\"OGVTimeRanges\",{enumerable:!0,get:function get(){return l.default}}),e.OGVVersion=void 0;var s=t(__webpack_require__(523)),d=t(__webpack_require__(964)),h=t(__webpack_require__(759)),u=t(__webpack_require__(278)),c=t(__webpack_require__(869)),l=t(__webpack_require__(168)),f=\"1.8.4-20210702161914-bd3a07f\";e.OGVVersion=f,\"object\"==typeof window&&(window.OGVCompat=s.default,window.OGVLoader=d.default,window.OGVMediaError=h.default,window.OGVMediaType=u.default,window.OGVTimeRanges=l.default,window.OGVPlayer=c.default,window.OGVVersion=f)})(),i})()}));"],"file":"ogv.min.js"} \ No newline at end of file diff --git a/media/player/videojs/amd/build/videojs-ogvjs-lazy.min.js b/media/player/videojs/amd/build/videojs-ogvjs-lazy.min.js new file mode 100644 index 00000000000..9f67f19748f --- /dev/null +++ b/media/player/videojs/amd/build/videojs-ogvjs-lazy.min.js @@ -0,0 +1,2 @@ +function _typeof(a){"@babel/helpers - typeof";if("function"==typeof Symbol&&"symbol"==typeof Symbol.iterator){_typeof=function(a){return typeof a}}else{_typeof=function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a}}return _typeof(a)}(function(a,b){"object"===("undefined"==typeof exports?"undefined":_typeof(exports))&&"undefined"!=typeof module?module.exports=b(require("video.js"),require("OGVCompat"),require("OGVLoader"),require("OGVPlayer")):"function"==typeof define&&define.amd?define ("media_videojs/videojs-ogvjs-lazy",["media_videojs/video-lazy","./local/ogv/ogv"],b):(a="undefined"!=typeof globalThis?globalThis:a||self,a.videojsOgvjs=b(a.videojs,a.OGVCompat,a.OGVLoader,a.OGVPlayer))})(this,function(a,b){'use strict';function c(a){return a&&"object"===_typeof(a)&&"default"in a?a:{default:a}}var f=c(a),g=c(b.OGVCompat),h=c(b.OGVLoader),i=c(b.OGVPlayer);function d(a,b,c){return c={path:b,exports:{},require:function require(a,b){return e(a,b===void 0||null===b?c.path:b)}},a(c,c.exports),c.exports}function e(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var j=d(function(a){function b(c,d){a.exports=b=Object.setPrototypeOf||function(a,b){a.__proto__=b;return a};a.exports["default"]=a.exports,a.exports.__esModule=!0;return b(c,d)}a.exports=b;a.exports["default"]=a.exports,a.exports.__esModule=!0}),k=d(function(a){a.exports=function(a,b){a.prototype=Object.create(b.prototype);a.prototype.constructor=a;j(a,b)};a.exports["default"]=a.exports,a.exports.__esModule=!0}),l=f["default"].getComponent("Tech"),m="iPhoneOS",n=function(a,b,c,d){if(void 0===d){d=!0}var e=function(c){Object.defineProperty(a,b,{value:c,enumerable:!0,writable:!0})},f={configurable:!0,enumerable:!0,get:function(){var a=c();e(a);return a}};if(d){f.set=e}return Object.defineProperty(a,b,f)},o=function(){var a=navigator.userAgent;if(/android/i.test(a)){return"Android"}else if(/iPad|iPhone|iPod/.test(a)){return m}else if("MacIntel"===navigator.platform&&1\n * @license MIT\n */\n/*! @name videojs-ogvjs @version 0.1.2 @license MIT */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('video.js'), require('OGVCompat'), require('OGVLoader'), require('OGVPlayer')) :\n\ttypeof define === 'function' && define.amd ? define(['media_videojs/video-lazy', './local/ogv/ogv'], factory) :\n\t(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.videojsOgvjs = factory(global.videojs, global.OGVCompat, global.OGVLoader, global.OGVPlayer));\n}(this, (function (videojs, ogvBase) { 'use strict';\n\n\tfunction _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }\n\n\tvar videojs__default = /*#__PURE__*/_interopDefaultLegacy(videojs);\n\tvar OGVCompat__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVCompat);\n\tvar OGVLoader__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVLoader);\n\tvar OGVPlayer__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVPlayer);\n\n\tfunction createCommonjsModule(fn, basedir, module) {\n\t\treturn module = {\n\t\t path: basedir,\n\t\t exports: {},\n\t\t require: function (path, base) {\n\t return commonjsRequire(path, (base === undefined || base === null) ? module.path : base);\n\t }\n\t\t}, fn(module, module.exports), module.exports;\n\t}\n\n\tfunction commonjsRequire () {\n\t\tthrow new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');\n\t}\n\n\tvar setPrototypeOf = createCommonjsModule(function (module) {\n\t function _setPrototypeOf(o, p) {\n\t module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n\t o.__proto__ = p;\n\t return o;\n\t };\n\n\t module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n\t return _setPrototypeOf(o, p);\n\t }\n\n\t module.exports = _setPrototypeOf;\n\t module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n\t});\n\n\tvar inheritsLoose = createCommonjsModule(function (module) {\n\t function _inheritsLoose(subClass, superClass) {\n\t subClass.prototype = Object.create(superClass.prototype);\n\t subClass.prototype.constructor = subClass;\n\t setPrototypeOf(subClass, superClass);\n\t }\n\n\t module.exports = _inheritsLoose;\n\t module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n\t});\n\n\tvar Tech = videojs__default['default'].getComponent('Tech');\n\tvar androidOS = 'Android';\n\tvar iPhoneOS = 'iPhoneOS';\n\tvar iPadOS = 'iPadOS';\n\tvar otherOS = 'Other';\n\t/**\n\t * Object.defineProperty but \"lazy\", which means that the value is only set after\n\t * it retrieved the first time, rather than being set right away.\n\t *\n\t * @param {Object} obj the object to set the property on.\n\t * @param {string} key the key for the property to set.\n\t * @param {Function} getValue the function used to get the value when it is needed.\n\t * @param {boolean} setter whether a setter should be allowed or not.\n\t */\n\n\tvar defineLazyProperty = function defineLazyProperty(obj, key, getValue, setter) {\n\t if (setter === void 0) {\n\t setter = true;\n\t }\n\n\t var set = function set(value) {\n\t Object.defineProperty(obj, key, {\n\t value: value,\n\t enumerable: true,\n\t writable: true\n\t });\n\t };\n\n\t var options = {\n\t configurable: true,\n\t enumerable: true,\n\t get: function get() {\n\t var value = getValue();\n\t set(value);\n\t return value;\n\t }\n\t };\n\n\t if (setter) {\n\t options.set = set;\n\t }\n\n\t return Object.defineProperty(obj, key, options);\n\t};\n\t/**\n\t * Get the device's OS.\n\t *\n\t * @return {string} Device's OS.\n\t */\n\n\n\tvar getDeviceOS = function getDeviceOS() {\n\t /* global navigator */\n\t var ua = navigator.userAgent;\n\n\t if (/android/i.test(ua)) {\n\t return androidOS;\n\t } else if (/iPad|iPhone|iPod/.test(ua)) {\n\t return iPhoneOS;\n\t } else if (navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1) {\n\t return iPadOS;\n\t }\n\n\t return otherOS;\n\t};\n\t/**\n\t * OgvJS Media Controller - Wrapper for ogv.js Media API\n\t *\n\t * @mixes Tech~SourceHandlerAdditions\n\t * @extends Tech\n\t */\n\n\n\tvar OgvJS = /*#__PURE__*/function (_Tech) {\n\t inheritsLoose(OgvJS, _Tech);\n\n\t /**\n\t * Create an instance of this Tech.\n\t *\n\t * @param {Object} [options] The key/value store of player options.\n\t * @param {Component~ReadyCallback} ready Callback function to call when the `OgvJS` Tech is ready.\n\t */\n\t function OgvJS(options, ready) {\n\t var _this;\n\n\t _this = _Tech.call(this, options, ready) || this;\n\t _this.el_.src = options.source.src;\n\t OgvJS.setIfAvailable(_this.el_, 'autoplay', options.autoplay);\n\t OgvJS.setIfAvailable(_this.el_, 'loop', options.loop);\n\t OgvJS.setIfAvailable(_this.el_, 'poster', options.poster);\n\t OgvJS.setIfAvailable(_this.el_, 'preload', options.preload);\n\n\t _this.on('loadedmetadata', function () {\n\t if (getDeviceOS() === iPhoneOS) {\n\t // iPhoneOS add some inline styles to the canvas, we need to remove it.\n\t var canvas = this.el_.getElementsByTagName('canvas')[0];\n\t canvas.style.removeProperty('width');\n\t canvas.style.removeProperty('margin');\n\t }\n\n\t this.triggerReady();\n\t });\n\n\t return _this;\n\t }\n\t /**\n\t * Create the 'OgvJS' Tech's DOM element.\n\t *\n\t * @return {Element} The element that gets created.\n\t */\n\n\n\t var _proto = OgvJS.prototype;\n\n\t _proto.createEl = function createEl() {\n\t var options = this.options_;\n\n\t if (options.base) {\n\t OGVLoader__default['default'].base = options.base;\n\t } else {\n\t throw new Error('Please specify the base for the ogv.js library');\n\t }\n\n\t var el = new OGVPlayer__default['default'](options);\n\t el.className += ' vjs-tech';\n\t options.tag = el;\n\t return el;\n\t }\n\t /**\n\t * Start playback\n\t *\n\t * @method play\n\t */\n\t ;\n\n\t _proto.play = function play() {\n\t this.el_.play();\n\t }\n\t /**\n\t * Get the current playback speed.\n\t *\n\t * @return {number}\n\t * @method playbackRate\n\t */\n\t ;\n\n\t _proto.playbackRate = function playbackRate() {\n\t return this.el_.playbackRate || 1;\n\t }\n\t /**\n\t * Set the playback speed.\n\t *\n\t * @param {number} val Speed for the player to play.\n\t * @method setPlaybackRate\n\t */\n\t ;\n\n\t _proto.setPlaybackRate = function setPlaybackRate(val) {\n\t if (this.el_.hasOwnProperty('playbackRate')) {\n\t this.el_.playbackRate = val;\n\t }\n\t }\n\t /**\n\t * Returns a TimeRanges object that represents the ranges of the media resource that the user agent has played.\n\t *\n\t * @return {TimeRangeObject} the range of points on the media timeline that has been reached through normal playback\n\t */\n\t ;\n\n\t _proto.played = function played() {\n\t return this.el_.played;\n\t }\n\t /**\n\t * Pause playback\n\t *\n\t * @method pause\n\t */\n\t ;\n\n\t _proto.pause = function pause() {\n\t this.el_.pause();\n\t }\n\t /**\n\t * Is the player paused or not.\n\t *\n\t * @return {boolean}\n\t * @method paused\n\t */\n\t ;\n\n\t _proto.paused = function paused() {\n\t return this.el_.paused;\n\t }\n\t /**\n\t * Get current playing time.\n\t *\n\t * @return {number}\n\t * @method currentTime\n\t */\n\t ;\n\n\t _proto.currentTime = function currentTime() {\n\t return this.el_.currentTime;\n\t }\n\t /**\n\t * Set current playing time.\n\t *\n\t * @param {number} seconds Current time of audio/video.\n\t * @method setCurrentTime\n\t */\n\t ;\n\n\t _proto.setCurrentTime = function setCurrentTime(seconds) {\n\t try {\n\t this.el_.currentTime = seconds;\n\t } catch (e) {\n\t videojs__default['default'].log(e, 'Media is not ready. (Video.JS)');\n\t }\n\t }\n\t /**\n\t * Get media's duration.\n\t *\n\t * @return {number}\n\t * @method duration\n\t */\n\t ;\n\n\t _proto.duration = function duration() {\n\t if (this.el_.duration && this.el_.duration !== Infinity) {\n\t return this.el_.duration;\n\t }\n\n\t return 0;\n\t }\n\t /**\n\t * Get a TimeRange object that represents the intersection\n\t * of the time ranges for which the user agent has all\n\t * relevant media.\n\t *\n\t * @return {TimeRangeObject}\n\t * @method buffered\n\t */\n\t ;\n\n\t _proto.buffered = function buffered() {\n\t return this.el_.buffered;\n\t }\n\t /**\n\t * Get current volume level.\n\t *\n\t * @return {number}\n\t * @method volume\n\t */\n\t ;\n\n\t _proto.volume = function volume() {\n\t return this.el_.hasOwnProperty('volume') ? this.el_.volume : 1;\n\t }\n\t /**\n\t * Set current playing volume level.\n\t *\n\t * @param {number} percentAsDecimal Volume percent as a decimal.\n\t * @method setVolume\n\t */\n\t ;\n\n\t _proto.setVolume = function setVolume(percentAsDecimal) {\n\t if (getDeviceOS() !== iPhoneOS && this.el_.hasOwnProperty('volume')) {\n\t this.el_.volume = percentAsDecimal;\n\t }\n\t }\n\t /**\n\t * Is the player muted or not.\n\t *\n\t * @return {boolean}\n\t * @method muted\n\t */\n\t ;\n\n\t _proto.muted = function muted() {\n\t return this.el_.muted;\n\t }\n\t /**\n\t * Mute the player.\n\t *\n\t * @param {boolean} muted True to mute the player.\n\t */\n\t ;\n\n\t _proto.setMuted = function setMuted(muted) {\n\t this.el_.muted = !!muted;\n\t }\n\t /**\n\t * Is the player muted by default or not.\n\t *\n\t * @return {boolean}\n\t * @method defaultMuted\n\t */\n\t ;\n\n\t _proto.defaultMuted = function defaultMuted() {\n\t return this.el_.defaultMuted || false;\n\t }\n\t /**\n\t * Get the player width.\n\t *\n\t * @return {number}\n\t * @method width\n\t */\n\t ;\n\n\t _proto.width = function width() {\n\t return this.el_.offsetWidth;\n\t }\n\t /**\n\t * Get the player height.\n\t *\n\t * @return {number}\n\t * @method height\n\t */\n\t ;\n\n\t _proto.height = function height() {\n\t return this.el_.offsetHeight;\n\t }\n\t /**\n\t * Get the video width.\n\t *\n\t * @return {number}\n\t * @method videoWidth\n\t */\n\t ;\n\n\t _proto.videoWidth = function videoWidth() {\n\t return this.el_.videoWidth;\n\t }\n\t /**\n\t * Get the video height.\n\t *\n\t * @return {number}\n\t * @method videoHeight\n\t */\n\t ;\n\n\t _proto.videoHeight = function videoHeight() {\n\t return this.el_.videoHeight;\n\t }\n\t /**\n\t * Get/set media source.\n\t *\n\t * @param {Object=} src Source object\n\t * @return {Object}\n\t * @method src\n\t */\n\t ;\n\n\t _proto.src = function src(_src) {\n\t if (typeof _src === 'undefined') {\n\t return this.el_.src;\n\t }\n\n\t this.el_.src = _src;\n\t }\n\t /**\n\t * Load the media into the player.\n\t *\n\t * @method load\n\t */\n\t ;\n\n\t _proto.load = function load() {\n\t this.el_.load();\n\t }\n\t /**\n\t * Get current media source.\n\t *\n\t * @return {Object}\n\t * @method currentSrc\n\t */\n\t ;\n\n\t _proto.currentSrc = function currentSrc() {\n\t if (this.currentSource_) {\n\t return this.currentSource_.src;\n\t }\n\n\t return this.el_.currentSrc;\n\t }\n\t /**\n\t * Get media poster URL.\n\t *\n\t * @return {string}\n\t * @method poster\n\t */\n\t ;\n\n\t _proto.poster = function poster() {\n\t return this.el_.poster;\n\t }\n\t /**\n\t * Set media poster URL.\n\t *\n\t * @param {string} url the poster image's url.\n\t * @method\n\t */\n\t ;\n\n\t _proto.setPoster = function setPoster(url) {\n\t this.el_.poster = url;\n\t }\n\t /**\n\t * Is the media preloaded or not.\n\t *\n\t * @return {string}\n\t * @method preload\n\t */\n\t ;\n\n\t _proto.preload = function preload() {\n\t return this.el_.preload || 'none';\n\t }\n\t /**\n\t * Set the media preload method.\n\t *\n\t * @param {string} val Value for preload attribute.\n\t * @method setPreload\n\t */\n\t ;\n\n\t _proto.setPreload = function setPreload(val) {\n\t if (this.el_.hasOwnProperty('preload')) {\n\t this.el_.preload = val;\n\t }\n\t }\n\t /**\n\t * Is the media auto-played or not.\n\t *\n\t * @return {boolean}\n\t * @method autoplay\n\t */\n\t ;\n\n\t _proto.autoplay = function autoplay() {\n\t return this.el_.autoplay || false;\n\t }\n\t /**\n\t * Set media autoplay method.\n\t *\n\t * @param {boolean} val Value for autoplay attribute.\n\t * @method setAutoplay\n\t */\n\t ;\n\n\t _proto.setAutoplay = function setAutoplay(val) {\n\t if (this.el_.hasOwnProperty('autoplay')) {\n\t this.el_.autoplay = !!val;\n\t }\n\t }\n\t /**\n\t * Does the media has controls or not.\n\t *\n\t * @return {boolean}\n\t * @method controls\n\t */\n\t ;\n\n\t _proto.controls = function controls() {\n\t return this.el_.controls || false;\n\t }\n\t /**\n\t * Set the media controls method.\n\t *\n\t * @param {boolean} val Value for controls attribute.\n\t * @method setControls\n\t */\n\t ;\n\n\t _proto.setControls = function setControls(val) {\n\t if (this.el_.hasOwnProperty('controls')) {\n\t this.el_.controls = !!val;\n\t }\n\t }\n\t /**\n\t * Is the media looped or not.\n\t *\n\t * @return {boolean}\n\t * @method loop\n\t */\n\t ;\n\n\t _proto.loop = function loop() {\n\t return this.el_.loop || false;\n\t }\n\t /**\n\t * Set the media loop method.\n\t *\n\t * @param {boolean} val Value for loop attribute.\n\t * @method setLoop\n\t */\n\t ;\n\n\t _proto.setLoop = function setLoop(val) {\n\t if (this.el_.hasOwnProperty('loop')) {\n\t this.el_.loop = !!val;\n\t }\n\t }\n\t /**\n\t * Get a TimeRanges object that represents the\n\t * ranges of the media resource to which it is possible\n\t * for the user agent to seek.\n\t *\n\t * @return {TimeRangeObject}\n\t * @method seekable\n\t */\n\t ;\n\n\t _proto.seekable = function seekable() {\n\t return this.el_.seekable;\n\t }\n\t /**\n\t * Is player in the \"seeking\" state or not.\n\t *\n\t * @return {boolean}\n\t * @method seeking\n\t */\n\t ;\n\n\t _proto.seeking = function seeking() {\n\t return this.el_.seeking;\n\t }\n\t /**\n\t * Is the media ended or not.\n\t *\n\t * @return {boolean}\n\t * @method ended\n\t */\n\t ;\n\n\t _proto.ended = function ended() {\n\t return this.el_.ended;\n\t }\n\t /**\n\t * Get the current state of network activity\n\t * NETWORK_EMPTY (numeric value 0)\n\t * NETWORK_IDLE (numeric value 1)\n\t * NETWORK_LOADING (numeric value 2)\n\t * NETWORK_NO_SOURCE (numeric value 3)\n\t *\n\t * @return {number}\n\t * @method networkState\n\t */\n\t ;\n\n\t _proto.networkState = function networkState() {\n\t return this.el_.networkState;\n\t }\n\t /**\n\t * Get the current state of the player.\n\t * HAVE_NOTHING (numeric value 0)\n\t * HAVE_METADATA (numeric value 1)\n\t * HAVE_CURRENT_DATA (numeric value 2)\n\t * HAVE_FUTURE_DATA (numeric value 3)\n\t * HAVE_ENOUGH_DATA (numeric value 4)\n\t *\n\t * @return {number}\n\t * @method readyState\n\t */\n\t ;\n\n\t _proto.readyState = function readyState() {\n\t return this.el_.readyState;\n\t }\n\t /**\n\t * Does the player support native fullscreen mode or not. (Mobile devices)\n\t *\n\t * @return {boolean}\n\t */\n\t ;\n\n\t _proto.supportsFullScreen = function supportsFullScreen() {\n\t // iOS devices have some problem with HTML5 fullscreen api so we need to fallback to fullWindow mode.\n\t return false;\n\t }\n\t /**\n\t * Get media player error.\n\t *\n\t * @return {string}\n\t * @method error\n\t */\n\t ;\n\n\t _proto.error = function error() {\n\t return this.el_.error;\n\t };\n\n\t return OgvJS;\n\t}(Tech);\n\t/**\n\t * List of available events of the media player.\n\t *\n\t * @private\n\t * @type {Array}\n\t */\n\n\n\tOgvJS.Events = ['loadstart', 'suspend', 'abort', 'error', 'emptied', 'stalled', 'loadedmetadata', 'loadeddata', 'canplay', 'canplaythrough', 'playing', 'waiting', 'seeking', 'seeked', 'ended', 'durationchange', 'timeupdate', 'progress', 'play', 'pause', 'ratechange', 'resize', 'volumechange'];\n\t/**\n\t * Set the value for the player is it has that property.\n\t *\n\t * @param {Element} el\n\t * @param {string} name\n\t * @param value\n\t */\n\n\tOgvJS.setIfAvailable = function (el, name, value) {\n\t if (el.hasOwnProperty(name)) {\n\t el[name] = value;\n\t }\n\t};\n\t/**\n\t * Check if browser/device is supported by Ogv.JS.\n\t *\n\t * @return {boolean}\n\t */\n\n\n\tOgvJS.isSupported = function () {\n\t return OGVCompat__default['default'].supported('OGVPlayer');\n\t};\n\t/**\n\t * Check if the tech can support the given type.\n\t *\n\t * @param {string} type The mimetype to check\n\t * @return {string} 'probably', 'maybe', or '' (empty string)\n\t */\n\n\n\tOgvJS.canPlayType = function (type) {\n\t return type.indexOf('/ogg') !== -1 || type.indexOf('/webm') ? 'maybe' : '';\n\t};\n\t/**\n\t * Check if the tech can support the given source\n\t *\n\t * @param srcObj The source object\n\t * @return {string} The options passed to the tech\n\t */\n\n\n\tOgvJS.canPlaySource = function (srcObj) {\n\t return OgvJS.canPlayType(srcObj.type);\n\t};\n\t/**\n\t * Check if the volume can be changed in this browser/device.\n\t * Volume cannot be changed in a lot of mobile devices.\n\t * Specifically, it can't be changed from 1 on iOS.\n\t *\n\t * @return {boolean} True if volume can be controlled.\n\t */\n\n\n\tOgvJS.canControlVolume = function () {\n\t if (getDeviceOS() === iPhoneOS) {\n\t return false;\n\t }\n\n\t var p = new OGVPlayer__default['default']();\n\t return p.hasOwnProperty('volume');\n\t};\n\t/**\n\t * Check if the volume can be muted in this browser/device.\n\t *\n\t * @return {boolean} True if volume can be muted.\n\t */\n\n\n\tOgvJS.canMuteVolume = function () {\n\t return true;\n\t};\n\t/**\n\t * Check if the playback rate can be changed in this browser/device.\n\t *\n\t * @return {boolean} True if playback rate can be controlled.\n\t */\n\n\n\tOgvJS.canControlPlaybackRate = function () {\n\t return true;\n\t};\n\t/**\n\t * Check to see if native 'TextTracks' are supported by this browser/device.\n\t *\n\t * @return {boolean} True if native 'TextTracks' are supported.\n\t */\n\n\n\tOgvJS.supportsNativeTextTracks = function () {\n\t return false;\n\t};\n\t/**\n\t * Check if the fullscreen resize is supported by this browser/device.\n\t *\n\t * @return {boolean} True if the fullscreen resize is supported.\n\t */\n\n\n\tOgvJS.supportsFullscreenResize = function () {\n\t return true;\n\t};\n\t/**\n\t * Check if the progress events is supported by this browser/device.\n\t *\n\t * @return {boolean} True if the progress events is supported.\n\t */\n\n\n\tOgvJS.supportsProgressEvents = function () {\n\t return true;\n\t};\n\t/**\n\t * Check if the time update events is supported by this browser/device.\n\t *\n\t * @return {boolean} True if the time update events is supported.\n\t */\n\n\n\tOgvJS.supportsTimeupdateEvents = function () {\n\t return true;\n\t};\n\t/**\n\t * Boolean indicating whether the 'OgvJS' tech supports volume control.\n\t *\n\t * @type {boolean}\n\t * @default {@link OgvJS.canControlVolume}\n\t */\n\n\t/**\n\t * Boolean indicating whether the 'OgvJS' tech supports muting volume.\n\t *\n\t * @type {boolean}\n\t * @default {@link OgvJS.canMuteVolume}\n\t */\n\n\t/**\n\t * Boolean indicating whether the 'OgvJS' tech supports changing the speed at which the media plays.\n\t * Examples:\n\t * - Set player to play 2x (twice) as fast.\n\t * - Set player to play 0.5x (half) as fast.\n\t *\n\t * @type {boolean}\n\t * @default {@link OgvJS.canControlPlaybackRate}\n\t */\n\n\t/**\n\t * Boolean indicating whether the 'OgvJS' tech currently supports native 'TextTracks'.\n\t *\n\t * @type {boolean}\n\t * @default {@link OgvJS.supportsNativeTextTracks}\n\t */\n\n\t/**\n\t * Boolean indicating whether the 'OgvJS' tech currently supports fullscreen resize.\n\t *\n\t * @type {boolean}\n\t * @default {@link OgvJS.supportsFullscreenResize}\n\t */\n\n\t/**\n\t * Boolean indicating whether the 'OgvJS' tech currently supports progress events.\n\t *\n\t * @type {boolean}\n\t * @default {@link OgvJS.supportsProgressEvents}\n\t */\n\n\t/**\n\t * Boolean indicating whether the 'OgvJS' tech currently supports time update events.\n\t *\n\t * @type {boolean}\n\t * @default {@link OgvJS.supportsTimeupdateEvents}\n\t */\n\n\n\t[['featuresVolumeControl', 'canControlVolume'], ['featuresMuteControl', 'canMuteVolume'], ['featuresPlaybackRate', 'canControlPlaybackRate'], ['featuresNativeTextTracks', 'supportsNativeTextTracks'], ['featuresFullscreenResize', 'supportsFullscreenResize'], ['featuresProgressEvents', 'supportsProgressEvents'], ['featuresTimeupdateEvents', 'supportsTimeupdateEvents']].forEach(function (_ref) {\n\t var key = _ref[0],\n\t fn = _ref[1];\n\t defineLazyProperty(OgvJS.prototype, key, function () {\n\t OgvJS[fn]();\n\t }, true);\n\t});\n\tTech.registerTech('OgvJS', OgvJS);\n\n\treturn OgvJS;\n\n})));\n"],"file":"videojs-ogvjs-lazy.min.js"} \ No newline at end of file diff --git a/media/player/videojs/amd/src/loader.js b/media/player/videojs/amd/src/loader.js index fa092aad704..3a70e584591 100644 --- a/media/player/videojs/amd/src/loader.js +++ b/media/player/videojs/amd/src/loader.js @@ -85,6 +85,15 @@ const notifyVideoJS = (e, nodes) => { // Add Flash to the list of modules we require. modulePromises.push(import('media_videojs/videojs-flash-lazy')); } + if (config.techOrder && config.techOrder.indexOf('OgvJS') !== -1) { + config.ogvjs = { + worker: true, + wasm: true, + base: Config.wwwroot + '/media/player/videojs/ogvloader.php/' + Config.jsrev + '/' + }; + // Add Ogv.JS to the list of modules we require. + modulePromises.push(import('media_videojs/videojs-ogvjs-lazy')); + } Promise.all([langStrings, ...modulePromises]) .then(([langJson, videojs]) => { if (firstLoad) { diff --git a/media/player/videojs/amd/src/local/ogv/ogv.js b/media/player/videojs/amd/src/local/ogv/ogv.js new file mode 100644 index 00000000000..a6d7302fc15 --- /dev/null +++ b/media/player/videojs/amd/src/local/ogv/ogv.js @@ -0,0 +1,2 @@ +/*! For license information please see ogv-es2017.js.LICENSE.txt */ +!function webpackUniversalModuleDefinition(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ogvjs=t():e.ogvjs=t()}(globalThis,(function(){return(()=>{var e={318:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},848:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var s=t[i]={i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)r.d(i,s,function(t){return e[t]}.bind(null,s));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t){function r(e,t){if(e<1||e!==Math.round(e))throw"Invalid channel count for BufferQueue";this.channels=e,this.bufferSize=t,this.flush()}r.prototype.flush=function(){this._buffers=[],this._pendingBuffer=this.createBuffer(this.bufferSize),this._pendingPos=0},r.prototype.sampleCount=function(){var e=0;return this._buffers.forEach((function(t){e+=t[0].length})),e},r.prototype.createBuffer=function(e){for(var t=[],i=0;i=s)return e;for(var h=[],u=0;u0?d[d.length+t]:e[0]:e[t]},u=0;ui&&(m=Math.SQRT1_2);for(var g=0;g=i&&(v=0);var y=e[v],b=new Float32Array(_);h(y,b,this._resampleLastSampleData?this._resampleLastSampleData[v]:void 0,m),u.push(b)}return this._resampleFractional=p,this._resampleLastSampleData=e,u},n.prototype.bufferData=function(e){if(!this._backend)throw"Invalid state: AudioFeeder cannot bufferData before init";var t=this._resample(e);t=this._tempoChanger.process(t),this._backend.appendBuffer(t)},n.prototype.getPlaybackState=function(){if(this._backend){var e=this._backend.getPlaybackState();return e.outputPlaybackPosition=e.playbackPosition,e.playbackPosition=this._tempoChanger.mapOutputToInputTime(e.outputPlaybackPosition),e}throw"Invalid state: AudioFeeder cannot getPlaybackState before init"},n.prototype.waitUntilReady=function(e){if(!this._backend)throw"Invalid state: AudioFeeder cannot waitUntilReady before init";this._backend.waitUntilReady(e)},n.prototype.start=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot start before init";this._backend.start()},n.prototype.stop=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot stop before init";this._backend.stop()},n.prototype.flush=function(){if(this._resampleFractional=0,this._resampleLastSampleData=void 0,!this._backend)throw"Invalid state: AudioFeeder cannot flush before init";this._tempoChanger.flush(this.durationBuffered),this._backend.flush()},n.prototype.close=function(){this._backend&&(this._backend.close(),this._backend=null)},n.prototype.onstarved=null,n.prototype.onbufferlow=null,n.isSupported=function(){return!!Float32Array&&t.isSupported()},n.initSharedAudioContext=function(){return t.isSupported()?t.initSharedAudioContext():null},e.exports=n}()},function(e,t,i){!function(){var t=window.AudioContext||window.webkitAudioContext,s=i(0),d=i(3);function o(e,t,i){var d=i.audioContext||o.initSharedAudioContext();if(this._context=d,this.output=i.output||d.destination,this.rate=d.sampleRate,this.channels=2,i.bufferSize&&(this.bufferSize=0|i.bufferSize),this.bufferThreshold=2*this.bufferSize,this._bufferQueue=new s(this.channels,this.bufferSize),this._playbackTimeAtBufferTail=d.currentTime,this._queuedTime=0,this._delayedTime=0,this._dropped=0,this._liveBuffer=this._bufferQueue.createBuffer(this.bufferSize),d.createScriptProcessor)this._node=d.createScriptProcessor(this.bufferSize,0,this.channels);else{if(!d.createJavaScriptNode)throw new Error("Bad version of web audio API?");this._node=d.createJavaScriptNode(this.bufferSize,0,this.channels)}}o.prototype.bufferSize=4096,o.prototype.bufferThreshold=8192,o.prototype._volume=1,Object.defineProperty(o.prototype,"volume",{get:function(){return this._volume},set:function(e){this._volume=+e}}),o.prototype._muted=!1,Object.defineProperty(o.prototype,"muted",{get:function(){return this._muted},set:function(e){this._muted=!!e}}),o.prototype._audioProcess=function(e){var t,i,s,h,u;u="number"==typeof e.playbackTime?e.playbackTime:this._context.currentTime+this.bufferSize/this.rate;var c=this._playbackTimeAtBufferTail;if(c0){var t=Math.round(e*this.rate),i=this._liveBuffer?this._liveBuffer[0].length:0;t>i?(this._bufferQueue.prependBuffer(this._liveBuffer),this._bufferQueue.prependBuffer(this._bufferQueue.createBuffer(t-i))):this._bufferQueue.prependBuffer(this._bufferQueue.trimBuffer(this._liveBuffer,i-t,t)),this._playbackTimeAtBufferTail-=e}this._node.onaudioprocess=null,this._node.disconnect()}},o.prototype.flush=function(){this._bufferQueue.flush()},o.prototype.close=function(){this.stop(),this._context=null},o.prototype.onstarved=null,o.prototype.onbufferlow=null,o.isSupported=function(){return!!t},o.sharedAudioContext=null,o.initSharedAudioContext=function(){if(!o.sharedAudioContext&&o.isSupported()){var e,i=new t;if(i.createScriptProcessor)e=i.createScriptProcessor(1024,0,2);else{if(!i.createJavaScriptNode)throw new Error("Bad version of web audio API?");e=i.createJavaScriptNode(1024,0,2)}e.connect(i.destination),e.disconnect(),o.sharedAudioContext=i}return o.sharedAudioContext},e.exports=o}()},function(e,t){e.exports=function(){if(void 0!==window.setImmediate)return window.setImmediate;if(window&&window.postMessage){var e=[];return window.addEventListener("message",(function(t){if(t.source===window){var i=t.data;if("object"==typeof i&&i.nextTickBrowserPingMessage){var s=e.pop();s&&s()}}})),function(t){e.push(t),window.postMessage({nextTickBrowserPingMessage:!0},document.location.toString())}}return function(e){setTimeout(e,0)}}()},function(e,t,i){var s;window,s=function(){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var s=t[i]={i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)r.d(i,s,function(t){return e[t]}.bind(null,s));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t){var i={float_array:function(e){return new Float32Array(e)},blit:function(e,t,i,s,d){i.set(e.subarray(t,t+d),s)}};e.exports=i},function(e,t,i){var s,d;s=i(0),d=i(2),e.exports=function(e){var t=(e=e||{}).sampleRate||44100,i=e.wsizeLog||11,h=e.tempo||1,u=(e.numChannels,Math.pow(2,50/1200)-1),c=1<>1),T=s.float_array(b),k=s.float_array(b),P=s.float_array(b),w=s.float_array(b),E=s.float_array(b),x=s.float_array(b),A=1+(b>>1),R=[0,0],O=[],F=[],S=[],C=[];for(y=0;y<2;y++)O.push(s.float_array(A)),F.push(s.float_array(A)),S.push(s.float_array(A)),C.push(s.float_array(b));var B=s.float_array(A),D=s.float_array(A),M=0,V=0,I=[{in_time:0,out_time:0,tempo:h}],L=0,j=0,W=1,X=0,N=0,H=0,z=0,Y={mapOutputToInputTime:function(e){for(var t=I.length-1;e0;)t--;var i=I[t];return i.in_time+i.tempo*(e-i.out_time)},flush:function(e){X=0,R=[0,0],j=0,z=0,H=0;for(var t=0;t<2;t++)for(var i=0;i=0;)I.pop(),s--;I.push({in_time:M,out_time:V,tempo:h})}},getTempo:function(){return h},setTempo:function(e){m=g=f,e>=1?g=Math.round(m/e):m=Math.round(g*e),N=(1/e-1*g/m)*m,W=function(e,t){for(var i=e.length/t|0,s=0,d=0;di&&(i=e[s]);var d=1e-8*i,h=1,c=1;for(t[0]=1,s=2;sd&&e[s]>e[s-1]&&e[s]>=e[s+1]){var f=s+(e[s-1]-e[s+1])/(2*(e[s-1]-2*e[s]+e[s+1]));f-t[h-1]>l?(t[h++]=f,c=s):e[s]>e[c]&&(t[h-1]=f,c=s)}}return h}(y,T),P=F[l],w=S[l];if(0!=e&&0!=k){var E=0;for(H=0;Hm[E]&&E!=p;)++E;var x=E;E>0&&z-m[E-1].1*y[Math.round(z)]){var M=J(t,i,z),V=g[x]+v[x]+U(M,z,g[x],m[x],h)-M;P[H]=M,w[H]=V,B[H]=Math.cos(V),D[H]=Math.sin(V)}else P[H]=J(t,i,z),w[H]=0,B[H]=1,D[H]=0}T[k]=2*c;var I=T[x=0],L=T[x+1],j=B[x],W=D[x];for(b=1;b=I&&b-I>L-b&&(I=T[++x],L=T[x+1],j=B[x],W=D[x]);var X=t[b]*j-i[b]*W,N=t[b]*W+i[b]*j;t[b]=X,i[b]=N}}else for(var H=0;Hd&&(d=Math.abs(2*l.m_re[t]));for(t=0;td&&(d=Math.abs(l.m_re[t+g+e]+l.m_im[t]));for(t=c-g;td&&(d=Math.abs(2*l.m_im[t]));var u=1/Math.floor(1*c/(2*g));for(h*d>u&&(h=u/d),t=0;t1){d=s.float_array(e[0].length);for(var u=1/e.length,l=0;l0){var v=z+H+i,y=[];for(l=0;lP&&(P=z);var w=s.float_array(P);s.blit(p,0,w,0,z);for(var E=0,x=z,A=0,R=0;;){var O=c+m-H;if(E+O>i){s.blit(d,E,_,H,i-E),H+=i-E,E=i;break}O<=0?H-=2*m:(s.blit(d,E,_,H,O),E+=O,H=c-m),R=G(),M+=2*m/t,V+=R/t,(A=x+R-P)<0&&(A=0),s.blit(p,0,w,x,R-A),x+=R}s.blit(p,R-A,p,0,A),z=A;var F=[];for(l=0;l>=1;i.m_revTgt[d]=u}i.twiddleRe=s.float_array(i.m_logN),i.twiddleIm=s.float_array(i.m_logN);for(var l=1,f=0;f>1,c=d>>1,l=d;if(e)for(var f=1/d,_=0;_>=1,c>>=1,l>>=1}for(var O,F,S=i.m_revTgt,C=0;CC&&(F=t[O=S[C]],t[O]=t[C],t[C]=F,F=s[O],s[O]=s[C],s[C]=F)};var p=t>>1;return i.unpack=function(e,s,d,h){e[0]=i.m_re[0],d[0]=i.m_im[0],s[0]=h[0]=0,e[p]=i.m_re[p],d[p]=i.m_im[p],s[p]=h[p]=0;for(var u=1;u{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=class Bisector{constructor(e){this.lower=e.start,this.upper=e.end,this.onprocess=e.process,this.position=0,this.n=0}iterate(){return this.n++,this.position=Math.floor((this.lower+this.upper)/2),this.onprocess(this.lower,this.upper,this.position)}start(){return this.iterate(),this}left(){return this.upper=this.position,this.iterate()}right(){return this.lower=this.position,this.iterate()}};t.default=i},523:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=new class{hasTypedArrays(){return!!window.Uint32Array}hasWebAssembly(){return!!window.WebAssembly}hasWebAudio(){return!(!window.AudioContext&&!window.webkitAudioContext)}hasFlash(){return!1}hasAudio(){return this.hasWebAudio()}isBlacklisted(e){return!1}isSlow(){return!1}isTooSlow(){return!1}supported(e){return"OGVDecoder"===e?this.hasWebAssembly():"OGVPlayer"===e&&(this.supported("OGVDecoder")&&this.hasAudio())}};t.default=i},408:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(580));class OGVDecoderAudioProxy extends((0,d.default)({loadedMetadata:!1,audioFormat:null,audioBuffer:null,cpuTime:0})){init(e){this.proxy("init",[],e)}processHeader(e,t){this.proxy("processHeader",[e],t,[e])}processAudio(e,t){this.proxy("processAudio",[e],t,[e])}close(){this.terminate()}}var h=OGVDecoderAudioProxy;t.default=h},319:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(580));class OGVDecoderVideoProxy extends((0,d.default)({loadedMetadata:!1,videoFormat:null,frameBuffer:null,cpuTime:0})){init(e){this.proxy("init",[],e)}processHeader(e,t){this.proxy("processHeader",[e],t,[e])}processFrame(e,t){this.proxy("processFrame",[e],t,[e])}close(){this.terminate()}sync(){this.proxy("sync",[],(()=>{}))}recycleFrame(e){this.proxy("recycleFrame",[e],(()=>{}),[e.y.bytes.buffer,e.u.bytes.buffer,e.v.bytes.buffer])}}var h=OGVDecoderVideoProxy;t.default=h},445:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(539)),h="1.8.4-20210702161914-bd3a07f",u={OGVDemuxerOggW:"ogv-demuxer-ogg-wasm.js",OGVDemuxerWebMW:"ogv-demuxer-webm-wasm.js",OGVDecoderAudioOpusW:"ogv-decoder-audio-opus-wasm.js",OGVDecoderAudioVorbisW:"ogv-decoder-audio-vorbis-wasm.js",OGVDecoderVideoTheoraW:"ogv-decoder-video-theora-wasm.js",OGVDecoderVideoVP8W:"ogv-decoder-video-vp8-wasm.js",OGVDecoderVideoVP8MTW:"ogv-decoder-video-vp8-mt-wasm.js",OGVDecoderVideoVP9W:"ogv-decoder-video-vp9-wasm.js",OGVDecoderVideoVP9SIMDW:"ogv-decoder-video-vp9-simd-wasm.js",OGVDecoderVideoVP9MTW:"ogv-decoder-video-vp9-mt-wasm.js",OGVDecoderVideoVP9SIMDMTW:"ogv-decoder-video-vp9-simd-mt-wasm.js",OGVDecoderVideoAV1W:"ogv-decoder-video-av1-wasm.js",OGVDecoderVideoAV1SIMDW:"ogv-decoder-video-av1-simd-wasm.js",OGVDecoderVideoAV1MTW:"ogv-decoder-video-av1-mt-wasm.js",OGVDecoderVideoAV1SIMDMTW:"ogv-decoder-video-av1-simd-mt-wasm.js"};var c=class OGVLoaderBase{constructor(){this.base=this.defaultBase()}defaultBase(){}wasmSupported(){return d.default.wasmSupported()}scriptForClass(e){return u[e]}urlForClass(e){var t=this.scriptForClass(e);if(t)return this.urlForScript(t);throw new Error("asked for URL for unknown class "+e)}urlForScript(e){if(e){var t=this.base;return void 0===t?t="":t+="/",t+e+"?version="+encodeURIComponent(h)}throw new Error("asked for URL for unknown script "+e)}loadClass(e,t,i){i=i||{};var s=this.getGlobal(),d=this.urlForClass(e),classWrapper=t=>((t=t||{}).locateFile=e=>"data:"===e.slice(0,5)?e:this.urlForScript(e),t.mainScriptUrlOrBlob=this.scriptForClass(e)+"?version="+encodeURIComponent(h),s[e](t));"function"==typeof s[e]?t(classWrapper):this.loadScript(d,(()=>{t(classWrapper)}))}};t.default=c},964:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(408)),h=s(i(319)),u=s(i(445)),c={audio:{proxy:d.default,worker:"ogv-worker-audio.js"},video:{proxy:h.default,worker:"ogv-worker-video.js"}},l={OGVDecoderAudioOpusW:"audio",OGVDecoderAudioVorbisW:"audio",OGVDecoderVideoTheoraW:"video",OGVDecoderVideoVP8W:"video",OGVDecoderVideoVP9W:"video",OGVDecoderVideoVP9SIMDW:"video",OGVDecoderVideoAV1W:"video",OGVDecoderVideoAV1SIMDW:"video"};class OGVLoaderWeb extends u.default{constructor(){super(),this.scriptStatus={},this.scriptCallbacks={}}getGlobal(){return window}defaultBase(){for(var e,t,i=document.querySelectorAll("script"),s=/^(?:|(.*)\/)ogv(?:-support|-es2017)?\.js(?:\?|#|$)/,d=0;d{var i=this.scriptCallbacks[e];delete this.scriptCallbacks[e],this.scriptStatus[e]="done",i.forEach((e=>{e()}))};i.addEventListener("load",done),i.addEventListener("error",done),i.src=e,document.querySelector("head").appendChild(i)}}workerProxy(e,t){var i=c[l[e]];if(!i)throw new Error("Requested worker for class with no proxy: "+e);var s,d=i.proxy,h=i.worker,u=this.urlForScript(this.scriptForClass(e)),_=this.urlForScript(h),p=function construct(t){return new d(s,e,t)};if(_.match(/^https?:|\/\//i)){var m,g,v,y,b,T=!1,k=!1;function completionCheck(){if(1==T&&1==k){var e=v+" "+y+"\nOGVLoader.base = "+JSON.stringify(f.base);try{b=new Blob([e],{type:"application/javascript"})}catch(t){window.BlobBuilder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,(b=new BlobBuilder).append(e),b=b.getBlob()}s=new Worker(URL.createObjectURL(b)),t((function(e){return Promise.resolve(new p(e))}))}}(m=new XMLHttpRequest).open("GET",u,!0),m.onreadystatechange=function(){4==m.readyState&&200==m.status&&(v=m.responseText,T=!0,completionCheck())},m.send(),(g=new XMLHttpRequest).open("GET",_,!0),g.onreadystatechange=function(){4==g.readyState&&200==g.status&&(y=g.responseText,k=!0,completionCheck())},g.send()}else s=new Worker(_),t((function(e){return Promise.resolve(new p(e))}))}}var f=new OGVLoaderWeb,_=f;t.default=_},759:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(309)),h={MEDIA_ERR_ABORTED:1,MEDIA_ERR_NETWORK:2,MEDIA_ERR_DECODE:3,MEDIA_ERR_SRC_NOT_SUPPORTED:4};class OGVMediaError{constructor(e,t){this.code=e,this.message=t}}(0,d.default)(OGVMediaError,h),(0,d.default)(OGVMediaError.prototype,h);var u=OGVMediaError;t.default=u},278:(e,t)=>{"use strict";function split(e,t,i){var s=e.split(t,i).map((e=>function trim(e){return e.replace(/^\s+/,"").replace(/\s+$/,"")}(e)));if("number"==typeof i)for(;s.length{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d,h=s(i(731)),u=s(i(936)),c=s(i(848)),l=s(i(964)),f=s(i(893)),_=s(i(309)),p=s(i(759)),m=s(i(278)),g=s(i(168)),v=s(i(625)),y=(()=>{if("function"==typeof setImmediate)return setImmediate;var e=new MessageChannel,t=[];return e.port1.onmessage=e=>{t.shift()()},function nextTick(i){t.push(i),e.port2.postMessage({})}})(),b={NETWORK_EMPTY:0,NETWORK_IDLE:1,NETWORK_LOADING:2,NETWORK_NO_SOURCE:3,HAVE_NOTHING:0,HAVE_METADATA:1,HAVE_CURRENT_DATA:2,HAVE_FUTURE_DATA:3,HAVE_ENOUGH_DATA:4},T="INITIAL",k="SEEKING_END",P="LOADED",w="PRELOAD",E="READY",x="PLAYING",A="SEEKING",R="ERROR",O="NOT_SEEKING",F="BISECT_TO_TARGET",S="BISECT_TO_KEYPOINT",C="LINEAR_TO_TARGET",B="exact",D="fast";function OGVJSElement(){var e=document.createElement("ogvjs");return Object.setPrototypeOf?Object.setPrototypeOf(e,Object.getPrototypeOf(this)):e.__proto__=this.__proto__,e}d="undefined"==typeof performance||void 0===typeof performance.now?Date.now:performance.now.bind(performance),OGVJSElement.prototype=Object.create(HTMLElement.prototype,{});class OGVPlayer extends OGVJSElement{constructor(e){if(super(),(e=e||{}).base=e.base||l.default.base,this._options=e,this._instanceId="ogvjs"+ ++OGVPlayer.instanceCount,void 0!==e.worker?this._enableWorker=!!e.worker:this._enableWorker=!!window.Worker,!l.default.wasmSupported())throw new Error("WebAssembly not supported");this._enableThreading=!!e.threading,this._enableSIMD=!!e.simd,this._state=T,this._seekState=O,this._detectedType=null,this._canvas=document.createElement("canvas"),this._frameSink=null,e.video&&this._canvas.captureStream?(this._mediaStream=new MediaStream,this._video="object"==typeof e.video?e.video:document.createElement("video"),this._video.playsInline=!0,this._video.srcObject=this._mediaStream):this._video=null,this._videoTrack=null,this._audioTrack=null,this._canvasStream=null,this.className=this._instanceId,(0,_.default)(this,b),this._view=this._video||this._canvas,this._view.style.position="absolute",this._view.style.top="0",this._view.style.left="0",this._view.style.width="100%",this._view.style.height="100%",this._view.style.objectFit="contain",this.appendChild(this._view),this._startTime=d(),this._codec=null,this._audioInfo=null,this._videoInfo=null,this._actionQueue=[],this._audioFeeder=null,this._muted=!1,this._initialPlaybackPosition=0,this._initialPlaybackOffset=0,this._prebufferingAudio=!1,this._initialSeekTime=0,this._currentSrc="",this._streamEnded=!1,this._mediaError=null,this._dataEnded=!1,this._byteLength=0,this._duration=null,this._lastSeenTimestamp=null,this._nextProcessingTimer,this._nextFrameTimer=null,this._loading=!1,this._started=!1,this._paused=!0,this._ended=!1,this._startedPlaybackInDocument=!1,this._stream=void 0,this._framesProcessed=0,this._targetPerFrameTime=1e3/60,this._actualPerFrameTime=0,this._totalFrameTime=0,this._totalFrameCount=0,this._playTime=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._totalJitter=0,this._droppedAudio=0,this._delayedAudio=0,this._lateFrames=0,this._poster="",this._thumbnail=null,this._frameEndTimestamp=0,this._audioEndTimestamp=0,this._decodedFrames=[],this._pendingFrames=[],this._lastFrameDecodeTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameDrawingTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastProxyTime=0,this._lastDrawingTime=0,this._lastFrameTimestamp=0,this._currentVideoCpuTime=0,this._lastTimeUpdate=0,this._timeUpdateInterval=250,this._seekTargetTime=0,this._bisectTargetTime=0,this._seekMode=null,this._lastSeekPosition=null,this._seekBisector=null,this._didSeek=null,this._depth=0,this._needProcessing=!1,this._pendingFrame=0,this._pendingAudio=0,this._framePipelineDepth=8,this._frameParallelism=this._enableThreading?Math.min(16,navigator.hardwareConcurrency)||1:0,this._audioPipelineDepth=12,this._videoInfo=null,this._audioInfo=null,this._width=0,this._height=0,this._volume=1,this._playbackRate=1,Object.defineProperties(this,{src:{get:function getSrc(){return this.getAttribute("src")||""},set:function setSrc(e){this.setAttribute("src",e),this._loading=!1,this._prepForLoad("interactive")}},buffered:{get:function getBuffered(){var e;return e=this._stream&&this._byteLength&&this._duration?this._stream.getBufferedRanges().map((e=>e.map((e=>e/this._stream.length*this._duration)))):[[0,0]],new g.default(e)}},seekable:{get:function getSeekable(){return this.duration<1/0&&this._stream&&this._stream.seekable&&this._codec&&this._codec.seekable?new g.default([[0,this._duration]]):new g.default([])}},currentTime:{get:function getCurrentTime(){return this._state==A?this._seekTargetTime:this._codec?this._state!=x||this._paused?this._initialPlaybackOffset:this._getPlaybackTime():this._initialSeekTime},set:function setCurrentTime(e){this._seek(e,B)}},duration:{get:function getDuration(){return this._codec&&this._codec.loadedMetadata?null!==this._duration?this._duration:1/0:NaN}},paused:{get:function getPaused(){return this._paused}},ended:{get:function getEnded(){return this._ended}},seeking:{get:function getSeeking(){return this._state==A}},muted:{get:function getMuted(){return this._muted},set:function setMuted(e){this._muted=e,this._audioFeeder?this._audioFeeder.muted=this._muted:this._started&&!this._muted&&this._codec&&this._codec.hasAudio&&(this._log("unmuting: switching from timer to audio clock"),this._initAudioFeeder(),this._startPlayback(this._audioEndTimestamp)),this._fireEventAsync("volumechange")}},poster:{get:function getPoster(){return this._poster},set:function setPoster(e){if(this._poster=e,!this._started){this._thumbnail&&this.removeChild(this._thumbnail);var t=new Image;t.src=this._poster,t.className="ogvjs-poster",t.style.position="absolute",t.style.top="0",t.style.left="0",t.style.width="100%",t.style.height="100%",t.style.objectFit="contain",t.style.visibility="hidden",t.addEventListener("load",(()=>{this._thumbnail===t&&(OGVPlayer.styleManager.appendRule("."+this._instanceId,{width:t.naturalWidth+"px",height:t.naturalHeight+"px"}),OGVPlayer.updatePositionOnResize(),t.style.visibility="visible")})),this._thumbnail=t,this.appendChild(t)}}},videoWidth:{get:function getVideoWidth(){return this._videoInfo?this._videoInfo.displayWidth:0}},videoHeight:{get:function getVideoHeight(){return this._videoInfo?this._videoInfo.displayHeight:0}},ogvjsVideoFrameRate:{get:function getOgvJsVideoFrameRate(){return this._videoInfo?0==this._videoInfo.fps?this._totalFrameCount/(this._totalFrameTime/1e3):this._videoInfo.fps:0}},ogvjsAudioChannels:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.channels:0}},ogvjsAudioSampleRate:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.rate:0}},width:{get:function getWidth(){return this._width},set:function setWidth(e){this._width=parseInt(e,10),this.style.width=this._width+"px",OGVPlayer.updatePositionOnResize()}},height:{get:function getHeight(){return this._height},set:function setHeight(e){this._height=parseInt(e,10),this.style.height=this._height+"px",OGVPlayer.updatePositionOnResize()}},autoplay:{get:function getAutoplay(){return!1},set:function setAutoplay(e){}},controls:{get:function getControls(){return!1},set:function setControls(e){}},loop:{get:function getLoop(){return!1},set:function setLoop(e){}},crossOrigin:{get:function getCrossOrigin(){return null},set:function setCrossOrigin(e){}},currentSrc:{get:function getCurrentSrc(){return this._currentSrc}},defaultMuted:{get:function getDefaultMuted(){return!1}},defaultPlaybackRate:{get:function getDefaultPlaybackRate(){return 1}},error:{get:function getError(){return this._state===R?this._mediaError?this._mediaError:new p.default("unknown error occurred in media procesing"):null}},preload:{get:function getPreload(){return this.getAttribute("preload")||""},set:function setPreload(e){this.setAttribute("preload",e)}},readyState:{get:function getReadyState(){return this._stream&&this._codec&&this._codec.loadedMetadata?OGVPlayer.HAVE_ENOUGH_DATA:OGVPlayer.HAVE_NOTHING}},networkState:{get:function getNetworkState(){return this._stream?this._stream.waiting?OGVPlayer.NETWORK_LOADING:OGVPlayer.NETWORK_IDLE:this.readyState==OGVPlayer.HAVE_NOTHING?OGVPlayer.NETWORK_EMPTY:OGVPlayer.NETWORK_NO_SOURCE}},playbackRate:{get:function getPlaybackRate(){return this._playbackRate},set:function setPlaybackRate(e){var t=Number(e)||1;this._audioFeeder?this._audioFeeder.tempo=t:this._paused||(this._initialPlaybackOffset=this._getPlaybackTime(),this._initialPlaybackPosition=t*d()/1e3),this._playbackRate=t,this._fireEventAsync("ratechange")}},played:{get:function getPlayed(){return new g.default([[0,this.currentTime]])}},volume:{get:function getVolume(){return this._volume},set:function setVolume(e){this._volume=+e,this._audioFeeder&&(this._audioFeeder.volume=this._volume),this._fireEventAsync("volumechange")}}}),this.onframecallback=null,this.onloadstate=null,this.onprogress=null,this.onsuspend=null,this.onabort=null,this.onemptied=null,this.onstalled=null,this.onloadedmetadata=null,this.onloadeddata=null,this.oncanplay=null,this.oncanplaythrough=null,this.onplaying=null,this.onwaiting=null,this.onseeking=null,this.onseeked=null,this.onended=null,this.ondurationchange=null,this.ontimeupdate=null,this.onplay=null,this.onpause=null,this.onratechange=null,this.onresize=null,this.onvolumechange=null,this.onaudiofeedercreated=null}_time(e){var t=d();e();var i=d()-t;return this._lastFrameDecodeTime+=i,i}_log(e){var t=this._options;if(t.debug){var i=d()-this._startTime;t.debugFilter&&!e.match(t.debugFilter)||console.log("["+Math.round(10*i)/10+"ms] "+e)}}_fireEvent(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log("fireEvent "+e);var i,s="function"==typeof Event;for(var d in s?i=new CustomEvent(e):(i=document.createEvent("Event")).initEvent(e,!1,!1),t)t.hasOwnProperty(d)&&(i[d]=t[d]);var h=this.dispatchEvent(i);!s&&"resize"===e&&this.onresize&&h&&this.onresize.call(this,i)}_fireEventAsync(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log("fireEventAsync "+e),y((()=>{this._fireEvent(e,t)}))}static initSharedAudioContext(){c.default.initSharedAudioContext()}_initAudioFeeder(){var e=this._options,t={bufferSize:8192};if(e.audioContext&&(t.audioContext=e.audioContext),e.audioDestination&&(t.output=e.audioDestination),e.audioBackendFactory&&(t.backendFactory=e.audioBackendFactory),this._video&&!t.output){t.audioContext||(t.audioContext=c.default.initSharedAudioContext());var i=t.audioContext.createMediaStreamDestination();this._audioTrack=i.stream.getAudioTracks()[0],this._mediaStream.addTrack(this._audioTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream),this._video.play(),t.output=i}var s=this._audioFeeder=new c.default(t);s.init(this._audioInfo.channels,this._audioInfo.rate),this.onaudiofeedercreated&&this.onaudiofeedercreated(this._audioFeeder),s.bufferThreshold=1,s.volume=this.volume,s.muted=this.muted,s.tempo=this.playbackRate,s.onbufferlow=()=>{this._log("onbufferlow"),this._stream&&(this._stream.buffering||this._stream.seeking)||this._pendingAudio||this._pingProcessing()},s.onstarved=()=>{this._dataEnded?this._log("onstarved: appear to have reached end of audio"):(this._log("onstarved: halting audio due to starvation"),this._stopPlayback(),this._prebufferingAudio=!0),this._isProcessing()||this._pingProcessing(0)}}_startPlayback(e){if(this._audioFeeder){this._audioFeeder.start();var t=this._audioFeeder.getPlaybackState();this._initialPlaybackPosition=t.playbackPosition}else this._initialPlaybackPosition=this._playbackRate*d()/1e3;void 0!==e&&(this._initialPlaybackOffset=e),this._prebufferingAudio=!1,this._log("continuing at "+this._initialPlaybackPosition+", "+this._initialPlaybackOffset)}_stopPlayback(){this._initialPlaybackOffset=this._getPlaybackTime(),this._log("pausing at "+this._initialPlaybackOffset),this._audioFeeder&&this._audioFeeder.stop()}_getPlaybackTime(e){return this._prebufferingAudio||this._paused?this._initialPlaybackOffset:(this._audioFeeder?(e=e||this._audioFeeder.getPlaybackState()).playbackPosition:this._playbackRate*d()/1e3)-this._initialPlaybackPosition+this._initialPlaybackOffset}_stopVideo(){this._log("STOPPING"),this._state=T,this._seekState=O,this._started=!1,this._ended=!1,this._frameEndTimestamp=0,this._audioEndTimestamp=0,this._lastFrameDecodeTime=0,this._prebufferingAudio=!1,this._actionQueue.splice(0,this._actionQueue.length),this._stream&&(this._stream.abort(),this._stream=null,this._streamEnded=!1),this._codec&&(this._codec.close(),this._codec=null,this._pendingFrame=0,this._pendingAudio=0,this._dataEnded=!1),this._videoInfo=null,this._audioInfo=null,this._audioFeeder&&(this._audioFeeder.close(),this._audioFeeder=null),this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._frameSink&&(this._frameSink.clear(),this._frameSink=null),this._decodedFrames&&(this._decodedFrames=[]),this._pendingFrames&&(this._pendingFrames=[]),this._initialSeekTime=0,this._initialPlaybackPosition=0,this._initialPlaybackOffset=0,this._duration=null}_doFrameComplete(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._startedPlaybackInDocument&&!document.body.contains(this)&&y((()=>{this.stop()}));var t=d(),i=t-this._lastFrameTimestamp,s=this._actualPerFrameTime-this._targetPerFrameTime;this._totalJitter+=Math.abs(s),this._playTime+=i;var h={cpuTime:this._lastFrameDecodeTime,drawingTime:this._drawingTime-this._lastFrameDrawingTime,bufferTime:this._bufferTime-this._lastFrameBufferTime,proxyTime:this._proxyTime-this._lastFrameProxyTime,demuxerTime:0,videoTime:0,audioTime:0,clockTime:this._actualPerFrameTime,late:e.dropped,dropped:e.dropped};function n(e){return Math.round(10*e)/10}this._codec&&(h.demuxerTime=this._codec.demuxerCpuTime-this._lastFrameDemuxerCpuTime,h.videoTime+=this._currentVideoCpuTime-this._lastFrameVideoCpuTime,h.audioTime+=this._codec.audioCpuTime-this._lastFrameAudioCpuTime),h.cpuTime+=h.demuxerTime,this._lastFrameDecodeTime=0,this._lastFrameTimestamp=t,this._codec?(this._lastFrameVideoCpuTime=this._currentVideoCpuTime,this._lastFrameAudioCpuTime=this._codec.audioCpuTime,this._lastFrameDemuxerCpuTime=this._codec.demuxerCpuTime):(this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0),this._lastFrameDrawingTime=this._drawingTime,this._lastFrameBufferTime=this._bufferTime,this._lastFrameProxyTime=this._proxyTime,this._log("drew frame "+e.frameEndTimestamp+": clock time "+n(i)+" (jitter "+n(s)+") cpu: "+n(h.cpuTime)+" (mux: "+n(h.demuxerTime)+" buf: "+n(h.bufferTime)+" draw: "+n(h.drawingTime)+" proxy: "+n(h.proxyTime)+") vid: "+n(h.videoTime)+" aud: "+n(h.audioTime)),this._fireEventAsync("framecallback",h),(!this._lastTimeUpdate||t-this._lastTimeUpdate>=this._timeUpdateInterval)&&(this._lastTimeUpdate=t,this._fireEventAsync("timeupdate")),this._codec&&e.yCbCrBuffer&&this._codec.recycleFrame(e.yCbCrBuffer)}_seekStream(e){this._stream.seeking&&this._stream.abort(),this._stream.buffering&&this._stream.abort(),this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._stream.seek(e).then((()=>{this._readBytesAndWait()})).catch((e=>{this._onStreamError(e)}))}_onStreamError(e){"AbortError"===e.name?this._log("i/o promise canceled; ignoring"):(this._log("i/o error: "+e),this._mediaError=new p.default(p.default.MEDIA_ERR_NETWORK,String(e)),this._state=R,this._stopPlayback())}_seek(e,t){if(this._log("requested seek to "+e+", mode "+t),this.readyState==this.HAVE_NOTHING)return this._log("not yet loaded; saving seek position for later"),void(this._initialSeekTime=e);if(this._stream&&!this._stream.seekable)throw new Error("Cannot seek a non-seekable stream");if(this._codec&&!this._codec.seekable)throw new Error("Cannot seek in a non-seekable file");var prepForSeek=i=>{this._stream&&this._stream.buffering&&this._stream.abort(),this._stream&&this._stream.seeking&&this._stream.abort(),this._actionQueue.splice(0,this._actionQueue.length),this._stopPlayback(),this._prebufferingAudio=!1,this._audioFeeder&&this._audioFeeder.flush(),this._state=A,this._seekTargetTime=e,this._seekMode=t,this._codec?this._codec.flush(i):i()};prepForSeek((()=>{this._isProcessing()||this._pingProcessing(0)})),this._actionQueue.push((()=>{prepForSeek((()=>{this._doSeek(e)}))}))}_doSeek(e){this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._state=A,this._seekTargetTime=e,this._lastSeekPosition=-1,this._decodedFrames=[],this._pendingFrames=[],this._pendingFrame=0,this._pendingAudio=0,this._didSeek=!1,this._codec.seekToKeypoint(e,(t=>{if(t)return this._seekState=C,this._fireEventAsync("seeking"),this._didSeek?void 0:void this._pingProcessing();this._codec.getKeypointOffset(e,(e=>{e>0?(this._seekState=C,this._seekStream(e)):(this._seekState=F,this._startBisection(this._seekTargetTime)),this._fireEventAsync("seeking")}))}))}_startBisection(e){var t=Math.max(0,this._stream.length-65536);this._bisectTargetTime=e,this._seekBisector=new f.default({start:0,end:t,process:(e,t,i)=>i!=this._lastSeekPosition&&(this._lastSeekPosition=i,this._codec.flush((()=>{this._seekStream(i)})),!0)}),this._seekBisector.start()}_continueSeekedPlayback(){this._seekState=O,this._state=E,this._frameEndTimestamp=this._codec.frameTimestamp,this._audioEndTimestamp=this._codec.audioTimestamp,this._codec.hasAudio?this._seekTargetTime=this._codec.audioTimestamp:this._seekTargetTime=this._codec.frameTimestamp,this._initialPlaybackOffset=this._seekTargetTime;var finishedSeeking=()=>{this._lastTimeUpdate=this._seekTargetTime,this._fireEventAsync("timeupdate"),this._fireEventAsync("seeked"),this._isProcessing()||this._pingProcessing()};if(this._codec.hasVideo&&this._decodedFrames.length){var e=this._decodedFrames.shift();this._drawFrame(e.yCbCrBuffer),finishedSeeking()}else{if(this._codec.hasVideo&&this._codec.frameReady)return this._codec.decodeFrame((e=>{e&&this._drawFrame(this._codec.frameBuffer),finishedSeeking()})),void this._codec.sync();finishedSeeking()}}_drawFrame(e){this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null),this._frameSink.drawFrame(e),this._video&&(this._canvasStream||(this._canvasStream=this._canvas.captureStream(0),this._videoTrack=this._canvasStream.getVideoTracks()[0],this._mediaStream.addTrack(this._videoTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream,this._video.play())),this._videoTrack&&this._videoTrack.requestFrame?this._videoTrack.requestFrame():this._canvasStream&&this._canvasStream.requestFrame&&this._canvasStream.requestFrame())}_doProcessLinearSeeking(){var e;if(e=this._codec.hasVideo?this._targetPerFrameTime/1e3:1/256,this._codec.hasVideo){if(this._pendingFrame)return;if(!this._codec.frameReady)return void this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?(this._log("stream ended during linear seeking on video"),this._dataEnded=!0,this._continueSeekedPlayback()):this._readBytesAndWait()}));if(this._seekMode===D&&this._codec.keyframeTimestamp==this._codec.frameTimestamp)return void this._continueSeekedPlayback();if(this._codec.frameTimestamp<=this._seekTargetTime){var t=this._codec.frameTimestamp;return this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:t}),this._decodedFrames.splice(0,this._decodedFrames.length),this._codec.decodeFrame((e=>{this._pendingFrame--,this._pendingFrames.shift(),this._decodedFrames.push({yCbCrBuffer:this._codec.frameBuffer,videoCpuTime:this._codec.videoCpuTime,frameEndTimestamp:t}),this._pingProcessing()})),void this._codec.sync()}if(!this._codec.hasAudio)return void this._continueSeekedPlayback()}if(this._codec.hasAudio){if(this._pendingAudio)return;return this._codec.audioReady?this._codec.audioTimestamp+e{this._pingProcessing()})):void this._continueSeekedPlayback():void this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?(this._log("stream ended during linear seeking on audio"),this._dataEnded=!0,this._continueSeekedPlayback()):this._readBytesAndWait()}))}}_doProcessBisectionSeek(){var e,t;if(this._codec.hasVideo)t=this._codec.frameTimestamp,e=this._targetPerFrameTime/1e3;else{if(!this._codec.hasAudio)throw new Error("Invalid seek state; no audio or video track available");t=this._codec.audioTimestamp,e=1/256}t<0?this._codec.process((e=>{if(e)this._pingProcessing();else if(this._streamEnded){if(this._log("stream ended during bisection seek"),!this._seekBisector.right())throw this._log("failed going back"),new Error("not sure what to do")}else this._readBytesAndWait()})):t-e/2>this._bisectTargetTime?this._seekBisector.left()||(this._log("close enough (left)"),this._seekTargetTime=t,this._continueSeekedPlayback()):t+e/20?this._targetPerFrameTime=1e3/this._videoInfo.fps:this._targetPerFrameTime=16.667,this._canvas.width=this._videoInfo.displayWidth,this._canvas.height=this._videoInfo.displayHeight,OGVPlayer.styleManager.appendRule("."+this._instanceId,{width:this._videoInfo.displayWidth+"px",height:this._videoInfo.displayHeight+"px"}),OGVPlayer.updatePositionOnResize();var e={};void 0!==this._options.webGL&&(e.webGL=this._options.webGL),this._options.forceWebGL&&(e.webGL="required"),this._frameSink=h.default.attach(this._canvas,e)}_doProcessing(){if(this._didSeek&&(this._didSeek=!1),this._nextProcessingTimer=null,this._isProcessing(),this._depth>0)throw new Error("REENTRANCY FAIL: doProcessing recursing unexpectedly");var e=0;do{if(this._needProcessing=!1,this._depth++,this._doProcessingLoop(),this._depth--,this._needProcessing&&this._isProcessing())throw new Error("REENTRANCY FAIL: waiting on input or codec but asked to keep processing");++e>500&&(this._log("stuck in processing loop; breaking with timer"),this._needProcessing=0,this._pingProcessing(0))}while(this._needProcessing)}_doProcessingLoop(){if(this._actionQueue.length)this._actionQueue.shift()();else if(this._state==T)this._doProcessInitial();else if(this._state==k)this._doProcessSeekingEnd();else if(this._state==P)this._doProcessLoaded();else if(this._state==w)this._doProcessPreload();else if(this._state==E)this._doProcessReady();else if(this._state==A)this._doProcessSeeking();else if(this._state==x)this._doProcessPlay();else{if(this._state!=R)throw new Error("Unexpected OGVPlayer state "+this._state);this._doProcessError()}}_doProcessInitial(){if(this._codec.loadedMetadata){if(!this._codec.hasVideo&&!this._codec.hasAudio)throw new Error("No audio or video found, something is wrong");this._codec.hasAudio&&(this._audioInfo=this._codec.audioFormat),this._codec.hasVideo&&(this._videoInfo=this._codec.videoFormat,this._setupVideo()),isNaN(this._codec.duration)||(this._duration=this._codec.duration),null===this._duration&&this._stream.seekable&&"video/ogg"==this._detectedType?(this._state=k,this._lastSeenTimestamp=-1,this._codec.flush((()=>{this._seekStream(Math.max(0,this._stream.length-131072))}))):(this._state=P,this._pingProcessing())}else this._codec.process((e=>{if(e)this._pingProcessing();else{if(this._streamEnded)throw new Error("end of file before headers found");this._log("reading more cause we are out of data"),this._readBytesAndWait()}}))}_doProcessSeekingEnd(){this._codec.frameReady?(this._log("saw frame with "+this._codec.frameTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.frameTimestamp),this._codec.discardFrame((()=>{this._pingProcessing()}))):this._codec.audioReady?(this._log("saw audio with "+this._codec.audioTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.audioTimestamp),this._codec.discardAudio((()=>{this._pingProcessing()}))):this._codec.process((e=>{e?this._pingProcessing():this._stream.eof?(this._log("seek-duration: we are at the end: "+this._lastSeenTimestamp),this._lastSeenTimestamp>0&&(this._duration=this._lastSeenTimestamp),this._state=P,this._codec.flush((()=>{this._streamEnded=!1,this._dataEnded=!1,this._seekStream(0)}))):this._readBytesAndWait()}))}_doProcessLoaded(){this._state=w,this._fireEventAsync("loadedmetadata"),this._fireEventAsync("durationchange"),this._codec.hasVideo&&this._fireEventAsync("resize"),this._pingProcessing(0)}_doProcessPreload(){!this._codec.frameReady&&this._codec.hasVideo||!this._codec.audioReady&&this._codec.hasAudio?this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?this._ended=!0:this._readBytesAndWait()})):(this._state=E,this._fireEventAsync("loadeddata"),this._pingProcessing())}_doProcessReady(){if(this._log("initial seek to "+this._initialSeekTime),this._initialSeekTime>0){var e=this._initialSeekTime;this._initialSeekTime=0,this._log("initial seek to "+e),this._doSeek(e)}else if(this._paused)this._log("paused while in ready");else{var finishStartPlaying=()=>{this._log("finishStartPlaying"),this._state=x,this._lastFrameTimestamp=d(),this._codec.hasAudio&&this._audioFeeder?this._prebufferingAudio=!0:this._startPlayback(),this._pingProcessing(0),this._fireEventAsync("play"),this._fireEventAsync("playing")};!this._codec.hasAudio||this._audioFeeder||this._muted?finishStartPlaying():(this._initAudioFeeder(),this._audioFeeder.waitUntilReady(finishStartPlaying))}}_doProcessSeeking(){if(this._seekState==O)throw new Error("seeking in invalid state (not seeking?)");if(this._seekState==F)this._doProcessBisectionSeek();else if(this._seekState==S)this._doProcessBisectionSeek();else{if(this._seekState!=C)throw new Error("Invalid seek state "+this._seekState);this._doProcessLinearSeeking()}}_doProcessPlay(){var e=this._codec;if(this._paused)this._log("paused during playback; stopping loop");else if((!e.hasAudio||e.audioReady||this._pendingAudio||this._dataEnded)&&(!e.hasVideo||e.frameReady||this._pendingFrame||this._decodedFrames.length||this._dataEnded)){var t,i,s,d=null,h=0,u=!1,c=0;if(e.hasAudio&&this._audioFeeder?(d=this._audioFeeder.getPlaybackState(),h=this._getPlaybackTime(d),u=this._dataEnded&&0==this._audioFeeder.durationBuffered,this._prebufferingAudio&&(this._audioFeeder.durationBuffered>=2*this._audioFeeder.bufferThreshold&&(!e.hasVideo||this._decodedFrames.length>=this._framePipelineDepth)||this._dataEnded)&&(this._log("prebuffering audio done; buffered to "+this._audioFeeder.durationBuffered),this._startPlayback(h),this._prebufferingAudio=!1),d.dropped!=this._droppedAudio&&this._log("dropped "+(d.dropped-this._droppedAudio)),d.delayed!=this._delayedAudio&&this._log("delayed "+(d.delayed-this._delayedAudio)),this._droppedAudio=d.dropped,this._delayedAudio=d.delayed,(t=this._audioFeeder.durationBuffered<=2*this._audioFeeder.bufferThreshold)&&(this._codec.audioReady?this._pendingAudio>=this._audioPipelineDepth&&(this._log("audio decode disabled: "+this._pendingAudio+" packets in flight"),t=!1):t=!1)):(h=this._getPlaybackTime(),t=this._codec.audioReady&&this._audioEndTimestamp0,s=this._pendingFrame+this._decodedFrames.length=l){for(var f=-1,_=0;_=0)for(;f-- >=0;){this._lateFrames++;var p=this._decodedFrames.shift();this._log("skipping already-decoded late frame at "+p.frameEndTimestamp),c=1e3*(p.frameEndTimestamp-h),this._frameEndTimestamp=p.frameEndTimestamp,this._actualPerFrameTime=this._targetPerFrameTime-c,this._framesProcessed++,p.dropped=!0,this._doFrameComplete(p)}var m=this._codec.nextKeyframeTimestamp,g=m-this._targetPerFrameTime/1e3*(this._framePipelineDepth+this._pendingFrame);if(m>=0&&m!=this._codec.frameTimestamp&&h>=g){this._log("skipping late frame at "+this._decodedFrames[0].frameEndTimestamp+" vs "+h+", expect to see keyframe at "+m);for(var v=0;v{})),this._framesProcessed++,this._doFrameComplete(k)}return void(this._isProcessing()||this._pingProcessing())}}else i&&c<=4||(i=!1)}if(s){this._log("play loop: ready to decode frame; thread depth: "+this._pendingFrame+", have buffered: "+this._decodedFrames.length),0==this._videoInfo.fps&&this._codec.frameTimestamp-this._frameEndTimestamp>0&&(this._targetPerFrameTime=1e3*(this._codec.frameTimestamp-this._frameEndTimestamp)),this._totalFrameTime+=this._targetPerFrameTime,this._totalFrameCount++;var P=this._frameEndTimestamp=this._codec.frameTimestamp;this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:P});var w=this._pendingFrames,E=!1,x=this._time((()=>{this._codec.decodeFrame((e=>{w===this._pendingFrames?(this._log("play loop callback: decoded frame"),this._pendingFrame--,this._pendingFrames.shift(),e?this._decodedFrames.push({yCbCrBuffer:this._codec.frameBuffer,videoCpuTime:this._codec.videoCpuTime,frameEndTimestamp:P}):this._log("Bad video packet or something"),this._codec.process((()=>{this._isProcessing()||this._pingProcessing(E?void 0:0)}))):this._log("play loop callback after flush, discarding")}))}));this._pendingFrame&&(E=!0,this._proxyTime+=x,this._pingProcessing(),this._dataEnded&&this._codec.sync())}else if(t){this._log("play loop: ready for audio; depth: "+this._pendingAudio),this._pendingAudio++;var A=this._codec.audioTimestamp,R=this._time((()=>{this._codec.decodeAudio((e=>{if(this._pendingAudio--,this._log("play loop callback: decoded audio"),this._audioEndTimestamp=A,e){var t=this._codec.audioBuffer;if(t&&(this._bufferTime+=this._time((()=>{this._audioFeeder&&this._audioFeeder.bufferData(t)})),!this._codec.hasVideo)){this._framesProcessed++;var i={frameEndTimestamp:this._audioEndTimestamp};this._doFrameComplete(i)}}this._isProcessing()||this._pingProcessing()}))}));this._pendingAudio&&(this._proxyTime+=R,this._codec.audioReady?this._pingProcessing():this._doProcessPlayDemux())}else if(i){this._log("play loop: ready to draw frame"),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null);var O=this._decodedFrames.shift();this._currentVideoCpuTime=O.videoCpuTime,this._drawingTime+=this._time((()=>{this._drawFrame(O.yCbCrBuffer)})),this._framesProcessed++,this._doFrameComplete(O),this._pingProcessing()}else if(!this._decodedFrames.length||this._nextFrameTimer||this._prebufferingAudio)if(this._dataEnded&&!(this._pendingAudio||this._pendingFrame||this._decodedFrames.length)){this._log("play loop: playback reached end of data "+[this._pendingAudio,this._pendingFrame,this._decodedFrames.length]);var F=0;this._codec.hasAudio&&this._audioFeeder&&(F=1e3*this._audioFeeder.durationBuffered),F>0?(this._log("play loop: ending pending "+F+" ms"),this._pingProcessing(Math.max(0,F))):(this._log("play loop: ENDING NOW: playback time "+this._getPlaybackTime()+"; frameEndTimestamp: "+this._frameEndTimestamp),this._stopPlayback(),this._prebufferingAudio=!1,this._initialPlaybackOffset=Math.max(this._audioEndTimestamp,this._frameEndTimestamp),this._ended=!0,this._paused=!0,this._fireEventAsync("pause"),this._fireEventAsync("ended"))}else this._prebufferingAudio&&(e.hasVideo&&!e.frameReady||e.hasAudio&&!e.audioReady)?(this._log("play loop: prebuffering demuxing"),this._doProcessPlayDemux()):this._log("play loop: waiting on async/timers");else{var S=c;this._log("play loop: setting a timer for drawing "+S),this._nextFrameTimer=setTimeout((()=>{this._nextFrameTimer=null,this._pingProcessing()}),S)}}else this._log("play loop: demuxing"),this._doProcessPlayDemux()}_doProcessPlayDemux(){var e=this._codec.frameReady,t=this._codec.audioReady;this._codec.process((i=>{this._codec.frameReady&&!e||this._codec.audioReady&&!t?(this._log("demuxer has packets"),this._pingProcessing()):i?(this._log("demuxer processing to find more packets"),this._pingProcessing()):(this._log("demuxer ran out of data"),this._streamEnded?(this._log("demuxer reached end of data stream"),this._dataEnded=!0,this._pingProcessing()):(this._log("demuxer loading more data"),this._readBytesAndWait()))}))}_doProcessError(){}_isProcessing(){return this._stream&&(this._stream.buffering||this._stream.seeking)||this._codec&&this._codec.processing}_readBytesAndWait(){if(this._stream.buffering||this._stream.seeking)this._log("readBytesAndWait during i/o");else{this._stream.read(32768).then((e=>{this._log("got input "+[e.byteLength]),e.byteLength&&this._actionQueue.push((()=>{this._codec.receiveInput(e,(()=>{this._pingProcessing()}))})),this._stream.eof&&(this._log("stream is at end!"),this._streamEnded=!0),this._isProcessing()||this._pingProcessing()})).catch((e=>{this._onStreamError(e)}))}}_pingProcessing(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(this._stream&&this._stream.waiting)this._log("waiting on input");else{this._nextProcessingTimer&&(this._log("canceling old processing timer"),clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null);e>-1/256?this._nextProcessingTimer=setTimeout((()=>{this._pingProcessing()}),e):this._depth?this._needProcessing=!0:this._doProcessing()}}_startProcessingVideo(e){if(!this._started&&!this._codec){this._framesProcessed=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._started=!0,this._ended=!1;var t={base:this._options.base,worker:this._enableWorker,threading:this._enableThreading,simd:this._enableSIMD};this._detectedType&&(t.type=this._detectedType),this._codec=new v.default(t),this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastDrawingTime=0,this._lastProxyTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastFrameDrawingTime=0,this._currentVideoCpuTime=0,this._codec.onseek=e=>{this._didSeek=!0,this._stream&&this._seekStream(e)},this._codec.init((()=>{this._codec.receiveInput(e,(()=>{this._readBytesAndWait()}))}))}}_loadCodec(e){this._stream.read(1024).then((t=>{var i=new Uint8Array(t);i.length>4&&i[0]=="O".charCodeAt(0)&&i[1]=="g".charCodeAt(0)&&i[2]=="g".charCodeAt(0)&&i[3]=="S".charCodeAt(0)?this._detectedType="video/ogg":i.length>4&&26==i[0]&&69==i[1]&&223==i[2]&&163==i[3]?this._detectedType="video/webm":this._detectedType="video/ogg",e(t)}))}_prepForLoad(e){this._stopVideo();var doLoad=()=>{this._options.stream?this._stream=this._options.stream:this._stream=new u.default({url:this.src,cacheSize:16777216,progressive:!1}),this._stream.load().then((()=>{this._loading=!1,this._currentSrc=this.src,this._byteLength=this._stream.seekable?this._stream.length:0;var e=this._stream.headers["x-content-duration"];"string"==typeof e&&(this._duration=parseFloat(e)),this._loadCodec((e=>{this._startProcessingVideo(e)}))})).catch((e=>{this._onStreamError(e)}))};this._currentSrc="",this._loading=!0,this._actionQueue.push((()=>{e&&"none"===this.preload?this._loading=!1:doLoad()})),this._pingProcessing(0)}load(){this._prepForLoad()}canPlayType(e){var t=new m.default(e);function checkTypes(e){if(t.codecs){var i=0,s=0;return t.codecs.forEach((t=>{e.indexOf(t)>=0?i++:s++})),0===i||s>0?"":"probably"}return"maybe"}return"ogg"!==t.minor||"audio"!==t.major&&"video"!==t.major&&"application"!==t.major?"webm"!==t.minor||"audio"!==t.major&&"video"!==t.major?"":checkTypes(["vorbis","opus","vp8","vp9"]):checkTypes(["vorbis","opus","theora"])}play(){this._muted||this._options.audioContext||OGVPlayer.initSharedAudioContext(),this._paused&&(this._startedPlaybackInDocument=document.body.contains(this),this._paused=!1,this._state==A||(this._started&&this._codec&&this._codec.loadedMetadata?(this._ended&&this._stream&&this._byteLength?(this._log(".play() starting over after end"),this._seek(0)):this._log(".play() while already started"),this._state=E,this._isProcessing()||this._pingProcessing()):this._loading?this._log(".play() while loading"):(this._log(".play() before started"),this._stream||this.load()))),this._video&&this._video.paused&&this._video.play()}getPlaybackStats(){return{targetPerFrameTime:this._targetPerFrameTime,framesProcessed:this._framesProcessed,videoBytes:this._codec?this._codec.videoBytes:0,audioBytes:this._codec?this._codec.audioBytes:0,playTime:this._playTime,demuxingTime:this._codec?this._codec.demuxerCpuTime-this._lastDemuxerCpuTime:0,videoDecodingTime:this._codec?this._codec.videoCpuTime-this._lastVideoCpuTime:0,audioDecodingTime:this._codec?this._codec.audioCpuTime-this._lastAudioCpuTime:0,bufferTime:this._bufferTime-this._lastBufferTime,drawingTime:this._drawingTime-this._lastDrawingTime,proxyTime:this._proxyTime-this._lastProxyTime,droppedAudio:this._droppedAudio,delayedAudio:this._delayedAudio,jitter:this._totalJitter/this._framesProcessed,lateFrames:this._lateFrames}}resetPlaybackStats(){this._framesProcessed=0,this._playTime=0,this._codec&&(this._lastDemuxerCpuTime=this._codec.demuxerCpuTime,this._lastVideoCpuTime=this._codec.videoCpuTime,this._lastAudioCpuTime=this._codec.audioCpuTime,this._codec.videoBytes=0,this._codec.audioBytes=0),this._lastBufferTime=this._bufferTime,this._lastDrawingTime=this._drawingTime,this._lastProxyTime=this._proxyTime,this._totalJitter=0,this._totalFrameTime=0,this._totalFrameCount=0}getVideoFrameSink(){return this._frameSink}getCanvas(){return this._canvas}getVideo(){return this._video}pause(){this._paused||(this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._stopPlayback(),this._prebufferingAudio=!1,this._paused=!0,this._fireEvent("pause"))}stop(){this._stopVideo(),this._paused=!0}fastSeek(e){this._seek(+e,D)}}if((0,_.default)(OGVPlayer,b),OGVPlayer.instanceCount=0,OGVPlayer.styleManager=new function StyleManager(){var e=document.createElement("style");e.type="text/css",e.textContent="ogvjs { display: inline-block; position: relative; -webkit-user-select: none; -webkit-tap-highlight-color: rgba(0,0,0,0); ",document.head.appendChild(e);var t=e.sheet;this.appendRule=function(e,i){var s=[];for(var d in i)i.hasOwnProperty(d)&&s.push(d+":"+i[d]);var h=e+"{"+s.join(";")+"}";t.insertRule(h,t.cssRules.length-1)}},OGVPlayer.supportsObjectFit="string"==typeof document.createElement("canvas").style.objectFit,OGVPlayer.supportsObjectFit&&navigator.userAgent.match(/iPhone|iPad|iPod Touch/)&&(OGVPlayer.supportsObjectFit=!1),OGVPlayer.supportsObjectFit&&navigator.userAgent.match(/Edge/)&&(OGVPlayer.supportsObjectFit=!1),OGVPlayer.supportsObjectFit)OGVPlayer.updatePositionOnResize=function(){};else{OGVPlayer.updatePositionOnResize=function(){function fixup(e,t,i){var s=e.offsetParent||e.parentNode,d=t/i;if(d>s.offsetWidth/s.offsetHeight){var h=s.offsetWidth/d,u=(s.offsetHeight-h)/2;e.style.width="100%",e.style.height=h+"px",e.style.marginLeft=0,e.style.marginRight=0,e.style.marginTop=u+"px",e.style.marginBottom=u+"px"}else{var c=s.offsetHeight*d,l=(s.offsetWidth-c)/2;e.style.width=c+"px",e.style.height="100%",e.style.marginLeft=l+"px",e.style.marginRight=l+"px",e.style.marginTop=0,e.style.marginBottom=0}}function queryOver(e,t){var i=document.querySelectorAll(e);Array.prototype.slice.call(i).forEach(t)}queryOver("ogvjs > canvas",(function(e){fixup(e,e.width,e.height)})),queryOver("ogvjs > img",(function(e){fixup(e,e.naturalWidth,e.naturalHeight)}))};var M=function fullResizeVideo(){y(OGVPlayer.updatePositionOnResize)};window.addEventListener("resize",OGVPlayer.updatePositionOnResize),window.addEventListener("orientationchange",OGVPlayer.updatePositionOnResize),document.addEventListener("fullscreenchange",M),document.addEventListener("mozfullscreenchange",M),document.addEventListener("webkitfullscreenchange",M),document.addEventListener("MSFullscreenChange",M)}var V=OGVPlayer;t.default=V},580:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=function OGVProxyClass(e){return class{constructor(t,i,s){for(var d in s=s||{},this.worker=t,this.transferables=function(){var e=new ArrayBuffer(1024),i=new Uint8Array(e);try{return t.postMessage({action:"transferTest",bytes:i},[e]),!e.byteLength}catch(e){return!1}}(),e)e.hasOwnProperty(d)&&(this[d]=e[d]);this.processingQueue=0,Object.defineProperty(this,"processing",{get:function get(){return this.processingQueue>0}}),this.messageCount=0,this.pendingCallbacks={},this.worker.addEventListener("message",(e=>{this.handleMessage(e)})),this.proxy("construct",[i,s],(()=>{}))}proxy(e,t,i){var s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];if(!this.worker)throw'Tried to call "'+e+'" method on closed proxy object';var d="callback-"+ ++this.messageCount+"-"+e;i&&(this.pendingCallbacks[d]=i);var h={action:e,callbackId:d,args:t||[]};this.processingQueue++,this.transferables?this.worker.postMessage(h,s):this.worker.postMessage(h)}terminate(){this.worker&&(this.worker.terminate(),this.worker=null,this.processingQueue=0,this.pendingCallbacks={})}handleMessage(e){if(this.processingQueue--,"callback"===e.data.action){var t=e.data,i=t.callbackId,s=t.args,d=this.pendingCallbacks[i];if(t.props)for(var h in t.props)t.props.hasOwnProperty(h)&&(this[h]=t.props[h]);d&&(delete this.pendingCallbacks[i],d.apply(this,s))}}}};t.default=i},168:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=class OGVTimeRanges{constructor(e){this._ranges=e,this.length=e.length}start(e){if(e<0||e>this.length||e!==(0|e))throw new RangeError("Invalid index");return this._ranges[e][0]}end(e){if(e<0||e>this.length||e!==(0|e))throw new RangeError("Invalid index");return this._ranges[e][1]}};t.default=i},625:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(964));var h=class OGVWrapperCodec{constructor(e){return this.options=e||{},this.demuxer=null,this.videoDecoder=null,this.audioDecoder=null,this.flushIter=0,this.loadedMetadata=!1,this.processing=!1,Object.defineProperties(this,{duration:{get:function get(){return this.loadedMetadata?this.demuxer.duration:NaN}},hasAudio:{get:function get(){return this.loadedMetadata&&!!this.audioDecoder}},audioReady:{get:function get(){return this.hasAudio&&this.demuxer.audioReady}},audioTimestamp:{get:function get(){return this.demuxer.audioTimestamp}},audioFormat:{get:function get(){return this.hasAudio?this.audioDecoder.audioFormat:null}},audioBuffer:{get:function get(){return this.hasAudio?this.audioDecoder.audioBuffer:null}},hasVideo:{get:function get(){return this.loadedMetadata&&!!this.videoDecoder}},frameReady:{get:function get(){return this.hasVideo&&this.demuxer.frameReady}},frameTimestamp:{get:function get(){return this.demuxer.frameTimestamp}},keyframeTimestamp:{get:function get(){return this.demuxer.keyframeTimestamp}},nextKeyframeTimestamp:{get:function get(){return this.demuxer.nextKeyframeTimestamp}},videoFormat:{get:function get(){return this.hasVideo?this.videoDecoder.videoFormat:null}},frameBuffer:{get:function get(){return this.hasVideo?this.videoDecoder.frameBuffer:null}},seekable:{get:function get(){return this.demuxer.seekable}},demuxerCpuTime:{get:function get(){return this.demuxer?this.demuxer.cpuTime:0}},audioCpuTime:{get:function get(){return this.audioDecoder?this.audioDecoder.cpuTime:0}},videoCpuTime:{get:function get(){return this.videoDecoder?this.videoDecoder.cpuTime:0}}}),this.loadedDemuxerMetadata=!1,this.loadedAudioMetadata=!1,this.loadedVideoMetadata=!1,this.loadedAllMetadata=!1,this.onseek=null,this.videoBytes=0,this.audioBytes=0,this}flushSafe(e){var t=this.flushIter;return i=>{this.flushIter<=t&&e(i)}}init(e){var t;this.processing=!0,t="video/webm"===this.options.type||"audio/webm"===this.options.type?"OGVDemuxerWebMW":"OGVDemuxerOggW",d.default.loadClass(t,(t=>{t().then((t=>{this.demuxer=t,t.onseek=e=>{this.onseek&&this.onseek(e)},t.init((()=>{this.processing=!1,e()}))}))}))}close(){this.demuxer&&(this.demuxer.close(),this.demuxer=null),this.videoDecoder&&(this.videoDecoder.close(),this.videoDecoder=null),this.audioDecoder&&(this.audioDecoder.close(),this.audioDecoder=null)}receiveInput(e,t){this.demuxer.receiveInput(e,t)}process(e){if(this.processing)throw new Error("reentrancy fail on OGVWrapperCodec.process");this.processing=!0;var finish=t=>{this.processing=!1,e(t)},doProcessData=()=>{this.demuxer.process(finish)};this.demuxer.loadedMetadata&&!this.loadedDemuxerMetadata?this.loadAudioCodec((()=>{this.loadVideoCodec((()=>{this.loadedDemuxerMetadata=!0,this.loadedAudioMetadata=!this.audioDecoder,this.loadedVideoMetadata=!this.videoDecoder,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)}))})):this.loadedDemuxerMetadata&&!this.loadedAudioMetadata?this.audioDecoder.loadedMetadata?(this.loadedAudioMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)):this.demuxer.audioReady?this.demuxer.dequeueAudioPacket(((e,t)=>{this.audioBytes+=e.byteLength,this.audioDecoder.processHeader(e,(e=>{finish(!0)}))})):doProcessData():this.loadedAudioMetadata&&!this.loadedVideoMetadata?this.videoDecoder.loadedMetadata?(this.loadedVideoMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)):this.demuxer.frameReady?(this.processing=!0,this.demuxer.dequeueVideoPacket((e=>{this.videoBytes+=e.byteLength,this.videoDecoder.processHeader(e,(()=>{finish(!0)}))}))):doProcessData():this.loadedVideoMetadata&&!this.loadedMetadata&&this.loadedAllMetadata?(this.loadedMetadata=!0,finish(!0)):!this.loadedMetadata||this.hasAudio&&!this.demuxer.audioReady||this.hasVideo&&!this.demuxer.frameReady?doProcessData():finish(!0)}decodeFrame(e){var t=this.flushSafe(e),i=this.frameTimestamp,s=this.keyframeTimestamp;this.demuxer.dequeueVideoPacket((e=>{this.videoBytes+=e.byteLength,this.videoDecoder.processFrame(e,(e=>{var d=this.videoDecoder.frameBuffer;d&&(d.timestamp=i,d.keyframeTimestamp=s),t(e)}))}))}decodeAudio(e){var t=this.flushSafe(e);this.demuxer.dequeueAudioPacket(((e,i)=>{this.audioBytes+=e.byteLength,this.audioDecoder.processAudio(e,(e=>{if(i){var s=this.audioDecoder.audioBuffer,d=[];for(var h of s){var u=Math.round(i*this.audioFormat.rate/1e9);u>0?d.push(h.subarray(0,h.length-Math.min(u,h.length))):d.push(h.subarray(Math.min(Math.abs(u),h.length),h.length))}this.audioDecoder.audioBuffer=d}return t(e)}))}))}discardFrame(e){this.demuxer.dequeueVideoPacket((t=>{this.videoBytes+=t.byteLength,e()}))}discardAudio(e){this.demuxer.dequeueAudioPacket(((t,i)=>{this.audioBytes+=t.byteLength,e()}))}flush(e){this.flushIter++,this.demuxer.flush(e)}sync(){this.videoDecoder&&this.videoDecoder.sync()}recycleFrame(e){this.videoDecoder&&this.videoDecoder.recycleFrame(e)}getKeypointOffset(e,t){this.demuxer.getKeypointOffset(e,t)}seekToKeypoint(e,t){this.demuxer.seekToKeypoint(e,this.flushSafe(t))}loadAudioCodec(e){if(this.demuxer.audioCodec){var t={vorbis:"OGVDecoderAudioVorbisW",opus:"OGVDecoderAudioOpusW"}[this.demuxer.audioCodec];this.processing=!0,d.default.loadClass(t,(t=>{var i={};this.demuxer.audioFormat&&(i.audioFormat=this.demuxer.audioFormat),t(i).then((t=>{this.audioDecoder=t,t.init((()=>{this.loadedAudioMetadata=t.loadedMetadata,this.processing=!1,e()}))}))}),{worker:this.options.worker})}else e()}loadVideoCodec(e){if(this.demuxer.videoCodec){var t=!!this.options.simd,i=!!this.options.threading,s={theora:"OGVDecoderVideoTheoraW",vp8:i?"OGVDecoderVideoVP8MTW":"OGVDecoderVideoVP8W",vp9:i?t?"OGVDecoderVideoVP9SIMDMTW":"OGVDecoderVideoVP9MTW":t?"OGVDecoderVideoVP9SIMDW":"OGVDecoderVideoVP9W",av1:i?t?"OGVDecoderVideoAV1SIMDMTW":"OGVDecoderVideoAV1MTW":t?"OGVDecoderVideoAV1SIMDW":"OGVDecoderVideoAV1W"}[this.demuxer.videoCodec];this.processing=!0,d.default.loadClass(s,(t=>{var s={};this.demuxer.videoFormat&&(s.videoFormat=this.demuxer.videoFormat),i&&delete window.ENVIRONMENT_IS_PTHREAD,t(s).then((t=>{this.videoDecoder=t,t.init((()=>{this.loadedVideoMetadata=t.loadedMetadata,this.processing=!1,e()}))}))}),{worker:this.options.worker&&!this.options.threading})}else e()}};t.default=h},539:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=new class WebAssemblyChecker{constructor(){this.tested=!1,this.testResult=void 0}wasmSupported(){if(!this.tested){try{"object"==typeof WebAssembly?this.testResult=function testSafariWebAssemblyBug(){var e=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),t=new WebAssembly.Module(e);return 0!==new WebAssembly.Instance(t,{}).exports.test(4)}():this.testResult=!1}catch(e){console.log("Exception while testing WebAssembly",e),this.testResult=!1}this.tested=!0}return this.testResult}};t.default=i},309:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=function extend(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])};t.default=i},431:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i=200&&e.xhr.status<300?(e.length=getXHRLength(e.xhr),e.headers=function getXHRHeaders(e){var t={};return e.getAllResponseHeaders().split(/\r?\n/).forEach((function(e){var i=e.split(/:\s*/,2);i.length>1&&(t[i[0].toLowerCase()]=i[1])})),t}(e.xhr),e.onXHRStart()):(s(),i(new Error("HTTP error "+e.xhr.status)))}},h=function checkError(){s(),i(new Error("network error"))},u=function checkBackendOpen(){s(),t()};s=function oncomplete(){e.xhr.removeEventListener("readystatechange",d),e.xhr.removeEventListener("error",h),e.off("open",u),e._onAbort=null},e.initXHR(),e.xhr.addEventListener("readystatechange",d),e.xhr.addEventListener("error",h),e.on("open",u),e.xhr.send()}))}},{key:"bufferToOffset",value:function bufferToOffset(e){return Promise.reject(new Error("abstract"))}},{key:"abort",value:function abort(){if(this.xhr.abort(),this._onAbort){var e=this._onAbort;this._onAbort=null;var t=new Error("Aborted");t.name="AbortError",e(t)}}},{key:"initXHR",value:function initXHR(){var e=this.url;this.cachever&&(e+="?buggy_cachever="+this.cachever),this.xhr.open("GET",e);var t=null;(this.offset||this.length)&&(t="bytes="+this.offset+"-"),this.length&&(t+=this.offset+this.length-1),null!==t&&this.xhr.setRequestHeader("Range",t)}},{key:"onXHRStart",value:function onXHRStart(){throw new Error("abstract")}}]),Backend}(i(566));e.exports=d},810:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i0&&(this.bytesRead+=e.length,this.emit("buffer",e))}},{key:"onXHRLoad",value:function onXHRLoad(){this.onXHRProgress(),d(BinaryStringBackend.prototype.__proto__||Object.getPrototypeOf(BinaryStringBackend.prototype),"onXHRLoad",this).call(this)}}]),BinaryStringBackend}(i(828));h.supported=function(){try{return!!(new XMLHttpRequest).overrideMimeType}catch(e){return!1}},e.exports=h},828:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i=e)i();else{var d=null;t._onAbort=function(e){d(),s(e)};var h=function checkBuffer(){t.offset>=e&&!t.eof&&(d(),i())},u=function checkDone(){d(),i()},c=function checkError(){d(),s(new Error("error streaming"))};d=function oncomplete(){t.buffering=!1,t.off("buffer",h),t.off("done",u),t.off("error",c),t._onAbort=null},t.buffering=!0,t.on("buffer",h),t.on("done",u),t.on("error",c)}}))}},{key:"initXHR",value:function initXHR(){d(DownloadBackend.prototype.__proto__||Object.getPrototypeOf(DownloadBackend.prototype),"initXHR",this).call(this)}},{key:"onXHRStart",value:function onXHRStart(){var e=this;this.xhr.addEventListener("progress",(function(){return e.onXHRProgress()})),this.xhr.addEventListener("error",(function(){return e.onXHRError()})),this.xhr.addEventListener("load",(function(){return e.onXHRLoad()})),this.emit("open")}},{key:"onXHRProgress",value:function onXHRProgress(){throw new Error("abstract")}},{key:"onXHRError",value:function onXHRError(){this.emit("error")}},{key:"onXHRLoad",value:function onXHRLoad(){this.eof=!0,this.emit("done")}}]),DownloadBackend}(i(306));e.exports=h},761:(e,t,i)=>{"use strict";var s=i(855),d=i(810),h=i(431);var u=null;e.exports=function instantiate(e){if(!1===e.progressive)return new h(e);if(u||(u=function autoselect(){return s.supported()?s:d.supported()?d:null}()),!u)throw new Error("No supported backend class");return new u(e)}},855:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i{"use strict";var t=function(){function defineProperties(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{},t=e.buffer,i=void 0===t?void 0:t,s=e.string,d=void 0===s?void 0:s,h=e.start,u=void 0===h?0:h,c=e.end,l=void 0===c?u+(i?i.byteLength:d?d.length:0):c,f=e.prev,_=void 0===f?null:f,p=e.next,m=void 0===p?null:p,g=e.eof,v=void 0!==g&&g,y=e.empty,b=void 0===y?!(i||d):y,T=e.timestamp,k=void 0===T?Date.now():T;_classCallCheck(this,CacheItem),this.start=u,this.end=l,this.prev=_,this.next=m,this.eof=v,this.empty=b,this.timestamp=k,this.buffer=i,this.string=d,Object.defineProperty(this,"length",{get:function get(){return this.end-this.start}})}return t(CacheItem,[{key:"contains",value:function contains(e){return e>=this.start&&(e{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{},t=e.cacheSize,i=void 0===t?0:t;_classCallCheck(this,CachePool);var s=new d({eof:!0});this.head=s,this.tail=s,this.readOffset=0,this.readCursor=s,this.writeOffset=0,this.writeCursor=s,this.cacheSize=i}return s(CachePool,[{key:"bytesReadable",value:function bytesReadable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,t=this.readOffset,i=this.readCursor,s=i.last((function(i){return!i.empty&&i.start<=t+e}));return s?Math.min(e,s.end-t):0}},{key:"bytesWritable",value:function bytesWritable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,t=this.writeOffset,i=this.writeCursor;if(i.eof)return e;var s=i.last((function(i){return i.empty&&i.start<=t+e}));return s?Math.min(e,s.end-t):0}},{key:"seekRead",value:function seekRead(e){var t=this.head.first((function(t){return t.contains(e)}));if(!t)throw new Error("read seek out of range");this.readOffset=e,this.readCursor=t}},{key:"seekWrite",value:function seekWrite(e){var t=this.head.first((function(t){return t.contains(e)}));if(!t)throw new Error("write seek out of range");this.writeOffset=e,this.writeCursor=t}},{key:"readBytes",value:function readBytes(e){for(var t=e.byteLength,i=this.bytesReadable(t),s=this.readOffset,d=s+i,h=s,u=this.readCursor;u&&!u.empty&&!(u.start>=d);u=u.next){var c=Math.min(d,u.end),l=e.subarray(h-s,c-s);u.readBytes(l,h,c),h=c}return this.readOffset=h,this.readCursor=this.readCursor.first((function(e){return e.contains(h)})),i}},{key:"write",value:function write(e){var t=this.bufferItem(e),i=this.writeCursor;if(!i.empty)throw new Error("write cursor not empty");if(!i.contains(t.end)&&i.end!==t.end)throw new Error("write cursor too small");i.startthis.readOffset+this.chunkSize)&&t.push(i));if(e>this.cacheSize){t.sort((function(e,t){return e.timestamp-t.timestamp}));for(var s=0;s{"use strict";e.exports=i(91)},566:e=>{"use strict";var t=function(){function defineProperties(e,t){for(var i=0;i=0&&i.splice(s,1)}},{key:"emit",value:function emit(e,t){(this._e[e]||[]).slice().forEach((function(e){return e(t)}))}}]),TinyEvents}();e.exports=i},936:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i=0&&c>=e.length)return void t(null);var l=e._clampToLength(s.writeOffset+s.bytesWritable(d))-s.writeOffset;if(0===l)t(null);else{var f=e._backend=new h({url:e.url,offset:e._cache.writeOffset,length:l,cachever:e._cachever,progressive:e.progressive}),_=null,p=function checkOpen(){f!==e._backend?(_(),i(new Error("invalid state"))):(f.on("buffer",(function(t){f===e._backend&&e._cache.write(t)})),f.on("done",(function(){f===e._backend&&(-1===e.length&&(e.length=e._backend.offset+e._backend.bytesRead),e._backend=null)})),t(f))},m=function checkError(t){f!==e._backend?i(new Error("invalid state")):(e._backend=null,i(t))};_=function oncomplete(){f.off("open",p),f.off("error",m)},f.on("open",p),f.on("error",m),f.on("cachever",(function(){e._cachever++})),f.load()}}}))}},{key:"_readAhead",value:function _readAhead(){var e=this;return new Promise((function(t,i){e._backend||e.eof?t():e._openBackend().then((function(){t()})).catch((function(e){i(e)}))}))}},{key:"seek",value:function seek(e){var t=this;return new Promise((function(i,s){if(!t.loaded||t.buffering||t.seeking)throw new Error("invalid state");if(e!==(0|e)||e<0)throw new Error("invalid input");if(t.length>=0&&e>t.length)throw new Error("seek past end of file");if(!t.seekable)throw new Error("seek on non-seekable stream");t._backend&&t.abort(),t._cache.seekRead(e),t._cache.seekWrite(e),t._readAhead().then(i).catch(s)}))}},{key:"read",value:function read(e){var t=this;return this.buffer(e).then((function(e){return t.readSync(e)}))}},{key:"readSync",value:function readSync(e){var t=this.bytesAvailable(e),i=new Uint8Array(t);if(this.readBytes(i)!==t)throw new Error("failed to read expected data");return i.buffer}},{key:"readBytes",value:function readBytes(e){if(!this.loaded||this.buffering||this.seeking)throw new Error("invalid state");if(!(e instanceof Uint8Array))throw new Error("invalid input");var t=this._cache.readBytes(e);return this._readAhead(),t}},{key:"buffer",value:function buffer(e){var t=this;return new Promise((function(i,s){if(!t.loaded||t.buffering||t.seeking)throw new Error("invalid state");if(e!==(0|e)||e<0)throw new Error("invalid input");var d=t._clampToLength(t.offset+e),h=d-t.offset,u=t.bytesAvailable(h);u>=h?i(u):(t.buffering=!0,t._openBackend().then((function(i){return i?i.bufferToOffset(d).then((function(){return t.buffering=!1,t.buffer(e)})):Promise.resolve(u)})).then((function(e){t.buffering=!1,i(e)})).catch((function(e){"AbortError"!==e.name&&(t.buffering=!1),s(e)})))}))}},{key:"bytesAvailable",value:function bytesAvailable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0;return this._cache.bytesReadable(e)}},{key:"abort",value:function abort(){this.loading&&(this.loading=!1),this.buffering&&(this.buffering=!1),this.seeking&&(this.seeking=!1),this._backend&&(this._backend.abort(),this._backend=null)}},{key:"getBufferedRanges",value:function getBufferedRanges(){return this._cache.ranges()}},{key:"_clampToLength",value:function _clampToLength(e){return this.length<0?e:Math.min(this.length,e)}}]),StreamFile}();e.exports=u},826:e=>{e.exports={vertex:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aLumaPosition;\nattribute vec2 aChromaPosition;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vLumaPosition = aLumaPosition;\n vChromaPosition = aChromaPosition;\n}\n",fragment:"// inspired by https://github.com/mbebenita/Broadway/blob/master/Player/canvas.js\n\nprecision lowp float;\n\nuniform sampler2D uTextureY;\nuniform sampler2D uTextureCb;\nuniform sampler2D uTextureCr;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n // Y, Cb, and Cr planes are uploaded as LUMINANCE textures.\n float fY = texture2D(uTextureY, vLumaPosition).x;\n float fCb = texture2D(uTextureCb, vChromaPosition).x;\n float fCr = texture2D(uTextureCr, vChromaPosition).x;\n\n // Premultipy the Y...\n float fYmul = fY * 1.1643828125;\n\n // And convert that to RGB!\n gl_FragColor = vec4(\n fYmul + 1.59602734375 * fCr - 0.87078515625,\n fYmul - 0.39176171875 * fCb - 0.81296875 * fCr + 0.52959375,\n fYmul + 2.017234375 * fCb - 1.081390625,\n 1\n );\n}\n",vertexStripe:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aTexturePosition;\nvarying vec2 vTexturePosition;\n\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vTexturePosition = aTexturePosition;\n}\n",fragmentStripe:"// extra 'stripe' texture fiddling to work around IE 11's poor performance on gl.LUMINANCE and gl.ALPHA textures\n\nprecision lowp float;\n\nuniform sampler2D uStripe;\nuniform sampler2D uTexture;\nvarying vec2 vTexturePosition;\nvoid main() {\n // Y, Cb, and Cr planes are mapped into a pseudo-RGBA texture\n // so we can upload them without expanding the bytes on IE 11\n // which doesn't allow LUMINANCE or ALPHA textures\n // The stripe textures mark which channel to keep for each pixel.\n // Each texture extraction will contain the relevant value in one\n // channel only.\n\n float fLuminance = dot(\n texture2D(uStripe, vTexturePosition),\n texture2D(uTexture, vTexturePosition)\n );\n\n gl_FragColor = vec4(fLuminance, fLuminance, fLuminance, 1);\n}\n"}},487:e=>{!function(){"use strict";function FrameSink(e,t){throw new Error("abstract")}FrameSink.prototype.drawFrame=function(e){throw new Error("abstract")},FrameSink.prototype.clear=function(){throw new Error("abstract")},e.exports=FrameSink}()},926:(e,t,i)=>{!function(){"use strict";var t=i(487),s=i(627);function SoftwareFrameSink(e){var t=this,i=e.getContext("2d"),d=null,h=null,u=null;return t.drawFrame=function drawFrame(t){var c=t.format;e.width===c.displayWidth&&e.height===c.displayHeight||(e.width=c.displayWidth,e.height=c.displayHeight),null!==d&&d.width==c.width&&d.height==c.height||function initImageData(e,t){for(var s=(d=i.createImageData(e,t)).data,h=e*t*4,u=0;u{!function(){"use strict";var t=i(487),s=i(826);function WebGLFrameSink(e){var t,i,d=this,h=WebGLFrameSink.contextForCanvas(e);if(null===h)throw new Error("WebGL unavailable");function compileShader(e,t){var i=h.createShader(e);if(h.shaderSource(i,t),h.compileShader(i),!h.getShaderParameter(i,h.COMPILE_STATUS)){var s=h.getShaderInfoLog(i);throw h.deleteShader(i),new Error("GL shader compilation for "+e+" failed: "+s)}return i}var u,c,l,f,_,p,m,g,v,y,b=new Float32Array([-1,-1,1,-1,-1,1,-1,1,1,-1,1,1]),T={},k={},P={};function createOrReuseTexture(e){return T[e]||(T[e]=h.createTexture()),T[e]}function uploadTexture(e,t,i,s){var d=createOrReuseTexture(e);if(h.activeTexture(h.TEXTURE0),WebGLFrameSink.stripe){var u=!T[e+"_temp"],c=createOrReuseTexture(e+"_temp");h.bindTexture(h.TEXTURE_2D,c),u?(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,t/4,i,0,h.RGBA,h.UNSIGNED_BYTE,s)):h.texSubImage2D(h.TEXTURE_2D,0,0,0,t/4,i,h.RGBA,h.UNSIGNED_BYTE,s);var l=T[e+"_stripe"],f=!l;f&&(l=createOrReuseTexture(e+"_stripe")),h.bindTexture(h.TEXTURE_2D,l),f&&(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,t,1,0,h.RGBA,h.UNSIGNED_BYTE,function buildStripe(e){if(P[e])return P[e];for(var t=e,i=new Uint32Array(t),s=0;s{!function(){"use strict";var t=i(877);e.exports={convertYCbCr:function convertYCbCr(e,i){var s=0|e.format.width,d=0|e.format.height,h=0|t(e.format.width/e.format.chromaWidth),u=0|t(e.format.height/e.format.chromaHeight),c=e.y.bytes,l=e.u.bytes,f=e.v.bytes,_=0|e.y.stride,p=0|e.u.stride,m=0|e.v.stride,g=s<<2,v=0,y=0,b=0,T=0,k=0,P=0,w=0,E=0,x=0,A=0,R=0,O=0,F=0,S=0,C=0,B=0,D=0,M=0;if(1==h&&1==u)for(w=0,E=g,M=0,B=0;B>8,i[w+1]=R-F>>8,i[w+2]=R+S>>8,w+=4,R=298*c[y++]|0,i[w]=R+O>>8,i[w+1]=R-F>>8,i[w+2]=R+S>>8,w+=4,R=298*c[b++]|0,i[E]=R+O>>8,i[E+1]=R-F>>8,i[E+2]=R+S>>8,E+=4,R=298*c[b++]|0,i[E]=R+O>>8,i[E+1]=R-F>>8,i[E+2]=R+S>>8,E+=4;w+=g,E+=g,M++}else for(P=0,B=0;B>u)*p|0,k=M*m|0,C=0;C>h)],O=(409*(A=0|f[k+D])|0)-57088|0,F=(100*x|0)+(208*A|0)-34816|0,S=(516*x|0)-70912|0,R=298*c[v++]|0,i[P]=R+O>>8,i[P+1]=R-F>>8,i[P+2]=R+S>>8,P+=4}}}()},877:e=>{!function(){"use strict";e.exports=function depower(e){for(var t=0,i=e>>1;0!=i;)i>>=1,t++;if(e!==1<{!function(){"use strict";var t=i(487),s=i(926),d=i(895),h={FrameSink:t,SoftwareFrameSink:s,WebGLFrameSink:d,attach:function(e,t){return("webGL"in(t=t||{})?t.webGL:d.isAvailable())?new d(e,t):new s(e,t)}};e.exports=h}()}},t={};function __webpack_require__(i){var s=t[i];if(void 0!==s)return s.exports;var d=t[i]={exports:{}};return e[i](d,d.exports,__webpack_require__),d.exports}var i={};return(()=>{"use strict";var e=i,t=__webpack_require__(318);Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"OGVCompat",{enumerable:!0,get:function get(){return s.default}}),Object.defineProperty(e,"OGVLoader",{enumerable:!0,get:function get(){return d.default}}),Object.defineProperty(e,"OGVMediaError",{enumerable:!0,get:function get(){return h.default}}),Object.defineProperty(e,"OGVMediaType",{enumerable:!0,get:function get(){return u.default}}),Object.defineProperty(e,"OGVPlayer",{enumerable:!0,get:function get(){return c.default}}),Object.defineProperty(e,"OGVTimeRanges",{enumerable:!0,get:function get(){return l.default}}),e.OGVVersion=void 0;var s=t(__webpack_require__(523)),d=t(__webpack_require__(964)),h=t(__webpack_require__(759)),u=t(__webpack_require__(278)),c=t(__webpack_require__(869)),l=t(__webpack_require__(168)),f="1.8.4-20210702161914-bd3a07f";e.OGVVersion=f,"object"==typeof window&&(window.OGVCompat=s.default,window.OGVLoader=d.default,window.OGVMediaError=h.default,window.OGVMediaType=u.default,window.OGVTimeRanges=l.default,window.OGVPlayer=c.default,window.OGVVersion=f)})(),i})()})); \ No newline at end of file diff --git a/media/player/videojs/amd/src/videojs-ogvjs-lazy.js b/media/player/videojs/amd/src/videojs-ogvjs-lazy.js new file mode 100644 index 00000000000..1dc9eaeaa28 --- /dev/null +++ b/media/player/videojs/amd/src/videojs-ogvjs-lazy.js @@ -0,0 +1,853 @@ +/** + * videojs-ogvjs + * @version 0.1.2 + * @copyright 2021 Huong Nguyen + * @license MIT + */ +/*! @name videojs-ogvjs @version 0.1.2 @license MIT */ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('video.js'), require('OGVCompat'), require('OGVLoader'), require('OGVPlayer')) : + typeof define === 'function' && define.amd ? define(['media_videojs/video-lazy', './local/ogv/ogv'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.videojsOgvjs = factory(global.videojs, global.OGVCompat, global.OGVLoader, global.OGVPlayer)); +}(this, (function (videojs, ogvBase) { 'use strict'; + + function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } + + var videojs__default = /*#__PURE__*/_interopDefaultLegacy(videojs); + var OGVCompat__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVCompat); + var OGVLoader__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVLoader); + var OGVPlayer__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVPlayer); + + function createCommonjsModule(fn, basedir, module) { + return module = { + path: basedir, + exports: {}, + require: function (path, base) { + return commonjsRequire(path, (base === undefined || base === null) ? module.path : base); + } + }, fn(module, module.exports), module.exports; + } + + function commonjsRequire () { + throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs'); + } + + var setPrototypeOf = createCommonjsModule(function (module) { + function _setPrototypeOf(o, p) { + module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { + o.__proto__ = p; + return o; + }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; + return _setPrototypeOf(o, p); + } + + module.exports = _setPrototypeOf; + module.exports["default"] = module.exports, module.exports.__esModule = true; + }); + + var inheritsLoose = createCommonjsModule(function (module) { + function _inheritsLoose(subClass, superClass) { + subClass.prototype = Object.create(superClass.prototype); + subClass.prototype.constructor = subClass; + setPrototypeOf(subClass, superClass); + } + + module.exports = _inheritsLoose; + module.exports["default"] = module.exports, module.exports.__esModule = true; + }); + + var Tech = videojs__default['default'].getComponent('Tech'); + var androidOS = 'Android'; + var iPhoneOS = 'iPhoneOS'; + var iPadOS = 'iPadOS'; + var otherOS = 'Other'; + /** + * Object.defineProperty but "lazy", which means that the value is only set after + * it retrieved the first time, rather than being set right away. + * + * @param {Object} obj the object to set the property on. + * @param {string} key the key for the property to set. + * @param {Function} getValue the function used to get the value when it is needed. + * @param {boolean} setter whether a setter should be allowed or not. + */ + + var defineLazyProperty = function defineLazyProperty(obj, key, getValue, setter) { + if (setter === void 0) { + setter = true; + } + + var set = function set(value) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + writable: true + }); + }; + + var options = { + configurable: true, + enumerable: true, + get: function get() { + var value = getValue(); + set(value); + return value; + } + }; + + if (setter) { + options.set = set; + } + + return Object.defineProperty(obj, key, options); + }; + /** + * Get the device's OS. + * + * @return {string} Device's OS. + */ + + + var getDeviceOS = function getDeviceOS() { + /* global navigator */ + var ua = navigator.userAgent; + + if (/android/i.test(ua)) { + return androidOS; + } else if (/iPad|iPhone|iPod/.test(ua)) { + return iPhoneOS; + } else if (navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1) { + return iPadOS; + } + + return otherOS; + }; + /** + * OgvJS Media Controller - Wrapper for ogv.js Media API + * + * @mixes Tech~SourceHandlerAdditions + * @extends Tech + */ + + + var OgvJS = /*#__PURE__*/function (_Tech) { + inheritsLoose(OgvJS, _Tech); + + /** + * Create an instance of this Tech. + * + * @param {Object} [options] The key/value store of player options. + * @param {Component~ReadyCallback} ready Callback function to call when the `OgvJS` Tech is ready. + */ + function OgvJS(options, ready) { + var _this; + + _this = _Tech.call(this, options, ready) || this; + _this.el_.src = options.source.src; + OgvJS.setIfAvailable(_this.el_, 'autoplay', options.autoplay); + OgvJS.setIfAvailable(_this.el_, 'loop', options.loop); + OgvJS.setIfAvailable(_this.el_, 'poster', options.poster); + OgvJS.setIfAvailable(_this.el_, 'preload', options.preload); + + _this.on('loadedmetadata', function () { + if (getDeviceOS() === iPhoneOS) { + // iPhoneOS add some inline styles to the canvas, we need to remove it. + var canvas = this.el_.getElementsByTagName('canvas')[0]; + canvas.style.removeProperty('width'); + canvas.style.removeProperty('margin'); + } + + this.triggerReady(); + }); + + return _this; + } + /** + * Create the 'OgvJS' Tech's DOM element. + * + * @return {Element} The element that gets created. + */ + + + var _proto = OgvJS.prototype; + + _proto.createEl = function createEl() { + var options = this.options_; + + if (options.base) { + OGVLoader__default['default'].base = options.base; + } else { + throw new Error('Please specify the base for the ogv.js library'); + } + + var el = new OGVPlayer__default['default'](options); + el.className += ' vjs-tech'; + options.tag = el; + return el; + } + /** + * Start playback + * + * @method play + */ + ; + + _proto.play = function play() { + this.el_.play(); + } + /** + * Get the current playback speed. + * + * @return {number} + * @method playbackRate + */ + ; + + _proto.playbackRate = function playbackRate() { + return this.el_.playbackRate || 1; + } + /** + * Set the playback speed. + * + * @param {number} val Speed for the player to play. + * @method setPlaybackRate + */ + ; + + _proto.setPlaybackRate = function setPlaybackRate(val) { + if (this.el_.hasOwnProperty('playbackRate')) { + this.el_.playbackRate = val; + } + } + /** + * Returns a TimeRanges object that represents the ranges of the media resource that the user agent has played. + * + * @return {TimeRangeObject} the range of points on the media timeline that has been reached through normal playback + */ + ; + + _proto.played = function played() { + return this.el_.played; + } + /** + * Pause playback + * + * @method pause + */ + ; + + _proto.pause = function pause() { + this.el_.pause(); + } + /** + * Is the player paused or not. + * + * @return {boolean} + * @method paused + */ + ; + + _proto.paused = function paused() { + return this.el_.paused; + } + /** + * Get current playing time. + * + * @return {number} + * @method currentTime + */ + ; + + _proto.currentTime = function currentTime() { + return this.el_.currentTime; + } + /** + * Set current playing time. + * + * @param {number} seconds Current time of audio/video. + * @method setCurrentTime + */ + ; + + _proto.setCurrentTime = function setCurrentTime(seconds) { + try { + this.el_.currentTime = seconds; + } catch (e) { + videojs__default['default'].log(e, 'Media is not ready. (Video.JS)'); + } + } + /** + * Get media's duration. + * + * @return {number} + * @method duration + */ + ; + + _proto.duration = function duration() { + if (this.el_.duration && this.el_.duration !== Infinity) { + return this.el_.duration; + } + + return 0; + } + /** + * Get a TimeRange object that represents the intersection + * of the time ranges for which the user agent has all + * relevant media. + * + * @return {TimeRangeObject} + * @method buffered + */ + ; + + _proto.buffered = function buffered() { + return this.el_.buffered; + } + /** + * Get current volume level. + * + * @return {number} + * @method volume + */ + ; + + _proto.volume = function volume() { + return this.el_.hasOwnProperty('volume') ? this.el_.volume : 1; + } + /** + * Set current playing volume level. + * + * @param {number} percentAsDecimal Volume percent as a decimal. + * @method setVolume + */ + ; + + _proto.setVolume = function setVolume(percentAsDecimal) { + if (getDeviceOS() !== iPhoneOS && this.el_.hasOwnProperty('volume')) { + this.el_.volume = percentAsDecimal; + } + } + /** + * Is the player muted or not. + * + * @return {boolean} + * @method muted + */ + ; + + _proto.muted = function muted() { + return this.el_.muted; + } + /** + * Mute the player. + * + * @param {boolean} muted True to mute the player. + */ + ; + + _proto.setMuted = function setMuted(muted) { + this.el_.muted = !!muted; + } + /** + * Is the player muted by default or not. + * + * @return {boolean} + * @method defaultMuted + */ + ; + + _proto.defaultMuted = function defaultMuted() { + return this.el_.defaultMuted || false; + } + /** + * Get the player width. + * + * @return {number} + * @method width + */ + ; + + _proto.width = function width() { + return this.el_.offsetWidth; + } + /** + * Get the player height. + * + * @return {number} + * @method height + */ + ; + + _proto.height = function height() { + return this.el_.offsetHeight; + } + /** + * Get the video width. + * + * @return {number} + * @method videoWidth + */ + ; + + _proto.videoWidth = function videoWidth() { + return this.el_.videoWidth; + } + /** + * Get the video height. + * + * @return {number} + * @method videoHeight + */ + ; + + _proto.videoHeight = function videoHeight() { + return this.el_.videoHeight; + } + /** + * Get/set media source. + * + * @param {Object=} src Source object + * @return {Object} + * @method src + */ + ; + + _proto.src = function src(_src) { + if (typeof _src === 'undefined') { + return this.el_.src; + } + + this.el_.src = _src; + } + /** + * Load the media into the player. + * + * @method load + */ + ; + + _proto.load = function load() { + this.el_.load(); + } + /** + * Get current media source. + * + * @return {Object} + * @method currentSrc + */ + ; + + _proto.currentSrc = function currentSrc() { + if (this.currentSource_) { + return this.currentSource_.src; + } + + return this.el_.currentSrc; + } + /** + * Get media poster URL. + * + * @return {string} + * @method poster + */ + ; + + _proto.poster = function poster() { + return this.el_.poster; + } + /** + * Set media poster URL. + * + * @param {string} url the poster image's url. + * @method + */ + ; + + _proto.setPoster = function setPoster(url) { + this.el_.poster = url; + } + /** + * Is the media preloaded or not. + * + * @return {string} + * @method preload + */ + ; + + _proto.preload = function preload() { + return this.el_.preload || 'none'; + } + /** + * Set the media preload method. + * + * @param {string} val Value for preload attribute. + * @method setPreload + */ + ; + + _proto.setPreload = function setPreload(val) { + if (this.el_.hasOwnProperty('preload')) { + this.el_.preload = val; + } + } + /** + * Is the media auto-played or not. + * + * @return {boolean} + * @method autoplay + */ + ; + + _proto.autoplay = function autoplay() { + return this.el_.autoplay || false; + } + /** + * Set media autoplay method. + * + * @param {boolean} val Value for autoplay attribute. + * @method setAutoplay + */ + ; + + _proto.setAutoplay = function setAutoplay(val) { + if (this.el_.hasOwnProperty('autoplay')) { + this.el_.autoplay = !!val; + } + } + /** + * Does the media has controls or not. + * + * @return {boolean} + * @method controls + */ + ; + + _proto.controls = function controls() { + return this.el_.controls || false; + } + /** + * Set the media controls method. + * + * @param {boolean} val Value for controls attribute. + * @method setControls + */ + ; + + _proto.setControls = function setControls(val) { + if (this.el_.hasOwnProperty('controls')) { + this.el_.controls = !!val; + } + } + /** + * Is the media looped or not. + * + * @return {boolean} + * @method loop + */ + ; + + _proto.loop = function loop() { + return this.el_.loop || false; + } + /** + * Set the media loop method. + * + * @param {boolean} val Value for loop attribute. + * @method setLoop + */ + ; + + _proto.setLoop = function setLoop(val) { + if (this.el_.hasOwnProperty('loop')) { + this.el_.loop = !!val; + } + } + /** + * Get a TimeRanges object that represents the + * ranges of the media resource to which it is possible + * for the user agent to seek. + * + * @return {TimeRangeObject} + * @method seekable + */ + ; + + _proto.seekable = function seekable() { + return this.el_.seekable; + } + /** + * Is player in the "seeking" state or not. + * + * @return {boolean} + * @method seeking + */ + ; + + _proto.seeking = function seeking() { + return this.el_.seeking; + } + /** + * Is the media ended or not. + * + * @return {boolean} + * @method ended + */ + ; + + _proto.ended = function ended() { + return this.el_.ended; + } + /** + * Get the current state of network activity + * NETWORK_EMPTY (numeric value 0) + * NETWORK_IDLE (numeric value 1) + * NETWORK_LOADING (numeric value 2) + * NETWORK_NO_SOURCE (numeric value 3) + * + * @return {number} + * @method networkState + */ + ; + + _proto.networkState = function networkState() { + return this.el_.networkState; + } + /** + * Get the current state of the player. + * HAVE_NOTHING (numeric value 0) + * HAVE_METADATA (numeric value 1) + * HAVE_CURRENT_DATA (numeric value 2) + * HAVE_FUTURE_DATA (numeric value 3) + * HAVE_ENOUGH_DATA (numeric value 4) + * + * @return {number} + * @method readyState + */ + ; + + _proto.readyState = function readyState() { + return this.el_.readyState; + } + /** + * Does the player support native fullscreen mode or not. (Mobile devices) + * + * @return {boolean} + */ + ; + + _proto.supportsFullScreen = function supportsFullScreen() { + // iOS devices have some problem with HTML5 fullscreen api so we need to fallback to fullWindow mode. + return false; + } + /** + * Get media player error. + * + * @return {string} + * @method error + */ + ; + + _proto.error = function error() { + return this.el_.error; + }; + + return OgvJS; + }(Tech); + /** + * List of available events of the media player. + * + * @private + * @type {Array} + */ + + + OgvJS.Events = ['loadstart', 'suspend', 'abort', 'error', 'emptied', 'stalled', 'loadedmetadata', 'loadeddata', 'canplay', 'canplaythrough', 'playing', 'waiting', 'seeking', 'seeked', 'ended', 'durationchange', 'timeupdate', 'progress', 'play', 'pause', 'ratechange', 'resize', 'volumechange']; + /** + * Set the value for the player is it has that property. + * + * @param {Element} el + * @param {string} name + * @param value + */ + + OgvJS.setIfAvailable = function (el, name, value) { + if (el.hasOwnProperty(name)) { + el[name] = value; + } + }; + /** + * Check if browser/device is supported by Ogv.JS. + * + * @return {boolean} + */ + + + OgvJS.isSupported = function () { + return OGVCompat__default['default'].supported('OGVPlayer'); + }; + /** + * Check if the tech can support the given type. + * + * @param {string} type The mimetype to check + * @return {string} 'probably', 'maybe', or '' (empty string) + */ + + + OgvJS.canPlayType = function (type) { + return type.indexOf('/ogg') !== -1 || type.indexOf('/webm') ? 'maybe' : ''; + }; + /** + * Check if the tech can support the given source + * + * @param srcObj The source object + * @return {string} The options passed to the tech + */ + + + OgvJS.canPlaySource = function (srcObj) { + return OgvJS.canPlayType(srcObj.type); + }; + /** + * Check if the volume can be changed in this browser/device. + * Volume cannot be changed in a lot of mobile devices. + * Specifically, it can't be changed from 1 on iOS. + * + * @return {boolean} True if volume can be controlled. + */ + + + OgvJS.canControlVolume = function () { + if (getDeviceOS() === iPhoneOS) { + return false; + } + + var p = new OGVPlayer__default['default'](); + return p.hasOwnProperty('volume'); + }; + /** + * Check if the volume can be muted in this browser/device. + * + * @return {boolean} True if volume can be muted. + */ + + + OgvJS.canMuteVolume = function () { + return true; + }; + /** + * Check if the playback rate can be changed in this browser/device. + * + * @return {boolean} True if playback rate can be controlled. + */ + + + OgvJS.canControlPlaybackRate = function () { + return true; + }; + /** + * Check to see if native 'TextTracks' are supported by this browser/device. + * + * @return {boolean} True if native 'TextTracks' are supported. + */ + + + OgvJS.supportsNativeTextTracks = function () { + return false; + }; + /** + * Check if the fullscreen resize is supported by this browser/device. + * + * @return {boolean} True if the fullscreen resize is supported. + */ + + + OgvJS.supportsFullscreenResize = function () { + return true; + }; + /** + * Check if the progress events is supported by this browser/device. + * + * @return {boolean} True if the progress events is supported. + */ + + + OgvJS.supportsProgressEvents = function () { + return true; + }; + /** + * Check if the time update events is supported by this browser/device. + * + * @return {boolean} True if the time update events is supported. + */ + + + OgvJS.supportsTimeupdateEvents = function () { + return true; + }; + /** + * Boolean indicating whether the 'OgvJS' tech supports volume control. + * + * @type {boolean} + * @default {@link OgvJS.canControlVolume} + */ + + /** + * Boolean indicating whether the 'OgvJS' tech supports muting volume. + * + * @type {boolean} + * @default {@link OgvJS.canMuteVolume} + */ + + /** + * Boolean indicating whether the 'OgvJS' tech supports changing the speed at which the media plays. + * Examples: + * - Set player to play 2x (twice) as fast. + * - Set player to play 0.5x (half) as fast. + * + * @type {boolean} + * @default {@link OgvJS.canControlPlaybackRate} + */ + + /** + * Boolean indicating whether the 'OgvJS' tech currently supports native 'TextTracks'. + * + * @type {boolean} + * @default {@link OgvJS.supportsNativeTextTracks} + */ + + /** + * Boolean indicating whether the 'OgvJS' tech currently supports fullscreen resize. + * + * @type {boolean} + * @default {@link OgvJS.supportsFullscreenResize} + */ + + /** + * Boolean indicating whether the 'OgvJS' tech currently supports progress events. + * + * @type {boolean} + * @default {@link OgvJS.supportsProgressEvents} + */ + + /** + * Boolean indicating whether the 'OgvJS' tech currently supports time update events. + * + * @type {boolean} + * @default {@link OgvJS.supportsTimeupdateEvents} + */ + + + [['featuresVolumeControl', 'canControlVolume'], ['featuresMuteControl', 'canMuteVolume'], ['featuresPlaybackRate', 'canControlPlaybackRate'], ['featuresNativeTextTracks', 'supportsNativeTextTracks'], ['featuresFullscreenResize', 'supportsFullscreenResize'], ['featuresProgressEvents', 'supportsProgressEvents'], ['featuresTimeupdateEvents', 'supportsTimeupdateEvents']].forEach(function (_ref) { + var key = _ref[0], + fn = _ref[1]; + defineLazyProperty(OgvJS.prototype, key, function () { + OgvJS[fn](); + }, true); + }); + Tech.registerTech('OgvJS', OgvJS); + + return OgvJS; + +}))); diff --git a/media/player/videojs/classes/plugin.php b/media/player/videojs/classes/plugin.php index 1eb79c07ec2..e7f028d2236 100644 --- a/media/player/videojs/classes/plugin.php +++ b/media/player/videojs/classes/plugin.php @@ -40,6 +40,15 @@ class media_videojs_plugin extends core_media_player_native { protected $extensions = null; /** @var bool is this a youtube link */ protected $youtube = false; + /** @var bool Need to use Ogv.JS Tech plugin or not. */ + protected $ogvtech = false; + /** @var array Ogv.JS supported extensions */ + protected $ogvsupportedextensions = [ + '.ogv', + '.webm', + '.oga', + '.ogg' + ]; /** * Generates code required to embed the player. @@ -127,6 +136,10 @@ class media_videojs_plugin extends core_media_player_native { $datasetup[] = '"techOrder": ["flash", "html5"]'; } + if ($this->ogvtech) { + $datasetup[] = '"techOrder": ["OgvJS"]'; + } + // Add a language. if ($this->language) { $datasetup[] = '"language": "' . $this->language . '"'; @@ -305,6 +318,15 @@ class media_videojs_plugin extends core_media_player_native { continue; } + // Ogv.JS Tech. + $this->ogvtech = false; + if (in_array($ext, $this->ogvsupportedextensions) && + (core_useragent::is_safari() || core_useragent::is_ios())) { + $this->ogvtech = true; + $result[] = $url; + continue; + } + if (!get_config('media_videojs', 'useflash')) { return parent::list_supported_urls($urls, $options); } else { diff --git a/media/player/videojs/ogvjs/COPYING b/media/player/videojs/ogvjs/COPYING new file mode 100644 index 00000000000..56c4368fa06 --- /dev/null +++ b/media/player/videojs/ogvjs/COPYING @@ -0,0 +1,21 @@ +ogv.js wrapper and player code + +Copyright (c) 2013-2019 Brion Vibber and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/media/player/videojs/ogvjs/COPYING-dav1d.txt b/media/player/videojs/ogvjs/COPYING-dav1d.txt new file mode 100644 index 00000000000..875b138ecf6 --- /dev/null +++ b/media/player/videojs/ogvjs/COPYING-dav1d.txt @@ -0,0 +1,23 @@ +Copyright © 2018-2019, VideoLAN and dav1d authors +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/media/player/videojs/ogvjs/COPYING-ogg.txt b/media/player/videojs/ogvjs/COPYING-ogg.txt new file mode 100644 index 00000000000..6111c6c5a6b --- /dev/null +++ b/media/player/videojs/ogvjs/COPYING-ogg.txt @@ -0,0 +1,28 @@ +Copyright (c) 2002, Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/media/player/videojs/ogvjs/COPYING-opus.txt b/media/player/videojs/ogvjs/COPYING-opus.txt new file mode 100644 index 00000000000..9c739c34a3a --- /dev/null +++ b/media/player/videojs/ogvjs/COPYING-opus.txt @@ -0,0 +1,44 @@ +Copyright 2001-2011 Xiph.Org, Skype Limited, Octasic, + Jean-Marc Valin, Timothy B. Terriberry, + CSIRO, Gregory Maxwell, Mark Borgerding, + Erik de Castro Lopo + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of Internet Society, IETF or IETF Trust, nor the +names of specific contributors, may be used to endorse or promote +products derived from this software without specific prior written +permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Opus is subject to the royalty-free patent licenses which are +specified at: + +Xiph.Org Foundation: +https://datatracker.ietf.org/ipr/1524/ + +Microsoft Corporation: +https://datatracker.ietf.org/ipr/1914/ + +Broadcom Corporation: +https://datatracker.ietf.org/ipr/1526/ diff --git a/media/player/videojs/ogvjs/COPYING-theora.txt b/media/player/videojs/ogvjs/COPYING-theora.txt new file mode 100644 index 00000000000..c8ccce4ffb5 --- /dev/null +++ b/media/player/videojs/ogvjs/COPYING-theora.txt @@ -0,0 +1,28 @@ +Copyright (C) 2002-2009 Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/media/player/videojs/ogvjs/COPYING-vorbis.txt b/media/player/videojs/ogvjs/COPYING-vorbis.txt new file mode 100644 index 00000000000..153b926a152 --- /dev/null +++ b/media/player/videojs/ogvjs/COPYING-vorbis.txt @@ -0,0 +1,28 @@ +Copyright (c) 2002-2018 Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/media/player/videojs/ogvjs/LICENSE-nestegg.txt b/media/player/videojs/ogvjs/LICENSE-nestegg.txt new file mode 100644 index 00000000000..a67984a61fd --- /dev/null +++ b/media/player/videojs/ogvjs/LICENSE-nestegg.txt @@ -0,0 +1,13 @@ +Copyright © 2010 Mozilla Foundation + +Permission to use, copy, modify, and distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/media/player/videojs/ogvjs/LICENSE-vpx.txt b/media/player/videojs/ogvjs/LICENSE-vpx.txt new file mode 100644 index 00000000000..1ce44343c4a --- /dev/null +++ b/media/player/videojs/ogvjs/LICENSE-vpx.txt @@ -0,0 +1,31 @@ +Copyright (c) 2010, The WebM Project authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + * Neither the name of Google, nor the WebM Project, nor the names + of its contributors may be used to endorse or promote products + derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + diff --git a/media/player/videojs/ogvjs/PATENTS-vpx.txt b/media/player/videojs/ogvjs/PATENTS-vpx.txt new file mode 100644 index 00000000000..caedf607e95 --- /dev/null +++ b/media/player/videojs/ogvjs/PATENTS-vpx.txt @@ -0,0 +1,23 @@ +Additional IP Rights Grant (Patents) +------------------------------------ + +"These implementations" means the copyrightable works that implement the WebM +codecs distributed by Google as part of the WebM Project. + +Google hereby grants to you a perpetual, worldwide, non-exclusive, no-charge, +royalty-free, irrevocable (except as stated in this section) patent license to +make, have made, use, offer to sell, sell, import, transfer, and otherwise +run, modify and propagate the contents of these implementations of WebM, where +such license applies only to those patent claims, both currently owned by +Google and acquired in the future, licensable by Google that are necessarily +infringed by these implementations of WebM. This grant does not include claims +that would be infringed only as a consequence of further modification of these +implementations. If you or your agent or exclusive licensee institute or order +or agree to the institution of patent litigation or any other patent +enforcement activity against any entity (including a cross-claim or +counterclaim in a lawsuit) alleging that any of these implementations of WebM +or any code incorporated within any of these implementations of WebM +constitute direct or contributory patent infringement, or inducement of +patent infringement, then any patent rights granted to you under this License +for these implementations of WebM shall terminate as of the date such +litigation is filed. diff --git a/media/player/videojs/ogvjs/README.md b/media/player/videojs/ogvjs/README.md new file mode 100644 index 00000000000..bdfbdac7a48 --- /dev/null +++ b/media/player/videojs/ogvjs/README.md @@ -0,0 +1,382 @@ +ogv.js +====== + +Media decoder and player for Ogg Vorbis/Opus/Theora and WebM VP8/VP9/AV1 video. + +Based around libogg, libvorbis, libtheora, libopus, libvpx, libnestegg and dav1d compiled to JavaScript and WebAssembly with Emscripten. + +## Updates + +1.8.4 - 2021-07-02 +* Fix for fix for OGVLoader.base fix + +1.8.3 - 2021-07-02 +* Fixes for build with emscripten 2.0.25 +* Fix for nextTick/setImmediate-style polyfill in front-end +* Provisional fix for OGVLoader.base not working with CDNs + * the fallback code for loading a non-local worker had been broken with WebAssembly for some time, sorry! + +1.8.2 - errored out + +1.8.1 - 2021-02-18 +* Fixed OGVCompat APIs to correctly return false without WebAssembly and Web Audio + +1.8.0 - 2021-02-09 +* Dropping IE support and Flash audio backend + * Updated to stream-file 0.3.0 + * Updated to audio-feeder 0.5.0 + * The old IE 10/11 support _no longer works_ due to the Flash plugin being disabled, and so is being removed +* Drop es6-promise shim + * Now requires WebAssembly, which requires native Promise support +* Build & fixes + * Demo fixed (removed test files that are now offline) + * Builds with emscripten 2.0.13 + * Requires latest meson from git pending a fix hitting release + +1.7.0 - 2020-09-28 +* Builds with emscripten's LLVM upstream backend + * Updated to build with emscripten 2.0.4 +* Reduced amount of memory used between GC runs by reusing frame buffers +* Removed `memoryLimit` option + * JS, Wasm, and threaded Wasm builds now all use dynamic memory growth +* Updated dav1d +* Updated libvpx to 1.8.1 +* Experimental SIMD builds of AV1 decoder optional, with `make SIMD=1` + * These work in Chrome with the "WebAssembly SIMD" flag enabled in chrome://flags/ + * Significant speed boost when available. + * Available with and without multithreading. + * Must enable explicitly with `simd: true` in `options`. +* Experimental SIMD work for VP9 as well, incomplete. + +1.6.1 - 2019-06-18 +* playbackSpeed attribute now supported +* updated audio-feeder to 0.4.21; + * mono audio is now less loud, matching native playback better + * audio resampling now uses linear interpolation for upscaling + * fix for IE in bundling scenarios that use strict mode + * tempo change support thanks to a great patch from velochy! +* updated yuv-canvas to 1.2.6; + * fixes for capturing WebGL canvas as MediaStream +* fixes for seeks on low frame rate video +* updated emscripten toolchain to 1.38.36 + * drop OUTLINING_LIMIT from AV1 JS build; doesn't work in newer emscripten and not really needed + +1.6.0 - 2019-02-26 +* experimental support for AV1 video in WebM +* update buildchain to emscripten 1.38.28 +* fix a stray global +* starting to move to ES6 classes and modules +* building with babel for ES5/IE11 compat +* updated eslint +* updated yuv-canvas to 1.2.4; fixes for software GL rendering +* updated audio-feeder to 0.4.15; fixes for resampling and Flash perf +* retooled buffer copies +* sync fix for audio packets with discard padding +* clients can pass a custom `StreamFile` instance as `{stream:foo}` in options. This can be useful for custom streaming until MSE interfaces are ready. +* refactored WebM keyframe detection +* prefill the frame pipeline as well as the audio pipeline before starting audio +* removed BINARYEN_IGNORE_IMPLICIT_TRAPS=1 option which can cause intermittent breakages +* changed download streaming method to avoid data corruption problem on certain files +* fix for seek on very short WebM files +* fix for replay-after-end-of-playback in WebM + +See more details and history in [CHANGES.md](https://github.com/brion/ogv.js/blob/master/CHANGES.md) + +## Current status + +Note that as of 2021 ogv.js works pretty nicely but may still have some packagine oddities with tools like webpack. It should work via CDNs again as of 1.8.2 if you can't or don't want to package locally, but this is not documented well yet. Improved documentation will come with the next major update & code cleanup! + +Since August 2015, ogv.js can be seen in action [on Wikipedia and Wikimedia Commons](https://commons.wikimedia.org/wiki/Commons:Video) in Safari and IE/Edge where native Ogg and WebM playback is not available. (See [technical details on MediaWiki integration](https://www.mediawiki.org/wiki/Extension:TimedMediaHandler/ogv.js).) + +See also a standalone demo with performance metrics at https://brionv.com/misc/ogv.js/demo/ + +* streaming: yes (with Range header) +* seeking: yes for Ogg and WebM (with Range header) +* color: yes +* audio: yes, with a/v sync (requires Web Audio or Flash) +* background threading: yes (video, audio decoders in Workers) +* [GPU accelerated drawing: yes (WebGL)](https://github.com/brion/ogv.js/wiki/GPU-acceleration) +* GPU accelerated decoding: no +* SIMD acceleration: no +* Web Assembly: yes (with asm.js fallback) +* multithreaded VP8, VP9, AV1: in development (set `options.threading` to `true`; requires flags to be enabled in Firefox 65 and Chrome 72, no support yet in Safari) +* controls: no (currently provided by demo or other UI harness) + +Ogg and WebM files are fairly well supported. + + +## Goals + +Long-form goal is to create a drop-in replacement for the HTML5 video and audio tags which can be used for basic playback of Ogg Theora and Vorbis or WebM media on browsers that don't support Ogg or WebM natively. + +The API isn't quite complete, but works pretty well. + + +## Compatibility + +ogv.js requires a fast JS engine with typed arrays, and Web Audio for audio playback. + +The primary target browsers are (testing 360p/30fps and up): +* Safari 6.1-12 on Mac OS X 10.7-10.14 +* Safari on iOS 10-11 64-bit + +Older versions of Safari have flaky JIT compilers. IE 9 and below lack typed arrays, and IE 10/11 no longer support an audio channel since the Flash plugin was sunset. + +(Note that Windows and Mac OS X can support Ogg and WebM by installing codecs or alternate browsers with built-in support, but this is not possible on iOS where all browsers are really Safari.) + +Testing browsers (these support .ogv and .webm natively): +* Firefox 65 +* Chrome 73 + + +## Package installation + +Pre-built releases of ogv.js are available as [.zip downloads from the GitHub releases page](https://github.com/brion/ogv.js/releases) and through the npm package manager. + +You can load the `ogv.js` main entry point directly in a script tag, or bundle it through whatever build process you like. The other .js files must be made available for runtime loading, together in the same directory. + +ogv.js will try to auto-detect the path to its resources based on the script element that loads ogv.js or ogv-support.js. If you load ogv.js through another bundler (such as browserify or MediaWiki's ResourceLoader) you may need to override this manually before instantiating players: + +``` + // Path to ogv-demuxer-ogg.js, ogv-worker-audio.js, etc + OGVLoader.base = '/path/to/resources'; +``` + +To fetch from npm: + +``` +npm install ogv +``` + +The distribution-ready files will appear in 'node_modules/ogv/dist'. + +To load the player library into your browserify or webpack project: + +``` +var ogv = require('ogv'); + +// Access public classes either as ogv.OGVPlayer or just OGVPlayer. +// Your build/lint tools may be happier with ogv.OGVPlayer! +ogv.OGVLoader.base = '/path/to/resources'; +var player = new ogv.OGVPlayer(); +``` + +## Usage + +The `OGVPlayer` class implements a player, and supports a subset of the events, properties and methods from [HTMLMediaElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement) and [HTMLVideoElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLVideoElement). + +``` + // Create a new player with the constructor + var player = new OGVPlayer(); + + // Or with options + var player = new OGVPlayer({ + debug: true, + debugFilter: /demuxer/ + }); + + // Now treat it just like a video or audio element + containerElement.appendChild(player); + player.src = 'path/to/media.ogv'; + player.play(); + player.addEventListener('ended', function() { + // ta-da! + }); +``` + +To check for compatibility before creating a player, include `ogv-support.js` and use the `OGVCompat` API: + +``` + if (OGVCompat.supported('OGVPlayer')) { + // go load the full player from ogv.js and instantiate stuff + } +``` + +This will check for typed arrays, web audio, blacklisted iOS versions, and super-slow/broken JIT compilers. + +If you need a URL versioning/cache-buster parameter for dynamic loading of `ogv.js`, you can use the `OGVVersion` symbol provided by `ogv-support.js` or the even tinier `ogv-version.js`: + +``` + var script = document.createElement('script'); + script.src = 'ogv.js?version=' + encodeURIComponent(OGVVersion); + document.querySelector('head').appendChild(script); +``` + +## Distribution notes + +Entry points: +* `ogv.js` contains the main runtime classes, including OGVPlayer, OGVLoader, and OGVCompat. +* `ogv-support.js` contains the OGVCompat class and OGVVersion symbol, useful for checking for runtime support before loading the main `ogv.js`. +* `ogv-version.js` contains only the OGVVersion symbol. + +These entry points may be loaded directly from a script element, or concatenated into a larger project, or otherwise loaded as you like. + +Further code modules are loaded at runtime, which must be available with their defined names together in a directory. If the files are not hosted same-origin to the web page that includes them, you will need to set up appropriate CORS headers to allow loading of the worker JS modules. + +Dynamically loaded assets: +* `ogv-worker-audio.js`, `ogv-worker-video.js`, and `*.worker.js` are Worker entry points, used to run video and audio decoders in the background. +* `ogv-demuxer-ogg-wasm.js/.wasm` are used in playing .ogg, .oga, and .ogv files. +* `ogv-demuxer-webm-wasm.js/.wasm` are used in playing .webm files. +* `ogv-decoder-audio-vorbis-wasm.js/.wasm` and `ogv-decoder-audio-opus-wasm.js/.wasm` are used in playing both Ogg and WebM files containing audio. +* `ogv-decoder-video-theora-wasm.js/.wasm` are used in playing .ogg and .ogv video files. +* `ogv-decoder-video-vp8-wasm.js/.wasm` and `ogv-decoder-video-vp9-wasm.js/.wasm` are used in playing .webm video files. +* `*-mt.js/.wasm` are the multithreaded versions of some of the above modules. They have additional support files. + +If you know you will never use particular formats or codecs you can skip bundling them; for instance if you only need to play Ogg files you don't need `ogv-demuxer-webm-wasm.js` or `ogv-decoder-video-vp8-wasm.js` which are only used for WebM. + + +## Performance + +(This section is somewhat out of date.) + +As of 2015, for SD-or-less resolution basic Ogg Theora decoding speed is reliable on desktop and newer high-end mobile devices; current high-end desktops and laptops can even reach HD resolutions. Older and low-end mobile devices may have difficulty on any but audio and the lowest-resolution video files. + +WebM VP8/VP9 is slower, but works pretty well at a resolution step below Theora. + +AV1 is slower still, and tops out around 360p for single-threaded decoding on a fast desktop or iOS device. + +*Low-res targets* + +I've gotten acceptable performance for Vorbis audio and 160p/15fps Theora files on 32-bit iOS devices: iPhone 4s, iPod Touch 5th-gen and iPad 3. These have difficulty at 240p and above, and just won't keep up with higher resolutions. + +Meanwhile, newer 64-bit iPhones and iPads are comparable to low-end laptops, and videos at 360p and often 480p play acceptably. Since 32-bit and 64-bit iOS devices have the same user-agent, a benchmark must be used to approximately test minimum CPU speed. + +(On iOS, Safari performs significantly better than some alternative browsers that are unable to enable the JIT due to use of the old UIWebView API. Chrome 49 and Firefox for iOS are known to work using the newer WKWebView API internally. Again, a benchmark must be used to detect slow performance, as the browser remains otherwise compatible.) + + +Windows on 32-bit ARM platforms is similar... IE 11 on Windows RT 8.1 on a Surface tablet (NVidia Tegra 3) does not work (crashes IE), while Edge on Windows 10 Mobile works ok at low resolutions, having trouble starting around 240p. + + +In both cases, a native application looms as a possibly better alternative. See [OGVKit](https://github.com/brion/OGVKit) and [OgvRt](https://github.com/brion/OgvRT) projects for experiments in those directions. + + +Note that at these lower resolutions, Vorbis audio and Theora video decoding are about equally expensive operations -- dual-core phones and tablets should be able to eke out a little parallelism here thanks to audio and video being in separate Worker threads. + + +*WebGL drawing acceleration* + +Accelerated YCbCr->RGB conversion and drawing is done using WebGL on supporting browsers, or through software CPU conversion if not. This is abstracted in the [yuv-canvas](https://github.com/brion/yuv-canvas) package, now separately installable. + +It may be possible to do further acceleration of actual decoding operations using WebGL shaders, but this could be ... tricky. WebGL is also only available on the main thread, and there are no compute shaders yet so would have to use fragment shaders. + + +## Difficulties + +*Threading* + +Currently the video and audio codecs run in worker threads by default, while the demuxer and player logic run on the UI thread. This seems to work pretty well. + +There is some overhead in extracting data out of each emscripten module's heap and in the thread-to-thread communications, but the parallelism and smoother main thread makes up for it. + +*Streaming download* + +Streaming buffering is done by chunking the requests at up to a megabyte each, using the HTTP Range header. For cross-site playback, this requires CORS setup to whitelist the Range header! Chunks are downloaded as ArrayBuffers, so a chunk must be loaded in full before demuxing or playback can start. + +Old versions of [Safari have a bug with Range headers](https://bugs.webkit.org/show_bug.cgi?id=82672) which is worked around as necessary with a 'cache-busting' URL string parameter. + + +*Seeking* + +Seeking is implemented via the HTTP Range: header. + +For Ogg files with keyframe indices in a skeleton index, seeking is very fast. Otherwise, a bisection search is used to locate the target frame or audio position, which is very slow over the internet as it creates a lot of short-lived HTTP requests. + +For WebM files with cues, efficient seeking is supported as well as of 1.1.2. WebM files without cues can be seeked in 1.5.5, but inefficiently via linear seek from the beginning. This is fine for small audio-only files, but might be improved for large files with a bisection in future. + +As with chunked streaming, cross-site playback requires CORS support for the Range header. + + +*Audio output* + +Audio output is handled through the [AudioFeeder](https://github.com/brion/audio-feeder) library, which encapsulates use of Web Audio API: + +Firefox, Safari, Chrome, and Edge support the W3C Web Audio API. + +IE is no longer supported; the workaround using Flash no longer works due to sunsetting of the Flash plugin. + +A/V synchronization is performed on files with both audio and video, and seems to actually work. Yay! + +Note that autoplay with audio doesn't work on iOS Safari due to limitations with starting audio playback from event handlers; if playback is started outside an event handler, the player will hang due to broken audio. + +As of 1.1.1, muting before script-triggered playback allows things to work: + +``` + player = new OGVPlayer(); + player.muted = true; + player.src = 'path/to/file-with-audio.ogv'; + player.play(); +``` + +You can then unmute the video in response to a touch or click handler. Alternately if audio is not required, do not include an audio track in the file. + + +*WebM* + +WebM support was added in June 2015, with some major issues finally worked out in May 2016. Initial VP9 support was added in February 2017. It's pretty stable in production use at Wikipedia and is enabled by default as of October 2015. + +Beware that performance of WebM VP8 is much slower than Ogg Theora, and VP9 is slightly slower still. + +For best WebM decode speed, consider encoding VP8 with "profile 1" (simple deblocking filter) which will sacrifice quality modestly, mainly in high-motion scenes. When encoding with ffmpeg, this is the `-profile:v 1` option to the `libvpx` codec. + +It is also recommended to use the `-slices` option for VP8, or `-tile-columns` for VP9, to maximize ability to use multithreaded decoding when available in the future. + +*AV1* + +WebM files containing the AV1 codec are supported as of 1.6.0 (February 2019) using the [dav1d](https://code.videolan.org/videolan/dav1d) decoder. + +Currently this is experimental, and does not advertise support via `canPlayType`. + +Performance is about 2-3x slower than VP8 or VP9, and may require bumping down a resolution step or two to maintain frame rate. There may be further optimizations that can be done to improve this a bit, but the best improvements will come from future improvements to WebAssembly multithreading and SIMD. + +Currently AV1 in MP4 container is not supported. + +## Upstream library notes + +We've experimented with tremor (libivorbis), an integer-only variant of libvorbis. This actually does *not* decode faster, but does save about 200kb off our generated JavaScript, presumably thanks to not including an encoder in the library. However on slow devices like iPod Touch 5th-generation, it makes a significant negative impact on the decode time so we've gone back to libvorbis. + +The Ogg Skeleton library (libskeleton) is a bit ... unfinished and is slightly modified here. + +libvpx is slightly modified to work around emscripten threading limitations in the VP8 decoder. + + +## WebAssembly + +WebAssembly (Wasm) builds are used exclusively as of 1.8.0, as Safari's Wasm support is pretty well established now and IE no longer works due to the Flash plugin deprecation. + + +## Multithreading + +Experimental multithreaded VP8, VP9, and AV1 decoding up to 4 cores is in development, requiring emscripten 1.38.27 to build. + +Multithreading is used only if `options.threading` is true. This requires browser support for the new `SharedArrayBuffer` and `Atomics` APIs, currently available in Firefox and Chrome with experimental flags enabled. + +Threading currently requires WebAssembly; JavaScript builds are possible but perform poorly. + +Speedups will only be noticeable when using the "slices" or "token partitions" option for VP8 encoding, or the "tile columns" option for VP9 encoding. + +If you are making a slim build and will not use the `threading` option, you can leave out the `*-mt.*` files. + + +## Building JS components + +Building ogv.js is known to work on Mac OS X and Linux (tested Fedora 29 and Ubuntu 18.10 with Meson manually updated). + +1. You will need autoconf, automake, libtool, pkg-config, meson, ninja, and node (nodejs). These can be installed through Homebrew on Mac OS X, or through distribution-specific methods on Linux. For meson, you may need a newer version than your distro packages -- install it manually with `pip3` or from source. +2. Install [Emscripten](http://kripken.github.io/emscripten-site/docs/getting_started/Tutorial.html); currently building with 2.0.13. +3. `git submodule update --init` +4. Run `npm install` to install build utilities +5. Run `make js` to configure and build the libraries and the C wrapper + + +## Building the demo + +If you did all the setup above, just run `make demo` or `make`. Look in build/demo/ and enjoy! + + +## License + +libogg, libvorbis, libtheora, libopus, nestegg, libvpx, and dav1d are available under their respective licenses, and the JavaScript and C wrapper code in this repo is licensed under MIT. + +Based on build scripts from https://github.com/devongovett/ogg.js + +See [AUTHORS.md](https://github.com/brion/ogv.js/blob/master/AUTHORS.md) and/or the git history for a list of contributors. diff --git a/media/player/videojs/ogvjs/ogv-decoder-audio-opus-wasm.js b/media/player/videojs/ogvjs/ogv-decoder-audio-opus-wasm.js new file mode 100644 index 00000000000..89a32e9f929 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-audio-opus-wasm.js @@ -0,0 +1,39 @@ + +var OGVDecoderAudioOpusW = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDecoderAudioOpusW) { + OGVDecoderAudioOpusW = OGVDecoderAudioOpusW || {}; + + +var a;a||(a=typeof OGVDecoderAudioOpusW !== 'undefined' ? OGVDecoderAudioOpusW : {});var g,h;a.ready=new Promise(function(b,c){g=b;h=c});var m=a,n={},p;for(p in a)a.hasOwnProperty(p)&&(n[p]=a[p]);var q="object"===typeof window,r="function"===typeof importScripts,t="",u,v,w,x,y; +if("object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)t=r?require("path").dirname(t)+"/":__dirname+"/",u=function(b,c){x||(x=require("fs"));y||(y=require("path"));b=y.normalize(b);return x.readFileSync(b,c?null:"utf8")},w=function(b){b=u(b,!0);b.buffer||(b=new Uint8Array(b));b.buffer||z("Assertion failed: undefined");return b},v=function(b,c,e){x||(x=require("fs"));y||(y=require("path"));b=y.normalize(b);x.readFile(b,function(d,f){d?e(d):c(f.buffer)})}, +1>>=0;if(2147483648=e;e*=2){var d=c*(1+.2/e);d=Math.min(d,b+100663296);d=Math.max(b,d);0>>16);G();var f=1;break a}catch(k){}f=void 0}if(f)return!0}return!1},c:function(b,c,e){var d=C.buffer,f=new Uint32Array(d,b,c),k=[];if(0!==b)for(b=0;b=b)return V;V&&a._free(V);W=b;return V=a._malloc(W)}var Y;"undefined"===typeof performance||"undefined"===typeof performance.now?Y=Date.now:Y=performance.now.bind(performance);function Z(b){var c=Y();b=b();a.cpuTime+=Y()-c;return b}a.loadedMetadata=!!m.audioFormat;a.audioFormat=m.audioFormat||null;a.audioBuffer=null;a.cpuTime=0; +Object.defineProperty(a,"processing",{get:function(){return!1}});a.init=function(b){Z(function(){a._ogv_audio_decoder_init()});b()};a.processHeader=function(b,c){var e=Z(function(){var d=b.byteLength,f=X(d);(new Uint8Array(C.buffer,f,d)).set(new Uint8Array(b));return a._ogv_audio_decoder_process_header(f,d)});c(e)};a.processAudio=function(b,c){var e=Z(function(){var d=b.byteLength,f=X(d);(new Uint8Array(C.buffer,f,d)).set(new Uint8Array(b));return a._ogv_audio_decoder_process_audio(f,d)});c(e)}; +a.close=function(){}; + + + return OGVDecoderAudioOpusW.ready +} +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = OGVDecoderAudioOpusW; +else if (typeof define === 'function' && define['amd']) + define([], function() { return OGVDecoderAudioOpusW; }); +else if (typeof exports === 'object') + exports["OGVDecoderAudioOpusW"] = OGVDecoderAudioOpusW; diff --git a/media/player/videojs/ogvjs/ogv-decoder-audio-opus-wasm.wasm b/media/player/videojs/ogvjs/ogv-decoder-audio-opus-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..60298676fb5f5ed5854aca5f9e70abe4056adc2e GIT binary patch literal 136877 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 literal 0 HcmV?d00001 diff --git a/media/player/videojs/ogvjs/ogv-decoder-audio-vorbis-wasm.js b/media/player/videojs/ogvjs/ogv-decoder-audio-vorbis-wasm.js new file mode 100644 index 00000000000..a59a9151349 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-audio-vorbis-wasm.js @@ -0,0 +1,40 @@ + +var OGVDecoderAudioVorbisW = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDecoderAudioVorbisW) { + OGVDecoderAudioVorbisW = OGVDecoderAudioVorbisW || {}; + + +var a;a||(a=typeof OGVDecoderAudioVorbisW !== 'undefined' ? OGVDecoderAudioVorbisW : {});var g,h;a.ready=new Promise(function(b,c){g=b;h=c});var m=a,n={},p;for(p in a)a.hasOwnProperty(p)&&(n[p]=a[p]);function q(b,c){throw c;}var r="object"===typeof window,t="function"===typeof importScripts,u="",v,w,x,y,z; +if("object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)u=t?require("path").dirname(u)+"/":__dirname+"/",v=function(b,c){y||(y=require("fs"));z||(z=require("path"));b=z.normalize(b);return y.readFileSync(b,c?null:"utf8")},x=function(b){b=v(b,!0);b.buffer||(b=new Uint8Array(b));b.buffer||A("Assertion failed: undefined");return b},w=function(b,c,e){y||(y=require("fs"));z||(z=require("path"));b=z.normalize(b);y.readFile(b,function(d,f){d?e(d):c(f.buffer)})}, +1>>=0;if(2147483648=e;e*=2){var d=c*(1+.2/e);d=Math.min(d,b+100663296);d=Math.max(b,d);0>>16);I();var f=1;break a}catch(k){}f=void 0}if(f)return!0}return!1},c:function(b){if(!(noExitRuntime||0=b)return W;W&&a._free(W);X=b;return W=a._malloc(X)}var Y;"undefined"===typeof performance||"undefined"===typeof performance.now?Y=Date.now:Y=performance.now.bind(performance);function Z(b){var c=Y();b=b();a.cpuTime+=Y()-c;return b}a.loadedMetadata=!!m.audioFormat;a.audioFormat=m.audioFormat||null;a.audioBuffer=null;a.cpuTime=0; +Object.defineProperty(a,"processing",{get:function(){return!1}});a.init=function(b){Z(function(){a._ogv_audio_decoder_init()});b()};a.processHeader=function(b,c){var e=Z(function(){var d=b.byteLength,f=ha(d);(new Uint8Array(E.buffer,f,d)).set(new Uint8Array(b));return a._ogv_audio_decoder_process_header(f,d)});c(e)};a.processAudio=function(b,c){var e=Z(function(){var d=b.byteLength,f=ha(d);(new Uint8Array(E.buffer,f,d)).set(new Uint8Array(b));return a._ogv_audio_decoder_process_audio(f,d)});c(e)}; +a.close=function(){}; + + + return OGVDecoderAudioVorbisW.ready +} +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = OGVDecoderAudioVorbisW; +else if (typeof define === 'function' && define['amd']) + define([], function() { return OGVDecoderAudioVorbisW; }); +else if (typeof exports === 'object') + exports["OGVDecoderAudioVorbisW"] = OGVDecoderAudioVorbisW; diff --git a/media/player/videojs/ogvjs/ogv-decoder-audio-vorbis-wasm.wasm b/media/player/videojs/ogvjs/ogv-decoder-audio-vorbis-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..41708b46ba873f43a00ac5029c4f830ae13e3edc GIT binary patch literal 145191 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

gOeqNp6QM8D^jiUR3)!Te%VozCbP#xK^#vu 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Μ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 literal 0 HcmV?d00001 diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.js b/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.js new file mode 100644 index 00000000000..4e5fca5af6b --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.js @@ -0,0 +1,21 @@ + +var OGVDecoderVideoAV1MTW = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDecoderVideoAV1MTW) { + OGVDecoderVideoAV1MTW = OGVDecoderVideoAV1MTW || {}; + +function GROWABLE_HEAP_I8(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAP8}function GROWABLE_HEAP_U8(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAPU8}function GROWABLE_HEAP_I32(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAP32}function GROWABLE_HEAP_U32(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAPU32}function GROWABLE_HEAP_F64(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAPF64}var Module=typeof OGVDecoderVideoAV1MTW!=="undefined"?OGVDecoderVideoAV1MTW:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var options=Module;var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var ENVIRONMENT_IS_PTHREAD=Module["ENVIRONMENT_IS_PTHREAD"]||false;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("unhandledRejection",abort);quit_=function(status,toThrow){if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"};var nodeWorkerThreads;try{nodeWorkerThreads=require("worker_threads")}catch(e){console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}if(ENVIRONMENT_IS_NODE){read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})}}else{read_=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}if(ENVIRONMENT_IS_NODE){if(typeof performance==="undefined"){global.performance=require("perf_hooks").performance}}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var Atomics_load=Atomics.load;var Atomics_store=Atomics.store;var Atomics_compareExchange=Atomics.compareExchange;var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!=="object"){abort("no native wasm support detected")}var wasmMemory;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function TextDecoderWrapper(encoding){var textDecoder=new TextDecoder(encoding);this.decode=function(data){if(data.buffer instanceof SharedArrayBuffer){data=new Uint8Array(data)}return textDecoder.decode.call(textDecoder,data)}}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoderWrapper("utf8"):undefined;function UTF8ArrayToString(heap,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heap[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(GROWABLE_HEAP_U8(),ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,GROWABLE_HEAP_U8(),outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoderWrapper("utf-16le"):undefined;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;if(ENVIRONMENT_IS_PTHREAD){buffer=Module["buffer"]}function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module["wasmMemory"];buffer=Module["buffer"]}else{if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":1073741824/65536,"shared":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag");if(ENVIRONMENT_IS_NODE){console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)")}throw Error("bad memory")}}}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATINIT__)}function exitRuntime(){if(ENVIRONMENT_IS_PTHREAD)return;runtimeExited=true}function postRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(ENVIRONMENT_IS_PTHREAD)console.error("Pthread aborting at "+(new Error).stack);what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="ogv-decoder-video-av1-mt-wasm.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["I"];addOnInit(Module["asm"]["B"]);PThread.tlsInitFunctions.push(Module["asm"]["K"]);wasmModule=module;if(!ENVIRONMENT_IS_PTHREAD){var numWorkersToLoad=PThread.unusedWorkers.length;PThread.unusedWorkers.forEach(function(w){PThread.loadWasmModuleToWorker(w,function(){if(!--numWorkersToLoad)removeRunDependency("wasm-instantiate")})})}}if(!ENVIRONMENT_IS_PTHREAD){addRunDependency("wasm-instantiate")}function receiveInstantiationResult(result){receiveInstance(result["instance"],result["module"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){var result=WebAssembly.instantiate(binary,info);return result}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var ASM_CONSTS={108768:function(){throw"Canceled!"},108786:function($0,$1){setTimeout(function(){__emscripten_do_dispatch_to_thread($0,$1)},0)}};function initPthreadsJS(){PThread.initRuntime()}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};function _emscripten_futex_wake(addr,count){if(addr<=0||addr>GROWABLE_HEAP_I8().length||addr&3!=0||count<0)return-28;if(count==0)return 0;if(count>=2147483647)count=Infinity;var mainThreadWaitAddress=Atomics.load(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2);var mainThreadWoken=0;if(mainThreadWaitAddress==addr){var loadedAddr=Atomics.compareExchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,mainThreadWaitAddress,0);if(loadedAddr==mainThreadWaitAddress){--count;mainThreadWoken=1;if(count<=0)return 1}}var ret=Atomics.notify(GROWABLE_HEAP_I32(),addr>>2,count);if(ret>=0)return ret+mainThreadWoken;throw"Atomics.notify returned an unexpected value "+ret}Module["_emscripten_futex_wake"]=_emscripten_futex_wake;function killThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! killThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in killThread!";GROWABLE_HEAP_I32()[pthread_ptr+12>>2]=0;var pthread=PThread.pthreads[pthread_ptr];pthread.worker.terminate();PThread.freeThreadData(pthread);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(pthread.worker),1);pthread.worker.pthread=undefined}function cancelThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! cancelThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in cancelThread!";var pthread=PThread.pthreads[pthread_ptr];pthread.worker.postMessage({"cmd":"cancel"})}function cleanupThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! cleanupThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in cleanupThread!";var pthread=PThread.pthreads[pthread_ptr];if(pthread){GROWABLE_HEAP_I32()[pthread_ptr+12>>2]=0;var worker=pthread.worker;PThread.returnWorkerToPool(worker)}}var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],initMainThreadBlock:function(){var pthreadPoolSize=1;for(var i=0;i>2]=tb;var headPtr=tb+152;GROWABLE_HEAP_I32()[headPtr>>2]=headPtr;var tlsMemory=_malloc(512);for(var i=0;i<128;++i)GROWABLE_HEAP_U32()[tlsMemory/4+i]=0;Atomics.store(GROWABLE_HEAP_U32(),tb+100>>2,tlsMemory);Atomics.store(GROWABLE_HEAP_U32(),tb+40>>2,tb);__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1);_emscripten_register_main_browser_thread_id(tb)},initWorker:function(){},pthreads:{},threadExitHandlers:[],runExitHandlers:function(){while(PThread.threadExitHandlers.length>0){PThread.threadExitHandlers.pop()()}___pthread_tsd_run_dtors()},runExitHandlersAndDeinitThread:function(tb,exitCode){Atomics.store(GROWABLE_HEAP_U32(),tb+56>>2,1);Atomics.store(GROWABLE_HEAP_U32(),tb+60>>2,0);PThread.runExitHandlers();Atomics.store(GROWABLE_HEAP_U32(),tb+4>>2,exitCode);Atomics.store(GROWABLE_HEAP_U32(),tb+0>>2,1);_emscripten_futex_wake(tb+0,2147483647);__emscripten_thread_init(0,0,0)},setExitStatus:function(status){EXITSTATUS=status},threadExit:function(exitCode){var tb=_pthread_self();if(tb){PThread.runExitHandlersAndDeinitThread(tb,exitCode);if(ENVIRONMENT_IS_PTHREAD){postMessage({"cmd":"exit"})}}},threadCancel:function(){PThread.runExitHandlersAndDeinitThread(_pthread_self(),-1);postMessage({"cmd":"cancelDone"})},terminateAllThreads:function(){for(var t in PThread.pthreads){var pthread=PThread.pthreads[t];if(pthread&&pthread.worker){PThread.returnWorkerToPool(pthread.worker)}}PThread.pthreads={};for(var i=0;i>2];GROWABLE_HEAP_I32()[pthread.threadInfoStruct+100>>2]=0;_free(tlsMemory);_free(pthread.threadInfoStruct)}pthread.threadInfoStruct=0;if(pthread.allocatedOwnStack&&pthread.stackBase)_free(pthread.stackBase);pthread.stackBase=0;if(pthread.worker)pthread.worker.pthread=null},returnWorkerToPool:function(worker){PThread.runWithoutMainThreadQueuedCalls(function(){delete PThread.pthreads[worker.pthread.threadInfoStruct];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);PThread.freeThreadData(worker.pthread);worker.pthread=undefined})},runWithoutMainThreadQueuedCalls:function(func){GROWABLE_HEAP_I32()[__emscripten_allow_main_runtime_queued_calls>>2]=0;try{func()}finally{GROWABLE_HEAP_I32()[__emscripten_allow_main_runtime_queued_calls>>2]=1}},receiveObjectTransfer:function(data){},threadInit:function(){for(var i in PThread.tlsInitFunctions){PThread.tlsInitFunctions[i]()}},loadWasmModuleToWorker:function(worker,onFinishedLoading){worker.onmessage=function(e){var d=e["data"];var cmd=d["cmd"];if(worker.pthread)PThread.currentProxiedOperationCallerThread=worker.pthread.threadInfoStruct;if(d["targetThread"]&&d["targetThread"]!=_pthread_self()){var thread=PThread.pthreads[d.targetThread];if(thread){thread.worker.postMessage(e.data,d["transferList"])}else{console.error('Internal error! Worker sent a message "'+cmd+'" to target pthread '+d["targetThread"]+", but that thread no longer exists!")}PThread.currentProxiedOperationCallerThread=undefined;return}if(cmd==="processQueuedMainThreadWork"){_emscripten_main_thread_process_queued_calls()}else if(cmd==="spawnThread"){spawnThread(e.data)}else if(cmd==="cleanupThread"){cleanupThread(d["thread"])}else if(cmd==="killThread"){killThread(d["thread"])}else if(cmd==="cancelThread"){cancelThread(d["thread"])}else if(cmd==="loaded"){worker.loaded=true;if(onFinishedLoading)onFinishedLoading(worker);if(worker.runPthread){worker.runPthread();delete worker.runPthread}}else if(cmd==="print"){out("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="printErr"){err("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="alert"){alert("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="exit"){var detached=worker.pthread&&Atomics.load(GROWABLE_HEAP_U32(),worker.pthread.threadInfoStruct+64>>2);if(detached){PThread.returnWorkerToPool(worker)}}else if(cmd==="exitProcess"){try{exit(d["returnCode"])}catch(e){if(e instanceof ExitStatus)return;throw e}}else if(cmd==="cancelDone"){PThread.returnWorkerToPool(worker)}else if(cmd==="objectTransfer"){PThread.receiveObjectTransfer(e.data)}else if(e.data.target==="setimmediate"){worker.postMessage(e.data)}else{err("worker sent an unknown command "+cmd)}PThread.currentProxiedOperationCallerThread=undefined};worker.onerror=function(e){err("pthread sent an error! "+e.filename+":"+e.lineno+": "+e.message)};if(ENVIRONMENT_IS_NODE){worker.on("message",function(data){worker.onmessage({data:data})});worker.on("error",function(data){worker.onerror(data)});worker.on("exit",function(data){})}worker.postMessage({"cmd":"load","urlOrBlob":Module["mainScriptUrlOrBlob"]||_scriptDir,"wasmMemory":wasmMemory,"wasmModule":wasmModule})},allocateUnusedWorker:function(){var pthreadMainJs=locateFile("ogv-decoder-video-av1-mt-wasm.worker.js");PThread.unusedWorkers.push(new Worker(pthreadMainJs))},getNewWorker:function(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()},busySpinWait:function(msecs){var t=performance.now()+msecs;while(performance.now()>=2;while(ch=GROWABLE_HEAP_U8()[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?GROWABLE_HEAP_F64()[buf++>>1]:GROWABLE_HEAP_I32()[buf]);++buf}return readAsmConstArgsArray}function _emscripten_asm_const_int(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}function _emscripten_check_blocking_allowed(){if(ENVIRONMENT_IS_NODE)return;if(ENVIRONMENT_IS_WORKER)return;warnOnce("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")}function _emscripten_conditional_set_current_thread_status(expectedStatus,newStatus){}function _emscripten_futex_wait(addr,val,timeout){if(addr<=0||addr>GROWABLE_HEAP_I8().length||addr&3!=0)return-28;if(!ENVIRONMENT_IS_WEB){var ret=Atomics.wait(GROWABLE_HEAP_I32(),addr>>2,val,timeout);if(ret==="timed-out")return-73;if(ret==="not-equal")return-6;if(ret==="ok")return 0;throw"Atomics.wait returned an unexpected value "+ret}else{if(Atomics.load(GROWABLE_HEAP_I32(),addr>>2)!=val){return-6}var tNow=performance.now();var tEnd=tNow+timeout;var lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,addr);while(1){tNow=performance.now();if(tNow>tEnd){lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,0);return-73}lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,0);if(lastAddr==0){break}_emscripten_main_thread_process_queued_calls();if(Atomics.load(GROWABLE_HEAP_I32(),addr>>2)!=val){return-6}lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,addr)}return 0}}function _emscripten_memcpy_big(dest,src,num){GROWABLE_HEAP_U8().copyWithin(dest,src,src+num)}function _emscripten_num_logical_cores(){if(ENVIRONMENT_IS_NODE)return require("os").cpus().length;return navigator["hardwareConcurrency"]}function _emscripten_proxy_to_main_thread_js(index,sync){var numCallArgs=arguments.length-2;var stack=stackSave();var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>3;for(var i=0;i>3;for(var i=0;i>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=GROWABLE_HEAP_U8().length;requestedSize=requestedSize>>>0;if(requestedSize<=oldSize){return false}var maxHeapSize=1073741824;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var JSEvents={inEventHandler:0,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence>2]=eventTypeId;GROWABLE_HEAP_I32()[varargs+4>>2]=eventData;GROWABLE_HEAP_I32()[varargs+8>>2]=userData;__emscripten_call_on_thread(0,targetThread,637534208,eventHandlerFunc,eventData,varargs);stackRestore(stackTop)},getTargetThreadForEventCallback:function(targetThread){switch(targetThread){case 1:return 0;case 2:return PThread.currentProxiedOperationCallerThread;default:return targetThread}},getNodeNameForTarget:function(target){if(!target)return"";if(target==window)return"#window";if(target==screen)return"#screen";return target&&target.nodeName?target.nodeName:""},fullscreenEnabled:function(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}};function stringToNewUTF8(jsString){var length=lengthBytesUTF8(jsString)+1;var cString=_malloc(length);stringToUTF8(jsString,cString,length);return cString}function _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height){var stackTop=stackSave();var varargs=stackAlloc(12);var targetCanvasPtr=0;if(targetCanvas){targetCanvasPtr=stringToNewUTF8(targetCanvas)}GROWABLE_HEAP_I32()[varargs>>2]=targetCanvasPtr;GROWABLE_HEAP_I32()[varargs+4>>2]=width;GROWABLE_HEAP_I32()[varargs+8>>2]=height;__emscripten_call_on_thread(0,targetThread,657457152,0,targetCanvasPtr,varargs);stackRestore(stackTop)}function _emscripten_set_offscreencanvas_size_on_target_thread(targetThread,targetCanvas,width,height){targetCanvas=targetCanvas?UTF8ToString(targetCanvas):"";_emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height)}function maybeCStringToJsString(cString){return cString>2?UTF8ToString(cString):cString}var specialHTMLTargets=[0,typeof document!=="undefined"?document:0,typeof window!=="undefined"?window:0];function findEventTarget(target){target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!=="undefined"?document.querySelector(target):undefined);return domElement}function findCanvasEventTarget(target){return findEventTarget(target)}function _emscripten_set_canvas_element_size_calling_thread(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;if(canvas.canvasSharedPtr){GROWABLE_HEAP_I32()[canvas.canvasSharedPtr>>2]=width;GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+4>>2]=height}if(canvas.offscreenCanvas||!canvas.controlTransferredOffscreen){if(canvas.offscreenCanvas)canvas=canvas.offscreenCanvas;var autoResizeViewport=false;if(canvas.GLctxObject&&canvas.GLctxObject.GLctx){var prevViewport=canvas.GLctxObject.GLctx.getParameter(2978);autoResizeViewport=prevViewport[0]===0&&prevViewport[1]===0&&prevViewport[2]===canvas.width&&prevViewport[3]===canvas.height}canvas.width=width;canvas.height=height;if(autoResizeViewport){canvas.GLctxObject.GLctx.viewport(0,0,width,height)}}else if(canvas.canvasSharedPtr){var targetThread=GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+8>>2];_emscripten_set_offscreencanvas_size_on_target_thread(targetThread,target,width,height);return 1}else{return-4}return 0}function _emscripten_set_canvas_element_size_main_thread(target,width,height){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(1,1,target,width,height);return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}function _emscripten_set_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(canvas){return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}else{return _emscripten_set_canvas_element_size_main_thread(target,width,height)}}function _emscripten_set_current_thread_status(newStatus){}function __webgl_enable_ANGLE_instanced_arrays(ctx){var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=function(index,divisor){ext["vertexAttribDivisorANGLE"](index,divisor)};ctx["drawArraysInstanced"]=function(mode,first,count,primcount){ext["drawArraysInstancedANGLE"](mode,first,count,primcount)};ctx["drawElementsInstanced"]=function(mode,count,type,indices,primcount){ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount)};return 1}}function __webgl_enable_OES_vertex_array_object(ctx){var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=function(){return ext["createVertexArrayOES"]()};ctx["deleteVertexArray"]=function(vao){ext["deleteVertexArrayOES"](vao)};ctx["bindVertexArray"]=function(vao){ext["bindVertexArrayOES"](vao)};ctx["isVertexArray"]=function(vao){return ext["isVertexArrayOES"](vao)};return 1}}function __webgl_enable_WEBGL_draw_buffers(ctx){var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=function(n,bufs){ext["drawBuffersWEBGL"](n,bufs)};return 1}}function __webgl_enable_WEBGL_multi_draw(ctx){return!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"))}var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:{},offscreenCanvases:{},queries:[],stringCache:{},unpackAlignment:4,recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i>2]:-1;source+=UTF8ToString(GROWABLE_HEAP_I32()[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;canvas.getContext=function(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}}var ctx=canvas.getContext("webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=_malloc(8);GROWABLE_HEAP_I32()[handle+4>>2]=_pthread_self();var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault==="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents==="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;_free(GL.contexts[contextHandle].handle);GL.contexts[contextHandle]=null},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;__webgl_enable_ANGLE_instanced_arrays(GLctx);__webgl_enable_OES_vertex_array_object(GLctx);__webgl_enable_WEBGL_draw_buffers(GLctx);{GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}__webgl_enable_WEBGL_multi_draw(GLctx);var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};var __emscripten_webgl_power_preferences=["default","low-power","high-performance"];function _emscripten_webgl_do_create_context(target,attributes){var a=attributes>>2;var powerPreference=GROWABLE_HEAP_I32()[a+(24>>2)];var contextAttributes={"alpha":!!GROWABLE_HEAP_I32()[a+(0>>2)],"depth":!!GROWABLE_HEAP_I32()[a+(4>>2)],"stencil":!!GROWABLE_HEAP_I32()[a+(8>>2)],"antialias":!!GROWABLE_HEAP_I32()[a+(12>>2)],"premultipliedAlpha":!!GROWABLE_HEAP_I32()[a+(16>>2)],"preserveDrawingBuffer":!!GROWABLE_HEAP_I32()[a+(20>>2)],"powerPreference":__emscripten_webgl_power_preferences[powerPreference],"failIfMajorPerformanceCaveat":!!GROWABLE_HEAP_I32()[a+(28>>2)],majorVersion:GROWABLE_HEAP_I32()[a+(32>>2)],minorVersion:GROWABLE_HEAP_I32()[a+(36>>2)],enableExtensionsByDefault:GROWABLE_HEAP_I32()[a+(40>>2)],explicitSwapControl:GROWABLE_HEAP_I32()[a+(44>>2)],proxyContextToMainThread:GROWABLE_HEAP_I32()[a+(48>>2)],renderViaOffscreenBackBuffer:GROWABLE_HEAP_I32()[a+(52>>2)]};var canvas=findCanvasEventTarget(target);if(!canvas){return 0}if(contextAttributes.explicitSwapControl){return 0}var contextHandle=GL.createContext(canvas,contextAttributes);return contextHandle}function _emscripten_webgl_create_context(a0,a1){return _emscripten_webgl_do_create_context(a0,a1)}var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=GROWABLE_HEAP_I32()[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},get64:function(low,high){return low}};function _fd_close(fd){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(2,1,fd);return 0}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(3,1,fd,offset_low,offset_high,whence,newOffset)}function _fd_write(fd,iov,iovcnt,pnum){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(4,1,fd,iov,iovcnt,pnum);var num=0;for(var i=0;i>2];var len=GROWABLE_HEAP_I32()[iov+(i*8+4)>>2];for(var j=0;j>2]=num;return 0}function _ogvjs_callback_async_complete(ret,cpuTime){var callback=Module.callbacks.shift();Module["cpuTime"]+=cpuTime;callback(ret);return}function _ogvjs_callback_frame(bufferY,strideY,bufferCb,strideCb,bufferCr,strideCr,width,height,chromaWidth,chromaHeight,picWidth,picHeight,picX,picY,displayWidth,displayHeight){var heap=wasmMemory.buffer;var format=Module["videoFormat"];function copyAndTrim(arr,buffer,stride,height,picX,picY,picWidth,picHeight,fill){if(trident){var dest64=new Float64Array(arr.buffer);var src64=new Float64Array(heap,buffer,stride*height>>3);dest64.set(src64)}else{arr.set(new Uint8Array(heap,buffer,stride*height))}var x,y,ptr;for(ptr=0,y=0;y0){var next=recycled.shift(),format=next["format"];if(format["width"]===width&&format["height"]===height&&format["chromaWidth"]===chromaWidth&&format["chromaHeight"]===chromaHeight&&format["cropLeft"]===picX&&format["cropTop"]===picY&&format["cropWidth"]===picWidth&&format["cropHeight"]===picHeight&&format["displayWidth"]===displayWidth&&format["displayHeight"]===displayHeight&&next["y"]["bytes"].length===lenY&&next["u"]["bytes"].length===lenCb&&next["v"]["bytes"].length===lenCr){frame=next;break}}if(!frame){frame={"format":{"width":width,"height":height,"chromaWidth":chromaWidth,"chromaHeight":chromaHeight,"cropLeft":picX,"cropTop":picY,"cropWidth":picWidth,"cropHeight":picHeight,"displayWidth":displayWidth,"displayHeight":displayHeight},"y":{"bytes":new Uint8Array(lenY),"stride":strideY},"u":{"bytes":new Uint8Array(lenCb),"stride":strideCb},"v":{"bytes":new Uint8Array(lenCr),"stride":strideCr}}}copyAndTrim(frame["y"]["bytes"],bufferY,strideY,height,picX,picY,picWidth,picHeight,0);copyAndTrim(frame["u"]["bytes"],bufferCb,strideCb,chromaHeight,chromaPicX,chromaPicY,chromaPicWidth,chromaPicHeight,128);copyAndTrim(frame["v"]["bytes"],bufferCr,strideCr,chromaHeight,chromaPicX,chromaPicY,chromaPicWidth,chromaPicHeight,128);Module["frameBuffer"]=frame}function spawnThread(threadParams){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! spawnThread() can only ever be called from main application thread!";var worker=PThread.getNewWorker();if(!worker){return 6}if(worker.pthread!==undefined)throw"Internal error!";if(!threadParams.pthread_ptr)throw"Internal error, no pthread ptr!";PThread.runningWorkers.push(worker);var tlsMemory=_malloc(128*4);for(var i=0;i<128;++i){GROWABLE_HEAP_I32()[tlsMemory+i*4>>2]=0}var stackHigh=threadParams.stackBase+threadParams.stackSize;var pthread=PThread.pthreads[threadParams.pthread_ptr]={worker:worker,stackBase:threadParams.stackBase,stackSize:threadParams.stackSize,allocatedOwnStack:threadParams.allocatedOwnStack,threadInfoStruct:threadParams.pthread_ptr};var tis=pthread.threadInfoStruct>>2;Atomics.store(GROWABLE_HEAP_U32(),tis+(64>>2),threadParams.detached);Atomics.store(GROWABLE_HEAP_U32(),tis+(100>>2),tlsMemory);Atomics.store(GROWABLE_HEAP_U32(),tis+(40>>2),pthread.threadInfoStruct);Atomics.store(GROWABLE_HEAP_U32(),tis+(80>>2),threadParams.stackSize);Atomics.store(GROWABLE_HEAP_U32(),tis+(76>>2),stackHigh);Atomics.store(GROWABLE_HEAP_U32(),tis+(104>>2),threadParams.stackSize);Atomics.store(GROWABLE_HEAP_U32(),tis+(104+8>>2),stackHigh);Atomics.store(GROWABLE_HEAP_U32(),tis+(104+12>>2),threadParams.detached);var global_libc=_emscripten_get_global_libc();var global_locale=global_libc+40;Atomics.store(GROWABLE_HEAP_U32(),tis+(172>>2),global_locale);worker.pthread=pthread;var msg={"cmd":"run","start_routine":threadParams.startRoutine,"arg":threadParams.arg,"threadInfoStruct":threadParams.pthread_ptr,"stackBase":threadParams.stackBase,"stackSize":threadParams.stackSize};worker.runPthread=function(){msg.time=performance.now();worker.postMessage(msg,threadParams.transferList)};if(worker.loaded){worker.runPthread();delete worker.runPthread}return 0}function _pthread_create(pthread_ptr,attr,start_routine,arg){if(typeof SharedArrayBuffer==="undefined"){err("Current environment does not support SharedArrayBuffer, pthreads are not available!");return 6}if(!pthread_ptr){err("pthread_create called with a null thread pointer!");return 28}var transferList=[];var error=0;if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return _emscripten_sync_run_in_main_thread_4(687865856,pthread_ptr,attr,start_routine,arg)}if(error)return error;var stackSize=0;var stackBase=0;var detached=0;if(attr&&attr!=-1){stackSize=GROWABLE_HEAP_I32()[attr>>2];stackSize+=81920;stackBase=GROWABLE_HEAP_I32()[attr+8>>2];detached=GROWABLE_HEAP_I32()[attr+12>>2]!==0}else{stackSize=2097152}var allocatedOwnStack=stackBase==0;if(allocatedOwnStack){stackBase=_memalign(16,stackSize)}else{stackBase-=stackSize;assert(stackBase>0)}var threadInfoStruct=_malloc(228);for(var i=0;i<228>>2;++i)GROWABLE_HEAP_U32()[(threadInfoStruct>>2)+i]=0;GROWABLE_HEAP_I32()[pthread_ptr>>2]=threadInfoStruct;GROWABLE_HEAP_I32()[threadInfoStruct+12>>2]=threadInfoStruct;var headPtr=threadInfoStruct+152;GROWABLE_HEAP_I32()[headPtr>>2]=headPtr;var threadParams={stackBase:stackBase,stackSize:stackSize,allocatedOwnStack:allocatedOwnStack,detached:detached,startRoutine:start_routine,pthread_ptr:threadInfoStruct,arg:arg,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd="spawnThread";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}function _exit(status){exit(status)}function _pthread_exit(status){if(!ENVIRONMENT_IS_PTHREAD)_exit(status);else PThread.threadExit(status);throw"unwind"}function __pthread_testcancel_js(){if(!ENVIRONMENT_IS_PTHREAD)return;var tb=_pthread_self();if(!tb)return;var cancelDisabled=Atomics.load(GROWABLE_HEAP_U32(),tb+56>>2);if(cancelDisabled)return;var canceled=Atomics.load(GROWABLE_HEAP_U32(),tb+0>>2);if(canceled==2)throw"Canceled!"}function __emscripten_do_pthread_join(thread,status,block){if(!thread){err("pthread_join attempted on a null thread pointer!");return ERRNO_CODES.ESRCH}if(ENVIRONMENT_IS_PTHREAD&&_pthread_self()==thread){err("PThread "+thread+" is attempting to join to itself!");return ERRNO_CODES.EDEADLK}else if(!ENVIRONMENT_IS_PTHREAD&&_emscripten_main_browser_thread_id()==thread){err("Main thread "+thread+" is attempting to join to itself!");return ERRNO_CODES.EDEADLK}var self=GROWABLE_HEAP_I32()[thread+12>>2];if(self!==thread){err("pthread_join attempted on thread "+thread+", which does not point to a valid thread, or does not exist anymore!");return ERRNO_CODES.ESRCH}var detached=Atomics.load(GROWABLE_HEAP_U32(),thread+64>>2);if(detached){err("Attempted to join thread "+thread+", which was already detached!");return ERRNO_CODES.EINVAL}if(block){_emscripten_check_blocking_allowed()}for(;;){var threadStatus=Atomics.load(GROWABLE_HEAP_U32(),thread+0>>2);if(threadStatus==1){var threadExitCode=Atomics.load(GROWABLE_HEAP_U32(),thread+4>>2);if(status)GROWABLE_HEAP_I32()[status>>2]=threadExitCode;Atomics.store(GROWABLE_HEAP_U32(),thread+64>>2,1);if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({"cmd":"cleanupThread","thread":thread});return 0}if(!block){return ERRNO_CODES.EBUSY}__pthread_testcancel_js();if(!ENVIRONMENT_IS_PTHREAD)_emscripten_main_thread_process_queued_calls();_emscripten_futex_wait(thread+0,threadStatus,ENVIRONMENT_IS_PTHREAD?100:1)}}function _pthread_join(thread,status){return __emscripten_do_pthread_join(thread,status,true)}if(!ENVIRONMENT_IS_PTHREAD)PThread.initMainThreadBlock();var GLctx;var proxiedFunctionTable=[null,_emscripten_set_canvas_element_size_main_thread,_fd_close,_fd_seek,_fd_write];var asmLibraryArg={"c":___assert_fail,"h":___cxa_thread_atexit,"A":__emscripten_notify_thread_queue,"m":_abort,"g":_emscripten_asm_const_int,"u":_emscripten_check_blocking_allowed,"l":_emscripten_conditional_set_current_thread_status,"e":_emscripten_futex_wait,"d":_emscripten_futex_wake,"b":_emscripten_get_now,"s":_emscripten_memcpy_big,"v":_emscripten_num_logical_cores,"x":_emscripten_receive_on_main_thread_js,"t":_emscripten_resize_heap,"y":_emscripten_set_canvas_element_size,"k":_emscripten_set_current_thread_status,"z":_emscripten_webgl_create_context,"w":_fd_close,"q":_fd_seek,"j":_fd_write,"r":initPthreadsJS,"a":wasmMemory||Module["wasmMemory"],"n":_ogvjs_callback_async_complete,"o":_ogvjs_callback_frame,"f":_pthread_create,"p":_pthread_exit,"i":_pthread_join};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["B"]).apply(null,arguments)};var _ogv_video_decoder_init=Module["_ogv_video_decoder_init"]=function(){return(_ogv_video_decoder_init=Module["_ogv_video_decoder_init"]=Module["asm"]["C"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["D"]).apply(null,arguments)};var _ogv_video_decoder_async=Module["_ogv_video_decoder_async"]=function(){return(_ogv_video_decoder_async=Module["_ogv_video_decoder_async"]=Module["asm"]["E"]).apply(null,arguments)};var _ogv_video_decoder_destroy=Module["_ogv_video_decoder_destroy"]=function(){return(_ogv_video_decoder_destroy=Module["_ogv_video_decoder_destroy"]=Module["asm"]["F"]).apply(null,arguments)};var _ogv_video_decoder_process_header=Module["_ogv_video_decoder_process_header"]=function(){return(_ogv_video_decoder_process_header=Module["_ogv_video_decoder_process_header"]=Module["asm"]["G"]).apply(null,arguments)};var _ogv_video_decoder_process_frame=Module["_ogv_video_decoder_process_frame"]=function(){return(_ogv_video_decoder_process_frame=Module["_ogv_video_decoder_process_frame"]=Module["asm"]["H"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["J"]).apply(null,arguments)};var _emscripten_tls_init=Module["_emscripten_tls_init"]=function(){return(_emscripten_tls_init=Module["_emscripten_tls_init"]=Module["asm"]["K"]).apply(null,arguments)};var _emscripten_current_thread_process_queued_calls=Module["_emscripten_current_thread_process_queued_calls"]=function(){return(_emscripten_current_thread_process_queued_calls=Module["_emscripten_current_thread_process_queued_calls"]=Module["asm"]["L"]).apply(null,arguments)};var _emscripten_register_main_browser_thread_id=Module["_emscripten_register_main_browser_thread_id"]=function(){return(_emscripten_register_main_browser_thread_id=Module["_emscripten_register_main_browser_thread_id"]=Module["asm"]["M"]).apply(null,arguments)};var _emscripten_main_browser_thread_id=Module["_emscripten_main_browser_thread_id"]=function(){return(_emscripten_main_browser_thread_id=Module["_emscripten_main_browser_thread_id"]=Module["asm"]["N"]).apply(null,arguments)};var __emscripten_do_dispatch_to_thread=Module["__emscripten_do_dispatch_to_thread"]=function(){return(__emscripten_do_dispatch_to_thread=Module["__emscripten_do_dispatch_to_thread"]=Module["asm"]["O"]).apply(null,arguments)};var _emscripten_sync_run_in_main_thread_4=Module["_emscripten_sync_run_in_main_thread_4"]=function(){return(_emscripten_sync_run_in_main_thread_4=Module["_emscripten_sync_run_in_main_thread_4"]=Module["asm"]["P"]).apply(null,arguments)};var _emscripten_main_thread_process_queued_calls=Module["_emscripten_main_thread_process_queued_calls"]=function(){return(_emscripten_main_thread_process_queued_calls=Module["_emscripten_main_thread_process_queued_calls"]=Module["asm"]["Q"]).apply(null,arguments)};var _emscripten_run_in_main_runtime_thread_js=Module["_emscripten_run_in_main_runtime_thread_js"]=function(){return(_emscripten_run_in_main_runtime_thread_js=Module["_emscripten_run_in_main_runtime_thread_js"]=Module["asm"]["R"]).apply(null,arguments)};var _pthread_self=Module["_pthread_self"]=function(){return(_pthread_self=Module["_pthread_self"]=Module["asm"]["S"]).apply(null,arguments)};var __emscripten_call_on_thread=Module["__emscripten_call_on_thread"]=function(){return(__emscripten_call_on_thread=Module["__emscripten_call_on_thread"]=Module["asm"]["T"]).apply(null,arguments)};var __emscripten_thread_init=Module["__emscripten_thread_init"]=function(){return(__emscripten_thread_init=Module["__emscripten_thread_init"]=Module["asm"]["U"]).apply(null,arguments)};var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=function(){return(_emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=Module["asm"]["V"]).apply(null,arguments)};var ___pthread_tsd_run_dtors=Module["___pthread_tsd_run_dtors"]=function(){return(___pthread_tsd_run_dtors=Module["___pthread_tsd_run_dtors"]=Module["asm"]["W"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["X"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["Y"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["Z"]).apply(null,arguments)};var _emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=function(){return(_emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=Module["asm"]["_"]).apply(null,arguments)};var _memalign=Module["_memalign"]=function(){return(_memalign=Module["_memalign"]=Module["asm"]["$"]).apply(null,arguments)};var __emscripten_allow_main_runtime_queued_calls=Module["__emscripten_allow_main_runtime_queued_calls"]=108468;var __emscripten_main_thread_futex=Module["__emscripten_main_thread_futex"]=376276;Module["keepRuntimeAlive"]=keepRuntimeAlive;Module["PThread"]=PThread;Module["PThread"]=PThread;Module["wasmMemory"]=wasmMemory;Module["ExitStatus"]=ExitStatus;var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}if(ENVIRONMENT_IS_PTHREAD){readyPromiseResolve(Module);initRuntime();postMessage({"cmd":"loaded"});return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){EXITSTATUS=status;if(!implicit){if(ENVIRONMENT_IS_PTHREAD){postMessage({"cmd":"exitProcess","returnCode":status});throw new ExitStatus(status)}else{}}if(keepRuntimeAlive()){}else{PThread.terminateAllThreads();exitRuntime();if(Module["onExit"])Module["onExit"](status);ABORT=true}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}if(ENVIRONMENT_IS_PTHREAD){noExitRuntime=false;PThread.initWorker()}run();var inputBuffer,inputBufferSize;function reallocInputBuffer(size){if(inputBuffer&&inputBufferSize>=size){return inputBuffer}if(inputBuffer){Module["_free"](inputBuffer)}inputBufferSize=size;inputBuffer=Module["_malloc"](inputBufferSize);return inputBuffer}var getTimestamp;if(typeof performance==="undefined"||typeof performance.now==="undefined"){getTimestamp=Date.now}else{getTimestamp=performance.now.bind(performance)}function time(func){var start=getTimestamp(),ret;ret=func();Module["cpuTime"]+=getTimestamp()-start;return ret}Module["loadedMetadata"]=!!options["videoFormat"];Module["videoFormat"]=options["videoFormat"]||null;Module["frameBuffer"]=null;Module["cpuTime"]=0;Object.defineProperty(Module,"processing",{get:function getProcessing(){return false}});Module["init"]=function(callback){time(function(){Module["_ogv_video_decoder_init"]()});callback()};Module["processHeader"]=function(data,callback){var ret=time(function(){var len=data.byteLength;var buffer=reallocInputBuffer(len);var dest=new Uint8Array(wasmMemory.buffer,buffer,len);dest.set(new Uint8Array(data));return Module["_ogv_video_decoder_process_header"](buffer,len)});callback(ret)};Module.callbacks=[];Module["processFrame"]=function(data,callback){var isAsync=Module["_ogv_video_decoder_async"]();var len=data.byteLength;var buffer=Module["_malloc"](len);function callbackWrapper(ret){Module["_free"](buffer);callback(ret)}if(isAsync){Module.callbacks.push(callbackWrapper)}var ret=time(function(){var dest=new Uint8Array(wasmMemory.buffer,buffer,len);dest.set(new Uint8Array(data));return Module["_ogv_video_decoder_process_frame"](buffer,len)});if(!isAsync){callbackWrapper(ret)}};Module["close"]=function(){};Module["sync"]=function(){var isAsync=Module["_ogv_video_decoder_async"]();if(isAsync){Module.callbacks.push(function(){});time(function(){Module["_ogv_video_decoder_process_frame"](0,0)})}};Module["recycledFrames"]=[];Module["recycleFrame"]=function(frame){var arr=Module["recycledFrames"];arr.push(frame);if(arr.length>16){arr.shift()}};var trident=typeof navigator==="object"&&navigator.userAgent.match(/Trident/); + + + return OGVDecoderVideoAV1MTW.ready +} +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = OGVDecoderVideoAV1MTW; +else if (typeof define === 'function' && define['amd']) + define([], function() { return OGVDecoderVideoAV1MTW; }); +else if (typeof exports === 'object') + exports["OGVDecoderVideoAV1MTW"] = OGVDecoderVideoAV1MTW; diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.wasm b/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8f5522f098b3e5d7ec81662b5887a90fa36d98f0 GIT binary patch literal 416642 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

&n;*aU+Jp<-6BLNKtMuJLTEsm!dJS` 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 Z%R2oREj#0w=WdjSne-2X;!2_E{|EZ9=@|e3 literal 0 HcmV?d00001 diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.worker.js b/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.worker.js new file mode 100644 index 00000000000..bdabbc956d7 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-video-av1-mt-wasm.worker.js @@ -0,0 +1 @@ +"use strict";var Module={};if(typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string"){var nodeWorkerThreads=require("worker_threads");var parentPort=nodeWorkerThreads.parentPort;parentPort.on("message",function(data){onmessage({data:data})});var nodeFS=require("fs");Object.assign(global,{self:global,require:require,Module:Module,location:{href:__filename},Worker:nodeWorkerThreads.Worker,importScripts:function(f){(0,eval)(nodeFS.readFileSync(f,"utf8"))},postMessage:function(msg){parentPort.postMessage(msg)},performance:global.performance||{now:function(){return Date.now()}}})}function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(" ");console.error(text)}function threadAlert(){var text=Array.prototype.slice.call(arguments).join(" ");postMessage({cmd:"alert",text:text,threadId:Module["_pthread_self"]()})}var err=threadPrintErr;self.alert=threadAlert;Module["instantiateWasm"]=function(info,receiveInstance){var instance=new WebAssembly.Instance(Module["wasmModule"],info);receiveInstance(instance);Module["wasmModule"]=null;return instance.exports};function moduleLoaded(){}self.onmessage=function(e){try{if(e.data.cmd==="load"){Module["wasmModule"]=e.data.wasmModule;Module["wasmMemory"]=e.data.wasmMemory;Module["buffer"]=Module["wasmMemory"].buffer;Module["ENVIRONMENT_IS_PTHREAD"]=true;if(typeof e.data.urlOrBlob==="string"){importScripts(e.data.urlOrBlob)}else{var objectUrl=URL.createObjectURL(e.data.urlOrBlob);importScripts(objectUrl);URL.revokeObjectURL(objectUrl)}OGVDecoderVideoAV1MTW(Module).then(function(instance){Module=instance;moduleLoaded()})}else if(e.data.cmd==="objectTransfer"){Module["PThread"].receiveObjectTransfer(e.data)}else if(e.data.cmd==="run"){Module["__performance_now_clock_drift"]=performance.now()-e.data.time;Module["__emscripten_thread_init"](e.data.threadInfoStruct,0,0);var max=e.data.stackBase;var top=e.data.stackBase+e.data.stackSize;Module["establishStackSpace"](top,max);Module["PThread"].receiveObjectTransfer(e.data);Module["PThread"].threadInit();try{var result=Module["invokeEntryPoint"](e.data.start_routine,e.data.arg);if(Module["keepRuntimeAlive"]()){Module["PThread"].setExitStatus(result)}else{Module["PThread"].threadExit(result)}}catch(ex){if(ex==="Canceled!"){Module["PThread"].threadCancel()}else if(ex!="unwind"){if(ex instanceof Module["ExitStatus"]){if(Module["keepRuntimeAlive"]()){}else{Module["PThread"].threadExit(ex.status)}}else{Module["PThread"].threadExit(-2);throw ex}}}}else if(e.data.cmd==="cancel"){if(Module["_pthread_self"]()){Module["PThread"].threadCancel()}}else if(e.data.target==="setimmediate"){}else if(e.data.cmd==="processThreadQueue"){if(Module["_pthread_self"]()){Module["_emscripten_current_thread_process_queued_calls"]()}}else{err("worker.js received unknown command "+e.data.cmd);err(e.data)}}catch(ex){err("worker.js onmessage() captured an uncaught exception: "+ex);if(ex&&ex.stack)err(ex.stack);throw ex}}; diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-av1-wasm.js b/media/player/videojs/ogvjs/ogv-decoder-video-av1-wasm.js new file mode 100644 index 00000000000..cb55fadb120 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-video-av1-wasm.js @@ -0,0 +1,44 @@ + +var OGVDecoderVideoAV1W = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDecoderVideoAV1W) { + OGVDecoderVideoAV1W = OGVDecoderVideoAV1W || {}; + + +var a;a||(a=typeof OGVDecoderVideoAV1W !== 'undefined' ? OGVDecoderVideoAV1W : {});var aa,ba;a.ready=new Promise(function(b,c){aa=b;ba=c});var ca=a,q={},r;for(r in a)a.hasOwnProperty(r)&&(q[r]=a[r]);var da="object"===typeof window,y="function"===typeof importScripts,D="",ea,H,I,J,K; +if("object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)D=y?require("path").dirname(D)+"/":__dirname+"/",ea=function(b,c){J||(J=require("fs"));K||(K=require("path"));b=K.normalize(b);return J.readFileSync(b,c?null:"utf8")},I=function(b){b=ea(b,!0);b.buffer||(b=new Uint8Array(b));b.buffer||L("Assertion failed: undefined");return b},H=function(b,c,e){J||(J=require("fs"));K||(K=require("path"));b=K.normalize(b);J.readFile(b,function(d,f){d?e(d):c(f.buffer)})}, +1>>=0;if(2147483648=e;e*=2){var d=c*(1+.2/e);d=Math.min(d,b+100663296);d=Math.max(b,d);0>>16);la();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},e:function(){return 0},b:function(){},a:function(b,c,e,d){for(var f=0,g=0;g>2],u=S[c+(8*g+4)>> +2],A=0;A=t);)++w;if(16h?t+=String.fromCharCode(h):(h-=65536,t+=String.fromCharCode(55296|h>>10,56320|h&1023))}}else t+=String.fromCharCode(h)}l=t}n(l); +x.length=0}else x.push(n)}f+=u}S[d>>2]=f;return 0},g:function(b,c,e,d,f,g,z,u,A,n,x,l,p,t,w,h){function E(F,v,B,ha,xa,ya,La,Ma,X){if(Ia){var k=new Float64Array(F.buffer);v=new Float64Array(Q,v,B*ha>>3);k.set(v)}else F.set(new Uint8Array(Q,v,B*ha));var C;for(v=C=0;v=d||(Y&&a._free(Y),Oa=d,Y=a._malloc(Oa));var f=Y;(new Uint8Array(O.buffer,f,d)).set(new Uint8Array(b));return a._ogv_video_decoder_process_header(f,d)});c(e)};a.A=[]; +a.processFrame=function(b,c){function e(u){a._free(g);c(u)}var d=a._ogv_video_decoder_async(),f=b.byteLength,g=a._malloc(f);d&&a.A.push(e);var z=Pa(function(){(new Uint8Array(O.buffer,g,f)).set(new Uint8Array(b));return a._ogv_video_decoder_process_frame(g,f)});d||e(z)};a.close=function(){};a.sync=function(){a._ogv_video_decoder_async()&&(a.A.push(function(){}),Pa(function(){a._ogv_video_decoder_process_frame(0,0)}))};a.recycledFrames=[]; +a.recycleFrame=function(b){var c=a.recycledFrames;c.push(b);16x85Hj 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%0A&_4DNX+So@^ksd$ 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�wE!AmcvWy0%!i;~RwjfkPK4X{Sx&T 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 wGG@RyjxY?gQ0|v>5yaCBklyLCsftG%;`-%an2g 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 I-o}pp4~t8i0{{R3 literal 0 HcmV?d00001 diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-theora-wasm.js b/media/player/videojs/ogvjs/ogv-decoder-video-theora-wasm.js new file mode 100644 index 00000000000..6dece9fc3cd --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-video-theora-wasm.js @@ -0,0 +1,43 @@ + +var OGVDecoderVideoTheoraW = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDecoderVideoTheoraW) { + OGVDecoderVideoTheoraW = OGVDecoderVideoTheoraW || {}; + + +var a;a||(a=typeof OGVDecoderVideoTheoraW !== 'undefined' ? OGVDecoderVideoTheoraW : {});var aa,l;a.ready=new Promise(function(b,c){aa=b;l=c});var fa=a,m={},r;for(r in a)a.hasOwnProperty(r)&&(m[r]=a[r]);var ha="object"===typeof window,w="function"===typeof importScripts,A="",B,C,E,F,G; +if("object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)A=w?require("path").dirname(A)+"/":__dirname+"/",B=function(b,c){F||(F=require("fs"));G||(G=require("path"));b=G.normalize(b);return F.readFileSync(b,c?null:"utf8")},E=function(b){b=B(b,!0);b.buffer||(b=new Uint8Array(b));b.buffer||H("Assertion failed: undefined");return b},C=function(b,c,e){F||(F=require("fs"));G||(G=require("path"));b=G.normalize(b);F.readFile(b,function(d,f){d?e(d):c(f.buffer)})}, +1>>=0;if(2147483648=e;e*=2){var d=c*(1+.2/e);d=Math.min(d,b+100663296);d=Math.max(b,d);0>>16);ka();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},c:function(b,c,e,d,f,g,t,p,D,q,x,K,P,Q,ba,ca){function da(y,n,u,ea,ua,va,Ha,Ia,R){if(Fa){var h=new Float64Array(y.buffer);n=new Float64Array(wa,n,u*ea>> +3);h.set(n)}else y.set(new Uint8Array(wa,n,u*ea));var v;for(n=v=0;n=d||(X&&a._free(X),La=d,X=a._malloc(La));var f=X;(new Uint8Array(M.buffer,f,d)).set(new Uint8Array(b));return a._ogv_video_decoder_process_header(f,d)});c(e)};a.s=[]; +a.processFrame=function(b,c){function e(p){a._free(g);c(p)}var d=a._ogv_video_decoder_async(),f=b.byteLength,g=a._malloc(f);d&&a.s.push(e);var t=Z(function(){(new Uint8Array(M.buffer,g,f)).set(new Uint8Array(b));return a._ogv_video_decoder_process_frame(g,f)});d||e(t)};a.close=function(){};a.sync=function(){a._ogv_video_decoder_async()&&(a.s.push(function(){}),Z(function(){a._ogv_video_decoder_process_frame(0,0)}))};a.recycledFrames=[]; +a.recycleFrame=function(b){var c=a.recycledFrames;c.push(b);16r+ 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 z)uMXD6y1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("unhandledRejection",abort);quit_=function(status,toThrow){if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"};var nodeWorkerThreads;try{nodeWorkerThreads=require("worker_threads")}catch(e){console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}if(ENVIRONMENT_IS_NODE){read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})}}else{read_=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}if(ENVIRONMENT_IS_NODE){if(typeof performance==="undefined"){global.performance=require("perf_hooks").performance}}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var tempRet0=0;var setTempRet0=function(value){tempRet0=value};var getTempRet0=function(){return tempRet0};var Atomics_load=Atomics.load;var Atomics_store=Atomics.store;var Atomics_compareExchange=Atomics.compareExchange;var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!=="object"){abort("no native wasm support detected")}var wasmMemory;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function TextDecoderWrapper(encoding){var textDecoder=new TextDecoder(encoding);this.decode=function(data){if(data.buffer instanceof SharedArrayBuffer){data=new Uint8Array(data)}return textDecoder.decode.call(textDecoder,data)}}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoderWrapper("utf8"):undefined;function UTF8ArrayToString(heap,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heap[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(GROWABLE_HEAP_U8(),ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,GROWABLE_HEAP_U8(),outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoderWrapper("utf-16le"):undefined;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;if(ENVIRONMENT_IS_PTHREAD){buffer=Module["buffer"]}function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module["wasmMemory"];buffer=Module["buffer"]}else{if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":1073741824/65536,"shared":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag");if(ENVIRONMENT_IS_NODE){console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)")}throw Error("bad memory")}}}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATINIT__)}function exitRuntime(){if(ENVIRONMENT_IS_PTHREAD)return;runtimeExited=true}function postRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(ENVIRONMENT_IS_PTHREAD)console.error("Pthread aborting at "+(new Error).stack);what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="ogv-decoder-video-vp8-mt-wasm.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["Q"];addOnInit(Module["asm"]["K"]);PThread.tlsInitFunctions.push(Module["asm"]["T"]);wasmModule=module;if(!ENVIRONMENT_IS_PTHREAD){var numWorkersToLoad=PThread.unusedWorkers.length;PThread.unusedWorkers.forEach(function(w){PThread.loadWasmModuleToWorker(w,function(){if(!--numWorkersToLoad)removeRunDependency("wasm-instantiate")})})}}if(!ENVIRONMENT_IS_PTHREAD){addRunDependency("wasm-instantiate")}function receiveInstantiationResult(result){receiveInstance(result["instance"],result["module"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){var result=WebAssembly.instantiate(binary,info);return result}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var ASM_CONSTS={9132:function(){throw"Canceled!"},9150:function($0,$1){setTimeout(function(){__emscripten_do_dispatch_to_thread($0,$1)},0)}};function initPthreadsJS(){PThread.initRuntime()}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};function _emscripten_futex_wake(addr,count){if(addr<=0||addr>GROWABLE_HEAP_I8().length||addr&3!=0||count<0)return-28;if(count==0)return 0;if(count>=2147483647)count=Infinity;var mainThreadWaitAddress=Atomics.load(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2);var mainThreadWoken=0;if(mainThreadWaitAddress==addr){var loadedAddr=Atomics.compareExchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,mainThreadWaitAddress,0);if(loadedAddr==mainThreadWaitAddress){--count;mainThreadWoken=1;if(count<=0)return 1}}var ret=Atomics.notify(GROWABLE_HEAP_I32(),addr>>2,count);if(ret>=0)return ret+mainThreadWoken;throw"Atomics.notify returned an unexpected value "+ret}Module["_emscripten_futex_wake"]=_emscripten_futex_wake;function killThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! killThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in killThread!";GROWABLE_HEAP_I32()[pthread_ptr+12>>2]=0;var pthread=PThread.pthreads[pthread_ptr];pthread.worker.terminate();PThread.freeThreadData(pthread);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(pthread.worker),1);pthread.worker.pthread=undefined}function cancelThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! cancelThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in cancelThread!";var pthread=PThread.pthreads[pthread_ptr];pthread.worker.postMessage({"cmd":"cancel"})}function cleanupThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! cleanupThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in cleanupThread!";var pthread=PThread.pthreads[pthread_ptr];if(pthread){GROWABLE_HEAP_I32()[pthread_ptr+12>>2]=0;var worker=pthread.worker;PThread.returnWorkerToPool(worker)}}var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],initMainThreadBlock:function(){var pthreadPoolSize=1;for(var i=0;i>2]=tb;var headPtr=tb+152;GROWABLE_HEAP_I32()[headPtr>>2]=headPtr;var tlsMemory=_malloc(512);for(var i=0;i<128;++i)GROWABLE_HEAP_U32()[tlsMemory/4+i]=0;Atomics.store(GROWABLE_HEAP_U32(),tb+100>>2,tlsMemory);Atomics.store(GROWABLE_HEAP_U32(),tb+40>>2,tb);__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1);_emscripten_register_main_browser_thread_id(tb)},initWorker:function(){},pthreads:{},threadExitHandlers:[],runExitHandlers:function(){while(PThread.threadExitHandlers.length>0){PThread.threadExitHandlers.pop()()}___pthread_tsd_run_dtors()},runExitHandlersAndDeinitThread:function(tb,exitCode){Atomics.store(GROWABLE_HEAP_U32(),tb+56>>2,1);Atomics.store(GROWABLE_HEAP_U32(),tb+60>>2,0);PThread.runExitHandlers();Atomics.store(GROWABLE_HEAP_U32(),tb+4>>2,exitCode);Atomics.store(GROWABLE_HEAP_U32(),tb+0>>2,1);_emscripten_futex_wake(tb+0,2147483647);__emscripten_thread_init(0,0,0)},setExitStatus:function(status){EXITSTATUS=status},threadExit:function(exitCode){var tb=_pthread_self();if(tb){PThread.runExitHandlersAndDeinitThread(tb,exitCode);if(ENVIRONMENT_IS_PTHREAD){postMessage({"cmd":"exit"})}}},threadCancel:function(){PThread.runExitHandlersAndDeinitThread(_pthread_self(),-1);postMessage({"cmd":"cancelDone"})},terminateAllThreads:function(){for(var t in PThread.pthreads){var pthread=PThread.pthreads[t];if(pthread&&pthread.worker){PThread.returnWorkerToPool(pthread.worker)}}PThread.pthreads={};for(var i=0;i>2];GROWABLE_HEAP_I32()[pthread.threadInfoStruct+100>>2]=0;_free(tlsMemory);_free(pthread.threadInfoStruct)}pthread.threadInfoStruct=0;if(pthread.allocatedOwnStack&&pthread.stackBase)_free(pthread.stackBase);pthread.stackBase=0;if(pthread.worker)pthread.worker.pthread=null},returnWorkerToPool:function(worker){PThread.runWithoutMainThreadQueuedCalls(function(){delete PThread.pthreads[worker.pthread.threadInfoStruct];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);PThread.freeThreadData(worker.pthread);worker.pthread=undefined})},runWithoutMainThreadQueuedCalls:function(func){GROWABLE_HEAP_I32()[__emscripten_allow_main_runtime_queued_calls>>2]=0;try{func()}finally{GROWABLE_HEAP_I32()[__emscripten_allow_main_runtime_queued_calls>>2]=1}},receiveObjectTransfer:function(data){},threadInit:function(){for(var i in PThread.tlsInitFunctions){PThread.tlsInitFunctions[i]()}},loadWasmModuleToWorker:function(worker,onFinishedLoading){worker.onmessage=function(e){var d=e["data"];var cmd=d["cmd"];if(worker.pthread)PThread.currentProxiedOperationCallerThread=worker.pthread.threadInfoStruct;if(d["targetThread"]&&d["targetThread"]!=_pthread_self()){var thread=PThread.pthreads[d.targetThread];if(thread){thread.worker.postMessage(e.data,d["transferList"])}else{console.error('Internal error! Worker sent a message "'+cmd+'" to target pthread '+d["targetThread"]+", but that thread no longer exists!")}PThread.currentProxiedOperationCallerThread=undefined;return}if(cmd==="processQueuedMainThreadWork"){_emscripten_main_thread_process_queued_calls()}else if(cmd==="spawnThread"){spawnThread(e.data)}else if(cmd==="cleanupThread"){cleanupThread(d["thread"])}else if(cmd==="killThread"){killThread(d["thread"])}else if(cmd==="cancelThread"){cancelThread(d["thread"])}else if(cmd==="loaded"){worker.loaded=true;if(onFinishedLoading)onFinishedLoading(worker);if(worker.runPthread){worker.runPthread();delete worker.runPthread}}else if(cmd==="print"){out("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="printErr"){err("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="alert"){alert("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="exit"){var detached=worker.pthread&&Atomics.load(GROWABLE_HEAP_U32(),worker.pthread.threadInfoStruct+64>>2);if(detached){PThread.returnWorkerToPool(worker)}}else if(cmd==="exitProcess"){try{exit(d["returnCode"])}catch(e){if(e instanceof ExitStatus)return;throw e}}else if(cmd==="cancelDone"){PThread.returnWorkerToPool(worker)}else if(cmd==="objectTransfer"){PThread.receiveObjectTransfer(e.data)}else if(e.data.target==="setimmediate"){worker.postMessage(e.data)}else{err("worker sent an unknown command "+cmd)}PThread.currentProxiedOperationCallerThread=undefined};worker.onerror=function(e){err("pthread sent an error! "+e.filename+":"+e.lineno+": "+e.message)};if(ENVIRONMENT_IS_NODE){worker.on("message",function(data){worker.onmessage({data:data})});worker.on("error",function(data){worker.onerror(data)});worker.on("exit",function(data){})}worker.postMessage({"cmd":"load","urlOrBlob":Module["mainScriptUrlOrBlob"]||_scriptDir,"wasmMemory":wasmMemory,"wasmModule":wasmModule})},allocateUnusedWorker:function(){var pthreadMainJs=locateFile("ogv-decoder-video-vp8-mt-wasm.worker.js");PThread.unusedWorkers.push(new Worker(pthreadMainJs))},getNewWorker:function(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()},busySpinWait:function(msecs){var t=performance.now()+msecs;while(performance.now()>=2;while(ch=GROWABLE_HEAP_U8()[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?GROWABLE_HEAP_F64()[buf++>>1]:GROWABLE_HEAP_I32()[buf]);++buf}return readAsmConstArgsArray}function _emscripten_asm_const_int(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}function _emscripten_check_blocking_allowed(){if(ENVIRONMENT_IS_NODE)return;if(ENVIRONMENT_IS_WORKER)return;warnOnce("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")}function _emscripten_conditional_set_current_thread_status(expectedStatus,newStatus){}function _emscripten_futex_wait(addr,val,timeout){if(addr<=0||addr>GROWABLE_HEAP_I8().length||addr&3!=0)return-28;if(!ENVIRONMENT_IS_WEB){var ret=Atomics.wait(GROWABLE_HEAP_I32(),addr>>2,val,timeout);if(ret==="timed-out")return-73;if(ret==="not-equal")return-6;if(ret==="ok")return 0;throw"Atomics.wait returned an unexpected value "+ret}else{if(Atomics.load(GROWABLE_HEAP_I32(),addr>>2)!=val){return-6}var tNow=performance.now();var tEnd=tNow+timeout;var lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,addr);while(1){tNow=performance.now();if(tNow>tEnd){lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,0);return-73}lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,0);if(lastAddr==0){break}_emscripten_main_thread_process_queued_calls();if(Atomics.load(GROWABLE_HEAP_I32(),addr>>2)!=val){return-6}lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,addr)}return 0}}function _emscripten_get_heap_max(){return 1073741824}function _emscripten_memcpy_big(dest,src,num){GROWABLE_HEAP_U8().copyWithin(dest,src,src+num)}function _emscripten_num_logical_cores(){if(ENVIRONMENT_IS_NODE)return require("os").cpus().length;return navigator["hardwareConcurrency"]}function _emscripten_proxy_to_main_thread_js(index,sync){var numCallArgs=arguments.length-2;var stack=stackSave();var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>3;for(var i=0;i>3;for(var i=0;i>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=GROWABLE_HEAP_U8().length;requestedSize=requestedSize>>>0;if(requestedSize<=oldSize){return false}var maxHeapSize=1073741824;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var JSEvents={inEventHandler:0,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence>2]=eventTypeId;GROWABLE_HEAP_I32()[varargs+4>>2]=eventData;GROWABLE_HEAP_I32()[varargs+8>>2]=userData;__emscripten_call_on_thread(0,targetThread,637534208,eventHandlerFunc,eventData,varargs);stackRestore(stackTop)},getTargetThreadForEventCallback:function(targetThread){switch(targetThread){case 1:return 0;case 2:return PThread.currentProxiedOperationCallerThread;default:return targetThread}},getNodeNameForTarget:function(target){if(!target)return"";if(target==window)return"#window";if(target==screen)return"#screen";return target&&target.nodeName?target.nodeName:""},fullscreenEnabled:function(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}};function stringToNewUTF8(jsString){var length=lengthBytesUTF8(jsString)+1;var cString=_malloc(length);stringToUTF8(jsString,cString,length);return cString}function _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height){var stackTop=stackSave();var varargs=stackAlloc(12);var targetCanvasPtr=0;if(targetCanvas){targetCanvasPtr=stringToNewUTF8(targetCanvas)}GROWABLE_HEAP_I32()[varargs>>2]=targetCanvasPtr;GROWABLE_HEAP_I32()[varargs+4>>2]=width;GROWABLE_HEAP_I32()[varargs+8>>2]=height;__emscripten_call_on_thread(0,targetThread,657457152,0,targetCanvasPtr,varargs);stackRestore(stackTop)}function _emscripten_set_offscreencanvas_size_on_target_thread(targetThread,targetCanvas,width,height){targetCanvas=targetCanvas?UTF8ToString(targetCanvas):"";_emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height)}function maybeCStringToJsString(cString){return cString>2?UTF8ToString(cString):cString}var specialHTMLTargets=[0,typeof document!=="undefined"?document:0,typeof window!=="undefined"?window:0];function findEventTarget(target){target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!=="undefined"?document.querySelector(target):undefined);return domElement}function findCanvasEventTarget(target){return findEventTarget(target)}function _emscripten_set_canvas_element_size_calling_thread(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;if(canvas.canvasSharedPtr){GROWABLE_HEAP_I32()[canvas.canvasSharedPtr>>2]=width;GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+4>>2]=height}if(canvas.offscreenCanvas||!canvas.controlTransferredOffscreen){if(canvas.offscreenCanvas)canvas=canvas.offscreenCanvas;var autoResizeViewport=false;if(canvas.GLctxObject&&canvas.GLctxObject.GLctx){var prevViewport=canvas.GLctxObject.GLctx.getParameter(2978);autoResizeViewport=prevViewport[0]===0&&prevViewport[1]===0&&prevViewport[2]===canvas.width&&prevViewport[3]===canvas.height}canvas.width=width;canvas.height=height;if(autoResizeViewport){canvas.GLctxObject.GLctx.viewport(0,0,width,height)}}else if(canvas.canvasSharedPtr){var targetThread=GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+8>>2];_emscripten_set_offscreencanvas_size_on_target_thread(targetThread,target,width,height);return 1}else{return-4}return 0}function _emscripten_set_canvas_element_size_main_thread(target,width,height){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(1,1,target,width,height);return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}function _emscripten_set_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(canvas){return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}else{return _emscripten_set_canvas_element_size_main_thread(target,width,height)}}function _emscripten_set_current_thread_status(newStatus){}function __webgl_enable_ANGLE_instanced_arrays(ctx){var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=function(index,divisor){ext["vertexAttribDivisorANGLE"](index,divisor)};ctx["drawArraysInstanced"]=function(mode,first,count,primcount){ext["drawArraysInstancedANGLE"](mode,first,count,primcount)};ctx["drawElementsInstanced"]=function(mode,count,type,indices,primcount){ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount)};return 1}}function __webgl_enable_OES_vertex_array_object(ctx){var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=function(){return ext["createVertexArrayOES"]()};ctx["deleteVertexArray"]=function(vao){ext["deleteVertexArrayOES"](vao)};ctx["bindVertexArray"]=function(vao){ext["bindVertexArrayOES"](vao)};ctx["isVertexArray"]=function(vao){return ext["isVertexArrayOES"](vao)};return 1}}function __webgl_enable_WEBGL_draw_buffers(ctx){var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=function(n,bufs){ext["drawBuffersWEBGL"](n,bufs)};return 1}}function __webgl_enable_WEBGL_multi_draw(ctx){return!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"))}var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:{},offscreenCanvases:{},queries:[],stringCache:{},unpackAlignment:4,recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i>2]:-1;source+=UTF8ToString(GROWABLE_HEAP_I32()[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;canvas.getContext=function(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}}var ctx=canvas.getContext("webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=_malloc(8);GROWABLE_HEAP_I32()[handle+4>>2]=_pthread_self();var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault==="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents==="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;_free(GL.contexts[contextHandle].handle);GL.contexts[contextHandle]=null},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;__webgl_enable_ANGLE_instanced_arrays(GLctx);__webgl_enable_OES_vertex_array_object(GLctx);__webgl_enable_WEBGL_draw_buffers(GLctx);{GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}__webgl_enable_WEBGL_multi_draw(GLctx);var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};var __emscripten_webgl_power_preferences=["default","low-power","high-performance"];function _emscripten_webgl_do_create_context(target,attributes){var a=attributes>>2;var powerPreference=GROWABLE_HEAP_I32()[a+(24>>2)];var contextAttributes={"alpha":!!GROWABLE_HEAP_I32()[a+(0>>2)],"depth":!!GROWABLE_HEAP_I32()[a+(4>>2)],"stencil":!!GROWABLE_HEAP_I32()[a+(8>>2)],"antialias":!!GROWABLE_HEAP_I32()[a+(12>>2)],"premultipliedAlpha":!!GROWABLE_HEAP_I32()[a+(16>>2)],"preserveDrawingBuffer":!!GROWABLE_HEAP_I32()[a+(20>>2)],"powerPreference":__emscripten_webgl_power_preferences[powerPreference],"failIfMajorPerformanceCaveat":!!GROWABLE_HEAP_I32()[a+(28>>2)],majorVersion:GROWABLE_HEAP_I32()[a+(32>>2)],minorVersion:GROWABLE_HEAP_I32()[a+(36>>2)],enableExtensionsByDefault:GROWABLE_HEAP_I32()[a+(40>>2)],explicitSwapControl:GROWABLE_HEAP_I32()[a+(44>>2)],proxyContextToMainThread:GROWABLE_HEAP_I32()[a+(48>>2)],renderViaOffscreenBackBuffer:GROWABLE_HEAP_I32()[a+(52>>2)]};var canvas=findCanvasEventTarget(target);if(!canvas){return 0}if(contextAttributes.explicitSwapControl){return 0}var contextHandle=GL.createContext(canvas,contextAttributes);return contextHandle}function _emscripten_webgl_create_context(a0,a1){return _emscripten_webgl_do_create_context(a0,a1)}function _getTempRet0(){return getTempRet0()}function _ogvjs_callback_async_complete(ret,cpuTime){var callback=Module.callbacks.shift();Module["cpuTime"]+=cpuTime;callback(ret);return}function _ogvjs_callback_frame(bufferY,strideY,bufferCb,strideCb,bufferCr,strideCr,width,height,chromaWidth,chromaHeight,picWidth,picHeight,picX,picY,displayWidth,displayHeight){var heap=wasmMemory.buffer;var format=Module["videoFormat"];function copyAndTrim(arr,buffer,stride,height,picX,picY,picWidth,picHeight,fill){if(trident){var dest64=new Float64Array(arr.buffer);var src64=new Float64Array(heap,buffer,stride*height>>3);dest64.set(src64)}else{arr.set(new Uint8Array(heap,buffer,stride*height))}var x,y,ptr;for(ptr=0,y=0;y0){var next=recycled.shift(),format=next["format"];if(format["width"]===width&&format["height"]===height&&format["chromaWidth"]===chromaWidth&&format["chromaHeight"]===chromaHeight&&format["cropLeft"]===picX&&format["cropTop"]===picY&&format["cropWidth"]===picWidth&&format["cropHeight"]===picHeight&&format["displayWidth"]===displayWidth&&format["displayHeight"]===displayHeight&&next["y"]["bytes"].length===lenY&&next["u"]["bytes"].length===lenCb&&next["v"]["bytes"].length===lenCr){frame=next;break}}if(!frame){frame={"format":{"width":width,"height":height,"chromaWidth":chromaWidth,"chromaHeight":chromaHeight,"cropLeft":picX,"cropTop":picY,"cropWidth":picWidth,"cropHeight":picHeight,"displayWidth":displayWidth,"displayHeight":displayHeight},"y":{"bytes":new Uint8Array(lenY),"stride":strideY},"u":{"bytes":new Uint8Array(lenCb),"stride":strideCb},"v":{"bytes":new Uint8Array(lenCr),"stride":strideCr}}}copyAndTrim(frame["y"]["bytes"],bufferY,strideY,height,picX,picY,picWidth,picHeight,0);copyAndTrim(frame["u"]["bytes"],bufferCb,strideCb,chromaHeight,chromaPicX,chromaPicY,chromaPicWidth,chromaPicHeight,128);copyAndTrim(frame["v"]["bytes"],bufferCr,strideCr,chromaHeight,chromaPicX,chromaPicY,chromaPicWidth,chromaPicHeight,128);Module["frameBuffer"]=frame}function spawnThread(threadParams){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! spawnThread() can only ever be called from main application thread!";var worker=PThread.getNewWorker();if(!worker){return 6}if(worker.pthread!==undefined)throw"Internal error!";if(!threadParams.pthread_ptr)throw"Internal error, no pthread ptr!";PThread.runningWorkers.push(worker);var tlsMemory=_malloc(128*4);for(var i=0;i<128;++i){GROWABLE_HEAP_I32()[tlsMemory+i*4>>2]=0}var stackHigh=threadParams.stackBase+threadParams.stackSize;var pthread=PThread.pthreads[threadParams.pthread_ptr]={worker:worker,stackBase:threadParams.stackBase,stackSize:threadParams.stackSize,allocatedOwnStack:threadParams.allocatedOwnStack,threadInfoStruct:threadParams.pthread_ptr};var tis=pthread.threadInfoStruct>>2;Atomics.store(GROWABLE_HEAP_U32(),tis+(64>>2),threadParams.detached);Atomics.store(GROWABLE_HEAP_U32(),tis+(100>>2),tlsMemory);Atomics.store(GROWABLE_HEAP_U32(),tis+(40>>2),pthread.threadInfoStruct);Atomics.store(GROWABLE_HEAP_U32(),tis+(80>>2),threadParams.stackSize);Atomics.store(GROWABLE_HEAP_U32(),tis+(76>>2),stackHigh);Atomics.store(GROWABLE_HEAP_U32(),tis+(104>>2),threadParams.stackSize);Atomics.store(GROWABLE_HEAP_U32(),tis+(104+8>>2),stackHigh);Atomics.store(GROWABLE_HEAP_U32(),tis+(104+12>>2),threadParams.detached);var global_libc=_emscripten_get_global_libc();var global_locale=global_libc+40;Atomics.store(GROWABLE_HEAP_U32(),tis+(172>>2),global_locale);worker.pthread=pthread;var msg={"cmd":"run","start_routine":threadParams.startRoutine,"arg":threadParams.arg,"threadInfoStruct":threadParams.pthread_ptr,"stackBase":threadParams.stackBase,"stackSize":threadParams.stackSize};worker.runPthread=function(){msg.time=performance.now();worker.postMessage(msg,threadParams.transferList)};if(worker.loaded){worker.runPthread();delete worker.runPthread}return 0}function _pthread_create(pthread_ptr,attr,start_routine,arg){if(typeof SharedArrayBuffer==="undefined"){err("Current environment does not support SharedArrayBuffer, pthreads are not available!");return 6}if(!pthread_ptr){err("pthread_create called with a null thread pointer!");return 28}var transferList=[];var error=0;if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return _emscripten_sync_run_in_main_thread_4(687865856,pthread_ptr,attr,start_routine,arg)}if(error)return error;var stackSize=0;var stackBase=0;var detached=0;if(attr&&attr!=-1){stackSize=GROWABLE_HEAP_I32()[attr>>2];stackSize+=81920;stackBase=GROWABLE_HEAP_I32()[attr+8>>2];detached=GROWABLE_HEAP_I32()[attr+12>>2]!==0}else{stackSize=2097152}var allocatedOwnStack=stackBase==0;if(allocatedOwnStack){stackBase=_memalign(16,stackSize)}else{stackBase-=stackSize;assert(stackBase>0)}var threadInfoStruct=_malloc(228);for(var i=0;i<228>>2;++i)GROWABLE_HEAP_U32()[(threadInfoStruct>>2)+i]=0;GROWABLE_HEAP_I32()[pthread_ptr>>2]=threadInfoStruct;GROWABLE_HEAP_I32()[threadInfoStruct+12>>2]=threadInfoStruct;var headPtr=threadInfoStruct+152;GROWABLE_HEAP_I32()[headPtr>>2]=headPtr;var threadParams={stackBase:stackBase,stackSize:stackSize,allocatedOwnStack:allocatedOwnStack,detached:detached,startRoutine:start_routine,pthread_ptr:threadInfoStruct,arg:arg,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd="spawnThread";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}function _exit(status){exit(status)}function _pthread_exit(status){if(!ENVIRONMENT_IS_PTHREAD)_exit(status);else PThread.threadExit(status);throw"unwind"}function __pthread_testcancel_js(){if(!ENVIRONMENT_IS_PTHREAD)return;var tb=_pthread_self();if(!tb)return;var cancelDisabled=Atomics.load(GROWABLE_HEAP_U32(),tb+56>>2);if(cancelDisabled)return;var canceled=Atomics.load(GROWABLE_HEAP_U32(),tb+0>>2);if(canceled==2)throw"Canceled!"}function __emscripten_do_pthread_join(thread,status,block){if(!thread){err("pthread_join attempted on a null thread pointer!");return ERRNO_CODES.ESRCH}if(ENVIRONMENT_IS_PTHREAD&&_pthread_self()==thread){err("PThread "+thread+" is attempting to join to itself!");return ERRNO_CODES.EDEADLK}else if(!ENVIRONMENT_IS_PTHREAD&&_emscripten_main_browser_thread_id()==thread){err("Main thread "+thread+" is attempting to join to itself!");return ERRNO_CODES.EDEADLK}var self=GROWABLE_HEAP_I32()[thread+12>>2];if(self!==thread){err("pthread_join attempted on thread "+thread+", which does not point to a valid thread, or does not exist anymore!");return ERRNO_CODES.ESRCH}var detached=Atomics.load(GROWABLE_HEAP_U32(),thread+64>>2);if(detached){err("Attempted to join thread "+thread+", which was already detached!");return ERRNO_CODES.EINVAL}if(block){_emscripten_check_blocking_allowed()}for(;;){var threadStatus=Atomics.load(GROWABLE_HEAP_U32(),thread+0>>2);if(threadStatus==1){var threadExitCode=Atomics.load(GROWABLE_HEAP_U32(),thread+4>>2);if(status)GROWABLE_HEAP_I32()[status>>2]=threadExitCode;Atomics.store(GROWABLE_HEAP_U32(),thread+64>>2,1);if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({"cmd":"cleanupThread","thread":thread});return 0}if(!block){return ERRNO_CODES.EBUSY}__pthread_testcancel_js();if(!ENVIRONMENT_IS_PTHREAD)_emscripten_main_thread_process_queued_calls();_emscripten_futex_wait(thread+0,threadStatus,ENVIRONMENT_IS_PTHREAD?100:1)}}function _pthread_join(thread,status){return __emscripten_do_pthread_join(thread,status,true)}function _setTempRet0(val){setTempRet0(val)}if(!ENVIRONMENT_IS_PTHREAD)PThread.initMainThreadBlock();var GLctx;var proxiedFunctionTable=[null,_emscripten_set_canvas_element_size_main_thread];var asmLibraryArg={"f":___assert_fail,"r":___cxa_thread_atexit,"F":__emscripten_notify_thread_queue,"z":__emscripten_throw_longjmp,"J":_abort,"q":_emscripten_asm_const_int,"A":_emscripten_check_blocking_allowed,"p":_emscripten_conditional_set_current_thread_status,"h":_emscripten_futex_wait,"g":_emscripten_futex_wake,"B":_emscripten_get_heap_max,"d":_emscripten_get_now,"x":_emscripten_memcpy_big,"o":_emscripten_num_logical_cores,"C":_emscripten_receive_on_main_thread_js,"y":_emscripten_resize_heap,"D":_emscripten_set_canvas_element_size,"n":_emscripten_set_current_thread_status,"E":_emscripten_webgl_create_context,"b":_getTempRet0,"w":initPthreadsJS,"H":invoke_i,"i":invoke_ii,"l":invoke_iii,"I":invoke_iiii,"v":invoke_iiiij,"e":invoke_vi,"k":invoke_viii,"j":invoke_viiii,"a":wasmMemory||Module["wasmMemory"],"s":_ogvjs_callback_async_complete,"t":_ogvjs_callback_frame,"m":_pthread_create,"u":_pthread_exit,"G":_pthread_join,"c":_setTempRet0};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["K"]).apply(null,arguments)};var _ogv_video_decoder_init=Module["_ogv_video_decoder_init"]=function(){return(_ogv_video_decoder_init=Module["_ogv_video_decoder_init"]=Module["asm"]["L"]).apply(null,arguments)};var _ogv_video_decoder_async=Module["_ogv_video_decoder_async"]=function(){return(_ogv_video_decoder_async=Module["_ogv_video_decoder_async"]=Module["asm"]["M"]).apply(null,arguments)};var _ogv_video_decoder_destroy=Module["_ogv_video_decoder_destroy"]=function(){return(_ogv_video_decoder_destroy=Module["_ogv_video_decoder_destroy"]=Module["asm"]["N"]).apply(null,arguments)};var _ogv_video_decoder_process_header=Module["_ogv_video_decoder_process_header"]=function(){return(_ogv_video_decoder_process_header=Module["_ogv_video_decoder_process_header"]=Module["asm"]["O"]).apply(null,arguments)};var _ogv_video_decoder_process_frame=Module["_ogv_video_decoder_process_frame"]=function(){return(_ogv_video_decoder_process_frame=Module["_ogv_video_decoder_process_frame"]=Module["asm"]["P"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["R"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["S"]).apply(null,arguments)};var _emscripten_tls_init=Module["_emscripten_tls_init"]=function(){return(_emscripten_tls_init=Module["_emscripten_tls_init"]=Module["asm"]["T"]).apply(null,arguments)};var _emscripten_current_thread_process_queued_calls=Module["_emscripten_current_thread_process_queued_calls"]=function(){return(_emscripten_current_thread_process_queued_calls=Module["_emscripten_current_thread_process_queued_calls"]=Module["asm"]["U"]).apply(null,arguments)};var _emscripten_register_main_browser_thread_id=Module["_emscripten_register_main_browser_thread_id"]=function(){return(_emscripten_register_main_browser_thread_id=Module["_emscripten_register_main_browser_thread_id"]=Module["asm"]["V"]).apply(null,arguments)};var _emscripten_main_browser_thread_id=Module["_emscripten_main_browser_thread_id"]=function(){return(_emscripten_main_browser_thread_id=Module["_emscripten_main_browser_thread_id"]=Module["asm"]["W"]).apply(null,arguments)};var __emscripten_do_dispatch_to_thread=Module["__emscripten_do_dispatch_to_thread"]=function(){return(__emscripten_do_dispatch_to_thread=Module["__emscripten_do_dispatch_to_thread"]=Module["asm"]["X"]).apply(null,arguments)};var _emscripten_sync_run_in_main_thread_4=Module["_emscripten_sync_run_in_main_thread_4"]=function(){return(_emscripten_sync_run_in_main_thread_4=Module["_emscripten_sync_run_in_main_thread_4"]=Module["asm"]["Y"]).apply(null,arguments)};var _emscripten_main_thread_process_queued_calls=Module["_emscripten_main_thread_process_queued_calls"]=function(){return(_emscripten_main_thread_process_queued_calls=Module["_emscripten_main_thread_process_queued_calls"]=Module["asm"]["Z"]).apply(null,arguments)};var _pthread_self=Module["_pthread_self"]=function(){return(_pthread_self=Module["_pthread_self"]=Module["asm"]["_"]).apply(null,arguments)};var _emscripten_run_in_main_runtime_thread_js=Module["_emscripten_run_in_main_runtime_thread_js"]=function(){return(_emscripten_run_in_main_runtime_thread_js=Module["_emscripten_run_in_main_runtime_thread_js"]=Module["asm"]["$"]).apply(null,arguments)};var __emscripten_call_on_thread=Module["__emscripten_call_on_thread"]=function(){return(__emscripten_call_on_thread=Module["__emscripten_call_on_thread"]=Module["asm"]["aa"]).apply(null,arguments)};var __emscripten_thread_init=Module["__emscripten_thread_init"]=function(){return(__emscripten_thread_init=Module["__emscripten_thread_init"]=Module["asm"]["ba"]).apply(null,arguments)};var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=function(){return(_emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=Module["asm"]["ca"]).apply(null,arguments)};var ___pthread_tsd_run_dtors=Module["___pthread_tsd_run_dtors"]=function(){return(___pthread_tsd_run_dtors=Module["___pthread_tsd_run_dtors"]=Module["asm"]["da"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["ea"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["fa"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["ga"]).apply(null,arguments)};var _emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=function(){return(_emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=Module["asm"]["ha"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["ia"]).apply(null,arguments)};var _memalign=Module["_memalign"]=function(){return(_memalign=Module["_memalign"]=Module["asm"]["ja"]).apply(null,arguments)};var dynCall_iiiij=Module["dynCall_iiiij"]=function(){return(dynCall_iiiij=Module["dynCall_iiiij"]=Module["asm"]["ka"]).apply(null,arguments)};var __emscripten_allow_main_runtime_queued_calls=Module["__emscripten_allow_main_runtime_queued_calls"]=9124;var __emscripten_main_thread_futex=Module["__emscripten_main_thread_futex"]=10652;function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{wasmTable.get(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{wasmTable.get(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return wasmTable.get(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return wasmTable.get(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{wasmTable.get(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return wasmTable.get(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_i(index){var sp=stackSave();try{return wasmTable.get(index)()}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiiij(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return dynCall_iiiij(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}Module["keepRuntimeAlive"]=keepRuntimeAlive;Module["PThread"]=PThread;Module["PThread"]=PThread;Module["wasmMemory"]=wasmMemory;Module["ExitStatus"]=ExitStatus;var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}if(ENVIRONMENT_IS_PTHREAD){readyPromiseResolve(Module);initRuntime();postMessage({"cmd":"loaded"});return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){EXITSTATUS=status;if(!implicit){if(ENVIRONMENT_IS_PTHREAD){postMessage({"cmd":"exitProcess","returnCode":status});throw new ExitStatus(status)}else{}}if(keepRuntimeAlive()){}else{PThread.terminateAllThreads();exitRuntime();if(Module["onExit"])Module["onExit"](status);ABORT=true}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}if(ENVIRONMENT_IS_PTHREAD){noExitRuntime=false;PThread.initWorker()}run();var inputBuffer,inputBufferSize;function reallocInputBuffer(size){if(inputBuffer&&inputBufferSize>=size){return inputBuffer}if(inputBuffer){Module["_free"](inputBuffer)}inputBufferSize=size;inputBuffer=Module["_malloc"](inputBufferSize);return inputBuffer}var getTimestamp;if(typeof performance==="undefined"||typeof performance.now==="undefined"){getTimestamp=Date.now}else{getTimestamp=performance.now.bind(performance)}function time(func){var start=getTimestamp(),ret;ret=func();Module["cpuTime"]+=getTimestamp()-start;return ret}Module["loadedMetadata"]=!!options["videoFormat"];Module["videoFormat"]=options["videoFormat"]||null;Module["frameBuffer"]=null;Module["cpuTime"]=0;Object.defineProperty(Module,"processing",{get:function getProcessing(){return false}});Module["init"]=function(callback){time(function(){Module["_ogv_video_decoder_init"]()});callback()};Module["processHeader"]=function(data,callback){var ret=time(function(){var len=data.byteLength;var buffer=reallocInputBuffer(len);var dest=new Uint8Array(wasmMemory.buffer,buffer,len);dest.set(new Uint8Array(data));return Module["_ogv_video_decoder_process_header"](buffer,len)});callback(ret)};Module.callbacks=[];Module["processFrame"]=function(data,callback){var isAsync=Module["_ogv_video_decoder_async"]();var len=data.byteLength;var buffer=Module["_malloc"](len);function callbackWrapper(ret){Module["_free"](buffer);callback(ret)}if(isAsync){Module.callbacks.push(callbackWrapper)}var ret=time(function(){var dest=new Uint8Array(wasmMemory.buffer,buffer,len);dest.set(new Uint8Array(data));return Module["_ogv_video_decoder_process_frame"](buffer,len)});if(!isAsync){callbackWrapper(ret)}};Module["close"]=function(){};Module["sync"]=function(){var isAsync=Module["_ogv_video_decoder_async"]();if(isAsync){Module.callbacks.push(function(){});time(function(){Module["_ogv_video_decoder_process_frame"](0,0)})}};Module["recycledFrames"]=[];Module["recycleFrame"]=function(frame){var arr=Module["recycledFrames"];arr.push(frame);if(arr.length>16){arr.shift()}};var trident=typeof navigator==="object"&&navigator.userAgent.match(/Trident/); + + + return OGVDecoderVideoVP8MTW.ready +} +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = OGVDecoderVideoVP8MTW; +else if (typeof define === 'function' && define['amd']) + define([], function() { return OGVDecoderVideoVP8MTW; }); +else if (typeof exports === 'object') + exports["OGVDecoderVideoVP8MTW"] = OGVDecoderVideoVP8MTW; diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-vp8-mt-wasm.wasm b/media/player/videojs/ogvjs/ogv-decoder-video-vp8-mt-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..b3fc6143d401bae6f0011ebdb61c8c54ef81c74a GIT binary patch literal 138515 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 d=c*(1+.2/e);d=Math.min(d,b+100663296);d=Math.max(b,d);0>>16);na();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},a:function(){return ja},d:Ja,i:Ka,j:La,h:Ma,c:Na,k:function(b,c,e,d,f,g,l,m,S,t,M,N,T,U,ea,fa){function ha(y,q,u,ia,ya,za, +Ra,Sa,V){if(Oa){var h=new Float64Array(y.buffer);q=new Float64Array(Aa,q,u*ia>>3);h.set(q)}else y.set(new Uint8Array(Aa,q,u*ia));var v;for(q=v=0;q=d||(X&&a._free(X),Va=d,X=a._malloc(Va));var f=X;(new Uint8Array(H.buffer,f,d)).set(new Uint8Array(b));return a._ogv_video_decoder_process_header(f,d)});c(e)};a.B=[]; +a.processFrame=function(b,c){function e(m){a._free(g);c(m)}var d=a._ogv_video_decoder_async(),f=b.byteLength,g=a._malloc(f);d&&a.B.push(e);var l=Z(function(){(new Uint8Array(H.buffer,g,f)).set(new Uint8Array(b));return a._ogv_video_decoder_process_frame(g,f)});d||e(l)};a.close=function(){};a.sync=function(){a._ogv_video_decoder_async()&&(a.B.push(function(){}),Z(function(){a._ogv_video_decoder_process_frame(0,0)}))};a.recycledFrames=[]; +a.recycleFrame=function(b){var c=a.recycledFrames;c.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 jgioVIEH3@Oi(s>G literal 0 HcmV?d00001 diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.js b/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.js new file mode 100644 index 00000000000..6ec0d0c4497 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.js @@ -0,0 +1,21 @@ + +var OGVDecoderVideoVP9MTW = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDecoderVideoVP9MTW) { + OGVDecoderVideoVP9MTW = OGVDecoderVideoVP9MTW || {}; + +function GROWABLE_HEAP_I8(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAP8}function GROWABLE_HEAP_U8(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAPU8}function GROWABLE_HEAP_I32(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAP32}function GROWABLE_HEAP_U32(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAPU32}function GROWABLE_HEAP_F64(){if(wasmMemory.buffer!=buffer){updateGlobalBufferAndViews(wasmMemory.buffer)}return HEAPF64}var Module=typeof OGVDecoderVideoVP9MTW!=="undefined"?OGVDecoderVideoVP9MTW:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var options=Module;var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var ENVIRONMENT_IS_PTHREAD=Module["ENVIRONMENT_IS_PTHREAD"]||false;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("unhandledRejection",abort);quit_=function(status,toThrow){if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"};var nodeWorkerThreads;try{nodeWorkerThreads=require("worker_threads")}catch(e){console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}if(ENVIRONMENT_IS_NODE){read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})}}else{read_=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}if(ENVIRONMENT_IS_NODE){if(typeof performance==="undefined"){global.performance=require("perf_hooks").performance}}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var tempRet0=0;var setTempRet0=function(value){tempRet0=value};var getTempRet0=function(){return tempRet0};var Atomics_load=Atomics.load;var Atomics_store=Atomics.store;var Atomics_compareExchange=Atomics.compareExchange;var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!=="object"){abort("no native wasm support detected")}var wasmMemory;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function TextDecoderWrapper(encoding){var textDecoder=new TextDecoder(encoding);this.decode=function(data){if(data.buffer instanceof SharedArrayBuffer){data=new Uint8Array(data)}return textDecoder.decode.call(textDecoder,data)}}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoderWrapper("utf8"):undefined;function UTF8ArrayToString(heap,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heap[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(GROWABLE_HEAP_U8(),ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,GROWABLE_HEAP_U8(),outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoderWrapper("utf-16le"):undefined;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;if(ENVIRONMENT_IS_PTHREAD){buffer=Module["buffer"]}function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module["wasmMemory"];buffer=Module["buffer"]}else{if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":1073741824/65536,"shared":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag");if(ENVIRONMENT_IS_NODE){console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)")}throw Error("bad memory")}}}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATINIT__)}function exitRuntime(){if(ENVIRONMENT_IS_PTHREAD)return;runtimeExited=true}function postRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(ENVIRONMENT_IS_PTHREAD)console.error("Pthread aborting at "+(new Error).stack);what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="ogv-decoder-video-vp9-mt-wasm.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["S"];addOnInit(Module["asm"]["M"]);PThread.tlsInitFunctions.push(Module["asm"]["V"]);wasmModule=module;if(!ENVIRONMENT_IS_PTHREAD){var numWorkersToLoad=PThread.unusedWorkers.length;PThread.unusedWorkers.forEach(function(w){PThread.loadWasmModuleToWorker(w,function(){if(!--numWorkersToLoad)removeRunDependency("wasm-instantiate")})})}}if(!ENVIRONMENT_IS_PTHREAD){addRunDependency("wasm-instantiate")}function receiveInstantiationResult(result){receiveInstance(result["instance"],result["module"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){var result=WebAssembly.instantiate(binary,info);return result}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var ASM_CONSTS={34500:function(){throw"Canceled!"},34518:function($0,$1){setTimeout(function(){__emscripten_do_dispatch_to_thread($0,$1)},0)}};function initPthreadsJS(){PThread.initRuntime()}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};function _emscripten_futex_wake(addr,count){if(addr<=0||addr>GROWABLE_HEAP_I8().length||addr&3!=0||count<0)return-28;if(count==0)return 0;if(count>=2147483647)count=Infinity;var mainThreadWaitAddress=Atomics.load(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2);var mainThreadWoken=0;if(mainThreadWaitAddress==addr){var loadedAddr=Atomics.compareExchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,mainThreadWaitAddress,0);if(loadedAddr==mainThreadWaitAddress){--count;mainThreadWoken=1;if(count<=0)return 1}}var ret=Atomics.notify(GROWABLE_HEAP_I32(),addr>>2,count);if(ret>=0)return ret+mainThreadWoken;throw"Atomics.notify returned an unexpected value "+ret}Module["_emscripten_futex_wake"]=_emscripten_futex_wake;function killThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! killThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in killThread!";GROWABLE_HEAP_I32()[pthread_ptr+12>>2]=0;var pthread=PThread.pthreads[pthread_ptr];pthread.worker.terminate();PThread.freeThreadData(pthread);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(pthread.worker),1);pthread.worker.pthread=undefined}function cancelThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! cancelThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in cancelThread!";var pthread=PThread.pthreads[pthread_ptr];pthread.worker.postMessage({"cmd":"cancel"})}function cleanupThread(pthread_ptr){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! cleanupThread() can only ever be called from main application thread!";if(!pthread_ptr)throw"Internal Error! Null pthread_ptr in cleanupThread!";var pthread=PThread.pthreads[pthread_ptr];if(pthread){GROWABLE_HEAP_I32()[pthread_ptr+12>>2]=0;var worker=pthread.worker;PThread.returnWorkerToPool(worker)}}var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],initMainThreadBlock:function(){var pthreadPoolSize=1;for(var i=0;i>2]=tb;var headPtr=tb+152;GROWABLE_HEAP_I32()[headPtr>>2]=headPtr;var tlsMemory=_malloc(512);for(var i=0;i<128;++i)GROWABLE_HEAP_U32()[tlsMemory/4+i]=0;Atomics.store(GROWABLE_HEAP_U32(),tb+100>>2,tlsMemory);Atomics.store(GROWABLE_HEAP_U32(),tb+40>>2,tb);__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1);_emscripten_register_main_browser_thread_id(tb)},initWorker:function(){},pthreads:{},threadExitHandlers:[],runExitHandlers:function(){while(PThread.threadExitHandlers.length>0){PThread.threadExitHandlers.pop()()}___pthread_tsd_run_dtors()},runExitHandlersAndDeinitThread:function(tb,exitCode){Atomics.store(GROWABLE_HEAP_U32(),tb+56>>2,1);Atomics.store(GROWABLE_HEAP_U32(),tb+60>>2,0);PThread.runExitHandlers();Atomics.store(GROWABLE_HEAP_U32(),tb+4>>2,exitCode);Atomics.store(GROWABLE_HEAP_U32(),tb+0>>2,1);_emscripten_futex_wake(tb+0,2147483647);__emscripten_thread_init(0,0,0)},setExitStatus:function(status){EXITSTATUS=status},threadExit:function(exitCode){var tb=_pthread_self();if(tb){PThread.runExitHandlersAndDeinitThread(tb,exitCode);if(ENVIRONMENT_IS_PTHREAD){postMessage({"cmd":"exit"})}}},threadCancel:function(){PThread.runExitHandlersAndDeinitThread(_pthread_self(),-1);postMessage({"cmd":"cancelDone"})},terminateAllThreads:function(){for(var t in PThread.pthreads){var pthread=PThread.pthreads[t];if(pthread&&pthread.worker){PThread.returnWorkerToPool(pthread.worker)}}PThread.pthreads={};for(var i=0;i>2];GROWABLE_HEAP_I32()[pthread.threadInfoStruct+100>>2]=0;_free(tlsMemory);_free(pthread.threadInfoStruct)}pthread.threadInfoStruct=0;if(pthread.allocatedOwnStack&&pthread.stackBase)_free(pthread.stackBase);pthread.stackBase=0;if(pthread.worker)pthread.worker.pthread=null},returnWorkerToPool:function(worker){PThread.runWithoutMainThreadQueuedCalls(function(){delete PThread.pthreads[worker.pthread.threadInfoStruct];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);PThread.freeThreadData(worker.pthread);worker.pthread=undefined})},runWithoutMainThreadQueuedCalls:function(func){GROWABLE_HEAP_I32()[__emscripten_allow_main_runtime_queued_calls>>2]=0;try{func()}finally{GROWABLE_HEAP_I32()[__emscripten_allow_main_runtime_queued_calls>>2]=1}},receiveObjectTransfer:function(data){},threadInit:function(){for(var i in PThread.tlsInitFunctions){PThread.tlsInitFunctions[i]()}},loadWasmModuleToWorker:function(worker,onFinishedLoading){worker.onmessage=function(e){var d=e["data"];var cmd=d["cmd"];if(worker.pthread)PThread.currentProxiedOperationCallerThread=worker.pthread.threadInfoStruct;if(d["targetThread"]&&d["targetThread"]!=_pthread_self()){var thread=PThread.pthreads[d.targetThread];if(thread){thread.worker.postMessage(e.data,d["transferList"])}else{console.error('Internal error! Worker sent a message "'+cmd+'" to target pthread '+d["targetThread"]+", but that thread no longer exists!")}PThread.currentProxiedOperationCallerThread=undefined;return}if(cmd==="processQueuedMainThreadWork"){_emscripten_main_thread_process_queued_calls()}else if(cmd==="spawnThread"){spawnThread(e.data)}else if(cmd==="cleanupThread"){cleanupThread(d["thread"])}else if(cmd==="killThread"){killThread(d["thread"])}else if(cmd==="cancelThread"){cancelThread(d["thread"])}else if(cmd==="loaded"){worker.loaded=true;if(onFinishedLoading)onFinishedLoading(worker);if(worker.runPthread){worker.runPthread();delete worker.runPthread}}else if(cmd==="print"){out("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="printErr"){err("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="alert"){alert("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="exit"){var detached=worker.pthread&&Atomics.load(GROWABLE_HEAP_U32(),worker.pthread.threadInfoStruct+64>>2);if(detached){PThread.returnWorkerToPool(worker)}}else if(cmd==="exitProcess"){try{exit(d["returnCode"])}catch(e){if(e instanceof ExitStatus)return;throw e}}else if(cmd==="cancelDone"){PThread.returnWorkerToPool(worker)}else if(cmd==="objectTransfer"){PThread.receiveObjectTransfer(e.data)}else if(e.data.target==="setimmediate"){worker.postMessage(e.data)}else{err("worker sent an unknown command "+cmd)}PThread.currentProxiedOperationCallerThread=undefined};worker.onerror=function(e){err("pthread sent an error! "+e.filename+":"+e.lineno+": "+e.message)};if(ENVIRONMENT_IS_NODE){worker.on("message",function(data){worker.onmessage({data:data})});worker.on("error",function(data){worker.onerror(data)});worker.on("exit",function(data){})}worker.postMessage({"cmd":"load","urlOrBlob":Module["mainScriptUrlOrBlob"]||_scriptDir,"wasmMemory":wasmMemory,"wasmModule":wasmModule})},allocateUnusedWorker:function(){var pthreadMainJs=locateFile("ogv-decoder-video-vp9-mt-wasm.worker.js");PThread.unusedWorkers.push(new Worker(pthreadMainJs))},getNewWorker:function(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()},busySpinWait:function(msecs){var t=performance.now()+msecs;while(performance.now()>=2;while(ch=GROWABLE_HEAP_U8()[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?GROWABLE_HEAP_F64()[buf++>>1]:GROWABLE_HEAP_I32()[buf]);++buf}return readAsmConstArgsArray}function _emscripten_asm_const_int(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}function _emscripten_check_blocking_allowed(){if(ENVIRONMENT_IS_NODE)return;if(ENVIRONMENT_IS_WORKER)return;warnOnce("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")}function _emscripten_conditional_set_current_thread_status(expectedStatus,newStatus){}function _emscripten_futex_wait(addr,val,timeout){if(addr<=0||addr>GROWABLE_HEAP_I8().length||addr&3!=0)return-28;if(!ENVIRONMENT_IS_WEB){var ret=Atomics.wait(GROWABLE_HEAP_I32(),addr>>2,val,timeout);if(ret==="timed-out")return-73;if(ret==="not-equal")return-6;if(ret==="ok")return 0;throw"Atomics.wait returned an unexpected value "+ret}else{if(Atomics.load(GROWABLE_HEAP_I32(),addr>>2)!=val){return-6}var tNow=performance.now();var tEnd=tNow+timeout;var lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,addr);while(1){tNow=performance.now();if(tNow>tEnd){lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,0);return-73}lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,0);if(lastAddr==0){break}_emscripten_main_thread_process_queued_calls();if(Atomics.load(GROWABLE_HEAP_I32(),addr>>2)!=val){return-6}lastAddr=Atomics.exchange(GROWABLE_HEAP_I32(),__emscripten_main_thread_futex>>2,addr)}return 0}}function _emscripten_memcpy_big(dest,src,num){GROWABLE_HEAP_U8().copyWithin(dest,src,src+num)}function _emscripten_num_logical_cores(){if(ENVIRONMENT_IS_NODE)return require("os").cpus().length;return navigator["hardwareConcurrency"]}function _emscripten_proxy_to_main_thread_js(index,sync){var numCallArgs=arguments.length-2;var stack=stackSave();var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>3;for(var i=0;i>3;for(var i=0;i>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=GROWABLE_HEAP_U8().length;requestedSize=requestedSize>>>0;if(requestedSize<=oldSize){return false}var maxHeapSize=1073741824;if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var JSEvents={inEventHandler:0,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence>2]=eventTypeId;GROWABLE_HEAP_I32()[varargs+4>>2]=eventData;GROWABLE_HEAP_I32()[varargs+8>>2]=userData;__emscripten_call_on_thread(0,targetThread,637534208,eventHandlerFunc,eventData,varargs);stackRestore(stackTop)},getTargetThreadForEventCallback:function(targetThread){switch(targetThread){case 1:return 0;case 2:return PThread.currentProxiedOperationCallerThread;default:return targetThread}},getNodeNameForTarget:function(target){if(!target)return"";if(target==window)return"#window";if(target==screen)return"#screen";return target&&target.nodeName?target.nodeName:""},fullscreenEnabled:function(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}};function stringToNewUTF8(jsString){var length=lengthBytesUTF8(jsString)+1;var cString=_malloc(length);stringToUTF8(jsString,cString,length);return cString}function _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height){var stackTop=stackSave();var varargs=stackAlloc(12);var targetCanvasPtr=0;if(targetCanvas){targetCanvasPtr=stringToNewUTF8(targetCanvas)}GROWABLE_HEAP_I32()[varargs>>2]=targetCanvasPtr;GROWABLE_HEAP_I32()[varargs+4>>2]=width;GROWABLE_HEAP_I32()[varargs+8>>2]=height;__emscripten_call_on_thread(0,targetThread,657457152,0,targetCanvasPtr,varargs);stackRestore(stackTop)}function _emscripten_set_offscreencanvas_size_on_target_thread(targetThread,targetCanvas,width,height){targetCanvas=targetCanvas?UTF8ToString(targetCanvas):"";_emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height)}function maybeCStringToJsString(cString){return cString>2?UTF8ToString(cString):cString}var specialHTMLTargets=[0,typeof document!=="undefined"?document:0,typeof window!=="undefined"?window:0];function findEventTarget(target){target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!=="undefined"?document.querySelector(target):undefined);return domElement}function findCanvasEventTarget(target){return findEventTarget(target)}function _emscripten_set_canvas_element_size_calling_thread(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;if(canvas.canvasSharedPtr){GROWABLE_HEAP_I32()[canvas.canvasSharedPtr>>2]=width;GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+4>>2]=height}if(canvas.offscreenCanvas||!canvas.controlTransferredOffscreen){if(canvas.offscreenCanvas)canvas=canvas.offscreenCanvas;var autoResizeViewport=false;if(canvas.GLctxObject&&canvas.GLctxObject.GLctx){var prevViewport=canvas.GLctxObject.GLctx.getParameter(2978);autoResizeViewport=prevViewport[0]===0&&prevViewport[1]===0&&prevViewport[2]===canvas.width&&prevViewport[3]===canvas.height}canvas.width=width;canvas.height=height;if(autoResizeViewport){canvas.GLctxObject.GLctx.viewport(0,0,width,height)}}else if(canvas.canvasSharedPtr){var targetThread=GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+8>>2];_emscripten_set_offscreencanvas_size_on_target_thread(targetThread,target,width,height);return 1}else{return-4}return 0}function _emscripten_set_canvas_element_size_main_thread(target,width,height){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(1,1,target,width,height);return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}function _emscripten_set_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(canvas){return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}else{return _emscripten_set_canvas_element_size_main_thread(target,width,height)}}function _emscripten_set_current_thread_status(newStatus){}function __webgl_enable_ANGLE_instanced_arrays(ctx){var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=function(index,divisor){ext["vertexAttribDivisorANGLE"](index,divisor)};ctx["drawArraysInstanced"]=function(mode,first,count,primcount){ext["drawArraysInstancedANGLE"](mode,first,count,primcount)};ctx["drawElementsInstanced"]=function(mode,count,type,indices,primcount){ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount)};return 1}}function __webgl_enable_OES_vertex_array_object(ctx){var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=function(){return ext["createVertexArrayOES"]()};ctx["deleteVertexArray"]=function(vao){ext["deleteVertexArrayOES"](vao)};ctx["bindVertexArray"]=function(vao){ext["bindVertexArrayOES"](vao)};ctx["isVertexArray"]=function(vao){return ext["isVertexArrayOES"](vao)};return 1}}function __webgl_enable_WEBGL_draw_buffers(ctx){var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=function(n,bufs){ext["drawBuffersWEBGL"](n,bufs)};return 1}}function __webgl_enable_WEBGL_multi_draw(ctx){return!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"))}var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:{},offscreenCanvases:{},queries:[],stringCache:{},unpackAlignment:4,recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i>2]:-1;source+=UTF8ToString(GROWABLE_HEAP_I32()[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;canvas.getContext=function(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}}var ctx=canvas.getContext("webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=_malloc(8);GROWABLE_HEAP_I32()[handle+4>>2]=_pthread_self();var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault==="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents==="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;_free(GL.contexts[contextHandle].handle);GL.contexts[contextHandle]=null},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;__webgl_enable_ANGLE_instanced_arrays(GLctx);__webgl_enable_OES_vertex_array_object(GLctx);__webgl_enable_WEBGL_draw_buffers(GLctx);{GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}__webgl_enable_WEBGL_multi_draw(GLctx);var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};var __emscripten_webgl_power_preferences=["default","low-power","high-performance"];function _emscripten_webgl_do_create_context(target,attributes){var a=attributes>>2;var powerPreference=GROWABLE_HEAP_I32()[a+(24>>2)];var contextAttributes={"alpha":!!GROWABLE_HEAP_I32()[a+(0>>2)],"depth":!!GROWABLE_HEAP_I32()[a+(4>>2)],"stencil":!!GROWABLE_HEAP_I32()[a+(8>>2)],"antialias":!!GROWABLE_HEAP_I32()[a+(12>>2)],"premultipliedAlpha":!!GROWABLE_HEAP_I32()[a+(16>>2)],"preserveDrawingBuffer":!!GROWABLE_HEAP_I32()[a+(20>>2)],"powerPreference":__emscripten_webgl_power_preferences[powerPreference],"failIfMajorPerformanceCaveat":!!GROWABLE_HEAP_I32()[a+(28>>2)],majorVersion:GROWABLE_HEAP_I32()[a+(32>>2)],minorVersion:GROWABLE_HEAP_I32()[a+(36>>2)],enableExtensionsByDefault:GROWABLE_HEAP_I32()[a+(40>>2)],explicitSwapControl:GROWABLE_HEAP_I32()[a+(44>>2)],proxyContextToMainThread:GROWABLE_HEAP_I32()[a+(48>>2)],renderViaOffscreenBackBuffer:GROWABLE_HEAP_I32()[a+(52>>2)]};var canvas=findCanvasEventTarget(target);if(!canvas){return 0}if(contextAttributes.explicitSwapControl){return 0}var contextHandle=GL.createContext(canvas,contextAttributes);return contextHandle}function _emscripten_webgl_create_context(a0,a1){return _emscripten_webgl_do_create_context(a0,a1)}function _getTempRet0(){return getTempRet0()}function _ogvjs_callback_async_complete(ret,cpuTime){var callback=Module.callbacks.shift();Module["cpuTime"]+=cpuTime;callback(ret);return}function _ogvjs_callback_frame(bufferY,strideY,bufferCb,strideCb,bufferCr,strideCr,width,height,chromaWidth,chromaHeight,picWidth,picHeight,picX,picY,displayWidth,displayHeight){var heap=wasmMemory.buffer;var format=Module["videoFormat"];function copyAndTrim(arr,buffer,stride,height,picX,picY,picWidth,picHeight,fill){if(trident){var dest64=new Float64Array(arr.buffer);var src64=new Float64Array(heap,buffer,stride*height>>3);dest64.set(src64)}else{arr.set(new Uint8Array(heap,buffer,stride*height))}var x,y,ptr;for(ptr=0,y=0;y0){var next=recycled.shift(),format=next["format"];if(format["width"]===width&&format["height"]===height&&format["chromaWidth"]===chromaWidth&&format["chromaHeight"]===chromaHeight&&format["cropLeft"]===picX&&format["cropTop"]===picY&&format["cropWidth"]===picWidth&&format["cropHeight"]===picHeight&&format["displayWidth"]===displayWidth&&format["displayHeight"]===displayHeight&&next["y"]["bytes"].length===lenY&&next["u"]["bytes"].length===lenCb&&next["v"]["bytes"].length===lenCr){frame=next;break}}if(!frame){frame={"format":{"width":width,"height":height,"chromaWidth":chromaWidth,"chromaHeight":chromaHeight,"cropLeft":picX,"cropTop":picY,"cropWidth":picWidth,"cropHeight":picHeight,"displayWidth":displayWidth,"displayHeight":displayHeight},"y":{"bytes":new Uint8Array(lenY),"stride":strideY},"u":{"bytes":new Uint8Array(lenCb),"stride":strideCb},"v":{"bytes":new Uint8Array(lenCr),"stride":strideCr}}}copyAndTrim(frame["y"]["bytes"],bufferY,strideY,height,picX,picY,picWidth,picHeight,0);copyAndTrim(frame["u"]["bytes"],bufferCb,strideCb,chromaHeight,chromaPicX,chromaPicY,chromaPicWidth,chromaPicHeight,128);copyAndTrim(frame["v"]["bytes"],bufferCr,strideCr,chromaHeight,chromaPicX,chromaPicY,chromaPicWidth,chromaPicHeight,128);Module["frameBuffer"]=frame}function spawnThread(threadParams){if(ENVIRONMENT_IS_PTHREAD)throw"Internal Error! spawnThread() can only ever be called from main application thread!";var worker=PThread.getNewWorker();if(!worker){return 6}if(worker.pthread!==undefined)throw"Internal error!";if(!threadParams.pthread_ptr)throw"Internal error, no pthread ptr!";PThread.runningWorkers.push(worker);var tlsMemory=_malloc(128*4);for(var i=0;i<128;++i){GROWABLE_HEAP_I32()[tlsMemory+i*4>>2]=0}var stackHigh=threadParams.stackBase+threadParams.stackSize;var pthread=PThread.pthreads[threadParams.pthread_ptr]={worker:worker,stackBase:threadParams.stackBase,stackSize:threadParams.stackSize,allocatedOwnStack:threadParams.allocatedOwnStack,threadInfoStruct:threadParams.pthread_ptr};var tis=pthread.threadInfoStruct>>2;Atomics.store(GROWABLE_HEAP_U32(),tis+(64>>2),threadParams.detached);Atomics.store(GROWABLE_HEAP_U32(),tis+(100>>2),tlsMemory);Atomics.store(GROWABLE_HEAP_U32(),tis+(40>>2),pthread.threadInfoStruct);Atomics.store(GROWABLE_HEAP_U32(),tis+(80>>2),threadParams.stackSize);Atomics.store(GROWABLE_HEAP_U32(),tis+(76>>2),stackHigh);Atomics.store(GROWABLE_HEAP_U32(),tis+(104>>2),threadParams.stackSize);Atomics.store(GROWABLE_HEAP_U32(),tis+(104+8>>2),stackHigh);Atomics.store(GROWABLE_HEAP_U32(),tis+(104+12>>2),threadParams.detached);var global_libc=_emscripten_get_global_libc();var global_locale=global_libc+40;Atomics.store(GROWABLE_HEAP_U32(),tis+(172>>2),global_locale);worker.pthread=pthread;var msg={"cmd":"run","start_routine":threadParams.startRoutine,"arg":threadParams.arg,"threadInfoStruct":threadParams.pthread_ptr,"stackBase":threadParams.stackBase,"stackSize":threadParams.stackSize};worker.runPthread=function(){msg.time=performance.now();worker.postMessage(msg,threadParams.transferList)};if(worker.loaded){worker.runPthread();delete worker.runPthread}return 0}function _pthread_create(pthread_ptr,attr,start_routine,arg){if(typeof SharedArrayBuffer==="undefined"){err("Current environment does not support SharedArrayBuffer, pthreads are not available!");return 6}if(!pthread_ptr){err("pthread_create called with a null thread pointer!");return 28}var transferList=[];var error=0;if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return _emscripten_sync_run_in_main_thread_4(687865856,pthread_ptr,attr,start_routine,arg)}if(error)return error;var stackSize=0;var stackBase=0;var detached=0;if(attr&&attr!=-1){stackSize=GROWABLE_HEAP_I32()[attr>>2];stackSize+=81920;stackBase=GROWABLE_HEAP_I32()[attr+8>>2];detached=GROWABLE_HEAP_I32()[attr+12>>2]!==0}else{stackSize=2097152}var allocatedOwnStack=stackBase==0;if(allocatedOwnStack){stackBase=_memalign(16,stackSize)}else{stackBase-=stackSize;assert(stackBase>0)}var threadInfoStruct=_malloc(228);for(var i=0;i<228>>2;++i)GROWABLE_HEAP_U32()[(threadInfoStruct>>2)+i]=0;GROWABLE_HEAP_I32()[pthread_ptr>>2]=threadInfoStruct;GROWABLE_HEAP_I32()[threadInfoStruct+12>>2]=threadInfoStruct;var headPtr=threadInfoStruct+152;GROWABLE_HEAP_I32()[headPtr>>2]=headPtr;var threadParams={stackBase:stackBase,stackSize:stackSize,allocatedOwnStack:allocatedOwnStack,detached:detached,startRoutine:start_routine,pthread_ptr:threadInfoStruct,arg:arg,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd="spawnThread";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}function _exit(status){exit(status)}function _pthread_exit(status){if(!ENVIRONMENT_IS_PTHREAD)_exit(status);else PThread.threadExit(status);throw"unwind"}function __pthread_testcancel_js(){if(!ENVIRONMENT_IS_PTHREAD)return;var tb=_pthread_self();if(!tb)return;var cancelDisabled=Atomics.load(GROWABLE_HEAP_U32(),tb+56>>2);if(cancelDisabled)return;var canceled=Atomics.load(GROWABLE_HEAP_U32(),tb+0>>2);if(canceled==2)throw"Canceled!"}function __emscripten_do_pthread_join(thread,status,block){if(!thread){err("pthread_join attempted on a null thread pointer!");return ERRNO_CODES.ESRCH}if(ENVIRONMENT_IS_PTHREAD&&_pthread_self()==thread){err("PThread "+thread+" is attempting to join to itself!");return ERRNO_CODES.EDEADLK}else if(!ENVIRONMENT_IS_PTHREAD&&_emscripten_main_browser_thread_id()==thread){err("Main thread "+thread+" is attempting to join to itself!");return ERRNO_CODES.EDEADLK}var self=GROWABLE_HEAP_I32()[thread+12>>2];if(self!==thread){err("pthread_join attempted on thread "+thread+", which does not point to a valid thread, or does not exist anymore!");return ERRNO_CODES.ESRCH}var detached=Atomics.load(GROWABLE_HEAP_U32(),thread+64>>2);if(detached){err("Attempted to join thread "+thread+", which was already detached!");return ERRNO_CODES.EINVAL}if(block){_emscripten_check_blocking_allowed()}for(;;){var threadStatus=Atomics.load(GROWABLE_HEAP_U32(),thread+0>>2);if(threadStatus==1){var threadExitCode=Atomics.load(GROWABLE_HEAP_U32(),thread+4>>2);if(status)GROWABLE_HEAP_I32()[status>>2]=threadExitCode;Atomics.store(GROWABLE_HEAP_U32(),thread+64>>2,1);if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({"cmd":"cleanupThread","thread":thread});return 0}if(!block){return ERRNO_CODES.EBUSY}__pthread_testcancel_js();if(!ENVIRONMENT_IS_PTHREAD)_emscripten_main_thread_process_queued_calls();_emscripten_futex_wait(thread+0,threadStatus,ENVIRONMENT_IS_PTHREAD?100:1)}}function _pthread_join(thread,status){return __emscripten_do_pthread_join(thread,status,true)}function _setTempRet0(val){setTempRet0(val)}if(!ENVIRONMENT_IS_PTHREAD)PThread.initMainThreadBlock();var GLctx;var proxiedFunctionTable=[null,_emscripten_set_canvas_element_size_main_thread];var asmLibraryArg={"h":___assert_fail,"s":___cxa_thread_atexit,"I":__emscripten_notify_thread_queue,"D":__emscripten_throw_longjmp,"L":_abort,"r":_emscripten_asm_const_int,"E":_emscripten_check_blocking_allowed,"q":_emscripten_conditional_set_current_thread_status,"j":_emscripten_futex_wait,"i":_emscripten_futex_wake,"e":_emscripten_get_now,"B":_emscripten_memcpy_big,"K":_emscripten_num_logical_cores,"F":_emscripten_receive_on_main_thread_js,"C":_emscripten_resize_heap,"G":_emscripten_set_canvas_element_size,"p":_emscripten_set_current_thread_status,"H":_emscripten_webgl_create_context,"b":_getTempRet0,"A":initPthreadsJS,"d":invoke_ii,"f":invoke_iii,"l":invoke_iiii,"o":invoke_iiiii,"u":invoke_iiiiii,"k":invoke_vi,"v":invoke_vii,"g":invoke_viiii,"m":invoke_viiiii,"J":invoke_viiiiii,"t":invoke_viiiiiiii,"a":wasmMemory||Module["wasmMemory"],"x":_ogvjs_callback_async_complete,"y":_ogvjs_callback_frame,"n":_pthread_create,"z":_pthread_exit,"w":_pthread_join,"c":_setTempRet0};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["M"]).apply(null,arguments)};var _ogv_video_decoder_init=Module["_ogv_video_decoder_init"]=function(){return(_ogv_video_decoder_init=Module["_ogv_video_decoder_init"]=Module["asm"]["N"]).apply(null,arguments)};var _ogv_video_decoder_async=Module["_ogv_video_decoder_async"]=function(){return(_ogv_video_decoder_async=Module["_ogv_video_decoder_async"]=Module["asm"]["O"]).apply(null,arguments)};var _ogv_video_decoder_destroy=Module["_ogv_video_decoder_destroy"]=function(){return(_ogv_video_decoder_destroy=Module["_ogv_video_decoder_destroy"]=Module["asm"]["P"]).apply(null,arguments)};var _ogv_video_decoder_process_header=Module["_ogv_video_decoder_process_header"]=function(){return(_ogv_video_decoder_process_header=Module["_ogv_video_decoder_process_header"]=Module["asm"]["Q"]).apply(null,arguments)};var _ogv_video_decoder_process_frame=Module["_ogv_video_decoder_process_frame"]=function(){return(_ogv_video_decoder_process_frame=Module["_ogv_video_decoder_process_frame"]=Module["asm"]["R"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["T"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["U"]).apply(null,arguments)};var _emscripten_tls_init=Module["_emscripten_tls_init"]=function(){return(_emscripten_tls_init=Module["_emscripten_tls_init"]=Module["asm"]["V"]).apply(null,arguments)};var _emscripten_current_thread_process_queued_calls=Module["_emscripten_current_thread_process_queued_calls"]=function(){return(_emscripten_current_thread_process_queued_calls=Module["_emscripten_current_thread_process_queued_calls"]=Module["asm"]["W"]).apply(null,arguments)};var _emscripten_register_main_browser_thread_id=Module["_emscripten_register_main_browser_thread_id"]=function(){return(_emscripten_register_main_browser_thread_id=Module["_emscripten_register_main_browser_thread_id"]=Module["asm"]["X"]).apply(null,arguments)};var _emscripten_main_browser_thread_id=Module["_emscripten_main_browser_thread_id"]=function(){return(_emscripten_main_browser_thread_id=Module["_emscripten_main_browser_thread_id"]=Module["asm"]["Y"]).apply(null,arguments)};var __emscripten_do_dispatch_to_thread=Module["__emscripten_do_dispatch_to_thread"]=function(){return(__emscripten_do_dispatch_to_thread=Module["__emscripten_do_dispatch_to_thread"]=Module["asm"]["Z"]).apply(null,arguments)};var _emscripten_sync_run_in_main_thread_4=Module["_emscripten_sync_run_in_main_thread_4"]=function(){return(_emscripten_sync_run_in_main_thread_4=Module["_emscripten_sync_run_in_main_thread_4"]=Module["asm"]["_"]).apply(null,arguments)};var _emscripten_main_thread_process_queued_calls=Module["_emscripten_main_thread_process_queued_calls"]=function(){return(_emscripten_main_thread_process_queued_calls=Module["_emscripten_main_thread_process_queued_calls"]=Module["asm"]["$"]).apply(null,arguments)};var _pthread_self=Module["_pthread_self"]=function(){return(_pthread_self=Module["_pthread_self"]=Module["asm"]["aa"]).apply(null,arguments)};var _emscripten_run_in_main_runtime_thread_js=Module["_emscripten_run_in_main_runtime_thread_js"]=function(){return(_emscripten_run_in_main_runtime_thread_js=Module["_emscripten_run_in_main_runtime_thread_js"]=Module["asm"]["ba"]).apply(null,arguments)};var __emscripten_call_on_thread=Module["__emscripten_call_on_thread"]=function(){return(__emscripten_call_on_thread=Module["__emscripten_call_on_thread"]=Module["asm"]["ca"]).apply(null,arguments)};var __emscripten_thread_init=Module["__emscripten_thread_init"]=function(){return(__emscripten_thread_init=Module["__emscripten_thread_init"]=Module["asm"]["da"]).apply(null,arguments)};var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=function(){return(_emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=Module["asm"]["ea"]).apply(null,arguments)};var ___pthread_tsd_run_dtors=Module["___pthread_tsd_run_dtors"]=function(){return(___pthread_tsd_run_dtors=Module["___pthread_tsd_run_dtors"]=Module["asm"]["fa"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["ga"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["ha"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["ia"]).apply(null,arguments)};var _emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=function(){return(_emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=Module["asm"]["ja"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["ka"]).apply(null,arguments)};var _memalign=Module["_memalign"]=function(){return(_memalign=Module["_memalign"]=Module["asm"]["la"]).apply(null,arguments)};var __emscripten_allow_main_runtime_queued_calls=Module["__emscripten_allow_main_runtime_queued_calls"]=34492;var __emscripten_main_thread_futex=Module["__emscripten_main_thread_futex"]=36088;function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return wasmTable.get(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{wasmTable.get(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{wasmTable.get(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return wasmTable.get(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return wasmTable.get(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{wasmTable.get(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return wasmTable.get(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{wasmTable.get(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return wasmTable.get(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{wasmTable.get(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{wasmTable.get(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}Module["keepRuntimeAlive"]=keepRuntimeAlive;Module["PThread"]=PThread;Module["PThread"]=PThread;Module["wasmMemory"]=wasmMemory;Module["ExitStatus"]=ExitStatus;var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}if(ENVIRONMENT_IS_PTHREAD){readyPromiseResolve(Module);initRuntime();postMessage({"cmd":"loaded"});return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){EXITSTATUS=status;if(!implicit){if(ENVIRONMENT_IS_PTHREAD){postMessage({"cmd":"exitProcess","returnCode":status});throw new ExitStatus(status)}else{}}if(keepRuntimeAlive()){}else{PThread.terminateAllThreads();exitRuntime();if(Module["onExit"])Module["onExit"](status);ABORT=true}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}if(ENVIRONMENT_IS_PTHREAD){noExitRuntime=false;PThread.initWorker()}run();var inputBuffer,inputBufferSize;function reallocInputBuffer(size){if(inputBuffer&&inputBufferSize>=size){return inputBuffer}if(inputBuffer){Module["_free"](inputBuffer)}inputBufferSize=size;inputBuffer=Module["_malloc"](inputBufferSize);return inputBuffer}var getTimestamp;if(typeof performance==="undefined"||typeof performance.now==="undefined"){getTimestamp=Date.now}else{getTimestamp=performance.now.bind(performance)}function time(func){var start=getTimestamp(),ret;ret=func();Module["cpuTime"]+=getTimestamp()-start;return ret}Module["loadedMetadata"]=!!options["videoFormat"];Module["videoFormat"]=options["videoFormat"]||null;Module["frameBuffer"]=null;Module["cpuTime"]=0;Object.defineProperty(Module,"processing",{get:function getProcessing(){return false}});Module["init"]=function(callback){time(function(){Module["_ogv_video_decoder_init"]()});callback()};Module["processHeader"]=function(data,callback){var ret=time(function(){var len=data.byteLength;var buffer=reallocInputBuffer(len);var dest=new Uint8Array(wasmMemory.buffer,buffer,len);dest.set(new Uint8Array(data));return Module["_ogv_video_decoder_process_header"](buffer,len)});callback(ret)};Module.callbacks=[];Module["processFrame"]=function(data,callback){var isAsync=Module["_ogv_video_decoder_async"]();var len=data.byteLength;var buffer=Module["_malloc"](len);function callbackWrapper(ret){Module["_free"](buffer);callback(ret)}if(isAsync){Module.callbacks.push(callbackWrapper)}var ret=time(function(){var dest=new Uint8Array(wasmMemory.buffer,buffer,len);dest.set(new Uint8Array(data));return Module["_ogv_video_decoder_process_frame"](buffer,len)});if(!isAsync){callbackWrapper(ret)}};Module["close"]=function(){};Module["sync"]=function(){var isAsync=Module["_ogv_video_decoder_async"]();if(isAsync){Module.callbacks.push(function(){});time(function(){Module["_ogv_video_decoder_process_frame"](0,0)})}};Module["recycledFrames"]=[];Module["recycleFrame"]=function(frame){var arr=Module["recycledFrames"];arr.push(frame);if(arr.length>16){arr.shift()}};var trident=typeof navigator==="object"&&navigator.userAgent.match(/Trident/); + + + return OGVDecoderVideoVP9MTW.ready +} +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = OGVDecoderVideoVP9MTW; +else if (typeof define === 'function' && define['amd']) + define([], function() { return OGVDecoderVideoVP9MTW; }); +else if (typeof exports === 'object') + exports["OGVDecoderVideoVP9MTW"] = OGVDecoderVideoVP9MTW; diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.wasm b/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..ac8afbe032e9f7c875ed294ca7c37aa4d064d315 GIT binary patch literal 259755 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

-#O|C0dzGxW_2}cw;L^%L!-B7KzbtvgZ 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�<2Fzs{*I)7Q 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 TWUI~QH)qymi(#8QrETQjzpD=t literal 0 HcmV?d00001 diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.worker.js b/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.worker.js new file mode 100644 index 00000000000..2eeda3073a3 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-video-vp9-mt-wasm.worker.js @@ -0,0 +1 @@ +"use strict";var Module={};if(typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string"){var nodeWorkerThreads=require("worker_threads");var parentPort=nodeWorkerThreads.parentPort;parentPort.on("message",function(data){onmessage({data:data})});var nodeFS=require("fs");Object.assign(global,{self:global,require:require,Module:Module,location:{href:__filename},Worker:nodeWorkerThreads.Worker,importScripts:function(f){(0,eval)(nodeFS.readFileSync(f,"utf8"))},postMessage:function(msg){parentPort.postMessage(msg)},performance:global.performance||{now:function(){return Date.now()}}})}function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(" ");console.error(text)}function threadAlert(){var text=Array.prototype.slice.call(arguments).join(" ");postMessage({cmd:"alert",text:text,threadId:Module["_pthread_self"]()})}var err=threadPrintErr;self.alert=threadAlert;Module["instantiateWasm"]=function(info,receiveInstance){var instance=new WebAssembly.Instance(Module["wasmModule"],info);receiveInstance(instance);Module["wasmModule"]=null;return instance.exports};function moduleLoaded(){}self.onmessage=function(e){try{if(e.data.cmd==="load"){Module["wasmModule"]=e.data.wasmModule;Module["wasmMemory"]=e.data.wasmMemory;Module["buffer"]=Module["wasmMemory"].buffer;Module["ENVIRONMENT_IS_PTHREAD"]=true;if(typeof e.data.urlOrBlob==="string"){importScripts(e.data.urlOrBlob)}else{var objectUrl=URL.createObjectURL(e.data.urlOrBlob);importScripts(objectUrl);URL.revokeObjectURL(objectUrl)}OGVDecoderVideoVP9MTW(Module).then(function(instance){Module=instance;moduleLoaded()})}else if(e.data.cmd==="objectTransfer"){Module["PThread"].receiveObjectTransfer(e.data)}else if(e.data.cmd==="run"){Module["__performance_now_clock_drift"]=performance.now()-e.data.time;Module["__emscripten_thread_init"](e.data.threadInfoStruct,0,0);var max=e.data.stackBase;var top=e.data.stackBase+e.data.stackSize;Module["establishStackSpace"](top,max);Module["PThread"].receiveObjectTransfer(e.data);Module["PThread"].threadInit();try{var result=Module["invokeEntryPoint"](e.data.start_routine,e.data.arg);if(Module["keepRuntimeAlive"]()){Module["PThread"].setExitStatus(result)}else{Module["PThread"].threadExit(result)}}catch(ex){if(ex==="Canceled!"){Module["PThread"].threadCancel()}else if(ex!="unwind"){if(ex instanceof Module["ExitStatus"]){if(Module["keepRuntimeAlive"]()){}else{Module["PThread"].threadExit(ex.status)}}else{Module["PThread"].threadExit(-2);throw ex}}}}else if(e.data.cmd==="cancel"){if(Module["_pthread_self"]()){Module["PThread"].threadCancel()}}else if(e.data.target==="setimmediate"){}else if(e.data.cmd==="processThreadQueue"){if(Module["_pthread_self"]()){Module["_emscripten_current_thread_process_queued_calls"]()}}else{err("worker.js received unknown command "+e.data.cmd);err(e.data)}}catch(ex){err("worker.js onmessage() captured an uncaught exception: "+ex);if(ex&&ex.stack)err(ex.stack);throw ex}}; diff --git a/media/player/videojs/ogvjs/ogv-decoder-video-vp9-wasm.js b/media/player/videojs/ogvjs/ogv-decoder-video-vp9-wasm.js new file mode 100644 index 00000000000..10e730e591e --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-decoder-video-vp9-wasm.js @@ -0,0 +1,46 @@ + +var OGVDecoderVideoVP9W = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDecoderVideoVP9W) { + OGVDecoderVideoVP9W = OGVDecoderVideoVP9W || {}; + + +var a;a||(a=typeof OGVDecoderVideoVP9W !== 'undefined' ? OGVDecoderVideoVP9W : {});var aa,n;a.ready=new Promise(function(b,c){aa=b;n=c});var ba=a,p={},q;for(q in a)a.hasOwnProperty(q)&&(p[q]=a[q]);var ca="object"===typeof window,w="function"===typeof importScripts,x="",da,y,z,C,F; +if("object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)x=w?require("path").dirname(x)+"/":__dirname+"/",da=function(b,c){C||(C=require("fs"));F||(F=require("path"));b=F.normalize(b);return C.readFileSync(b,c?null:"utf8")},z=function(b){b=da(b,!0);b.buffer||(b=new Uint8Array(b));b.buffer||G("Assertion failed: undefined");return b},y=function(b,c,e){C||(C=require("fs"));F||(F=require("path"));b=F.normalize(b);C.readFile(b,function(d,f){d?e(d):c(f.buffer)})}, +1>>=0;if(2147483648=e;e*=2){var d=c*(1+.2/e);d=Math.min(d,b+100663296);d=Math.max(b,d);0>>16);na();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},a:function(){return ja},d:Ja,f:Ka,i:La,g:Ma,e:Na,c:Oa,j:Pa,h:Qa,n:function(b,c,e,d,f,g,h,k,r,u,v,O,T,U,ea,fa){function ha(D, +t,A,ia,ya,za,Ta,Ua,V){if(Ra){var l=new Float64Array(D.buffer);t=new Float64Array(Aa,t,A*ia>>3);l.set(t)}else D.set(new Uint8Array(Aa,t,A*ia));var B;for(t=B=0;t=d||(X&&a._free(X),Xa=d,X=a._malloc(Xa));var f=X;(new Uint8Array(J.buffer,f,d)).set(new Uint8Array(b));return a._ogv_video_decoder_process_header(f,d)});c(e)};a.C=[]; +a.processFrame=function(b,c){function e(k){a._free(g);c(k)}var d=a._ogv_video_decoder_async(),f=b.byteLength,g=a._malloc(f);d&&a.C.push(e);var h=Z(function(){(new Uint8Array(J.buffer,g,f)).set(new Uint8Array(b));return a._ogv_video_decoder_process_frame(g,f)});d||e(h)};a.close=function(){};a.sync=function(){a._ogv_video_decoder_async()&&(a.C.push(function(){}),Z(function(){a._ogv_video_decoder_process_frame(0,0)}))};a.recycledFrames=[]; +a.recycleFrame=function(b){var c=a.recycledFrames;c.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

|^t7<>>^EI6oFrGl!c!*O z`Nz|i!BERLOHa$-An*2J+n46Jhcc!xwW_&QcDpYoVyY+Jt%CPC_nLlWS7P*MsDPTt-L^64<7|0RkUV zU_XI-6*&7hgXBI1&Jeg?fzt#&tiU{h2NXC(;6VjW64=sbhyur`@F4|` z5}4ODmE;Ja|H(p!3H@UWT_pc+TId3y(-t~U=$}~V9HHN`&<#Rgx6pM$XDoD$&~IDl zDxv?`LJNfcsf8{PI%}cJgnq|DR|x$x3(eAk|HVRk37xah9HD=1p?!q@R|_2{^e-%Q zg3x&joh0-P3!NhLO$#l2F-ZP53tb{~!9te_{qGjKLg@dn&{abJr-iN&x@e*6g#M+4 zZV>ui3(eBfZ&_$Bp#=-g5&As~?IZMmS!h3@e`TQqgf3a=AfbP4p+kiJjfFshgsYgK z#1kecZim3KHmx3ex ztkU8?_VP>d;KTl_(eN=YwM|YRdpR0-DQ>?M4?HZd&7(g)>`}QKB@R5i;1YO!l*k<~ z#Y10()HGK#*wc1!A5)hVW4t`+fs@9Eg4&N0(uwsBwdCI55lMTv?)#x&$J1O-VhA45 zi^_U9>=6i26b*beZgk!!N2!nKokool*OhkY%o{a|N1TU9XT;bBqha&F8LiOUO`QBd zcYb&e>uG*?LG_dT4E#v&an*ir@D#Dmy}?F)cpg}$8C;rp9uK)t#u2hGW6zSvwud@` z^oR%+hrAXEWb~vzG`@zZ9L013J1*1(Qf4k6~EU{;GKH zPPB^W(x-T6Mp^E+x@*zkS9v&+FQm!a@jKf-{y~2P6Ks8ediW#9p)OuiyhdEz1>RD; zMO=eH94jOK5Z4$H=OIo05bwA+epI;IMx1dMd|dHy;u;O&_H_LQ;_5E(NbrbwL;M*R|BT|FA^sT`|E%JlCH`3#pHX~<_>7A`tN63Tg;x7?@$;D@VB_LYh>2fenRqVB-y-FfzNpqGorzC=ww9k_E zDT$yZ?YATh5v~zk{EI=J;oL=(AiKI z(j$bmAiIL(B5o6Sgj8;vDT$yZ9kryRN+M`U$1LfXk_cMTaZ5U`B!ZT7!jeuXiJ&E& zw4{?tB4|mcEQuEq?+plA(!3?jD~X^bowg(%>by4~m2be512JhQhl3d%01!jY*JfgjaC9(Fj{h^PLx-bbqZkP5;QvIp*i2dm z%NEZddz$JQa;2$nc3_5rs&97XOpFAK`s(p$G)jjhoF2jTA7Um|r>0)u2YtDN=XEp$qBX9E|5wHqFB~C%RX<}=arqHC7rgU(@G*} zNoOqSjFJdi(pgJ7t0aQWj?S`C*h>5`HNTGC}px~wFEmUP9Et|*CMGnub^N3qIxu3Gl1 z%1+Q~xMoS$ltj>yu3OS|B@wiw8y9k0#mGjov*+YD_|EYFvSYk#R^QZ9Hwn#!G>``!${CeE>*HCmS;~cS73@2uqzdq zVg>AK1*TX5yH=g;s=yR0V23L(#R}Mw3QVyAcC-RhtbiS>z!WQB$15~saDSOGgzfhktN&Q@TGHQh_O!!_=*-)~&1R z7C|q$R>`hdo;|ru>!WY0#mGj%~fEE6|j93m|_KNe+8yk z0n^*kMOzfhVH%EupEjoU(+meeFF91nu2`NuF`uz{w-hU2M=IqMD_}<}FvSYku?kGF z0(QItQ>=iUsK68}U?(du#R}M|3QVyAHeZ1$R=`eIV2Ty6GZmO(1?+4ErdR|zC`SOHt8z!WQBmntyDa+uKMvZ2Xkp$S1Rxl+llSe`w(T7fB6 zz^+wbiWRWy6_{cL>_!EqSOJ^Wiy}E%DptVuR$z)1u(=9Mu>!WQ0#hu9X*l-(q*l%T zpJX@)BE76+S1iw-9IU_;D`1BzFvSX(Ud}GMrC0$wQGqE|z)n_RiWRUk6_{cL>}&<5 zSOGg+fhktNj#OZZ6|kcfm|_L&SOun70XtQJDOSMdD=@_h*y##Pu>y9k0#mGjov*+Y zD_|EYFvSYk#R^QZ0=7_rDOSKPRbYzcFk5YgUYCVlmxW$eD%lmwvnN+8FvSYkwF*qJ z0(QLuQ>=j9sK6Ay9mQm0}C>`(=!SOGg+fhktNj#OZZ6|kcfm|_L&SOun70XtrSDOSKvRA7n~u#**- zVg>9}1*TX5o3FqWD`2N9FvSYkp~_e*R=^HdV2Ty6BNdop1?*@ArdR9%1*TX5yI6rKR=^f2 zFvSYkr3y^30(Q9qQ>=hpslXH~U{@nUx6uBzz$SkiWRVf6_{cL>{JD&SOJ@_z!WQBrz()>fJ zvsAhK>b2V^d>J!YamkQt$p^B&krh$ zO9_Re9TQz%HL*|E+5;LFlykLq%ep)EXnP_}qInFY>PG*r9Esmv3rsr2^oOP^)@q}r zJn~x5z7m>tjp^i;x=J&Nnlg1jlhzIOdzi<4=#)=8i5=nTHK{@MpM?FN(Ia4iJnEVT z;TgRaWKX96dj`cN{&Bm0TYZcMHLby>;8G0}a6P=j2qVXzu$%G+@0hY%@dx-F4pq6! z;{^Fbw2{#WpPxw%`*rWv3BU(4Lb0P()0mC z44zc#Y>7q??kXofLc4X>8NTSpUi#Ps6$p#!=*RJcsxnWfii*e?>j&*Li&tdXqLH79 z5fw|4i-xya3mR71^H(bM=*bH7LwF8o3divr;D$#y>MB^iAN@RbczMf#@+nAAw|MWBz&OkeVtz7}}(2{`#`l((}R_dwt zulimf-Hko8!_PEEIK05MGp^Mp86Qi*Hv*Lnba2(jOVI=w5fEOwWuqw!8BeBoHk?^L z%f(o`Qp?4P8V8fw6W}&KJdNkbRr{a%I3Nk~79w0{ypXZKypx6!+iBK9P18c5C7?Ko z?s5xSetXqqi>HBV$o1_M2*8S$-8fJj;ly~#7_x^<$kJYvg~w4e^*qg%b+jdfR<)?e zmaGaFGbUE>JTy*oOz|0-n<-! zI=%=$Whrn=A39Tf=xq9-KMnjkCZy#yCTtzSq*|kvBByJ{VbXq5I{>`Z`Sp`@R_dDwdX>`E@KfyCQihgYx*auJ} ziggH;CsK}qfXZ)6zK#o;7cor0LO=KM{U8b34D|c5vq0@1 z(OIkk1pbWF`xg4FDfZEXTYf(G2qa7`lJgNaArwRDuVSB+_C52cwGdLp$5@fpXE=cNM`<0y=UOHTWC$KjCkxFd;o1D3PJDh14N&9; zwg5_vm&smM8_m8~wUvp5`G}@+u_^k7O`4YSRl2Q4Tw#Tjdv}RXuh{(4Y;>IhC;$}CfKnjC~fPF%5U=Wi{uJ}fNh(-JW$HYq1%fdTE zX)FXq`>YEM$;O6!dIZAS@(e$;$Ztum-Q$+<5n}FVMS4sQu2H>aEDUIm8!u}WXwE! z>r1}`J{DhM>}wtDi>Rc{b<4K(dserTV2QpJzFTO)^z@*G9Y-o?0h07Z3t&PE`KuDj zK=XwbL<_Va%VM-3>6X!gHkQx=Hm*R6z)(S>1OYM!1&osr!MVL=X0FubP8bi5Hgy~Z z-F^(WlFlBMFvaZEHG8BKvzO<48?y(VVU(WEUWRPv4cQXk$T-toLcZP!e#jBc8rbIB zKBqm-PHE~X=))?&T*Igzl1=@xYHkG3Cr)0q_Q6`v*yF#<7Pnv4jvIN9nyTC|*~ZD3 z82iAc8*-TB5-;17Q2wrP!RK@Xd15z(K#9d@k%w&)uku)V>|yCm+Q$1jFPP}n2^Jsb z2e11|yrE}8ixfNMEbx?|*IB`ZmMZolCNXL7B}Rgv7^gX7&7pOog|lg7L(VSkO;aK^k2JUu zHAxzrrCSHm@Ls|P6$Tk~c8_T4;S}~1hH+`|;~2!HK^UTA1U1gbl|%zhq@eBM-A*dP z@2M0x&#$pbbW>~+omBr$3(R<2paEwTrmvsEMv9;qrgKVSNoep=E@v~wPNXK+{3&hV z>^T&YOI;%!4Qk_tW6ir$yJ&KFpSF52Jx3S;zF|q?!8n0^XTl#6n=}bUqcBT>4ae4z zP%zL$+SH3ta6MfJG79OiRN!lB%pT2bmPf^sOCz22F&4nrkxX!w=Z#t5LCTf2HhRgX zPK<4wTB26Ez*}AtB@1u(ov=HUwjGqr!FxDm*Sd~M8(T=H=pL`>(pFp6xZ&@t)q~+a zr$E2m@pP8fv4`^!$42&}A<(o=um!7C;}sl!wC}(_@#cdiw^Z8FJ!=a-_=vSQRdbNy zR9x$9?KY{ot<$t1dimJ>7uESpLw$L=X!WeCt%H9)Ywn^RA=?=aG(Blg*e6AxkR_-m zNG^Echz?Y${5(rDxiQ**m{e(4s+9XMns@wk4kY9*E4HIhTyEi~gh-Qf+6O-gxY-=E{KfLEYk$?MzgxfEa-hSBzv}Rl; z2)QL*N`Eh=zvo>hjsMx#QgXwmw9OiFh>y_)iga9waW-od(*92i}>6C0951>`}{l+g8O;) zC9yYqkxHyl2@WHO?U-hl;Xo&c=h1(s7wc=?Ij0 zgIK#hFhtXqTM`|f9cn7i!yPFHaKn%c!9ZAh8jtE>zq+<*c9}mI)HzCbm1r~K9(CMD z^sWy3T^OQn9iArQJso%&U-yVdI4ZJ7@3DJQd{ABDVw6X}k!V_r`EBF-wx*U1(Y@hh zfhS?-(HwY56MkVBCjdLKhz?(npqLF)4>S!XO{EbYor!r$jLSn35{@J<%biCDsek^> zk=}2P=$o!$9T)sKb3N*I1z{uCKYp6=?$3D}wxRchuaaB;(dC zF~F@xmKeaoTVlv7i6p}1bm*Y5O!^FKizCsyQ0tf^=Q=OEtF?|(tGe*+*1CaO!*{*b zh+1p!daWC&wf?Txx`|qOb!_pt@}^-0vs$~r^Tn8zCRQ=4CCuWTv6?RW8Ivv25$RM? z=V>b+oMVN~g`%aKkmbc-Iph~==}-UIFtTD6I4cQ4X)lTi#$({NfDx{di!;8l?m)J8 z8&DSnNDwCKMcA#^{_M$)dU_X=W+SMY{-_D}lCvTeEaZV9r?^C{z!4zq@V#MO0@Rgk z(VFdiVZb%SHBW>|6dVBvpN;(|o#2;mZD+Md{&ZFe&2TxQ;A4!c5hWe~v+O>ri_?!p z4fGIdDw%qK`iPqKI3}xbzzqvxLq>wuC4Mv@0#)1MwM3v)MVqEs=YfeF*`QUb{1{30 zWjg9nb@~}}ZFGxjl9q;4Ub~rC+$uk>cz2B(W!XoryzzWPL&JfQ1#3 zr1me=gT~9|bAyAbmyAv&&+bG5qg#yRPUF3KZs{igT1Pcjtshik7!wTHLQ?M2~R%L|Ua64xI7yel}{`m1CN^XR}=}`4}1S9BZLI5aF%y;f0{aQ!XmP{K6l*XR&ebRTwUTj##YQ2pYc@){{KOSWuC9?I&Q_x8r2 zj+3Cu=l|53j$6sRC%FyWBFFSMU+p$jml|&SHhBAH+RRcrclKo|BrSMQN4HxvHG&)~GTxBoiwTsw#i_O~ya+-;4vQlskoBPQo3U zeP75tN1=(8m}5;8LM4xh(QJW4cj=pVh2wh}?Kdlvw|DXE1rPh#G-TtK&Jt~Bj-mjt zL=Q$rG+yc4&(7|7W$)M89}d0tYiq-md;FII3B!)_l$~~cj%(1OfKmL7c-_N${xc|t zkK6h`YVp{b|0}Wo8{Ks__sMLB!8O<)10yZD-b(&o+*cqii&svNedVLwwc>ZyWuIn( zv)P&@{0Sz9_A%%y6E5M2g?Q_&pWE5Fok5~>hpW2DFOMX@z6Poi?UZKlw?>nHgljZp zT#^6ji6rc7P+JCALV8Wq1bJHEo2NQ|T`Tc$>_6hA|NAr_8;AxZvxg>6OW;neyLip@ z_Yg(v?aCsqCwP?;j)*H{OsltJ!af8!zim1ev5vBuk0)R0`bD-js^|eErTjSuQv>zb zF%gg2bEZvbRaWY1@{@Vk^ZrYrssHyhhH%bE!w_L4H9c;K67uAitq*_gcYY`NO1VE! zSH>1ba0i9kto0`NJIbrUj0itUg3yP_ZTg4ViC8mgo#uvOON(ge&F*@zcO97;Op$2I z=qtM2?nUcgeJNh2X*=+T7sFZ5zydFS?ni(jMY1ZO)I5y&)i@O5x0J}HAf}S~T2V7@ zJWjJLGxujbnU09<)To-jHVt8e4l=e+7y~<)teZ*(e#VmQ0dITWahT^j|Bd%pcXc?K zfSFKOO8hLnSwnB=2zyFmjf>X2(Cs99qBXmdJRbPEvC&+-m2)#XP^T~J!wNYfz zH?&yF*;2cw<6%%L#b--bb?T;io|b*sgJ>9|<`X3S+!Laan44hW zwTE*QVRY;8Vib!z9L9ducE=&cLZ2`kV}h7)Ef+nmKKQI5Tq9;4WXi%qQM*T;C7b%d z%0l)@uQPN-G@ASuJCon?9%CJP-A**9PO*-`!i3ez;>MF9X@j8upwYK9Q&U&3`{V<= zqs}gn*_>Bsf6!MzTz!Yb9X0dsiHSOo?{b}2kC}5NJbdoWXhr7(u~c9VX+`HD_FHAY zvqGvddxRInOt8>d9pQge-aucCm^rG_VVbCaTbiMqvx7WmcLSvfkQuGTlJPJ_}+uDdmOmmQYkq3+gj@sgK z!5SVb<}JI>sUrxb7NCt6au9k2pu8Xbt<+QmA$xqTW|JStC#c#gYW&vLPLNG{YSb7iz8MWoO>>Hc^(q$oU^EKqXtK+TJ<{5vK-$*0 zp5}oNQkOZRold+IF__xUhO9kCFy=i71~uSj16ErV^Y4iXQ$xb|Lmye5iihQ1kBj)V&x&pW+{r1lmwt$b3)Xd95X@miW>4W zzOoNpjf4=cReSfro8$hYl8X#_CedX!CQ0ElD(E&B;Rz|1UdNijYN|nNXbkQZ^wa9r z$e_kWm<&2e#<3tbaA1DSs6h`n>hzu3EJwm3b_t}_jQbXkZ8EC!k1P>uQZfS~dNZC- zYlTmDXwU;*N86#lQ!JwUwzVXxR8A)sS55*YT;*n9y>#WmOjkWfLJ!y5N7h^7^BgIS zpvkX`U~SCLb5bp~y1S+8OG|B8Oo!b6F*7=hT>lZcG}= zTOJc6qNOpRu{I`d5>x&VRDiK!1`z?VX3(sE)LsYFES|3G@8ufvb6QTYPkSKG84{Je zfd4RtIoKV8Nb)Oli5X59DgiOW_ors$Gwc19`E*^bw)7=e=RzKzr#huC)Y~62X$^Ir z_7IFCj3=)Q_iY_eF)9ds8%-%-D}uFSdkx;}di8EfUP9@oWb}+%oM${j8WNUThgQ;Z z+HZ8>IkV!IFrQTY_>T+z53TY0ssBZkeMreb|9C_Ub^J{{Q z+lc&B*KP}3_^Iw{mn<)i3>Eemh!doOxc+ne9{#q+F_})Xl)GzSA45AUtyS%S5;Zc@ z&tvzJoaU3r^}XcsWdb7v_9?(Ke91gkW>~)@3;YfO7@FcmcE0e3z}c6QefVYSt|R6A zA8_m#>dL+)2quF`;i%}98g&3lNk?pstbx{9I*2kyd<&ryaT>rdQ8o~wa4f{mw1iU# z-ze?|gk_2KZmVmH0D=Ik&$)*~W3CNORct|#f<;6?b6Dn?vVTBJo;Aci6Sd41g0>UW)p#ARHAy_>@b7;wxd;|B3>d_j|KIq(+DIW_MwnmFvFB^es>uF`Z(rQ1F4If`*v`)U^ zcgeEpJzNchJfCy|w(oFuHF2-0xR8^%#Qj(R&bJe02Nv6wq zuCno5m9-4{Gy<2>hyFj@*wOb!v>}@4G`a)tUhgF;hJI*E%?26!E4mdVzqAT2f9Y=B z!a(B(DC>@)ha_(j9W4A5zYO*{nf#ua;v~?yD;U3zg=-=7bsZOKX}7mDRFzo~a7O5j zFj&7A?u6gAT2FnJU&!;xDSmZ2@^>dAk|skU&T?#t2GfsN$Ub5r`-p{Z;UfosdeKLC z^IOAAN`j)L52M_Bd>oz<}HohHIqx!z!IHkHhO z!{~*Xy=YsWYia*Uz5{u&kzIjFjY>hukFX8dIszNDxS*0I5(XZZ*g+f0%cEKL`!Zsnr@%MI2@|^j&ZcL2yq}?j;>^17P}Tq zYOstf+OUZ%T0msc0*6|7$ED{+2iYL97)$xU^!ftXu~6(?O;lfAwTtP9t{4c*Y}Mvy z9vT&t&Pv~<%{_y!mh-ZLh?+RKY{4Pe-R=w&dg#aEg=XA)FFg*eC1G{J(GVHVvhLJn zHQ8F$iP?y0n~c4+eQ@%vjwhX0IvfZ6=se|ybI}01n$mid&FwpfTCv2hu80jf+KXu? zcBO~x1>ds`$QaFZ@5ylm#>)m{sXi6cu{s*-z-8ac{`fZLL*iaI7c9EP!MHh*7DVPE zHK&sZIfJBV^>=Rb?-1{E_0Q1TgcSovl|@5>Z7hR%7xyE5 zhw)Q<@c(D;ec-jKs{H@+{Ja02`ws*}MLqYiKRSikOrzhyna0y^YR0Cl*G#{rsVPH6 z<#GkRT+EuvtD>T!qM~7vqEb&e5jPGIdsXw^2bHhxss!B#u3+;l=|-JGOjo(HTQiacD20Xu9b--h zc_~?r>Sy{3fNp%>E_4{HBR#=M9sXu=sH4!?1(7hAVK?evoxLo@2O>*nxS(b4Rii{3 zMs3JS#vqEL7C!l|>hEJI*>QgR#LhR-eR|!e&3zCt5&)}apnOPugp|1PTbdJ3;@xM| zIIVW#_?lD&p=z=!(B|WH8CP6qcfkGP-*IjO1~k)cz9oc>xF6lN5O=rPsQ2Cx+V5K;3qB z$um@SVh7aSIffae=cOcPbr2HmY)9keZiODo@ft4JeCT~5h|tHS*uyU?5( zM^{#~7!j#{s3?^xQNqaxuqffu-l;P?8ggBry>F5mPl^M;wh913WZM~OT6AX6G5R#M zGt@&9s9c)XZv(%{YG|~^=_0Qdnaea5bD73sE>jf93mF+Xp>m1dDAhWR9feKmE=?>m zD%W;Zv546cRkX2t%a(C$u3oo?Oqi|-xG)GTP-;UJ^gYv-Ocfc0YgpvIHB{j=NL9hy zKyy5~d@FE;R+!#JYtXwwRSXV|7t^~|Ql^?_P2x12hLldXuXg&E`p){R?Demr>0d&- zQa#v@fGa{SY?;Fl+_COXoe{}&rh2MUqz5&G$D(I1v8S=NX}U=nB4szMNs>l$ENsJX z>O4j8E@8^6&U zmulG+hXM^*?I=4(3?z&g%g+(XO*u~zvb4Q59y3AO;n}IwMvU6tXw-0J`bND9Ha06~Tk2?8w)WgxiUdp!gXdasAzp#}(GN`?uTQosb7qUlaT zkZ~r+GT>ysVBlbz>RlxL3iHr@a%f!~m{T>K941SZ1-{0(iT86kw-bbDw^Fud+?zA* zjT!et8Ml_OLf&~mfEx}D#Dp`P*tm_7dAMtAp+wReB4c0l@BUtWkoX#a9YH2)!NFOA zOSXWYK2E$O3*|Tz$11w8FD@My$L!OhZ|pCgfxdyR?DP$t7>Jy@L5S3iC_Yq?ZULXY zaCw}v5ygkd!@|8KJ3t<%YDDqD@@R$7DHoaXhLX`?8U|;O(J%_hpLV5T?9pKFY%wVa}$Dr8;hsg&+%*iiM-#zivJS;Mc5>=) zB%g^C?rhfCS+pEc2$rWSHon>bk}Ex17*cZ*UTv`~o{C;i9lK#m(-Xt2AO1eT*fc?=4UjS~6gc zF0(sIx4r^7@O`LKYZ;VY$Ru(oS%EoLQH;*5X}><{(oqv9b_FI=Otvn#J|gT;Ue`+_ z_KJ0VC3;z5`RVLS^1b79mPDv_IWxzEb9}lafp_C+Nu_^|pvT@LbE>Y%k#4q9yyogP z&NC@#tGt`)N#T3k-{26#S==b5_kixuIdK)=;(h>NZHL9TgcF}b3`H%)*}gExUi1t@ zr#5D^lZrVHUC!=}*=QIV;;)bE=I-!9W@YE@=(B&@IP7(Cw3P{Y*YE0ut4sOVs;M%4fz}bi!LX zZH=;5h#!8`=)f5UBWl&@H9N4#Zv6>V(*X(UVi7`Lz{S12Z;)%%=?rNOazWp#v>!ka zn(G+68%{&sIwaWKozn`sZ{#qdbgYgTs+WTo-xmx1N`fh9xnF`U1#r7YqZJ4ssmq)lSah5!R`>>HpF;z zV+edkAfARx?`So|vsl>+A^QQ;1o4{$1Tb}Gi$^@$R6_is=|VgJgMGs_BSwgK(8C1^T1JB@o^1nBjLn!9$Nt2a zbBwF(xRDLh4C87|85fi$xL{ma9@ogY#H>PRm76oJj@>b?B#w#i(FeTO%J41vShE9h zbggQX{u%DY^NhySdesse3=9bX)a^nTtI;vQro0VO8Gs2JZ-WDiYlxi}$s?`=I|q*% z_q|8MJ;Q=@+|gZT-MR$72+{wa&ddkTtE80$Pa?J(Jb$a>syf5NXphi9tWbcr`+l5v z*0C;P=;EFOUEEkgT9cZONQTQU#!`)OucbNm*P=0~b1E4IDD440SQg7;@EI*sQ?sKOX- zQ<^|FK@*iGG!fb826Psy)Q(-!gjN=w4NauXdncM$H2r@fO-N{@G?5V-q6wtOE@=Xp zp{+er?$PAgCjF1q*<+fYKKuqT>FK^*X1Onc#eSs{Y6 z;?Z0!L};d%Mr_DLXquQtXz~_vXu_CAtab!wb!h6CMrdXia%d9iA~dfk(D=6cydr>R zvw05ZPBUpCL+Y%nNyyq#8>xW?SD<{4TW@YD4)IY)m{5Hcd$<{IsR zc_V@y^KOxX3deSH4GvW4)T&u!WgtpJlD%E6^e1b+t9b|RqXv?7&*1JxRzn+Z4$?zw zTN%p8#vyJl(R4gIu?fgFzo3`G{Gt$RDaYm)+Cx_-YW2QiXtA~-w`mq~P6swMqYRS@ zWs~w_^N^QD<=(@U$>tcg`9p4~w_y^|V=`3Ptaa_iE-^@;yHeIvhfY_Ln?x9*jlQIs zuz)MUsGjl^0SOB0L68RFSPlx3ux;r*X^~zU?HWg0YzeuEhqPat`@tW5f26`xCr0~C zSISH#bjQmJQz4i`v+A$1XPk6o+EH`?$5iW+#17M?3L?mK=GHM+U0QkF5n-N6X4%Q^W1JZf|JKidv+hvhmXij4Uq7Fy^Fq`?-1tc`= znvk+?%ppI6bw8>+)`OrbdMxgYbw4~k)`PHW_30~ybdiE@W)wI3sYs*eAr!d4Y3rC=bOVqB+s4lzyPfzMvmZ>7WcZnN0|e!QY!Ep%CItcpF~mN4 zx`qNv(>Sq_Ph;(dNxk2&Fk*bm`poPV*jOpi*^($NMn-7|1%AUKnHvoD=jFHLo3 zFlpCM!9dDh43n^z225tyi!h0vyBkaz5JH^IdySJA*UBL@gUP^293}%N3H-Pv@NdJU zFdsMx#?SEuP7*jzDo>Gv%`sUtOm-MA!T7PR8hQThFv%4Q?k9*gG&FT?+6h`|4_f3? zen*!XOtPJ5GzqVDOoKjWElrs0$kJqnX$X^OhZ+b*lUA=IL)MQ(lLmy&gSll@I0Vvv zN`%mhyRl-c^$E6eDI?P3+}25Btat2{?p3T!X?s$Obu9U^*Ts0V-F_e&m-Nj@e#VXL z((!D3Mb)c|g%(?HlyPSyf3f#0a`EPR5%0OBKk&pVBDK zmSVP{-xRC5?a|ALqiUIIs>YUElk1QqEKGlPL9sAN=LnY^!1a|Eh>HI}?s-zl`3`G9 zF}jhc*fg07x*@M3R~&2raQ;HbR8u&U0jMo(I-vaPc2KfT6To%4%MT1=B9$C#5!KRE zSoQ5<5C6Rsgzd|7;>hrUbE`(gB^XSB!`S@ZZ4ISHrO3aHErw$6_@te3y=Bic~Wf8;hT+ccD}LbUGyitIj-48WK% zckMaL(k&ec2gAVz3fsUCq8Z)_#iQEL-EdDvTPL8dta)0XbGi3(S%EOl`)oJcSRUM7 z-niceVndr0O|r#8Lav$Cm)ly=)rxAZYik>Az1NHn*ZmjhR$M0jE0I|qR#QLgu_#ME zpsJUPG|p54HteW1xOvAobuSl@?Eq?lAM(8ixd^5(TF9L-=2bXZm+oSR{z~x zacJGvYUDkihWSyfn@8^Kkk&1WYF6Wap+6uK(%2a9gC{a6X@xCFZ`IxcaW8;m0yjXe z!3JDb$yG8K2CRf-D0xU%vajNa7tJz!32Q`kxgvO_+{mFy*K?2$s<9H*@-hgM1xk2O zBdna3@KCX_1Z?~H5;$vFFJS|76xW0;B}%BIC2V6No`+!z3|J&tg_N-<6=2xT%8P5o z{7SAB3oDH!%%>k*3FN7lu!wtht`*B#a;@O$@CF!`8AlNe6&tyl|jg;uos64qhch#tjyuNsnY{1_>oYs)4^dcK?u>=1;uwE1#2b2Zt@X;*WS z?WVTmS~Rz#v7GJgp`1$6?#r21^@FuFS!9o4!rGHmeFfv*^$GPjcwr#-k@u}b%yCVHGpkq zs;3)rIjO?&eGEP`B+%t-$+c`U0uF@zXEDoVwUl#Pn^0z&6(J^T!bB3ra`PTMv$8$N zjnomlCbtu7u5Ln-6%Dyl4hs`59_P9KSX+%ZB3aIy3wuGx!PexbJvmWLB5zD_^KKIr z9c?XV*Sl#+NiQ;r^&+VkLZtWVS~pE-<&**PU`0!fLol6;U_M5IF!2+RGDYOI+1?U_ zPkIPp=tJT>`q)15@)p)q&Xvw#UP{wFom%G!tY_lttW{4qONS0Hdx(Q&42;~La29r( zZTP8q40g-9rKQH5!|`YPQ&k5TxRB{Wad${oDJ*$XV;N7cnFZ6D`JhaHW_4LqU zI8idcuGAXONY-ItBjDrQ1RcX6M7s5YVOyK3I_-NU;+nQWB&eS7bVyeIH3mG_$^Vto zx4Ja+{jSrjL};s=)?KGDg|8|(5!i}yqzIB{6pgM(5J0QnGooi8DL)cQLWwy~BO~L` ze2Nj%`!P!|%xydjftf7(jV5wVoG7K;igm@9asaI)8xHdYNZLv9V2bT(MYXN9+G!gW zp$USq$cCA?4-*L{N!CodR=dENCfiNApzcFMo6*S}TMHR2P!~7mbJYi?q4`dIRw26c z*-cB;0y}e_;~j6C1IsKk+f`Jn4$Nad6VB%#!&(TC*?dFO9D}VG%6C#BHycsyFkz&B zB|!s=n7-DV=b%Ka(ZF&j#ECU#uwu+^N<(IWyoCc-&^9lQCFj0&cMZbgZn17Yfw6)4 zgrejSIAkUxCgN{n_^wwY+mgkH_V-TZd()wGt*9IeVsoKgswyH9@NMJ_3gfwKmJ{Th zx4Y=%(nI?>=UgCbGLJG@h|t-=wq%%aS&F-9iA*Y6$&2FT4#;Q4(aDOEOo>o7K|ke$ z!G^!f1zmyqy5JvjL0>|HT(brtT+d1SU(lZn{~$_!q=zwpe|SA@MNx@yZ~FnvkD7TP zCE4QLTJzcD-3;esgLl(guloJnS3mKIjce{(aPBdMKXwzjV7(Pkct7q%-hC0gC0XJ< zSID!>d#;mbh4w3>MjaJkg?Gq`QV%Mt!2Pxy?-fdpG4wtCg31N|EhfuNzQB{AR4hlt== zYJ=^u2;qfCOJI9J6=S6YjSC!Uox+Ke)ue`-Ffx<1A!F~@T9H^lEZT07#%&Nzin+U1 zj|ei0F`j%a6p*y^zK{aaRUjG}C12ld>^-}Uy?3{<-`Z8Iah&9VouV1CLH;JJsJP~@ z3_)ll=Xwm5dtWHc&m~y3`vi4NIMGdBH?>+#K3m>mzeGaKO@NFkfLPg87k^yQ#oqCKjzBUx6jvSUWv5t@Qk zJM=DJWyi6FahWP@`fQ4x5@hh)W;HL~qndfFppU%V&3uEbWhxRFU6j<#q)1~~qmKXDek_A7E`j0H=3}Yti zSIDYCZ$CTb_(_u-tlL2&R0ca7Wo5qzS>cE*E!Jy=#{xirvtBFmTQ#j{+o{QGpM8_R zHtHsC3~-OW$-fR+_q@qAvux7jd!Buh?;CZKwG{g-d--=E>z+5+*1VfE`Tl3$uG^5=zVDx_@vCvBxfv30pt zD4jqaUG);k*;+?#s|511Y^wyaW!=NJYI?cUj{ds4;e99;)8)`Us5%S0%gdnlUv#HOVd;k5GjL-bj9reN95i;JX5HF0&FlJMr| zWx7NnKaY5s`B@-b98ge)qU;i3z(bQ|uAHy)raB3+_cYsBXMRktBys^!?UXGZbaSr7 zkQE!m)WD-+Nl~!kUJATsyr(i?J9uU!sAe03#S^NeVK;=+Ew8i9+1^2)-EEFgB_-RW zo(lAOyE|Egg`aZoi-gp1JTb+6MQuW`jx^pjA(%Lf13$5@t04M|ye@?fDvP4nFW@?o zmT8szTb5kQid@~HIASOAhz$?fG!{28Q(RgSr^t6x(xm1kP1>m>n$^i-X(LR4{k>?w zpe6+Xh7_B+T-U2%1!qJxcKe}f(+w_`J_HM|qX#QV9QSb6hxUQT*QGsppNs|RREjg& zq~j~HN#**=4SC2<2e_Cp>8z0L^dF~Z66mhOIsJof&n0oQ;(E9Pz>f3)#C1K^4@##l zXS?KR-hj8yOUcGk&)+-WEA(ME<7l3Phx(5$9_JTYwAEJY)16-{y{!^Uyos_%& zFb;_U3eJZPQ&VuTV}QdJ>fAD&&W@S+wrxF*l3J7V>=vDIr zD=L!*6`tMTRvrjkqCjq9V-XDA$$`NL}xty4H`ro?0vnR8`HjL9!EQ4 zXNiYvmskQm;iqzZt-ytqJZK)U4gdqI2ABtn!N$G#rG=zKbJ0PbaL)IUobRJK-!k(-am(3icVn4m z*znOAr<=Jt50&(Bde>1`o&?mx5NH!(EJ`*y+5>6AZ7YwG#Jxf-)|~Yq6|wZE=r4pXNa=r(0zI8d@w{yPljtgL(ccdobOLL-WzDshxOLM-< za=!UF-{m>q6*=FPIp2bu@2Z^d>YVSIoNr;ycWushUC#G`oNrOicfEYDVniY55!f8NQ^c$$OF;x5vaOlSkg(LTbdFdi^IAqMyi# zu@yNVJI1};$REU7{%k>z$B%W_d$XK8p7U+X`JTx6p3M24%K5hEd{5_m>{6%H!vcKH zH=G0gyqxd+oR7WjOeu47z6*1{i*mk;bG~^w-z7QUrRKw!ke!_6lyOip*(>;C4(dPU zd|Pt9hjYG1a=t(3d|PwAN9C*c@MSsB=I4Bu=X_VlS3J)BhdRxkx0G|8W!z*=y{^@k zY%zCS_-B?Ds+u;K2J+k}*j~5oH3hOWPv1G+mP;sk-L_M@E!wtpAz)%rBCGB*-*h+O za!R%-*L9_qqc~EsfkE3=d!xys#XiXFhq0V6Or^)N01>cg2z9s>VYDTsDba$MfzAme z4edIHT{Pzbe6+nJYL|!zVDT?0RbdHS!=Dme6_f93E~L1PR+~G)OsxNsqB_nE+ScUC zOrN(V3v#}za=xo`J`S)jY*ZqeD13=G8Jwc)TFU$^5~pC!#-u$|wlG)3wK?B)Io}6z zzC}6T^*P@MbG{pLKF-RdW4kr^kog3%9sUSF-Iz;sQ_i;}=es%Q&fwnOxyIlbEXMnvYxS7&wg3Y zxU6S<)-xgN*+1)9F+A;%6bmYdJf5YIOA5I9L8BsU)EF0dJfBacs?Ri z!j7D8IM>JL<$UMod>7<=b9256bH0mmzKe6dc{$%DIp3u@AIn4;s4)$k@m-$tU6J!$ zne#2k`L4?OuFm_jBZp`^^%K5am zQm2labG}=0zFTv?r8(b+bH0z{d>_sEmgRgO%lST@^WB#7EzkLGH=iA5hKa%J%ZX0m z`E{_~gYkbFzh5CS|7Y;)%!L}P_%#jjcQwR+zajny4e>v3i2p@H{5SAt;rUjB|Jx1z z%?8%)=-9U7lxH{BVkQ%Ime-fy6e2^1vj6A#m$f?raw@P)uI-R9-)<<>p zuppVZ;A(eW4kud>X!d2@QcYMNXE6*V;kCT8)Ni)W-EuglOY2MLH-{B*EwfS*D?<7I zRD5mnVY_8`)NwDtO)FE2@qP}6!?H!j-}YGBu@Sql!O#q{~F-3@EV|yiPH2y zxSPr%Z_TevQ?=R_s@3_Not_d@*gXy`VZk4y*YyRix%K`ZEwQh2(IB2zxpmr;FpNsu zvNT}|XzP7*Ouw+|&h2tPl-@}5u|e{hnv9S2;4oO&jAVVDWo^FNS>xzDt8zjre;oa? zlSb&Ga?7Y>FYA9;ejMrpFEYj^Al2FXJHz+XU|QoQj`8|fZ!+A%DBxKL7WBHsQ94zIGck{Y1$AC! zBcfbmSAq6-&WO9;kX{zDm%Z4V;f}TpxpteCclV4pq^X`W6YMS8zhUj!R&P~4DCZRc z6ydmPX32RRT`uf_zrwjN1^)NWg&p#L@>$#gEDWL>jHs2}B%#p%;=}#<^(v1GMLKvD z-nQDTu%gv553-k&O4$1}C$(@(#GF*Kq%cA~+*Qq2gwdSvzSWj`MH}lCZLU|ewO-M7 zs|d5^)(*^?cc@}*ZBRZgvuM7wgon{%t>WU|D*0*b@}ikD?|}L`Z5;U1{be&}&Vf2h zwN|^GOz?SQR43Z}Y(Jjhj<>mCVkTZa@#{*; zZAdJXsRc#`6x_|yF`H8<4Qt;-2d+2j%|_c<MC-=8U^;yS>GzS;~4L zENqM(g-~fJg&N$5IUU~a)euk*)ycgK*lqxYS3uOo6>5LigxV@ExapjP80 zfJ(=a#>stl6-^Rxe6-#iJiBdh zw`>C($O4#hcsaQXyt3W8gdIQ-YDF%FE&;47S?MIOkXceGl1i8q9&*DhS;)g%y?+l! zmrYMQrU6bS`4HJM63X$q>>)W+#0;jtx;Xrwbf3b7?@U9uck;^OPksMg2L= zrjE6OEV5vhPa#X#U2a9Kp#+90k_J)gwFu%R+|c861Oim*tVA(+m{4wEs&7ynj1#wO zF~syPRtY$`gC#f9C%G}hfH5rsQ^F_|P&9m#WnSaJ1lT#1Lh=lnX)B7DYoIBHp7T|* zIsykuf?81Vw>5)i;5(B6F*wSc#RPjxw2u2bHFPhyfs;XwI*KU=&gd$7{@AN0G7@8W zbQ+2V=}SQ+t6#R|4-vxKrP8pJr;`KX3HV;%K4<}mfiAB8s+091POnrj^^1+ZCdey= zb#w4IBPnU06zSmbC&ep8gnMM@D0C=)%ds96a0Kj4Vv8Pw&0|Z=VzDtH9QG#V88se{ z28VjwVfWC8caaB?&VIh-p|z6PDXH{{>aWosH$^GtSBFGywVu1e-V8e=FT!hv`@J~vgt!IEh`nAX@% z3N6yTf{6pDB(7=w$;26Tw(#mfXe~q>m5ZPsxR5Y|sS&HQp*w6=YQiDqG7aVF^au>X z1f}VF8o50=W~#;N7tj{!&5^X5MHo+Te4(#Mi&|+zL1|SGmiFzPtfTsSQEolMDH_9p zv%Ww)2fK#i);TV15W}S_Dn~ro8ZCBhB`+le4h_fkTvdjiD1J!CUNDYa8;@~P*^3r7 zof#hnLLVnhj1(Pgt|+FdPR-3yQBJ<|GMJn3_6JtHPNr`nf!3fmVBM0(T~2e&7gy%~ zrMNQc@%qzHkuW5u$(`8B`qM;wOF_QVS7?c5P`lkpg(;#<_9HhWSENZHICT`MHSRv1VM39*O~gE>6IKjoOOUMm>8MF? zmUPIG2Z7GQE)HEJ(2UleY{=Pg(&_ z{#S~K>ZRFmQw3IPq4yum_=n3=!B?n4L>)17$V7gyRuwumVPxnP)D)G~P=O#X9;g3A z%aE}!pbv#~b`|u@AK_+XN;zq!D}Bc4HM`rcWH|N24$U~I4|sWs`yVZp@Q58OwZQ-` z_WnbFu64E(Iv}S&YJdbAq@r6i}lZml!g!$ z-d7IF+qwd8$oro79`c{EF011iQ281@CRC#75(fF(AXNv(tkKcr08`6a)El;QRT=oyN*|b^}GfL7rDUbf8cSMF}kWph6&gcXMOxVe9y0|FWV4~b31+n>Qp$%+(3guI5onP?je%kcwQX4@VchLT zMwOhlQc8LgjyuP#ugOj<=>QvbsV<*wg~(OymvxU$%)Mr&84z1!f{f5tbAyrDa)%xL zg?e=hl44&=8awU*jr*Qe3NQTCsnk_y(u*01@5NIGIu2~sYD9=asFI;(0UC#`G@Rl9FHNvPM;= zYgy5LE4XAcniZgn^%{jMDLuE%T!|S@nZ7Ll%Rzl5V@wEavlaj*7#CvrtSYelVQ21f zbh1j$N0uP@Ow>nlP} z>iH(8Y``t8L<>ffD>~a+ zJJ20qKekQ*4ej1A=t^oyahJwHoU0+Z;R2Z+Aex;T)2Jsqr3u_?9Wp(gLWjV>($u3 z(j(pb_s0kJ0~VEc#Z)Y`L+;7M;}42U1IfghoHHMQuB+HL8@99TQvgv?{1b(~aj2S9%G+J#?XMoBMB?slzo6=m?erH*H-cc(_9Fk4spMmIL1+wj|+Y4n|j-%kRD!&bYH zoU7g=c~|uX{El4JC&8=h5E}j|LvlMv<}XFE;Nvckkc>2}Be{LoNX|CqQ-O(l}~&6{mkg;w~>x^rr*yLU~#>g^Fgf}J%%?Kh6&gp%!299dOG4g>tyu^ zJYzu}&Bil!gXWRh#Agl7tDXg#N6jYKIWso#xzVF}WH#|Rqu{L`zuN+v_`Ij!EslcM zjKC(A)KR;uVLM7T@p;4V7ku|>@%(vX6JN-(iPg^so8UGVG&{G|@#1-{o=tqwBYC*h zc=6g1*u;uDlJ}lXe9`dxrDs9Eqh=Fd^7Q-V(bMn9Y~sr-XE`3RkSl^h^CHm8stCKR zt&SV7DfI2<1i{$k9*<+rl8EQCi;&kV*3@xaZYBZ{@(f0bLo-E`@Ry2`GOUrG`+c)f5pgv_Q?RL`KYH4g{AF{j)fwYTSfICymT^_w(G4wWS9fGRr1l-6fjN`)D z!oLC}{;+$Cv}>;?2AxokEhgJKq?>|^t>&nW>F;CimuxX#-`Ln|fL*2mez52}Lp{>Y zJK9d;>rU1@;55F9LlUd?nV!LJ-IAB2Lb9^!ob&-D3l-N%shPro)aBnh9l1sq0GR4Mo>nnPSmX}ed0I@Q=l2wX>v&D6jSWI35zRZnObBp8dv*^fGkl>Cs|SWbp5j2`Ju)_QDr zx;DESgGvInSJbg>08~sRsW_FSf=a?7qHld;Lplx7dOj(r)E_cL-{^Z@%LiaPSF^|V z-dA;_AzD2{vu`p)H_CFshhcRMe>bi0h&G*|IijIKo~LP~V-b8-cJl)DgY+ z!}=qJ=#To&eqK4qM-9=QgDh)G;(N(KmI={o>xjN5i|CIzM6anM`oR$py`=%sd&NOM zW{Cdy^UOg$?m5V9P0_oT9OO2Z2c;1v4>}Z&#kt<2xE=R8hgx1bpBybOa*kA@Tt8Z8 zS?`gZQ`ItZarmXF7P1@7jWX58JL`ve&270M`*t=xnclFxmRs!VbP9+`rRMA!fxfE+ ztt>~q-6Q)BLv|y37qW8;AiGn1oZ68s{0{b$a{8gvqM~1Z)$%4Qe5}omPwZ@!mNa$s zvEa=r+hXP7m=~sOVUo>LnVi)^;blD_#a1oZ%WX@xo@eWydek%7=G-j!atq6FP)zi0 z(YWIeVnsSx@_naAcG0jd33(P=(WcrRI*Zb#il)r4xT}>rb`(Rp(@!lFHc;n`yWv(k3CFQ9>Yet@tz zgN7x02EucLhJ>4i0Ti5ovNVH@WqSt7v&V*Lg4>J%0-QjwJcEoCdj`RCgbc1y22gMU z%E}BfR_z%mdxeb2(T#yB=W}08b1)kj&i(wc3GA6?_yjjE0~&CGhJ_v$am_`02FqTd zA>p=XfB+}8F3w)60cB|h8O!zzl)Xa+*INSwIDue!1{o{%41(td z8I!SX@0sT6%*a^te2)w)>bE9bQVwXq2^!XV5Hv#W*)tHH8#G|BECmH8)!(1N#=1QN zW$$Q$TiF2_IDz273^La583fM}GPn{RK*0$p4`qJ7jPTJwSjH2sUPrv1!jB zc#e?49ryqWPC(h5LB^In17+`!!M*zc0Zt&;nnA|4J%ivmLI#)q11LBFWqSr0!+XZK z_6`{s8VC^J1cJF4);Vv_AlM6JBErQMp`CVieiEp7JysmB4m># zL|}D=h@~zIE<*NHLJlmZ5V6rk$b8C# zWXt!Wm@_*%_QByr?@zEh2&+>N&NP%0xDc6zVv-=FJxHO8`;-=&0U?xEsNmZc`ht4s zWQA_F(8=}CqZPWarV@^>hyJ5N^>jxe`Nw+bJ-Skv=+T8jf;+A6+ZI0mFookz!+&Jq zD=i#%8vaWQ$0{P}ai`&%EqpHEbAK%p{-}j7w{YB~pGS}LY>S0IXyLM65W8~h>sHVa>C;kbJz=t-FcJaez>23J^D zVAqGN53+>-3^MXF!AD@!hlmX>LKc2P1QvaW*z6)?-X}z0&WDI?E<(0_CfGAKo6F9U zP)38sAY$M>1zLJI;sMMM0pW!#JsReFlPuQV586&_}SXR%Rij)h#)3 zwx@9+q?d&dnW`d23n5)@6~b1p%C-zr79T; z^{ZaKv-f1xDr2l+yE1)LIPtU!AV>14{gQ0E{lYFe1snlYrXe*91j_KX-}};8hQ)o^EwpL0<3!HnT^_^!=13Wa>nqWjQG#DqKb~r1jT`wnV_Zt^$F>cZ5mvb-0qRQMP==G9LpNDlLcH+j#LJfZ-KIk-UP@W< zQj&NnnRwysxHcV1Iq_n$HW^;a)r#aZz)(n53;eP?0KU*7Fg!%WCKrJRrKyr&eaN+- zEGO|>0;IUNI`{JkGZ1{G4gpST-Ijr1`(FZruht>J2?WCzx*^(wd#-aozc^T1hX5zF z&dWeB|1SZ--E|0X0>Od|1PlKX5PYo;0Zt%Tl!0LJUjl-!*CD_O1WPgyEd5JBa8Dfq zoItQF1HtmY1O)fiA;1X)D>4wQ{7XP^UmXIRK(HzU!RqH7g5)}5mRM1v>NQjc7sUe? zbrIjPh;=RkPa5%Ui`d{I@W5UG<^Z@SaR?jRH&gGmJaT8@3CRtSCg%MpoPKrIcAkN*eiHhwt zZG$VS8>Dq`Z+$JAgS(7K?6{hlkRiZsf0~6UclmcsL4_o%^dgQPiK+gky>KvZ)*M-w z#9;$IMZJA;WMLv#8~O0$yguV6F6+j2lHO~90*D9iE5bGII?g^EgH=K(@ULa=~kj{*cE_JA9wq%;BMa)+GxFQ zIxo3D;@EDo>DN3JkPII;gCm`#is3cw~@M>EO-ft53s}svS6^ZWgy1X z)sB$zAk?1CKP6>*@)S?jaIwpha<%G^em&91)ieNKbp5#kT<|-8jGf*s- zZae+{0+RL!ewR|zas8JFYcu%!Yb}-(lRe!4{^9w=bP0Z!x)Z>+yh(5ie6%@BTn6xk z!=%I%4yM@*b=s`H@Z*HF8~m&gSkiV*3ir=Awr~gtr|KEPXG`+PDiV&1$D6mBeD-&t z9X&DEr7W~Jx#H`ffrgp4qopd1W8#uWJkn={^ZLa zKDQoLG?c7;7^W=~_3(cR&`uxu#4Y)%bV}xY9LL?s+%F zk0qX{{(LSSlx4-dA=FG3`A&%(8pdM0&#JAXLl)Ws4G1kgF(w3ntnASv`lSzagh-3a z)`L+!I}_+EhHYdBn^@Q2pt>VSn3S&~YG@8~E8^&ZT+ek>FDVzgjL~&E4p(&iuFY|{ z7RTYrj_q|g4i`Co*PSw~ri{w5rb=?#-)n{G;Vofcw9~XNKMDDjSlEUr+&GYc_*$pN z;hiZ5(b?T6enHBXc) z4~(*j1eX z$~93g-jUJ|t_gBYkZZhL*Yr^OD1qF^DFj4(Z zA*F)nQI=t-EGakbr7YXod$$R;YQG8^ozTU|mn;pj0g)g(+Xi^MvMwQ;x>;(8qUzRm zhdv~^sXnIln8IVaj;T4O;h1t`dX1?xrp=flV>*nfFQ&Pe(qj6G4NB8eOhGZ-#MBbg zNK6?qJ;b`rv=37}Oy@9l!!!+aOq7ffG>csiqJ5gdKFuIIEcemFK6;3%OG_!&dmg#e zu7yUBUYRM(zM!2%`z>CyBLGGrBb+2`HjT{kfxUM-QT=Z!2mqT1EDTd7#k~;8C;)yT z0+(NYz~vVmaQUSMTz-K8mtR)E(Lu2EgSf z|F}#y*(Z|stx0GI>=UT_1ZtLFCssY7oiv(kNuaUsfcK zXI&U0xwXiQ1j|UhP6?QxZZ5{2t)TwU7zqDW!(pxZTw9aQ`56p3KP%WdzpyX0Cl|N} znR4mF=*tD}D`X#H8;ETmogBlSSAMMR!^u9J48ypaFyl=y_3f|S`_tI! z&31OF$m0zxaoM9HJl5Ucr^iq1m6*7~i6efr0LGnW9R}6SB9?&?-uA%7)hGS@%R!v1 zMzP1t?I1_h$Wz|KJUlR^yGyaXb)lI-A1|yXOb}XJSoL!icLmFV*it%{ERl0!N>~{&A&0w_uw}%AocmTn z4%v;+7>5wgoHXkPr}X-6Lz|UT_Yys zl)Fmo9x);3;FYkao{-0MAac=uMYOLU(LN{T9qGC!ff9RIw)${!AL)7o?FH%X0_7rI z;}#y}dLgJl5+k{y_UBZZ}`J?JcJVQU?8Kvq?o&Frp%cE#i$3IIi zj|!vBP#kTB(r7c3N1LHC+6*nD&Coj93~i&$&_3D>9iz=q9c_lr(ProxZHDgAX6PAh zhThR;7&F=oV@I1|ztLtGH`)y2N1I{7Xfy0T+6)s%o8f@bW;k%P84en4hDoE%aPVj| z95UJrhwf2^>H~#B%el$9eXT`iJ$iwWkF0et&EkP;-CM<5wl}%Cv7lE(*#we3>XK$q zNFV7$N`~__?lxlM z(j-Zv>}ZmtQCc)f(kLH7lIk}K=uR=TkX4W}7hxKxBp;I{j(kj(Ch{>^Qpm?-DIgz{ z?f4KQn6tf2c=Zj|78HGVUb((pWBPovz+yho4oIg#)eluwVDX43a<$@`=uW5L>UEcg zaJAVwwx4F~Hc7oGHz)aDkhqRIkER^zJUai^U}HDr^S_Wb_F+T(WgqcpdF-BJqk4I1 zC-&UHit8-Lv!PJ>zKB$)Jy$5H&d&EnD7OLg&xtq4l~@>7#=}dfq3p@(X_* z(ii?Jq%YJ$`oe)BJ%(Z&{4Wpbqa#B4s4t|C4hZR6efkpO4o*i)N^wY4Iy~eo9i`H= zhFS{ngJ_3OA==?n9pdmA?H|hL;YbHRSoin`>mL7L-Q#~kNZ%3Q2kX9ku%RQ) zAw92zJN$!nmtI(R>4kNdzBn$VXO`^n1J-@{VBMDw)_wW=h4ftkez5N02kRbwu z8`ATjwksd3`|`oMFCVP?^2dbqdLqiO4z68#;oqfKpSbiT^m)e=$^rji-Iov6efePB zm){f8j|uRDbq_yS_wa*t4}W(^FMCWz|6tvh57vG8VBMGB71HnL(+le^y|C`m3+pa@ zu`{F}7s?0gzI?Fm%LnVee0Zm8@Av>eSoiRQbq_yS_waXw^bn?o>k?i1+O(Vk(Soh_FbzeSM_vN>S^alj^!McYZtb6#ux`)3d zq(3l}57vG8VBMDw)_wVvkp3W_URZbOg>{!+Sa<1*VQnRu6v_wdzI?Fm%LnVe{8A|Y z-~c~Z_wa*t4?kG<@E1e+Lqhpr-Iov6efePBmtP3!F_={oGZ)syVQ~4mD=x1H;gVpk zZX8$WJ2!0U_1RUSp1#8*yt?~heY$u@lTRm4Sn{d%nW2%6KD#2+-e;yr+WPG3P-~wV zD{1MoD@Bz)GiOrnv#Um>J~Mby?6WIK1)j5}u&A%kq@S$EvHjLZi!chp@))0zo{3|x zpBI|>RQjA@5$vAhYwe@O?6G6_m`{73T?OvwbJj|D+LXY~KEEYxH}kqMyhdO*#;>v> zR(s5P`>rPwT6@71wy~qQ2cuhE+3?yFt~*7fu3~JgUP|qdDQu)ir0&4LRVKW13R(b0 zuVRb_Wy7(Ur;YlKxD5kZne-h~I17MLEhKtdHoRvF{mWUA2GL#Xn!;%Wj*rCMI^B^f z4z>0vkq#?xqyZCZneetLoQH@=jpC3EZ=Dk9xI`uHjj{h;FQ`V;yxI`9%tWG}Q zMk}kJ0#h?FE$1>>OhYj;6Vom!Ni+jBDh6sUmBj!l0D*~%WibGtzs1zXdM)PI`T&4q zGtzWwWeIDVW3ks?i6jU!Ls9sP|y`Z3aK|$*U z1=R}|R4*u~P*6+)8wYzR3>{+vAkv)-0s#U90t5&I2oMMmAP^uxAV7dXfB=C20RjO6 z1OfyI1PBla5FijBKp;S&~^uiCKm>Q009C40t5mC2m}Za z2oN9;AV45MfIxr%fdByl0RjX91PBBO5C{+;5Fk`2K*oZT{jz}2b_a-NEe3%A0RjO6 z1OfyI1PBla5FijBKp;SXK!5;&009C40t5mC2m}Za2oN9;AXF$oVsJ7x3rHydqUjKd zjyqEa1X6E+K-vrtnDQb(&{YHos)+zW0}>!8JOTv0M1Y`%2oSUm0fLetK+qio2!daL zMDbzZB+dW=7}dpPEDf@t(kttmXnr&erB0^!IDA>t`bK?8LOO@VYlk$es;GFB7v(9j zV3O5(1OV0p6;-6ve1V|d67p^-@{U;jv$e%&p+iGagprF##y8lB^UT z042QDg%`}yAR0)UU%4^UqykVq8q&LE7;LzzD6P<7*)xZZ4i_bhoaDL>FwJ6b`iMe0hoXlRna+_=VDQ)HKizfXCkurV6Bd@<`dU~DE0vBD>1p|^ggQ!h$Yq=L zS_l)qVnVgtK@f5N5(Euu2aQ4 zh=yh8M4}SrqBX(@w2rqT@+2Xch_<BSnBJ!l@kDS`% z%ZkX4Gw}xsw@H~5k)6jlE<&_T)~tx^^vCfUqHPjqMPz49jw2D>sT!<^>}1RFEn>_@ zlogSkqdD$Iw9O^0i0stP@j#;8Tv0V-XHJe&5@^#?Dz z^GHj$zKp3&k}IRJksNU1!!)N&EBA2LV~kPOfn!`4aFTE&YgaOa+%ZrqT+v~UAx@+L z=aY4$$s`~RBSIOA2na<}Nsft>wCvJ(lo12otsDlCD(*a%>WZq4QuIOg0S=?p_ZLA* zT1wNAfC54Sn8`6wfe}E1G=yCVZmZ9``9#&0 zbG@fUA}nFu%tRqjB3emAiI}987?TjA!wya2xP;wv2`7smjCsdM3P&zgYzcr5=|w4r z98c3F)#$AXJ6qMOTA<+Pt66r<1L%1D$tImJ8snghde2o&s`ZGSiX|we)>2#_)U+4Y z+JA(O??^i<`P}q3+&!B|%O2$MJlI^ugI&rR8f_2xD=v#PYC;~$ZD9GdGXuTLB;B5;T{9IZ6BPtGvFl8l z=u%TNsbQJI(J2!kSp;ihN*!rNY763K_Zc;jq{e0fh>TwHRfIMA=V+U$6cSDPs4dMz zZQ`~hsUx~pa+&yOdQ(W;1kKTaL{0JKQTEiFi2#zh>67bs8}U0OtA3)Axg$f38qS#! zEipvs2pS)Zj5KLZ&FKiR9~YJ50%Ad-Ol-FM>fkF1wPx>HJ9KH%OqxrQ$rL^pm8*%N zmzK#R8onm5tYD18PPI%kN&J(31g+C4oM|S_oyoL2UDUA{ zBW}37ghr4}hQ3xu%_g`!i-DSbN`|RPv7J+T#^Pm{m1(lerPR>W*z=4<3Uy#Cnh8tX zf!M>Nk+P(W1!DG84!mx(QzwOroj}ycNRzfgMme$&S|4; zDkq2X{H~RLD7q{{1DRq%i~j8^BN9}c$!}kr&P&+HA_0$qcu6L?mYt6k-H{2Tm;`Sj zVY|zU*0h$R76?PpV}1Sx`s#IqLe0213t{8m;0Z27p@&fgJ7`Vn8{CF!b7`XQVohjR zm~lvRNtt!AQh%LG?9RFTNe}83Lvmr7VLO+0TbxVc#JSjK@vbqcYi#P;FLm)!uTM8V zbxlZJ`=_pnsq28$bztf`D0NLrT?f-mj7+$a-Z3=2jSe!8CeZ3q5C$95ii^2eJd*ND z7#b4?)QuBnG5hEHN>OlZ!Pc9d^gXG8j`c zxma@2Gzb@y5GGu5u^PqnOfJ^+Z0i$~gj29eXklZg=*0uY?l%RSh2|PJMK2>LZ2S}~ z8k%duln9%{3fq55gb8A~CQfmis+dBYf;B`7J8+6#WKb;E$_{d_NmKN4gTfA;B1?)= zkQg(lL^g~~?XsJ<8bDee5WS}iDYAutB^`wxU8aN*>_>c&|AXphWDVob$^nTSu_|6W zvIzau8NQ1x4RGMcBJ_h1=WL-o)WOvRi_lMD7PZ?Q*DT?4%B$( zOcDCwIiy^@T*c_M*iOarhDpV)~ zI^H_Z3hLOYwXXB61FfL^YLCir1Yn)$s9>iu91*bWu4N;B@@qaS!w~}O^IAFLC%^2Y z6pj#joG1dQ22rGgb;@Y8P!~nkg%%cE;-fB|Eh1PB@lh8hKI&ZJqs}Eh>RjTZ&LuwT zT;ik7B|hq0;-k(bKI&Xu#_ILDk668_a*$+>)guu-t2dXidUF}8H|djY~jr+!RN+KLw>j=6MiFSQ1;yM z4mYZI$2%Nn*d6b1++}yX!x8%Kc!%R*tvrAz4D`F>Fm<&J(P?AFwcR9SHiT#~OD|8n z4x&_!6<98%Vd-wadN~RKspIk?(gw330Mn5wHVomx8Y?2~cS%CKnp#v7%#WS1Y#@~Z zP!#W%4WvF`;yt=-AXQQex_CVhjCG|Iz>Ezj1V$!>YBf+gvVqhJhs?oOQ7aqat0dG) zEvz=yv(uBEX|1sD!JXi0O^RkxCI?DuQu0{o%9N#AVdv}#W&^2}TD19*Rs@BOt$Wng zM!4G4)Uh2-)ac@=Qw!|?y zK1Ejd`4sxJ1xyP&Z3@K`eX&8W(vJ146z7mL? zt_|AqbO}Nu>ZyfAo>}b|-_`WmCq%S5RPjMCmCx`eO~|{C0qq9Vg^o-(cQAqC$(?sCKP?mLxsE`76 z69V9jC`CQibD~D;GjU~gxu-{i$)aq50Om;nK99<80ZJF*8>Kd=S`jYlEe&+T+Z0=C z1~ouj)`PGRj{uw1p}5CwncjldeK#>a)pO7UnGGq1S0>$7o6-sYj6>hmAzCmp9(N*t zKqPPV)?%T}#w z-bk@3s(>3A4f#g!DUg>@3ggfYizl&qw9Nw;RP~6op(2U;RNF{iRdj$Wx(Wgd{3!q- z!qgFA>q-QNpQW5#LrE9*`3M>jnsuM`j8P&J7)Ni~%ngKgcFl;8f$IhU!#gEVWfcM+ zmmviW)RNo_s_HxOq4>gDcHHw07rZf+rqF4-gN!yR9Mxj2P_xl#?1~1c=o3 z`~xUNKsGV<94ru=+G-SoP;zX74hYQ49|Z;!*Elz$jn5P+>fK^v%7MLN}^=Ga*Qbef@)k#7!?Vmh{xn* zI0I8+Rpl!f^i-wDk`nubn6?meEb&zPm~wPr9@x-?Y67$}YeDP!qKvP|n_RpGU)}gv z;fx6Qt4Dmf8by^TiVD$jQHgJvza^b6tOa)~e{KA=)2O!U-Mz=pJbUWE^i$$f2dADf zEuKC7J=5apGx`6NY3D?fUlPahQExd4*HLeI$x&~?J^83}UUJkqF+u+}ZT7Umv!|UB zpEP|ao;__Sdeh*XnI}&jBIL}eC(j_@-=>{9ZE)JmlL>L9pFVXqC7(R&j5DVWO+RU1 zT72@Xfmws`sj~*pm^u`_X6p0-k`B#^rw$CvQc3a2XH0(O$#VuzwCs~#dB)kZca_Rg zoOtrAnM2dg8ETs9%#)^1e&rBVocOL;gEOWLHcjLUh)s?r%fH2Gf3FXc=j2fFFpwj&Zy^b_&;N+8r}?r zF5a~y`u}H6Rp-zVr$PrnJZ)O8sm%&FW!lNJPHA5D;H-C@c*c;&`iZAZ9hy4%m7r!hJegbfdX8ASy1D!%QnQovsAkni;e;<#lKE_w=4B!jM1UNsgq~T9C){{dvMxWbEXfv z!8ypdABuf{$FqkRrx}pbp_}3yT0T*5%s%mySu>}lEpF)V=!9AEiwCC89(r-y81pI{ zi}4FjiBFj|ZFW3!)({;vb7(4TYO06BGZ-j$_M9`%oHZyW1Y4RtG&pVQ8S$BevrYwo zv}%t$D1w4cnHIfn)~quj^#Mk8Jajr)PKi(ER}>YWYD_75lZIhv^Dfdf>Hm{v%^FCv zz3`M~coK^{_2gzTDFz2l)u3sX#CY1yLt>Xn)eqT$*ev1B#lbcWD>imBSv+|fk?jh? zW~H5S*2%M`oqFoq&K#IJbK2W81*XK)EZ4MICxsjXXP$cEEXL`qIsBa(4^Ev4JAB(w zM;`g|w?{5()2I`Y6Qbi!cun+*DStiXC^1!ryr`*8Gmw-gmiXlwM}I?F{u?RnQA+#Q z%^G4IL`OQ2bEL5J^5{RNo%H(njf1oLB`ermJ~DodiF?5lxZU*G6kz;s+9|tBo=JhaO&?P_LZoaL2d-%5V?d99ScMRW7zGL}z z@!gMamG3ydDsa3$d?)Z7=5K%gD)=YzZQ*+W-!k6=`R?E!A1Z2TsqnAt|CJj46-W42 z*vo$?vy-Z?m)0dLs6~P@=I=%Py_CPd;qUMGJC48C@b^0Y{++-7c=KN^UO2bpZN2y*WP*k{0q-N zPo);Xk@vc?{&nKdmjjdAQ}x`@iMjmNySq|KqRT_KNm5pEu?$ z|L~62b-ww$32%A*)VKHi$9a?f^X;e19P=ON^}TiaY5zU$E$6@JZD;q-+y5=+zvOMh z16LpTpBEhUUzg2VJn26#_}jN%GkEKvZ@pm3I~LEmt@hRnUipq&-*x8;-#YhIC*Jm+ zRWE+)+}FJG&i8)tuiiHIU#EWd+^@X!ZFAo+b@h2)d)a?o`0pp(HTS-k|JQ|YKKbs8 zzWIu`U-;Hj?!9E)(Qm)-9jDxX*?0f$9T%N6ZQT{$KlU9LO*{3w3)a8#9T!hO?fX~% z=(u-WJaF3jg%7>z#EWO0{^Jk)^q)?=cyRhpuK(FTzjNN4{tY+${P=gyJE#BWANs}X zrq28C8Na+~;|Wvey?@|WOMdmnlP)>$jNjbyn}0j$k_*n*v~<&(PP+7>nZNtUZ{K{< zrI*b5{j%Tv=gF7OKXdcPfB&|VFTLW-Kiu~Fx1Vy^RcHP2_RS}ra@jS5f4bujQ>V?p zcJ`JPe>{2G{1422_|890J9YjChaUOVpH4e<{^B{0to+mT(=Na9>_2~I%Z$@5Uvl=J zKfC3O(=Wf}U0Xl*@T}7>U;3`CpMUtQ)35l*Igftfk-^iiSoZEmS3fc|{mPHO=dmyS z`RwUe-u9lyzWnEN`menGzaL+-_1*nfe&W54-?jC>XDqn$ecQge^?frIeDZzU)^0s_ z;Hs7Hf8y>(hX=0u^tn%b?a}kkxazaRPkjB+xo2FpYWRtJ9=&Mh)t^7_$$KBWc;?k# zIRDA}9=l}LHDA2osc$@X>8xwMbiq^iKQ{l&Yu3zt>YI;We&#iI&3)=yk6(G#!mnKT z)B}$%IBVfoFXDUk;I(&OynWraYX-0V+Qr+yz3tlB*M5E8_U~-FZuYhJT*7zJ?Cb8m zbo+O=T|fJ}`!3!7;I%inXudVO#I?;C!&@R^@Jc?aKX`L1~H;vZf2 z%+H>@^Sz6ItnVk^_o0VA@XUs%KIOkF-~XYXEPCeWPkq{dKYQ+tKfV5$Up%$y+#7%P zLB5|GzG=e^JAV1p=l%B!=Pmj9;vE~GT7ACze({1OzxWXTFY&#R@0aJ^{L7nm{OYMS z{(IMjw`^Rp7iTK~QK;#+@n3;wV9@7L!o-E`}YP22C` zyOi&}mwfoQAKvlX^n2f>ANlP^@PEU9@4xILzx(Kp-);Y<|9)%!M}NO;$M3g??*o@F z+x#*7>-c`0@3*h`*dK1&v3dKquXNwf8Qw z$BsWd9lk%fX8D#+?D*r;;k$m}?ORsh|Dpf>=-S&KzH`T)p4Ru1e1Cl19S?s>-w(L& zLyJD~$jTjCp8kpd{`C44k9-<``2OsJcmDY^_``R@4WHcl*&Po*9lk$b{K>7W@c;Zn z?)!@yKehF9J05xZm;Sr)rj?I=9)I}$YRRV`{Q~~*{q@bCd2IELKR^BJTio|Iw|@4q zFX9j1O-olj{w4h3``ZtH?(r}0*!pz%{_Z26dwdQ4-+k15f4}VW+wQ_2zMDVxg>7HK zpMF2SdfQibJo@xz|NX;lUwmTijz^#Q!*ciij;{KVJrhwqk8ta;+= zJ05#x%L@O!^R6fFk>7tG{^VDlycd7?KJuxrK6xMhM^^gpr`JCDjUA6a^N9cc`7?Jv zbwB<;f7X4suKL18kAL|a+rN!J{jRxx`*-BO%YC=~-}cTrx~gPb_p7R+Bq0fIfsh0bfnXtoKtgbL zcXxN|;Ly0cd*iO%1lPtJcXw&Dfh6xYS4cPKjC;oY?{e$hlmq*UVUXtyj=j`Q|W9MTpv;Ft-_=SY+ z6W^C7FUDSxlHU3N7*WbS{PhX0=Cflbk+skifuEbqu``g*?%X3%bZpile z@5>9<;%>_J#e`+-AJ^kvi$fd{&jq8LN-M@aL{K*&EU~4Im=j)2MW2h$kbuAe~X3Q)yKJ%=&l1R zs^q@ehadOpzQ?1%eCG;3nIcV8hCHPv+|1ekxMzcfPEq|-&PvKVQ|oCDqI#Y3u0F>p zth>%uL3#Sj3w_!r^kR{`OMS8rbkA7LxM$ke;oiVrr_#2VYelXPacki-?R=KO2V5G> z*Cl(aY^9WU<{UHsNIzh|sXj>+X{UUPDvxww3vZ+ze8i#dOjV-0%34Mx^XoqPN&fC< z+-l4a|dgQZyp_jvhS7Zq2?w+=y@ydBA_{Q+!dvivPu_EUbc56{<%+0pL zt^{|9Nm*yE4z8oTGSpl8sQ#E6J}q}7DLqQ(tj4W7u6!9X;+AK#Ee>Tzsob?x@~i`= zyeTp8j(6P+4n_K_fC?&Emhn~I4laGaM3LlI#BSYO< zRA2C-@svAhd+l?rGu;$!p)!ZoSoyN#?isT@^Qifk=bzRolLPLj5pb-58L zu$D@d=cmc<$_#nn-Dr~uAEjPF%3DgM^f}S)L&x@4 zlGUGNMcyjn)*|!T>k-pWC+)S#vHo}+-b7^y&AjD?+qfgD-ZWLTEf1*NQ)b+D(`Eb- zRcEp)(o$s#QSK>xci(ZIa75Lfn7AiZXw3Z-6Hl3@b5zN$DrYH_>Z1SUZh2PwRnBrK%-z~wC$)W^ zv&A+ma(hvfVZ-aL%OCoTKIYzLiBqKkx?s%;J6>m;d(*UEqsm7s6y7^Sxm|D4FTABY ztW_0$l8boz6#MN}%7i^-`>X8ep>O!nH|ZDObLh5JRUD#%s;bmEoYT*C%-BSEWwauf zguAuKSK+773Io$ebxcyIw#r;UxhKmtXlA;O)0}Jc*J1Tk)}qQged>kT}}hmsLF#>{@N;2A@+D4y>DimQVpi4kR~c)LFJYrdB~gOVTVisx^6-- zw-z~8oM}7zXr=+%lD3-VShl?iDB!>Gg8Q)Fblpj+Xe$*^6ot>Q;}4gS`&8`-s&G@e zh116{Bj7RRtTU48dI19#&yy)ns3HmkMmk?)jq&MlXjGW}HUN+S9_k5WuKqnj;MC3~vurBza& z><8|advGxs7Nxbs?G$%`^SzguqIfm6z{)LoBitH0sdUu|$%XC$NWmWpz%FR3D zhP|!>SF7?pRo==fBYl@F$*tRZ#sO6$TIH>ha85vu=RN`ZlceurMgF#*JJni#Ytxd; zoktxE?Y1g)jlM~O!)yI^J7DZF$NE!L(Kgam$ugEbaXa<+qq_DuRk)c72&eNxuHE&R zd`#6IFEa5DS01T6pI=nNcZ%FXn<>A-D9E;y$HTJ>NRk!*{mTLFl&AgLCT-W{Y_u?0 zrC|=}m3Qi5Q;!A?{WU}DIms&Y(1DT4J$cCN^J#`2Fo-F%aZz8cCWm^&Tz_*C8dR$A{RR^*I>mRr-oyFWeK_ip2+XKfeU zC=tCor2d#LhyM&(aNV`-8XY-E1=7(C+MfN8ZPgvqX^E=Bg<7jzt!v)+m}%2v-D9h& zGE#+9QbnuediTa<>s8fbg{s+4<&RQcPL_^$h>Nu%ha9rp9=fpM%YtBo&Gmp&i{vBF8`0eT>t;;|LGn`;v3O4`p%@7 zRWTc5jvV=LW%Rgdi#EpGdG_p0baX`1t`QMUBNjzRUy0thXrr8P_UwOof))Axl=VN( z?4SMJavSbECS%TNGtZPR(4b-N)}woFEnmN7Ip5@aZe0%YYuO;9Z_j?a8`W-H)<0l+ z$1sYup}-J7kgJfdMxj*8=o?=00d zG^=l|aY0=R%^Z;}efY4>8v-kgE|9T&x1k&IM-<89U$tfVi4jZ72ZZD_0ayp}F~aKYe|oqMhdt6DK@+2pHEUd)%TLz{E~Lxvx( zQMFN6)*4;gENMQvezA?q zb1p~jl_6kv!?Adgc9-im&r%Bpl z#5vz|Z9_69>tAI{VBMZsg3}IJwJb-WY1LEt{xtEAY&l973k)C7?$^Ab5qZ*jZ@6_M zO~%?K1H9X}J{?xRd}y}RGfQ3xDPANvqyPBQtEy-3kw2~H=piSv`j0J{&a2D#%RU)0 zgk?+Ky~5T?ZF6Q1Pd9kh>F}^dl~ZTy((9M<0~_b{tKF*Ml*(I1=1G<2=RKQCmI^DJ zHgmhKdzx$-k~dTO?!|Xh?^!rkhAjPx4+xK0ozpu_r)HZ9SL|OTS%!9Fx0h~MJSeqq z`Pwt0cGL~Xnzv#9<#oq2h%8-n?!u$tMXLo??lHX2x-wlGWy_j!=l#<;ebLc?fn)Yp ztzJ1epZ}yLzZb6@mZM;SX=NrvM(58SkYVD)6WK$?6!7yIvg3YE|6Dl(1KYM+7BRGH zu4)Cxtv*$P+^A8RUD$=pH=YVO$S_L*5*3CWj-g^_$`3~yqmT$n) zQ4y8ebaM@u+hx9Q;NqUHAsZ_;%@RJnhiiuMi&v&hyT7ly@8p9Me6!Z>=^oK{+@Rnd z{aPn4v1EIH|FCEqidYMpHExuqMXf%8#loVd7cAH~Mcx_((-cUSY)1BMmEF@tWp+#B z?6}@PxTIV9P)}EPV=Vp2A>PTwJub<&udzu#dwuyUPFoJ~vET8Hj*qh zRUM0LE?*;avB|X^edoliN}6hEEl1yZSEeQRDObrkqUZ4bSqArQm9oROm^R6y1|{@H zq;IlGOAh47-+Xw`3h#swy8*1$#lgFR7vZd)cuxU#YNKx=aMkI?N0GvINOsUY;T6GlT%VKOr46M=`;-VrlX{{ zGFU!VMk^D8zP?OD^t1e}04oc_zgewpe49RpmD9>a3FPM-g7^`Myp&)oAH%{0tb&w6 z{7y$<28ctMp&MouwZg4pl;R8*M_MH)QC3N-6a&Yltuj_wtDIGyQh`C_N>*h`6|1UM zjZ&Q<<(gJ4N*$}NRo`l8HL{v8yxiPsVYOn2xvkaC>cB8_XRC|V&FXITw0c>+t-cI6 z53mMVKUqVpVb(}%wDq$!&YECNvZh$mtQpoUYmPO~T3{`dqjFUq%1fnC zX;cQ~s{&MZ6{zy6f+|#ns}icTDzB=jnyRj9q?)TXs-xoPi zzw0~topv@EOny_rv@+3VzS(1Lm^kC-P~M@3!y<>X4%)G>qsTu|`u{5Xf0g`?a{p24 z|H%9wiT@+-L}~vc>qJQ>$~jTWi84-*aH4!`+w!f4gd5m0Zfr}rnJwp*-zDANmUCBI z$|B?b)?q%ybvb}FT zww_zBZOMKm>2g4>NmX*B>ZANrHe?#CLXc>bDu+C4sRpVU((J5ysex*k`dLj@v(zHB zN^Mj-Rg5~O&Z%qazIvfPs5s?<1T*NYINqtp6 z)*s01l9|jVuZb{KO;gj&3^h~DaR48Irem%=(xu5sN(}i<&?=O+^M0{K&N?5zdGG^QqBR+sFK#?i6l{8UP>$N zpdDNsT)bSo?3p5o2W8{$gLcZ9IE%uHynEMjE2Xq?aCCBZaZTdp?&0B~JvVr z&Q2Z3a?#`dPiwl3uTXumx zeZ<6|Xe)9G%jewqYy4n#$HvPoF}^?U_)EN8GCtnHdKcdtNBoH+GB3!%dK2Fj z7yN-W*><#E#ka%l{`vRz%lKxv+czAM<4)Gg_`0~+S3hivbA8E?#Lt(+t^Tw9CccQ( zjO~QaJ8{0Gosy`+ zzm2oE;~5A@Mx4oykCWrF?M3VCD?B5|f*-m0Tjqix;-_XOc z_V$zbmNfq*XUevl^(4MN!Sy+3ezUiq##be%KIMpPC*eqG-0c&4JC;wqj1RL~vMuL} z+}fvyD<@n(+D(-`CcP#O=@V-N8m*{yzQ@K?MA;{XV`mn)3PYSkOZ)X7m){TkeLQg+|1KX)sAZYBEo%v{gya9L+uPr}Ah9b96BP~3Ol)Z4{)DAB zXM0=T-tv}D|Mwk|*q*;T8cb*lV(sm$)!FE=zgIy1Wv$ey9O2358?- z#qnC-U$ohN{rmG6oM8U^T)}>EV|%SuEuJs($$QI9=C}SJ^~m8LEVs3E1&=I8giaQjKuR~J@GC3z`V#C9fYplenJvIXRyAi65_#*bX^g z&XHH*XJsj`e{ZjR{>N*`IsfVNay>aNFIkswuqAB8f5&tQTXHP%zOw$~^<`ULiJy~e z{CHgU|NH%AU*b7pfby1o@{-U0*p7s~|2%)LBv7BHu zl7I%2!f%M@@Fl$-#E zlw39#Ko9_Y^syV94;UH<`I3c(4GqTVYN$)+lYdSs?Xm>{vyJZ=APe2&$y%TUI=i#8@bDS!?#@k}mB-FRU65`FqRvKL zh=Q`i<_pVgD2CB(vVxNptBZ1 zVue_>>DDq3AH5*4_(5#|;Z!J&CD15^k=_WhvQ1E3Wr?;qtfh2+jI|j=912k~-ReW9 zFN1PxYwf4Ywm@>ZS)=&g#&Tfd47%h1R9JfGxO2qgnUH6>$P?~BlpVCTf%wm(5$;fE z?X8v8At<{s)?H|nH;^m+A#XB3t$09{t+IAlv+3lEP;VWqw{)ftl-v<(CsfO7>rVjh zACPdlA$yWSwT-2NA3(JI0s;4qNM6aBi%2{nX&yrIT(;gr`vqCMtu@whs}oe-BXshL z^#MT*BA=ZHd6Ng??gT_#W9y?e9u0j0sn;2rZa!4vHK?A!PLq6xoqs30lz>kT~l1?1^t`>J3hT?!3ufcHj@0vtR%YL2rcQ2Ud=$}`{|r@JEkpV9aENKNE>9m&5z?)9*cF6h&6 zWH}E#+=>)Wq7jdg*hi$<2KyO|=1#{V)}V<8knv@7_ywBy8F}_Y-zOpcU(o0nwCo%@ zavu$Oho*f+#$(X$Md-s$bpA9td;^Vsg5*D;HL=J)a_w0BA5K8rfV{;Sh&%AL1A;^l z@lnYTZ)TR_`GOIn6mb%gQY2?BAI`$zyUUQ|+~0N_4!8|*9>RZ%^C&^x6m?616UlG8 zk(8`O*=t?d?}$SY$0F2F0aPa?-QJwi4e`{lJ!3Z%Q^HF@_S8h!;%uTR-4RSF_K3H0 z<_u@s0Zl^jvZAyJZm5>+jE2%(;*i7<6+(Ema7w9BdvQv`P~Dy!S%gc<#(o!DnTH{^ zMYgkAY^!&6&UWRDUI?wV?Y1_uHWfuFgCexX6tc6mgmYX`VsT}gFseEzX<^iB1Z5gx z?TzZEWo;=&BPQ2|vtn>(;^a277Q^u*7}7}8x-Q~hhEdAabR1nMXY6Os7CY(`;S4dQ zdYmx|6`al5J=>X9V6V8=*_dh|rqqD*Jvi$KM)5OlwJ1mLvn5V;HAUR+pE!{Y7;QyN zc@7T5hj&trBp78!K6w<^@c<*J#F+v@#2wGI>tmRCM~rbSXFSAZg<~|AS$mJG$%u&$ z#H1_XVCJ&-5pF98v)gUEvg4R#Wj_4~vmL}40%62Z=W&KOhsU?Ig^=$o)K`*r3{d1h*3)}7e#@-hg|7rHT#6^hXzs1@a>Q@;3ZR*#!hRDrR zm0MgUUras%Pa9UM{U{g~e{%&;XwJ^;2| ziir)!K<~j$_^N}L(J~BAD`$k2S>FRB2RWx#g#fdVpy~s@7Ih<$~zTpwcCjzj9E` z7)pAGvbDi{nln5Rphj6k)Dga4S{6fEq*hu(RSWgVDyiC9SyT>du{w&PIx%Pwqe`ik zDhXz=L_J2a_N%OFxN2uDRn96W;%%i4s4>{*G~#Y4?aB~HS=9l7YJP%bg&L&}tFfr-GwXrMq1vi7 zsG`xCbrJ?ujwlanr8WLpRKk0b#CjZa^siR9;r$Qw7qJo0d=Z` z?u5u5t7f`_8gE7EAe3>P)m(Q_l@X>FO7hZbp(mhn>rtW8xaTeiF)uN?DkATSXoGRg zuW_^8aKia;sNHd}HHaP2jE;;}?rIWFcaa{V1GJ-FrN%G}I&dwWAtJ@RF`CE z&Pg9rs~H5UsB$xCbQYI11*a;g?vCECm*`=-r7pz)kh6ZGj;mi7`0J=DsUYR4-rzDe z(7D(X*M zLvI}AeTJ2ut1jvt4$m^fwTm9dz~nSsuCGyMnI6IKx47!HYCOY}-fAl@QIKK;15Vl; z(#!QoT~_B{xbYN&krPx^2E3A~i#V|vHf~I3H8qjO50>hIKCD;hQM#=zr*mpI{emIO z^=hK(s;a4c44J*h>1@YA_QjF%1It!3Q^NS0hx&+KsoUxDI+uQ_POA+JgjQGi)dw8P z4%}pYTwZe%Wgh9Hy1lNTU#T;yyQ-l+;!p%vwlI%%2mM<0P@iyA(Z<1y*6w-|1Fzyj z7nva@z&M&!dW;U#9(p4Kas^aMwG#&^$TP+)W-zU!$zq($F}+&$=Z?l@JdNLGP zNTpVvaaX%>egkoI#c+Rj%>lEN!PwF!n|Z2F=ry_%L$`VKTXmj+-d?IUgNc9PzV_hg z8sqxznS-XaDPx{76xdl;(SI@s+*{RAUvOT7ad-Dk8}nRu(eG3r^%d7P+_;!=+DlJk zfO4L-%#1MEjjLI!$1}+2t+%S_s<29{_Tm~3F@QMIlr=d_5_3wgW7xQ=4rV~|qT0sb zb6tk1)2SP{#0Ay^bJ(mfqfA><&g3+1<^@B`>-9w4l_AS~I=OzY{!rW1Ox0J_Q$WUw})dcx4@FJ`RiXeyZ?<7wXL zb9%F$s(b2M{3KFp{aIaAyBUHX$nbnIl}SA{C(Iht$y7FZ%v*h4Z_&MUZ5^WjVmNn? z8l)Pl;_8_>X*!!K=1+Y=_ttgv7l!Kxt0wBX>0;jLKKiTrNsTjJW|~f;=c%=3JOjGk zW~-jA3+uFcubQt;nRR9YL%hKZ_g>W7^bB2>!ToglhWb@4P%q5yX1$qcx|(VxpGj`s z>p%2%hKl>@db$Wx0lul5>NmAey)>uI1_p_%Gw}aGU(!2tKPCr+=~#7(i3G3A8Pna= zFdy}0-CsA*aq6~uZF-nbdVr2slS~RTi$Up)X0j<@QktE5wl1oD^jWjXOffZ0L6gc{ z(Yy2<2CKt$M*YT|Gn*NV?rCb7LMFBO%z*W7Jy#FZjdU@cNxwDc%@)(k)HWgJFMUn# z(SvkjU0nZZE|}h?j`^am>%qE-erNiauMB-pGil5`z18sb5tG*J)${d5v(3yfbxo*A zXKv_U^#c9g{9(46nWnF)XNs8g=9|9BQ29dr!CYcUyq~FW!c45brT6KN=CbK;8kjhJ zTYoYGOuU}Obcmg1wkc|S%oVfC%rOm3xXEZfo2zEGnQI1`My8m_Wd1VOm@F~KG&aS} z7jxYVHciY|^OKop_A-s)hWXVjFyG8g^P5>{V$ChHk7*UR4MSSQeMf+%Hy$*r4QXl+ zz55Xvej&=A!dqVl96bf{C_G{=?7bzHFkKx*<6kRJhM0w~5gI~ZRuSN1L*mg0tZ*j~ z<}%jufGGJAjF3#_M3Y-!b<>C(m((kjl-MBoqdT!H1L&dvIHWoNx;KDl8J2t&Uvvjp z^_*DeO`I)CbnSz$TFumim&$`U6r!Do=Lz{`E;|FP4-gxSr(b77(S&U01(7j3wp*4M zGli)QJJ2e3qFo{6D$G-I{Aw0Eg{h2(>Iov5PmDT_KfetujJLd)Hc^X7FTL@_NAMjl zlpAraCNW@y7BVLtI4O{1qAanm9X@>=5Pmyx`wHkN&hi9}6an4zVv@{Cbx}Q6Nr=KV zh&sd3%9O;F%z*WR_|B?$&~D(UnE=G!h^LatB~@AQY-RAz6V(d5)-&a*{qYWMh{dz@ zDosoTPvx~UZ^_&H0&Eu&i3L>O1gZw$KT8vNC#dE4$={g5;fL=jM!cUz6x*QvKwCk? z&yseE)&->@}tO1t0;;jqdg}bQHOo%$G z9x^i{BayHrcMTueU@unm3!y7>k2f@{jMESh@XkZ8M{Cp-K-BqzF9XO*gacC0A^Q6A3KWazN zK^T#;E*^RW{(Y{AA=Nt#PD=x}j8GNSP&E%kwnu$aX~8#P#I=c_+qFzB`=FVXga567 z7jJBa6EEiA3*V5GIe>er5#8IXA!G`_t2^o|h`b^Zp%*cB52)w1PKGznhEHz}KIjRa zT4GiaVSY6qEd$~T0!g$Zf0?UJ5uLuMG~m95#O4Xamg9K#_c|@;t1!r-Es<-enFP+* zh-W^+WTBK`?c(GRKN0KK6Y>61sX=rNKoH~koyKFtig(O2%0fIUM^x$#KAcEA*nqb` zY)+XJAo*hC7K6bO>p%dXRVr{}5m3oEBFq|nL;uOtA9rG1St4E|Ce=+avxo(|%^{-y z8B-PH)CN4T9}Ip|eIhd{Pwedm3fTpIy{^59ZvjNnX5hAN#FND!tM$a8bHudk=Dw*z z{xpy&V<*%N^--k+N!J5sjnz9r$=CE-of^bk06f?l6fhVBu^hy(6O4F~cy-S_HLXBN zGu2v<#|M=HL|qqb_%ku{Fmd^fR^asfV9%N$l0jx1F?1~v^8nc9s<~^Pn3twM*l!Iu z>Agx0h7SdEjv)sBqOa)JnjZiKca#Dl}^d;CFcdFw*-Ur2i+|Ny=^rypo_~y-$&-Hc~1=gX09+f(wl6h7CFHv zCPE$nBfZq|Iup1p3PjWqd@u%du^Lpe&m03W+%yl(bMwx8BEH9&H_D4_s4$tvNKnjb zeNn&AaXJYYu>`2A0hnX7nFb2jOyoZb9=l;4m}lmd`3OpgmG~dIcZ+g+4+|hXfV_nb zh#)3KfDAI*gq@Ipk*xVq3)$Ap<_P@o+s$kO(4V#DumwZ#LQ-VJAc{RgV#%`1H{g|pav;R*%AtGIC0g9vxH@kfs%vY z`G!^;@m0P`#v7KgcLcR2e%z-%L=1HX*<{8$lm^*EuoQA|IruOkFwBh9e(6-3#Gc#rIyC1hbV`$pjpo8w2KRCBnC zhs56~_=`69w*ciztQ~?^Ux}X&dmuEl9kwb4D2K%Vk_rbCz^KPD(-MCC%}}4h%l~v zqAW+p@`*qq`F*0LBGNx2j^^OV3Xq48jiXpw!>1~OGBh~iFp<%h^OA6uP-Pv#J>~GC zIl+kIAmj`<$Ac@b1hG9QqG#3-`UtT&H&<8-GA)n4j$ogVjc$C(PeUcH9M7jq5REGkErLKjLd(gVn#$l#q1~d0^PRy0o}j7;9L>X# z^)`p&1=8qDta=Gv%>#ck0n}E-9;>O!)&`r^$qNqmw#R3JL4(ym(#h;1)01Tic>=p5 z)Oii?PE*?W0Bq70tiX&i)s?Hs1o&tWRx{oX+8+i=_@9+Lt*}73)Jt&LB<|J?5~ufS(ec=qLzi6;CRBQ3V*IK=le#xRDl4hS=_I^G7x8aln)| zj}$|!jR9LO1}h1p)B==U5>_dTehm6M28vtFl;WSMJJ>8!2V!4En5Nw7HAwd?IDHeS ze+qREn|bO1F0M&#Aq-S1Yd=wZ3Al3@bt#ZwR%&PJ<6z5Q@Z)2tD}g_Ps6DCAK|pT? zM^B}$1+FhdotpXpSYj!jwlr8Y8}$j0?HVFjWspxE>hqwXEo45m;i+VN@*v2i45;@c z=(`HY>;fpU4q3__+S8KOJOLMXXHYA@=j+(5;gt6#)kSZ zh;s$ed=zy#a-N*jZq&b%MXd*GO{A^{(#}Vnoca$kuI=Etnbh^jW{Oa!r!D~k@h7Go z0spQ9Ta+jJ%0+#eOmG8evpShVe(FnPsyoQs>XXBUQAdH;j)J%=5FyWybJidqxeQU? z0KDInc0K@GwWW2E({-ga@2%vjFLzH*i3Tk-9Sz>|x?)z6}ZG*WVOO5 z4uDgX0Tp2uGg|x29dPh|8x5BN>0||KIa41eyZQy(JC?cCs41P2D zbWifTS|IO2>MGg8ZgTy()Q#)`m_{&<#jFG7F1YCc_^%b%yRTBdMd&rs_lZ_RpJ_y1T1p2ATI^C?WFaG%0g3i~OnrSPA^T?zv#4CX;HlV#jh zn9MS8nc3k&h0#0-o?lBVgxRbDx0x4iR2a?+uqj(e1LfzVPEP#?=zBZ7$V}>b@H<7Q(^KDs1(5j%3#pHohvYm*$bj0ByOuYnLAe{q zW~-BH|HrB|bE7FU>8;cMr7j)l?f07p=f zY&$oMuyDJt$*aziiEkpi6PC9JOioRh-h!~j!uNh6let13xQnbvnBM^~W)0yJ!eNp# zs^erlzmUC*rLII~5Jc@seU40NGmOYo>RM!-g{V_gUnLvdO@1<$x)E7gG3rdzC&;_j zkV91_H_1bNo;+;}d`xZf-4N<)$mDLNyYL&?@UbQs|xqs0KTXwEV*#tui+@p!jo)*br3eZ2bp|LGTVZ%=faDBBFn!5 z3%Lt+Nf`10Fk}s3tHNQ{GwO3>xtq!Kr&8B~^(aK0n))gn(r)texzvqdwTe+^qCQVn zyM+w5Htb9Y^);BPJ+J_c;mwLuUm$0$1MhPk{;LU0Tu-k28HQjWSDI$C?!u-E?=GCW zFz>>wUm*M4%BO^3uLH+k7!F>T_Uq*Nd%21*?(fLVFOuJHgOd{Oy$?)HT^O5CIC^2> zzrtSKfK~Vv_HcpzgWP*N{KZV_dSu8&sMAy5gi-trzGWfxC9?Y+WZU)0zr(0+!By^q z$+=AC+<=V!Hd%IGuJ8>;YnIL83sWyVzVP*zVQ6-8mhkosVD5{;=nH@U3FhPqywffi z1!3|Bz@#;VNeqYS&j_dS8D8cptk!Ornt^b1jbQeR!Ib<3+j9-pY7nenV|bS@Fn5DF zV=kG!u>QjGUx(e;%U)sozrsx2faUoW#%2MG!8fx1o3LHK!9B#nBiw?)h$Hvke?hr* zW)h|^?+D(LczZ>#}8cNFhZmbI}Q?`pi|Cy`0X9Z2gOfw)d&y{=@_?qr$dQDjIm zVO4R&kuw}PE=OHBB2!x3?cSfbNc@YH7KpOkMTm0x~p^ z85rqo3CS+AJ9E$wf6~63fVTjM^He0lo`7^2dcF|3DHpLG#C3`GAC8$1SjE2GD$BRcXs98UfeM~R}P|WNok=>i}m9!1!!d|+L?)# z_gKF+ZklS;SuxONVW)% zR)CV55=N1)h8Lv-Q4+oaE)!?Nd3>2Rdrfq}g-267f-B9G$+Ovcq$D&u8Mik)Mh+ge zFpuTO;|KEyIeAQf9w(GO&%k5n;&B4FZGM^_$Rqo3+blG{01b7f8AWNBC(S5`aD%Kwg{5m{s-(;Z)?7pMF9TPQS-%dpFw$@xk$GY6=WgqVKkX<$ zD`WzwOyQKFq!8|%l)Gl6J-NBROq-S=GSP})+HX&rUUfrsKx8hjgz1CQ9nvALG)LL; z6S<3Sh`dD~M2@m8Iv_F@T@iVSUWn{vTVyNxAhH(S5&4Ubh&)Bcq7$-TWH0(7nU=^^ zWGy-(vX}j$6Cz)czvz_6T=YZMMfM_ZVHL!-C7Ti13zH+VmkeIyo{1tlkj?IV>Ha)) zPY6?|ZpqYXu|qGK>`ilI9=Icql$^`^@kl9Xt}{(cNz)?erU1y(R5T|G#EvV3X#sAL z6;daPZYfB&Rfqg+%5B_`Rt<>NQgm5!$dBxhKp{MSX$aG95E!Cag`r+r@~CAXVr$bq zJs>uR&^0oXuqTgL2a>fl1W!50)LwKC|COBdJQs9L8>rGL5Cr9+Y3o6Kwzc(cDhYfb z6zwz;=5~;qOGvyoLdK1PNXUpb$b{G2q_#4vZy99D42a#)kfU4Zo|(|N6-iCQAq@{e z&dq{=I7^qUfVezJvbYVx?;MHaY)IZi5N4|&R<=XTbc8%DMpAi~qCQ6}t-nZoPT5r4LQ=!$&~-PU z$bKU&x@pgzdja7kGwCELNt`_wkJ^j;6M~#OIv{iM<*N{dkatDoB0*5Xh9^29-xbJ; zR)isCnYY>l3ArG75A-HA5|km}{Pc9fOwc~Ga3yk-uQsHkk7cHRL3&swIJZQ?qmb1u zG%F3#@kc{MDI<|-HTpsZ-{&Bi-;ui?`Xpa{kcrim(2AzWuOISXjU+CjM?vVQOmCJ! z(E4bb%+masbZtA&dkYN>MM5&XS_8?nrbqjt8#B<1gY@=2bhr%Csg732@M$;tQU)Sd z(XS`yw=gCjp~k+h9TdXXqL=!Jxeb>LoRKRYcF&|CYw(}+RN=;KaE75LIrj~ zPY0scW6xMnA6db73hLY zsy>SToJX!QY5Pwk{uNDKiXQDillG%Q^6MBf;Qj)w`Gl-v(GZ!ceE?lNhYnsvQy-!m zGVS^c$tP2%cRs=g;sliK1I4e29~2)ZelIch`67DpcjA*0IzBe6sxLiJT)pYa;%;yX}}- zBG72tk4xMwL+L>g-&~s_<3z0}a!y$p>7ewah@Y1qSrH#yha$dSrfRpQ45Lh@^rDob z$o{&N;gmKMi2)MBr`XP|w;c->p%zmq^(bvAGVxl*q54qdnEXu3NXj&d#0ZJ|ODHmB zTVh3DN`2cQGFoE0z)iTr>GttanBX$o6>hd;#|+yg#$YNHFtC0Ya#4(7G>Ww!lWULS z&%`9R*dt;RXO>e|P!3QUP_|OWP-MDxf66S1tRJMvSE^-_^*PEm${k7v${~tilG(Ov zy@Szi$N0p(p0{Jx&zN#U$_|Q*rCp%Bp&X{jMCt*QIg}%mN|cL~os^E0dz7OT!8`XU zZz*Fbe^7p*?4r!2Jg^<|pO~r47i@%y9m6o+VM>>95i+g%A?7;{6O-?P9LHT$#^lyu z_MI@zd6?;Y3|1WXBV1QwOz#8c`xtjI2q$s^BNo>!-+)<*0ba$ukH-y(YoCv4?!iz$ z;RfUzF;6kxYnbL|+>cD2K8XvJ@t1X&@dC_Uz9aJt_aKv~uj4Lc^7OA5@)umf4P3oU zn*JU0e$F_|X`FyepceNp9F{nKnLzy#*C7+AV=;fGPak-d@bxKQj8L_1x40s5!BMNm&fzeFH2m>&xp%`!sj$$ze+5_X4 z>9;ZsHwy;P5(8d>@Jrz|dZJiUF}hR;bT|gS8G~Ai@t(s#O5;GLp;)z1xVt!m5g7L} z97k&u<1Ge!&>kQtgUY4B%5pPGmSE3H}a4iq;@v~5)beL>E)a^ZLSOj%`h=~amKO0rriCbxpc+;cak5Io{ zs7Dy;@-wRR5wmf}4CdJ0y934?h_Vbo(TXDACm6t3oJT_xU^fDui-P)~aJf;Crzlf6 z4x#LS2dq$nczeg-WJ>z9KrxM9+k;Psum`QgHoTJWT~8(g_*LH!il( z&qvS;Ct8;pJ;;NG$QO{h)0?wt^Sh z|3h%2^^j2?o@60fa{#@#hNcLP_oXjn>RltGGypx5Z-yK~+PBdJPo$Csos@4SG({_i zpi?W5o_y=!0aBJPUrA5+6{G*&Q? zAc%3uZUee~4!wMV9%aT(N+PGmNNf>%g2q->%{JQj=~_(kH8 z#BaeP5(@ltS&;0M7gfCRjl}C-GO}q2LdR-GZG2 z7YNP~Tp_Vl@=%HM5_1JV2sV*eC~;e`fy8u)rGiJ~^AbM=Ye?LeSS*-JFi|^-#BYg} z64wRS2u6@tDwsv$uV4|0{}QVuhRbIKdr15gJSG@IVyeV?!ATOECEt~JEqFoVxx`Sx zFmk@&5Q+a1k0lNZ#t^(FI7wo+;0KBQf^#I^N(>gvBA7tV6U-s;T4KG#Uy1#KB?Q9> zJ`lVlFSIZ{N=UnTgHYg==@?%|D}y z;Oj9F{6o5k0emi!cNFhZ|H{_>$lU&?b<$Y4;6>4z{{rotB6Cn!*;>uJ3>-6K>Be7A zTz>F2PT4<{mhd}iNj<&1lO<1?Ds`H)>C$KL$(YI4&p#kb)@<2xM@)asps$8XNwdyr$)~-{xUi}6Q8#Qjyv{{Rmty;Hf z+pc|wj-5Jp?bf|V&tARz^zGMwz@WiDMGqM|Z1{+gqelNccHH<06DLicGIiSYnX_ik znLBU(f`y9~FIl#H#mZHye_6A3-TDoiHgDOwZTpU$yLRu{``f;l{Ra*nI(+2lvEwIC z{eJq)*>mSFT>RtGm8;jT-?(|}_MN-;?mv9=_{q~}&tJTJ_4>`9@7{m-`04XsU%q~e zjm2Lx7e3)9a2#!Sj%D+5OIWu!?wN$+CW*5JUF^nwS0^er%SnDVM?M+(cBppC{KE&5 z$OpKr#SaR|ZdbV)T=JS>+D*AzkvmwXbe9|0m8)ILI>#Q$IWXUE(cGvm)mTVS$eo|K8_B08S&=7MI@-U_VMR_JrQNd2 u|6DA>>=0;if(2147483648=d;d*=2){var e=c*(1+.2/d);e=Math.min(e,b+100663296);e=Math.max(b,e);0>>16);F();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},f:function(b,c,d,e){b=T.C(b);c=T.A(b,c,d);E[e>>2]=c;return 0},a:function(b,c,d,e){var f=A.buffer;a.audioPackets.push({data:f.slice?f.slice(b,b+c):(new Uint8Array(new Uint8Array(f, +b,c))).buffer,timestamp:d,discardPadding:e})},c:function(b,c){function d(e){for(var f="",g=new Uint8Array(A.buffer);0!=g[e];e++)f+=String.fromCharCode(g[e]);return f}b&&(a.videoCodec=d(b));c&&(a.audioCodec=d(c));b=a._ogv_demuxer_media_duration();a.duration=0<=b?b:NaN;a.loadedMetadata=!0},b:function(b,c,d,e,f){var g=A.buffer;a.videoPackets.push({data:g.slice?g.slice(b,b+c):(new Uint8Array(new Uint8Array(g,b,c))).buffer,timestamp:d,keyframeTimestamp:e,isKeyframe:!!f})}}; +(function(){function b(f){a.asm=f.exports;A=a.asm.g;F();G=a.asm.s;I.unshift(a.asm.h);L--;a.monitorRunDependencies&&a.monitorRunDependencies(L);0==L&&(null!==M&&(clearInterval(M),M=null),N&&(f=N,N=null,f()))}function c(f){b(f.instance)}function d(f){return aa().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){y("failed to asynchronously prepare wasm: "+g);x(g)})}var e={a:ba};L++;a.monitorRunDependencies&&a.monitorRunDependencies(L);if(a.instantiateWasm)try{return a.instantiateWasm(e, +b)}catch(f){return y("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return z||"function"!==typeof WebAssembly.instantiateStreaming||O()||P.startsWith("file://")||"function"!==typeof fetch?d(c):fetch(P,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(c,function(g){y("wasm streaming compile failed: "+g);y("falling back to ArrayBuffer instantiation");return d(c)})})})().catch(k);return{}})(); +a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.h).apply(null,arguments)};a._ogv_demuxer_init=function(){return(a._ogv_demuxer_init=a.asm.i).apply(null,arguments)};a._ogv_demuxer_receive_input=function(){return(a._ogv_demuxer_receive_input=a.asm.j).apply(null,arguments)};a._ogv_demuxer_process=function(){return(a._ogv_demuxer_process=a.asm.k).apply(null,arguments)};a._ogv_demuxer_destroy=function(){return(a._ogv_demuxer_destroy=a.asm.l).apply(null,arguments)}; +a._ogv_demuxer_media_length=function(){return(a._ogv_demuxer_media_length=a.asm.m).apply(null,arguments)};a._ogv_demuxer_media_duration=function(){return(a._ogv_demuxer_media_duration=a.asm.n).apply(null,arguments)};a._ogv_demuxer_seekable=function(){return(a._ogv_demuxer_seekable=a.asm.o).apply(null,arguments)};a._ogv_demuxer_keypoint_offset=function(){return(a._ogv_demuxer_keypoint_offset=a.asm.p).apply(null,arguments)}; +a._ogv_demuxer_seek_to_keypoint=function(){return(a._ogv_demuxer_seek_to_keypoint=a.asm.q).apply(null,arguments)};a._ogv_demuxer_flush=function(){return(a._ogv_demuxer_flush=a.asm.r).apply(null,arguments)};a._malloc=function(){return(a._malloc=a.asm.t).apply(null,arguments)};a._free=function(){return(a._free=a.asm.u).apply(null,arguments)};var U;N=function ca(){U||V();U||(N=ca)}; +function V(){function b(){if(!U&&(U=!0,a.calledRun=!0,!B)){S(I);h(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;){var c=a.postRun.shift();J.unshift(c)}S(J)}}if(!(0=d||(W&&a._free(W),X=d,W=a._malloc(X));var e=W;(new Uint8Array(A.buffer,e,d)).set(new Uint8Array(b));a._ogv_demuxer_receive_input(e,d)});c()};a.process=function(b){var c=Z(function(){return a._ogv_demuxer_process()});b(!!c)}; +a.dequeueVideoPacket=function(b){if(a.videoPackets.length){var c=a.videoPackets.shift().data;b(c)}else b(null)};a.dequeueAudioPacket=function(b){if(a.audioPackets.length){var c=a.audioPackets.shift();b(c.data,c.discardPadding)}else b(null)};a.getKeypointOffset=function(b,c){var d=Z(function(){return a._ogv_demuxer_keypoint_offset(1E3*b)});c(d)}; +a.seekToKeypoint=function(b,c){var d=Z(function(){return a._ogv_demuxer_seek_to_keypoint(1E3*b)});d&&(a.audioPackets.splice(0,a.audioPackets.length),a.videoPackets.splice(0,a.videoPackets.length));c(!!d)};a.flush=function(b){Z(function(){a.audioPackets.splice(0,a.audioPackets.length);a.videoPackets.splice(0,a.videoPackets.length);a._ogv_demuxer_flush()});b()};a.close=function(){}; + + + return OGVDemuxerOggW.ready +} +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = OGVDemuxerOggW; +else if (typeof define === 'function' && define['amd']) + define([], function() { return OGVDemuxerOggW; }); +else if (typeof exports === 'object') + exports["OGVDemuxerOggW"] = OGVDemuxerOggW; diff --git a/media/player/videojs/ogvjs/ogv-demuxer-ogg-wasm.wasm b/media/player/videojs/ogvjs/ogv-demuxer-ogg-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d8cdc068e905b5fca5d9b9936de26d25afb17d8d GIT binary patch literal 41845 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 Q@Yz2=1NJ4+-rn>7581suO#lD@ literal 0 HcmV?d00001 diff --git a/media/player/videojs/ogvjs/ogv-demuxer-webm-wasm.js b/media/player/videojs/ogvjs/ogv-demuxer-webm-wasm.js new file mode 100644 index 00000000000..80a14b47898 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-demuxer-webm-wasm.js @@ -0,0 +1,46 @@ + +var OGVDemuxerWebMW = (function() { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(OGVDemuxerWebMW) { + OGVDemuxerWebMW = OGVDemuxerWebMW || {}; + + +var a;a||(a=typeof OGVDemuxerWebMW !== 'undefined' ? OGVDemuxerWebMW : {});var h,k;a.ready=new Promise(function(b,c){h=b;k=c});var l={},m;for(m in a)a.hasOwnProperty(m)&&(l[m]=a[m]);var n="object"===typeof window,p="function"===typeof importScripts,q="",r,t,v,w,x; +if("object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)q=p?require("path").dirname(q)+"/":__dirname+"/",r=function(b,c){w||(w=require("fs"));x||(x=require("path"));b=x.normalize(b);return w.readFileSync(b,c?null:"utf8")},v=function(b){b=r(b,!0);b.buffer||(b=new Uint8Array(b));b.buffer||y("Assertion failed: undefined");return b},t=function(b,c,d){w||(w=require("fs"));x||(x=require("path"));b=x.normalize(b);w.readFile(b,function(e,f){e?d(e):c(f.buffer)})}, +1=e);)++d;if(16f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}function J(b){return b?H(K,b,void 0):""}var L,K,M; +function N(){var b=E.buffer;L=b;a.HEAP8=new Int8Array(b);a.HEAP16=new Int16Array(b);a.HEAP32=M=new Int32Array(b);a.HEAPU8=K=new Uint8Array(b);a.HEAPU16=new Uint16Array(b);a.HEAPU32=new Uint32Array(b);a.HEAPF32=new Float32Array(b);a.HEAPF64=new Float64Array(b)}var O,ba=[],ca=[],da=[];function ea(){var b=a.preRun.shift();ba.unshift(b)}var P=0,Q=null,R=null;a.preloadedImages={};a.preloadedAudios={}; +function y(b){if(a.onAbort)a.onAbort(b);z(b);F=!0;b=new WebAssembly.RuntimeError("abort("+b+"). Build with -s ASSERTIONS=1 for more info.");k(b);throw b;}function fa(){return S.startsWith("data:application/octet-stream;base64,")}var S;S="ogv-demuxer-webm-wasm.wasm";if(!fa()){var ha=S;S=a.locateFile?a.locateFile(ha,q):q+ha}function ia(){var b=S;try{if(b==S&&A)return new Uint8Array(A);if(v)return v(b);throw"both async and sync fetching of the wasm failed";}catch(c){y(c)}} +function ja(){if(!A&&(n||p)){if("function"===typeof fetch&&!S.startsWith("file://"))return fetch(S,{credentials:"same-origin"}).then(function(b){if(!b.ok)throw"failed to load wasm binary file at '"+S+"'";return b.arrayBuffer()}).catch(function(){return ia()});if(t)return new Promise(function(b,c){t(S,function(d){b(new Uint8Array(d))},c)})}return Promise.resolve().then(function(){return ia()})} +function T(b){for(;0>>=0;if(2147483648=d;d*=2){var e=c*(1+.2/d);e=Math.min(e,b+100663296);e=Math.max(b,e);0>>16);N();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},b:function(b, +c,d,e){for(var f=0,g=0;g>2],I=M[c+(8*g+4)>>2],B=0;B>2]=f;return 0},c:function(b,c,d,e){var f=E.buffer;a.audioPackets.push({data:f.slice?f.slice(b,b+c):(new Uint8Array(new Uint8Array(f,b,c))).buffer,timestamp:d,discardPadding:e})},j:function(b,c,d,e,f,g,u,I,B,C,D){a.videoFormat={width:b,height:c,chromaWidth:d,chromaHeight:e,cropLeft:I,cropTop:B,cropWidth:g,cropHeight:u,displayWidth:C, +displayHeight:D,fps:f}},h:function(b,c){function d(e){for(var f="",g=new Uint8Array(E.buffer);0!=g[e];e++)f+=String.fromCharCode(g[e]);return f}b&&(a.videoCodec=d(b));c&&(a.audioCodec=d(c));b=a._ogv_demuxer_media_duration();a.duration=0<=b?b:NaN;a.loadedMetadata=!0},i:function(b,c){if(a.onseek)a.onseek(b+4294967296*c)},g:function(b,c,d,e,f){var g=E.buffer;a.videoPackets.push({data:g.slice?g.slice(b,b+c):(new Uint8Array(new Uint8Array(g,b,c))).buffer,timestamp:d,keyframeTimestamp:e,isKeyframe:!!f})}}; +(function(){function b(f){a.asm=f.exports;E=a.asm.k;N();O=a.asm.w;ca.unshift(a.asm.l);P--;a.monitorRunDependencies&&a.monitorRunDependencies(P);0==P&&(null!==Q&&(clearInterval(Q),Q=null),R&&(f=R,R=null,f()))}function c(f){b(f.instance)}function d(f){return ja().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){z("failed to asynchronously prepare wasm: "+g);y(g)})}var e={a:la};P++;a.monitorRunDependencies&&a.monitorRunDependencies(P);if(a.instantiateWasm)try{return a.instantiateWasm(e, +b)}catch(f){return z("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return A||"function"!==typeof WebAssembly.instantiateStreaming||fa()||S.startsWith("file://")||"function"!==typeof fetch?d(c):fetch(S,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(c,function(g){z("wasm streaming compile failed: "+g);z("falling back to ArrayBuffer instantiation");return d(c)})})})().catch(k);return{}})(); +a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.l).apply(null,arguments)};a._ogv_demuxer_init=function(){return(a._ogv_demuxer_init=a.asm.m).apply(null,arguments)};a._ogv_demuxer_receive_input=function(){return(a._ogv_demuxer_receive_input=a.asm.n).apply(null,arguments)};a._ogv_demuxer_process=function(){return(a._ogv_demuxer_process=a.asm.o).apply(null,arguments)};a._ogv_demuxer_destroy=function(){return(a._ogv_demuxer_destroy=a.asm.p).apply(null,arguments)}; +a._ogv_demuxer_flush=function(){return(a._ogv_demuxer_flush=a.asm.q).apply(null,arguments)};a._ogv_demuxer_media_length=function(){return(a._ogv_demuxer_media_length=a.asm.r).apply(null,arguments)};a._ogv_demuxer_media_duration=function(){return(a._ogv_demuxer_media_duration=a.asm.s).apply(null,arguments)};a._ogv_demuxer_seekable=function(){return(a._ogv_demuxer_seekable=a.asm.t).apply(null,arguments)}; +a._ogv_demuxer_keypoint_offset=function(){return(a._ogv_demuxer_keypoint_offset=a.asm.u).apply(null,arguments)};a._ogv_demuxer_seek_to_keypoint=function(){return(a._ogv_demuxer_seek_to_keypoint=a.asm.v).apply(null,arguments)};a._malloc=function(){return(a._malloc=a.asm.x).apply(null,arguments)};a._free=function(){return(a._free=a.asm.y).apply(null,arguments)};var U;R=function ma(){U||V();U||(R=ma)}; +function V(){function b(){if(!U&&(U=!0,a.calledRun=!0,!F)){T(ca);h(a);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;){var c=a.postRun.shift();da.unshift(c)}T(da)}}if(!(0=d||(W&&a._free(W),X=d,W=a._malloc(X));var e=W;(new Uint8Array(E.buffer,e,d)).set(new Uint8Array(b));a._ogv_demuxer_receive_input(e,d)});c()};a.process=function(b){var c=Z(function(){return a._ogv_demuxer_process()});b(!!c)}; +a.dequeueVideoPacket=function(b){if(a.videoPackets.length){var c=a.videoPackets.shift().data;b(c)}else b(null)};a.dequeueAudioPacket=function(b){if(a.audioPackets.length){var c=a.audioPackets.shift();b(c.data,c.discardPadding)}else b(null)};a.getKeypointOffset=function(b,c){var d=Z(function(){return a._ogv_demuxer_keypoint_offset(1E3*b)});c(d)}; +a.seekToKeypoint=function(b,c){var d=Z(function(){return a._ogv_demuxer_seek_to_keypoint(1E3*b)});d&&(a.audioPackets.splice(0,a.audioPackets.length),a.videoPackets.splice(0,a.videoPackets.length));c(!!d)};a.flush=function(b){Z(function(){a.audioPackets.splice(0,a.audioPackets.length);a.videoPackets.splice(0,a.videoPackets.length);a._ogv_demuxer_flush()});b()};a.close=function(){}; + + + return OGVDemuxerWebMW.ready +} +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = OGVDemuxerWebMW; +else if (typeof define === 'function' && define['amd']) + define([], function() { return OGVDemuxerWebMW; }); +else if (typeof exports === 'object') + exports["OGVDemuxerWebMW"] = OGVDemuxerWebMW; diff --git a/media/player/videojs/ogvjs/ogv-demuxer-webm-wasm.wasm b/media/player/videojs/ogvjs/ogv-demuxer-webm-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..c9787c4bf50da9437fe6fbc1fa13431045080ce6 GIT binary patch literal 43449 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 e={318:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},848:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var s=t[i]={i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)r.d(i,s,function(t){return e[t]}.bind(null,s));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t){function r(e,t){if(e<1||e!==Math.round(e))throw"Invalid channel count for BufferQueue";this.channels=e,this.bufferSize=t,this.flush()}r.prototype.flush=function(){this._buffers=[],this._pendingBuffer=this.createBuffer(this.bufferSize),this._pendingPos=0},r.prototype.sampleCount=function(){var e=0;return this._buffers.forEach((function(t){e+=t[0].length})),e},r.prototype.createBuffer=function(e){for(var t=[],i=0;i=s)return e;for(var h=[],u=0;u0?d[d.length+t]:e[0]:e[t]},u=0;ui&&(m=Math.SQRT1_2);for(var g=0;g=i&&(v=0);var y=e[v],b=new Float32Array(_);h(y,b,this._resampleLastSampleData?this._resampleLastSampleData[v]:void 0,m),u.push(b)}return this._resampleFractional=p,this._resampleLastSampleData=e,u},n.prototype.bufferData=function(e){if(!this._backend)throw"Invalid state: AudioFeeder cannot bufferData before init";var t=this._resample(e);t=this._tempoChanger.process(t),this._backend.appendBuffer(t)},n.prototype.getPlaybackState=function(){if(this._backend){var e=this._backend.getPlaybackState();return e.outputPlaybackPosition=e.playbackPosition,e.playbackPosition=this._tempoChanger.mapOutputToInputTime(e.outputPlaybackPosition),e}throw"Invalid state: AudioFeeder cannot getPlaybackState before init"},n.prototype.waitUntilReady=function(e){if(!this._backend)throw"Invalid state: AudioFeeder cannot waitUntilReady before init";this._backend.waitUntilReady(e)},n.prototype.start=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot start before init";this._backend.start()},n.prototype.stop=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot stop before init";this._backend.stop()},n.prototype.flush=function(){if(this._resampleFractional=0,this._resampleLastSampleData=void 0,!this._backend)throw"Invalid state: AudioFeeder cannot flush before init";this._tempoChanger.flush(this.durationBuffered),this._backend.flush()},n.prototype.close=function(){this._backend&&(this._backend.close(),this._backend=null)},n.prototype.onstarved=null,n.prototype.onbufferlow=null,n.isSupported=function(){return!!Float32Array&&t.isSupported()},n.initSharedAudioContext=function(){return t.isSupported()?t.initSharedAudioContext():null},e.exports=n}()},function(e,t,i){!function(){var t=window.AudioContext||window.webkitAudioContext,s=i(0),d=i(3);function o(e,t,i){var d=i.audioContext||o.initSharedAudioContext();if(this._context=d,this.output=i.output||d.destination,this.rate=d.sampleRate,this.channels=2,i.bufferSize&&(this.bufferSize=0|i.bufferSize),this.bufferThreshold=2*this.bufferSize,this._bufferQueue=new s(this.channels,this.bufferSize),this._playbackTimeAtBufferTail=d.currentTime,this._queuedTime=0,this._delayedTime=0,this._dropped=0,this._liveBuffer=this._bufferQueue.createBuffer(this.bufferSize),d.createScriptProcessor)this._node=d.createScriptProcessor(this.bufferSize,0,this.channels);else{if(!d.createJavaScriptNode)throw new Error("Bad version of web audio API?");this._node=d.createJavaScriptNode(this.bufferSize,0,this.channels)}}o.prototype.bufferSize=4096,o.prototype.bufferThreshold=8192,o.prototype._volume=1,Object.defineProperty(o.prototype,"volume",{get:function(){return this._volume},set:function(e){this._volume=+e}}),o.prototype._muted=!1,Object.defineProperty(o.prototype,"muted",{get:function(){return this._muted},set:function(e){this._muted=!!e}}),o.prototype._audioProcess=function(e){var t,i,s,h,u;u="number"==typeof e.playbackTime?e.playbackTime:this._context.currentTime+this.bufferSize/this.rate;var c=this._playbackTimeAtBufferTail;if(c0){var t=Math.round(e*this.rate),i=this._liveBuffer?this._liveBuffer[0].length:0;t>i?(this._bufferQueue.prependBuffer(this._liveBuffer),this._bufferQueue.prependBuffer(this._bufferQueue.createBuffer(t-i))):this._bufferQueue.prependBuffer(this._bufferQueue.trimBuffer(this._liveBuffer,i-t,t)),this._playbackTimeAtBufferTail-=e}this._node.onaudioprocess=null,this._node.disconnect()}},o.prototype.flush=function(){this._bufferQueue.flush()},o.prototype.close=function(){this.stop(),this._context=null},o.prototype.onstarved=null,o.prototype.onbufferlow=null,o.isSupported=function(){return!!t},o.sharedAudioContext=null,o.initSharedAudioContext=function(){if(!o.sharedAudioContext&&o.isSupported()){var e,i=new t;if(i.createScriptProcessor)e=i.createScriptProcessor(1024,0,2);else{if(!i.createJavaScriptNode)throw new Error("Bad version of web audio API?");e=i.createJavaScriptNode(1024,0,2)}e.connect(i.destination),e.disconnect(),o.sharedAudioContext=i}return o.sharedAudioContext},e.exports=o}()},function(e,t){e.exports=function(){if(void 0!==window.setImmediate)return window.setImmediate;if(window&&window.postMessage){var e=[];return window.addEventListener("message",(function(t){if(t.source===window){var i=t.data;if("object"==typeof i&&i.nextTickBrowserPingMessage){var s=e.pop();s&&s()}}})),function(t){e.push(t),window.postMessage({nextTickBrowserPingMessage:!0},document.location.toString())}}return function(e){setTimeout(e,0)}}()},function(e,t,i){var s;window,s=function(){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var s=t[i]={i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)r.d(i,s,function(t){return e[t]}.bind(null,s));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t){var i={float_array:function(e){return new Float32Array(e)},blit:function(e,t,i,s,d){i.set(e.subarray(t,t+d),s)}};e.exports=i},function(e,t,i){var s,d;s=i(0),d=i(2),e.exports=function(e){var t=(e=e||{}).sampleRate||44100,i=e.wsizeLog||11,h=e.tempo||1,u=(e.numChannels,Math.pow(2,50/1200)-1),c=1<>1),T=s.float_array(b),k=s.float_array(b),P=s.float_array(b),w=s.float_array(b),E=s.float_array(b),x=s.float_array(b),A=1+(b>>1),R=[0,0],O=[],F=[],S=[],C=[];for(y=0;y<2;y++)O.push(s.float_array(A)),F.push(s.float_array(A)),S.push(s.float_array(A)),C.push(s.float_array(b));var B=s.float_array(A),D=s.float_array(A),M=0,V=0,I=[{in_time:0,out_time:0,tempo:h}],L=0,j=0,W=1,X=0,N=0,H=0,z=0,Y={mapOutputToInputTime:function(e){for(var t=I.length-1;e0;)t--;var i=I[t];return i.in_time+i.tempo*(e-i.out_time)},flush:function(e){X=0,R=[0,0],j=0,z=0,H=0;for(var t=0;t<2;t++)for(var i=0;i=0;)I.pop(),s--;I.push({in_time:M,out_time:V,tempo:h})}},getTempo:function(){return h},setTempo:function(e){m=g=f,e>=1?g=Math.round(m/e):m=Math.round(g*e),N=(1/e-1*g/m)*m,W=function(e,t){for(var i=e.length/t|0,s=0,d=0;di&&(i=e[s]);var d=1e-8*i,h=1,c=1;for(t[0]=1,s=2;sd&&e[s]>e[s-1]&&e[s]>=e[s+1]){var f=s+(e[s-1]-e[s+1])/(2*(e[s-1]-2*e[s]+e[s+1]));f-t[h-1]>l?(t[h++]=f,c=s):e[s]>e[c]&&(t[h-1]=f,c=s)}}return h}(y,T),P=F[l],w=S[l];if(0!=e&&0!=k){var E=0;for(H=0;Hm[E]&&E!=p;)++E;var x=E;E>0&&z-m[E-1].1*y[Math.round(z)]){var M=J(t,i,z),V=g[x]+v[x]+U(M,z,g[x],m[x],h)-M;P[H]=M,w[H]=V,B[H]=Math.cos(V),D[H]=Math.sin(V)}else P[H]=J(t,i,z),w[H]=0,B[H]=1,D[H]=0}T[k]=2*c;var I=T[x=0],L=T[x+1],j=B[x],W=D[x];for(b=1;b=I&&b-I>L-b&&(I=T[++x],L=T[x+1],j=B[x],W=D[x]);var X=t[b]*j-i[b]*W,N=t[b]*W+i[b]*j;t[b]=X,i[b]=N}}else for(var H=0;Hd&&(d=Math.abs(2*l.m_re[t]));for(t=0;td&&(d=Math.abs(l.m_re[t+g+e]+l.m_im[t]));for(t=c-g;td&&(d=Math.abs(2*l.m_im[t]));var u=1/Math.floor(1*c/(2*g));for(h*d>u&&(h=u/d),t=0;t1){d=s.float_array(e[0].length);for(var u=1/e.length,l=0;l0){var v=z+H+i,y=[];for(l=0;lP&&(P=z);var w=s.float_array(P);s.blit(p,0,w,0,z);for(var E=0,x=z,A=0,R=0;;){var O=c+m-H;if(E+O>i){s.blit(d,E,_,H,i-E),H+=i-E,E=i;break}O<=0?H-=2*m:(s.blit(d,E,_,H,O),E+=O,H=c-m),R=G(),M+=2*m/t,V+=R/t,(A=x+R-P)<0&&(A=0),s.blit(p,0,w,x,R-A),x+=R}s.blit(p,R-A,p,0,A),z=A;var F=[];for(l=0;l>=1;i.m_revTgt[d]=u}i.twiddleRe=s.float_array(i.m_logN),i.twiddleIm=s.float_array(i.m_logN);for(var l=1,f=0;f>1,c=d>>1,l=d;if(e)for(var f=1/d,_=0;_>=1,c>>=1,l>>=1}for(var O,F,S=i.m_revTgt,C=0;CC&&(F=t[O=S[C]],t[O]=t[C],t[C]=F,F=s[O],s[O]=s[C],s[C]=F)};var p=t>>1;return i.unpack=function(e,s,d,h){e[0]=i.m_re[0],d[0]=i.m_im[0],s[0]=h[0]=0,e[p]=i.m_re[p],d[p]=i.m_im[p],s[p]=h[p]=0;for(var u=1;u{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=class Bisector{constructor(e){this.lower=e.start,this.upper=e.end,this.onprocess=e.process,this.position=0,this.n=0}iterate(){return this.n++,this.position=Math.floor((this.lower+this.upper)/2),this.onprocess(this.lower,this.upper,this.position)}start(){return this.iterate(),this}left(){return this.upper=this.position,this.iterate()}right(){return this.lower=this.position,this.iterate()}};t.default=i},523:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=new class{hasTypedArrays(){return!!window.Uint32Array}hasWebAssembly(){return!!window.WebAssembly}hasWebAudio(){return!(!window.AudioContext&&!window.webkitAudioContext)}hasFlash(){return!1}hasAudio(){return this.hasWebAudio()}isBlacklisted(e){return!1}isSlow(){return!1}isTooSlow(){return!1}supported(e){return"OGVDecoder"===e?this.hasWebAssembly():"OGVPlayer"===e&&(this.supported("OGVDecoder")&&this.hasAudio())}};t.default=i},408:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(580));class OGVDecoderAudioProxy extends((0,d.default)({loadedMetadata:!1,audioFormat:null,audioBuffer:null,cpuTime:0})){init(e){this.proxy("init",[],e)}processHeader(e,t){this.proxy("processHeader",[e],t,[e])}processAudio(e,t){this.proxy("processAudio",[e],t,[e])}close(){this.terminate()}}var h=OGVDecoderAudioProxy;t.default=h},319:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(580));class OGVDecoderVideoProxy extends((0,d.default)({loadedMetadata:!1,videoFormat:null,frameBuffer:null,cpuTime:0})){init(e){this.proxy("init",[],e)}processHeader(e,t){this.proxy("processHeader",[e],t,[e])}processFrame(e,t){this.proxy("processFrame",[e],t,[e])}close(){this.terminate()}sync(){this.proxy("sync",[],(()=>{}))}recycleFrame(e){this.proxy("recycleFrame",[e],(()=>{}),[e.y.bytes.buffer,e.u.bytes.buffer,e.v.bytes.buffer])}}var h=OGVDecoderVideoProxy;t.default=h},445:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(539)),h="1.8.4-20210702161914-bd3a07f",u={OGVDemuxerOggW:"ogv-demuxer-ogg-wasm.js",OGVDemuxerWebMW:"ogv-demuxer-webm-wasm.js",OGVDecoderAudioOpusW:"ogv-decoder-audio-opus-wasm.js",OGVDecoderAudioVorbisW:"ogv-decoder-audio-vorbis-wasm.js",OGVDecoderVideoTheoraW:"ogv-decoder-video-theora-wasm.js",OGVDecoderVideoVP8W:"ogv-decoder-video-vp8-wasm.js",OGVDecoderVideoVP8MTW:"ogv-decoder-video-vp8-mt-wasm.js",OGVDecoderVideoVP9W:"ogv-decoder-video-vp9-wasm.js",OGVDecoderVideoVP9SIMDW:"ogv-decoder-video-vp9-simd-wasm.js",OGVDecoderVideoVP9MTW:"ogv-decoder-video-vp9-mt-wasm.js",OGVDecoderVideoVP9SIMDMTW:"ogv-decoder-video-vp9-simd-mt-wasm.js",OGVDecoderVideoAV1W:"ogv-decoder-video-av1-wasm.js",OGVDecoderVideoAV1SIMDW:"ogv-decoder-video-av1-simd-wasm.js",OGVDecoderVideoAV1MTW:"ogv-decoder-video-av1-mt-wasm.js",OGVDecoderVideoAV1SIMDMTW:"ogv-decoder-video-av1-simd-mt-wasm.js"};var c=class OGVLoaderBase{constructor(){this.base=this.defaultBase()}defaultBase(){}wasmSupported(){return d.default.wasmSupported()}scriptForClass(e){return u[e]}urlForClass(e){var t=this.scriptForClass(e);if(t)return this.urlForScript(t);throw new Error("asked for URL for unknown class "+e)}urlForScript(e){if(e){var t=this.base;return void 0===t?t="":t+="/",t+e+"?version="+encodeURIComponent(h)}throw new Error("asked for URL for unknown script "+e)}loadClass(e,t,i){i=i||{};var s=this.getGlobal(),d=this.urlForClass(e),classWrapper=t=>((t=t||{}).locateFile=e=>"data:"===e.slice(0,5)?e:this.urlForScript(e),t.mainScriptUrlOrBlob=this.scriptForClass(e)+"?version="+encodeURIComponent(h),s[e](t));"function"==typeof s[e]?t(classWrapper):this.loadScript(d,(()=>{t(classWrapper)}))}};t.default=c},964:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(408)),h=s(i(319)),u=s(i(445)),c={audio:{proxy:d.default,worker:"ogv-worker-audio.js"},video:{proxy:h.default,worker:"ogv-worker-video.js"}},l={OGVDecoderAudioOpusW:"audio",OGVDecoderAudioVorbisW:"audio",OGVDecoderVideoTheoraW:"video",OGVDecoderVideoVP8W:"video",OGVDecoderVideoVP9W:"video",OGVDecoderVideoVP9SIMDW:"video",OGVDecoderVideoAV1W:"video",OGVDecoderVideoAV1SIMDW:"video"};class OGVLoaderWeb extends u.default{constructor(){super(),this.scriptStatus={},this.scriptCallbacks={}}getGlobal(){return window}defaultBase(){for(var e,t,i=document.querySelectorAll("script"),s=/^(?:|(.*)\/)ogv(?:-support|-es2017)?\.js(?:\?|#|$)/,d=0;d{var i=this.scriptCallbacks[e];delete this.scriptCallbacks[e],this.scriptStatus[e]="done",i.forEach((e=>{e()}))};i.addEventListener("load",done),i.addEventListener("error",done),i.src=e,document.querySelector("head").appendChild(i)}}workerProxy(e,t){var i=c[l[e]];if(!i)throw new Error("Requested worker for class with no proxy: "+e);var s,d=i.proxy,h=i.worker,u=this.urlForScript(this.scriptForClass(e)),_=this.urlForScript(h),p=function construct(t){return new d(s,e,t)};if(_.match(/^https?:|\/\//i)){var m,g,v,y,b,T=!1,k=!1;function completionCheck(){if(1==T&&1==k){var e=v+" "+y+"\nOGVLoader.base = "+JSON.stringify(f.base);try{b=new Blob([e],{type:"application/javascript"})}catch(t){window.BlobBuilder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,(b=new BlobBuilder).append(e),b=b.getBlob()}s=new Worker(URL.createObjectURL(b)),t((function(e){return Promise.resolve(new p(e))}))}}(m=new XMLHttpRequest).open("GET",u,!0),m.onreadystatechange=function(){4==m.readyState&&200==m.status&&(v=m.responseText,T=!0,completionCheck())},m.send(),(g=new XMLHttpRequest).open("GET",_,!0),g.onreadystatechange=function(){4==g.readyState&&200==g.status&&(y=g.responseText,k=!0,completionCheck())},g.send()}else s=new Worker(_),t((function(e){return Promise.resolve(new p(e))}))}}var f=new OGVLoaderWeb,_=f;t.default=_},759:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(309)),h={MEDIA_ERR_ABORTED:1,MEDIA_ERR_NETWORK:2,MEDIA_ERR_DECODE:3,MEDIA_ERR_SRC_NOT_SUPPORTED:4};class OGVMediaError{constructor(e,t){this.code=e,this.message=t}}(0,d.default)(OGVMediaError,h),(0,d.default)(OGVMediaError.prototype,h);var u=OGVMediaError;t.default=u},278:(e,t)=>{"use strict";function split(e,t,i){var s=e.split(t,i).map((e=>function trim(e){return e.replace(/^\s+/,"").replace(/\s+$/,"")}(e)));if("number"==typeof i)for(;s.length{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d,h=s(i(731)),u=s(i(936)),c=s(i(848)),l=s(i(964)),f=s(i(893)),_=s(i(309)),p=s(i(759)),m=s(i(278)),g=s(i(168)),v=s(i(625)),y=(()=>{if("function"==typeof setImmediate)return setImmediate;var e=new MessageChannel,t=[];return e.port1.onmessage=e=>{t.shift()()},function nextTick(i){t.push(i),e.port2.postMessage({})}})(),b={NETWORK_EMPTY:0,NETWORK_IDLE:1,NETWORK_LOADING:2,NETWORK_NO_SOURCE:3,HAVE_NOTHING:0,HAVE_METADATA:1,HAVE_CURRENT_DATA:2,HAVE_FUTURE_DATA:3,HAVE_ENOUGH_DATA:4},T="INITIAL",k="SEEKING_END",P="LOADED",w="PRELOAD",E="READY",x="PLAYING",A="SEEKING",R="ERROR",O="NOT_SEEKING",F="BISECT_TO_TARGET",S="BISECT_TO_KEYPOINT",C="LINEAR_TO_TARGET",B="exact",D="fast";function OGVJSElement(){var e=document.createElement("ogvjs");return Object.setPrototypeOf?Object.setPrototypeOf(e,Object.getPrototypeOf(this)):e.__proto__=this.__proto__,e}d="undefined"==typeof performance||void 0===typeof performance.now?Date.now:performance.now.bind(performance),OGVJSElement.prototype=Object.create(HTMLElement.prototype,{});class OGVPlayer extends OGVJSElement{constructor(e){if(super(),(e=e||{}).base=e.base||l.default.base,this._options=e,this._instanceId="ogvjs"+ ++OGVPlayer.instanceCount,void 0!==e.worker?this._enableWorker=!!e.worker:this._enableWorker=!!window.Worker,!l.default.wasmSupported())throw new Error("WebAssembly not supported");this._enableThreading=!!e.threading,this._enableSIMD=!!e.simd,this._state=T,this._seekState=O,this._detectedType=null,this._canvas=document.createElement("canvas"),this._frameSink=null,e.video&&this._canvas.captureStream?(this._mediaStream=new MediaStream,this._video="object"==typeof e.video?e.video:document.createElement("video"),this._video.playsInline=!0,this._video.srcObject=this._mediaStream):this._video=null,this._videoTrack=null,this._audioTrack=null,this._canvasStream=null,this.className=this._instanceId,(0,_.default)(this,b),this._view=this._video||this._canvas,this._view.style.position="absolute",this._view.style.top="0",this._view.style.left="0",this._view.style.width="100%",this._view.style.height="100%",this._view.style.objectFit="contain",this.appendChild(this._view),this._startTime=d(),this._codec=null,this._audioInfo=null,this._videoInfo=null,this._actionQueue=[],this._audioFeeder=null,this._muted=!1,this._initialPlaybackPosition=0,this._initialPlaybackOffset=0,this._prebufferingAudio=!1,this._initialSeekTime=0,this._currentSrc="",this._streamEnded=!1,this._mediaError=null,this._dataEnded=!1,this._byteLength=0,this._duration=null,this._lastSeenTimestamp=null,this._nextProcessingTimer,this._nextFrameTimer=null,this._loading=!1,this._started=!1,this._paused=!0,this._ended=!1,this._startedPlaybackInDocument=!1,this._stream=void 0,this._framesProcessed=0,this._targetPerFrameTime=1e3/60,this._actualPerFrameTime=0,this._totalFrameTime=0,this._totalFrameCount=0,this._playTime=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._totalJitter=0,this._droppedAudio=0,this._delayedAudio=0,this._lateFrames=0,this._poster="",this._thumbnail=null,this._frameEndTimestamp=0,this._audioEndTimestamp=0,this._decodedFrames=[],this._pendingFrames=[],this._lastFrameDecodeTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameDrawingTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastProxyTime=0,this._lastDrawingTime=0,this._lastFrameTimestamp=0,this._currentVideoCpuTime=0,this._lastTimeUpdate=0,this._timeUpdateInterval=250,this._seekTargetTime=0,this._bisectTargetTime=0,this._seekMode=null,this._lastSeekPosition=null,this._seekBisector=null,this._didSeek=null,this._depth=0,this._needProcessing=!1,this._pendingFrame=0,this._pendingAudio=0,this._framePipelineDepth=8,this._frameParallelism=this._enableThreading?Math.min(16,navigator.hardwareConcurrency)||1:0,this._audioPipelineDepth=12,this._videoInfo=null,this._audioInfo=null,this._width=0,this._height=0,this._volume=1,this._playbackRate=1,Object.defineProperties(this,{src:{get:function getSrc(){return this.getAttribute("src")||""},set:function setSrc(e){this.setAttribute("src",e),this._loading=!1,this._prepForLoad("interactive")}},buffered:{get:function getBuffered(){var e;return e=this._stream&&this._byteLength&&this._duration?this._stream.getBufferedRanges().map((e=>e.map((e=>e/this._stream.length*this._duration)))):[[0,0]],new g.default(e)}},seekable:{get:function getSeekable(){return this.duration<1/0&&this._stream&&this._stream.seekable&&this._codec&&this._codec.seekable?new g.default([[0,this._duration]]):new g.default([])}},currentTime:{get:function getCurrentTime(){return this._state==A?this._seekTargetTime:this._codec?this._state!=x||this._paused?this._initialPlaybackOffset:this._getPlaybackTime():this._initialSeekTime},set:function setCurrentTime(e){this._seek(e,B)}},duration:{get:function getDuration(){return this._codec&&this._codec.loadedMetadata?null!==this._duration?this._duration:1/0:NaN}},paused:{get:function getPaused(){return this._paused}},ended:{get:function getEnded(){return this._ended}},seeking:{get:function getSeeking(){return this._state==A}},muted:{get:function getMuted(){return this._muted},set:function setMuted(e){this._muted=e,this._audioFeeder?this._audioFeeder.muted=this._muted:this._started&&!this._muted&&this._codec&&this._codec.hasAudio&&(this._log("unmuting: switching from timer to audio clock"),this._initAudioFeeder(),this._startPlayback(this._audioEndTimestamp)),this._fireEventAsync("volumechange")}},poster:{get:function getPoster(){return this._poster},set:function setPoster(e){if(this._poster=e,!this._started){this._thumbnail&&this.removeChild(this._thumbnail);var t=new Image;t.src=this._poster,t.className="ogvjs-poster",t.style.position="absolute",t.style.top="0",t.style.left="0",t.style.width="100%",t.style.height="100%",t.style.objectFit="contain",t.style.visibility="hidden",t.addEventListener("load",(()=>{this._thumbnail===t&&(OGVPlayer.styleManager.appendRule("."+this._instanceId,{width:t.naturalWidth+"px",height:t.naturalHeight+"px"}),OGVPlayer.updatePositionOnResize(),t.style.visibility="visible")})),this._thumbnail=t,this.appendChild(t)}}},videoWidth:{get:function getVideoWidth(){return this._videoInfo?this._videoInfo.displayWidth:0}},videoHeight:{get:function getVideoHeight(){return this._videoInfo?this._videoInfo.displayHeight:0}},ogvjsVideoFrameRate:{get:function getOgvJsVideoFrameRate(){return this._videoInfo?0==this._videoInfo.fps?this._totalFrameCount/(this._totalFrameTime/1e3):this._videoInfo.fps:0}},ogvjsAudioChannels:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.channels:0}},ogvjsAudioSampleRate:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.rate:0}},width:{get:function getWidth(){return this._width},set:function setWidth(e){this._width=parseInt(e,10),this.style.width=this._width+"px",OGVPlayer.updatePositionOnResize()}},height:{get:function getHeight(){return this._height},set:function setHeight(e){this._height=parseInt(e,10),this.style.height=this._height+"px",OGVPlayer.updatePositionOnResize()}},autoplay:{get:function getAutoplay(){return!1},set:function setAutoplay(e){}},controls:{get:function getControls(){return!1},set:function setControls(e){}},loop:{get:function getLoop(){return!1},set:function setLoop(e){}},crossOrigin:{get:function getCrossOrigin(){return null},set:function setCrossOrigin(e){}},currentSrc:{get:function getCurrentSrc(){return this._currentSrc}},defaultMuted:{get:function getDefaultMuted(){return!1}},defaultPlaybackRate:{get:function getDefaultPlaybackRate(){return 1}},error:{get:function getError(){return this._state===R?this._mediaError?this._mediaError:new p.default("unknown error occurred in media procesing"):null}},preload:{get:function getPreload(){return this.getAttribute("preload")||""},set:function setPreload(e){this.setAttribute("preload",e)}},readyState:{get:function getReadyState(){return this._stream&&this._codec&&this._codec.loadedMetadata?OGVPlayer.HAVE_ENOUGH_DATA:OGVPlayer.HAVE_NOTHING}},networkState:{get:function getNetworkState(){return this._stream?this._stream.waiting?OGVPlayer.NETWORK_LOADING:OGVPlayer.NETWORK_IDLE:this.readyState==OGVPlayer.HAVE_NOTHING?OGVPlayer.NETWORK_EMPTY:OGVPlayer.NETWORK_NO_SOURCE}},playbackRate:{get:function getPlaybackRate(){return this._playbackRate},set:function setPlaybackRate(e){var t=Number(e)||1;this._audioFeeder?this._audioFeeder.tempo=t:this._paused||(this._initialPlaybackOffset=this._getPlaybackTime(),this._initialPlaybackPosition=t*d()/1e3),this._playbackRate=t,this._fireEventAsync("ratechange")}},played:{get:function getPlayed(){return new g.default([[0,this.currentTime]])}},volume:{get:function getVolume(){return this._volume},set:function setVolume(e){this._volume=+e,this._audioFeeder&&(this._audioFeeder.volume=this._volume),this._fireEventAsync("volumechange")}}}),this.onframecallback=null,this.onloadstate=null,this.onprogress=null,this.onsuspend=null,this.onabort=null,this.onemptied=null,this.onstalled=null,this.onloadedmetadata=null,this.onloadeddata=null,this.oncanplay=null,this.oncanplaythrough=null,this.onplaying=null,this.onwaiting=null,this.onseeking=null,this.onseeked=null,this.onended=null,this.ondurationchange=null,this.ontimeupdate=null,this.onplay=null,this.onpause=null,this.onratechange=null,this.onresize=null,this.onvolumechange=null,this.onaudiofeedercreated=null}_time(e){var t=d();e();var i=d()-t;return this._lastFrameDecodeTime+=i,i}_log(e){var t=this._options;if(t.debug){var i=d()-this._startTime;t.debugFilter&&!e.match(t.debugFilter)||console.log("["+Math.round(10*i)/10+"ms] "+e)}}_fireEvent(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log("fireEvent "+e);var i,s="function"==typeof Event;for(var d in s?i=new CustomEvent(e):(i=document.createEvent("Event")).initEvent(e,!1,!1),t)t.hasOwnProperty(d)&&(i[d]=t[d]);var h=this.dispatchEvent(i);!s&&"resize"===e&&this.onresize&&h&&this.onresize.call(this,i)}_fireEventAsync(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log("fireEventAsync "+e),y((()=>{this._fireEvent(e,t)}))}static initSharedAudioContext(){c.default.initSharedAudioContext()}_initAudioFeeder(){var e=this._options,t={bufferSize:8192};if(e.audioContext&&(t.audioContext=e.audioContext),e.audioDestination&&(t.output=e.audioDestination),e.audioBackendFactory&&(t.backendFactory=e.audioBackendFactory),this._video&&!t.output){t.audioContext||(t.audioContext=c.default.initSharedAudioContext());var i=t.audioContext.createMediaStreamDestination();this._audioTrack=i.stream.getAudioTracks()[0],this._mediaStream.addTrack(this._audioTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream),this._video.play(),t.output=i}var s=this._audioFeeder=new c.default(t);s.init(this._audioInfo.channels,this._audioInfo.rate),this.onaudiofeedercreated&&this.onaudiofeedercreated(this._audioFeeder),s.bufferThreshold=1,s.volume=this.volume,s.muted=this.muted,s.tempo=this.playbackRate,s.onbufferlow=()=>{this._log("onbufferlow"),this._stream&&(this._stream.buffering||this._stream.seeking)||this._pendingAudio||this._pingProcessing()},s.onstarved=()=>{this._dataEnded?this._log("onstarved: appear to have reached end of audio"):(this._log("onstarved: halting audio due to starvation"),this._stopPlayback(),this._prebufferingAudio=!0),this._isProcessing()||this._pingProcessing(0)}}_startPlayback(e){if(this._audioFeeder){this._audioFeeder.start();var t=this._audioFeeder.getPlaybackState();this._initialPlaybackPosition=t.playbackPosition}else this._initialPlaybackPosition=this._playbackRate*d()/1e3;void 0!==e&&(this._initialPlaybackOffset=e),this._prebufferingAudio=!1,this._log("continuing at "+this._initialPlaybackPosition+", "+this._initialPlaybackOffset)}_stopPlayback(){this._initialPlaybackOffset=this._getPlaybackTime(),this._log("pausing at "+this._initialPlaybackOffset),this._audioFeeder&&this._audioFeeder.stop()}_getPlaybackTime(e){return this._prebufferingAudio||this._paused?this._initialPlaybackOffset:(this._audioFeeder?(e=e||this._audioFeeder.getPlaybackState()).playbackPosition:this._playbackRate*d()/1e3)-this._initialPlaybackPosition+this._initialPlaybackOffset}_stopVideo(){this._log("STOPPING"),this._state=T,this._seekState=O,this._started=!1,this._ended=!1,this._frameEndTimestamp=0,this._audioEndTimestamp=0,this._lastFrameDecodeTime=0,this._prebufferingAudio=!1,this._actionQueue.splice(0,this._actionQueue.length),this._stream&&(this._stream.abort(),this._stream=null,this._streamEnded=!1),this._codec&&(this._codec.close(),this._codec=null,this._pendingFrame=0,this._pendingAudio=0,this._dataEnded=!1),this._videoInfo=null,this._audioInfo=null,this._audioFeeder&&(this._audioFeeder.close(),this._audioFeeder=null),this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._frameSink&&(this._frameSink.clear(),this._frameSink=null),this._decodedFrames&&(this._decodedFrames=[]),this._pendingFrames&&(this._pendingFrames=[]),this._initialSeekTime=0,this._initialPlaybackPosition=0,this._initialPlaybackOffset=0,this._duration=null}_doFrameComplete(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._startedPlaybackInDocument&&!document.body.contains(this)&&y((()=>{this.stop()}));var t=d(),i=t-this._lastFrameTimestamp,s=this._actualPerFrameTime-this._targetPerFrameTime;this._totalJitter+=Math.abs(s),this._playTime+=i;var h={cpuTime:this._lastFrameDecodeTime,drawingTime:this._drawingTime-this._lastFrameDrawingTime,bufferTime:this._bufferTime-this._lastFrameBufferTime,proxyTime:this._proxyTime-this._lastFrameProxyTime,demuxerTime:0,videoTime:0,audioTime:0,clockTime:this._actualPerFrameTime,late:e.dropped,dropped:e.dropped};function n(e){return Math.round(10*e)/10}this._codec&&(h.demuxerTime=this._codec.demuxerCpuTime-this._lastFrameDemuxerCpuTime,h.videoTime+=this._currentVideoCpuTime-this._lastFrameVideoCpuTime,h.audioTime+=this._codec.audioCpuTime-this._lastFrameAudioCpuTime),h.cpuTime+=h.demuxerTime,this._lastFrameDecodeTime=0,this._lastFrameTimestamp=t,this._codec?(this._lastFrameVideoCpuTime=this._currentVideoCpuTime,this._lastFrameAudioCpuTime=this._codec.audioCpuTime,this._lastFrameDemuxerCpuTime=this._codec.demuxerCpuTime):(this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0),this._lastFrameDrawingTime=this._drawingTime,this._lastFrameBufferTime=this._bufferTime,this._lastFrameProxyTime=this._proxyTime,this._log("drew frame "+e.frameEndTimestamp+": clock time "+n(i)+" (jitter "+n(s)+") cpu: "+n(h.cpuTime)+" (mux: "+n(h.demuxerTime)+" buf: "+n(h.bufferTime)+" draw: "+n(h.drawingTime)+" proxy: "+n(h.proxyTime)+") vid: "+n(h.videoTime)+" aud: "+n(h.audioTime)),this._fireEventAsync("framecallback",h),(!this._lastTimeUpdate||t-this._lastTimeUpdate>=this._timeUpdateInterval)&&(this._lastTimeUpdate=t,this._fireEventAsync("timeupdate")),this._codec&&e.yCbCrBuffer&&this._codec.recycleFrame(e.yCbCrBuffer)}_seekStream(e){this._stream.seeking&&this._stream.abort(),this._stream.buffering&&this._stream.abort(),this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._stream.seek(e).then((()=>{this._readBytesAndWait()})).catch((e=>{this._onStreamError(e)}))}_onStreamError(e){"AbortError"===e.name?this._log("i/o promise canceled; ignoring"):(this._log("i/o error: "+e),this._mediaError=new p.default(p.default.MEDIA_ERR_NETWORK,String(e)),this._state=R,this._stopPlayback())}_seek(e,t){if(this._log("requested seek to "+e+", mode "+t),this.readyState==this.HAVE_NOTHING)return this._log("not yet loaded; saving seek position for later"),void(this._initialSeekTime=e);if(this._stream&&!this._stream.seekable)throw new Error("Cannot seek a non-seekable stream");if(this._codec&&!this._codec.seekable)throw new Error("Cannot seek in a non-seekable file");var prepForSeek=i=>{this._stream&&this._stream.buffering&&this._stream.abort(),this._stream&&this._stream.seeking&&this._stream.abort(),this._actionQueue.splice(0,this._actionQueue.length),this._stopPlayback(),this._prebufferingAudio=!1,this._audioFeeder&&this._audioFeeder.flush(),this._state=A,this._seekTargetTime=e,this._seekMode=t,this._codec?this._codec.flush(i):i()};prepForSeek((()=>{this._isProcessing()||this._pingProcessing(0)})),this._actionQueue.push((()=>{prepForSeek((()=>{this._doSeek(e)}))}))}_doSeek(e){this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._state=A,this._seekTargetTime=e,this._lastSeekPosition=-1,this._decodedFrames=[],this._pendingFrames=[],this._pendingFrame=0,this._pendingAudio=0,this._didSeek=!1,this._codec.seekToKeypoint(e,(t=>{if(t)return this._seekState=C,this._fireEventAsync("seeking"),this._didSeek?void 0:void this._pingProcessing();this._codec.getKeypointOffset(e,(e=>{e>0?(this._seekState=C,this._seekStream(e)):(this._seekState=F,this._startBisection(this._seekTargetTime)),this._fireEventAsync("seeking")}))}))}_startBisection(e){var t=Math.max(0,this._stream.length-65536);this._bisectTargetTime=e,this._seekBisector=new f.default({start:0,end:t,process:(e,t,i)=>i!=this._lastSeekPosition&&(this._lastSeekPosition=i,this._codec.flush((()=>{this._seekStream(i)})),!0)}),this._seekBisector.start()}_continueSeekedPlayback(){this._seekState=O,this._state=E,this._frameEndTimestamp=this._codec.frameTimestamp,this._audioEndTimestamp=this._codec.audioTimestamp,this._codec.hasAudio?this._seekTargetTime=this._codec.audioTimestamp:this._seekTargetTime=this._codec.frameTimestamp,this._initialPlaybackOffset=this._seekTargetTime;var finishedSeeking=()=>{this._lastTimeUpdate=this._seekTargetTime,this._fireEventAsync("timeupdate"),this._fireEventAsync("seeked"),this._isProcessing()||this._pingProcessing()};if(this._codec.hasVideo&&this._decodedFrames.length){var e=this._decodedFrames.shift();this._drawFrame(e.yCbCrBuffer),finishedSeeking()}else{if(this._codec.hasVideo&&this._codec.frameReady)return this._codec.decodeFrame((e=>{e&&this._drawFrame(this._codec.frameBuffer),finishedSeeking()})),void this._codec.sync();finishedSeeking()}}_drawFrame(e){this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null),this._frameSink.drawFrame(e),this._video&&(this._canvasStream||(this._canvasStream=this._canvas.captureStream(0),this._videoTrack=this._canvasStream.getVideoTracks()[0],this._mediaStream.addTrack(this._videoTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream,this._video.play())),this._videoTrack&&this._videoTrack.requestFrame?this._videoTrack.requestFrame():this._canvasStream&&this._canvasStream.requestFrame&&this._canvasStream.requestFrame())}_doProcessLinearSeeking(){var e;if(e=this._codec.hasVideo?this._targetPerFrameTime/1e3:1/256,this._codec.hasVideo){if(this._pendingFrame)return;if(!this._codec.frameReady)return void this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?(this._log("stream ended during linear seeking on video"),this._dataEnded=!0,this._continueSeekedPlayback()):this._readBytesAndWait()}));if(this._seekMode===D&&this._codec.keyframeTimestamp==this._codec.frameTimestamp)return void this._continueSeekedPlayback();if(this._codec.frameTimestamp<=this._seekTargetTime){var t=this._codec.frameTimestamp;return this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:t}),this._decodedFrames.splice(0,this._decodedFrames.length),this._codec.decodeFrame((e=>{this._pendingFrame--,this._pendingFrames.shift(),this._decodedFrames.push({yCbCrBuffer:this._codec.frameBuffer,videoCpuTime:this._codec.videoCpuTime,frameEndTimestamp:t}),this._pingProcessing()})),void this._codec.sync()}if(!this._codec.hasAudio)return void this._continueSeekedPlayback()}if(this._codec.hasAudio){if(this._pendingAudio)return;return this._codec.audioReady?this._codec.audioTimestamp+e{this._pingProcessing()})):void this._continueSeekedPlayback():void this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?(this._log("stream ended during linear seeking on audio"),this._dataEnded=!0,this._continueSeekedPlayback()):this._readBytesAndWait()}))}}_doProcessBisectionSeek(){var e,t;if(this._codec.hasVideo)t=this._codec.frameTimestamp,e=this._targetPerFrameTime/1e3;else{if(!this._codec.hasAudio)throw new Error("Invalid seek state; no audio or video track available");t=this._codec.audioTimestamp,e=1/256}t<0?this._codec.process((e=>{if(e)this._pingProcessing();else if(this._streamEnded){if(this._log("stream ended during bisection seek"),!this._seekBisector.right())throw this._log("failed going back"),new Error("not sure what to do")}else this._readBytesAndWait()})):t-e/2>this._bisectTargetTime?this._seekBisector.left()||(this._log("close enough (left)"),this._seekTargetTime=t,this._continueSeekedPlayback()):t+e/20?this._targetPerFrameTime=1e3/this._videoInfo.fps:this._targetPerFrameTime=16.667,this._canvas.width=this._videoInfo.displayWidth,this._canvas.height=this._videoInfo.displayHeight,OGVPlayer.styleManager.appendRule("."+this._instanceId,{width:this._videoInfo.displayWidth+"px",height:this._videoInfo.displayHeight+"px"}),OGVPlayer.updatePositionOnResize();var e={};void 0!==this._options.webGL&&(e.webGL=this._options.webGL),this._options.forceWebGL&&(e.webGL="required"),this._frameSink=h.default.attach(this._canvas,e)}_doProcessing(){if(this._didSeek&&(this._didSeek=!1),this._nextProcessingTimer=null,this._isProcessing(),this._depth>0)throw new Error("REENTRANCY FAIL: doProcessing recursing unexpectedly");var e=0;do{if(this._needProcessing=!1,this._depth++,this._doProcessingLoop(),this._depth--,this._needProcessing&&this._isProcessing())throw new Error("REENTRANCY FAIL: waiting on input or codec but asked to keep processing");++e>500&&(this._log("stuck in processing loop; breaking with timer"),this._needProcessing=0,this._pingProcessing(0))}while(this._needProcessing)}_doProcessingLoop(){if(this._actionQueue.length)this._actionQueue.shift()();else if(this._state==T)this._doProcessInitial();else if(this._state==k)this._doProcessSeekingEnd();else if(this._state==P)this._doProcessLoaded();else if(this._state==w)this._doProcessPreload();else if(this._state==E)this._doProcessReady();else if(this._state==A)this._doProcessSeeking();else if(this._state==x)this._doProcessPlay();else{if(this._state!=R)throw new Error("Unexpected OGVPlayer state "+this._state);this._doProcessError()}}_doProcessInitial(){if(this._codec.loadedMetadata){if(!this._codec.hasVideo&&!this._codec.hasAudio)throw new Error("No audio or video found, something is wrong");this._codec.hasAudio&&(this._audioInfo=this._codec.audioFormat),this._codec.hasVideo&&(this._videoInfo=this._codec.videoFormat,this._setupVideo()),isNaN(this._codec.duration)||(this._duration=this._codec.duration),null===this._duration&&this._stream.seekable&&"video/ogg"==this._detectedType?(this._state=k,this._lastSeenTimestamp=-1,this._codec.flush((()=>{this._seekStream(Math.max(0,this._stream.length-131072))}))):(this._state=P,this._pingProcessing())}else this._codec.process((e=>{if(e)this._pingProcessing();else{if(this._streamEnded)throw new Error("end of file before headers found");this._log("reading more cause we are out of data"),this._readBytesAndWait()}}))}_doProcessSeekingEnd(){this._codec.frameReady?(this._log("saw frame with "+this._codec.frameTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.frameTimestamp),this._codec.discardFrame((()=>{this._pingProcessing()}))):this._codec.audioReady?(this._log("saw audio with "+this._codec.audioTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.audioTimestamp),this._codec.discardAudio((()=>{this._pingProcessing()}))):this._codec.process((e=>{e?this._pingProcessing():this._stream.eof?(this._log("seek-duration: we are at the end: "+this._lastSeenTimestamp),this._lastSeenTimestamp>0&&(this._duration=this._lastSeenTimestamp),this._state=P,this._codec.flush((()=>{this._streamEnded=!1,this._dataEnded=!1,this._seekStream(0)}))):this._readBytesAndWait()}))}_doProcessLoaded(){this._state=w,this._fireEventAsync("loadedmetadata"),this._fireEventAsync("durationchange"),this._codec.hasVideo&&this._fireEventAsync("resize"),this._pingProcessing(0)}_doProcessPreload(){!this._codec.frameReady&&this._codec.hasVideo||!this._codec.audioReady&&this._codec.hasAudio?this._codec.process((e=>{e?this._pingProcessing():this._streamEnded?this._ended=!0:this._readBytesAndWait()})):(this._state=E,this._fireEventAsync("loadeddata"),this._pingProcessing())}_doProcessReady(){if(this._log("initial seek to "+this._initialSeekTime),this._initialSeekTime>0){var e=this._initialSeekTime;this._initialSeekTime=0,this._log("initial seek to "+e),this._doSeek(e)}else if(this._paused)this._log("paused while in ready");else{var finishStartPlaying=()=>{this._log("finishStartPlaying"),this._state=x,this._lastFrameTimestamp=d(),this._codec.hasAudio&&this._audioFeeder?this._prebufferingAudio=!0:this._startPlayback(),this._pingProcessing(0),this._fireEventAsync("play"),this._fireEventAsync("playing")};!this._codec.hasAudio||this._audioFeeder||this._muted?finishStartPlaying():(this._initAudioFeeder(),this._audioFeeder.waitUntilReady(finishStartPlaying))}}_doProcessSeeking(){if(this._seekState==O)throw new Error("seeking in invalid state (not seeking?)");if(this._seekState==F)this._doProcessBisectionSeek();else if(this._seekState==S)this._doProcessBisectionSeek();else{if(this._seekState!=C)throw new Error("Invalid seek state "+this._seekState);this._doProcessLinearSeeking()}}_doProcessPlay(){var e=this._codec;if(this._paused)this._log("paused during playback; stopping loop");else if((!e.hasAudio||e.audioReady||this._pendingAudio||this._dataEnded)&&(!e.hasVideo||e.frameReady||this._pendingFrame||this._decodedFrames.length||this._dataEnded)){var t,i,s,d=null,h=0,u=!1,c=0;if(e.hasAudio&&this._audioFeeder?(d=this._audioFeeder.getPlaybackState(),h=this._getPlaybackTime(d),u=this._dataEnded&&0==this._audioFeeder.durationBuffered,this._prebufferingAudio&&(this._audioFeeder.durationBuffered>=2*this._audioFeeder.bufferThreshold&&(!e.hasVideo||this._decodedFrames.length>=this._framePipelineDepth)||this._dataEnded)&&(this._log("prebuffering audio done; buffered to "+this._audioFeeder.durationBuffered),this._startPlayback(h),this._prebufferingAudio=!1),d.dropped!=this._droppedAudio&&this._log("dropped "+(d.dropped-this._droppedAudio)),d.delayed!=this._delayedAudio&&this._log("delayed "+(d.delayed-this._delayedAudio)),this._droppedAudio=d.dropped,this._delayedAudio=d.delayed,(t=this._audioFeeder.durationBuffered<=2*this._audioFeeder.bufferThreshold)&&(this._codec.audioReady?this._pendingAudio>=this._audioPipelineDepth&&(this._log("audio decode disabled: "+this._pendingAudio+" packets in flight"),t=!1):t=!1)):(h=this._getPlaybackTime(),t=this._codec.audioReady&&this._audioEndTimestamp0,s=this._pendingFrame+this._decodedFrames.length=l){for(var f=-1,_=0;_=0)for(;f-- >=0;){this._lateFrames++;var p=this._decodedFrames.shift();this._log("skipping already-decoded late frame at "+p.frameEndTimestamp),c=1e3*(p.frameEndTimestamp-h),this._frameEndTimestamp=p.frameEndTimestamp,this._actualPerFrameTime=this._targetPerFrameTime-c,this._framesProcessed++,p.dropped=!0,this._doFrameComplete(p)}var m=this._codec.nextKeyframeTimestamp,g=m-this._targetPerFrameTime/1e3*(this._framePipelineDepth+this._pendingFrame);if(m>=0&&m!=this._codec.frameTimestamp&&h>=g){this._log("skipping late frame at "+this._decodedFrames[0].frameEndTimestamp+" vs "+h+", expect to see keyframe at "+m);for(var v=0;v{})),this._framesProcessed++,this._doFrameComplete(k)}return void(this._isProcessing()||this._pingProcessing())}}else i&&c<=4||(i=!1)}if(s){this._log("play loop: ready to decode frame; thread depth: "+this._pendingFrame+", have buffered: "+this._decodedFrames.length),0==this._videoInfo.fps&&this._codec.frameTimestamp-this._frameEndTimestamp>0&&(this._targetPerFrameTime=1e3*(this._codec.frameTimestamp-this._frameEndTimestamp)),this._totalFrameTime+=this._targetPerFrameTime,this._totalFrameCount++;var P=this._frameEndTimestamp=this._codec.frameTimestamp;this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:P});var w=this._pendingFrames,E=!1,x=this._time((()=>{this._codec.decodeFrame((e=>{w===this._pendingFrames?(this._log("play loop callback: decoded frame"),this._pendingFrame--,this._pendingFrames.shift(),e?this._decodedFrames.push({yCbCrBuffer:this._codec.frameBuffer,videoCpuTime:this._codec.videoCpuTime,frameEndTimestamp:P}):this._log("Bad video packet or something"),this._codec.process((()=>{this._isProcessing()||this._pingProcessing(E?void 0:0)}))):this._log("play loop callback after flush, discarding")}))}));this._pendingFrame&&(E=!0,this._proxyTime+=x,this._pingProcessing(),this._dataEnded&&this._codec.sync())}else if(t){this._log("play loop: ready for audio; depth: "+this._pendingAudio),this._pendingAudio++;var A=this._codec.audioTimestamp,R=this._time((()=>{this._codec.decodeAudio((e=>{if(this._pendingAudio--,this._log("play loop callback: decoded audio"),this._audioEndTimestamp=A,e){var t=this._codec.audioBuffer;if(t&&(this._bufferTime+=this._time((()=>{this._audioFeeder&&this._audioFeeder.bufferData(t)})),!this._codec.hasVideo)){this._framesProcessed++;var i={frameEndTimestamp:this._audioEndTimestamp};this._doFrameComplete(i)}}this._isProcessing()||this._pingProcessing()}))}));this._pendingAudio&&(this._proxyTime+=R,this._codec.audioReady?this._pingProcessing():this._doProcessPlayDemux())}else if(i){this._log("play loop: ready to draw frame"),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null);var O=this._decodedFrames.shift();this._currentVideoCpuTime=O.videoCpuTime,this._drawingTime+=this._time((()=>{this._drawFrame(O.yCbCrBuffer)})),this._framesProcessed++,this._doFrameComplete(O),this._pingProcessing()}else if(!this._decodedFrames.length||this._nextFrameTimer||this._prebufferingAudio)if(this._dataEnded&&!(this._pendingAudio||this._pendingFrame||this._decodedFrames.length)){this._log("play loop: playback reached end of data "+[this._pendingAudio,this._pendingFrame,this._decodedFrames.length]);var F=0;this._codec.hasAudio&&this._audioFeeder&&(F=1e3*this._audioFeeder.durationBuffered),F>0?(this._log("play loop: ending pending "+F+" ms"),this._pingProcessing(Math.max(0,F))):(this._log("play loop: ENDING NOW: playback time "+this._getPlaybackTime()+"; frameEndTimestamp: "+this._frameEndTimestamp),this._stopPlayback(),this._prebufferingAudio=!1,this._initialPlaybackOffset=Math.max(this._audioEndTimestamp,this._frameEndTimestamp),this._ended=!0,this._paused=!0,this._fireEventAsync("pause"),this._fireEventAsync("ended"))}else this._prebufferingAudio&&(e.hasVideo&&!e.frameReady||e.hasAudio&&!e.audioReady)?(this._log("play loop: prebuffering demuxing"),this._doProcessPlayDemux()):this._log("play loop: waiting on async/timers");else{var S=c;this._log("play loop: setting a timer for drawing "+S),this._nextFrameTimer=setTimeout((()=>{this._nextFrameTimer=null,this._pingProcessing()}),S)}}else this._log("play loop: demuxing"),this._doProcessPlayDemux()}_doProcessPlayDemux(){var e=this._codec.frameReady,t=this._codec.audioReady;this._codec.process((i=>{this._codec.frameReady&&!e||this._codec.audioReady&&!t?(this._log("demuxer has packets"),this._pingProcessing()):i?(this._log("demuxer processing to find more packets"),this._pingProcessing()):(this._log("demuxer ran out of data"),this._streamEnded?(this._log("demuxer reached end of data stream"),this._dataEnded=!0,this._pingProcessing()):(this._log("demuxer loading more data"),this._readBytesAndWait()))}))}_doProcessError(){}_isProcessing(){return this._stream&&(this._stream.buffering||this._stream.seeking)||this._codec&&this._codec.processing}_readBytesAndWait(){if(this._stream.buffering||this._stream.seeking)this._log("readBytesAndWait during i/o");else{this._stream.read(32768).then((e=>{this._log("got input "+[e.byteLength]),e.byteLength&&this._actionQueue.push((()=>{this._codec.receiveInput(e,(()=>{this._pingProcessing()}))})),this._stream.eof&&(this._log("stream is at end!"),this._streamEnded=!0),this._isProcessing()||this._pingProcessing()})).catch((e=>{this._onStreamError(e)}))}}_pingProcessing(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(this._stream&&this._stream.waiting)this._log("waiting on input");else{this._nextProcessingTimer&&(this._log("canceling old processing timer"),clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null);e>-1/256?this._nextProcessingTimer=setTimeout((()=>{this._pingProcessing()}),e):this._depth?this._needProcessing=!0:this._doProcessing()}}_startProcessingVideo(e){if(!this._started&&!this._codec){this._framesProcessed=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._started=!0,this._ended=!1;var t={base:this._options.base,worker:this._enableWorker,threading:this._enableThreading,simd:this._enableSIMD};this._detectedType&&(t.type=this._detectedType),this._codec=new v.default(t),this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastDrawingTime=0,this._lastProxyTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastFrameDrawingTime=0,this._currentVideoCpuTime=0,this._codec.onseek=e=>{this._didSeek=!0,this._stream&&this._seekStream(e)},this._codec.init((()=>{this._codec.receiveInput(e,(()=>{this._readBytesAndWait()}))}))}}_loadCodec(e){this._stream.read(1024).then((t=>{var i=new Uint8Array(t);i.length>4&&i[0]=="O".charCodeAt(0)&&i[1]=="g".charCodeAt(0)&&i[2]=="g".charCodeAt(0)&&i[3]=="S".charCodeAt(0)?this._detectedType="video/ogg":i.length>4&&26==i[0]&&69==i[1]&&223==i[2]&&163==i[3]?this._detectedType="video/webm":this._detectedType="video/ogg",e(t)}))}_prepForLoad(e){this._stopVideo();var doLoad=()=>{this._options.stream?this._stream=this._options.stream:this._stream=new u.default({url:this.src,cacheSize:16777216,progressive:!1}),this._stream.load().then((()=>{this._loading=!1,this._currentSrc=this.src,this._byteLength=this._stream.seekable?this._stream.length:0;var e=this._stream.headers["x-content-duration"];"string"==typeof e&&(this._duration=parseFloat(e)),this._loadCodec((e=>{this._startProcessingVideo(e)}))})).catch((e=>{this._onStreamError(e)}))};this._currentSrc="",this._loading=!0,this._actionQueue.push((()=>{e&&"none"===this.preload?this._loading=!1:doLoad()})),this._pingProcessing(0)}load(){this._prepForLoad()}canPlayType(e){var t=new m.default(e);function checkTypes(e){if(t.codecs){var i=0,s=0;return t.codecs.forEach((t=>{e.indexOf(t)>=0?i++:s++})),0===i||s>0?"":"probably"}return"maybe"}return"ogg"!==t.minor||"audio"!==t.major&&"video"!==t.major&&"application"!==t.major?"webm"!==t.minor||"audio"!==t.major&&"video"!==t.major?"":checkTypes(["vorbis","opus","vp8","vp9"]):checkTypes(["vorbis","opus","theora"])}play(){this._muted||this._options.audioContext||OGVPlayer.initSharedAudioContext(),this._paused&&(this._startedPlaybackInDocument=document.body.contains(this),this._paused=!1,this._state==A||(this._started&&this._codec&&this._codec.loadedMetadata?(this._ended&&this._stream&&this._byteLength?(this._log(".play() starting over after end"),this._seek(0)):this._log(".play() while already started"),this._state=E,this._isProcessing()||this._pingProcessing()):this._loading?this._log(".play() while loading"):(this._log(".play() before started"),this._stream||this.load()))),this._video&&this._video.paused&&this._video.play()}getPlaybackStats(){return{targetPerFrameTime:this._targetPerFrameTime,framesProcessed:this._framesProcessed,videoBytes:this._codec?this._codec.videoBytes:0,audioBytes:this._codec?this._codec.audioBytes:0,playTime:this._playTime,demuxingTime:this._codec?this._codec.demuxerCpuTime-this._lastDemuxerCpuTime:0,videoDecodingTime:this._codec?this._codec.videoCpuTime-this._lastVideoCpuTime:0,audioDecodingTime:this._codec?this._codec.audioCpuTime-this._lastAudioCpuTime:0,bufferTime:this._bufferTime-this._lastBufferTime,drawingTime:this._drawingTime-this._lastDrawingTime,proxyTime:this._proxyTime-this._lastProxyTime,droppedAudio:this._droppedAudio,delayedAudio:this._delayedAudio,jitter:this._totalJitter/this._framesProcessed,lateFrames:this._lateFrames}}resetPlaybackStats(){this._framesProcessed=0,this._playTime=0,this._codec&&(this._lastDemuxerCpuTime=this._codec.demuxerCpuTime,this._lastVideoCpuTime=this._codec.videoCpuTime,this._lastAudioCpuTime=this._codec.audioCpuTime,this._codec.videoBytes=0,this._codec.audioBytes=0),this._lastBufferTime=this._bufferTime,this._lastDrawingTime=this._drawingTime,this._lastProxyTime=this._proxyTime,this._totalJitter=0,this._totalFrameTime=0,this._totalFrameCount=0}getVideoFrameSink(){return this._frameSink}getCanvas(){return this._canvas}getVideo(){return this._video}pause(){this._paused||(this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._stopPlayback(),this._prebufferingAudio=!1,this._paused=!0,this._fireEvent("pause"))}stop(){this._stopVideo(),this._paused=!0}fastSeek(e){this._seek(+e,D)}}if((0,_.default)(OGVPlayer,b),OGVPlayer.instanceCount=0,OGVPlayer.styleManager=new function StyleManager(){var e=document.createElement("style");e.type="text/css",e.textContent="ogvjs { display: inline-block; position: relative; -webkit-user-select: none; -webkit-tap-highlight-color: rgba(0,0,0,0); ",document.head.appendChild(e);var t=e.sheet;this.appendRule=function(e,i){var s=[];for(var d in i)i.hasOwnProperty(d)&&s.push(d+":"+i[d]);var h=e+"{"+s.join(";")+"}";t.insertRule(h,t.cssRules.length-1)}},OGVPlayer.supportsObjectFit="string"==typeof document.createElement("canvas").style.objectFit,OGVPlayer.supportsObjectFit&&navigator.userAgent.match(/iPhone|iPad|iPod Touch/)&&(OGVPlayer.supportsObjectFit=!1),OGVPlayer.supportsObjectFit&&navigator.userAgent.match(/Edge/)&&(OGVPlayer.supportsObjectFit=!1),OGVPlayer.supportsObjectFit)OGVPlayer.updatePositionOnResize=function(){};else{OGVPlayer.updatePositionOnResize=function(){function fixup(e,t,i){var s=e.offsetParent||e.parentNode,d=t/i;if(d>s.offsetWidth/s.offsetHeight){var h=s.offsetWidth/d,u=(s.offsetHeight-h)/2;e.style.width="100%",e.style.height=h+"px",e.style.marginLeft=0,e.style.marginRight=0,e.style.marginTop=u+"px",e.style.marginBottom=u+"px"}else{var c=s.offsetHeight*d,l=(s.offsetWidth-c)/2;e.style.width=c+"px",e.style.height="100%",e.style.marginLeft=l+"px",e.style.marginRight=l+"px",e.style.marginTop=0,e.style.marginBottom=0}}function queryOver(e,t){var i=document.querySelectorAll(e);Array.prototype.slice.call(i).forEach(t)}queryOver("ogvjs > canvas",(function(e){fixup(e,e.width,e.height)})),queryOver("ogvjs > img",(function(e){fixup(e,e.naturalWidth,e.naturalHeight)}))};var M=function fullResizeVideo(){y(OGVPlayer.updatePositionOnResize)};window.addEventListener("resize",OGVPlayer.updatePositionOnResize),window.addEventListener("orientationchange",OGVPlayer.updatePositionOnResize),document.addEventListener("fullscreenchange",M),document.addEventListener("mozfullscreenchange",M),document.addEventListener("webkitfullscreenchange",M),document.addEventListener("MSFullscreenChange",M)}var V=OGVPlayer;t.default=V},580:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=function OGVProxyClass(e){return class{constructor(t,i,s){for(var d in s=s||{},this.worker=t,this.transferables=function(){var e=new ArrayBuffer(1024),i=new Uint8Array(e);try{return t.postMessage({action:"transferTest",bytes:i},[e]),!e.byteLength}catch(e){return!1}}(),e)e.hasOwnProperty(d)&&(this[d]=e[d]);this.processingQueue=0,Object.defineProperty(this,"processing",{get:function get(){return this.processingQueue>0}}),this.messageCount=0,this.pendingCallbacks={},this.worker.addEventListener("message",(e=>{this.handleMessage(e)})),this.proxy("construct",[i,s],(()=>{}))}proxy(e,t,i){var s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];if(!this.worker)throw'Tried to call "'+e+'" method on closed proxy object';var d="callback-"+ ++this.messageCount+"-"+e;i&&(this.pendingCallbacks[d]=i);var h={action:e,callbackId:d,args:t||[]};this.processingQueue++,this.transferables?this.worker.postMessage(h,s):this.worker.postMessage(h)}terminate(){this.worker&&(this.worker.terminate(),this.worker=null,this.processingQueue=0,this.pendingCallbacks={})}handleMessage(e){if(this.processingQueue--,"callback"===e.data.action){var t=e.data,i=t.callbackId,s=t.args,d=this.pendingCallbacks[i];if(t.props)for(var h in t.props)t.props.hasOwnProperty(h)&&(this[h]=t.props[h]);d&&(delete this.pendingCallbacks[i],d.apply(this,s))}}}};t.default=i},168:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=class OGVTimeRanges{constructor(e){this._ranges=e,this.length=e.length}start(e){if(e<0||e>this.length||e!==(0|e))throw new RangeError("Invalid index");return this._ranges[e][0]}end(e){if(e<0||e>this.length||e!==(0|e))throw new RangeError("Invalid index");return this._ranges[e][1]}};t.default=i},625:(e,t,i)=>{"use strict";var s=i(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var d=s(i(964));var h=class OGVWrapperCodec{constructor(e){return this.options=e||{},this.demuxer=null,this.videoDecoder=null,this.audioDecoder=null,this.flushIter=0,this.loadedMetadata=!1,this.processing=!1,Object.defineProperties(this,{duration:{get:function get(){return this.loadedMetadata?this.demuxer.duration:NaN}},hasAudio:{get:function get(){return this.loadedMetadata&&!!this.audioDecoder}},audioReady:{get:function get(){return this.hasAudio&&this.demuxer.audioReady}},audioTimestamp:{get:function get(){return this.demuxer.audioTimestamp}},audioFormat:{get:function get(){return this.hasAudio?this.audioDecoder.audioFormat:null}},audioBuffer:{get:function get(){return this.hasAudio?this.audioDecoder.audioBuffer:null}},hasVideo:{get:function get(){return this.loadedMetadata&&!!this.videoDecoder}},frameReady:{get:function get(){return this.hasVideo&&this.demuxer.frameReady}},frameTimestamp:{get:function get(){return this.demuxer.frameTimestamp}},keyframeTimestamp:{get:function get(){return this.demuxer.keyframeTimestamp}},nextKeyframeTimestamp:{get:function get(){return this.demuxer.nextKeyframeTimestamp}},videoFormat:{get:function get(){return this.hasVideo?this.videoDecoder.videoFormat:null}},frameBuffer:{get:function get(){return this.hasVideo?this.videoDecoder.frameBuffer:null}},seekable:{get:function get(){return this.demuxer.seekable}},demuxerCpuTime:{get:function get(){return this.demuxer?this.demuxer.cpuTime:0}},audioCpuTime:{get:function get(){return this.audioDecoder?this.audioDecoder.cpuTime:0}},videoCpuTime:{get:function get(){return this.videoDecoder?this.videoDecoder.cpuTime:0}}}),this.loadedDemuxerMetadata=!1,this.loadedAudioMetadata=!1,this.loadedVideoMetadata=!1,this.loadedAllMetadata=!1,this.onseek=null,this.videoBytes=0,this.audioBytes=0,this}flushSafe(e){var t=this.flushIter;return i=>{this.flushIter<=t&&e(i)}}init(e){var t;this.processing=!0,t="video/webm"===this.options.type||"audio/webm"===this.options.type?"OGVDemuxerWebMW":"OGVDemuxerOggW",d.default.loadClass(t,(t=>{t().then((t=>{this.demuxer=t,t.onseek=e=>{this.onseek&&this.onseek(e)},t.init((()=>{this.processing=!1,e()}))}))}))}close(){this.demuxer&&(this.demuxer.close(),this.demuxer=null),this.videoDecoder&&(this.videoDecoder.close(),this.videoDecoder=null),this.audioDecoder&&(this.audioDecoder.close(),this.audioDecoder=null)}receiveInput(e,t){this.demuxer.receiveInput(e,t)}process(e){if(this.processing)throw new Error("reentrancy fail on OGVWrapperCodec.process");this.processing=!0;var finish=t=>{this.processing=!1,e(t)},doProcessData=()=>{this.demuxer.process(finish)};this.demuxer.loadedMetadata&&!this.loadedDemuxerMetadata?this.loadAudioCodec((()=>{this.loadVideoCodec((()=>{this.loadedDemuxerMetadata=!0,this.loadedAudioMetadata=!this.audioDecoder,this.loadedVideoMetadata=!this.videoDecoder,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)}))})):this.loadedDemuxerMetadata&&!this.loadedAudioMetadata?this.audioDecoder.loadedMetadata?(this.loadedAudioMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)):this.demuxer.audioReady?this.demuxer.dequeueAudioPacket(((e,t)=>{this.audioBytes+=e.byteLength,this.audioDecoder.processHeader(e,(e=>{finish(!0)}))})):doProcessData():this.loadedAudioMetadata&&!this.loadedVideoMetadata?this.videoDecoder.loadedMetadata?(this.loadedVideoMetadata=!0,this.loadedAllMetadata=this.loadedAudioMetadata&&this.loadedVideoMetadata,finish(!0)):this.demuxer.frameReady?(this.processing=!0,this.demuxer.dequeueVideoPacket((e=>{this.videoBytes+=e.byteLength,this.videoDecoder.processHeader(e,(()=>{finish(!0)}))}))):doProcessData():this.loadedVideoMetadata&&!this.loadedMetadata&&this.loadedAllMetadata?(this.loadedMetadata=!0,finish(!0)):!this.loadedMetadata||this.hasAudio&&!this.demuxer.audioReady||this.hasVideo&&!this.demuxer.frameReady?doProcessData():finish(!0)}decodeFrame(e){var t=this.flushSafe(e),i=this.frameTimestamp,s=this.keyframeTimestamp;this.demuxer.dequeueVideoPacket((e=>{this.videoBytes+=e.byteLength,this.videoDecoder.processFrame(e,(e=>{var d=this.videoDecoder.frameBuffer;d&&(d.timestamp=i,d.keyframeTimestamp=s),t(e)}))}))}decodeAudio(e){var t=this.flushSafe(e);this.demuxer.dequeueAudioPacket(((e,i)=>{this.audioBytes+=e.byteLength,this.audioDecoder.processAudio(e,(e=>{if(i){var s=this.audioDecoder.audioBuffer,d=[];for(var h of s){var u=Math.round(i*this.audioFormat.rate/1e9);u>0?d.push(h.subarray(0,h.length-Math.min(u,h.length))):d.push(h.subarray(Math.min(Math.abs(u),h.length),h.length))}this.audioDecoder.audioBuffer=d}return t(e)}))}))}discardFrame(e){this.demuxer.dequeueVideoPacket((t=>{this.videoBytes+=t.byteLength,e()}))}discardAudio(e){this.demuxer.dequeueAudioPacket(((t,i)=>{this.audioBytes+=t.byteLength,e()}))}flush(e){this.flushIter++,this.demuxer.flush(e)}sync(){this.videoDecoder&&this.videoDecoder.sync()}recycleFrame(e){this.videoDecoder&&this.videoDecoder.recycleFrame(e)}getKeypointOffset(e,t){this.demuxer.getKeypointOffset(e,t)}seekToKeypoint(e,t){this.demuxer.seekToKeypoint(e,this.flushSafe(t))}loadAudioCodec(e){if(this.demuxer.audioCodec){var t={vorbis:"OGVDecoderAudioVorbisW",opus:"OGVDecoderAudioOpusW"}[this.demuxer.audioCodec];this.processing=!0,d.default.loadClass(t,(t=>{var i={};this.demuxer.audioFormat&&(i.audioFormat=this.demuxer.audioFormat),t(i).then((t=>{this.audioDecoder=t,t.init((()=>{this.loadedAudioMetadata=t.loadedMetadata,this.processing=!1,e()}))}))}),{worker:this.options.worker})}else e()}loadVideoCodec(e){if(this.demuxer.videoCodec){var t=!!this.options.simd,i=!!this.options.threading,s={theora:"OGVDecoderVideoTheoraW",vp8:i?"OGVDecoderVideoVP8MTW":"OGVDecoderVideoVP8W",vp9:i?t?"OGVDecoderVideoVP9SIMDMTW":"OGVDecoderVideoVP9MTW":t?"OGVDecoderVideoVP9SIMDW":"OGVDecoderVideoVP9W",av1:i?t?"OGVDecoderVideoAV1SIMDMTW":"OGVDecoderVideoAV1MTW":t?"OGVDecoderVideoAV1SIMDW":"OGVDecoderVideoAV1W"}[this.demuxer.videoCodec];this.processing=!0,d.default.loadClass(s,(t=>{var s={};this.demuxer.videoFormat&&(s.videoFormat=this.demuxer.videoFormat),i&&delete window.ENVIRONMENT_IS_PTHREAD,t(s).then((t=>{this.videoDecoder=t,t.init((()=>{this.loadedVideoMetadata=t.loadedMetadata,this.processing=!1,e()}))}))}),{worker:this.options.worker&&!this.options.threading})}else e()}};t.default=h},539:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=new class WebAssemblyChecker{constructor(){this.tested=!1,this.testResult=void 0}wasmSupported(){if(!this.tested){try{"object"==typeof WebAssembly?this.testResult=function testSafariWebAssemblyBug(){var e=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),t=new WebAssembly.Module(e);return 0!==new WebAssembly.Instance(t,{}).exports.test(4)}():this.testResult=!1}catch(e){console.log("Exception while testing WebAssembly",e),this.testResult=!1}this.tested=!0}return this.testResult}};t.default=i},309:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=function extend(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])};t.default=i},431:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i=200&&e.xhr.status<300?(e.length=getXHRLength(e.xhr),e.headers=function getXHRHeaders(e){var t={};return e.getAllResponseHeaders().split(/\r?\n/).forEach((function(e){var i=e.split(/:\s*/,2);i.length>1&&(t[i[0].toLowerCase()]=i[1])})),t}(e.xhr),e.onXHRStart()):(s(),i(new Error("HTTP error "+e.xhr.status)))}},h=function checkError(){s(),i(new Error("network error"))},u=function checkBackendOpen(){s(),t()};s=function oncomplete(){e.xhr.removeEventListener("readystatechange",d),e.xhr.removeEventListener("error",h),e.off("open",u),e._onAbort=null},e.initXHR(),e.xhr.addEventListener("readystatechange",d),e.xhr.addEventListener("error",h),e.on("open",u),e.xhr.send()}))}},{key:"bufferToOffset",value:function bufferToOffset(e){return Promise.reject(new Error("abstract"))}},{key:"abort",value:function abort(){if(this.xhr.abort(),this._onAbort){var e=this._onAbort;this._onAbort=null;var t=new Error("Aborted");t.name="AbortError",e(t)}}},{key:"initXHR",value:function initXHR(){var e=this.url;this.cachever&&(e+="?buggy_cachever="+this.cachever),this.xhr.open("GET",e);var t=null;(this.offset||this.length)&&(t="bytes="+this.offset+"-"),this.length&&(t+=this.offset+this.length-1),null!==t&&this.xhr.setRequestHeader("Range",t)}},{key:"onXHRStart",value:function onXHRStart(){throw new Error("abstract")}}]),Backend}(i(566));e.exports=d},810:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i0&&(this.bytesRead+=e.length,this.emit("buffer",e))}},{key:"onXHRLoad",value:function onXHRLoad(){this.onXHRProgress(),d(BinaryStringBackend.prototype.__proto__||Object.getPrototypeOf(BinaryStringBackend.prototype),"onXHRLoad",this).call(this)}}]),BinaryStringBackend}(i(828));h.supported=function(){try{return!!(new XMLHttpRequest).overrideMimeType}catch(e){return!1}},e.exports=h},828:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i=e)i();else{var d=null;t._onAbort=function(e){d(),s(e)};var h=function checkBuffer(){t.offset>=e&&!t.eof&&(d(),i())},u=function checkDone(){d(),i()},c=function checkError(){d(),s(new Error("error streaming"))};d=function oncomplete(){t.buffering=!1,t.off("buffer",h),t.off("done",u),t.off("error",c),t._onAbort=null},t.buffering=!0,t.on("buffer",h),t.on("done",u),t.on("error",c)}}))}},{key:"initXHR",value:function initXHR(){d(DownloadBackend.prototype.__proto__||Object.getPrototypeOf(DownloadBackend.prototype),"initXHR",this).call(this)}},{key:"onXHRStart",value:function onXHRStart(){var e=this;this.xhr.addEventListener("progress",(function(){return e.onXHRProgress()})),this.xhr.addEventListener("error",(function(){return e.onXHRError()})),this.xhr.addEventListener("load",(function(){return e.onXHRLoad()})),this.emit("open")}},{key:"onXHRProgress",value:function onXHRProgress(){throw new Error("abstract")}},{key:"onXHRError",value:function onXHRError(){this.emit("error")}},{key:"onXHRLoad",value:function onXHRLoad(){this.eof=!0,this.emit("done")}}]),DownloadBackend}(i(306));e.exports=h},761:(e,t,i)=>{"use strict";var s=i(855),d=i(810),h=i(431);var u=null;e.exports=function instantiate(e){if(!1===e.progressive)return new h(e);if(u||(u=function autoselect(){return s.supported()?s:d.supported()?d:null}()),!u)throw new Error("No supported backend class");return new u(e)}},855:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i{"use strict";var t=function(){function defineProperties(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{},t=e.buffer,i=void 0===t?void 0:t,s=e.string,d=void 0===s?void 0:s,h=e.start,u=void 0===h?0:h,c=e.end,l=void 0===c?u+(i?i.byteLength:d?d.length:0):c,f=e.prev,_=void 0===f?null:f,p=e.next,m=void 0===p?null:p,g=e.eof,v=void 0!==g&&g,y=e.empty,b=void 0===y?!(i||d):y,T=e.timestamp,k=void 0===T?Date.now():T;_classCallCheck(this,CacheItem),this.start=u,this.end=l,this.prev=_,this.next=m,this.eof=v,this.empty=b,this.timestamp=k,this.buffer=i,this.string=d,Object.defineProperty(this,"length",{get:function get(){return this.end-this.start}})}return t(CacheItem,[{key:"contains",value:function contains(e){return e>=this.start&&(e{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{},t=e.cacheSize,i=void 0===t?0:t;_classCallCheck(this,CachePool);var s=new d({eof:!0});this.head=s,this.tail=s,this.readOffset=0,this.readCursor=s,this.writeOffset=0,this.writeCursor=s,this.cacheSize=i}return s(CachePool,[{key:"bytesReadable",value:function bytesReadable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,t=this.readOffset,i=this.readCursor,s=i.last((function(i){return!i.empty&&i.start<=t+e}));return s?Math.min(e,s.end-t):0}},{key:"bytesWritable",value:function bytesWritable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,t=this.writeOffset,i=this.writeCursor;if(i.eof)return e;var s=i.last((function(i){return i.empty&&i.start<=t+e}));return s?Math.min(e,s.end-t):0}},{key:"seekRead",value:function seekRead(e){var t=this.head.first((function(t){return t.contains(e)}));if(!t)throw new Error("read seek out of range");this.readOffset=e,this.readCursor=t}},{key:"seekWrite",value:function seekWrite(e){var t=this.head.first((function(t){return t.contains(e)}));if(!t)throw new Error("write seek out of range");this.writeOffset=e,this.writeCursor=t}},{key:"readBytes",value:function readBytes(e){for(var t=e.byteLength,i=this.bytesReadable(t),s=this.readOffset,d=s+i,h=s,u=this.readCursor;u&&!u.empty&&!(u.start>=d);u=u.next){var c=Math.min(d,u.end),l=e.subarray(h-s,c-s);u.readBytes(l,h,c),h=c}return this.readOffset=h,this.readCursor=this.readCursor.first((function(e){return e.contains(h)})),i}},{key:"write",value:function write(e){var t=this.bufferItem(e),i=this.writeCursor;if(!i.empty)throw new Error("write cursor not empty");if(!i.contains(t.end)&&i.end!==t.end)throw new Error("write cursor too small");i.startthis.readOffset+this.chunkSize)&&t.push(i));if(e>this.cacheSize){t.sort((function(e,t){return e.timestamp-t.timestamp}));for(var s=0;s{"use strict";e.exports=i(91)},566:e=>{"use strict";var t=function(){function defineProperties(e,t){for(var i=0;i=0&&i.splice(s,1)}},{key:"emit",value:function emit(e,t){(this._e[e]||[]).slice().forEach((function(e){return e(t)}))}}]),TinyEvents}();e.exports=i},936:(e,t,i)=>{"use strict";var s=function(){function defineProperties(e,t){for(var i=0;i=0&&c>=e.length)return void t(null);var l=e._clampToLength(s.writeOffset+s.bytesWritable(d))-s.writeOffset;if(0===l)t(null);else{var f=e._backend=new h({url:e.url,offset:e._cache.writeOffset,length:l,cachever:e._cachever,progressive:e.progressive}),_=null,p=function checkOpen(){f!==e._backend?(_(),i(new Error("invalid state"))):(f.on("buffer",(function(t){f===e._backend&&e._cache.write(t)})),f.on("done",(function(){f===e._backend&&(-1===e.length&&(e.length=e._backend.offset+e._backend.bytesRead),e._backend=null)})),t(f))},m=function checkError(t){f!==e._backend?i(new Error("invalid state")):(e._backend=null,i(t))};_=function oncomplete(){f.off("open",p),f.off("error",m)},f.on("open",p),f.on("error",m),f.on("cachever",(function(){e._cachever++})),f.load()}}}))}},{key:"_readAhead",value:function _readAhead(){var e=this;return new Promise((function(t,i){e._backend||e.eof?t():e._openBackend().then((function(){t()})).catch((function(e){i(e)}))}))}},{key:"seek",value:function seek(e){var t=this;return new Promise((function(i,s){if(!t.loaded||t.buffering||t.seeking)throw new Error("invalid state");if(e!==(0|e)||e<0)throw new Error("invalid input");if(t.length>=0&&e>t.length)throw new Error("seek past end of file");if(!t.seekable)throw new Error("seek on non-seekable stream");t._backend&&t.abort(),t._cache.seekRead(e),t._cache.seekWrite(e),t._readAhead().then(i).catch(s)}))}},{key:"read",value:function read(e){var t=this;return this.buffer(e).then((function(e){return t.readSync(e)}))}},{key:"readSync",value:function readSync(e){var t=this.bytesAvailable(e),i=new Uint8Array(t);if(this.readBytes(i)!==t)throw new Error("failed to read expected data");return i.buffer}},{key:"readBytes",value:function readBytes(e){if(!this.loaded||this.buffering||this.seeking)throw new Error("invalid state");if(!(e instanceof Uint8Array))throw new Error("invalid input");var t=this._cache.readBytes(e);return this._readAhead(),t}},{key:"buffer",value:function buffer(e){var t=this;return new Promise((function(i,s){if(!t.loaded||t.buffering||t.seeking)throw new Error("invalid state");if(e!==(0|e)||e<0)throw new Error("invalid input");var d=t._clampToLength(t.offset+e),h=d-t.offset,u=t.bytesAvailable(h);u>=h?i(u):(t.buffering=!0,t._openBackend().then((function(i){return i?i.bufferToOffset(d).then((function(){return t.buffering=!1,t.buffer(e)})):Promise.resolve(u)})).then((function(e){t.buffering=!1,i(e)})).catch((function(e){"AbortError"!==e.name&&(t.buffering=!1),s(e)})))}))}},{key:"bytesAvailable",value:function bytesAvailable(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0;return this._cache.bytesReadable(e)}},{key:"abort",value:function abort(){this.loading&&(this.loading=!1),this.buffering&&(this.buffering=!1),this.seeking&&(this.seeking=!1),this._backend&&(this._backend.abort(),this._backend=null)}},{key:"getBufferedRanges",value:function getBufferedRanges(){return this._cache.ranges()}},{key:"_clampToLength",value:function _clampToLength(e){return this.length<0?e:Math.min(this.length,e)}}]),StreamFile}();e.exports=u},826:e=>{e.exports={vertex:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aLumaPosition;\nattribute vec2 aChromaPosition;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vLumaPosition = aLumaPosition;\n vChromaPosition = aChromaPosition;\n}\n",fragment:"// inspired by https://github.com/mbebenita/Broadway/blob/master/Player/canvas.js\n\nprecision lowp float;\n\nuniform sampler2D uTextureY;\nuniform sampler2D uTextureCb;\nuniform sampler2D uTextureCr;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n // Y, Cb, and Cr planes are uploaded as LUMINANCE textures.\n float fY = texture2D(uTextureY, vLumaPosition).x;\n float fCb = texture2D(uTextureCb, vChromaPosition).x;\n float fCr = texture2D(uTextureCr, vChromaPosition).x;\n\n // Premultipy the Y...\n float fYmul = fY * 1.1643828125;\n\n // And convert that to RGB!\n gl_FragColor = vec4(\n fYmul + 1.59602734375 * fCr - 0.87078515625,\n fYmul - 0.39176171875 * fCb - 0.81296875 * fCr + 0.52959375,\n fYmul + 2.017234375 * fCb - 1.081390625,\n 1\n );\n}\n",vertexStripe:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aTexturePosition;\nvarying vec2 vTexturePosition;\n\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vTexturePosition = aTexturePosition;\n}\n",fragmentStripe:"// extra 'stripe' texture fiddling to work around IE 11's poor performance on gl.LUMINANCE and gl.ALPHA textures\n\nprecision lowp float;\n\nuniform sampler2D uStripe;\nuniform sampler2D uTexture;\nvarying vec2 vTexturePosition;\nvoid main() {\n // Y, Cb, and Cr planes are mapped into a pseudo-RGBA texture\n // so we can upload them without expanding the bytes on IE 11\n // which doesn't allow LUMINANCE or ALPHA textures\n // The stripe textures mark which channel to keep for each pixel.\n // Each texture extraction will contain the relevant value in one\n // channel only.\n\n float fLuminance = dot(\n texture2D(uStripe, vTexturePosition),\n texture2D(uTexture, vTexturePosition)\n );\n\n gl_FragColor = vec4(fLuminance, fLuminance, fLuminance, 1);\n}\n"}},487:e=>{!function(){"use strict";function FrameSink(e,t){throw new Error("abstract")}FrameSink.prototype.drawFrame=function(e){throw new Error("abstract")},FrameSink.prototype.clear=function(){throw new Error("abstract")},e.exports=FrameSink}()},926:(e,t,i)=>{!function(){"use strict";var t=i(487),s=i(627);function SoftwareFrameSink(e){var t=this,i=e.getContext("2d"),d=null,h=null,u=null;return t.drawFrame=function drawFrame(t){var c=t.format;e.width===c.displayWidth&&e.height===c.displayHeight||(e.width=c.displayWidth,e.height=c.displayHeight),null!==d&&d.width==c.width&&d.height==c.height||function initImageData(e,t){for(var s=(d=i.createImageData(e,t)).data,h=e*t*4,u=0;u{!function(){"use strict";var t=i(487),s=i(826);function WebGLFrameSink(e){var t,i,d=this,h=WebGLFrameSink.contextForCanvas(e);if(null===h)throw new Error("WebGL unavailable");function compileShader(e,t){var i=h.createShader(e);if(h.shaderSource(i,t),h.compileShader(i),!h.getShaderParameter(i,h.COMPILE_STATUS)){var s=h.getShaderInfoLog(i);throw h.deleteShader(i),new Error("GL shader compilation for "+e+" failed: "+s)}return i}var u,c,l,f,_,p,m,g,v,y,b=new Float32Array([-1,-1,1,-1,-1,1,-1,1,1,-1,1,1]),T={},k={},P={};function createOrReuseTexture(e){return T[e]||(T[e]=h.createTexture()),T[e]}function uploadTexture(e,t,i,s){var d=createOrReuseTexture(e);if(h.activeTexture(h.TEXTURE0),WebGLFrameSink.stripe){var u=!T[e+"_temp"],c=createOrReuseTexture(e+"_temp");h.bindTexture(h.TEXTURE_2D,c),u?(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,t/4,i,0,h.RGBA,h.UNSIGNED_BYTE,s)):h.texSubImage2D(h.TEXTURE_2D,0,0,0,t/4,i,h.RGBA,h.UNSIGNED_BYTE,s);var l=T[e+"_stripe"],f=!l;f&&(l=createOrReuseTexture(e+"_stripe")),h.bindTexture(h.TEXTURE_2D,l),f&&(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,t,1,0,h.RGBA,h.UNSIGNED_BYTE,function buildStripe(e){if(P[e])return P[e];for(var t=e,i=new Uint32Array(t),s=0;s{!function(){"use strict";var t=i(877);e.exports={convertYCbCr:function convertYCbCr(e,i){var s=0|e.format.width,d=0|e.format.height,h=0|t(e.format.width/e.format.chromaWidth),u=0|t(e.format.height/e.format.chromaHeight),c=e.y.bytes,l=e.u.bytes,f=e.v.bytes,_=0|e.y.stride,p=0|e.u.stride,m=0|e.v.stride,g=s<<2,v=0,y=0,b=0,T=0,k=0,P=0,w=0,E=0,x=0,A=0,R=0,O=0,F=0,S=0,C=0,B=0,D=0,M=0;if(1==h&&1==u)for(w=0,E=g,M=0,B=0;B>8,i[w+1]=R-F>>8,i[w+2]=R+S>>8,w+=4,R=298*c[y++]|0,i[w]=R+O>>8,i[w+1]=R-F>>8,i[w+2]=R+S>>8,w+=4,R=298*c[b++]|0,i[E]=R+O>>8,i[E+1]=R-F>>8,i[E+2]=R+S>>8,E+=4,R=298*c[b++]|0,i[E]=R+O>>8,i[E+1]=R-F>>8,i[E+2]=R+S>>8,E+=4;w+=g,E+=g,M++}else for(P=0,B=0;B>u)*p|0,k=M*m|0,C=0;C>h)],O=(409*(A=0|f[k+D])|0)-57088|0,F=(100*x|0)+(208*A|0)-34816|0,S=(516*x|0)-70912|0,R=298*c[v++]|0,i[P]=R+O>>8,i[P+1]=R-F>>8,i[P+2]=R+S>>8,P+=4}}}()},877:e=>{!function(){"use strict";e.exports=function depower(e){for(var t=0,i=e>>1;0!=i;)i>>=1,t++;if(e!==1<{!function(){"use strict";var t=i(487),s=i(926),d=i(895),h={FrameSink:t,SoftwareFrameSink:s,WebGLFrameSink:d,attach:function(e,t){return("webGL"in(t=t||{})?t.webGL:d.isAvailable())?new d(e,t):new s(e,t)}};e.exports=h}()}},t={};function __webpack_require__(i){var s=t[i];if(void 0!==s)return s.exports;var d=t[i]={exports:{}};return e[i](d,d.exports,__webpack_require__),d.exports}var i={};return(()=>{"use strict";var e=i,t=__webpack_require__(318);Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"OGVCompat",{enumerable:!0,get:function get(){return s.default}}),Object.defineProperty(e,"OGVLoader",{enumerable:!0,get:function get(){return d.default}}),Object.defineProperty(e,"OGVMediaError",{enumerable:!0,get:function get(){return h.default}}),Object.defineProperty(e,"OGVMediaType",{enumerable:!0,get:function get(){return u.default}}),Object.defineProperty(e,"OGVPlayer",{enumerable:!0,get:function get(){return c.default}}),Object.defineProperty(e,"OGVTimeRanges",{enumerable:!0,get:function get(){return l.default}}),e.OGVVersion=void 0;var s=t(__webpack_require__(523)),d=t(__webpack_require__(964)),h=t(__webpack_require__(759)),u=t(__webpack_require__(278)),c=t(__webpack_require__(869)),l=t(__webpack_require__(168)),f="1.8.4-20210702161914-bd3a07f";e.OGVVersion=f,"object"==typeof window&&(window.OGVCompat=s.default,window.OGVLoader=d.default,window.OGVMediaError=h.default,window.OGVMediaType=u.default,window.OGVTimeRanges=l.default,window.OGVPlayer=c.default,window.OGVVersion=f)})(),i})()})); \ No newline at end of file diff --git a/media/player/videojs/ogvjs/ogv-support.js b/media/player/videojs/ogvjs/ogv-support.js new file mode 100644 index 00000000000..b14fb943778 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-support.js @@ -0,0 +1 @@ +(()=>{var e={575:e=>{e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},913:e=>{function t(e,t){for(var o=0;o{e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},8:e=>{function t(o){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=t=function(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=t=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),t(o)}e.exports=t,e.exports.default=e.exports,e.exports.__esModule=!0},523:(e,t,o)=>{"use strict";var r=o(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=r(o(575)),u=r(o(913)),s=new(function(){function e(){(0,n.default)(this,e)}return(0,u.default)(e,[{key:"hasTypedArrays",value:function(){return!!window.Uint32Array}},{key:"hasWebAssembly",value:function(){return!!window.WebAssembly}},{key:"hasWebAudio",value:function(){return!(!window.AudioContext&&!window.webkitAudioContext)}},{key:"hasFlash",value:function(){return!1}},{key:"hasAudio",value:function(){return this.hasWebAudio()}},{key:"isBlacklisted",value:function(e){return!1}},{key:"isSlow",value:function(){return!1}},{key:"isTooSlow",value:function(){return!1}},{key:"supported",value:function(e){return"OGVDecoder"===e?this.hasWebAssembly():"OGVPlayer"===e&&this.supported("OGVDecoder")&&this.hasAudio()}}]),e}());t.default=s}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var u=t[r]={exports:{}};return e[r](u,u.exports,o),u.exports}(()=>{"use strict";var e=o(318),t=e(o(8)),r=e(o(523));"object"===("undefined"==typeof window?"undefined":(0,t.default)(window))&&(window.OGVCompat=r.default,window.OGVVersion="1.8.4-20210702161914-bd3a07f")})()})(); \ No newline at end of file diff --git a/media/player/videojs/ogvjs/ogv-version.js b/media/player/videojs/ogvjs/ogv-version.js new file mode 100644 index 00000000000..2b0ba25c48e --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-version.js @@ -0,0 +1 @@ +(()=>{var e={318:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},8:e=>{function _typeof(o){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=_typeof=function _typeof(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_typeof=function _typeof(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),_typeof(o)}e.exports=_typeof,e.exports.default=e.exports,e.exports.__esModule=!0}},o={};function __webpack_require__(t){var r=o[t];if(void 0!==r)return r.exports;var p=o[t]={exports:{}};return e[t](p,p.exports,__webpack_require__),p.exports}(()=>{"use strict";var e=__webpack_require__(318)(__webpack_require__(8)),o="1.8.4-20210702161914-bd3a07f";"object"===("undefined"==typeof window?"undefined":(0,e.default)(window))&&(window.OGVVersion=o)})()})(); \ No newline at end of file diff --git a/media/player/videojs/ogvjs/ogv-worker-audio.js b/media/player/videojs/ogvjs/ogv-worker-audio.js new file mode 100644 index 00000000000..7b5131eb7cb --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-worker-audio.js @@ -0,0 +1 @@ +(()=>{var e={506:e=>{e.exports=function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},575:e=>{e.exports=function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},913:e=>{function _defineProperties(e,t){for(var r=0;r{function _getPrototypeOf(t){return e.exports=_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(e){return e.__proto__||Object.getPrototypeOf(e)},e.exports.default=e.exports,e.exports.__esModule=!0,_getPrototypeOf(t)}e.exports=_getPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},205:(e,t,r)=>{var o=r(489);e.exports=function _inherits(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&&o(e,t)},e.exports.default=e.exports,e.exports.__esModule=!0},318:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},585:(e,t,r)=>{var o=r(8).default,s=r(506);e.exports=function _possibleConstructorReturn(e,t){return!t||"object"!==o(t)&&"function"!=typeof t?s(e):t},e.exports.default=e.exports,e.exports.__esModule=!0},489:e=>{function _setPrototypeOf(t,r){return e.exports=_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,_setPrototypeOf(t,r)}e.exports=_setPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},8:e=>{function _typeof(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=_typeof=function _typeof(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_typeof=function _typeof(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),_typeof(t)}e.exports=_typeof,e.exports.default=e.exports,e.exports.__esModule=!0},445:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(575)),n=o(r(913)),a=o(r(539)),i="1.8.4-20210702161914-bd3a07f",u={OGVDemuxerOggW:"ogv-demuxer-ogg-wasm.js",OGVDemuxerWebMW:"ogv-demuxer-webm-wasm.js",OGVDecoderAudioOpusW:"ogv-decoder-audio-opus-wasm.js",OGVDecoderAudioVorbisW:"ogv-decoder-audio-vorbis-wasm.js",OGVDecoderVideoTheoraW:"ogv-decoder-video-theora-wasm.js",OGVDecoderVideoVP8W:"ogv-decoder-video-vp8-wasm.js",OGVDecoderVideoVP8MTW:"ogv-decoder-video-vp8-mt-wasm.js",OGVDecoderVideoVP9W:"ogv-decoder-video-vp9-wasm.js",OGVDecoderVideoVP9SIMDW:"ogv-decoder-video-vp9-simd-wasm.js",OGVDecoderVideoVP9MTW:"ogv-decoder-video-vp9-mt-wasm.js",OGVDecoderVideoVP9SIMDMTW:"ogv-decoder-video-vp9-simd-mt-wasm.js",OGVDecoderVideoAV1W:"ogv-decoder-video-av1-wasm.js",OGVDecoderVideoAV1SIMDW:"ogv-decoder-video-av1-simd-wasm.js",OGVDecoderVideoAV1MTW:"ogv-decoder-video-av1-mt-wasm.js",OGVDecoderVideoAV1SIMDMTW:"ogv-decoder-video-av1-simd-mt-wasm.js"},d=function(){function OGVLoaderBase(){(0,s.default)(this,OGVLoaderBase),this.base=this.defaultBase()}return(0,n.default)(OGVLoaderBase,[{key:"defaultBase",value:function defaultBase(){}},{key:"wasmSupported",value:function wasmSupported(){return a.default.wasmSupported()}},{key:"scriptForClass",value:function scriptForClass(e){return u[e]}},{key:"urlForClass",value:function urlForClass(e){var t=this.scriptForClass(e);if(t)return this.urlForScript(t);throw new Error("asked for URL for unknown class "+e)}},{key:"urlForScript",value:function urlForScript(e){if(e){var t=this.base;return void 0===t?t="":t+="/",t+e+"?version="+encodeURIComponent(i)}throw new Error("asked for URL for unknown script "+e)}},{key:"loadClass",value:function loadClass(e,t,r){var o=this;r=r||{};var s=this.getGlobal(),n=this.urlForClass(e),a=function classWrapper(t){return(t=t||{}).locateFile=function(e){return"data:"===e.slice(0,5)?e:o.urlForScript(e)},t.mainScriptUrlOrBlob=o.scriptForClass(e)+"?version="+encodeURIComponent(i),s[e](t)};"function"==typeof s[e]?t(a):this.loadScript(n,(function(){t(a)}))}}]),OGVLoaderBase}();t.default=d},713:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(575)),n=o(r(913)),a=o(r(205)),i=o(r(585)),u=o(r(754));function _createSuper(e){var t=function _isNativeReflectConstruct(){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 _createSuperInternal(){var r,o=(0,u.default)(e);if(t){var s=(0,u.default)(this).constructor;r=Reflect.construct(o,arguments,s)}else r=o.apply(this,arguments);return(0,i.default)(this,r)}}var d=new(function(e){(0,a.default)(OGVLoaderWorker,e);var t=_createSuper(OGVLoaderWorker);function OGVLoaderWorker(){return(0,s.default)(this,OGVLoaderWorker),t.apply(this,arguments)}return(0,n.default)(OGVLoaderWorker,[{key:"loadScript",value:function loadScript(e,t){importScripts(e),t()}},{key:"getGlobal",value:function getGlobal(){return self}}]),OGVLoaderWorker}(o(r(445)).default));t.default=d},607:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=new(o(r(172)).default)(["loadedMetadata","audioFormat","audioBuffer","cpuTime"],{init:function init(e,t){this.target.init(t)},processHeader:function processHeader(e,t){this.target.processHeader(e[0],(function(e){t([e])}))},processAudio:function processAudio(e,t){this.target.processAudio(e[0],(function(e){t([e])}))}});t.default=s},172:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(8)),n=o(r(575)),a=o(r(913)),i=o(r(713));r.g.OGVLoader=i.default;var u=function(){function OGVWorkerSupport(e,t){var r=this;(0,n.default)(this,OGVWorkerSupport),this.propList=e,this.handlers=t,this.transferables=function(){var e=new ArrayBuffer(1024),t=new Uint8Array(e);try{return postMessage({action:"transferTest",bytes:t},[e]),!e.byteLength}catch(e){return!1}}(),this.target=null,this.sentProps={},this.pendingEvents=[],this.handlers.construct=function(e,t){var o=e[0],s=e[1];i.default.loadClass(o,(function(e){e(s).then((function(e){for(r.target=e,t();r.pendingEvents.length;)r.handleEvent(r.pendingEvents.shift())}))}))},addEventListener("message",(function(e){r.workerOnMessage(e)}))}return(0,a.default)(OGVWorkerSupport,[{key:"handleEvent",value:function handleEvent(e){var t=this;this.handlers[e.action].call(this,e.args,(function(r){r=r||[];var o={},s=[];t.propList.forEach((function(e){var r=t.target[e];if(t.sentProps[e]!==r)if(t.sentProps[e]=r,"duration"==e&&isNaN(r)&&isNaN(t.sentProps[e]));else if("audioBuffer"==e){if(o[e]=r,r)for(var n=0;n{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(8)),n=o(r(575)),a=o(r(913));var i=new(function(){function WebAssemblyChecker(){(0,n.default)(this,WebAssemblyChecker),this.tested=!1,this.testResult=void 0}return(0,a.default)(WebAssemblyChecker,[{key:"wasmSupported",value:function wasmSupported(){if(!this.tested){try{"object"===("undefined"==typeof WebAssembly?"undefined":(0,s.default)(WebAssembly))?this.testResult=function testSafariWebAssemblyBug(){var e=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),t=new WebAssembly.Module(e);return 0!==new WebAssembly.Instance(t,{}).exports.test(4)}():this.testResult=!1}catch(e){console.log("Exception while testing WebAssembly",e),this.testResult=!1}this.tested=!0}return this.testResult}}]),WebAssemblyChecker}());t.default=i}},t={};function __webpack_require__(r){var o=t[r];if(void 0!==o)return o.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,__webpack_require__),s.exports}__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),(()=>{"use strict";__webpack_require__(318)(__webpack_require__(607))})()})(); \ No newline at end of file diff --git a/media/player/videojs/ogvjs/ogv-worker-video.js b/media/player/videojs/ogvjs/ogv-worker-video.js new file mode 100644 index 00000000000..38ac1bd43c5 --- /dev/null +++ b/media/player/videojs/ogvjs/ogv-worker-video.js @@ -0,0 +1 @@ +(()=>{var e={506:e=>{e.exports=function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},575:e=>{e.exports=function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},913:e=>{function _defineProperties(e,t){for(var r=0;r{function _getPrototypeOf(t){return e.exports=_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(e){return e.__proto__||Object.getPrototypeOf(e)},e.exports.default=e.exports,e.exports.__esModule=!0,_getPrototypeOf(t)}e.exports=_getPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},205:(e,t,r)=>{var o=r(489);e.exports=function _inherits(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&&o(e,t)},e.exports.default=e.exports,e.exports.__esModule=!0},318:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},585:(e,t,r)=>{var o=r(8).default,s=r(506);e.exports=function _possibleConstructorReturn(e,t){return!t||"object"!==o(t)&&"function"!=typeof t?s(e):t},e.exports.default=e.exports,e.exports.__esModule=!0},489:e=>{function _setPrototypeOf(t,r){return e.exports=_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,_setPrototypeOf(t,r)}e.exports=_setPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},8:e=>{function _typeof(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=_typeof=function _typeof(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_typeof=function _typeof(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),_typeof(t)}e.exports=_typeof,e.exports.default=e.exports,e.exports.__esModule=!0},445:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(575)),n=o(r(913)),a=o(r(539)),i="1.8.4-20210702161914-bd3a07f",u={OGVDemuxerOggW:"ogv-demuxer-ogg-wasm.js",OGVDemuxerWebMW:"ogv-demuxer-webm-wasm.js",OGVDecoderAudioOpusW:"ogv-decoder-audio-opus-wasm.js",OGVDecoderAudioVorbisW:"ogv-decoder-audio-vorbis-wasm.js",OGVDecoderVideoTheoraW:"ogv-decoder-video-theora-wasm.js",OGVDecoderVideoVP8W:"ogv-decoder-video-vp8-wasm.js",OGVDecoderVideoVP8MTW:"ogv-decoder-video-vp8-mt-wasm.js",OGVDecoderVideoVP9W:"ogv-decoder-video-vp9-wasm.js",OGVDecoderVideoVP9SIMDW:"ogv-decoder-video-vp9-simd-wasm.js",OGVDecoderVideoVP9MTW:"ogv-decoder-video-vp9-mt-wasm.js",OGVDecoderVideoVP9SIMDMTW:"ogv-decoder-video-vp9-simd-mt-wasm.js",OGVDecoderVideoAV1W:"ogv-decoder-video-av1-wasm.js",OGVDecoderVideoAV1SIMDW:"ogv-decoder-video-av1-simd-wasm.js",OGVDecoderVideoAV1MTW:"ogv-decoder-video-av1-mt-wasm.js",OGVDecoderVideoAV1SIMDMTW:"ogv-decoder-video-av1-simd-mt-wasm.js"},c=function(){function OGVLoaderBase(){(0,s.default)(this,OGVLoaderBase),this.base=this.defaultBase()}return(0,n.default)(OGVLoaderBase,[{key:"defaultBase",value:function defaultBase(){}},{key:"wasmSupported",value:function wasmSupported(){return a.default.wasmSupported()}},{key:"scriptForClass",value:function scriptForClass(e){return u[e]}},{key:"urlForClass",value:function urlForClass(e){var t=this.scriptForClass(e);if(t)return this.urlForScript(t);throw new Error("asked for URL for unknown class "+e)}},{key:"urlForScript",value:function urlForScript(e){if(e){var t=this.base;return void 0===t?t="":t+="/",t+e+"?version="+encodeURIComponent(i)}throw new Error("asked for URL for unknown script "+e)}},{key:"loadClass",value:function loadClass(e,t,r){var o=this;r=r||{};var s=this.getGlobal(),n=this.urlForClass(e),a=function classWrapper(t){return(t=t||{}).locateFile=function(e){return"data:"===e.slice(0,5)?e:o.urlForScript(e)},t.mainScriptUrlOrBlob=o.scriptForClass(e)+"?version="+encodeURIComponent(i),s[e](t)};"function"==typeof s[e]?t(a):this.loadScript(n,(function(){t(a)}))}}]),OGVLoaderBase}();t.default=c},713:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(575)),n=o(r(913)),a=o(r(205)),i=o(r(585)),u=o(r(754));function _createSuper(e){var t=function _isNativeReflectConstruct(){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 _createSuperInternal(){var r,o=(0,u.default)(e);if(t){var s=(0,u.default)(this).constructor;r=Reflect.construct(o,arguments,s)}else r=o.apply(this,arguments);return(0,i.default)(this,r)}}var c=new(function(e){(0,a.default)(OGVLoaderWorker,e);var t=_createSuper(OGVLoaderWorker);function OGVLoaderWorker(){return(0,s.default)(this,OGVLoaderWorker),t.apply(this,arguments)}return(0,n.default)(OGVLoaderWorker,[{key:"loadScript",value:function loadScript(e,t){importScripts(e),t()}},{key:"getGlobal",value:function getGlobal(){return self}}]),OGVLoaderWorker}(o(r(445)).default));t.default=c},172:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(8)),n=o(r(575)),a=o(r(913)),i=o(r(713));r.g.OGVLoader=i.default;var u=function(){function OGVWorkerSupport(e,t){var r=this;(0,n.default)(this,OGVWorkerSupport),this.propList=e,this.handlers=t,this.transferables=function(){var e=new ArrayBuffer(1024),t=new Uint8Array(e);try{return postMessage({action:"transferTest",bytes:t},[e]),!e.byteLength}catch(e){return!1}}(),this.target=null,this.sentProps={},this.pendingEvents=[],this.handlers.construct=function(e,t){var o=e[0],s=e[1];i.default.loadClass(o,(function(e){e(s).then((function(e){for(r.target=e,t();r.pendingEvents.length;)r.handleEvent(r.pendingEvents.shift())}))}))},addEventListener("message",(function(e){r.workerOnMessage(e)}))}return(0,a.default)(OGVWorkerSupport,[{key:"handleEvent",value:function handleEvent(e){var t=this;this.handlers[e.action].call(this,e.args,(function(r){r=r||[];var o={},s=[];t.propList.forEach((function(e){var r=t.target[e];if(t.sentProps[e]!==r)if(t.sentProps[e]=r,"duration"==e&&isNaN(r)&&isNaN(t.sentProps[e]));else if("audioBuffer"==e){if(o[e]=r,r)for(var n=0;n{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=new(o(r(172)).default)(["loadedMetadata","videoFormat","frameBuffer","cpuTime"],{init:function init(e,t){this.target.init(t)},processHeader:function processHeader(e,t){this.target.processHeader(e[0],(function(e){t([e])}))},processFrame:function processFrame(e,t){this.target.processFrame(e[0],(function(e){t([e])}))},sync:function sync(e,t){this.target.sync(),t()},recycleFrame:function recycleFrame(e,t){this.target.recycleFrame(e[0]),t()}});t.default=s},539:(e,t,r)=>{"use strict";var o=r(318);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(r(8)),n=o(r(575)),a=o(r(913));var i=new(function(){function WebAssemblyChecker(){(0,n.default)(this,WebAssemblyChecker),this.tested=!1,this.testResult=void 0}return(0,a.default)(WebAssemblyChecker,[{key:"wasmSupported",value:function wasmSupported(){if(!this.tested){try{"object"===("undefined"==typeof WebAssembly?"undefined":(0,s.default)(WebAssembly))?this.testResult=function testSafariWebAssemblyBug(){var e=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),t=new WebAssembly.Module(e);return 0!==new WebAssembly.Instance(t,{}).exports.test(4)}():this.testResult=!1}catch(e){console.log("Exception while testing WebAssembly",e),this.testResult=!1}this.tested=!0}return this.testResult}}]),WebAssemblyChecker}());t.default=i}},t={};function __webpack_require__(r){var o=t[r];if(void 0!==o)return o.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,__webpack_require__),s.exports}__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),(()=>{"use strict";__webpack_require__(318)(__webpack_require__(443))})()})(); \ No newline at end of file diff --git a/media/player/videojs/ogvjs/ogv.js b/media/player/videojs/ogvjs/ogv.js new file mode 100644 index 00000000000..c19213ffa3a --- /dev/null +++ b/media/player/videojs/ogvjs/ogv.js @@ -0,0 +1,2 @@ +/*! For license information please see ogv.js.LICENSE.txt */ +!function webpackUniversalModuleDefinition(t,i){"object"==typeof exports&&"object"==typeof module?module.exports=i():"function"==typeof define&&define.amd?define([],i):"object"==typeof exports?exports.ogvjs=i():t.ogvjs=i()}(globalThis,(function(){return(()=>{var t={506:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},575:t=>{t.exports=function _classCallCheck(t,i){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},913:t=>{function _defineProperties(t,i){for(var u=0;u{var d=u(331);function _get(i,u,c){return"undefined"!=typeof Reflect&&Reflect.get?(t.exports=_get=Reflect.get,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,i,u){var c=d(t,i);if(c){var h=Object.getOwnPropertyDescriptor(c,i);return h.get?h.get.call(u):h.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(i,u,c||i)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},754:t=>{function _getPrototypeOf(i){return t.exports=_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(t){return t.__proto__||Object.getPrototypeOf(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(i)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},205:(t,i,u)=>{var d=u(489);t.exports=function _inherits(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(i&&i.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),i&&d(t,i)},t.exports.default=t.exports,t.exports.__esModule=!0},318:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},585:(t,i,u)=>{var d=u(8).default,c=u(506);t.exports=function _possibleConstructorReturn(t,i){return!i||"object"!==d(i)&&"function"!=typeof i?c(t):i},t.exports.default=t.exports,t.exports.__esModule=!0},489:t=>{function _setPrototypeOf(i,u){return t.exports=_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(t,i){return t.__proto__=i,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(i,u)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},331:(t,i,u)=>{var d=u(754);t.exports=function _superPropBase(t,i){for(;!Object.prototype.hasOwnProperty.call(t,i)&&null!==(t=d(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},8:t=>{function _typeof(i){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(i)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},848:t=>{window,t.exports=function(t){var i={};function r(u){if(i[u])return i[u].exports;var d=i[u]={i:u,l:!1,exports:{}};return t[u].call(d.exports,d,d.exports,r),d.l=!0,d.exports}return r.m=t,r.c=i,r.d=function(t,i,u){r.o(t,i)||Object.defineProperty(t,i,{enumerable:!0,get:u})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,i){if(1&i&&(t=r(t)),8&i)return t;if(4&i&&"object"==typeof t&&t&&t.__esModule)return t;var u=Object.create(null);if(r.r(u),Object.defineProperty(u,"default",{enumerable:!0,value:t}),2&i&&"string"!=typeof t)for(var d in t)r.d(u,d,function(i){return t[i]}.bind(null,d));return u},r.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(i,"a",i),i},r.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},r.p="",r(r.s=1)}([function(t,i){function r(t,i){if(t<1||t!==Math.round(t))throw"Invalid channel count for BufferQueue";this.channels=t,this.bufferSize=i,this.flush()}r.prototype.flush=function(){this._buffers=[],this._pendingBuffer=this.createBuffer(this.bufferSize),this._pendingPos=0},r.prototype.sampleCount=function(){var t=0;return this._buffers.forEach((function(i){t+=i[0].length})),t},r.prototype.createBuffer=function(t){for(var i=[],u=0;u=d)return t;for(var h=[],l=0;l0?c[c.length+i]:t[0]:t[i]},l=0;lu&&(y=Math.SQRT1_2);for(var b=0;b=u&&(T=0);var k=t[T],P=new Float32Array(g);h(k,P,this._resampleLastSampleData?this._resampleLastSampleData[T]:void 0,y),l.push(P)}return this._resampleFractional=v,this._resampleLastSampleData=t,l},n.prototype.bufferData=function(t){if(!this._backend)throw"Invalid state: AudioFeeder cannot bufferData before init";var i=this._resample(t);i=this._tempoChanger.process(i),this._backend.appendBuffer(i)},n.prototype.getPlaybackState=function(){if(this._backend){var t=this._backend.getPlaybackState();return t.outputPlaybackPosition=t.playbackPosition,t.playbackPosition=this._tempoChanger.mapOutputToInputTime(t.outputPlaybackPosition),t}throw"Invalid state: AudioFeeder cannot getPlaybackState before init"},n.prototype.waitUntilReady=function(t){if(!this._backend)throw"Invalid state: AudioFeeder cannot waitUntilReady before init";this._backend.waitUntilReady(t)},n.prototype.start=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot start before init";this._backend.start()},n.prototype.stop=function(){if(!this._backend)throw"Invalid state: AudioFeeder cannot stop before init";this._backend.stop()},n.prototype.flush=function(){if(this._resampleFractional=0,this._resampleLastSampleData=void 0,!this._backend)throw"Invalid state: AudioFeeder cannot flush before init";this._tempoChanger.flush(this.durationBuffered),this._backend.flush()},n.prototype.close=function(){this._backend&&(this._backend.close(),this._backend=null)},n.prototype.onstarved=null,n.prototype.onbufferlow=null,n.isSupported=function(){return!!Float32Array&&i.isSupported()},n.initSharedAudioContext=function(){return i.isSupported()?i.initSharedAudioContext():null},t.exports=n}()},function(t,i,u){!function(){var i=window.AudioContext||window.webkitAudioContext,d=u(0),c=u(3);function o(t,i,u){var c=u.audioContext||o.initSharedAudioContext();if(this._context=c,this.output=u.output||c.destination,this.rate=c.sampleRate,this.channels=2,u.bufferSize&&(this.bufferSize=0|u.bufferSize),this.bufferThreshold=2*this.bufferSize,this._bufferQueue=new d(this.channels,this.bufferSize),this._playbackTimeAtBufferTail=c.currentTime,this._queuedTime=0,this._delayedTime=0,this._dropped=0,this._liveBuffer=this._bufferQueue.createBuffer(this.bufferSize),c.createScriptProcessor)this._node=c.createScriptProcessor(this.bufferSize,0,this.channels);else{if(!c.createJavaScriptNode)throw new Error("Bad version of web audio API?");this._node=c.createJavaScriptNode(this.bufferSize,0,this.channels)}}o.prototype.bufferSize=4096,o.prototype.bufferThreshold=8192,o.prototype._volume=1,Object.defineProperty(o.prototype,"volume",{get:function(){return this._volume},set:function(t){this._volume=+t}}),o.prototype._muted=!1,Object.defineProperty(o.prototype,"muted",{get:function(){return this._muted},set:function(t){this._muted=!!t}}),o.prototype._audioProcess=function(t){var i,u,d,h,l;l="number"==typeof t.playbackTime?t.playbackTime:this._context.currentTime+this.bufferSize/this.rate;var _=this._playbackTimeAtBufferTail;if(_0){var i=Math.round(t*this.rate),u=this._liveBuffer?this._liveBuffer[0].length:0;i>u?(this._bufferQueue.prependBuffer(this._liveBuffer),this._bufferQueue.prependBuffer(this._bufferQueue.createBuffer(i-u))):this._bufferQueue.prependBuffer(this._bufferQueue.trimBuffer(this._liveBuffer,u-i,i)),this._playbackTimeAtBufferTail-=t}this._node.onaudioprocess=null,this._node.disconnect()}},o.prototype.flush=function(){this._bufferQueue.flush()},o.prototype.close=function(){this.stop(),this._context=null},o.prototype.onstarved=null,o.prototype.onbufferlow=null,o.isSupported=function(){return!!i},o.sharedAudioContext=null,o.initSharedAudioContext=function(){if(!o.sharedAudioContext&&o.isSupported()){var t,u=new i;if(u.createScriptProcessor)t=u.createScriptProcessor(1024,0,2);else{if(!u.createJavaScriptNode)throw new Error("Bad version of web audio API?");t=u.createJavaScriptNode(1024,0,2)}t.connect(u.destination),t.disconnect(),o.sharedAudioContext=u}return o.sharedAudioContext},t.exports=o}()},function(t,i){t.exports=function(){if(void 0!==window.setImmediate)return window.setImmediate;if(window&&window.postMessage){var t=[];return window.addEventListener("message",(function(i){if(i.source===window){var u=i.data;if("object"==typeof u&&u.nextTickBrowserPingMessage){var d=t.pop();d&&d()}}})),function(i){t.push(i),window.postMessage({nextTickBrowserPingMessage:!0},document.location.toString())}}return function(t){setTimeout(t,0)}}()},function(t,i,u){var d;window,d=function(){return function(t){var i={};function r(u){if(i[u])return i[u].exports;var d=i[u]={i:u,l:!1,exports:{}};return t[u].call(d.exports,d,d.exports,r),d.l=!0,d.exports}return r.m=t,r.c=i,r.d=function(t,i,u){r.o(t,i)||Object.defineProperty(t,i,{enumerable:!0,get:u})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,i){if(1&i&&(t=r(t)),8&i)return t;if(4&i&&"object"==typeof t&&t&&t.__esModule)return t;var u=Object.create(null);if(r.r(u),Object.defineProperty(u,"default",{enumerable:!0,value:t}),2&i&&"string"!=typeof t)for(var d in t)r.d(u,d,function(i){return t[i]}.bind(null,d));return u},r.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(i,"a",i),i},r.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},r.p="",r(r.s=1)}([function(t,i){var u={float_array:function(t){return new Float32Array(t)},blit:function(t,i,u,d,c){u.set(t.subarray(i,i+c),d)}};t.exports=u},function(t,i,u){var d,c;d=u(0),c=u(2),t.exports=function(t){var i=(t=t||{}).sampleRate||44100,u=t.wsizeLog||11,h=t.tempo||1,l=(t.numChannels,Math.pow(2,50/1200)-1),_=1<>1),w=d.float_array(P),E=d.float_array(P),x=d.float_array(P),A=d.float_array(P),R=d.float_array(P),O=d.float_array(P),S=1+(P>>1),C=[0,0],B=[],D=[],M=[],V=[];for(k=0;k<2;k++)B.push(d.float_array(S)),D.push(d.float_array(S)),M.push(d.float_array(S)),V.push(d.float_array(P));var I=d.float_array(S),L=d.float_array(S),j=0,W=0,X=[{in_time:0,out_time:0,tempo:h}],N=0,H=0,z=1,Y=0,Q=0,K=0,$=0,Z={mapOutputToInputTime:function(t){for(var i=X.length-1;t0;)i--;var u=X[i];return u.in_time+u.tempo*(t-u.out_time)},flush:function(t){Y=0,C=[0,0],H=0,$=0,K=0;for(var i=0;i<2;i++)for(var u=0;u=0;)X.pop(),d--;X.push({in_time:j,out_time:W,tempo:h})}},getTempo:function(){return h},setTempo:function(t){y=b=m,t>=1?b=Math.round(y/t):y=Math.round(b*t),Q=(1/t-1*b/y)*y,z=function(t,i){for(var u=t.length/i|0,d=0,c=0;cu&&(u=t[d]);var c=1e-8*u,h=1,_=1;for(i[0]=1,d=2;dc&&t[d]>t[d-1]&&t[d]>=t[d+1]){var m=d+(t[d-1]-t[d+1])/(2*(t[d-1]-2*t[d]+t[d+1]));m-i[h-1]>p?(i[h++]=m,_=d):t[d]>t[_]&&(i[h-1]=m,_=d)}}return h}(k,w),x=D[p],A=M[p];if(0!=t&&0!=E){var R=0;for(K=0;Ky[R]&&R!=v;)++R;var O=R;R>0&&$-y[R-1].1*k[Math.round($)]){var j=J(i,u,$),W=b[O]+T[O]+U(j,$,b[O],y[O],h)-j;x[K]=j,A[K]=W,I[K]=Math.cos(W),L[K]=Math.sin(W)}else x[K]=J(i,u,$),A[K]=0,I[K]=1,L[K]=0}w[E]=2*_;var X=w[O=0],N=w[O+1],H=I[O],z=L[O];for(P=1;P=X&&P-X>N-P&&(X=w[++O],N=w[O+1],H=I[O],z=L[O]);var Y=i[P]*H-u[P]*z,Q=i[P]*z+u[P]*H;i[P]=Y,u[P]=Q}}else for(var K=0;Kc&&(c=Math.abs(2*p.m_re[i]));for(i=0;i<_-b;i++)Math.abs(p.m_re[i+b+t]+p.m_im[i])>c&&(c=Math.abs(p.m_re[i+b+t]+p.m_im[i]));for(i=_-b;i<_;i++)Math.abs(2*p.m_im[i])>c&&(c=Math.abs(2*p.m_im[i]));var l=1/Math.floor(1*_/(2*b));for(h*c>l&&(h=l/c),i=0;i<_;i++)v[i]+=h*p.m_re[i],v[i+b+t]+=h*p.m_im[i];return N+=2,H=2*b+t};return Z.process=function(t){var u=t[0].length,c=t[0];if(t.length>1){c=d.float_array(t[0].length);for(var l=1/t.length,p=0;p0){var T=$+K+u,k=[];for(p=0;px&&(x=$);var A=d.float_array(x);d.blit(v,0,A,0,$);for(var R=0,O=$,S=0,C=0;;){var B=_+y-K;if(R+B>u){d.blit(c,R,g,K,u-R),K+=u-R,R=u;break}B<=0?K-=2*y:(d.blit(c,R,g,K,B),R+=B,K=_-y),C=G(),j+=2*y/i,W+=C/i,(S=O+C-x)<0&&(S=0),d.blit(v,0,A,O,C-S),O+=C}d.blit(v,C-S,v,0,S),$=S;var D=[];for(p=0;p>=1;u.m_revTgt[c]=l}u.twiddleRe=d.float_array(u.m_logN),u.twiddleIm=d.float_array(u.m_logN);for(var p=1,m=0;m>1,_=c>>1,p=c;if(t)for(var m=1/c,g=0;g>=1,_>>=1,p>>=1}for(var B,D,M=u.m_revTgt,V=0;VV&&(D=i[B=M[V]],i[B]=i[V],i[V]=D,D=d[B],d[B]=d[V],d[V]=D)};var v=i>>1;return u.unpack=function(t,d,c,h){t[0]=u.m_re[0],c[0]=u.m_im[0],d[0]=h[0]=0,t[v]=u.m_re[v],c[v]=u.m_im[v],d[v]=h[v]=0;for(var l=1;l{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=function(){function Bisector(t){(0,c.default)(this,Bisector),this.lower=t.start,this.upper=t.end,this.onprocess=t.process,this.position=0,this.n=0}return(0,h.default)(Bisector,[{key:"iterate",value:function iterate(){return this.n++,this.position=Math.floor((this.lower+this.upper)/2),this.onprocess(this.lower,this.upper,this.position)}},{key:"start",value:function start(){return this.iterate(),this}},{key:"left",value:function left(){return this.upper=this.position,this.iterate()}},{key:"right",value:function right(){return this.lower=this.position,this.iterate()}}]),Bisector}();i.default=l},523:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=new(function(){function _class(){(0,c.default)(this,_class)}return(0,h.default)(_class,[{key:"hasTypedArrays",value:function hasTypedArrays(){return!!window.Uint32Array}},{key:"hasWebAssembly",value:function hasWebAssembly(){return!!window.WebAssembly}},{key:"hasWebAudio",value:function hasWebAudio(){return!(!window.AudioContext&&!window.webkitAudioContext)}},{key:"hasFlash",value:function hasFlash(){return!1}},{key:"hasAudio",value:function hasAudio(){return this.hasWebAudio()}},{key:"isBlacklisted",value:function isBlacklisted(t){return!1}},{key:"isSlow",value:function isSlow(){return!1}},{key:"isTooSlow",value:function isTooSlow(){return!1}},{key:"supported",value:function supported(t){return"OGVDecoder"===t?this.hasWebAssembly():"OGVPlayer"===t&&(this.supported("OGVDecoder")&&this.hasAudio())}}]),_class}());i.default=l},408:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=d(u(205)),_=d(u(585)),p=d(u(754));function _createSuper(t){var i=function _isNativeReflectConstruct(){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(t){return!1}}();return function _createSuperInternal(){var u,d=(0,p.default)(t);if(i){var c=(0,p.default)(this).constructor;u=Reflect.construct(d,arguments,c)}else u=d.apply(this,arguments);return(0,_.default)(this,u)}}var m=function(t){(0,l.default)(OGVDecoderAudioProxy,t);var i=_createSuper(OGVDecoderAudioProxy);function OGVDecoderAudioProxy(){return(0,c.default)(this,OGVDecoderAudioProxy),i.apply(this,arguments)}return(0,h.default)(OGVDecoderAudioProxy,[{key:"init",value:function init(t){this.proxy("init",[],t)}},{key:"processHeader",value:function processHeader(t,i){this.proxy("processHeader",[t],i,[t])}},{key:"processAudio",value:function processAudio(t,i){this.proxy("processAudio",[t],i,[t])}},{key:"close",value:function close(){this.terminate()}}]),OGVDecoderAudioProxy}((0,d(u(580)).default)({loadedMetadata:!1,audioFormat:null,audioBuffer:null,cpuTime:0}));i.default=m},319:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=d(u(205)),_=d(u(585)),p=d(u(754));function _createSuper(t){var i=function _isNativeReflectConstruct(){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(t){return!1}}();return function _createSuperInternal(){var u,d=(0,p.default)(t);if(i){var c=(0,p.default)(this).constructor;u=Reflect.construct(d,arguments,c)}else u=d.apply(this,arguments);return(0,_.default)(this,u)}}var m=function(t){(0,l.default)(OGVDecoderVideoProxy,t);var i=_createSuper(OGVDecoderVideoProxy);function OGVDecoderVideoProxy(){return(0,c.default)(this,OGVDecoderVideoProxy),i.apply(this,arguments)}return(0,h.default)(OGVDecoderVideoProxy,[{key:"init",value:function init(t){this.proxy("init",[],t)}},{key:"processHeader",value:function processHeader(t,i){this.proxy("processHeader",[t],i,[t])}},{key:"processFrame",value:function processFrame(t,i){this.proxy("processFrame",[t],i,[t])}},{key:"close",value:function close(){this.terminate()}},{key:"sync",value:function sync(){this.proxy("sync",[],(function(){}))}},{key:"recycleFrame",value:function recycleFrame(t){this.proxy("recycleFrame",[t],(function(){}),[t.y.bytes.buffer,t.u.bytes.buffer,t.v.bytes.buffer])}}]),OGVDecoderVideoProxy}((0,d(u(580)).default)({loadedMetadata:!1,videoFormat:null,frameBuffer:null,cpuTime:0}));i.default=m},445:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=d(u(539)),_="1.8.4-20210702161914-bd3a07f",p={OGVDemuxerOggW:"ogv-demuxer-ogg-wasm.js",OGVDemuxerWebMW:"ogv-demuxer-webm-wasm.js",OGVDecoderAudioOpusW:"ogv-decoder-audio-opus-wasm.js",OGVDecoderAudioVorbisW:"ogv-decoder-audio-vorbis-wasm.js",OGVDecoderVideoTheoraW:"ogv-decoder-video-theora-wasm.js",OGVDecoderVideoVP8W:"ogv-decoder-video-vp8-wasm.js",OGVDecoderVideoVP8MTW:"ogv-decoder-video-vp8-mt-wasm.js",OGVDecoderVideoVP9W:"ogv-decoder-video-vp9-wasm.js",OGVDecoderVideoVP9SIMDW:"ogv-decoder-video-vp9-simd-wasm.js",OGVDecoderVideoVP9MTW:"ogv-decoder-video-vp9-mt-wasm.js",OGVDecoderVideoVP9SIMDMTW:"ogv-decoder-video-vp9-simd-mt-wasm.js",OGVDecoderVideoAV1W:"ogv-decoder-video-av1-wasm.js",OGVDecoderVideoAV1SIMDW:"ogv-decoder-video-av1-simd-wasm.js",OGVDecoderVideoAV1MTW:"ogv-decoder-video-av1-mt-wasm.js",OGVDecoderVideoAV1SIMDMTW:"ogv-decoder-video-av1-simd-mt-wasm.js"},m=function(){function OGVLoaderBase(){(0,c.default)(this,OGVLoaderBase),this.base=this.defaultBase()}return(0,h.default)(OGVLoaderBase,[{key:"defaultBase",value:function defaultBase(){}},{key:"wasmSupported",value:function wasmSupported(){return l.default.wasmSupported()}},{key:"scriptForClass",value:function scriptForClass(t){return p[t]}},{key:"urlForClass",value:function urlForClass(t){var i=this.scriptForClass(t);if(i)return this.urlForScript(i);throw new Error("asked for URL for unknown class "+t)}},{key:"urlForScript",value:function urlForScript(t){if(t){var i=this.base;return void 0===i?i="":i+="/",i+t+"?version="+encodeURIComponent(_)}throw new Error("asked for URL for unknown script "+t)}},{key:"loadClass",value:function loadClass(t,i,u){var d=this;u=u||{};var c=this.getGlobal(),h=this.urlForClass(t),l=function classWrapper(i){return(i=i||{}).locateFile=function(t){return"data:"===t.slice(0,5)?t:d.urlForScript(t)},i.mainScriptUrlOrBlob=d.scriptForClass(t)+"?version="+encodeURIComponent(_),c[t](i)};"function"==typeof c[t]?i(l):this.loadScript(h,(function(){i(l)}))}}]),OGVLoaderBase}();i.default=m},964:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=d(u(525)),_=d(u(205)),p=d(u(585)),m=d(u(754)),g=d(u(408)),v=d(u(319)),y=d(u(445));function _createSuper(t){var i=function _isNativeReflectConstruct(){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(t){return!1}}();return function _createSuperInternal(){var u,d=(0,m.default)(t);if(i){var c=(0,m.default)(this).constructor;u=Reflect.construct(d,arguments,c)}else u=d.apply(this,arguments);return(0,p.default)(this,u)}}var b={audio:{proxy:g.default,worker:"ogv-worker-audio.js"},video:{proxy:v.default,worker:"ogv-worker-video.js"}},T={OGVDecoderAudioOpusW:"audio",OGVDecoderAudioVorbisW:"audio",OGVDecoderVideoTheoraW:"video",OGVDecoderVideoVP8W:"video",OGVDecoderVideoVP9W:"video",OGVDecoderVideoVP9SIMDW:"video",OGVDecoderVideoAV1W:"video",OGVDecoderVideoAV1SIMDW:"video"},k=new(function(t){(0,_.default)(OGVLoaderWeb,t);var i=_createSuper(OGVLoaderWeb);function OGVLoaderWeb(){var t;return(0,c.default)(this,OGVLoaderWeb),(t=i.call(this)).scriptStatus={},t.scriptCallbacks={},t}return(0,h.default)(OGVLoaderWeb,[{key:"getGlobal",value:function getGlobal(){return window}},{key:"defaultBase",value:function defaultBase(){for(var t,i,u=document.querySelectorAll("script"),d=/^(?:|(.*)\/)ogv(?:-support|-es2017)?\.js(?:\?|#|$)/,c=0;c{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(309)),l={MEDIA_ERR_ABORTED:1,MEDIA_ERR_NETWORK:2,MEDIA_ERR_DECODE:3,MEDIA_ERR_SRC_NOT_SUPPORTED:4},_=function OGVMediaError(t,i){(0,c.default)(this,OGVMediaError),this.code=t,this.message=i};(0,h.default)(_,l),(0,h.default)(_.prototype,l);var p=_;i.default=p},278:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575));function split(t,i,u){var d=t.split(i,u).map((function(t){return function trim(t){return t.replace(/^\s+/,"").replace(/\s+$/,"")}(t)}));if("number"==typeof u)for(;d.length{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=d(u(506)),_=d(u(205)),p=d(u(585)),m=d(u(754)),g=d(u(8)),v=d(u(731)),y=d(u(936)),b=d(u(848)),T=d(u(964)),k=d(u(893)),P=d(u(309)),w=d(u(759)),E=d(u(278)),x=d(u(168)),A=d(u(625));function _createSuper(t){var i=function _isNativeReflectConstruct(){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(t){return!1}}();return function _createSuperInternal(){var u,d=(0,m.default)(t);if(i){var c=(0,m.default)(this).constructor;u=Reflect.construct(d,arguments,c)}else u=d.apply(this,arguments);return(0,p.default)(this,u)}}var R,O=function(){if("function"==typeof setImmediate)return setImmediate;var t=new MessageChannel,i=[];return t.port1.onmessage=function(t){i.shift()()},function nextTick(u){i.push(u),t.port2.postMessage({})}}(),S={NETWORK_EMPTY:0,NETWORK_IDLE:1,NETWORK_LOADING:2,NETWORK_NO_SOURCE:3,HAVE_NOTHING:0,HAVE_METADATA:1,HAVE_CURRENT_DATA:2,HAVE_FUTURE_DATA:3,HAVE_ENOUGH_DATA:4},C="INITIAL",B="SEEKING_END",D="LOADED",M="PRELOAD",V="READY",I="PLAYING",L="SEEKING",j="ERROR",W="NOT_SEEKING",X="BISECT_TO_TARGET",N="BISECT_TO_KEYPOINT",H="LINEAR_TO_TARGET",z="exact",Y="fast";function OGVJSElement(){var t=document.createElement("ogvjs");return Object.setPrototypeOf?Object.setPrototypeOf(t,Object.getPrototypeOf(this)):t.__proto__=this.__proto__,t}R="undefined"==typeof performance||void 0===(0,g.default)(performance.now)?Date.now:performance.now.bind(performance),OGVJSElement.prototype=Object.create(HTMLElement.prototype,{});var Q=function(t){(0,_.default)(OGVPlayer,t);var i=_createSuper(OGVPlayer);function OGVPlayer(t){var u;if((0,c.default)(this,OGVPlayer),u=i.call(this),(t=t||{}).base=t.base||T.default.base,u._options=t,u._instanceId="ogvjs"+ ++OGVPlayer.instanceCount,void 0!==t.worker?u._enableWorker=!!t.worker:u._enableWorker=!!window.Worker,!T.default.wasmSupported())throw new Error("WebAssembly not supported");return u._enableThreading=!!t.threading,u._enableSIMD=!!t.simd,u._state=C,u._seekState=W,u._detectedType=null,u._canvas=document.createElement("canvas"),u._frameSink=null,t.video&&u._canvas.captureStream?(u._mediaStream=new MediaStream,u._video="object"===(0,g.default)(t.video)?t.video:document.createElement("video"),u._video.playsInline=!0,u._video.srcObject=u._mediaStream):u._video=null,u._videoTrack=null,u._audioTrack=null,u._canvasStream=null,u.className=u._instanceId,(0,P.default)((0,l.default)(u),S),u._view=u._video||u._canvas,u._view.style.position="absolute",u._view.style.top="0",u._view.style.left="0",u._view.style.width="100%",u._view.style.height="100%",u._view.style.objectFit="contain",u.appendChild(u._view),u._startTime=R(),u._codec=null,u._audioInfo=null,u._videoInfo=null,u._actionQueue=[],u._audioFeeder=null,u._muted=!1,u._initialPlaybackPosition=0,u._initialPlaybackOffset=0,u._prebufferingAudio=!1,u._initialSeekTime=0,u._currentSrc="",u._streamEnded=!1,u._mediaError=null,u._dataEnded=!1,u._byteLength=0,u._duration=null,u._lastSeenTimestamp=null,u._nextProcessingTimer,u._nextFrameTimer=null,u._loading=!1,u._started=!1,u._paused=!0,u._ended=!1,u._startedPlaybackInDocument=!1,u._stream=void 0,u._framesProcessed=0,u._targetPerFrameTime=1e3/60,u._actualPerFrameTime=0,u._totalFrameTime=0,u._totalFrameCount=0,u._playTime=0,u._bufferTime=0,u._drawingTime=0,u._proxyTime=0,u._totalJitter=0,u._droppedAudio=0,u._delayedAudio=0,u._lateFrames=0,u._poster="",u._thumbnail=null,u._frameEndTimestamp=0,u._audioEndTimestamp=0,u._decodedFrames=[],u._pendingFrames=[],u._lastFrameDecodeTime=0,u._lastFrameVideoCpuTime=0,u._lastFrameAudioCpuTime=0,u._lastFrameDemuxerCpuTime=0,u._lastFrameDrawingTime=0,u._lastFrameBufferTime=0,u._lastFrameProxyTime=0,u._lastVideoCpuTime=0,u._lastAudioCpuTime=0,u._lastDemuxerCpuTime=0,u._lastBufferTime=0,u._lastProxyTime=0,u._lastDrawingTime=0,u._lastFrameTimestamp=0,u._currentVideoCpuTime=0,u._lastTimeUpdate=0,u._timeUpdateInterval=250,u._seekTargetTime=0,u._bisectTargetTime=0,u._seekMode=null,u._lastSeekPosition=null,u._seekBisector=null,u._didSeek=null,u._depth=0,u._needProcessing=!1,u._pendingFrame=0,u._pendingAudio=0,u._framePipelineDepth=8,u._frameParallelism=u._enableThreading?Math.min(16,navigator.hardwareConcurrency)||1:0,u._audioPipelineDepth=12,u._videoInfo=null,u._audioInfo=null,u._width=0,u._height=0,u._volume=1,u._playbackRate=1,Object.defineProperties((0,l.default)(u),{src:{get:function getSrc(){return this.getAttribute("src")||""},set:function setSrc(t){this.setAttribute("src",t),this._loading=!1,this._prepForLoad("interactive")}},buffered:{get:function getBuffered(){var t,i=this;return t=this._stream&&this._byteLength&&this._duration?this._stream.getBufferedRanges().map((function(t){return t.map((function(t){return t/i._stream.length*i._duration}))})):[[0,0]],new x.default(t)}},seekable:{get:function getSeekable(){return this.duration<1/0&&this._stream&&this._stream.seekable&&this._codec&&this._codec.seekable?new x.default([[0,this._duration]]):new x.default([])}},currentTime:{get:function getCurrentTime(){return this._state==L?this._seekTargetTime:this._codec?this._state!=I||this._paused?this._initialPlaybackOffset:this._getPlaybackTime():this._initialSeekTime},set:function setCurrentTime(t){this._seek(t,z)}},duration:{get:function getDuration(){return this._codec&&this._codec.loadedMetadata?null!==this._duration?this._duration:1/0:NaN}},paused:{get:function getPaused(){return this._paused}},ended:{get:function getEnded(){return this._ended}},seeking:{get:function getSeeking(){return this._state==L}},muted:{get:function getMuted(){return this._muted},set:function setMuted(t){this._muted=t,this._audioFeeder?this._audioFeeder.muted=this._muted:this._started&&!this._muted&&this._codec&&this._codec.hasAudio&&(this._log("unmuting: switching from timer to audio clock"),this._initAudioFeeder(),this._startPlayback(this._audioEndTimestamp)),this._fireEventAsync("volumechange")}},poster:{get:function getPoster(){return this._poster},set:function setPoster(t){var i=this;if(this._poster=t,!this._started){this._thumbnail&&this.removeChild(this._thumbnail);var u=new Image;u.src=this._poster,u.className="ogvjs-poster",u.style.position="absolute",u.style.top="0",u.style.left="0",u.style.width="100%",u.style.height="100%",u.style.objectFit="contain",u.style.visibility="hidden",u.addEventListener("load",(function(){i._thumbnail===u&&(OGVPlayer.styleManager.appendRule("."+i._instanceId,{width:u.naturalWidth+"px",height:u.naturalHeight+"px"}),OGVPlayer.updatePositionOnResize(),u.style.visibility="visible")})),this._thumbnail=u,this.appendChild(u)}}},videoWidth:{get:function getVideoWidth(){return this._videoInfo?this._videoInfo.displayWidth:0}},videoHeight:{get:function getVideoHeight(){return this._videoInfo?this._videoInfo.displayHeight:0}},ogvjsVideoFrameRate:{get:function getOgvJsVideoFrameRate(){return this._videoInfo?0==this._videoInfo.fps?this._totalFrameCount/(this._totalFrameTime/1e3):this._videoInfo.fps:0}},ogvjsAudioChannels:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.channels:0}},ogvjsAudioSampleRate:{get:function getOgvJsAudioChannels(){return this._audioInfo?this._audioInfo.rate:0}},width:{get:function getWidth(){return this._width},set:function setWidth(t){this._width=parseInt(t,10),this.style.width=this._width+"px",OGVPlayer.updatePositionOnResize()}},height:{get:function getHeight(){return this._height},set:function setHeight(t){this._height=parseInt(t,10),this.style.height=this._height+"px",OGVPlayer.updatePositionOnResize()}},autoplay:{get:function getAutoplay(){return!1},set:function setAutoplay(t){}},controls:{get:function getControls(){return!1},set:function setControls(t){}},loop:{get:function getLoop(){return!1},set:function setLoop(t){}},crossOrigin:{get:function getCrossOrigin(){return null},set:function setCrossOrigin(t){}},currentSrc:{get:function getCurrentSrc(){return this._currentSrc}},defaultMuted:{get:function getDefaultMuted(){return!1}},defaultPlaybackRate:{get:function getDefaultPlaybackRate(){return 1}},error:{get:function getError(){return this._state===j?this._mediaError?this._mediaError:new w.default("unknown error occurred in media procesing"):null}},preload:{get:function getPreload(){return this.getAttribute("preload")||""},set:function setPreload(t){this.setAttribute("preload",t)}},readyState:{get:function getReadyState(){return this._stream&&this._codec&&this._codec.loadedMetadata?OGVPlayer.HAVE_ENOUGH_DATA:OGVPlayer.HAVE_NOTHING}},networkState:{get:function getNetworkState(){return this._stream?this._stream.waiting?OGVPlayer.NETWORK_LOADING:OGVPlayer.NETWORK_IDLE:this.readyState==OGVPlayer.HAVE_NOTHING?OGVPlayer.NETWORK_EMPTY:OGVPlayer.NETWORK_NO_SOURCE}},playbackRate:{get:function getPlaybackRate(){return this._playbackRate},set:function setPlaybackRate(t){var i=Number(t)||1;this._audioFeeder?this._audioFeeder.tempo=i:this._paused||(this._initialPlaybackOffset=this._getPlaybackTime(),this._initialPlaybackPosition=i*R()/1e3),this._playbackRate=i,this._fireEventAsync("ratechange")}},played:{get:function getPlayed(){return new x.default([[0,this.currentTime]])}},volume:{get:function getVolume(){return this._volume},set:function setVolume(t){this._volume=+t,this._audioFeeder&&(this._audioFeeder.volume=this._volume),this._fireEventAsync("volumechange")}}}),u.onframecallback=null,u.onloadstate=null,u.onprogress=null,u.onsuspend=null,u.onabort=null,u.onemptied=null,u.onstalled=null,u.onloadedmetadata=null,u.onloadeddata=null,u.oncanplay=null,u.oncanplaythrough=null,u.onplaying=null,u.onwaiting=null,u.onseeking=null,u.onseeked=null,u.onended=null,u.ondurationchange=null,u.ontimeupdate=null,u.onplay=null,u.onpause=null,u.onratechange=null,u.onresize=null,u.onvolumechange=null,u.onaudiofeedercreated=null,u}return(0,h.default)(OGVPlayer,[{key:"_time",value:function _time(t){var i=R();t();var u=R()-i;return this._lastFrameDecodeTime+=u,u}},{key:"_log",value:function _log(t){var i=this._options;if(i.debug){var u=R()-this._startTime;i.debugFilter&&!t.match(i.debugFilter)||console.log("["+Math.round(10*u)/10+"ms] "+t)}}},{key:"_fireEvent",value:function _fireEvent(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log("fireEvent "+t);var u,d="function"==typeof Event;for(var c in d?u=new CustomEvent(t):(u=document.createEvent("Event")).initEvent(t,!1,!1),i)i.hasOwnProperty(c)&&(u[c]=i[c]);var h=this.dispatchEvent(u);!d&&"resize"===t&&this.onresize&&h&&this.onresize.call(this,u)}},{key:"_fireEventAsync",value:function _fireEventAsync(t){var i=this,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._log("fireEventAsync "+t),O((function(){i._fireEvent(t,u)}))}},{key:"_initAudioFeeder",value:function _initAudioFeeder(){var t=this,i=this._options,u={bufferSize:8192};if(i.audioContext&&(u.audioContext=i.audioContext),i.audioDestination&&(u.output=i.audioDestination),i.audioBackendFactory&&(u.backendFactory=i.audioBackendFactory),this._video&&!u.output){u.audioContext||(u.audioContext=b.default.initSharedAudioContext());var d=u.audioContext.createMediaStreamDestination();this._audioTrack=d.stream.getAudioTracks()[0],this._mediaStream.addTrack(this._audioTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream),this._video.play(),u.output=d}var c=this._audioFeeder=new b.default(u);c.init(this._audioInfo.channels,this._audioInfo.rate),this.onaudiofeedercreated&&this.onaudiofeedercreated(this._audioFeeder),c.bufferThreshold=1,c.volume=this.volume,c.muted=this.muted,c.tempo=this.playbackRate,c.onbufferlow=function(){t._log("onbufferlow"),t._stream&&(t._stream.buffering||t._stream.seeking)||t._pendingAudio||t._pingProcessing()},c.onstarved=function(){t._dataEnded?t._log("onstarved: appear to have reached end of audio"):(t._log("onstarved: halting audio due to starvation"),t._stopPlayback(),t._prebufferingAudio=!0),t._isProcessing()||t._pingProcessing(0)}}},{key:"_startPlayback",value:function _startPlayback(t){if(this._audioFeeder){this._audioFeeder.start();var i=this._audioFeeder.getPlaybackState();this._initialPlaybackPosition=i.playbackPosition}else this._initialPlaybackPosition=this._playbackRate*R()/1e3;void 0!==t&&(this._initialPlaybackOffset=t),this._prebufferingAudio=!1,this._log("continuing at "+this._initialPlaybackPosition+", "+this._initialPlaybackOffset)}},{key:"_stopPlayback",value:function _stopPlayback(){this._initialPlaybackOffset=this._getPlaybackTime(),this._log("pausing at "+this._initialPlaybackOffset),this._audioFeeder&&this._audioFeeder.stop()}},{key:"_getPlaybackTime",value:function _getPlaybackTime(t){return this._prebufferingAudio||this._paused?this._initialPlaybackOffset:(this._audioFeeder?(t=t||this._audioFeeder.getPlaybackState()).playbackPosition:this._playbackRate*R()/1e3)-this._initialPlaybackPosition+this._initialPlaybackOffset}},{key:"_stopVideo",value:function _stopVideo(){this._log("STOPPING"),this._state=C,this._seekState=W,this._started=!1,this._ended=!1,this._frameEndTimestamp=0,this._audioEndTimestamp=0,this._lastFrameDecodeTime=0,this._prebufferingAudio=!1,this._actionQueue.splice(0,this._actionQueue.length),this._stream&&(this._stream.abort(),this._stream=null,this._streamEnded=!1),this._codec&&(this._codec.close(),this._codec=null,this._pendingFrame=0,this._pendingAudio=0,this._dataEnded=!1),this._videoInfo=null,this._audioInfo=null,this._audioFeeder&&(this._audioFeeder.close(),this._audioFeeder=null),this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._frameSink&&(this._frameSink.clear(),this._frameSink=null),this._decodedFrames&&(this._decodedFrames=[]),this._pendingFrames&&(this._pendingFrames=[]),this._initialSeekTime=0,this._initialPlaybackPosition=0,this._initialPlaybackOffset=0,this._duration=null}},{key:"_doFrameComplete",value:function _doFrameComplete(){var t=this,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._startedPlaybackInDocument&&!document.body.contains(this)&&O((function(){t.stop()}));var u=R(),d=u-this._lastFrameTimestamp,c=this._actualPerFrameTime-this._targetPerFrameTime;this._totalJitter+=Math.abs(c),this._playTime+=d;var h={cpuTime:this._lastFrameDecodeTime,drawingTime:this._drawingTime-this._lastFrameDrawingTime,bufferTime:this._bufferTime-this._lastFrameBufferTime,proxyTime:this._proxyTime-this._lastFrameProxyTime,demuxerTime:0,videoTime:0,audioTime:0,clockTime:this._actualPerFrameTime,late:i.dropped,dropped:i.dropped};function n(t){return Math.round(10*t)/10}this._codec&&(h.demuxerTime=this._codec.demuxerCpuTime-this._lastFrameDemuxerCpuTime,h.videoTime+=this._currentVideoCpuTime-this._lastFrameVideoCpuTime,h.audioTime+=this._codec.audioCpuTime-this._lastFrameAudioCpuTime),h.cpuTime+=h.demuxerTime,this._lastFrameDecodeTime=0,this._lastFrameTimestamp=u,this._codec?(this._lastFrameVideoCpuTime=this._currentVideoCpuTime,this._lastFrameAudioCpuTime=this._codec.audioCpuTime,this._lastFrameDemuxerCpuTime=this._codec.demuxerCpuTime):(this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0),this._lastFrameDrawingTime=this._drawingTime,this._lastFrameBufferTime=this._bufferTime,this._lastFrameProxyTime=this._proxyTime,this._log("drew frame "+i.frameEndTimestamp+": clock time "+n(d)+" (jitter "+n(c)+") cpu: "+n(h.cpuTime)+" (mux: "+n(h.demuxerTime)+" buf: "+n(h.bufferTime)+" draw: "+n(h.drawingTime)+" proxy: "+n(h.proxyTime)+") vid: "+n(h.videoTime)+" aud: "+n(h.audioTime)),this._fireEventAsync("framecallback",h),(!this._lastTimeUpdate||u-this._lastTimeUpdate>=this._timeUpdateInterval)&&(this._lastTimeUpdate=u,this._fireEventAsync("timeupdate")),this._codec&&i.yCbCrBuffer&&this._codec.recycleFrame(i.yCbCrBuffer)}},{key:"_seekStream",value:function _seekStream(t){var i=this;this._stream.seeking&&this._stream.abort(),this._stream.buffering&&this._stream.abort(),this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._stream.seek(t).then((function(){i._readBytesAndWait()})).catch((function(t){i._onStreamError(t)}))}},{key:"_onStreamError",value:function _onStreamError(t){"AbortError"===t.name?this._log("i/o promise canceled; ignoring"):(this._log("i/o error: "+t),this._mediaError=new w.default(w.default.MEDIA_ERR_NETWORK,String(t)),this._state=j,this._stopPlayback())}},{key:"_seek",value:function _seek(t,i){var u=this;if(this._log("requested seek to "+t+", mode "+i),this.readyState==this.HAVE_NOTHING)return this._log("not yet loaded; saving seek position for later"),void(this._initialSeekTime=t);if(this._stream&&!this._stream.seekable)throw new Error("Cannot seek a non-seekable stream");if(this._codec&&!this._codec.seekable)throw new Error("Cannot seek in a non-seekable file");var d=function prepForSeek(d){u._stream&&u._stream.buffering&&u._stream.abort(),u._stream&&u._stream.seeking&&u._stream.abort(),u._actionQueue.splice(0,u._actionQueue.length),u._stopPlayback(),u._prebufferingAudio=!1,u._audioFeeder&&u._audioFeeder.flush(),u._state=L,u._seekTargetTime=t,u._seekMode=i,u._codec?u._codec.flush(d):d()};d((function(){u._isProcessing()||u._pingProcessing(0)})),this._actionQueue.push((function(){d((function(){u._doSeek(t)}))}))}},{key:"_doSeek",value:function _doSeek(t){var i=this;this._streamEnded=!1,this._dataEnded=!1,this._ended=!1,this._state=L,this._seekTargetTime=t,this._lastSeekPosition=-1,this._decodedFrames=[],this._pendingFrames=[],this._pendingFrame=0,this._pendingAudio=0,this._didSeek=!1,this._codec.seekToKeypoint(t,(function(u){if(u)return i._seekState=H,i._fireEventAsync("seeking"),i._didSeek?void 0:void i._pingProcessing();i._codec.getKeypointOffset(t,(function(t){t>0?(i._seekState=H,i._seekStream(t)):(i._seekState=X,i._startBisection(i._seekTargetTime)),i._fireEventAsync("seeking")}))}))}},{key:"_startBisection",value:function _startBisection(t){var i=this,u=Math.max(0,this._stream.length-65536);this._bisectTargetTime=t,this._seekBisector=new k.default({start:0,end:u,process:function process(t,u,d){return d!=i._lastSeekPosition&&(i._lastSeekPosition=d,i._codec.flush((function(){i._seekStream(d)})),!0)}}),this._seekBisector.start()}},{key:"_continueSeekedPlayback",value:function _continueSeekedPlayback(){var t=this;this._seekState=W,this._state=V,this._frameEndTimestamp=this._codec.frameTimestamp,this._audioEndTimestamp=this._codec.audioTimestamp,this._codec.hasAudio?this._seekTargetTime=this._codec.audioTimestamp:this._seekTargetTime=this._codec.frameTimestamp,this._initialPlaybackOffset=this._seekTargetTime;var i=function finishedSeeking(){t._lastTimeUpdate=t._seekTargetTime,t._fireEventAsync("timeupdate"),t._fireEventAsync("seeked"),t._isProcessing()||t._pingProcessing()};if(this._codec.hasVideo&&this._decodedFrames.length){var u=this._decodedFrames.shift();this._drawFrame(u.yCbCrBuffer),i()}else{if(this._codec.hasVideo&&this._codec.frameReady)return this._codec.decodeFrame((function(u){u&&t._drawFrame(t._codec.frameBuffer),i()})),void this._codec.sync();i()}}},{key:"_drawFrame",value:function _drawFrame(t){this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null),this._frameSink.drawFrame(t),this._video&&(this._canvasStream||(this._canvasStream=this._canvas.captureStream(0),this._videoTrack=this._canvasStream.getVideoTracks()[0],this._mediaStream.addTrack(this._videoTrack),navigator.userAgent.match(/WebKit/)&&(this._video.src=this._mediaStream,this._video.play())),this._videoTrack&&this._videoTrack.requestFrame?this._videoTrack.requestFrame():this._canvasStream&&this._canvasStream.requestFrame&&this._canvasStream.requestFrame())}},{key:"_doProcessLinearSeeking",value:function _doProcessLinearSeeking(){var t,i=this;if(t=this._codec.hasVideo?this._targetPerFrameTime/1e3:1/256,this._codec.hasVideo){if(this._pendingFrame)return;if(!this._codec.frameReady)return void this._codec.process((function(t){t?i._pingProcessing():i._streamEnded?(i._log("stream ended during linear seeking on video"),i._dataEnded=!0,i._continueSeekedPlayback()):i._readBytesAndWait()}));if(this._seekMode===Y&&this._codec.keyframeTimestamp==this._codec.frameTimestamp)return void this._continueSeekedPlayback();if(this._codec.frameTimestamp<=this._seekTargetTime){var u=this._codec.frameTimestamp;return this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:u}),this._decodedFrames.splice(0,this._decodedFrames.length),this._codec.decodeFrame((function(t){i._pendingFrame--,i._pendingFrames.shift(),i._decodedFrames.push({yCbCrBuffer:i._codec.frameBuffer,videoCpuTime:i._codec.videoCpuTime,frameEndTimestamp:u}),i._pingProcessing()})),void this._codec.sync()}if(!this._codec.hasAudio)return void this._continueSeekedPlayback()}if(this._codec.hasAudio){if(this._pendingAudio)return;return this._codec.audioReady?this._codec.audioTimestamp+tthis._bisectTargetTime?this._seekBisector.left()||(this._log("close enough (left)"),this._seekTargetTime=i,this._continueSeekedPlayback()):i+t/20?this._targetPerFrameTime=1e3/this._videoInfo.fps:this._targetPerFrameTime=16.667,this._canvas.width=this._videoInfo.displayWidth,this._canvas.height=this._videoInfo.displayHeight,OGVPlayer.styleManager.appendRule("."+this._instanceId,{width:this._videoInfo.displayWidth+"px",height:this._videoInfo.displayHeight+"px"}),OGVPlayer.updatePositionOnResize();var t={};void 0!==this._options.webGL&&(t.webGL=this._options.webGL),this._options.forceWebGL&&(t.webGL="required"),this._frameSink=v.default.attach(this._canvas,t)}},{key:"_doProcessing",value:function _doProcessing(){if(this._didSeek&&(this._didSeek=!1),this._nextProcessingTimer=null,this._isProcessing(),this._depth>0)throw new Error("REENTRANCY FAIL: doProcessing recursing unexpectedly");var t=0;do{if(this._needProcessing=!1,this._depth++,this._doProcessingLoop(),this._depth--,this._needProcessing&&this._isProcessing())throw new Error("REENTRANCY FAIL: waiting on input or codec but asked to keep processing");++t>500&&(this._log("stuck in processing loop; breaking with timer"),this._needProcessing=0,this._pingProcessing(0))}while(this._needProcessing)}},{key:"_doProcessingLoop",value:function _doProcessingLoop(){if(this._actionQueue.length)this._actionQueue.shift()();else if(this._state==C)this._doProcessInitial();else if(this._state==B)this._doProcessSeekingEnd();else if(this._state==D)this._doProcessLoaded();else if(this._state==M)this._doProcessPreload();else if(this._state==V)this._doProcessReady();else if(this._state==L)this._doProcessSeeking();else if(this._state==I)this._doProcessPlay();else{if(this._state!=j)throw new Error("Unexpected OGVPlayer state "+this._state);this._doProcessError()}}},{key:"_doProcessInitial",value:function _doProcessInitial(){var t=this;if(this._codec.loadedMetadata){if(!this._codec.hasVideo&&!this._codec.hasAudio)throw new Error("No audio or video found, something is wrong");this._codec.hasAudio&&(this._audioInfo=this._codec.audioFormat),this._codec.hasVideo&&(this._videoInfo=this._codec.videoFormat,this._setupVideo()),isNaN(this._codec.duration)||(this._duration=this._codec.duration),null===this._duration&&this._stream.seekable&&"video/ogg"==this._detectedType?(this._state=B,this._lastSeenTimestamp=-1,this._codec.flush((function(){t._seekStream(Math.max(0,t._stream.length-131072))}))):(this._state=D,this._pingProcessing())}else this._codec.process((function(i){if(i)t._pingProcessing();else{if(t._streamEnded)throw new Error("end of file before headers found");t._log("reading more cause we are out of data"),t._readBytesAndWait()}}))}},{key:"_doProcessSeekingEnd",value:function _doProcessSeekingEnd(){var t=this;this._codec.frameReady?(this._log("saw frame with "+this._codec.frameTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.frameTimestamp),this._codec.discardFrame((function(){t._pingProcessing()}))):this._codec.audioReady?(this._log("saw audio with "+this._codec.audioTimestamp),this._lastSeenTimestamp=Math.max(this._lastSeenTimestamp,this._codec.audioTimestamp),this._codec.discardAudio((function(){t._pingProcessing()}))):this._codec.process((function(i){i?t._pingProcessing():t._stream.eof?(t._log("seek-duration: we are at the end: "+t._lastSeenTimestamp),t._lastSeenTimestamp>0&&(t._duration=t._lastSeenTimestamp),t._state=D,t._codec.flush((function(){t._streamEnded=!1,t._dataEnded=!1,t._seekStream(0)}))):t._readBytesAndWait()}))}},{key:"_doProcessLoaded",value:function _doProcessLoaded(){this._state=M,this._fireEventAsync("loadedmetadata"),this._fireEventAsync("durationchange"),this._codec.hasVideo&&this._fireEventAsync("resize"),this._pingProcessing(0)}},{key:"_doProcessPreload",value:function _doProcessPreload(){var t=this;!this._codec.frameReady&&this._codec.hasVideo||!this._codec.audioReady&&this._codec.hasAudio?this._codec.process((function(i){i?t._pingProcessing():t._streamEnded?t._ended=!0:t._readBytesAndWait()})):(this._state=V,this._fireEventAsync("loadeddata"),this._pingProcessing())}},{key:"_doProcessReady",value:function _doProcessReady(){var t=this;if(this._log("initial seek to "+this._initialSeekTime),this._initialSeekTime>0){var i=this._initialSeekTime;this._initialSeekTime=0,this._log("initial seek to "+i),this._doSeek(i)}else if(this._paused)this._log("paused while in ready");else{var u=function finishStartPlaying(){t._log("finishStartPlaying"),t._state=I,t._lastFrameTimestamp=R(),t._codec.hasAudio&&t._audioFeeder?t._prebufferingAudio=!0:t._startPlayback(),t._pingProcessing(0),t._fireEventAsync("play"),t._fireEventAsync("playing")};!this._codec.hasAudio||this._audioFeeder||this._muted?u():(this._initAudioFeeder(),this._audioFeeder.waitUntilReady(u))}}},{key:"_doProcessSeeking",value:function _doProcessSeeking(){if(this._seekState==W)throw new Error("seeking in invalid state (not seeking?)");if(this._seekState==X)this._doProcessBisectionSeek();else if(this._seekState==N)this._doProcessBisectionSeek();else{if(this._seekState!=H)throw new Error("Invalid seek state "+this._seekState);this._doProcessLinearSeeking()}}},{key:"_doProcessPlay",value:function _doProcessPlay(){var t=this,i=this._codec;if(this._paused)this._log("paused during playback; stopping loop");else if((!i.hasAudio||i.audioReady||this._pendingAudio||this._dataEnded)&&(!i.hasVideo||i.frameReady||this._pendingFrame||this._decodedFrames.length||this._dataEnded)){var u,d,c,h=null,l=0,_=!1,p=0;if(i.hasAudio&&this._audioFeeder?(h=this._audioFeeder.getPlaybackState(),l=this._getPlaybackTime(h),_=this._dataEnded&&0==this._audioFeeder.durationBuffered,this._prebufferingAudio&&(this._audioFeeder.durationBuffered>=2*this._audioFeeder.bufferThreshold&&(!i.hasVideo||this._decodedFrames.length>=this._framePipelineDepth)||this._dataEnded)&&(this._log("prebuffering audio done; buffered to "+this._audioFeeder.durationBuffered),this._startPlayback(l),this._prebufferingAudio=!1),h.dropped!=this._droppedAudio&&this._log("dropped "+(h.dropped-this._droppedAudio)),h.delayed!=this._delayedAudio&&this._log("delayed "+(h.delayed-this._delayedAudio)),this._droppedAudio=h.dropped,this._delayedAudio=h.delayed,(u=this._audioFeeder.durationBuffered<=2*this._audioFeeder.bufferThreshold)&&(this._codec.audioReady?this._pendingAudio>=this._audioPipelineDepth&&(this._log("audio decode disabled: "+this._pendingAudio+" packets in flight"),u=!1):u=!1)):(l=this._getPlaybackTime(),u=this._codec.audioReady&&this._audioEndTimestamp0,c=this._pendingFrame+this._decodedFrames.length=m){for(var g=-1,v=0;v=0)for(;g-- >=0;){this._lateFrames++;var y=this._decodedFrames.shift();this._log("skipping already-decoded late frame at "+y.frameEndTimestamp),p=1e3*(y.frameEndTimestamp-l),this._frameEndTimestamp=y.frameEndTimestamp,this._actualPerFrameTime=this._targetPerFrameTime-p,this._framesProcessed++,y.dropped=!0,this._doFrameComplete(y)}var b=this._codec.nextKeyframeTimestamp,T=b-this._targetPerFrameTime/1e3*(this._framePipelineDepth+this._pendingFrame);if(b>=0&&b!=this._codec.frameTimestamp&&l>=T){this._log("skipping late frame at "+this._decodedFrames[0].frameEndTimestamp+" vs "+l+", expect to see keyframe at "+b);for(var k=0;k0&&(this._targetPerFrameTime=1e3*(this._codec.frameTimestamp-this._frameEndTimestamp)),this._totalFrameTime+=this._targetPerFrameTime,this._totalFrameCount++;var A=this._frameEndTimestamp=this._codec.frameTimestamp;this._pendingFrame++,this._pendingFrames.push({frameEndTimestamp:A});var R=this._pendingFrames,O=!1,S=this._time((function(){t._codec.decodeFrame((function(i){R===t._pendingFrames?(t._log("play loop callback: decoded frame"),t._pendingFrame--,t._pendingFrames.shift(),i?t._decodedFrames.push({yCbCrBuffer:t._codec.frameBuffer,videoCpuTime:t._codec.videoCpuTime,frameEndTimestamp:A}):t._log("Bad video packet or something"),t._codec.process((function(){t._isProcessing()||t._pingProcessing(O?void 0:0)}))):t._log("play loop callback after flush, discarding")}))}));this._pendingFrame&&(O=!0,this._proxyTime+=S,this._pingProcessing(),this._dataEnded&&this._codec.sync())}else if(u){this._log("play loop: ready for audio; depth: "+this._pendingAudio),this._pendingAudio++;var C=this._codec.audioTimestamp,B=this._time((function(){t._codec.decodeAudio((function(i){if(t._pendingAudio--,t._log("play loop callback: decoded audio"),t._audioEndTimestamp=C,i){var u=t._codec.audioBuffer;if(u&&(t._bufferTime+=t._time((function(){t._audioFeeder&&t._audioFeeder.bufferData(u)})),!t._codec.hasVideo)){t._framesProcessed++;var d={frameEndTimestamp:t._audioEndTimestamp};t._doFrameComplete(d)}}t._isProcessing()||t._pingProcessing()}))}));this._pendingAudio&&(this._proxyTime+=B,this._codec.audioReady?this._pingProcessing():this._doProcessPlayDemux())}else if(d){this._log("play loop: ready to draw frame"),this._nextFrameTimer&&(clearTimeout(this._nextFrameTimer),this._nextFrameTimer=null),this._thumbnail&&(this.removeChild(this._thumbnail),this._thumbnail=null);var D=this._decodedFrames.shift();this._currentVideoCpuTime=D.videoCpuTime,this._drawingTime+=this._time((function(){t._drawFrame(D.yCbCrBuffer)})),this._framesProcessed++,this._doFrameComplete(D),this._pingProcessing()}else if(!this._decodedFrames.length||this._nextFrameTimer||this._prebufferingAudio)if(this._dataEnded&&!(this._pendingAudio||this._pendingFrame||this._decodedFrames.length)){this._log("play loop: playback reached end of data "+[this._pendingAudio,this._pendingFrame,this._decodedFrames.length]);var M=0;this._codec.hasAudio&&this._audioFeeder&&(M=1e3*this._audioFeeder.durationBuffered),M>0?(this._log("play loop: ending pending "+M+" ms"),this._pingProcessing(Math.max(0,M))):(this._log("play loop: ENDING NOW: playback time "+this._getPlaybackTime()+"; frameEndTimestamp: "+this._frameEndTimestamp),this._stopPlayback(),this._prebufferingAudio=!1,this._initialPlaybackOffset=Math.max(this._audioEndTimestamp,this._frameEndTimestamp),this._ended=!0,this._paused=!0,this._fireEventAsync("pause"),this._fireEventAsync("ended"))}else this._prebufferingAudio&&(i.hasVideo&&!i.frameReady||i.hasAudio&&!i.audioReady)?(this._log("play loop: prebuffering demuxing"),this._doProcessPlayDemux()):this._log("play loop: waiting on async/timers");else{var V=p;this._log("play loop: setting a timer for drawing "+V),this._nextFrameTimer=setTimeout((function(){t._nextFrameTimer=null,t._pingProcessing()}),V)}}else this._log("play loop: demuxing"),this._doProcessPlayDemux()}},{key:"_doProcessPlayDemux",value:function _doProcessPlayDemux(){var t=this,i=this._codec.frameReady,u=this._codec.audioReady;this._codec.process((function(d){t._codec.frameReady&&!i||t._codec.audioReady&&!u?(t._log("demuxer has packets"),t._pingProcessing()):d?(t._log("demuxer processing to find more packets"),t._pingProcessing()):(t._log("demuxer ran out of data"),t._streamEnded?(t._log("demuxer reached end of data stream"),t._dataEnded=!0,t._pingProcessing()):(t._log("demuxer loading more data"),t._readBytesAndWait()))}))}},{key:"_doProcessError",value:function _doProcessError(){}},{key:"_isProcessing",value:function _isProcessing(){return this._stream&&(this._stream.buffering||this._stream.seeking)||this._codec&&this._codec.processing}},{key:"_readBytesAndWait",value:function _readBytesAndWait(){var t=this;if(this._stream.buffering||this._stream.seeking)this._log("readBytesAndWait during i/o");else{this._stream.read(32768).then((function(i){t._log("got input "+[i.byteLength]),i.byteLength&&t._actionQueue.push((function(){t._codec.receiveInput(i,(function(){t._pingProcessing()}))})),t._stream.eof&&(t._log("stream is at end!"),t._streamEnded=!0),t._isProcessing()||t._pingProcessing()})).catch((function(i){t._onStreamError(i)}))}}},{key:"_pingProcessing",value:function _pingProcessing(){var t=this,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(this._stream&&this._stream.waiting)this._log("waiting on input");else{this._nextProcessingTimer&&(this._log("canceling old processing timer"),clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null);var u=-1/256;i>u?this._nextProcessingTimer=setTimeout((function(){t._pingProcessing()}),i):this._depth?this._needProcessing=!0:this._doProcessing()}}},{key:"_startProcessingVideo",value:function _startProcessingVideo(t){var i=this;if(!this._started&&!this._codec){this._framesProcessed=0,this._bufferTime=0,this._drawingTime=0,this._proxyTime=0,this._started=!0,this._ended=!1;var u={base:this._options.base,worker:this._enableWorker,threading:this._enableThreading,simd:this._enableSIMD};this._detectedType&&(u.type=this._detectedType),this._codec=new A.default(u),this._lastVideoCpuTime=0,this._lastAudioCpuTime=0,this._lastDemuxerCpuTime=0,this._lastBufferTime=0,this._lastDrawingTime=0,this._lastProxyTime=0,this._lastFrameVideoCpuTime=0,this._lastFrameAudioCpuTime=0,this._lastFrameDemuxerCpuTime=0,this._lastFrameBufferTime=0,this._lastFrameProxyTime=0,this._lastFrameDrawingTime=0,this._currentVideoCpuTime=0,this._codec.onseek=function(t){i._didSeek=!0,i._stream&&i._seekStream(t)},this._codec.init((function(){i._codec.receiveInput(t,(function(){i._readBytesAndWait()}))}))}}},{key:"_loadCodec",value:function _loadCodec(t){var i=this;this._stream.read(1024).then((function(u){var d=new Uint8Array(u);d.length>4&&d[0]=="O".charCodeAt(0)&&d[1]=="g".charCodeAt(0)&&d[2]=="g".charCodeAt(0)&&d[3]=="S".charCodeAt(0)?i._detectedType="video/ogg":d.length>4&&26==d[0]&&69==d[1]&&223==d[2]&&163==d[3]?i._detectedType="video/webm":i._detectedType="video/ogg",t(u)}))}},{key:"_prepForLoad",value:function _prepForLoad(t){var i=this;this._stopVideo();this._currentSrc="",this._loading=!0,this._actionQueue.push((function(){t&&"none"===i.preload?i._loading=!1:function doLoad(){i._options.stream?i._stream=i._options.stream:i._stream=new y.default({url:i.src,cacheSize:16777216,progressive:!1}),i._stream.load().then((function(){i._loading=!1,i._currentSrc=i.src,i._byteLength=i._stream.seekable?i._stream.length:0;var t=i._stream.headers["x-content-duration"];"string"==typeof t&&(i._duration=parseFloat(t)),i._loadCodec((function(t){i._startProcessingVideo(t)}))})).catch((function(t){i._onStreamError(t)}))}()})),this._pingProcessing(0)}},{key:"load",value:function load(){this._prepForLoad()}},{key:"canPlayType",value:function canPlayType(t){var i=new E.default(t);function checkTypes(t){if(i.codecs){var u=0,d=0;return i.codecs.forEach((function(i){t.indexOf(i)>=0?u++:d++})),0===u||d>0?"":"probably"}return"maybe"}return"ogg"!==i.minor||"audio"!==i.major&&"video"!==i.major&&"application"!==i.major?"webm"!==i.minor||"audio"!==i.major&&"video"!==i.major?"":checkTypes(["vorbis","opus","vp8","vp9"]):checkTypes(["vorbis","opus","theora"])}},{key:"play",value:function play(){this._muted||this._options.audioContext||OGVPlayer.initSharedAudioContext(),this._paused&&(this._startedPlaybackInDocument=document.body.contains(this),this._paused=!1,this._state==L||(this._started&&this._codec&&this._codec.loadedMetadata?(this._ended&&this._stream&&this._byteLength?(this._log(".play() starting over after end"),this._seek(0)):this._log(".play() while already started"),this._state=V,this._isProcessing()||this._pingProcessing()):this._loading?this._log(".play() while loading"):(this._log(".play() before started"),this._stream||this.load()))),this._video&&this._video.paused&&this._video.play()}},{key:"getPlaybackStats",value:function getPlaybackStats(){return{targetPerFrameTime:this._targetPerFrameTime,framesProcessed:this._framesProcessed,videoBytes:this._codec?this._codec.videoBytes:0,audioBytes:this._codec?this._codec.audioBytes:0,playTime:this._playTime,demuxingTime:this._codec?this._codec.demuxerCpuTime-this._lastDemuxerCpuTime:0,videoDecodingTime:this._codec?this._codec.videoCpuTime-this._lastVideoCpuTime:0,audioDecodingTime:this._codec?this._codec.audioCpuTime-this._lastAudioCpuTime:0,bufferTime:this._bufferTime-this._lastBufferTime,drawingTime:this._drawingTime-this._lastDrawingTime,proxyTime:this._proxyTime-this._lastProxyTime,droppedAudio:this._droppedAudio,delayedAudio:this._delayedAudio,jitter:this._totalJitter/this._framesProcessed,lateFrames:this._lateFrames}}},{key:"resetPlaybackStats",value:function resetPlaybackStats(){this._framesProcessed=0,this._playTime=0,this._codec&&(this._lastDemuxerCpuTime=this._codec.demuxerCpuTime,this._lastVideoCpuTime=this._codec.videoCpuTime,this._lastAudioCpuTime=this._codec.audioCpuTime,this._codec.videoBytes=0,this._codec.audioBytes=0),this._lastBufferTime=this._bufferTime,this._lastDrawingTime=this._drawingTime,this._lastProxyTime=this._proxyTime,this._totalJitter=0,this._totalFrameTime=0,this._totalFrameCount=0}},{key:"getVideoFrameSink",value:function getVideoFrameSink(){return this._frameSink}},{key:"getCanvas",value:function getCanvas(){return this._canvas}},{key:"getVideo",value:function getVideo(){return this._video}},{key:"pause",value:function pause(){this._paused||(this._nextProcessingTimer&&(clearTimeout(this._nextProcessingTimer),this._nextProcessingTimer=null),this._stopPlayback(),this._prebufferingAudio=!1,this._paused=!0,this._fireEvent("pause"))}},{key:"stop",value:function stop(){this._stopVideo(),this._paused=!0}},{key:"fastSeek",value:function fastSeek(t){this._seek(+t,Y)}}],[{key:"initSharedAudioContext",value:function initSharedAudioContext(){b.default.initSharedAudioContext()}}]),OGVPlayer}(OGVJSElement);if((0,P.default)(Q,S),Q.instanceCount=0,Q.styleManager=new function StyleManager(){var t=document.createElement("style");t.type="text/css",t.textContent="ogvjs { display: inline-block; position: relative; -webkit-user-select: none; -webkit-tap-highlight-color: rgba(0,0,0,0); ",document.head.appendChild(t);var i=t.sheet;this.appendRule=function(t,u){var d=[];for(var c in u)u.hasOwnProperty(c)&&d.push(c+":"+u[c]);var h=t+"{"+d.join(";")+"}";i.insertRule(h,i.cssRules.length-1)}},Q.supportsObjectFit="string"==typeof document.createElement("canvas").style.objectFit,Q.supportsObjectFit&&navigator.userAgent.match(/iPhone|iPad|iPod Touch/)&&(Q.supportsObjectFit=!1),Q.supportsObjectFit&&navigator.userAgent.match(/Edge/)&&(Q.supportsObjectFit=!1),Q.supportsObjectFit)Q.updatePositionOnResize=function(){};else{Q.updatePositionOnResize=function(){function fixup(t,i,u){var d=t.offsetParent||t.parentNode,c=i/u;if(c>d.offsetWidth/d.offsetHeight){var h=d.offsetWidth/c,l=(d.offsetHeight-h)/2;t.style.width="100%",t.style.height=h+"px",t.style.marginLeft=0,t.style.marginRight=0,t.style.marginTop=l+"px",t.style.marginBottom=l+"px"}else{var _=d.offsetHeight*c,p=(d.offsetWidth-_)/2;t.style.width=_+"px",t.style.height="100%",t.style.marginLeft=p+"px",t.style.marginRight=p+"px",t.style.marginTop=0,t.style.marginBottom=0}}function queryOver(t,i){var u=document.querySelectorAll(t);Array.prototype.slice.call(u).forEach(i)}queryOver("ogvjs > canvas",(function(t){fixup(t,t.width,t.height)})),queryOver("ogvjs > img",(function(t){fixup(t,t.naturalWidth,t.naturalHeight)}))};var K=function fullResizeVideo(){O(Q.updatePositionOnResize)};window.addEventListener("resize",Q.updatePositionOnResize),window.addEventListener("orientationchange",Q.updatePositionOnResize),document.addEventListener("fullscreenchange",K),document.addEventListener("mozfullscreenchange",K),document.addEventListener("webkitfullscreenchange",K),document.addEventListener("MSFullscreenChange",K)}var $=Q;i.default=$},580:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913));var l=function OGVProxyClass(t){return function(){function _class(i,u,d){var h=this;for(var l in(0,c.default)(this,_class),d=d||{},this.worker=i,this.transferables=function(){var t=new ArrayBuffer(1024),u=new Uint8Array(t);try{return i.postMessage({action:"transferTest",bytes:u},[t]),!t.byteLength}catch(t){return!1}}(),t)t.hasOwnProperty(l)&&(this[l]=t[l]);this.processingQueue=0,Object.defineProperty(this,"processing",{get:function get(){return this.processingQueue>0}}),this.messageCount=0,this.pendingCallbacks={},this.worker.addEventListener("message",(function(t){h.handleMessage(t)})),this.proxy("construct",[u,d],(function(){}))}return(0,h.default)(_class,[{key:"proxy",value:function proxy(t,i,u){var d=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];if(!this.worker)throw'Tried to call "'+t+'" method on closed proxy object';var c="callback-"+ ++this.messageCount+"-"+t;u&&(this.pendingCallbacks[c]=u);var h={action:t,callbackId:c,args:i||[]};this.processingQueue++,this.transferables?this.worker.postMessage(h,d):this.worker.postMessage(h)}},{key:"terminate",value:function terminate(){this.worker&&(this.worker.terminate(),this.worker=null,this.processingQueue=0,this.pendingCallbacks={})}},{key:"handleMessage",value:function handleMessage(t){if(this.processingQueue--,"callback"===t.data.action){var i=t.data,u=i.callbackId,d=i.args,c=this.pendingCallbacks[u];if(i.props)for(var h in i.props)i.props.hasOwnProperty(h)&&(this[h]=i.props[h]);c&&(delete this.pendingCallbacks[u],c.apply(this,d))}}}]),_class}()};i.default=l},168:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=function(){function OGVTimeRanges(t){(0,c.default)(this,OGVTimeRanges),this._ranges=t,this.length=t.length}return(0,h.default)(OGVTimeRanges,[{key:"start",value:function start(t){if(t<0||t>this.length||t!==(0|t))throw new RangeError("Invalid index");return this._ranges[t][0]}},{key:"end",value:function end(t){if(t<0||t>this.length||t!==(0|t))throw new RangeError("Invalid index");return this._ranges[t][1]}}]),OGVTimeRanges}();i.default=l},625:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(575)),h=d(u(913)),l=d(u(964));function _createForOfIteratorHelper(t,i){var u="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!u){if(Array.isArray(t)||(u=function _unsupportedIterableToArray(t,i){if(!t)return;if("string"==typeof t)return _arrayLikeToArray(t,i);var u=Object.prototype.toString.call(t).slice(8,-1);"Object"===u&&t.constructor&&(u=t.constructor.name);if("Map"===u||"Set"===u)return Array.from(t);if("Arguments"===u||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(u))return _arrayLikeToArray(t,i)}(t))||i&&t&&"number"==typeof t.length){u&&(t=u);var d=0,c=function F(){};return{s:c,n:function n(){return d>=t.length?{done:!0}:{done:!1,value:t[d++]}},e:function e(t){throw t},f:c}}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 h,l=!0,_=!1;return{s:function s(){u=u.call(t)},n:function n(){var t=u.next();return l=t.done,t},e:function e(t){_=!0,h=t},f:function f(){try{l||null==u.return||u.return()}finally{if(_)throw h}}}}function _arrayLikeToArray(t,i){(null==i||i>t.length)&&(i=t.length);for(var u=0,d=new Array(i);u0?h.push(_.subarray(0,_.length-Math.min(p,_.length))):h.push(_.subarray(Math.min(Math.abs(p),_.length),_.length))}}catch(t){l.e(t)}finally{l.f()}i.audioDecoder.audioBuffer=h}return u(t)}))}))}},{key:"discardFrame",value:function discardFrame(t){var i=this;this.demuxer.dequeueVideoPacket((function(u){i.videoBytes+=u.byteLength,t()}))}},{key:"discardAudio",value:function discardAudio(t){var i=this;this.demuxer.dequeueAudioPacket((function(u,d){i.audioBytes+=u.byteLength,t()}))}},{key:"flush",value:function flush(t){this.flushIter++,this.demuxer.flush(t)}},{key:"sync",value:function sync(){this.videoDecoder&&this.videoDecoder.sync()}},{key:"recycleFrame",value:function recycleFrame(t){this.videoDecoder&&this.videoDecoder.recycleFrame(t)}},{key:"getKeypointOffset",value:function getKeypointOffset(t,i){this.demuxer.getKeypointOffset(t,i)}},{key:"seekToKeypoint",value:function seekToKeypoint(t,i){this.demuxer.seekToKeypoint(t,this.flushSafe(i))}},{key:"loadAudioCodec",value:function loadAudioCodec(t){var i=this;if(this.demuxer.audioCodec){var u={vorbis:"OGVDecoderAudioVorbisW",opus:"OGVDecoderAudioOpusW"}[this.demuxer.audioCodec];this.processing=!0,l.default.loadClass(u,(function(u){var d={};i.demuxer.audioFormat&&(d.audioFormat=i.demuxer.audioFormat),u(d).then((function(u){i.audioDecoder=u,u.init((function(){i.loadedAudioMetadata=u.loadedMetadata,i.processing=!1,t()}))}))}),{worker:this.options.worker})}else t()}},{key:"loadVideoCodec",value:function loadVideoCodec(t){var i=this;if(this.demuxer.videoCodec){var u=!!this.options.simd,d=!!this.options.threading,c={theora:"OGVDecoderVideoTheoraW",vp8:d?"OGVDecoderVideoVP8MTW":"OGVDecoderVideoVP8W",vp9:d?u?"OGVDecoderVideoVP9SIMDMTW":"OGVDecoderVideoVP9MTW":u?"OGVDecoderVideoVP9SIMDW":"OGVDecoderVideoVP9W",av1:d?u?"OGVDecoderVideoAV1SIMDMTW":"OGVDecoderVideoAV1MTW":u?"OGVDecoderVideoAV1SIMDW":"OGVDecoderVideoAV1W"}[this.demuxer.videoCodec];this.processing=!0,l.default.loadClass(c,(function(u){var c={};i.demuxer.videoFormat&&(c.videoFormat=i.demuxer.videoFormat),d&&delete window.ENVIRONMENT_IS_PTHREAD,u(c).then((function(u){i.videoDecoder=u,u.init((function(){i.loadedVideoMetadata=u.loadedMetadata,i.processing=!1,t()}))}))}),{worker:this.options.worker&&!this.options.threading})}else t()}}]),OGVWrapperCodec}();i.default=_},539:(t,i,u)=>{"use strict";var d=u(318);Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var c=d(u(8)),h=d(u(575)),l=d(u(913));var _=new(function(){function WebAssemblyChecker(){(0,h.default)(this,WebAssemblyChecker),this.tested=!1,this.testResult=void 0}return(0,l.default)(WebAssemblyChecker,[{key:"wasmSupported",value:function wasmSupported(){if(!this.tested){try{"object"===("undefined"==typeof WebAssembly?"undefined":(0,c.default)(WebAssembly))?this.testResult=function testSafariWebAssemblyBug(){var t=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),i=new WebAssembly.Module(t);return 0!==new WebAssembly.Instance(i,{}).exports.test(4)}():this.testResult=!1}catch(t){console.log("Exception while testing WebAssembly",t),this.testResult=!1}this.tested=!0}return this.testResult}}]),WebAssemblyChecker}());i.default=_},309:(t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var u=function extend(t,i){for(var u in i)i.hasOwnProperty(u)&&(t[u]=i[u])};i.default=u},431:(t,i,u)=>{"use strict";var d=function(){function defineProperties(t,i){for(var u=0;u{"use strict";var d=function(){function defineProperties(t,i){for(var u=0;u=200&&t.xhr.status<300?(t.length=getXHRLength(t.xhr),t.headers=function getXHRHeaders(t){var i={};return t.getAllResponseHeaders().split(/\r?\n/).forEach((function(t){var u=t.split(/:\s*/,2);u.length>1&&(i[u[0].toLowerCase()]=u[1])})),i}(t.xhr),t.onXHRStart()):(d(),u(new Error("HTTP error "+t.xhr.status)))}},h=function checkError(){d(),u(new Error("network error"))},l=function checkBackendOpen(){d(),i()};d=function oncomplete(){t.xhr.removeEventListener("readystatechange",c),t.xhr.removeEventListener("error",h),t.off("open",l),t._onAbort=null},t.initXHR(),t.xhr.addEventListener("readystatechange",c),t.xhr.addEventListener("error",h),t.on("open",l),t.xhr.send()}))}},{key:"bufferToOffset",value:function bufferToOffset(t){return Promise.reject(new Error("abstract"))}},{key:"abort",value:function abort(){if(this.xhr.abort(),this._onAbort){var t=this._onAbort;this._onAbort=null;var i=new Error("Aborted");i.name="AbortError",t(i)}}},{key:"initXHR",value:function initXHR(){var t=this.url;this.cachever&&(t+="?buggy_cachever="+this.cachever),this.xhr.open("GET",t);var i=null;(this.offset||this.length)&&(i="bytes="+this.offset+"-"),this.length&&(i+=this.offset+this.length-1),null!==i&&this.xhr.setRequestHeader("Range",i)}},{key:"onXHRStart",value:function onXHRStart(){throw new Error("abstract")}}]),Backend}(u(566));t.exports=c},810:(t,i,u)=>{"use strict";var d=function(){function defineProperties(t,i){for(var u=0;u0&&(this.bytesRead+=t.length,this.emit("buffer",t))}},{key:"onXHRLoad",value:function onXHRLoad(){this.onXHRProgress(),c(BinaryStringBackend.prototype.__proto__||Object.getPrototypeOf(BinaryStringBackend.prototype),"onXHRLoad",this).call(this)}}]),BinaryStringBackend}(u(828));h.supported=function(){try{return!!(new XMLHttpRequest).overrideMimeType}catch(t){return!1}},t.exports=h},828:(t,i,u)=>{"use strict";var d=function(){function defineProperties(t,i){for(var u=0;u=t)u();else{var c=null;i._onAbort=function(t){c(),d(t)};var h=function checkBuffer(){i.offset>=t&&!i.eof&&(c(),u())},l=function checkDone(){c(),u()},_=function checkError(){c(),d(new Error("error streaming"))};c=function oncomplete(){i.buffering=!1,i.off("buffer",h),i.off("done",l),i.off("error",_),i._onAbort=null},i.buffering=!0,i.on("buffer",h),i.on("done",l),i.on("error",_)}}))}},{key:"initXHR",value:function initXHR(){c(DownloadBackend.prototype.__proto__||Object.getPrototypeOf(DownloadBackend.prototype),"initXHR",this).call(this)}},{key:"onXHRStart",value:function onXHRStart(){var t=this;this.xhr.addEventListener("progress",(function(){return t.onXHRProgress()})),this.xhr.addEventListener("error",(function(){return t.onXHRError()})),this.xhr.addEventListener("load",(function(){return t.onXHRLoad()})),this.emit("open")}},{key:"onXHRProgress",value:function onXHRProgress(){throw new Error("abstract")}},{key:"onXHRError",value:function onXHRError(){this.emit("error")}},{key:"onXHRLoad",value:function onXHRLoad(){this.eof=!0,this.emit("done")}}]),DownloadBackend}(u(306));t.exports=h},761:(t,i,u)=>{"use strict";var d=u(855),c=u(810),h=u(431);var l=null;t.exports=function instantiate(t){if(!1===t.progressive)return new h(t);if(l||(l=function autoselect(){return d.supported()?d:c.supported()?c:null}()),!l)throw new Error("No supported backend class");return new l(t)}},855:(t,i,u)=>{"use strict";var d=function(){function defineProperties(t,i){for(var u=0;u{"use strict";var i=function(){function defineProperties(t,i){for(var u=0;u0&&void 0!==arguments[0]?arguments[0]:{},i=t.buffer,u=void 0===i?void 0:i,d=t.string,c=void 0===d?void 0:d,h=t.start,l=void 0===h?0:h,_=t.end,p=void 0===_?l+(u?u.byteLength:c?c.length:0):_,m=t.prev,g=void 0===m?null:m,v=t.next,y=void 0===v?null:v,b=t.eof,T=void 0!==b&&b,k=t.empty,P=void 0===k?!(u||c):k,w=t.timestamp,E=void 0===w?Date.now():w;_classCallCheck(this,CacheItem),this.start=l,this.end=p,this.prev=g,this.next=y,this.eof=T,this.empty=P,this.timestamp=E,this.buffer=u,this.string=c,Object.defineProperty(this,"length",{get:function get(){return this.end-this.start}})}return i(CacheItem,[{key:"contains",value:function contains(t){return t>=this.start&&(t{"use strict";var d=function(){function defineProperties(t,i){for(var u=0;u0&&void 0!==arguments[0]?arguments[0]:{},i=t.cacheSize,u=void 0===i?0:i;_classCallCheck(this,CachePool);var d=new c({eof:!0});this.head=d,this.tail=d,this.readOffset=0,this.readCursor=d,this.writeOffset=0,this.writeCursor=d,this.cacheSize=u}return d(CachePool,[{key:"bytesReadable",value:function bytesReadable(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,i=this.readOffset,u=this.readCursor,d=u.last((function(u){return!u.empty&&u.start<=i+t}));return d?Math.min(t,d.end-i):0}},{key:"bytesWritable",value:function bytesWritable(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0,i=this.writeOffset,u=this.writeCursor;if(u.eof)return t;var d=u.last((function(u){return u.empty&&u.start<=i+t}));return d?Math.min(t,d.end-i):0}},{key:"seekRead",value:function seekRead(t){var i=this.head.first((function(i){return i.contains(t)}));if(!i)throw new Error("read seek out of range");this.readOffset=t,this.readCursor=i}},{key:"seekWrite",value:function seekWrite(t){var i=this.head.first((function(i){return i.contains(t)}));if(!i)throw new Error("write seek out of range");this.writeOffset=t,this.writeCursor=i}},{key:"readBytes",value:function readBytes(t){for(var i=t.byteLength,u=this.bytesReadable(i),d=this.readOffset,c=d+u,h=d,l=this.readCursor;l&&!l.empty&&!(l.start>=c);l=l.next){var _=Math.min(c,l.end),p=t.subarray(h-d,_-d);l.readBytes(p,h,_),h=_}return this.readOffset=h,this.readCursor=this.readCursor.first((function(t){return t.contains(h)})),u}},{key:"write",value:function write(t){var i=this.bufferItem(t),u=this.writeCursor;if(!u.empty)throw new Error("write cursor not empty");if(!u.contains(i.end)&&u.end!==i.end)throw new Error("write cursor too small");u.startthis.readOffset+this.chunkSize)&&i.push(u));if(t>this.cacheSize){i.sort((function(t,i){return t.timestamp-i.timestamp}));for(var d=0;d{"use strict";t.exports=u(91)},566:t=>{"use strict";var i=function(){function defineProperties(t,i){for(var u=0;u=0&&u.splice(d,1)}},{key:"emit",value:function emit(t,i){(this._e[t]||[]).slice().forEach((function(t){return t(i)}))}}]),TinyEvents}();t.exports=u},936:(t,i,u)=>{"use strict";var d=function(){function defineProperties(t,i){for(var u=0;u=0&&_>=t.length)return void i(null);var p=t._clampToLength(d.writeOffset+d.bytesWritable(c))-d.writeOffset;if(0===p)i(null);else{var m=t._backend=new h({url:t.url,offset:t._cache.writeOffset,length:p,cachever:t._cachever,progressive:t.progressive}),g=null,v=function checkOpen(){m!==t._backend?(g(),u(new Error("invalid state"))):(m.on("buffer",(function(i){m===t._backend&&t._cache.write(i)})),m.on("done",(function(){m===t._backend&&(-1===t.length&&(t.length=t._backend.offset+t._backend.bytesRead),t._backend=null)})),i(m))},y=function checkError(i){m!==t._backend?u(new Error("invalid state")):(t._backend=null,u(i))};g=function oncomplete(){m.off("open",v),m.off("error",y)},m.on("open",v),m.on("error",y),m.on("cachever",(function(){t._cachever++})),m.load()}}}))}},{key:"_readAhead",value:function _readAhead(){var t=this;return new Promise((function(i,u){t._backend||t.eof?i():t._openBackend().then((function(){i()})).catch((function(t){u(t)}))}))}},{key:"seek",value:function seek(t){var i=this;return new Promise((function(u,d){if(!i.loaded||i.buffering||i.seeking)throw new Error("invalid state");if(t!==(0|t)||t<0)throw new Error("invalid input");if(i.length>=0&&t>i.length)throw new Error("seek past end of file");if(!i.seekable)throw new Error("seek on non-seekable stream");i._backend&&i.abort(),i._cache.seekRead(t),i._cache.seekWrite(t),i._readAhead().then(u).catch(d)}))}},{key:"read",value:function read(t){var i=this;return this.buffer(t).then((function(t){return i.readSync(t)}))}},{key:"readSync",value:function readSync(t){var i=this.bytesAvailable(t),u=new Uint8Array(i);if(this.readBytes(u)!==i)throw new Error("failed to read expected data");return u.buffer}},{key:"readBytes",value:function readBytes(t){if(!this.loaded||this.buffering||this.seeking)throw new Error("invalid state");if(!(t instanceof Uint8Array))throw new Error("invalid input");var i=this._cache.readBytes(t);return this._readAhead(),i}},{key:"buffer",value:function buffer(t){var i=this;return new Promise((function(u,d){if(!i.loaded||i.buffering||i.seeking)throw new Error("invalid state");if(t!==(0|t)||t<0)throw new Error("invalid input");var c=i._clampToLength(i.offset+t),h=c-i.offset,l=i.bytesAvailable(h);l>=h?u(l):(i.buffering=!0,i._openBackend().then((function(u){return u?u.bufferToOffset(c).then((function(){return i.buffering=!1,i.buffer(t)})):Promise.resolve(l)})).then((function(t){i.buffering=!1,u(t)})).catch((function(t){"AbortError"!==t.name&&(i.buffering=!1),d(t)})))}))}},{key:"bytesAvailable",value:function bytesAvailable(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1/0;return this._cache.bytesReadable(t)}},{key:"abort",value:function abort(){this.loading&&(this.loading=!1),this.buffering&&(this.buffering=!1),this.seeking&&(this.seeking=!1),this._backend&&(this._backend.abort(),this._backend=null)}},{key:"getBufferedRanges",value:function getBufferedRanges(){return this._cache.ranges()}},{key:"_clampToLength",value:function _clampToLength(t){return this.length<0?t:Math.min(this.length,t)}}]),StreamFile}();t.exports=l},826:t=>{t.exports={vertex:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aLumaPosition;\nattribute vec2 aChromaPosition;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vLumaPosition = aLumaPosition;\n vChromaPosition = aChromaPosition;\n}\n",fragment:"// inspired by https://github.com/mbebenita/Broadway/blob/master/Player/canvas.js\n\nprecision lowp float;\n\nuniform sampler2D uTextureY;\nuniform sampler2D uTextureCb;\nuniform sampler2D uTextureCr;\nvarying vec2 vLumaPosition;\nvarying vec2 vChromaPosition;\nvoid main() {\n // Y, Cb, and Cr planes are uploaded as LUMINANCE textures.\n float fY = texture2D(uTextureY, vLumaPosition).x;\n float fCb = texture2D(uTextureCb, vChromaPosition).x;\n float fCr = texture2D(uTextureCr, vChromaPosition).x;\n\n // Premultipy the Y...\n float fYmul = fY * 1.1643828125;\n\n // And convert that to RGB!\n gl_FragColor = vec4(\n fYmul + 1.59602734375 * fCr - 0.87078515625,\n fYmul - 0.39176171875 * fCb - 0.81296875 * fCr + 0.52959375,\n fYmul + 2.017234375 * fCb - 1.081390625,\n 1\n );\n}\n",vertexStripe:"precision lowp float;\n\nattribute vec2 aPosition;\nattribute vec2 aTexturePosition;\nvarying vec2 vTexturePosition;\n\nvoid main() {\n gl_Position = vec4(aPosition, 0, 1);\n vTexturePosition = aTexturePosition;\n}\n",fragmentStripe:"// extra 'stripe' texture fiddling to work around IE 11's poor performance on gl.LUMINANCE and gl.ALPHA textures\n\nprecision lowp float;\n\nuniform sampler2D uStripe;\nuniform sampler2D uTexture;\nvarying vec2 vTexturePosition;\nvoid main() {\n // Y, Cb, and Cr planes are mapped into a pseudo-RGBA texture\n // so we can upload them without expanding the bytes on IE 11\n // which doesn't allow LUMINANCE or ALPHA textures\n // The stripe textures mark which channel to keep for each pixel.\n // Each texture extraction will contain the relevant value in one\n // channel only.\n\n float fLuminance = dot(\n texture2D(uStripe, vTexturePosition),\n texture2D(uTexture, vTexturePosition)\n );\n\n gl_FragColor = vec4(fLuminance, fLuminance, fLuminance, 1);\n}\n"}},487:t=>{!function(){"use strict";function FrameSink(t,i){throw new Error("abstract")}FrameSink.prototype.drawFrame=function(t){throw new Error("abstract")},FrameSink.prototype.clear=function(){throw new Error("abstract")},t.exports=FrameSink}()},926:(t,i,u)=>{!function(){"use strict";var i=u(487),d=u(627);function SoftwareFrameSink(t){var i=this,u=t.getContext("2d"),c=null,h=null,l=null;return i.drawFrame=function drawFrame(i){var _=i.format;t.width===_.displayWidth&&t.height===_.displayHeight||(t.width=_.displayWidth,t.height=_.displayHeight),null!==c&&c.width==_.width&&c.height==_.height||function initImageData(t,i){for(var d=(c=u.createImageData(t,i)).data,h=t*i*4,l=0;l{!function(){"use strict";var i=u(487),d=u(826);function WebGLFrameSink(t){var i,u,c=this,h=WebGLFrameSink.contextForCanvas(t);if(null===h)throw new Error("WebGL unavailable");function compileShader(t,i){var u=h.createShader(t);if(h.shaderSource(u,i),h.compileShader(u),!h.getShaderParameter(u,h.COMPILE_STATUS)){var d=h.getShaderInfoLog(u);throw h.deleteShader(u),new Error("GL shader compilation for "+t+" failed: "+d)}return u}var l,_,p,m,g,v,y,b,T,k,P=new Float32Array([-1,-1,1,-1,-1,1,-1,1,1,-1,1,1]),w={},E={},x={};function createOrReuseTexture(t){return w[t]||(w[t]=h.createTexture()),w[t]}function uploadTexture(t,i,u,d){var c=createOrReuseTexture(t);if(h.activeTexture(h.TEXTURE0),WebGLFrameSink.stripe){var l=!w[t+"_temp"],_=createOrReuseTexture(t+"_temp");h.bindTexture(h.TEXTURE_2D,_),l?(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,i/4,u,0,h.RGBA,h.UNSIGNED_BYTE,d)):h.texSubImage2D(h.TEXTURE_2D,0,0,0,i/4,u,h.RGBA,h.UNSIGNED_BYTE,d);var p=w[t+"_stripe"],m=!p;m&&(p=createOrReuseTexture(t+"_stripe")),h.bindTexture(h.TEXTURE_2D,p),m&&(h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,h.NEAREST),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,h.NEAREST),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,i,1,0,h.RGBA,h.UNSIGNED_BYTE,function buildStripe(t){if(x[t])return x[t];for(var i=t,u=new Uint32Array(i),d=0;d{!function(){"use strict";var i=u(877);t.exports={convertYCbCr:function convertYCbCr(t,u){var d=0|t.format.width,c=0|t.format.height,h=0|i(t.format.width/t.format.chromaWidth),l=0|i(t.format.height/t.format.chromaHeight),_=t.y.bytes,p=t.u.bytes,m=t.v.bytes,g=0|t.y.stride,v=0|t.u.stride,y=0|t.v.stride,b=d<<2,T=0,k=0,P=0,w=0,E=0,x=0,A=0,R=0,O=0,S=0,C=0,B=0,D=0,M=0,V=0,I=0,L=0,j=0;if(1==h&&1==l)for(A=0,R=b,j=0,I=0;I>8,u[A+1]=C-D>>8,u[A+2]=C+M>>8,A+=4,C=298*_[k++]|0,u[A]=C+B>>8,u[A+1]=C-D>>8,u[A+2]=C+M>>8,A+=4,C=298*_[P++]|0,u[R]=C+B>>8,u[R+1]=C-D>>8,u[R+2]=C+M>>8,R+=4,C=298*_[P++]|0,u[R]=C+B>>8,u[R+1]=C-D>>8,u[R+2]=C+M>>8,R+=4;A+=b,R+=b,j++}else for(x=0,I=0;I>l)*v|0,E=j*y|0,V=0;V>h)],B=(409*(S=0|m[E+L])|0)-57088|0,D=(100*O|0)+(208*S|0)-34816|0,M=(516*O|0)-70912|0,C=298*_[T++]|0,u[x]=C+B>>8,u[x+1]=C-D>>8,u[x+2]=C+M>>8,x+=4}}}()},877:t=>{!function(){"use strict";t.exports=function depower(t){for(var i=0,u=t>>1;0!=u;)u>>=1,i++;if(t!==1<{!function(){"use strict";var i=u(487),d=u(926),c=u(895),h={FrameSink:i,SoftwareFrameSink:d,WebGLFrameSink:c,attach:function(t,i){return("webGL"in(i=i||{})?i.webGL:c.isAvailable())?new c(t,i):new d(t,i)}};t.exports=h}()}},i={};function __webpack_require__(u){var d=i[u];if(void 0!==d)return d.exports;var c=i[u]={exports:{}};return t[u](c,c.exports,__webpack_require__),c.exports}var u={};return(()=>{"use strict";var t=u,i=__webpack_require__(318);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"OGVCompat",{enumerable:!0,get:function get(){return c.default}}),Object.defineProperty(t,"OGVLoader",{enumerable:!0,get:function get(){return h.default}}),Object.defineProperty(t,"OGVMediaError",{enumerable:!0,get:function get(){return l.default}}),Object.defineProperty(t,"OGVMediaType",{enumerable:!0,get:function get(){return _.default}}),Object.defineProperty(t,"OGVPlayer",{enumerable:!0,get:function get(){return p.default}}),Object.defineProperty(t,"OGVTimeRanges",{enumerable:!0,get:function get(){return m.default}}),t.OGVVersion=void 0;var d=i(__webpack_require__(8)),c=i(__webpack_require__(523)),h=i(__webpack_require__(964)),l=i(__webpack_require__(759)),_=i(__webpack_require__(278)),p=i(__webpack_require__(869)),m=i(__webpack_require__(168)),g="1.8.4-20210702161914-bd3a07f";t.OGVVersion=g,"object"===("undefined"==typeof window?"undefined":(0,d.default)(window))&&(window.OGVCompat=c.default,window.OGVLoader=h.default,window.OGVMediaError=l.default,window.OGVMediaType=_.default,window.OGVTimeRanges=m.default,window.OGVPlayer=p.default,window.OGVVersion=g)})(),u})()})); \ No newline at end of file diff --git a/media/player/videojs/ogvjs/readme_moodle.txt b/media/player/videojs/ogvjs/readme_moodle.txt new file mode 100644 index 00000000000..ac372b99caa --- /dev/null +++ b/media/player/videojs/ogvjs/readme_moodle.txt @@ -0,0 +1,10 @@ +ogv.js 1.8.4 +-------------- +https://github.com/brion/ogv.js + +Instructions to import ogv.js library into Moodle: + +1. Download the latest release from https://github.com/brion/ogv.js/releases + (do not choose "Source code") +2. copy 'ogv-es2017.js' into 'amd/src/local/ogv/ogv.js'. +3. copy all the wasm and js files into 'ogvjs/' folder. diff --git a/media/player/videojs/ogvloader.php b/media/player/videojs/ogvloader.php new file mode 100644 index 00000000000..170b5fb60c1 --- /dev/null +++ b/media/player/videojs/ogvloader.php @@ -0,0 +1,182 @@ +. + +/** + * This file is serving optimised JS and WASM for ogv.js. + * + * @package media_videojs + * @copyright 2021 Huong Nguyen + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +// Disable moodle specific debug messages and any errors in output, +// comment out when debugging or better look into error log! +define('NO_DEBUG_DISPLAY', true); + +// We need just the values from config.php and minlib.php. +define('ABORT_AFTER_CONFIG', true); +require_once('../../../config.php'); // This stops immediately at the beginning of lib/setup.php. +require_once($CFG->dirroot . '/lib/jslib.php'); +require_once($CFG->dirroot . '/lib/wasmlib.php'); + +$slashargument = min_get_slash_argument(); +if (!$slashargument) { + // The above call to min_get_slash_argument should always work. + die('Invalid request'); +} + +$slashargument = ltrim($slashargument, '/'); +if (substr_count($slashargument, '/') < 1) { + header('HTTP/1.0 404 not found'); + die('Slash argument must contain both a revision and a file path'); +} + +// Get all the library files (js and wasm) of the OGV. +$basepath = $CFG->dirroot . '/media/player/videojs/ogvjs/'; +$jsfiles = []; +$files = glob("{$basepath}*.{js,wasm}", GLOB_BRACE); +foreach ($files as $file) { + $jsfiles[] = basename($file); +} + +// Split into revision and module name. +list($rev, $file) = explode('/', $slashargument, 2); +$rev = min_clean_param($rev, 'INT'); +$file = min_clean_param($file, 'SAFEPATH'); + +if (empty($jsfiles) || !in_array($file, $jsfiles)) { + // We can't find the requested file. + header('HTTP/1.0 404 not found'); + exit(0); +} + +// Check if the requesting file is Javascript or Web Assembly. +$iswasm = media_videojs_ogvloader_is_wasm_file($file); + +// Use the caching only for meaningful revision numbers which prevents future cache poisoning. +if ($rev > 0 and $rev < (time() + 60 * 60)) { + // We are lazy loading a single file - so include the filename in the etag. + $etag = sha1($rev . '/' . $file); + $candidate = $CFG->localcachedir . '/ogvloader/' . $etag; + + if (file_exists($candidate)) { + // Cache exist. + if (!empty($_SERVER['HTTP_IF_NONE_MATCH']) || !empty($_SERVER['HTTP_IF_MODIFIED_SINCE'])) { + // We do not actually need to verify the etag value because our files + // never change in cache because we increment the rev parameter. + media_videojs_ogvloader_send_unmodified($iswasm, $candidate, $etag); + } + media_videojs_ogvloader_send_cached($iswasm, $candidate, $etag); + exit(0); + } else { + // Cache does not exist. Create one. + $filecontent = file_get_contents($basepath . $file); + if ($filecontent === false) { + error_log('Failed to load the library ' . $file); + $filecontent = "/* Failed to load library file {$file}. */\n"; + } + + $filecontent = media_videojs_ogvloader_add_module_module_name_if_necessary($iswasm, $filecontent); + media_videojs_ogvloader_write_cache_file_content($iswasm, $candidate, $filecontent); + // Verify nothing failed in cache file creation. + clearstatcache(); + if (file_exists($candidate)) { + media_videojs_ogvloader_send_cached($iswasm, $candidate, $etag); + exit(0); + } + } +} + +// If we've made it here then we're in "dev mode" where everything is lazy loaded. +// So all files will be served one at a time. +$filecontent = file_get_contents($basepath . $file); +$filecontent = rtrim($filecontent); +$filecontent = media_videojs_ogvloader_add_module_module_name_if_necessary($iswasm, $filecontent); +media_videojs_ogvloader_send_uncached($iswasm, $filecontent); + +/** + * Check the given file is a Web Assembly file or not + * + * @param string $filename File name to check + * @return bool Whether the file is Web Assembly or not + */ +function media_videojs_ogvloader_is_wasm_file(string $filename): bool { + $ext = pathinfo($filename, PATHINFO_EXTENSION); + return $ext == 'wasm'; +} + +/** + * Add Moodle module name to the Javascript module if necessary + * + * @param bool $iswasm Whether the file is Web Assembly or not + * @param string $content File content + * @return string + */ +function media_videojs_ogvloader_add_module_module_name_if_necessary(bool $iswasm, string $content): string { + if (!$iswasm && preg_match('/define\(\s*(\[|function)/', $content)) { + // If the JavaScript module has been defined without specifying a name then we'll + // add the Moodle module name now. + $replace = 'define(\'media_videojs/video-lazy\', '; + $search = 'define('; + // Replace only the first occurrence. + $content = implode($replace, explode($search, $content, 2)); + } + + return $content; +} + +/** + * Create cache file content + * + * @param bool $iswasm Whether the file is Web Assembly or not + * @param string $candidate Full file path to cache file + * @param string $filecontent File content + */ +function media_videojs_ogvloader_write_cache_file_content(bool $iswasm, string $candidate, string $filecontent): void { + $iswasm ? wasm_write_cache_file_content($candidate, $filecontent) : js_write_cache_file_content($candidate, $filecontent); +} + +/** + * Send file content with as much caching as possible + * + * @param bool $iswasm Whether the file is Web Assembly or not + * @param string $candidate Full file path to cache file + * @param string $etag Etag + */ +function media_videojs_ogvloader_send_cached(bool $iswasm, string $candidate, string $etag): void { + $iswasm ? wasm_send_cached($candidate, $etag, 'ogvloader.php') : js_send_cached($candidate, $etag, 'ogvloader.php'); +} + +/** + * Send file without any caching + * + * @param bool $iswasm Whether the file is Web Assembly or not + * @param string $ilecontent File content + */ +function media_videojs_ogvloader_send_uncached(bool $iswasm, string $ilecontent): void { + $iswasm ? wasm_send_uncached($ilecontent, 'ogvloader.php') : js_send_uncached($ilecontent, 'ogvloader.php'); +} + +/** + * Send the file not modified headers + * + * @param bool $iswasm Whether the file is Web Assembly or not + * @param int $candidate Full file path to cache file + * @param string $etag Etag + */ +function media_videojs_ogvloader_send_unmodified(bool $iswasm, int $candidate, string $etag): void { + $iswasm ? wasm_send_unmodified(filemtime($candidate), $etag) : js_send_unmodified(filemtime($candidate), $etag); +} diff --git a/media/player/videojs/readme_moodle.txt b/media/player/videojs/readme_moodle.txt index 7c3776ee787..24982597f18 100644 --- a/media/player/videojs/readme_moodle.txt +++ b/media/player/videojs/readme_moodle.txt @@ -36,4 +36,29 @@ Import plugins: define(['media_videojs/video-lazy'] 3. Download https://github.com/videojs/video-js-swf/blob/master/dist/video-js.swf - and place it into 'videojs/video-js.swf' \ No newline at end of file + and place it into 'videojs/video-js.swf' + +4. Download the latest release from https://github.com/HuongNV13/videojs-ogvjs/releases + (do not choose "Source code") + +5. Copy videojs-ogvjs.js into 'amd/src/videojs-ogvjs-lazy.js' + In the beginning of the js file: + + Replace + define(['video.js', 'OGVCompat', 'OGVLoader', 'OGVPlayer'] + with + define(['media_videojs/video-lazy', './local/ogv/ogv'] + + Replace + function (videojs, OGVCompat, OGVLoader, OGVPlayer) + with + function (videojs, ogvBase) + + Replace + var OGVCompat__default = /*#__PURE__*/_interopDefaultLegacy(OGVCompat); + var OGVLoader__default = /*#__PURE__*/_interopDefaultLegacy(OGVLoader); + var OGVPlayer__default = /*#__PURE__*/_interopDefaultLegacy(OGVPlayer); + with + var OGVCompat__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVCompat); + var OGVLoader__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVLoader); + var OGVPlayer__default = /*#__PURE__*/_interopDefaultLegacy(ogvBase.OGVPlayer); \ No newline at end of file diff --git a/media/player/videojs/thirdpartylibs.xml b/media/player/videojs/thirdpartylibs.xml index 1a9bb61b670..b992e141177 100644 --- a/media/player/videojs/thirdpartylibs.xml +++ b/media/player/videojs/thirdpartylibs.xml @@ -35,4 +35,24 @@ 5.4.2 2.0 + + amd/src/local/ogv/ogv.js + ogv.js + MIT + 1.8.4 + + + + ogvjs + ogv.js support files + MIT + 1.8.4 + + + amd/src/videojs-ogvjs-lazy.js + ogv.js Tech plugin for Video.JS + MIT + 0.1.2 + +