tplayer.js
Version:
Flexible and easy Dash/HLS/DRM integration for HTML5 video.
1,995 lines (1,225 loc) • 74.9 kB
Plain Text
/*!
* @overview es6-promise - a tiny implementation of Promises/A+.
* @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
* @license Licensed under MIT license
* See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE
* @version v4.2.8+1e68dce6
*/
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <http://feross.org>
* @license MIT
*/
/*! ../../../../core/Debug */
/*! ../../../../core/FactoryMaker */
/*! ../../../constants/Constants */
/*! ../../../constants/MetricsConstants */
/*! ../../../core/Debug */
/*! ../../../core/EventBus */
/*! ../../../core/FactoryMaker */
/*! ../../../core/Utils */
/*! ../../../core/errors/ErrorsBase */
/*! ../../../core/events/Events */
/*! ../../../externals/cea608-parser */
/*! ../../../externals/xml2json */
/*! ../../../streaming/constants/Constants */
/*! ../../MediaPlayerEvents */
/*! ../../MetricsReportingEvents */
/*! ../../SwitchRequest */
/*! ../../constants/Constants */
/*! ../../constants/DashConstants */
/*! ../../constants/MetricsConstants */
/*! ../../constants/ProtectionConstants */
/*! ../../core/Debug */
/*! ../../core/EventBus */
/*! ../../core/FactoryMaker */
/*! ../../core/Settings */
/*! ../../core/Utils */
/*! ../../core/errors/Errors */
/*! ../../core/events/Events */
/*! ../../core/events/EventsBase */
/*! ../../dash/DashHandler */
/*! ../../dash/constants/DashConstants */
/*! ../../dash/controllers/SegmentsController */
/*! ../../dash/models/DashManifestModel */
/*! ../../dash/utils/SegmentsUtils */
/*! ../../dash/vo/BaseURL */
/*! ../../dash/vo/UTCTiming */
/*! ../../externals/base64 */
/*! ../../externals/cea608-parser */
/*! ../../streaming/MediaPlayerEvents */
/*! ../../streaming/constants/ConformanceViolationConstants */
/*! ../../streaming/constants/Constants */
/*! ../../streaming/net/HTTPLoader */
/*! ../../streaming/net/SchemeLoaderFactory */
/*! ../../streaming/net/XHRLoader */
/*! ../../streaming/thumbnail/ThumbnailTracks */
/*! ../../streaming/utils/BoxParser */
/*! ../../streaming/utils/ObjectUtils */
/*! ../../streaming/utils/URLUtils */
/*! ../../streaming/vo/DashJSError */
/*! ../../utils/CustomTimeRanges */
/*! ../../utils/HandlerHelpers */
/*! ../../utils/MetricSerialiser */
/*! ../../utils/RNG */
/*! ../../vo/DashJSError */
/*! ../../vo/metrics/HTTPRequest */
/*! ../CommonEncryption */
/*! ../FragmentLoader */
/*! ../ManifestUpdater */
/*! ../MediaPlayerEvents */
/*! ../MetricsReportingEvents */
/*! ../SegmentBaseLoader */
/*! ../SourceBufferSink */
/*! ../Stream */
/*! ../SwitchRequest */
/*! ../WebmSegmentBaseLoader */
/*! ../XlinkLoader */
/*! ../constants/ConformanceViolationConstants */
/*! ../constants/Constants */
/*! ../constants/DashConstants */
/*! ../constants/MetricsConstants */
/*! ../controller/level-helper */
/*! ../controllers/BlacklistController */
/*! ../controllers/ProtectionKeyController */
/*! ../core/Debug */
/*! ../core/EventBus */
/*! ../core/FactoryMaker */
/*! ../core/Settings */
/*! ../core/Utils */
/*! ../core/Version */
/*! ../core/errors/Errors */
/*! ../core/events/Events */
/*! ../core/events/EventsBase */
/*! ../crypt/decrypter */
/*! ../dash/DashAdapter */
/*! ../dash/DashHandler */
/*! ../dash/DashMetrics */
/*! ../dash/constants/DashConstants */
/*! ../dash/controllers/RepresentationController */
/*! ../dash/controllers/SegmentBaseController */
/*! ../dash/controllers/SegmentsController */
/*! ../dash/parser/DashParser */
/*! ../dash/utils/TimelineConverter */
/*! ../demux/aacdemuxer */
/*! ../demux/chunk-cache */
/*! ../demux/id3 */
/*! ../demux/mp3demuxer */
/*! ../demux/mp4demuxer */
/*! ../demux/transmuxer */
/*! ../demux/transmuxer-interface */
/*! ../demux/transmuxer-worker.ts */
/*! ../demux/tsdemuxer */
/*! ../errors */
/*! ../errors/ProtectionErrors */
/*! ../events */
/*! ../is-supported */
/*! ../loader/fragment */
/*! ../loader/fragment-loader */
/*! ../loader/load-stats */
/*! ../metrics/MetricsHandlerFactory */
/*! ../metrics/MetricsReportingEvents */
/*! ../models/BaseURLTreeModel */
/*! ../models/CmcdModel */
/*! ../models/DashManifestModel */
/*! ../models/FragmentModel */
/*! ../models/LowLatencyThroughputModel */
/*! ../net/XHRLoader */
/*! ../remux/mp4-remuxer */
/*! ../remux/passthrough-remuxer */
/*! ../reporting/ReportingFactory */
/*! ../rules/DroppedFramesHistory */
/*! ../rules/RulesContext */
/*! ../rules/SwitchRequest */
/*! ../rules/SwitchRequestHistory */
/*! ../rules/ThroughputHistory */
/*! ../rules/abr/ABRRulesCollection */
/*! ../streaming/MediaPlayerEvents */
/*! ../streaming/constants/Constants */
/*! ../streaming/constants/MetricsConstants */
/*! ../streaming/models/MetricsModel */
/*! ../streaming/net/URLLoader */
/*! ../streaming/utils/EBMLParser */
/*! ../streaming/utils/URLUtils */
/*! ../streaming/vo/DashJSError */
/*! ../streaming/vo/FragmentRequest */
/*! ../streaming/vo/metrics/HTTPRequest */
/*! ../streaming/vo/metrics/PlayList */
/*! ../task-loop */
/*! ../thumbnail/ThumbnailTracks */
/*! ../types/cmcd */
/*! ../types/level */
/*! ../types/loader */
/*! ../types/transmuxer */
/*! ../utils/BaseURLSelector */
/*! ../utils/BoxParser */
/*! ../utils/CustomTimeRanges */
/*! ../utils/InitCache */
/*! ../utils/ListSegmentsGetter */
/*! ../utils/ManifestParsing */
/*! ../utils/ObjectUtils */
/*! ../utils/RequestModifier */
/*! ../utils/SegmentBaseGetter */
/*! ../utils/SegmentsUtils */
/*! ../utils/SupervisorTools */
/*! ../utils/TTMLParser */
/*! ../utils/TemplateSegmentsGetter */
/*! ../utils/TimelineSegmentsGetter */
/*! ../utils/URLUtils */
/*! ../utils/VTTParser */
/*! ../utils/attr-list */
/*! ../utils/binary-search */
/*! ../utils/buffer-helper */
/*! ../utils/cea-608-parser */
/*! ../utils/codecs */
/*! ../utils/discontinuities */
/*! ../utils/ewma */
/*! ../utils/ewma-bandwidth-estimator */
/*! ../utils/imsc1-ttml-parser */
/*! ../utils/logger */
/*! ../utils/mediakeys-helper */
/*! ../utils/mediasource-helper */
/*! ../utils/mp4-tools */
/*! ../utils/output-filter */
/*! ../utils/texttrack-utils */
/*! ../utils/time-ranges */
/*! ../utils/timescale-conversion */
/*! ../utils/typed-array */
/*! ../utils/webvtt-parser */
/*! ../vo/AdaptationSet */
/*! ../vo/BaseURL */
/*! ../vo/BitrateInfo */
/*! ../vo/ClearKeyKeySet */
/*! ../vo/DVBErrors */
/*! ../vo/DashJSError */
/*! ../vo/DataChunk */
/*! ../vo/Event */
/*! ../vo/EventStream */
/*! ../vo/FragmentRequest */
/*! ../vo/IsoBox */
/*! ../vo/IsoBoxSearchInfo */
/*! ../vo/KeyMessage */
/*! ../vo/KeyPair */
/*! ../vo/KeySystemAccess */
/*! ../vo/KeySystemConfiguration */
/*! ../vo/LicenseRequest */
/*! ../vo/LicenseResponse */
/*! ../vo/MediaCapability */
/*! ../vo/Metrics */
/*! ../vo/MetricsList */
/*! ../vo/Mpd */
/*! ../vo/NeedKey */
/*! ../vo/PatchOperation */
/*! ../vo/Period */
/*! ../vo/Range */
/*! ../vo/Reporting */
/*! ../vo/Representation */
/*! ../vo/SimpleXPath */
/*! ../vo/TextTrackInfo */
/*! ../vo/Thumbnail */
/*! ../vo/ThumbnailTrackInfo */
/*! ../vo/URIFragmentData */
/*! ../vo/UTCTiming */
/*! ../vo/metrics/BufferLevel */
/*! ../vo/metrics/BufferState */
/*! ../vo/metrics/DVRInfo */
/*! ../vo/metrics/DroppedFrames */
/*! ../vo/metrics/HTTPRequest */
/*! ../vo/metrics/ManifestUpdate */
/*! ../vo/metrics/PlayList */
/*! ../vo/metrics/RepresentationSwitch */
/*! ../vo/metrics/RequestsQueue */
/*! ../vo/metrics/SchedulingInfo */
/*! ./ */
/*! ./../../../webpack/buildin/global.js */
/*! ./../../core/EventBus */
/*! ./../../core/errors/Errors */
/*! ./../../core/events/Events */
/*! ./../../dash/vo/MediaInfo */
/*! ./../../node-libs-browser/node_modules/buffer/index.js */
/*! ./../../node-libs-browser/node_modules/timers-browserify/main.js */
/*! ./../../process/browser.js */
/*! ./../../webpack/buildin/global.js */
/*! ./../CommonEncryption */
/*! ./../core/Debug */
/*! ./../core/EventBus */
/*! ./../core/errors/Errors */
/*! ./../core/events/Events */
/*! ./../drm/KeySystemClearKey */
/*! ./../drm/KeySystemPlayReady */
/*! ./../drm/KeySystemW3CClearKey */
/*! ./../drm/KeySystemWidevine */
/*! ./../process/browser.js */
/*! ./../servers/ClearKey */
/*! ./../servers/DRMToday */
/*! ./../servers/PlayReady */
/*! ./../servers/Widevine */
/*! ./../vo/DashJSError */
/*! ./../vo/Segment */
/*! ./../webpack/buildin/global.js */
/*! ./AbandonRequestsRule */
/*! ./BaseMatcher */
/*! ./BolaRule */
/*! ./CommonProperty */
/*! ./CoreEvents */
/*! ./DefaultURLUtils */
/*! ./DroppedFramesRule */
/*! ./EmbeddedTextHtmlRender */
/*! ./ErrorsBase */
/*! ./EventBus */
/*! ./EventController */
/*! ./EventsBase */
/*! ./FactoryMaker */
/*! ./FetchLoader */
/*! ./FragmentRequest */
/*! ./InsufficientBufferRule */
/*! ./IsoFile */
/*! ./L2ARule.js */
/*! ./LearningAbrController */
/*! ./LoLpQoEEvaluator */
/*! ./LoLpWeightSelector */
/*! ./ManifestLoader */
/*! ./ManifestUpdater */
/*! ./MapNode */
/*! ./MediaPlayer */
/*! ./MediaPlayerEvents */
/*! ./MediaSourceController */
/*! ./MetricsController */
/*! ./MetricsHandlersController */
/*! ./MetricsReportingEvents */
/*! ./ProtectionEvents */
/*! ./QoeInfo */
/*! ./RangeController */
/*! ./ReportingController */
/*! ./SegmentsUtils */
/*! ./StreamProcessor */
/*! ./SwitchHistoryRule */
/*! ./SwitchRequest */
/*! ./TextSourceBuffer */
/*! ./TextTracks */
/*! ./ThroughputRule */
/*! ./ThumbnailTracks */
/*! ./TimeSyncController */
/*! ./Utils.js */
/*! ./XHRLoader */
/*! ./_stream_duplex */
/*! ./_stream_readable */
/*! ./_stream_transform */
/*! ./_stream_writable */
/*! ./aac-helper */
/*! ./adts */
/*! ./aes-crypto */
/*! ./aes-decryptor */
/*! ./base-audio-demuxer */
/*! ./base-playlist-controller */
/*! ./base-stream-controller */
/*! ./baseUrlResolution/BasicSelector */
/*! ./baseUrlResolution/DVBSelector */
/*! ./buffer-operation-queue */
/*! ./chunk-cache */
/*! ./config */
/*! ./constants/Constants */
/*! ./constants/DashConstants */
/*! ./constants/MetricsConstants */
/*! ./controller/abr-controller */
/*! ./controller/audio-stream-controller */
/*! ./controller/audio-track-controller */
/*! ./controller/buffer-controller */
/*! ./controller/cap-level-controller */
/*! ./controller/cmcd-controller */
/*! ./controller/eme-controller */
/*! ./controller/fps-controller */
/*! ./controller/fragment-tracker */
/*! ./controller/id3-track-controller */
/*! ./controller/latency-controller */
/*! ./controller/level-controller */
/*! ./controller/stream-controller */
/*! ./controller/subtitle-stream-controller */
/*! ./controller/subtitle-track-controller */
/*! ./controller/timeline-controller */
/*! ./controllers/AbrController */
/*! ./controllers/BaseURLController */
/*! ./controllers/BlacklistController */
/*! ./controllers/BufferController */
/*! ./controllers/FragmentController */
/*! ./controllers/GapController */
/*! ./controllers/MediaController */
/*! ./controllers/MetricsCollectionController */
/*! ./controllers/PlaybackController */
/*! ./controllers/ProtectionController */
/*! ./controllers/ProtectionKeyController */
/*! ./controllers/ScheduleController */
/*! ./controllers/StreamController */
/*! ./controllers/XlinkController */
/*! ./doc */
/*! ./dummy-demuxed-track */
/*! ./errors */
/*! ./errors/ProtectionErrors */
/*! ./events */
/*! ./events/Events */
/*! ./exp-golomb */
/*! ./fast-aes-key */
/*! ./fragment */
/*! ./fragment-finders */
/*! ./fragment-tracker */
/*! ./gap-controller */
/*! ./handlers/BufferLevelHandler */
/*! ./handlers/DVBErrorsHandler */
/*! ./handlers/GenericMetricHandler */
/*! ./handlers/HttpListHandler */
/*! ./html */
/*! ./id3 */
/*! ./index_mediaplayerOnly */
/*! ./internal/streams/BufferList */
/*! ./internal/streams/destroy */
/*! ./internal/streams/stream */
/*! ./is-supported */
/*! ./isd */
/*! ./level-details */
/*! ./level-helper */
/*! ./level-key */
/*! ./lib/_stream_duplex.js */
/*! ./lib/_stream_passthrough.js */
/*! ./lib/_stream_readable.js */
/*! ./lib/_stream_transform.js */
/*! ./lib/_stream_writable.js */
/*! ./load-stats */
/*! ./loader/key-loader */
/*! ./loader/playlist-loader */
/*! ./logger */
/*! ./lolp/LoLpRule.js */
/*! ./m3u8-parser */
/*! ./maps/RepresentationBaseValuesMap */
/*! ./maps/SegmentValuesMap */
/*! ./matchers/DateTimeMatcher */
/*! ./matchers/DurationMatcher */
/*! ./matchers/NumericMatcher */
/*! ./matchers/StringMatcher */
/*! ./metrics/MetricsHandlerFactory */
/*! ./models/CmcdModel */
/*! ./models/DashManifestModel */
/*! ./models/FragmentModel */
/*! ./models/ManifestModel */
/*! ./models/MediaPlayerModel */
/*! ./models/PatchManifestModel */
/*! ./models/ProtectionModel_01b */
/*! ./models/ProtectionModel_21Jan2015 */
/*! ./models/ProtectionModel_3Feb2014 */
/*! ./models/URIFragmentModel */
/*! ./models/VideoModel */
/*! ./mp4-generator */
/*! ./mp4-tools */
/*! ./mpegaudio */
/*! ./names */
/*! ./net/SchemeLoaderFactory */
/*! ./net/URLLoader */
/*! ./node_modules/webpack/buildin/global.js */
/*! ./objectiron */
/*! ./readable */
/*! ./reporters/DVBReporting */
/*! ./reporting/ReportingFactory */
/*! ./sample-aes */
/*! ./src/core/Debug */
/*! ./src/core/FactoryMaker */
/*! ./src/core/Version */
/*! ./src/polyfills/number */
/*! ./src/streaming/MediaPlayer */
/*! ./src/streaming/MediaPlayerFactory */
/*! ./src/streaming/metrics/MetricsReporting */
/*! ./src/streaming/protection/Protection */
/*! ./src/streaming/utils/Capabilities */
/*! ./styles */
/*! ./text/NotFragmentedTextBufferController */
/*! ./text/TextController */
/*! ./texttrack-utils */
/*! ./thumbnail/ThumbnailController */
/*! ./timescale-conversion */
/*! ./tsdemuxer */
/*! ./typed-array */
/*! ./utils */
/*! ./utils/BoxParser */
/*! ./utils/Capabilities */
/*! ./utils/CapabilitiesFilter */
/*! ./utils/DOMStorage */
/*! ./utils/DVBErrorsTranslator */
/*! ./utils/ErrorHandler */
/*! ./utils/RequestModifier */
/*! ./utils/Round10 */
/*! ./utils/SegmentsUtils */
/*! ./utils/SupervisorTools */
/*! ./utils/URLUtils */
/*! ./utils/cues */
/*! ./utils/fetch-loader */
/*! ./utils/logger */
/*! ./utils/mediakeys-helper */
/*! ./utils/mediasource-helper */
/*! ./utils/xhr-loader */
/*! ./vo/DashJSError */
/*! ./vo/Event */
/*! ./vo/HeadRequest */
/*! ./vo/ManifestInfo */
/*! ./vo/MediaInfo */
/*! ./vo/RepresentationInfo */
/*! ./vo/Segment */
/*! ./vo/StreamInfo */
/*! ./vo/TextRequest */
/*! ./vo/metrics/HTTPRequest */
/*! ./vo/metrics/PlayList */
/*! ./vttcue */
/*! ./vttparser */
/*! ./webvtt-parser */
/*! base64-js */
/*! buffer */
/*! codem-isoboxer */
/*! codem-isoboxer v0.3.6 https://github.com/madebyhiro/codem-isoboxer/blob/master/LICENSE.txt */
/*! core-util-is */
/*! es6-promise/auto */
/*! eventemitter3 */
/*! events */
/*! exports provided: AttrList */
/*! exports provided: BufferHelper */
/*! exports provided: CMCDVersion, CMCDObjectType, CMCDStreamingFormat, CMCDStreamType */
/*! exports provided: ChunkMetadata */
/*! exports provided: ElementaryStreamTypes, BaseSegment, Fragment, Part */
/*! exports provided: ErrorTypes, ErrorDetails */
/*! exports provided: Events */
/*! exports provided: FragmentState, FragmentTracker */
/*! exports provided: HTTPRequest, HTTPRequestTrace */
/*! exports provided: HlsSkip, getSkipValue, HlsUrlParameters, Level */
/*! exports provided: IMSC1_CODEC, parseIMSC1 */
/*! exports provided: KeySystems, requestMediaKeySystemAccess */
/*! exports provided: LevelDetails */
/*! exports provided: LevelKey */
/*! exports provided: LoadStats */
/*! exports provided: ManifestUpdate, ManifestUpdateStreamInfo, ManifestUpdateRepresentationInfo */
/*! exports provided: PlayList, PlayListTrace */
/*! exports provided: PlaylistContextType, PlaylistLevelType */
/*! exports provided: Row, CaptionScreen, default */
/*! exports provided: STALL_MINIMUM_DURATION_MS, MAX_START_GAP_JUMP, SKIP_BUFFER_HOLE_STEP_SECONDS, SKIP_BUFFER_RANGE_START, default */
/*! exports provided: State, default */
/*! exports provided: SubtitleStreamController */
/*! exports provided: THUMBNAILS_SCHEME_ID_URIS, default */
/*! exports provided: TimelineController */
/*! exports provided: addGroupId, assignTrackIdsByGroup, updatePTS, updateFragPTSDTS, mergeDetails, mapPartIntersection, mapFragmentIntersection, adjustSliding, addSliding, computeReloadInterval, getFragmentWithSN, getPartWith */
/*! exports provided: appendFrame, parseHeader, isHeaderPattern, isHeader, canParse, probe */
/*! exports provided: bin2str, readUint16, readUint32, writeUint32, findBox, parseSegmentIndex, parseInitSegment, getStartDTS, getDuration, computeRawDurationFromSamples, offsetStartDTS, segmentValidRange, appendUint8Array */
/*! exports provided: checkParameterType, checkInteger, checkRange, checkIsVideoOrAudioType */
/*! exports provided: default */
/*! exports provided: default, LoadError */
/*! exports provided: default, MediaPlayer, FactoryMaker, Debug */
/*! exports provided: default, MediaPlayer, Protection, MetricsReporting, MediaPlayerFactory, Debug, supportsMediaSource */
/*! exports provided: default, isPromise, TransmuxConfig, TransmuxState */
/*! exports provided: default, normalizePts */
/*! exports provided: discardEPB, default */
/*! exports provided: dummyTrack */
/*! exports provided: enableLogs, logger */
/*! exports provided: fetchSupported, default */
/*! exports provided: findFirstFragWithCC, shouldAlignOnDiscontinuities, findDiscontinuousReferenceFrag, adjustSlidingStart, alignStream, alignPDT, alignFragmentByPDTDelta, alignMediaPlaylistByPDT */
/*! exports provided: findFragmentByPDT, findFragmentByPTS, fragmentWithinToleranceTest, pdtWithinToleranceTest, findFragWithCC */
/*! exports provided: generateCueId, parseWebVTT */
/*! exports provided: getAudioConfig, isHeaderPattern, getHeaderLength, getFullFrameLength, canGetFrameLength, isHeader, canParse, probe, initTrackConfig, getFrameDuration, parseFrameHeader, appendFrame */
/*! exports provided: getMediaSource */
/*! exports provided: getVersionString */
/*! exports provided: hlsDefaultConfig, mergeConfig, enableStreamingMode */
/*! exports provided: initPTSFn, default */
/*! exports provided: isCodecType, isCodecSupportedInMp4 */
/*! exports provided: isFiniteNumber, MAX_SAFE_INTEGER */
/*! exports provided: isHeader, isFooter, getID3Data, canParse, getTimeStamp, isTimeStampFrame, getID3Frames, decodeFrame, utf8ArrayToStr, testables */
/*! exports provided: isSupported, changeTypeSupported */
/*! exports provided: parseTimeStamp, fixLineBreaks, VTTParser */
/*! exports provided: removePadding, default */
/*! exports provided: sendAddTrackEvent, addCueToTrack, clearCurrentCues, removeCuesInRange, getCuesInRange */
/*! exports provided: sliceUint8 */
/*! exports provided: supportsMediaSource, default */
/*! exports provided: toTimescaleFromBase, toTimescaleFromScale, toMsFromMpegTsClock, toMpegTsClockFromTimescale */
/*! exports provided: unescapeDollarsInTemplate, replaceIDForTemplate, replaceTokenForTemplate, getIndexBasedSegment, getTimeBasedSegment */
/*! fast-deep-equal */
/*! http://mths.be/fromcodepoint v0.1.0 by @mathias */
/*! ieee754 */
/*! imsc */
/*! inherits */
/*! isarray */
/*! no static exports found */
/*! path-browserify */
/*! process-nextick-args */
/*! readable-stream/duplex.js */
/*! readable-stream/passthrough.js */
/*! readable-stream/readable.js */
/*! readable-stream/transform.js */
/*! readable-stream/writable.js */
/*! safe-buffer */
/*! sax */
/*! setimmediate */
/*! stream */
/*! string_decoder */
/*! string_decoder/ */
/*! url-toolkit */
/*! util */
/*! util-deprecate */
/*! webworkify-webpack */
/*!******************!*\
!*** ./index.js ***!
\******************/
/*!********************!*\
!*** ./src/hls.ts ***!
\********************/
/*!**********************!*\
!*** util (ignored) ***!
\**********************/
/*!***********************!*\
!*** ./src/config.ts ***!
\***********************/
/*!***********************!*\
!*** ./src/errors.ts ***!
\***********************/
/*!***********************!*\
!*** ./src/events.ts ***!
\***********************/
/*!**************************!*\
!*** ./src/demux/id3.ts ***!
\**************************/
/*!**************************!*\
!*** ./src/task-loop.ts ***!
\**************************/
/*!***************************!*\
!*** ./src/core/Debug.js ***!
\***************************/
/*!***************************!*\
!*** ./src/core/Utils.js ***!
\***************************/
/*!***************************!*\
!*** ./src/demux/adts.ts ***!
\***************************/
/*!***************************!*\
!*** ./src/types/cmcd.ts ***!
\***************************/
/*!***************************!*\
!*** ./src/utils/cues.ts ***!
\***************************/
/*!***************************!*\
!*** ./src/utils/ewma.ts ***!
\***************************/
/*!****************************!*\
!*** ./src/dash/vo/Mpd.js ***!
\****************************/
/*!****************************!*\
!*** ./src/types/level.ts ***!
\****************************/
/*!*****************************!*\
!*** ./externals/base64.js ***!
\*****************************/
/*!*****************************!*\
!*** ./src/core/Version.js ***!
\*****************************/
/*!*****************************!*\
!*** ./src/is-supported.ts ***!
\*****************************/
/*!*****************************!*\
!*** ./src/types/loader.ts ***!
\*****************************/
/*!*****************************!*\
!*** ./src/utils/codecs.ts ***!
\*****************************/
/*!*****************************!*\
!*** ./src/utils/logger.ts ***!
\*****************************/
/*!*****************************!*\
!*** ./src/utils/vttcue.ts ***!
\*****************************/
/*!******************************!*\
!*** ./src/core/EventBus.js ***!
\******************************/
/*!******************************!*\
!*** ./src/core/Settings.js ***!
\******************************/
/*!******************************!*\
!*** ./src/dash/vo/Event.js ***!
\******************************/
/*!*******************************!*\
!*** ./externals/xml2json.js ***!
\*******************************/
/*!*******************************!*\
!*** ./src/dash/vo/Period.js ***!
\*******************************/
/*!********************************!*\
!*** ./src/crypt/decrypter.ts ***!
\********************************/
/*!********************************!*\
!*** ./src/dash/vo/BaseURL.js ***!
\********************************/
/*!********************************!*\
!*** ./src/dash/vo/Segment.js ***!
\********************************/
/*!********************************!*\
!*** ./src/demux/mpegaudio.ts ***!
\********************************/
/*!********************************!*\
!*** ./src/demux/tsdemuxer.ts ***!
\********************************/
/*!********************************!*\
!*** ./src/loader/fragment.ts ***!
\********************************/
/*!********************************!*\
!*** ./src/utils/attr-list.ts ***!
\********************************/
/*!********************************!*\
!*** ./src/utils/mp4-tools.ts ***!
\********************************/
/*!********************************!*\
!*** ./src/utils/vttparser.ts ***!
\********************************/
/*!*********************************!*\
!*** ./src/crypt/aes-crypto.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/dash/DashAdapter.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/dash/DashHandler.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/dash/DashMetrics.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/aacdemuxer.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/exp-golomb.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/mp3demuxer.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/mp4demuxer.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/sample-aes.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/transmuxer.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/loader/level-key.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/polyfills/number.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/remux/aac-helper.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/streaming/Stream.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/types/transmuxer.ts ***!
\*********************************/
/*!*********************************!*\
!*** ./src/utils/xhr-loader.ts ***!
\*********************************/
/*!**********************************!*\
!*** ./index_mediaplayerOnly.js ***!
\**********************************/
/*!**********************************!*\
!*** ./src/core/FactoryMaker.js ***!
\**********************************/
/*!**********************************!*\
!*** ./src/dash/vo/MediaInfo.js ***!
\**********************************/
/*!**********************************!*\
!*** ./src/dash/vo/UTCTiming.js ***!
\**********************************/
/*!**********************************!*\
!*** ./src/demux/chunk-cache.ts ***!
\**********************************/
/*!**********************************!*\
!*** ./src/loader/key-loader.ts ***!
\**********************************/
/*!**********************************!*\
!*** ./src/loader/load-stats.ts ***!
\**********************************/
/*!**********************************!*\
!*** ./src/remux/mp4-remuxer.ts ***!
\**********************************/
/*!**********************************!*\
!*** ./src/utils/time-ranges.ts ***!
\**********************************/
/*!**********************************!*\
!*** ./src/utils/typed-array.ts ***!
\**********************************/
/*!***********************************!*\
!*** (webpack)/buildin/global.js ***!
\***********************************/
/*!***********************************!*\
!*** ./src/core/errors/Errors.js ***!
\***********************************/
/*!***********************************!*\
!*** ./src/core/events/Events.js ***!
\***********************************/
/*!***********************************!*\
!*** ./src/crypt/fast-aes-key.ts ***!
\***********************************/
/*!***********************************!*\
!*** ./src/dash/utils/Round10.js ***!
\***********************************/
/*!***********************************!*\
!*** ./src/dash/vo/StreamInfo.js ***!
\***********************************/
/*!***********************************!*\
!*** ./src/loader/m3u8-parser.ts ***!
\***********************************/
/*!***********************************!*\
!*** ./src/utils/fetch-loader.ts ***!
\***********************************/
/*!************************************!*\
!*** ./externals/cea608-parser.js ***!
\************************************/
/*!************************************!*\
!*** ./src/crypt/aes-decryptor.ts ***!
\************************************/
/*!************************************!*\
!*** ./src/dash/vo/EventStream.js ***!
\************************************/
/*!************************************!*\
!*** ./src/dash/vo/SimpleXPath.js ***!
\************************************/
/*!************************************!*\
!*** ./src/remux/mp4-generator.ts ***!
\************************************/
/*!************************************!*\
!*** ./src/streaming/vo/IsoBox.js ***!
\************************************/
/*!************************************!*\
!*** ./src/utils/binary-search.ts ***!
\************************************/
/*!************************************!*\
!*** ./src/utils/buffer-helper.ts ***!
\************************************/
/*!************************************!*\
!*** ./src/utils/output-filter.ts ***!
\************************************/
/*!************************************!*\
!*** ./src/utils/webvtt-parser.ts ***!
\************************************/
/*!*************************************!*\
!*** ./node_modules/sax/lib/sax.js ***!
\*************************************/
/*!*************************************!*\
!*** ./src/dash/vo/ManifestInfo.js ***!
\*************************************/
/*!*************************************!*\
!*** ./src/loader/level-details.ts ***!
\*************************************/
/*!*************************************!*\
!*** ./src/utils/cea-608-parser.ts ***!
\*************************************/
/*!**************************************!*\
!*** ./src/dash/vo/AdaptationSet.js ***!
\**************************************/
/*!**************************************!*\
!*** ./src/streaming/MediaPlayer.js ***!
\**************************************/
/*!**************************************!*\
!*** ./src/streaming/XlinkLoader.js ***!
\**************************************/
/*!**************************************!*\
!*** ./src/utils/discontinuities.ts ***!
\**************************************/
/*!**************************************!*\
!*** ./src/utils/texttrack-utils.ts ***!
\**************************************/
/*!***************************************!*\
!*** ./node_modules/ieee754/index.js ***!
\***************************************/
/*!***************************************!*\
!*** ./node_modules/isarray/index.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/core/errors/ErrorsBase.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/core/events/CoreEvents.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/core/events/EventsBase.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/dash/SegmentBaseLoader.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/dash/parser/DashParser.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/dash/parser/objectiron.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/dash/vo/PatchOperation.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/dash/vo/Representation.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/loader/fragment-loader.ts ***!
\***************************************/
/*!***************************************!*\
!*** ./src/loader/playlist-loader.ts ***!
\***************************************/
/*!***************************************!*\
!*** ./src/streaming/vo/DataChunk.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/streaming/vo/Thumbnail.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/utils/mediakeys-helper.ts ***!
\***************************************/
/*!****************************************!*\
!*** ./src/controller/level-helper.ts ***!
\****************************************/
/*!****************************************!*\
!*** ./src/demux/transmuxer-worker.ts ***!
\****************************************/
/*!****************************************!*\
!*** ./src/streaming/net/URLLoader.js ***!
\****************************************/
/*!****************************************!*\
!*** ./src/streaming/net/XHRLoader.js ***!
\****************************************/
/*!****************************************!*\
!*** ./src/streaming/utils/IsoFile.js ***!
\****************************************/
/*!****************************************!*\
!*** ./src/utils/imsc1-ttml-parser.ts ***!
\****************************************/
/*!*****************************************!*\
!*** ./node_modules/base64-js/index.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./node_modules/process/browser.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/dash/parser/maps/MapNode.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/dash/utils/SegmentsUtils.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/demux/base-audio-demuxer.ts ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/FragmentLoader.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/ManifestLoader.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/net/HTTPLoader.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/utils/URLUtils.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/vo/BitrateInfo.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/vo/DashJSError.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/vo/HeadRequest.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/vo/MetricsList.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/streaming/vo/TextRequest.js ***!
\*****************************************/
/*!*****************************************!*\
!*** ./src/utils/mediasource-helper.ts ***!
\*****************************************/
/*!******************************************!*\
!*** ./node_modules/es6-promise/auto.js ***!
\******************************************/
/*!******************************************!*\
!*** ./src/controller/abr-controller.ts ***!
\******************************************/
/*!******************************************!*\
!*** ./src/controller/eme-controller.ts ***!
\******************************************/
/*!******************************************!*\
!*** ./src/controller/fps-controller.ts ***!
\******************************************/
/*!******************************************!*\
!*** ./src/controller/gap-controller.ts ***!
\******************************************/
/*!******************************************!*\
!*** ./src/demux/dummy-demuxed-track.ts ***!
\******************************************/
/*!******************************************!*\
!*** ./src/remux/passthrough-remuxer.ts ***!
\******************************************/
/*!******************************************!*\
!*** ./src/streaming/ManifestUpdater.js ***!
\******************************************/
/*!******************************************!*\
!*** ./src/streaming/StreamProcessor.js ***!
\******************************************/
/*!******************************************!*\
!*** ./src/streaming/net/FetchLoader.js ***!
\******************************************/
/*!******************************************!*\
!*** ./src/streaming/text/TextTracks.js ***!
\******************************************/
/*!******************************************!*\
!*** ./src/streaming/utils/BoxParser.js ***!
\******************************************/
/*!******************************************!*\
!*** ./src/streaming/utils/InitCache.js ***!
\******************************************/
/*!******************************************!*\
!*** ./src/streaming/utils/VTTParser.js ***!
\******************************************/
/*!*******************************************!*\
!*** ./node_modules/safe-buffer/index.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/controller/cmcd-controller.ts ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/dash/WebmSegmentBaseLoader.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/dash/vo/RepresentationInfo.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/demux/transmuxer-interface.ts ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/streaming/SourceBufferSink.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/streaming/metrics/vo/Range.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/streaming/models/CmcdModel.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/streaming/utils/DOMStorage.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/streaming/utils/EBMLParser.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/streaming/utils/TTMLParser.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/streaming/vo/TextTrackInfo.js ***!
\*******************************************/
/*!*******************************************!*\
!*** ./src/utils/timescale-conversion.ts ***!
\*******************************************/
/*!********************************************!*\
!*** ./src/controller/fragment-finders.ts ***!
\********************************************/
/*!********************************************!*\
!*** ./src/controller/fragment-tracker.ts ***!
\********************************************/
/*!********************************************!*\
!*** ./src/controller/level-controller.ts ***!
\********************************************/
/*!********************************************!*\
!*** ./src/streaming/MediaPlayerEvents.js ***!
\********************************************/
/*!********************************************!*\
!*** ./src/streaming/metrics/utils/RNG.js ***!
\********************************************/
/*!********************************************!*\
!*** ./src/streaming/models/VideoModel.js ***!
\********************************************/
/*!********************************************!*\
!*** ./src/streaming/rules/abr/L2ARule.js ***!
\********************************************/
/*!********************************************!*\
!*** ./src/streaming/utils/ObjectUtils.js ***!
\********************************************/
/*!*********************************************!*\
!*** ./node_modules/eventemitter3/index.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/controller/buffer-controller.ts ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/controller/stream-controller.ts ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/dash/constants/DashConstants.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/dash/utils/SegmentBaseGetter.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/dash/utils/TimelineConverter.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/MediaPlayerFactory.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/metrics/vo/Metrics.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/rules/RulesContext.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/rules/abr/BolaRule.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/utils/Capabilities.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/utils/ErrorHandler.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/vo/FragmentRequest.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/vo/URIFragmentData.js ***!
\*********************************************/
/*!*********************************************!*\
!*** ./src/streaming/vo/metrics/DVRInfo.js ***!
\*********************************************/
/*!**********************************************!*\
!*** ./node_modules/imsc/src/main/js/doc.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./node_modules/imsc/src/main/js/isd.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/controller/latency-controller.ts ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/dash/models/DashManifestModel.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/dash/utils/ListSegmentsGetter.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/streaming/constants/Constants.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/streaming/models/MetricsModel.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/streaming/rules/SwitchRequest.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/streaming/text/TextController.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/streaming/vo/IsoBoxSearchInfo.js ***!
\**********************************************/
/*!**********************************************!*\
!*** ./src/streaming/vo/metrics/PlayList.js ***!
\**********************************************/
/*!***********************************************!*\
!*** ./node_modules/core-util-is/lib/util.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./node_modules/fast-deep-equal/index.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./node_modules/imsc/src/main/js/html.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./node_modules/imsc/src/main/js/main.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./node_modules/path-browserify/index.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./src/controller/timeline-controller.ts ***!
\***********************************************/
/*!***********************************************!*\
!*** ./src/dash/models/PatchManifestModel.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./src/streaming/metrics/vo/DVBErrors.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./src/streaming/metrics/vo/Reporting.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./src/streaming/models/FragmentModel.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./src/streaming/models/ManifestModel.js ***!
\***********************************************/
/*!***********************************************!*\
!*** ./src/utils/ewma-bandwidth-estimator.ts ***!
\***********************************************/
/*!************************************************!*\
!*** ./node_modules/imsc/src/main/js/names.js ***!
\************************************************/
/*!************************************************!*\
!*** ./node_modules/imsc/src/main/js/utils.js ***!
\************************************************/
/*!************************************************!*\
!*** ./node_modules/util-deprecate/browser.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/controller/cap-level-controller.ts ***!
\************************************************/
/*!************************************************!*\
!*** ./src/controller/id3-track-controller.ts ***!
\************************************************/
/*!************************************************!*\
!*** ./src/dash/parser/maps/CommonProperty.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/protection/Protection.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/protection/vo/KeyPair.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/protection/vo/NeedKey.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/text/TextSourceBuffer.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/utils/BaseURLSelector.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/utils/DefaultURLUtils.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/utils/RequestModifier.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/utils/SupervisorTools.js ***!
\************************************************/
/*!************************************************!*\
!*** ./src/streaming/vo/ThumbnailTrackInfo.js ***!
\************************************************/
/*!*************************************************!*\
!*** ./node_modules/imsc/src/main/js/styles.js ***!
\*************************************************/
/*!*************************************************!*\
!*** ./node_modules/stream-browserify/index.js ***!
\*************************************************/
/*!*************************************************!*\
!*** ./src/dash/parser/matchers/BaseMatcher.js ***!
\*************************************************/
/*!*************************************************!*\
!*** ./src/streaming/rules/abr/lolp/QoeInfo.js ***!
\*************************************************/
/*!*************************************************!*\
!*** ./src/streaming/utils/CustomTimeRanges.js ***!
\*************************************************/
/*!*************************************************!*\
!*** ./src/streaming/vo/metrics/BufferLevel.js ***!
\*************************************************/
/*!*************************************************!*\
!*** ./src/streaming/vo/metrics/BufferState.js ***!
\*************************************************/
/*!*************************************************!*\
!*** ./src