// Assuming you use electron forge,
// and this is the config file
const config: ForgeConfig = {
packagerConfig: {
extraResource: [
// Sox binaries for recording audio
join(__dirname, "sox"),
],
},
}
// To Install
// yarn add https://github.com/navidshad/node-record-lpcm16
// To use
import recorder from "node-record-lpcm16";
recorder.record({
recorder: "sox",
recorderPath: getSoxPath(),
});
2条答案
按热度按时间332nm8kg1#
我最终将sox二进制文件包含到包中。我使用
node-record-lpcm16
包并更新其路径以使用包含的sox二进制文件。这样我就可以将lib路径作为参数传递下去。lx0bsm1f2#
这是正确的使用二进制是最安全的方式。
如何将二进制文件添加到Electron应用程序中?
它应该以这种方式通过包步骤来完成。
步骤:
1.下载适用于任何目标平台的binary version,解压缩它,并将其作为
sox
目录放在项目根目录中。如果需要,可以创建mac,linux,win32
文件夹作为子目录。1.告诉打包器模块包含
sox
目录。sox目录将基于目标平台复制到应用程序的Contents/Resources
中。字符串
1.通过
process.resourcesPath
找到运行时的sox
目录,并根据需要使用它。型
1.现在,您可以打开一个子进程并直接使用
sox
,或者使用这个具有recorderPath
的派生node-record-lpcm16
库来引入sox
路径。型