iOS-AVSpeechSynthesizer语音合成

iOS中的AVSpeechSynthesizer可以很轻松的实现实现文本到语音的功能,基本代码如下:

self.speechSynthesizer = [[AVSpeechSynthesizer alloc] init];
AVSpeechUtterance *utterance = [AVSpeechUtterance speechUtteranceWithString:@"FlyElephant"];

AVSpeechSynthesisVoice *voiceType = [AVSpeechSynthesisVoice voiceWithLanguage:@"en-US"];
utterance.voice = voiceType;
//设置语速
utterance.rate *= 0.5;
//设置音量
utterance.volume = 0.6;

[self.speechSynthesizer speakUtterance:utterance];

AVSpeechUtterance可以设置对应的语言,如果设置的语言不能识别文本不能生成语音播放,苹果支持的语言如下:

Arabic (ar-SA)

Chinese (zh-CN, zh-HK, zh-TW)

Czech (cs-CZ)

Danish (da-DK)

Dutch (nl-BE, nl-NL)

English (en-AU, en-GB, en-IE, en-US, en-ZA)

Finnish (fi-FI)

French (fr-CA, fr-FR)

German (de-DE)

Greek (el-GR)

Hebrew (he-IL)

Hindi (hi-IN)

Hungarian (hu-HU)

Indonesian (id-ID)

Italian (it-IT)

Japanese (ja-JP)

Korean (ko-KR)

Norwegian (no-NO)

Polish (pl-PL)

Portuguese (pt-BR, pt-PT)

Romanian (ro-RO)

Russian (ru-RU)

Slovak (sk-SK)

Spanish (es-ES, es-MX)

Swedish (sv-SE)

Thai (th-TH)

Turkish (tr-TR)

以上就是苹果支持的语言编码,当然你也可以通过speechVoices遍历对应的语言编码:

NSArray *voice = [AVSpeechSynthesisVoice speechVoices];
    for (AVSpeechSynthesisVoice *voiceModel in voice) {
        NSLog(@"FlyElephant-%@",voiceModel);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值