npm程序包中的嵌入Emscripten WebAssembly模块

问题描述 投票:0回答:1

我正在构建一个npm软件包,其中包含一些从Emscripten模块“胶水代码”中加载的WebAssembly。

目前,WASM是通过静态指定的URL从粘合代码中获取的

// emscripten glue code
import rppgLoader from './set_asm.js';

async load() {
  // load webassembly code
  this.instance = rppgLoader({
  locateFile(path) {
    return `${process.env.PUBLIC_URL}/wasm/set_asm.wasm`;
  }
});

此URL是特定于应用程序的,因此与必须包含所有内容且与大多数构建系统(webpack,browserify,...)兼容的npm模块不兼容

[我尝试遵循Google工程师@surma的a gist,其目的是使wasm / emscripten和webpack协同工作,但没有运气(请参阅要点的最后评论)

我想要实现的是对用户透明的npm模块。例如:

npm install x
import { y } from "x";

应该工作。其中包括wasm代码,并且与大多数捆绑程序兼容。

这可能吗?如果是这样,是否有使它工作的npm软件包的示例?

干杯!

我正在构建一个npm软件包,其中包含一些从Emscripten模块“胶水代码”中加载的WebAssembly。现在,通过静态指定的URL从胶水代码中获取WASM // //脚本胶水...

npm webpack webassembly emscripten
1个回答
0
投票

[我将WASM模块捆绑到opus-stream-decoder NPM包中,可以使用新的ES模块opus-stream-decoder语法或更旧的test-* files来查看显示导入它的test-*。>

© www.soinside.com 2019 - 2024. All rights reserved.