google翻译的强大,就像我们公司的slogan : “让语言无国界,让世人心相通”
友情提示: google相关的服务都是需要翻墙的,不然在大陆无法访问
写这篇文章的目的就是为了整合一下这方面的资料, 大概是因为被墙,网上关于这方面的资料很少,有些是过于老旧,甚至是不适用的,所以就不得不做个笔记就当作是探探路。
google语音识别
- 到
google
注册相关的API_KEY
, 地址:https://cloud.google.com/speech-to-text/docs/samples
- 下载demo
https://github.com/GoogleCloudPlatform/ios-docs-samples/tree/master/speech/Objective-C/Speech-REST-Nonstreaming
- 录制语音文件存于沙盒, 上传语音文件到
https://speech.googleapis.com/v1/speech:recognize?key=xxxxx
核心代码:
1 | NSString *service = @"https://speech.googleapis.com/v1/speech:recognize"; |
google 文本翻译
文本翻译和语音识别类似,都需要API_KEY
,同样是POST请求
1 | /** |
google 语音合成
- 合成是免费的 , 然后是这个接口
http://translate.google.com/translate_tts?ie=UTF-8&client=tw-ob&ttsspeed=1
- 参数组成主要参数介绍:
1
2
3
4
5
6
7
8
9//基地址
BASE_URL = @"http://translate.google.com/translate_tts?ie=UTF-8&client=tw-ob&ttsspeed=1"
//拼接规则和get请求类似
total //标准为100个字符为一组 然后total是总共多少组
idx //下标,第几组
textlen //所有文字的计数,就是这个字符串的长度
q //合成的文字内容,中文的话需要转编码utf-8最为合适
tl //语言,跟识别的语言一致ie
: 输入参数编码input-encode
一般为utf-8
oe
: 输入参数编码output-encode
一般为utf-8
ttsspeed
: 合成的语速tl
: 目标语言代码target language
hl
: 当地语言代码home language
url编码前:http://translate.google.com/translate_tts?ie=UTF-8&client=tw-ob&ttsspeed=1&total=1&idx=1&textlen=6&q=某某某是傻逼&tl=zh-cn
url编码后:http://translate.google.com/translate_tts?ie=UTF-8&client=tw-ob&ttsspeed=1&total=1&idx=1&textlen=6&q=%E9%99%88%E8%89%AF%E8%89%AF%E6%98%AF%E5%82%BB%E9%80%BC&tl=zh-cn
核心代码
1 | ///MARK:- 文本 转 语音在线合成 |
主流的几种语言的代码对照表:
国家 | languageCode |
---|---|
🇨🇳中文(简体) | zh-cn |
🇨🇳中文(繁体) | zh-tw |
🇺🇸英文(美式) | en-us |
🇬🇧英文(英式) | en-gb |
🇯🇵日语 | ja |
🇰🇷韩语 | ko |
🇷🇺俄语 | ru |
🇪🇸西班牙语 | es |
🇫🇷法语 | fr |
🇩🇪德语 | de |