尝试使用Python / Mac录制音频时出错

时间:2020-08-23 03:30:02

标签: macos terminal speech-recognition pyaudio python-sounddevice

我尝试了pyaudio / sounddevice,使用它们会导致错误: || PaMacCore(AUHAL)||找不到AUHAL组件。跟踪(最近一次通话结束):。我认为这与我的Mac没有向终端授予使用麦克风的权限有关,并且我已经阅读了一些有关此问题,但是我的安全性/隐私权中没有提示向终端授予麦克风的权限。我有一个带Catalina的2017年款Macbook Pro 13英寸。谢谢您的时间。

enter image description here

我正在使用以下代码:

import pyaudio
import wave

CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 2
RATE = 44100
RECORD_SECONDS = 5
WAVE_OUTPUT_FILENAME = "output.wav"

p = pyaudio.PyAudio()
stream = p.open(format=FORMAT,
                channels=CHANNELS,
                rate=RATE,
                input=True,
                frames_per_buffer=CHUNK)

print("* recording")
frames = []
for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
    data = stream.read(CHUNK)
    frames.append(data)
print("* done recording")

stream.stop_stream()
stream.close()
p.terminate()
wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
wf.setnchannels(CHANNELS)
wf.setsampwidth(p.get_sample_size(FORMAT))
wf.setframerate(RATE)
wf.writeframes(b''.join(frames))
wf.close()

1 个答案:

答案 0 :(得分:0)

有两种方法可以尝试更改麦克风权限(如果还没有的话)。

  1. 打开系统偏好设置,然后导航至“安全性和隐私”->“隐私”,然后按锁进行更改。输入密码后,在左侧面板中查找“麦克风”图标,然后单击它。然后在右侧面板中显示“允许以下应用访问您的麦克风”的右侧面板中,单击“终端”旁边的复选框。

  2. 查看在“管理员”组中的计算机上创建新用户时会发生什么。您可以通过再次转到“系统偏好设置”并导航到“用户和组”来执行此操作。然后,再次单击该锁,然后输入密码进行更改。打开锁后,在左侧面板的“登录选项”下,单击+按钮。对于“新帐户”旁边的下拉菜单,请确保选择“管理员”。其余的帐户信息由您决定。完成后,单击“创建用户”并登录到新帐户。然后尝试再次测试您的代码,以查看它是否在此帐户中有效,并且/或者尝试在该帐户中执行第1步。您可以稍后删除该帐户,因为该帐户用于测试。只需确保将任何数据复制回主帐户即可。

相关问题