Как подключить Pycharm к микрофону на macOS

У меня проблема с подключением микрофона с помощью Pycharm. Я запустил приведенный ниже код на Spyder и терминале, и все было в порядке. Однако на Pycharm он, казалось, работал без ошибок, но и без результата. Я вижу, что и мой терминал, и Spyder имеют доступ к микрофону (системные настройки -> безопасность и конфиденциальность). Если кто-нибудь знает, как запустить систему, чтобы разрешить подключение микрофона с помощью Pycharm, любые ответы будут оценены. Спасибо!

Я также пытался записать свой голос с помощью pyaudio, и он отлично работал со Spyder и терминалом, но при использовании Pycharm звук не записывался (хотя файл был создан).

простой код:

import speech_recognition as sr
r = sr.Recognizer()

with sr.Microphone() as source:
    print("Speak")
    audio = r.listen(source)
    print("Stop")

try:
    print("You said " + r.recognize_google(audio))
except:
    pass

person Matthew    schedule 27.08.2019    source источник


Ответы (2)


Несмотря на то, что это старый вопрос, я наткнулся на ту же проблему в MacOS. Так что может кому пригодится:

Проблема в том, что каждое приложение, работающее в последних версиях MacOS, нуждается в разрешениях для служб, связанных с безопасностью, например. запись с микрофона. К сожалению, PyCharm не запросил необходимое разрешение, и невозможно установить разрешения вручную. Каждое приложение, которое вы создаете и отлаживаете с помощью PyCharm, также не имеет этих разрешений.

Возможно, Jetbrains уже исправила это, поэтому обязательно используйте последнюю версию. Мне помог небольшой обходной путь: просто запустите Pycharm из терминала, пока у терминала есть права доступа к микрофону, все работает нормально. Я сделал это с помощью небольшого скрипта:

#!/bin/sh
cd /Applications/PyCharm\ CE.app/Contents/MacOS/
./pycharm
person dCb    schedule 22.10.2020

Убедитесь, что PyCharm также имеет доступ к микрофонам в настройках, а также запускайте PyCharm от имени администратора при его запуске.

person ab123    schedule 27.08.2019
comment
Как это сделать? - person aprospero; 11.01.2020