用Node.JS播放audio

我正在使用child_process和命令行mplayer在本地机器上播放audio,使用我的Node.JS应用程序。 这可行,但这不是一个很好的解决scheme。 我最大的问题是,从mplayer花费500ms开始播放audio。

有没有更好的方法来播放audio? 最好压缩audio,但我会拿我能得到的。

我想你在问什么是在nodejs生态系统中使用audio的好模块?

每当你有这种types的问题,你应该先去npmjs ,只需input一个适当的关键字。

以下是在npmjs网站上find的与audio相关的模块列表。

对我来说,子包的音箱看起来不错。

我build议使用节点扬声器 ,它输出原始的PCM数据到您的扬声器(所以基本上,它播放audio)。

如果你正在播放类似mp3文件的文件,你可能需要首先将其解码为PCM数据,这正是节点跛脚 。

希望有所帮助。

检查node-groove – Node.js绑定到libgroove:

该库提供播放列表上audio的解码和编码。 它旨在用作音乐播放器应用程序的后端,但它足够通用,可用作任何audio处理实用程序的后端。

免责声明:我写的图书馆是免费的,开放源码,并且不隶属于任何产品,服务或公司。

我发现最简单的(在Mac OS上)就是使用

 exec('afplay whatever.mp3', audioEndCallback) 

另一个从控制台播放声音的好模块是播放 。 你可以使用包内包含的示例wav文件。 示例代码如下所示:

 var play = require('play'); play.sound('./node_modules/play/wavs/sfx/ding.wav'); 

您还可以使用play-sound模块:

 var player = require('play-sound')(opts = {}) player.play('./music/somebody20.flac', function (err) { if (err) throw err; console.log("Audio finished"); });