0

我想使用 Python 从音频中捕获原始数据。在 Python 文档中,似乎使用 ossaudiodev 可以达到此目的。但是,我使用的是没有 /dev/dsp 的 Ubuntu 11.10:

>>> import ossaudiodev
>>> ossaudiodev.open('r');
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: '/dev/dsp'

有没有人知道如何使用 Python 捕获我的声卡输出的声音?

4

2 回答 2

3

OSS 是用于 Linux 的较旧且已弃用的音频系统。当前的标准是使用 ALSA,并使用 JACK 或 PulseAudio 在 ALSA 之上分层。Ubuntu 使用 PulseAudio。

您可以做的最好的事情是找到用于连接到 PulseAudio 的良好 Python 绑定。我刚刚在 Google 上进行了快速搜索,没有找到任何适合您的信息,而且我现在没有时间跟进更多信息。

编辑:我只记得 ALSA 确实有 OSS 兼容模式。您也许可以安装 OSS 兼容性的东西,然后只需使用您已有的 Python 代码。

https://help.ubuntu.com/community/alsa-oss

http://www.alsa-project.org/main/index.php/Main_Page

于 2012-06-04T20:56:02.327 回答
0

我有需要/dev/dsp使用的程序

aoss <PROGRAM NAME AND ARGUMENTS HERE>

如果你aoss在 Ubuntu 的命令行上输入,它会告诉你要安装的包,然后应该安装所需的依赖项。如果它不能立即工作,您可以尝试加载内核模块,例如sudo modprobe snd_mixer_oss.

于 2012-09-20T14:06:36.127 回答