如何使用子进程修复python中执行espeak

时间:2015-12-14 11:22:16

标签: python espeak

我正在尝试使用MBROLA语音使用python执行espeak" us1"。

from subprocess import call

call(["espeak","-v mb-us1","Hello, I am espeak"])

并出现以下错误'

  

无法阅读语音' MB-US1'

但它适用于:

os.system("espeak -v mb-us1 'hello, I am espeak'")

1 个答案:

答案 0 :(得分:1)

你需要在两个列表元素中分割“-v mb-us1”。

from subprocess import call

call(["espeak", "-v", "mb-us1", "Hello, I am espeak"]) 

列表的第n个元素将被视为子进程调用的第n个参数。

在您的情况下,“-v mb-us1”被视为单个参数而不是两个单独的参数。