Использование Windows SAPI SpVoice с Gradio

Когда я использовал только SAPI, он работал отлично.

      import win32com.client as wincl

speak = wincl.Dispatch("SAPI.SpVoice")
sentence = "This is a voice from Windows"
speak.Speak(sentence)

Однако, когда я помещаю его в функцию Gradio, он больше не работает и выдает ошибку.

      import gradio as gr
import win32com.client as wincl

speak = wincl.Dispatch("SAPI.SpVoice")

def greet(name):
    global speak

    sentence = "Hello " + name + "!"
    speak.Speak(sentence)

    return sentence

demo = gr.Interface(fn=greet, inputs="text", outputs="text")
demo.launch()

Сообщения об ошибках

      Traceback (most recent call last):
  File "C:\Users\User\PycharmProjects\Voice_Chat_Bot\venv\lib\site-packages\gradio\routes.py", line 384, in run_predict
    output = await app.get_blocks().process_api(
  File "C:\Users\User\PycharmProjects\Voice_Chat_Bot\venv\lib\site-packages\gradio\blocks.py", line 1032, in process_api
    result = await self.call_function(
  File "C:\Users\User\PycharmProjects\Voice_Chat_Bot\venv\lib\site-packages\gradio\blocks.py", line 844, in call_function
    prediction = await anyio.to_thread.run_sync(
  File "C:\Users\User\PycharmProjects\Voice_Chat_Bot\venv\lib\site-packages\anyio\to_thread.py", line 31, in run_sync
    return await get_asynclib().run_sync_in_worker_thread(
  File "C:\Users\User\PycharmProjects\Voice_Chat_Bot\venv\lib\site-packages\anyio\_backends\_asyncio.py", line 937, in run_sync_in_worker_thread
    return await future
  File "C:\Users\User\PycharmProjects\Voice_Chat_Bot\venv\lib\site-packages\anyio\_backends\_asyncio.py", line 867, in run
    result = context.run(func, *args)
  File "C:\Users\User\PycharmProjects\Voice_Chat_Bot\bot.py", line 11, in greet
    speak.Speak(sentence)
  File "<COMObject SAPI.SpVoice>", line 2, in Speak
pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147221008), None)

Я пытался погуглить, но я до сих пор не могу найти никакой подсказки. Кто-нибудь может помочь?

0 ответов

Другие вопросы по тегам