如何在Electron中播放自定义声音

c90pui9n  于 2022-12-08  发布在  Electron
关注(0)|答案(1)|浏览(681)

我使用的是Electron 8.0.3,我正在尝试播放自定义声音。以下是我正在做的事情:

const notif = new Notification({
    title: 'Finished Download',
    body: 'test',
    sound: 'vapp/assets/sounds/mighty_sound.mp3',
  });

  notif.show();

它似乎没有播放那个声音,而是默认的macOS声音。我试过:

  • 使用绝对路径,如'/Users/<name>/Desktop/workspace/proj/vapp/assets/sounds/sound.mp3'
  • 打包应用程序以便捆绑声音
  • 播放不同的文件类型:.wav、. mp3、.aiff格式
  • 选择/System/Library/Sounds中可能存在的其他macOS声音

不管出于什么原因,它播放的声音都是一样的。
我已参考此文档

zy1mlcev

zy1mlcev1#

我的方法是将electron的Notification模块的silent属性设置为true,这样操作系统的声音就不会播放,然后使用这个sound-play npm包来播放我自己的声音。

const showNotification = () => {
  new Notification({
    title: "Elon Musk is Tesla CEO",
    body: "The automaker just got...",
    silent: true, //// Disable sound by operating system
  }).show();

  // Play custom sound
  const sound = require("sound-play");
  sound.play("./src/quite-impressed.mp3");
};

相关问题