• iOS语音合成

    添加引用

    1
    import AVFoundation

    播放语音

    1
    2
    3
    4
    5
    6
    7
    8
    9

    let player = AVSpeechSynthesizer();
    player.delegate = self;
    let u = AVSpeechUtterance(string: "今天天气不错");
    u.voice = AVSpeechSynthesisVoice(language: "zh-CN");
    u.volume = 1.0;//音量 [0-1] Default = 1
    u.rate = 0.48;//播放速度
    u.pitchMultiplier = 1.0;//播放基准音调 [0.5 - 2] Default = 1
    player.speakUtterance(u);

    iPhone6以下rate设置为0.1否则会读的很快 iOS的坑啊

    代理方法

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    大专栏  iOS语音合成>13
    14
    15
    //开始播放
    func (synthesizer: AVSpeechSynthesizer, didStartSpeechUtterance utterance: AVSpeechUtterance) {
    print("开始播放")
    }

    //播放中
    func (synthesizer: AVSpeechSynthesizer, willSpeakRangeOfSpeechString characterRange: NSRange, utterance: AVSpeechUtterance) {
    let process = Double(characterRange.location) / Double(utterance.speechString.characters.count);
    print("播放中,播放进度为:(process)")
    }

    //播放完毕
    func (synthesizer: AVSpeechSynthesizer, didFinishSpeechUtterance utterance: AVSpeechUtterance) {
    print("播放完毕")
    }

    常用方法

    1
    2
    3
    4
    //停止播放
    player.stopSpeakingAtBoundary(AVSpeechBoundary.Immediate);
    //暂停播放
    player.pauseSpeakingAtBoundary(AVSpeechBoundary.Immediate);
    相关文章
    相关标签/搜索
    每日一句
      每一个你不满意的现在,都有一个你没有努力的曾经。
    公众号推荐
       一个历史类的公众号,欢迎关注
    一两拨千金
    蓝月亮精选免费资料大全