zoukankan      html  css  js  c++  java
  • iOS- AVSpeechSynthesizer——iOS7语音合成器

     语音合成器的技术是iOS7推出的,可以实现无网络语音功能,支持多种语言

     1. 定义一个成员变量,记录语音合成器 AVSpeechSynthesizer

    #import <AVFoundation/AVFoundation.h> 

     1 @interfaceViewController ()
     2 
     3 {
     4 
     5     // 合成器
     6 
     7     AVSpeechSynthesizer *_synthesizer;
     8 
     9     
    10 
    11     // 实例化说话的语言,说中文、英文
    12 
    13     AVSpeechSynthesisVoice *_voice;
    14 
    15 }

     2. 定义语音对象 AVSpeechSynthesisVoice,指定说话的语言

        zh_CN 中文

        en-US 英文

     1 - (void)viewDidLoad
     2 {
     3     [super viewDidLoad];
     4 
     5     // 实例化说话的语言,说中文
     6     _voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"en-US"];
     7     
     8     // 要朗诵,需要一个语音合成器
     9     _synthesizer = [[AVSpeechSynthesizer alloc] init];
    10 }

     3. 实例化发声对象 AVSpeechUtterance,指定要朗读的内容

     

    1      // 朗诵文本框中的内容
    2     // 实例化发声的对象,及朗读的内容
    3     AVSpeechUtterance *utterance = [AVSpeechUtterance speechUtteranceWithString:_textView.text];

     4.指定语音,和朗诵速度           

        中文朗诵速度:0.1还能够接受

        英文朗诵速度:0.3还可以

    1  utterance.voice = _voice;
    2 
    3   utterance.rate = 0.3;

     5.启动                

    1    [_synthesizer speakUtterance:utterance];

     提示:在制作应用程序时,如果朗诵的内容有限,需要提供专业的配音音频

     如果朗诵的内容无限,使用此方法是最佳选择!

                                                          清澈Saup

  • 相关阅读:
    <img>标签
    <a>标签
    HTML标签类型
    HTML实体
    HTML颜色的三种写法
    HTML绝对路径和相对路径
    HTML基本结构及标签样式
    Java Activiti 工作流引擎 springmvc SSM 流程审批 后台框架源码
    java ssm 后台框架平台 项目源码 websocket IM quartz springmvc
    分批插入数据基于mybatis
  • 原文地址:https://www.cnblogs.com/qingche/p/3502816.html
Copyright © 2011-2022 走看看