iOS文字转语音

iOS7以后提供了AVSpeechSynthesizer这个类来实现文字转语音的功能,要想使用这个类,首先要导入AVFoundation.framework这个框架,至于使用方法话不多说,直接上代码:

        //创建语音合成器
        let synchronizer = AVSpeechSynthesizer()
        //创建说话方式。说话方式可以传递到语音合成器来生成一段语音流
        let utterance = AVSpeechUtterance(string: "你是谁")
        //创建嗓音,如果嗓音不存在则返回nil
        let voiceType = AVSpeechSynthesisVoice(language: "zh-CN")
        //设置说话方式的嗓音
        utterance.voice = voiceType
        //设置说话的速率
        utterance.rate = 0.5
        //将说话方式放入语音合成器
        synchronizer.speakUtterance(utterance)

通过上面几行代码就可以实现将“你是谁”这段文字转为中文语音输出,当然还可以转为其他语言。通过以下方法,可以遍历支持转化的所有语言:

        //遍历输出支持的语言
        for voice in AVSpeechSynthesisVoice.speechVoices() {
            print(voice.language)
        }

只需将AVSpeechSynthesisVoice(language: "zh-CN")里面的“zh-CN”改为对应的语言即可。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 初次看见有声读物感觉很神奇,就自己琢磨了一下,发现苹果已经给出了相关的接口。还是那句话,我们不是代码的创造者,我们...
    _Waiting_阅读 5,937评论 0 16
  • 一直觉得朗读是一个比较酷炫的功能,之前一直不知道怎么做,目前有一些三方的语音朗读SDK,但他们都会收费,因此对于普...
    ChinaGoodStaff阅读 13,617评论 9 17
  • 首先,文字转语音最简单的方案就是使用系统提供的接口 一、AVSpeechSynthesizer AVSpeechS...
    190CM阅读 12,084评论 7 4
  • 看了无数关于春天的作品,似乎桃花、绿色、水墨基本都会被用到,试着练了一副~
    三千烬阅读 3,471评论 10 1
  • 现在我们可以在路上看见一辆昂贵的车,不用猜都知道那是苏家为了送女儿和儿子的“校车”。“叮铃铃”苏琳玉的手机响了电话...
    学霸王阅读 2,778评论 0 0