IFlySpeechUnderstander.h 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. //
  2. // IFlySpeechUnderstander.h
  3. // MSC
  4. //
  5. // Created by iflytek on 2014-03-12.
  6. // Copyright (c) 2014年 iflytek. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. @class IFlySpeechError;
  10. @protocol IFlySpeechRecognizerDelegate;
  11. /*!
  12. * 语义理解接口
  13. */
  14. @interface IFlySpeechUnderstander : NSObject
  15. /*!
  16. * 是否正在语义理解
  17. */
  18. @property (readonly) BOOL isUnderstanding;
  19. /*!
  20. * 设置委托对象
  21. */
  22. @property(nonatomic,retain) id<IFlySpeechRecognizerDelegate> delegate ;
  23. /*!
  24. * 创建语义理解对象的单例
  25. *
  26. * @return 语义理解对象
  27. */
  28. +(instancetype) sharedInstance;
  29. /*!
  30. * 开始义理解
  31. *
  32. * 同时只能进行一路会话,这次会话没有结束不能进行下一路会话,否则会报错。若有需要多次回话,请在onCompleted回调返回后请求下一路回话。
  33. *
  34. * @return 成功返回YES,失败返回NO
  35. */
  36. - (BOOL) startListening;
  37. /*!
  38. * 停止录音<br>
  39. * 调用此函数会停止录音,并开始进行语义理解
  40. */
  41. - (void) stopListening;
  42. /*!
  43. * 取消本次会话
  44. */
  45. - (void) cancel;
  46. /*
  47. * | ------------- |-----------------------------------------------------------
  48. * | 参数 | 描述
  49. * | ------------- |-----------------------------------------------------------
  50. * | domain |应用的领域: 取值为:iat、search、video、poi、music、asr;
  51. * | | iat:普通文本听写;
  52. * | | search:热词搜索;
  53. * | | video:视频音乐搜索;
  54. * | | asr:关键词识别;
  55. * | ------------- |-----------------------------------------------------------
  56. * | vad_bos |前端点检测: 静音超时时间,即用户多长时间不说话则当做超时处理; 单位:ms;
  57. * | | engine指定iat识别默认值为5000;
  58. * | | 其他情况默认值为 4000,范围 0-10000。
  59. * | ------------- |-----------------------------------------------------------
  60. * | vad_eos |后断点检测: 后端点静音检测时间,即用户停止说话多长时间内即认为不再输入,
  61. * | | 自动停止录音;单位:ms;
  62. * | | sms 识别默认值为 1800;
  63. * | | 其他默认值为 700,范围 0-10000。
  64. * | ------------- |-----------------------------------------------------------
  65. * | sample_rate |采样率:目前支持的采样率设置有 16000 和 8000。
  66. * | ------------- |-----------------------------------------------------------
  67. * | asr_ptt |标点符号设置: 默认为 1,当设置为 0 时,将返回无标点符号文本。
  68. * | ------------- |-----------------------------------------------------------
  69. * | result_type |返回结果的数据格式: 可设置为json,xml,plain,默认为json。
  70. * | ------------- |-----------------------------------------------------------
  71. * | grammarID |识别的语法id: 只针对 domain 设置为”asr”的应用。
  72. * | ------------- |-----------------------------------------------------------
  73. * | asr_audio_path|音频文件名: 设置此参数后,将会自动保存识别的录音文件。
  74. * | | 路径为Documents/(指定值)。
  75. * | | 不设置或者设置为nil,则不保存音频。
  76. * | ------------- |-----------------------------------------------------------
  77. * | params |扩展参数: 对于一些特殊的参数可在此设置,一般用于设置语义。
  78. * | ------------- |-----------------------------------------------------------
  79. *
  80. */
  81. /*!
  82. * 设置语义理解引擎的参数
  83. *
  84. * 语义理解的引擎参数(key)取值如下:
  85. *
  86. * | 参数 | 描述 |
  87. * |-----------------|-------------------------------------------------------|
  88. * | domain | 应用的领域: 取值为:iat、search、video、poi、music、asr;<br>iat:普通文本听写;<br>search:热词搜索;<br>video:视频音乐搜索;<br>asr:关键词识别;|
  89. * | vad_bos | 前端点检测: 静音超时时间,即用户多长时间不说话则当做超时处理; 单位:ms;<br>engine指定iat识别默认值为5000;<br>其他情况默认值为 4000,范围 0-10000。|
  90. * | vad_eos | 后断点检测: 后端点静音检测时间,即用户停止说话多长时间内即认为不再输入,自动停止录音;单位:ms;<br>sms 识别默认值为 1800;<br>其他默认值为 700,范围 0-10000。|
  91. * | sample_rate | 采样率:目前支持的采样率设置有 16000 和 8000。|
  92. * | asr_ptt | 标点符号设置: 默认为 1,当设置为 0 时,将返回无标点符号文本。|
  93. * | result_type | 返回结果的数据格式: 可设置为json,xml,plain,默认为json。|
  94. * | grammarID | 识别的语法id: 只针对 domain 设置为”asr”的应用。|
  95. * | asr_audio_path | 音频文件名: 设置此参数后,将会自动保存识别的录音文件。<br>路径为Documents/(指定值)。<br>不设置或者设置为nil,则不保存音频。|
  96. * | params | 扩展参数: 对于一些特殊的参数可在此设置,一般用于设置语义。|
  97. *
  98. * @param value 参数对应的取值
  99. * @param key 语义理解引擎参数
  100. *
  101. * @return 成功返回YES;失败返回NO
  102. */
  103. -(BOOL) setParameter:(NSString *) value forKey:(NSString*)key;
  104. /*!
  105. * 写入音频流
  106. *
  107. * @param audioData 音频数据
  108. *
  109. * @return 写入成功返回YES,写入失败返回NO
  110. */
  111. - (BOOL) writeAudio:(NSData *) audioData;
  112. /*!
  113. * 销毁语义理解对象。
  114. *
  115. * @return 成功返回YES;失败返回NO
  116. */
  117. - (BOOL) destroy;
  118. @end