相关疑难解决方法(0)

使用WebAssembly调用Web API方法

是否可以将Web API与WebAssembly 一起使用?如果是这样,怎么样?我对Navigator界面更感兴趣.

webassembly

21
推荐指数
1
解决办法
3512
查看次数

使用 WebAssembly 在 Canvas 上绘制一系列图像是否更快?

我想问使用 WebAssembly/WASM 将一系列图像绘制到画布中是否更快、更节省内存?

我之所以这么问,是因为我已经测试过在主 UI 和网络工作人员中绘制一系列图像(动画)。对于少数画布(1-5 个画布),性能是可以忍受的,但是对于更多画布(如 20-25),场景会有点不同,渲染变得慢动作。

这是主 UI 中的代码:

const videoDecoder = new Worker("videoDecoder.js");
const canvas = document.querySelector("#canvas");
const offscreen = canvas.transferControlToOffscreen();
videoDecoder.postMessage({ action: 'init', canvas: offscreen }, [offscreen] );
Run Code Online (Sandbox Code Playgroud)

这是我的网络工作者:

onmessage = async function (e) {
    const blob = e.data;
    blob.arrayBuffer().then(arrayBuffer => {
        const uint8Array = new Uint8Array(arrayBuffer);
        for(;;;) {
           const offsetIdx = ...;
           const endIdx = ...;
           const jpegArray = uint8Array.slice(offsetIdx, endIdx);
           const blob = new Blob([jpegArray], {type: "image/jpeg"});
           drawImage(blob);
        }
    } …
Run Code Online (Sandbox Code Playgroud)

html javascript html5-canvas emscripten webassembly

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

webassembly ×2

emscripten ×1

html ×1

html5-canvas ×1

javascript ×1