add worker

This commit is contained in:
Harvey Zack committed 2022-05-01 22:45:24 +08:00
1 parent 09d1c2ed08
commit 5ff4a8f70b
6 files changed
+64 -31

No files matched your search

@@ -173,26 +173,27 @@ var _getDanmuTop = require("./getDanmuTop");
var _getDanmuTopDefault = parcelHelpers.interopDefault(_getDanmuTop);
class Danmuku {
constructor(art, option){
const { constructor , template } = art;
this.utils = constructor.utils;
this.validator = constructor.validator;
this.$danmuku = template.$danmuku;
this.$player = template.$player;
this.art = art;
this.utils = art.constructor.utils;
this.validator = art.constructor.validator;
this.queue = [];
this.option = {};
this.$refs = [];
this.config(option);
this.isStop = false;
this.isHide = false;
this.animationFrameTimer = null;
this.$danmuku = art.template.$danmuku;
this.$player = art.template.$player;
this.timer = null;
this.config(option);
this.worker = new Worker(require("85d40535eae5f839"));
art.on('video:play', this.start.bind(this));
art.on('video:playing', this.start.bind(this));
art.on('video:pause', this.stop.bind(this));
art.on('video:waiting', this.stop.bind(this));
art.on('resize', this.resize.bind(this));
art.on('destroy', this.stop.bind(this));
art.on('fullscreen', this.reset.bind(this));
art.on('fullscreenWeb', this.reset.bind(this));
art.on('destroy', this.stop.bind(this));
this.load();
}
static get option() {
@@ -282,6 +283,16 @@ class Danmuku {
return danmu.$state === 'ready' || danmu.$state === 'wait' && currentTime + 0.1 >= danmu.time && danmu.time >= currentTime - 0.1;
});
}
postMessage(message = {}) {
return new Promise((resolve)=>{
message.id = Date.now();
this.worker.postMessage(message);
this.worker.onmessage = (event)=>{
const { data } = event;
if (data.id === message.id) resolve(data);
};
});
}
async load() {
try {
let danmus = [];
@@ -360,16 +371,13 @@ class Danmuku {
});
return this;
}
resize() {
return this;
}
reset() {
this.queue.forEach((danmu)=>this.makeWait(danmu)
);
}
update() {
const { clientWidth } = this.$player;
this.animationFrameTimer = window.requestAnimationFrame(()=>{
this.timer = window.requestAnimationFrame(()=>{
if (this.art.playing && !this.isHide) {
this.filter('emit', (danmu)=>{
const emitTime = (Date.now() - danmu.$lastStartTime) / 1000;
@@ -424,7 +432,7 @@ class Danmuku {
stop() {
this.isStop = true;
this.suspend();
window.cancelAnimationFrame(this.animationFrameTimer);
window.cancelAnimationFrame(this.timer);
this.art.emit('artplayerPluginDanmuku:stop');
return this;
}
@@ -472,7 +480,7 @@ class Danmuku {
}
exports.default = Danmuku;
},{"./bilibili":"6a8GK","./getDanmuTop":"eLxSm","@parcel/transformer-js/src/esmodule-helpers.js":"6SDkN"}],"6a8GK":[function(require,module,exports) {
},{"./bilibili":"6a8GK","./getDanmuTop":"eLxSm","@parcel/transformer-js/src/esmodule-helpers.js":"6SDkN","85d40535eae5f839":"cDlY2"}],"6a8GK":[function(require,module,exports) {
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
parcelHelpers.defineInteropFlag(exports);
parcelHelpers.export(exports, "getMode", ()=>getMode
@@ -673,6 +681,9 @@ function getDanmuTop(ins, danmu1) {
}
exports.default = getDanmuTop;
},{"@parcel/transformer-js/src/esmodule-helpers.js":"6SDkN"}]},["gEVO5"], "gEVO5", "parcelRequire93cf")
},{"@parcel/transformer-js/src/esmodule-helpers.js":"6SDkN"}],"cDlY2":[function(require,module,exports) {
module.exports = "data:application/javascript,onmessage%20%3D%20%28event%29%3D%3E%7B%0A%20%20%20%20const%20%7B%20data%20%20%7D%20%3D%20event%3B%0A%20%20%20%20self.postMessage%28%7B%0A%20%20%20%20%20%20%20%20id%3A%20data.id%2C%0A%20%20%20%20%20%20%20%20test%3A%20%27fuck%27%0A%20%20%20%20%7D%29%3B%0A%7D%3B%0A%0A";
},{}]},["gEVO5"], "gEVO5", "parcelRequire93cf")
//# sourceMappingURL=index.js.map
@@ -1 +1 @@
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAAA,mCAAgC;;AAEjB,SAAS,sBAAsB,CAAC,MAAM,EAAE;IACnD,OAAO,CAAC,GAAG,GAAK;QACZ,MAAM,OAAO,GAAG,IAAI,uBAAO,CAAC,GAAG,EAAE,MAAM,CAAC,AAAC;QACzC,OAAO;YACH,IAAI,EAAE,wBAAwB;YAC9B,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAChC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YACpC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAChC,IAAI,MAAM,IAAG;gBACT,OAAO,OAAO,CAAC,MAAM,CAAC;aACzB;SACJ,CAAC;KACL,CAAC;CACL;kBAduB,sBAAsB;AAgB9C,MAAM,CAAC,wBAAwB,CAAC,GAAG,sBAAsB,CAAC;;;AClB1D;;AAAA,qCAAuD;AACvD,2CAAwC;;AAEzB,MAAM,OAAO;IACxB,YAAY,GAAG,EAAE,MAAM,CAAE;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC;QAE3C,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;QAEpC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,GAAG,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACxC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/C,IAAI,CAAC,IAAI,EAAE,CAAC;KACf;IAED,WAAW,MAAM,GAAG;QAChB,OAAO;YACH,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,CAAC;YACR,MAAM,EAAE;AAAC,kBAAE;AAAE,mBAAG;aAAC;YACjB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,IAAM,IAAI;YAAA;YAClB,WAAW,EAAE,IAAI;YACjB,mBAAmB,EAAE,KAAK;SAC7B,CAAC;KACL;IAED,WAAW,MAAM,GAAG;QAChB,OAAO;YACH,OAAO,EAAE,uBAAuB;YAChC,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,QAAQ;YACjB,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,UAAU;YAClB,WAAW,EAAE,SAAS;YACtB,mBAAmB,EAAE,SAAS;SACjC,CAAC;KACL;IAED,IAAI,QAAQ,GAAG;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;KACrF;IAED,IAAI,SAAS,GAAG;QACZ,MAAM,EAAE,KAAK,CAAA,EAAE,GAAG,IAAI,CAAC,KAAK,AAAC;QAC7B,MAAM,EAAE,OAAO,CAAA,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,AAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,AAAC;QAEpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EACzB,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAGjD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,GAAG,AAAC;YACtC,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;SACvE;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACnC;IAED,IAAI,YAAY,GAAG;QACf,MAAM,EAAE,KAAK,CAAA,EAAE,GAAG,IAAI,CAAC,KAAK,AAAC;QAC7B,MAAM,EAAE,OAAO,CAAA,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,AAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,AAAC;QAEpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EACzB,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAGjD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,GAAG,AAAC;YACtC,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;SACvE;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACnC;IAED,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,GAAK,KAAK,CAAC,MAAM,KAAK,KAAK;QAAA,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;KAC7E;IAED,OAAO,CAAC,IAAI,EAAE;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,AAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;KAC/C;IAED,MAAM,GAAG;QACL,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,AAAC;QACnC,IAAI,SAAS,EAAE,OAAO,SAAS,CAAC;QAEhC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,AAAC;QAE3C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC;;;;;;;;;;;;;QAatB,CAAC,CAAC;QAEF,OAAO,IAAI,CAAC;KACf;IAED,QAAQ,GAAG;QACP,MAAM,EAAE,WAAW,CAAA,EAAE,GAAG,IAAI,CAAC,GAAG,AAAC;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,GAAK;YAChC,OACI,KAAK,CAAC,MAAM,KAAK,OAAO,IACvB,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,WAAW,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,WAAW,GAAG,GAAG,AAAC,CACjG;SACL,CAAC,CAAC;KACN;IAED,MAAM,IAAI,GAAG;QACT,IAAI;YACA,IAAI,MAAM,GAAG,EAAE,AAAC;YAChB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,UAAU,EACzC,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;iBAClC,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,EACrD,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;iBAChC,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,QAAQ,EAC9C,MAAM,GAAG,MAAMLine truncated
{"mappings":"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 truncated
@@ -0,0 +1 @@
data:application/javascript,%2F%2F%20modules%20are%20defined%20as%20an%20array%0A%2F%2F%20%5B%20module%20function%2C%20map%20of%20requires%20%5D%0A%2F%2F%0A%2F%2F%20map%20of%20requires%20is%20short%20require%20name%20-%3E%20numeric%20require%0A%2F%2F%0A%2F%2F%20anything%20defined%20in%20a%20previous%20bundle%20is%20accessed%20via%20the%0A%2F%2F%20orig%20method%20which%20is%20the%20require%20for%20previous%20bundles%0A%0A%28function%20%28modules%2C%20entry%2C%20mainEntry%2C%20parcelRequireName%2C%20globalName%29%20%7B%0A%20%20%2F%2a%20eslint-disable%20no-undef%20%2a%2F%0A%20%20var%20globalObject%20%3D%0A%20%20%20%20typeof%20globalThis%20%21%3D%3D%20%27undefined%27%0A%20%20%20%20%20%20%3F%20globalThis%0A%20%20%20%20%20%20%3A%20typeof%20self%20%21%3D%3D%20%27undefined%27%0A%20%20%20%20%20%20%3F%20self%0A%20%20%20%20%20%20%3A%20typeof%20window%20%21%3D%3D%20%27undefined%27%0A%20%20%20%20%20%20%3F%20window%0A%20%20%20%20%20%20%3A%20typeof%20global%20%21%3D%3D%20%27undefined%27%0A%20%20%20%20%20%20%3F%20global%0A%20%20%20%20%20%20%3A%20%7B%7D%3B%0A%20%20%2F%2a%20eslint-enable%20no-undef%20%2a%2F%0A%0A%20%20%2F%2F%20Save%20the%20require%20from%20previous%20bundle%20to%20this%20closure%20if%20any%0A%20%20var%20previousRequire%20%3D%0A%20%20%20%20typeof%20globalObject%5BparcelRequireName%5D%20%3D%3D%3D%20%27function%27%20%26%26%0A%20%20%20%20globalObject%5BparcelRequireName%5D%3B%0A%0A%20%20var%20cache%20%3D%20previousRequire.cache%20%7C%7C%20%7B%7D%3B%0A%20%20%2F%2F%20Do%20not%20use%20%60require%60%20to%20prevent%20Webpack%20from%20trying%20to%20bundle%20this%20call%0A%20%20var%20nodeRequire%20%3D%0A%20%20%20%20typeof%20module%20%21%3D%3D%20%27undefined%27%20%26%26%0A%20%20%20%20typeof%20module.require%20%3D%3D%3D%20%27function%27%20%26%26%0A%20%20%20%20module.require.bind%28module%29%3B%0A%0A%20%20function%20newRequire%28name%2C%20jumped%29%20%7B%0A%20%20%20%20if%20%28%21cache%5Bname%5D%29%20%7B%0A%20%20%20%20%20%20if%20%28%21modules%5Bname%5D%29%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20if%20we%20cannot%20find%20the%20module%20within%20our%20internal%20map%20or%0A%20%20%20%20%20%20%20%20%2F%2F%20cache%20jump%20to%20the%20current%20global%20require%20ie.%20the%20last%20bundle%0A%20%20%20%20%20%20%20%20%2F%2F%20that%20was%20added%20to%20the%20page.%0A%20%20%20%20%20%20%20%20var%20currentRequire%20%3D%0A%20%20%20%20%20%20%20%20%20%20typeof%20globalObject%5BparcelRequireName%5D%20%3D%3D%3D%20%27function%27%20%26%26%0A%20%20%20%20%20%20%20%20%20%20globalObject%5BparcelRequireName%5D%3B%0A%20%20%20%20%20%20%20%20if%20%28%21jumped%20%26%26%20currentRequire%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20return%20currentRequire%28name%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%2F%2F%20If%20there%20are%20other%20bundles%20on%20this%20page%20the%20require%20from%20the%0A%20%20%20%20%20%20%20%20%2F%2F%20previous%20one%20is%20saved%20to%20%27previousRequire%27.%20Repeat%20this%20as%0A%20%20%20%20%20%20%20%20%2F%2F%20many%20times%20as%20there%20are%20bundles%20until%20the%20module%20is%20found%20or%0A%20%20%20%20%20%20%20%20%2F%2F%20we%20exhaust%20the%20require%20chain.%0A%20%20%20%20%20%20%20%20if%20%28previousRequire%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20return%20previousRequire%28name%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%2F%2F%20Try%20the%20node%20require%20function%20if%20it%20exists.%0A%20%20%20%20%20%20%20%20if%20%28nodeRequire%20%26%26%20typeof%20name%20%3D%3D%3D%20%27string%27%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20return%20nodeRequire%28name%29%3B%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20var%20err%20%3D%20new%20Error%28%22Cannot%20find%20module%20%27%22%20%2B%20name%20%2B%20%22%27%22%29%3B%0A%20%20%20%20%20%20%20%20err.code%20%3D%20%27MODULE_NOT_FOUND%27%3B%0A%20%20%20%20%20%20%20%20throw%20err%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20localRequire.resolve%20%3D%20resolve%3B%0A%20%20%20%20%20%20localRequire.cache%20%3D%20%7B%7D%3B%0A%0A%20%20%20%20%20%20var%20module%20%3D%20%28cache%5Bname%5D%20%3D%20new%20newRequire.Module%28name%29%29%3B%0A%0A%20%20%20%20%20%20modules%5Bname%5D%5B0%5D.call%28%0A%20%20%20%20%20%20%20%20module.exports%2C%0A%20%20%20%20%20%20%20%20localRequire%2C%0A%20%20%20%20%20%20%20%20module%2C%0A%20%20%20%20%20%20%20%20module.exports%2C%0A%20%20%20%20%20%20%20%20this%0A%20%20%20%20%20%20%29%3B%0A%20%20%20%20%7D%0A%0A%20%20%20%20return%20cache%5Bname%5D.exports%3B%0A%0A%20%20%20%20function%20localRequire%28x%29%20%7B%0A%20%20%20%20%20%20var%20res%20%3D%20localRequire.resolve%28x%29%3B%0A%20%20%20%20%20%20return%20res%20%3D%3D%3D%20false%20%3F%20%7B%7D%20%3A%20newRequire%28res%29%3B%0A%20%20%20%20%7D%0A%0A%20%20%20%20function%20resolve%28x%29%20%7B%0A%20%20%20%20%20%20var%20id%20%3D%20modules%5Bname%5D%5B1%5D%5Bx%5D%3B%0A%20%20%20%20%20%20return%20id%20%21%3D%20null%20%3F%20id%20%3A%20x%3B%0A%20%20%20%20%7D%0A%20%20%7D%0A%0A%20%20function%20Module%28moduleName%29%20%7B%0A%20%20%20%20this.id%20%3D%20modulLine truncated
+1
View File
@@ -33,6 +33,7 @@
"@babel/preset-react": "^7.16.7",
"@parcel/config-default": "^2.5.0",
"@parcel/core": "^2.5.0",
"@parcel/optimizer-data-url": "^2.5.0",
"@parcel/reporter-cli": "^2.5.0",
"@parcel/transformer-inline-string": "^2.5.0",
"@parcel/transformer-less": "^2.5.0",
@@ -3,28 +3,31 @@ import getDanmuTop from './getDanmuTop';
export default class Danmuku {
constructor(art, option) {
this.art = art;
this.utils = art.constructor.utils;
this.validator = art.constructor.validator;
const { constructor, template } = art;
this.utils = constructor.utils;
this.validator = constructor.validator;
this.$danmuku = template.$danmuku;
this.$player = template.$player;
this.art = art;
this.queue = [];
this.option = {};
this.$refs = [];
this.config(option);
this.isStop = false;
this.isHide = false;
this.animationFrameTimer = null;
this.$danmuku = art.template.$danmuku;
this.$player = art.template.$player;
this.timer = null;
this.config(option);
this.worker = new Worker(new URL('data-url:./worker.js', import.meta.url));
art.on('video:play', this.start.bind(this));
art.on('video:playing', this.start.bind(this));
art.on('video:pause', this.stop.bind(this));
art.on('video:waiting', this.stop.bind(this));
art.on('resize', this.resize.bind(this));
art.on('destroy', this.stop.bind(this));
art.on('fullscreen', this.reset.bind(this));
art.on('fullscreenWeb', this.reset.bind(this));
art.on('destroy', this.stop.bind(this));
this.load();
}
@@ -136,6 +139,19 @@ export default class Danmuku {
});
}
postMessage(message = {}) {
return new Promise((resolve) => {
message.id = Date.now();
this.worker.postMessage(message);
this.worker.onmessage = (event) => {
const { data } = event;
if (data.id === message.id) {
resolve(data);
}
};
});
}
async load() {
try {
let danmus = [];
@@ -230,17 +246,13 @@ export default class Danmuku {
return this;
}
resize() {
return this;
}
reset() {
this.queue.forEach((danmu) => this.makeWait(danmu));
}
update() {
const { clientWidth } = this.$player;
this.animationFrameTimer = window.requestAnimationFrame(() => {
this.timer = window.requestAnimationFrame(() => {
if (this.art.playing && !this.isHide) {
this.filter('emit', (danmu) => {
const emitTime = (Date.now() - danmu.$lastStartTime) / 1000;
@@ -309,7 +321,7 @@ export default class Danmuku {
stop() {
this.isStop = true;
this.suspend();
window.cancelAnimationFrame(this.animationFrameTimer);
window.cancelAnimationFrame(this.timer);
this.art.emit('artplayerPluginDanmuku:stop');
return this;
}
@@ -0,0 +1,8 @@
onmessage = (event) => {
const { data } = event;
self.postMessage({
id: data.id,
test: 'fuck',
});
};