3

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

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

强调短语中的“不”一词

不是我的狗!

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

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

4

1 回答 1

1

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

因为话语可以控制语音参数,所以您可以将文本分成需要不同参数的部分。例如,您可以通过增加音高并降低该话语相对于其他话语的速率来强调一个句子,或者您可以通过将每个句子放入具有前导或尾随延迟的话语中来引入句子之间的停顿。因为语音合成器在开始或结束说话时会向其代表发送消息,所以您可以为每个有意义的单元在较长的文本中创建一个语音,以便在其语音进行时收到通知。

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

于 2015-09-14T18:00:24.330 回答