【发布时间】:2019-02-10 10:44:24
【问题描述】:
我正在使用 Adafruit I2S MEMS Microphone Breakout 进行录音。参考。 https://learn.adafruit.com/adafruit-i2s-mems-microphone-breakout?view=all
当我按照下图将 Mic 连接到 Mono 配置中的 RPI 时,我可以使用 arecord 命令和下面的 python 代码录制音频
arecord -D dmic_sv -c2 -r 48000 -f S32_LE -t wav -V mono -v recording.wav
Python代码sn-p:
channels=1, rate=48000, frames_per_buffer=2400
def start_recording(self):
try:
self.logger.info("start_recording()> enter")
# Use a stream with a callback in non-blocking mode
self._stream = self._pa.open(format=pyaudio.paInt32,
channels=self.channels,
rate=self.rate,
input=True,
frames_per_buffer=self.frames_per_buffer,
stream_callback=self.get_callback())
self._stream.start_stream()
self.logger.info("start_recording()> exit")
return self
except Exception, e:
self.logger.error("start_recording()>", exc_info = True)
但如果我将通道选择引脚连接到逻辑高压,我可以使用 arecord 命令录制音频,但无法使用 python 代码进行录制。 录制右声道单声道音频需要对 python 代码进行任何更改吗?
【问题讨论】:
标签: python raspberry-pi3 microphone pyaudio digital