`
折句号
  • 浏览: 10891 次
文章分类
社区版块
存档分类
最新评论

iOS TTS文字转语音

 
阅读更多

iOS自带的文字转语音是iOS7以后才有的,需要AVFoundation 库。

AVSpeechSynthesizer: 语音合成器, 可以假想成一个可以说话的人, 是最主要的接口

AVSpeechSynthesisVoice: 可以假想成人的声音

AVSpeechUtterance: 可以假想成要说的一段话

 

 语言种类 : Language

         ar-SA  沙特阿拉伯(阿拉伯文)

         en-ZA, 南非(英文)

         nl-BE, 比利时(荷兰文)

         en-AU, 澳大利亚(英文)

         th-TH, 泰国(泰文)

         de-DE, 德国(德文)

         en-US, 美国(英文)

         pt-BR, 巴西(葡萄牙文)

         pl-PL, 波兰(波兰文)

         en-IE, 爱尔兰(英文)

         el-GR, 希腊(希腊文)

         id-ID, 印度尼西亚(印度尼西亚文)

         sv-SE, 瑞典(瑞典文)

         tr-TR, 土耳其(土耳其文)

         pt-PT, 葡萄牙(葡萄牙文)

         ja-JP, 日本(日文)

         ko-KR, 南朝鲜(朝鲜文)

         hu-HU, 匈牙利(匈牙利文)

         cs-CZ, 捷克共和国(捷克文)

         da-DK, 丹麦(丹麦文)

         es-MX, 墨西哥(西班牙文)

         fr-CA, 加拿大(法文)

         nl-NL, 荷兰(荷兰文)

         fi-FI, 芬兰(芬兰文)

         es-ES, 西班牙(西班牙文)

         it-IT, 意大利(意大利文)

         he-IL, 以色列(希伯莱文,阿拉伯文)

         no-NO, 挪威(挪威文)

         ro-RO, 罗马尼亚(罗马尼亚文)

         zh-HK, 香港(中文)

         zh-TW, 台湾(中文)

         sk-SK, 斯洛伐克(斯洛伐克文)

         zh-CN, 中国(中文)

         ru-RU, 俄罗斯(俄文)

         en-GB, 英国(英文)

         fr-FR, 法国(法文)

         hi-IN  印度(印度文)

NSString *language = @"en-US";
    AVSpeechSynthesizer  *speechSynthesizer = [[AVSpeechSynthesizer alloc]init];
    AVSpeechSynthesisVoice *voice = [AVSpeechSynthesisVoice voiceWithLanguage:language];
    AVSpeechUtterance  *utterance =[AVSpeechUtterance   speechUtteranceWithString:text]; //要读的文字
    utterance.voice = voice;
    utterance.rate = 0.5;//语速0~1
    utterance.pitchMultiplier = 0.5;//声调0.5~2
    utterance.volume =1.0;
    [speechSynthesizer speakUtterance:utterance];

 

还有代理提供的一些方法。

@protocol AVSpeechSynthesizerDelegate <NSObject>

@optional
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizer didStartSpeechUtterance:(AVSpeechUtterance *)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizer didFinishSpeechUtterance:(AVSpeechUtterance *)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizer didPauseSpeechUtterance:(AVSpeechUtterance *)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizer didContinueSpeechUtterance:(AVSpeechUtterance *)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizer didCancelSpeechUtterance:(AVSpeechUtterance *)utterance;

- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizer willSpeakRangeOfSpeechString:(NSRange)characterRange utterance:(AVSpeechUtterance *)utterance;
@end

 

iOS 文本转语音比较简单,值得注意的一点是如果想要单独读一串英文字母比如dunnage,需要在每个字母之间加字符来分开,“_”会隔开字母而且不会读出来,“,”会有明显的停顿,但是在开头加字符会被读出来。一些字母可能会被识别成单词,比如qa,不会读q a ,这时只要转换成大写字母QA即可。

分享到:
评论

相关推荐

    IOS自带免费 文字转语音简单处理

    IOS 自带文字转语音,代码简单整理,直接可用,可随意修改

    UE4/UE5TTS文本转语音

    此插件允许您在Windows、Windows VR、移动Android和iOS上使用本地离线文本转换语音(TTS),它支持英语、西班牙语等utf8语言。。。以及utf16语言,如中文、日语、俄语。。。 您可以设置语音速度、设置语音语言和设置...

    iOS 文字转语音+简单音乐播放

    iOS 文字转语音+简单音乐播放

    Unity文字转语音插件 RT-Voice PRO 2020.1.2(u2017.4.2)

    Unity文字转语音插件,可以将文本朗读出来,可设置朗读的语言,朗读语速,在开发环境Unity2019.2.f1,在mac和win,ios,android设备上运行成功。

    flutter_tts:颤振文本到语音包

    文字转语音 轻巧的文本转语音插件(Swift,Java) 产品特点 Android,iOS,Web和macOS 说话 停 获取语​​言 设定语言 设定语速 设定语音音量 设定语音音调 语言可用吗 Android,iOS 发出声音 设定声音...

    Easy TTS Text-to-Speech for iOS and Android v2.2.unitypackage

    安卓和ios的文字转语音插件,亲测unity2019可用,必须打包后使用,在unity中用不了,里面有demo打包后可以直接使用

    react-native-tts:React适用于Android和iOS的Native Text-To-Speech库

    React Native TTS是用于iOS,Android和Windows上的的文本到语音库。 文献资料 安装 npm install --save react-native-tts react-native link react-native-tts 用法 进口货 import Tts from 'react-native-tts' ; ...

    react-native-speak:适用于TTS的绝佳NativeModule

    React母语一个很棒的用于TTS(文本到语音)库。目录安装使用npm: npm install --save react-native-speak 或使用纱线: yarn add react-native-speak连结中自动的react-native link react-native-speak 对于使用pod...

    sdk离线语音包Linux版本

    与语音听写相反,语音合成是将一段文字转换为成语音,可根据需要合成出不同音色、语速和语调的声音,让机器像人一样开口说话。 合成详细的接口介绍及说明请参考: MSC Linux API 文档 ,在集成过程中如有疑问,可...

    cordova-plugin-tts

    PhoneGap 文字转语音插件 平台 iOS 7+ Android 4.0.3+(API 级别 15+) 待定

    TextToSpeechPlugin:适用于Xamarin和Windows的文本到语音插件

    适用于Xamarin和Windows的文本转语音插件 在Xamarin.iOS,Xamarin.tvOS,Xamarin.macOS Xamarin.Android,Windows和Xamarin.Forms项目中执行文本到语音的简单而优雅的方法。 预览: : 设置 在NuGet上可用: : ...

    FolioReaderKit::books:适用于iOS的Swift ePub阅读器和解析器框架

    TTS-文字转语音支持 解析epub封面图片 RTL支持 垂直或/和水平滚动 分享自定义图片行情NEW 同时支持多个实例,例如并行读取NEW 书籍搜寻 将注释添加到突出显示 谁在使用它? 在您可以看到在生产环境中使用它...

    53BK手机报制作软件(免费版)

    b/s模式与移动客户端同时并存 b/s模式:以3G网站形式把数字报刊以wap网站形式呈现在用户手机上,用户只要在浏览器上输入网址即可浏览报刊的手机版形式,文字,图片,...文章内容实现TTS语音读报(目前仅支持增强版)。

Global site tag (gtag.js) - Google Analytics