[TOC]
### 如何联系我们获得技术支持
> 科大讯飞提供以下方式的技术支持:
**电话支持**
请于周一~周五,北京时间9:00~17:00,拨打电话: 0551-65309063 获得技术支持。
**电子邮件支持**
请将问题的详细描述发至: msp_support@iflytek.com。
**在线支持**
请登录我们的论坛 http://bbs.xfyun.cn/
联系时对问题的描述请尽量包含以下内容:
1.系统配置(包括CPU、内存、硬盘、操作系统及产品版本等信息)
2.问题重现(包括详细的操作过程、文本内容、识别音频、合成文本、运行日志等)
### 错误码及相应解决方案查询网址
> 答: [错误码及相应解决方案查询](https://shimo.im/sheet/w3yUy39uNKs0J7DT)
### 拿到了合成音频但不知道如何来播放
> 答:拿到的合成音频是没有音频头的,音频头中含有音频格式、采样率、音频长度等播放音频所需信息。拿到合成音频后,用户可以添加音频头,可参考例子tts_sample中的代码,然后使用常规播放器来播放;也可以使用Cool Edit等软件手动选择音频参数来播放。
### 如何进行大文本的合成
> 答:语音云一次语音合成允许的合成文本大小不超过8192个字节,所以对于长度超过此值的大合成文本,用户可以采用“分段合成”的方式,即先将大文本按照标点符号如句号进行切分,然后对每一段文本分别进行合成。进行分段合成时,用户既可以在一路会话中循环使用QTTSTextPut+QTTSAudioGet组合完成合成,也可以为每一段文本使用一路独立的会话完成合成。
### 获取不到识别/听写结果
> 答:原因可能是:
> QISRSessionBegin的参数设置不正确,如没有设置好正确的引擎类型等。
> 音频格式不对,客户端支持的音频编解码算法只支持16位Intel PCM格式的音频。
### 能获取到语音听写结果但是不全
> 答:此问题主要是在调用QISRAudioWrite时没有正确设置参数audioStatus所致,此参数在写入非最后一个音频数据块时需要设置为2,写入最后一个数据块时需要设置为4,以告诉MSC音频写入完毕。如果只有一个音频数据块,audioStatus也需要设置为4。
### 可以拿到识别/听写结果但是响应很慢
> 答:此问题可以尝试如下方法来解决:
> 调用QISRAudioWrite接口写音频数据时,尽量做到“匀速发送”——周期性的发送定长数据,做到边录边发,避免一次发送数据量过大的音频。
> 采用QISRAudioWrite接口和QISRGetResult接口混调的方式。在调用QISRAudioWrite接口时,可以检查out型参数recogStatus,如果其值为0,表明已经有(部分)识别结果缓存在MSC中了,此时可以调用QISRGetResult来获取结果。
### 如何设置语音云服务URL
> 答:在MSPLogin接口中添加:server_url = http://YourDomainName/msp.do (YourDomainName是指语音云服务域名,请开发者自行替换)
> 例如:MSPLogin(NULL, NULL, "appid = 12345678, server_url = http://sdk.openspeech.cn/msp.do"); 注意:各参数间,以英文逗号分隔。
> 接口原型:
> int MSPLogin(const char* usr, const char* pwd, const char* params)
### 如何通过代理服务器访问语音云服务
> 答:在MSPLogin接口的params参数中添加:
> net_type=custom, proxy_ip=<host>, proxy_port=<port>
> 其中,<host>,<port>替换为实际的代理服务器地址和端口。
> 例如:MSPLogin(NULL, NULL, "appid = 12345678, net_type=custom, proxy_ip=192.168.1.2, proxy_port=8080"); 注意:各参数间,以英文逗号分隔。
> 接口原型:
> int MSPLogin(const char* usr, const char* pwd, const char* params)
> 注意: 若在设置代理参数后,使用语音服务过程中,报错10204/10205/10212等网络异常错误时,请查阅以下内容,做出相关操作:
> * 讯飞语音SDK的通信协议使用的是标准HTTP1.1协议,其代理协议使用的是标准HTTP代理协议。
> * 代理服务器需要支持全双工多问多答方式,即 pipeline 模式。
> * 代理服务器不能对80端口做限制,不能对 IP 和域名进行拦截。
> * 需要确保代理服务器只负责转发数据包,不能改变数据包的完整性和时序性。
> * 代理服务器在转发数据包时,不能在HTTP协议头部添加 IE6 标识头。