【问题标题】:Is it possible to use "espeak" in system(" "); function?是否可以在 system(" "); 中使用“espeak”?功能?
【发布时间】:2018-10-16 05:57:40
【问题描述】:

是否可以在system(""); 函数中使用espeak,例如system("aplay 1.wav")?

我喜欢在 Ubuntu OS 中的 C/C++ 代码中使用 espeak。

【问题讨论】:

  • 你试过了吗?
  • @n.m.:我试过system("espeak answer"); ,但没有用
  • 如果您可以从 shell 运行命令,那么使用相同命令调用 system 也应该有效。您需要提供更多详细信息。

标签: c++ linux function system espeak


【解决方案1】:

您不要使用 espeak “like aplay”,而是在同一个命令中一起使用它们。

我相信你可以这样使用espeak,但是你使用的语法不正确。

您没有指定要如何使用 espeak,但这里有几个选项。

阅读引用的文字: system("espeak --stdout 'words to speak' | aplay")

从文本文档中读取: system("espeak --stdout -t mydocument.txt | aplay")

espeak reference page link

在您帖子的 cmets 中,您说您想使用命令 system("espeak answer")。假设answer 是一个字符串变量,你可以试试这个:

#include <string>

string answer, command;

command = "espeak --stdout '" + answer + "' | aplay";
system(command.c_str);

【讨论】:

  • 当我尝试--stdout 选项时,它给了我奇怪的字符,没有任何声音!
  • 你能提供一个屏幕转储吗?您希望如何使用 espeak? answer 是什么? @user3486308
猜你喜欢
  • 2017-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多