在 Mac M1 上使用 Pyaudio 录制音频时崩溃

Hen*_*rik 5 python pyaudio apple-m1

经过很长时间的努力,我终于成功在我的MacBook M1上安装了Pyaudio库。它可以流畅地播放音频文件,但当我尝试录制音频时它会崩溃。错误信息是

libc++abi: terminating
[1] 14101 abort python record.py.
Run Code Online (Sandbox Code Playgroud)

我尝试过重新安装不同版本的Python和Pyaudio,以及使用conda安装它们,但这些方法都没有解决问题。

我找不到报告该问题的官方地点,因此我向此论坛寻求帮助。我想知道是否有人知道如何解决这个问题。先感谢您。

我使用的是 Python 3.9.16、Pyaudio 0.2.13 和 macOS 13.2。测试代码来自官网

"""PyAudio Example: Record a few seconds of audio and save to a wave file."""

import wave
import sys

import pyaudio

CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 1 if sys.platform == 'darwin' else 2
RATE = 44100
RECORD_SECONDS = 5

with wave.open('output.wav', 'wb') as wf:
p = pyaudio.PyAudio()
wf.setnchannels(CHANNELS)
wf.setsampwidth(p.get_sample_size(FORMAT))
wf.setframerate(RATE)

    stream = p.open(format=FORMAT, channels=CHANNELS, rate=RATE, input=True)
    
    print('Recording...')
    for _ in range(0, RATE // CHUNK * RECORD_SECONDS):
        wf.writeframes(stream.read(CHUNK))
    print('Done')
    
    stream.close()
    p.terminate()

Run Code Online (Sandbox Code Playgroud)