我的代码是python。它调用 espeak 命令来生成 .wav 音频。然后调用 ffmpeg 将 wav 转换为 mp3。
但是此命令无法通过 python 的 subprocess.call 将标准输出从 espeak 发送到 ffmpeg:
espeak -f myfile --stdout | ffmpeg -i - final.mp3
这个例子:
subprocess.call(["espeak", "test text to speak", "--stdout", "|"]+("ffmpeg -i - -vn -y -ar 22050 -ac 1 -ab 16k -af volume=2 -f mp3 mp3OutFile.mp3").split(" "))
错误是什么?我能怎么做?