AVSpeechSynthesizer 语音合成器

原文: https://developer.apple.com/documentation/avfoundation/avspeechsynthesizer

AVSpeechSynthesizer可以使iOS针对给定文本生成语音,并提供方法来控制或监听正在进行的语音。

要把文本读出来,首先要创建一个包含文本的AVSpeechUtterance实例。(或者可以用这个实例通过修改参数来控制语音,如声音,音调,速度。)然后,调用speak(_:)方法来发声。

AVSpeechSynthesizer维护了一个需要发声的队列。如果合成器当前没有讲话,调用speak(_:)既可立即发声。(或开始等待preUtteranceDelay所设置的延时)。如果合成器正在发声,语音会根据被接受的顺序添加到队列里。

开始发声后,你可以用合成器对象来暂停或停止。暂停后,可以继续。停止后,就彻底停了,会将队列里所有待发声的语音移除。

你可以检查合成器的paused和speaking属性,或通过AVSpeechSynthesizerDelegate来监听状态。在语音合成时协议中的消息会作为重要事件发出。

你可能感兴趣的:(AVSpeechSynthesizer 语音合成器)