使用Python读取输入声音信号

Vic*_*ira 29 python audio soundcard python-2.7

我需要从插孔连接的麦克风获取声音信号,并使用数据在Python中立即处理.

处理和后续步骤很清楚.我迷失了只是从程序中获取信号.渠道数量无关紧要,一个就足够了.我不会播放声音,所以声卡上不需要ASIO.

我的问题是:如何从Python中捕获Jack音频?(如果有一个包,有充分记录和利基的例子,那将是很好的:-).

alr*_*alr 38

你试过pyaudio吗?
安装:python -m pip install pyaudio
录制示例,来自官方网站:

python -m pip install pyaudio
Run Code Online (Sandbox Code Playgroud)

此示例适用于我的笔记本电脑,在Windows 8.1中使用Python 2.7.11(和3.5.1),pyaudio 0.2.9.


Ani*_*l_M 16

你打算从麦克风中获取音频或流媒体音频吗?无论哪种情况, 都可以使用声音设备.

您可以使用安装python模块
pip install sounddevice --user

有关API详细信息,请参阅官方网站.

sounddevice将记录您的笔记本电脑麦克风(标准音频输入)的音频,并在扬声器或耳机(标准音频输出)上播放.您可以使用声音对象进行进一步处理.

import sounddevice as sd
import numpy as np
import scipy.io.wavfile as wav

fs=44100
duration = 5  # seconds
myrecording = sd.rec(duration * fs, samplerate=fs, channels=2,dtype='float64')
print "Recording Audio"
sd.wait()
print "Audio recording complete , Play Audio"
sd.play(myrecording, fs)
sd.wait()
print "Play Audio Complete"
Run Code Online (Sandbox Code Playgroud)

以下是win32上的输出:Python 2.7.9(默认,2014年12月10日,12:24:55)[MSC v.1500 32位(英特尔)]输入"copyright","credits"或"license()"更多信息.================================ RESTART ================= ==

录制音频
录音完成,播放音频
播放音频完成