最近研究各类阿里云的辅助功能,找到了一个文本转语音的产品,官方SDK里没有PHP版本的,并且默认REST的文档写的并不是很好,signature的生成方式和通用的API的是有区别的,不计算url。并且通过hash_hmac之后是需要base64的,这个属于普通API的鉴权标准,但是在官方JAVA开发文档里没有特别提出,直接用String signature = HMACSha1(feature, access_secret),这谁能看得出需要base64啊,它的base64是在HMACSha1函数的过程里直接使用了base64返回,不仔细看还是很容易忽略的。
2.2 语音合成文本
请以UTF-8格式编码后将需要合成的语音文本在POST body中上传,单次请求限制为200个UTF-8字符,即每个汉字、数字、字母都算一个字符。
开发文档指出最多传入200个字符数,超过将会不予计算,实际运用中发现,300个字符以内都可以,并且超过的话,会中断报错,返回Failed to invoke backend service的错误,经过和官方技术确认,此错误确实是因为超限导致的,但官方也补充只保证前200个字符的正确。
直达工具>>文本合成语音工具
直达源码>>源码
文章评分5次,平均分4.2:★★★★☆
请问$ACCESS_ID和$SECRET 就是AccessKey ID和Access Key Secret吗?为什么我生成失败了
就是这个。
挺不错的,研读源码学习中
沙发一个!我用讯飞,坐等网页阅读。
网页阅读还是实现起来比较简单的,机器翻译语音,不过听上去,效果生硬的很。