iOS AVSpeechSynthesizer是否支持嵌入式语音命令

时间:2015-01-15 15:55:24

标签: ios avspeechsynthesizer

Mac OS语音合成器具有一组嵌入式命令,可让您执行更改音高,语速,强调等级等操作。例如,您可以使用

  

那是[[emph +]]而不是[[emph - ]]我的狗!

强调短语

中的“not”一词
  

我的狗!

iOS语音合成器中是否有这样的支持?看起来似乎没有,但我希望有人希望有人知道如何做到这一点。

作为后续问题,有没有办法对给定区域设置的“股票”声音进行全局更改?“在Siri的设置中,您可以选择语言和国家/地区以及性别。然而,AVSpeechSynthesizer似乎只为每种语言/国家提供单一,半随机的性别。(例如,en-US的声音是女性,en-GB是男性,en-AU是女性,没有明显的方式改变它。)

1 个答案:

答案 0 :(得分:1)

我同意这似乎不可能。 From the docs,Apple似乎打算创建单独的话语并手动调整音高/速率:

  

因为话语可以控制语音参数,所以您可以分割文本   进入需要不同参数的部分。例如,你可以   通过增加音高和降低音量来强调句子   那个话语相对于他人,或者你可以引入停顿   通过将每一个放入带有领导的话语中来表达句子   或拖尾延迟。因为语音合成器发送消息   当你的代表开始或结束说话时,你可以   按顺序为较长的文本中的每个有意义的单元创建一个话语   随着演讲的进行而得到通知。

我正在考虑为AVSpeechUtterance创建一个类别扩展来解析嵌入式命令(如示例所示)并自动创建单独的话语。如果其他人已经这样做了,或者想要帮忙,请告诉我。我会在这里更新。