Używam eSpeak na Ubuntu i mam skrypt Python 2.7, który drukuje i wypowiada komunikat:
import subprocess
text = 'Hello World.'
print text
subprocess.call(['espeak', text])
eSpeak wydaje pożądane dźwięki, ale zaśmieca powłokę z pewnymi błędami (ALSA lib ..., brak połączenia z gniazdem), więc nie mogę łatwo odczytać tego, co zostało wcześniej wydrukowane. Kod zakończenia to 0.
Niestety nie ma udokumentowanej opcji wyłączenia jej gadatliwości, dlatego szukam sposobu, aby tylko wizualnie ją wyciszyć i utrzymać otwartą powłokę w czystości do dalszej interakcji.
W jaki sposób mogę to zrobić?
os.system
składnię. Ale to tylko dla ilustracji. Trzymaj się podprocesu
subprocess.DEVNUL
rozwiązanie.