我正在使用child_process
和命令行mplayer
在本地計算機上播放音頻,並使用我的Node.JS應用程序。這有效,但它不是一個很好的解決方案。我最大的問題是,它需要從mplayer 500ms開始播放音頻。使用Node.JS播放音頻
有沒有更好的播放音頻的方法?最好壓縮音頻,但我會拿我能得到的。
我正在使用child_process
和命令行mplayer
在本地計算機上播放音頻,並使用我的Node.JS應用程序。這有效,但它不是一個很好的解決方案。我最大的問題是,它需要從mplayer 500ms開始播放音頻。使用Node.JS播放音頻
有沒有更好的播放音頻的方法?最好壓縮音頻,但我會拿我能得到的。
我建議使用node-speaker,它輸出原始PCM數據到您的揚聲器(所以基本上,它播放音頻)。
如果您播放的是mp3文件,您可能需要先將其解碼爲PCM數據,這正是node-lame所做的。
希望有所幫助。
此外,這裏是一個例子:https://gist.github.com/TooTallNate/3947591 – alessioalex
需要一些不需要python的東西... – daniellmb
你找到了嗎?任何不需要python的東西? – John
最簡單的,我發現(在Mac OS)是使用
exec('afplay whatever.mp3', audioEndCallback)
還有['open'](https://developer.apple.com/library/mac/documentation/Darwin/Reference/Manpages/man1/open.1。HTML)命令在OS X上。 – elmigranto
退房node-groove - Node.js的結合libgroove:
這個庫上提供了音頻的解碼和編碼播放列表。它旨在用作音樂播放器應用程序的後端,但它足夠通用,可用作任何音頻處理實用程序的後端。
免責聲明:我寫的圖書館是免費的,開放源代碼,並且不隸屬於任何產品,服務或公司。
感謝您的建議。我真的很喜歡libgroove。不過,你可能想提一提你寫的。 – BonsaiOak
爲什麼這是相關的?答案的質量不受模塊作者的影響。 – andrewrk
我相信@BonsaiOak是正確的。 [幫助中心](http://stackoverflow.com/help/behavior)說:「發佈好的,相關的答案,如果有些(但不是全部)碰巧與您的產品或網站有關,那沒關係。 _必須在你的答案中表明你的聯繫。「 – TachyonVortex
從控制檯播放聲音的另一個好模塊是play。你可以使用包中包含的示例wav文件。示例代碼如下:
var play = require('play');
play.sound('./node_modules/play/wavs/sfx/ding.wav');
通過npm(0.5.0)安裝的版本不執行回調。它看起來好像是在github回購中實現的,但顯然它從未被釋放。 –
您可以使用play-sound
模塊還:
var player = require('play-sound')(opts = {})
player.play('./music/somebody20.flac', function (err) {
if (err) throw err;
console.log("Audio finished");
});
@lanzz是啊,我,好像我什麼,可能需要重新檢查 – Znarkus
,這是什麼應用?你需要通過互聯網真正低延遲的音頻嗎? – Brad