如何修复使用子进程在 python 中执行 espeak
How to fix executing espeak in python using subprocess
我正在尝试使用 python 使用 MBROLA 语音 "us1" 执行 espeak。
from subprocess import call
call(["espeak","-v mb-us1","Hello, I am espeak"])
出现如下错误'
Failed to read voice ' mb-us1'
但它适用于:
os.system("espeak -v mb-us1 'hello, I am espeak'")
您必须将“-v mb-us1”拆分为两个列表元素。
from subprocess import call
call(["espeak", "-v", "mb-us1", "Hello, I am espeak"])
列表的第 n 个元素将被视为子进程调用的第 n 个参数。
在您的案例中,“-v mb-us1”被视为单个参数而不是两个单独的参数。
我正在尝试使用 python 使用 MBROLA 语音 "us1" 执行 espeak。
from subprocess import call
call(["espeak","-v mb-us1","Hello, I am espeak"])
出现如下错误'
Failed to read voice ' mb-us1'
但它适用于:
os.system("espeak -v mb-us1 'hello, I am espeak'")
您必须将“-v mb-us1”拆分为两个列表元素。
from subprocess import call
call(["espeak", "-v", "mb-us1", "Hello, I am espeak"])
列表的第 n 个元素将被视为子进程调用的第 n 个参数。
在您的案例中,“-v mb-us1”被视为单个参数而不是两个单独的参数。