python - 当音频设备被拉出/断开时停止脚本pyaudio
问题描述
我有以下代码:
def __init__(self):
self.p = pyaudio.PyAudio()
info = self.p.get_host_api_info_by_index(0)
device_id = 0
self.stream = self.p.open(format=FORMAT,
input_device_index=device_id,
channels=CHANNELS,
rate=RATE,
input=True,
output=True)
def listen(self):
print('Python listening script initiated!')
while True:
self.listen()
所有这些都在一个类中,并在需要时稍后调用。本质上,这部分代码使用 pyaudio 来监听环境。代码可以按要求工作,但是当我拔下麦克风上的插头或关闭麦克风时,代码会出错,因为它会继续尝试在没有麦克风的情况下录制。断开麦克风后如何立即终止脚本。
谢谢
解决方案
推荐阅读
- reactjs - 反应路线与查询字符串不匹配
- elasticsearch - Elastic 使用 edge_ngram 从搜索返回意外结果
- jupyter-notebook - 在 SQL 中从国家逃犯最少的两个地区获取数据时遇到问题
- gradle - Gradle 与 Idea 冲突
- flutter - Flutter 中的 3D 球体效果
- javascript - 有谁知道如何使用 JavaScript 访问受应用程序限制的端点 HMRC API?
- java - 搜索用户通过对象数组输入的数据
- css - 在兄弟动画期间,Safari 中的旋转文本出现故障
- java - 什么java语句或函数来格式化尼日利亚奈拉货币
- ruby - 如何从 Ruby 中的文件名中获取文件夹的名称?