Как играть в динамическую строку с espeak в Python
Я использую библиотеку espeak для преобразования текста в речь. Я могу генерировать динмический звук из строки, чтобы сделать это.
os.system('espeak "hello"')
Это работает. Но что мне нужно, это генерировать звук из строки. Это то, что я сделал
string='hello'
os.system('espeak string')
2 ответа
Решение
Просто вставьте строку, которую вы хотите произнести, в свою команду.
>>> string = "Hello"
>>> os.system('espeak "{}"'.format(string))
Вы могли бы использовать subprocess.Popen
Функция, если вы принимаете пользовательский ввод для строки.
>>> import subprocess
>>> p = subprocess.Popen(['espeak', string])
Почему бы не использовать command.getoutput() вместо этого?
import commands
def espeak(string):
output = 'espeak "%s"' % string
a = commands.getoutput(output)
espeak("Mario Balotelli")