从 Python 中捕获音频
Posted
技术标签:
【中文标题】从 Python 中捕获音频【英文标题】:Capture audio out Python 【发布时间】:2012-06-04 20:41:27 【问题描述】:我想使用 Python 从音频中捕获原始数据。在 Python 文档中,似乎使用 ossaudiodev 可以达到此目的。但是,我使用的是 Ubuntu 11.10,它没有 /dev/dsp:
>>> 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 捕捉我的声卡输出的声音吗?
【问题讨论】:
看到这个link 【参考方案1】:OSS 是用于 Linux 的较旧且已弃用的音频系统。当前的标准是使用 ALSA,并使用 JACK 或 PulseAudio 在 ALSA 之上分层。 Ubuntu 使用 PulseAudio。
您能做的最好的事情就是找到好的 Python 绑定来连接到 PulseAudio。我刚刚在 Google 上进行了快速搜索,没有找到任何适合您的信息,我现在没有时间跟进。
编辑:我只记得 ALSA 确实有 OSS 兼容模式。您也许可以安装 OSS 兼容性的东西,然后只需使用您已有的 Python 代码。
https://help.ubuntu.com/community/alsa-oss
http://www.alsa-project.org/main/index.php/Main_Page
【讨论】:
【参考方案2】:我有一些程序需要 /dev/dsp
才能运行
aoss <PROGRAM NAME AND ARGUMENTS HERE>
如果你在 Ubuntu 的命令行上输入 aoss
,它会告诉你要安装的包,然后安装所需的依赖项。如果它不能立即工作,您可以尝试加载内核模块,例如sudo modprobe snd_mixer_oss
。
【讨论】:
以上是关于从 Python 中捕获音频的主要内容,如果未能解决你的问题,请参考以下文章