用于麦克风和扬声器的Ruby宝石

时间:2013-12-09 14:52:11

标签: ruby audio microphone

我正在制作一个在本地网络上进行群组音频聊天的程序(这可以帮助课堂上的学生随机分组,而不是旁边的学生)。

它顺利进行直到我找不到宝石才能访问麦克风和扬声器。有人建议我可以在Windows上使用win32 api,或者在Linux上使用一些shell命令。但我希望如果可能的话,我可以用ruby来做。

有人可以给我一个基于ruby gem的解决方案来访问麦克风和扬声器吗? 如果我错过任何必要的细节,请告诉我。

提前致谢。

1 个答案:

答案 0 :(得分:3)

您可以尝试Ruby-PortAudio

  

此软件包包含对PortAudio api的Ruby绑定。 PortAudio是一个交叉   音频硬件的平台接口。

     

ruby​​-portaudio包支持PortAudio apis:blocking和   无阻塞。阻塞API允许Ruby脚本迭代填充   然后将样本缓冲区写入音频硬件(更高版本将   也支持从缓冲区读取)。非阻塞api允许Ruby程序   充当外部回调定义的音频流的控制器   功能。因为回调函数可能在中断中运行,所以不是   在Ruby中实现一个真的很可行。但是,您可以编写回调   在C扩展中的函数,或者你可以使用LLVM或LibJIT构建自己的函数   http://github.com/jvoorhis/Motivik