1

我尝试过 pyaudio/sounddevice,但使用它们会导致错误:||PaMacCore (AUHAL)|| 未找到 AUHAL 组件。回溯(最后一次调用):。我认为这与我的 mac 未授予终端使用麦克风的权限有关,我已经阅读了一些关于此的问题,但是在我的安全/隐私中没有提示授予终端对麦克风的权限。我有一台带有 catalina 的 2017 macbook pro 13 英寸。感谢您的时间。

在此处输入图像描述

我正在使用以下代码:

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()

4

1 回答 1

0

如果您还没有尝试更改麦克风权限,有几种方法可以尝试。

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

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

于 2020-09-22T06:15:07.023 回答