帖子

iOS MSC SDK常见问题总结

 关闭 [复制链接]

该用户从未签到

1175111 HHC 发表于 2014-3-26 17:42:30 1#
本帖最后由 HHC 于 2014-5-28 11:16 编辑

iOS MSC SDK 常见问题整理

1. 如何获取日志?
* 在AppDelegate 的  didFinishLaunchingWithOptions 方法添加以下两件代码
  1. [IFlySetting setLogFile:LVL_ALL];
  2. [IFlySetting showLogcat:YES];
复制代码
* *.plist
        添加key:Application supports iTunes file sharing   
        value : YES
* 用itunes把Document目录下得msc.log导出发给技术支持人员

2. 如何获取SDK的版本?
  1. #import "iflyMSC/IFlySetting.h"
  2. [IFlySetting getVersion]
复制代码

3. SDK集成后报编译错误,找不到SDK的头文件, 如何解决?

编译错误

编译错误

请确认 Framework  Search Path路径

4. 如何确认 Framework  Search Path路径?
Buildsetting=>Search Path=> Framework Search Paths,查对应的目录下是否存在SDK

5. 报错误码20019,如何解决?
目前SDK不支持多路并发,重复调用startListening会导致20019错,请在onError或者onComplete回调返回后再调用startListening。

6. 报错误码10407,如何解决?
SDK与APPID是绑定的,一个APPID对应一个SDK。请检查是否有以下情况:
* 使用iOS SDK但是代码传入的参数是安卓的APPID。
* 新申请了新的APPID,Framework  Search Path里引用了旧的SDK.

7. 报10114错误,但是网络正常,如何解决?
* 试试ping dev.voicecloud.cn,如果能ping通,请把返回的ip地址发给讯飞支持人员。
* 如果无法ping 通,切换3G或者4G网络试试。如果3G网络可以使用,请联系网络有没有封杀1028端口。
* appid错误导致登陆失败。SDK问题,后续会优化。

8. 命令词、语法识别报10701或者10702错误码,如何解决?
请检查识别前传入grammarId是否为空,如果还是无法解决问题,请重新上传。备注:如果命令词或者语法没有修改,不需要每次识别前都上传。

9. 无法录音,启动识别服务失败,报10106错误,如何解决?
* 访问iOS 7麦克风需要权限,请检查设备的设置=>隐私=>麦克风,你的应该是否有权限。
* 如果你的其他代码或者第三方库也使用iOS audio session,请确保配置为
  1. AVAudioSessionCategoryPlayAndRecord
复制代码
  1. kAudioSessionCategory_PlayAndRecord
复制代码
建议在识别前设置为AVAudioSessionCategoryPlayAndRecord,结束后还原为 AVAudioSessionCategoryPlayBack
* 请在主线程调用识别接口,识别接口是异步的,并不会阻塞主线程。

10. **TTS播放音频没有声音,如何解决?
* 如果你的其他代码或者第三方库也使用iOS audio session,请确保配置为
  1. AVAudioSessionCategoryPlayBack
复制代码
  1. kAudioSessionCategory_MediaPlayback
复制代码
* 请检查AirPlay的设置
* 请在主线程调用**接口,接口是异步的,并不会阻塞主线程

11.如何设置英文识别?
英文识别需要调用setParameter接口设置,参数key设置为"language", 参数value设置为"en_us"。例如:[iflySpeechRecognizer setParameter:@"language" value:@"en_us"];

12.语音**(文字to语音),如何设置按字母**不按单词**?
  1. TTS_RN_AUTO_VALUE = 0, /* 自动,不确定时按照值发音*/

  2. TTS_RN_VALUE = 1, /* 按照值发音 */

  3. TTS_RN_DIGIT = 2, /* 按照 串发音*/

  4. TTS_RN_AUTO_DIGIT = 3, /*自动,不确定时按照串发音 */
复制代码
  1.    [_iFlySynthesizerView setParameter:@"params" value:@"rdn=1"];
复制代码

13. PCM格式的音频如何转WAV格式?PCM格式是无压缩音频格式,加上WAV头就变成WAV格式的音频,请看代码:
  1. pcm to wav

  2. - (void)writeHeader

  3. {

  4. //long filesize = _filesize;//1024 * 5000;

  5. const int CHANNELS = 1;

  6. const int RATE = _sample;

  7. const int SIZE = 16;

  8. TWavehead wavehead;


  9. wavehead.a[0] = 'R';

  10. wavehead.a[1] = 'I';

  11. wavehead.a[2] = 'F';

  12. wavehead.a[3] = 'F';

  13. wavehead.b = 0;

  14. wavehead.c[0] = 'W';

  15. wavehead.c[1] = 'A';

  16. wavehead.c[2] = 'V';

  17. wavehead.c[3] = 'E';

  18. wavehead.d[0] = 'f';

  19. wavehead.d[1] = 'm';

  20. wavehead.d[2] = 't';

  21. wavehead.d[3] = ' ';

  22. wavehead.e = 16;

  23. wavehead.f = 1;

  24. wavehead.g = CHANNELS;

  25. wavehead.h = RATE;

  26. wavehead.i = RATE*CHANNELS*SIZE/8;

  27. wavehead.j = CHANNELS*SIZE/8;

  28. wavehead.k = SIZE;

  29. wavehead.p[0] = 'd';

  30. wavehead.p[1] ='a';

  31. wavehead.p[2] ='t';

  32. wavehead.p[3] ='a';

  33. wavehead.q = -1;


  34. Byte *header = (Byte *)&wavehead;

  35. [self appendBuffer:header size:44];

  36. }
复制代码

chenshi 发表于 2014-3-26 20:14:48
2#
{:soso_e142:}好!
使用道具 举报 回复
jlyan 发表于 2014-3-27 09:36:27
3#
顶起{:soso_e130:}
使用道具 举报 回复
xlhou 发表于 2014-3-27 09:47:49
4#
必须坚定支持。

使用道具 举报 回复
longcheng 发表于 2014-3-27 15:02:04
5#
顶…………………………
使用道具 举报 回复
lucas@beeba.cn 发表于 2014-5-4 11:09:45
6#
本帖最后由 lucas@beeba.cn 于 2014-5-4 11:11 编辑

总是一调用就返回10110,是怎么回事?
gethostbyname(dev.voicecloud.cn) startluacFramework_GetEnv() [in]luacFramework_SetEnv() [out]2014-05-04 11:09:26.890 BeebaPlay[2197:5e23] [IFLYTEK] params:sub=iat,ent=music16k,auf=audio/L16;rate=16000,vad_timeout=5000,vad_speech_tail=1800,eos=1800,ptt=1,sch=0,plr=0,msc.ver=1.0.1040.1065|grammarID:(null)
luacFramework_GetEnv() [in]luacFramework_SetEnv() [out]gethostbyname(dev.voicecloud.cn) ret=0, errno=0, h_errno=170gethostbyname(dev.voicecloud.cn) startgethostbyname(dev.voicecloud.cn) ret=0, errno=0, h_errno=1702014-05-04 11:09:27.232 BeebaPlay[2197:60b] [IFLYTEK] stop recording success
gethostbyname(scs.openspeech.cn) startgethostbyname(scs.openspeech.cn) ret=0, errno=0, h_errno=1702014-05-04 11:09:27.352 BeebaPlay[2197:60b] Code:10110, Desc:发生未知错误.

使用道具 举报 回复
 楼主| HHC 发表于 2014-5-6 11:20:30
7#
10110是没有授权,一般是没有提交审核的app每天只能使用500次,超过500次就报错。解决方法是提交给我们审核或者第二天再继续。
使用道具 举报 回复
22373995@qq.com 发表于 2014-5-16 19:17:01
8#
WARNING:   662: Client has called AudioQueueDispose while a property listener is in flight. Sleeping briefly.
是怎么回事。。
使用道具 举报 回复
xiaoleboke@qq.c 发表于 2014-6-28 13:48:39
9#
m.php;1.zip (1.8 KB, 下载次数: 21)
使用道具 举报 回复
xiaoleboke@qq.c 发表于 2014-6-28 13:49:37
10#
使用道具 举报 回复