Когда я запускаю код в винде, в некоторых прогах пропадает звук, помогает только закрытие и открытие программы заново. Как это решить или почему это происходит?
Часть кода, где вероятно кроется проблема:
#модули
import pyttsx3
import os
import time
from datetime import datetime
import speech_recognition
import random
import webbrowser
import sounddevice as sd
import requests
import wave
import sys
import pyaudio
from random import choice
#шапка
os.system('cls' if os.name == 'nt' else 'clear')
print("НАЗВАНИЕ ПРОГРАММЫ")
def record_and_recognize_audio(*args: tuple):
with micro:
recognized_data = ""
# тут шумодав шум давит
recognizer.adjust_for_ambient_noise(micro, duration=2)
try:
bip()
try:
print("Скажите что-нибудь, например: '", rec2, "'")
except:
print("Назовите своё имя.")
audio = recognizer.listen(micro, 5, 5)
except speech_recognition.WaitTimeoutError:
print("Ошибка системы распознования 003. Проверьте микрофон.")
t = "У вас что-то не так с микрофоном!"
run()
return
# отправка запроса на google
try:
print("Ищу ответ в базе...")
recognized_data = recognizer.recognize_google(audio, language="ru").lower()
except speech_recognition.UnknownValueError:
pass
# если нет интернета - пишем ошибку
except speech_recognition.RequestError:
print("Ошибка системы распознования 002. Дайте доступ в Интернет.")
t = "Кажется, у вас пропал интернет!"
run()
exit()
try:
return recognized_data
except:
print("Ошибка системы распознования 001.")
#синтез речи
f = open("tts.txt", "r")
tts1 = int(f.read(1))
f.close()
text = ""
tts = pyttsx3.init()
voices = tts.getProperty('voices')
tts.setProperty('voice', voices[tts1].id)
def bip():
wf = wave.open('on.wav')
p = pyaudio.PyAudio()
chunk = 1024
stream = p.open(format =
p.get_format_from_width(wf.getsampwidth()),
channels = wf.getnchannels(),
rate = wf.getframerate(),
output = True)
data = wf.readframes(chunk)
a = 0
while a < 500:
stream.write(data)
data = wf.readframes(chunk)
a = a + 1
def run():
print("Ассистент:", t)
tts.say(t)
tts.runAndWait()