从主进程在 Electron 中播放音频
Playing Audio in Electron from main process
我正在开发一个电子应用程序,它需要在收到来自 webSocket 连接的消息时播放声音。 websocket 在主进程上处理,因为用户在使用过程中切换页面。我无法从渲染器播放声音,因为我不知道用户目前在哪个页面,webSocket 消息进来了(在最坏的情况下,他在导航时位于页面之间)。
有机会在主进程上播放音频吗?音频文件本地存储在项目文件结构中。
亲切的问候,
BoxSon
我自己找到了解决这个问题的方法:
- 创建并打开隐藏 window。
- 在此window加载一个HTML5音频播放器
- 通过 IPC 向这个隐藏的 window 从 main 发送消息以播放声音。
一点努力,但效果很好。
不要忘记在应用程序关闭时销毁隐藏的window(如果您忘记了这一步,应用程序将不会关闭)。
我发现这个简单的 npm 包可以在没有渲染器的情况下播放声音,并且
你可以轻松地将它包含到你的电子项目中。
首先,您需要通过npm install sound-play
安装或使用npm install sound-play --save
和
直接保存到您的项目中
由此初始化
const sound = require("sound-play");
播放文件只需一行代码
sound.play("file.mp3");
您可以通过this link
在官网了解更多
我正在开发一个电子应用程序,它需要在收到来自 webSocket 连接的消息时播放声音。 websocket 在主进程上处理,因为用户在使用过程中切换页面。我无法从渲染器播放声音,因为我不知道用户目前在哪个页面,webSocket 消息进来了(在最坏的情况下,他在导航时位于页面之间)。
有机会在主进程上播放音频吗?音频文件本地存储在项目文件结构中。
亲切的问候,
BoxSon
我自己找到了解决这个问题的方法:
- 创建并打开隐藏 window。
- 在此window加载一个HTML5音频播放器
- 通过 IPC 向这个隐藏的 window 从 main 发送消息以播放声音。
一点努力,但效果很好。
不要忘记在应用程序关闭时销毁隐藏的window(如果您忘记了这一步,应用程序将不会关闭)。
我发现这个简单的 npm 包可以在没有渲染器的情况下播放声音,并且 你可以轻松地将它包含到你的电子项目中。
首先,您需要通过npm install sound-play
安装或使用npm install sound-play --save
和
由此初始化
const sound = require("sound-play");
播放文件只需一行代码
sound.play("file.mp3");
您可以通过this link
在官网了解更多