openCom-Companion/sbapp/plyer/platforms/macosx/tts.py

26 lines
617 B
Python
Raw Normal View History

2022-09-16 18:07:57 +02:00
import subprocess
2024-06-02 18:31:58 +02:00
from sbapp.plyer.facades import TTS
from sbapp.plyer.utils import whereis_exe
2022-09-16 18:07:57 +02:00
class NativeSayTextToSpeech(TTS):
'''Speaks using the native OSX 'say' command
'''
def _speak(self, **kwargs):
subprocess.call(["say", kwargs.get('message')])
class EspeakTextToSpeech(TTS):
'''Speaks using the espeak program
'''
def _speak(self, **kwargs):
subprocess.call(["espeak", kwargs.get('message')])
def instance():
if whereis_exe('say'):
return NativeSayTextToSpeech()
elif whereis_exe('espeak'):
return EspeakTextToSpeech()
return TTS()