refactor: Update video element in Artplayer to support custom canvas or video

This commit updates the `libmedia.js`, `option.d.ts`, `index.js`, `template.js`, and `scheme/index.js` files in the Artplayer repository. The changes introduce a new `video` property in the `Option` type, allowing for the use of a custom video element in Artplayer. The `video` property can be set to `null`, an `HTMLCanvasElement`, or an `HTMLVideoElement`. This enhancement provides flexibility in rendering video content and improves compatibility with different platforms and use cases.
This commit is contained in:
Harvey Zack committed 2024-08-18 18:39:14 +08:00
1 parent 5d6b94afa6
commit 66010cb376
8 files changed
+94 -12

No files matched your search

+4 -5
View File
@@ -124,11 +124,10 @@ export default class Template {
this.$infoClose = this.query('.art-info-close');
this.$contextmenu = this.query('.art-contextmenus');
if (option.Canvas) {
const $canvas = new option.Canvas(this.art);
replaceElement($canvas, this.$video);
addClass($canvas, 'art-video');
this.$video = $canvas;
if (option.video) {
replaceElement(option.video, this.$video);
addClass(option.video, 'art-video');
this.$video = option.video;
}
if (option.backdrop) {