【发布时间】:2019-02-13 13:23:58
【问题描述】:
我正在做一个小项目,我正在使用带有 alpha 的 webms 作为翻转卡片的纹理(使用 backface-visibility: hidden 和 css 动画)
这是我需要动画开始时使用的代码
var vids = document.querySelectorAll("video");
for (var i = 0; i < vids.length; i++) {
vids[i].play();
cards[i].classList.remove('flip');
cards[i].classList.add('fade');
await sleep(10);
}
这适用于最多 4-5 张卡片,但我想播放最多 13 张卡片,现在这样做会使一半的视频丢掉大部分帧(无法使用)。
所有<video/> 标记都有相同的 1-2mb webm 源,它只能在本地运行,并且只能在 chromium/chrome 中运行。
我想知道是否有一种方法来“实例化”视频,就像通常在游戏中使用几何一样。
我想可以解码一次,然后使用画布多次渲染相同的视频,但现在我正在寻找非画布解决方案。如果有这样的事情。
我已经尝试过预加载视频,希望缓存它可以提高性能
<link rel="preload" as="video" href="vid.webm">
但这并没有真正改变任何事情。
【问题讨论】:
标签: html css performance video optimization