UNPKG

@oplayer/mpegts

Version:

mpegts.js plugin for oplayer

9 lines (8 loc) 1.71 kB
/** * name: @oplayer/mpegts * version: v1.2.26-beta.0 * description: mpegts.js plugin for oplayer * author: shiyiya * homepage: https://github.com/shiyiya/oplayer */ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@oplayer/core")):"function"==typeof define&&define.amd?define(["@oplayer/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).OMpegts=t(e.OPlayer)}(this,(function(e){"use strict";const t="oplayer-plugin-mpegts",i=/(flv|ts|m2ts)(#|\?|$)/i,s=(e,t)=>!(!t.format||!["flv","m2ts","mpegts"].includes(t.format))||("auto"===t.format||void 0===t.format)&&i.test(t.src),r=class r{constructor(e){this.key="mpegts",this.name=t,this.version="1.2.26-beta.0",this.options={matcher:s,config:void 0},Object.assign(this.options,e)}apply(e){return this.player=e,this}async load(t,s){var o;let n=t.$video,a=t.options;const l=this.options,g=l.matcher,p=l.library;return!!g(n,s)&&(r.library||(r.library=globalThis.mpegts||(p?await e.loadSDK(p,"mpegts"):(await import("mpegts.js/dist/mpegts.js")).default),r.library.LoggingControl.applyConfig({enableAll:!1})),!!r.library.isSupported()&&(r.library.LoggingControl.addLogListener(this.logListener.bind(this)),this.instance=r.library.createPlayer({url:s.src,isLive:a.isLive,type:s.format||(null==(o=i.exec(s.src))?void 0:o[0])},this.options.config),this.instance.attachMediaElement(n),this.instance.load(),this))}destroy(){var e;null==(e=this.instance)||e.destroy(),r.library.LoggingControl.removeLogListener(this.logListener.bind(this))}logListener(e,i){"error"===e&&this.player.emit("error",{level:e,msg:i,pluginName:t,message:i})}};r.library=globalThis.mpegts;let o=r;return function(e){return new o(e)}}));