speech.html 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
  6. <meta name="HandheldFriendly" content="true">
  7. <meta name="MobileOptimized" content="320">
  8. <title>Speech Document</title>
  9. <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8">
  10. <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8">
  11. <script type="text/javascript" src="res/doc.js" charset="utf-8"></script><script type="text/javascript" src="res/prettify.js" charset="utf-8"></script>
  12. </head>
  13. <body><div id="content" class="content">
  14. <h1><a name="plus.speech">speech</a></h1>
  15. <p>Speech模块管理语音输入功能,提供语音识别功能,可支持用户通过麦克风设备进行语音输入内容。通过plus.speech可获取语音输入管理对象。</p>
  16. <h2>方法:</h2>
  17. <ul>
  18. <li>
  19. <a href="#plus.speech.startRecognize">startRecognize</a>: 启动语音识别</li>
  20. <li>
  21. <a href="#plus.speech.stopRecognize">stopRecognize</a>: 停止语音识别</li>
  22. <li>
  23. <a href="#plus.speech.addEventListener">addEventListener</a>: 监听语音识别事件</li>
  24. </ul>
  25. <h2>对象:</h2>
  26. <ul>
  27. <li>
  28. <a href="#plus.speech.SpeechRecognizeOptions">SpeechRecognizeOptions</a>: JSON对象,语音识别参数</li>
  29. <li>
  30. <a href="#plus.speech.SpeechRecoginzeEvents">SpeechRecoginzeEvents</a>: 语音识别事件类型</li>
  31. </ul>
  32. <h2>回调方法:</h2>
  33. <ul>
  34. <li>
  35. <a href="#plus.speech.RecognitionEventCallback">RecognitionEventCallback</a>: 语音识别事件回调函数</li>
  36. <li>
  37. <a href="#plus.speech.RecognitionSuccessCallback">RecognitionSuccessCallback</a>: 语音识别成功回调</li>
  38. <li>
  39. <a href="#plus.speech.RecognitionErrorCallback%20">RecognitionErrorCallback </a>: 语音识别失败回调</li>
  40. </ul>
  41. <h2>权限:</h2>
  42. <p>permissions</p>
  43. <pre class="prettyprint linenums">
  44. {
  45. // ...
  46. "permissions":{
  47. // ...
  48. "Speech": {
  49. "description": "语音输入"
  50. }
  51. }
  52. }
  53. </pre>
  54. <h1><a name="plus.speech.SpeechRecognizeOptions">SpeechRecognizeOptions</a></h1>
  55. <p>JSON对象,语音识别参数</p>
  56. <pre class="prettyprint linenums">
  57. interface plus.speech.SpeechRecognizeOptions {
  58. attribute Boolean continue;
  59. attribute String engine;
  60. attribute String lang;
  61. attribute Number nbest;
  62. attribute String punctuation;
  63. attribute Number timeout;
  64. attribute Boolean userInterface;
  65. attribute EventHandler onstart;
  66. attribute EventHandler onend;
  67. }
  68. </pre>
  69. <h2>说明:</h2>
  70. <p class="des">
  71. 控制语音识别引擎内部参数,在JS中为JSON对象,在启动语音识别时使用。
  72. </p>
  73. <h2>属性:</h2>
  74. <ul>
  75. <li>continue: <em>(<font class="type">Boolean</font>
  76. 类型
  77. )</em>语音识别是否采用持续模式<br><p>
  78. 设置为true表示语音引擎不会根据语音输入自动结束,识别到文本内容将多次调用successCallback函数返回,如果需要结束语音识别则必须调用stopRecognize接口,默认值为false。
  79. </p>
  80. </li>
  81. <li>engine: <em>(<font class="type">String</font>
  82. 类型
  83. )</em>语音识别引擎标识<br><p>
  84. 用于兼容多语音识别引擎的浏览器,使用语音识别厂商的产品名称,如未设置或设置不正确则使用运行环境默认的语音识别引擎。
  85. 支持以下语音识别引擎:
  86. "baidu"-百度语音识别;
  87. "iFly"-讯飞语音识别。
  88. </p>
  89. </li>
  90. <li>lang: <em>(<font class="type">String</font>
  91. 类型
  92. )</em>语音识别引擎的语言<br><p>
  93. 用于定义语音识别引擎的语言,其取值需符合W3C的Language codes规范。
  94. 目前讯飞语音支持以下语言:
  95. "zh-cn"-中文,普通话;
  96. "en-us"-英语;
  97. "zh-cantonese"-中文,粤语;
  98. "zh-henanese"-中文,河南话(百度语音识别不支持此语言)。
  99. 默认值为"zh-cn"。
  100. </p>
  101. </li>
  102. <li>nbest: <em>(<font class="type">Number</font>
  103. 类型
  104. )</em>指定识别结果识别包括多候选结果<br><p>
  105. 用于指定识别结果识别包括多候选结果。如nbest:3,识别返回3个候选结果,默认值为1。
  106. </p>
  107. </li>
  108. <li>punctuation: <em>(<font class="type">Boolean</font>
  109. 类型
  110. )</em>识别结果中是否包含标点符号<br><p>
  111. true表示识别结果文本中包含标点符号,false表示识别结果文本中不包含标点符号。
  112. 默认值为true。
  113. </p>
  114. </li>
  115. <li>timeout: <em>(<font class="type">Number</font>
  116. 类型
  117. )</em>语音识别超时时间<br><p>
  118. 语音识别超时的时间,单位为ms,默认值为1000(即10秒)。
  119. 注:百度语音识别不支持此参数。
  120. </p>
  121. </li>
  122. <li>userInterface: <em>(<font class="type">Boolean</font>
  123. 类型
  124. )</em>识别时是否显示用户界面<br><p>
  125. 用于指定识别时是否显示用户界面,设置为true表示显示浏览器内置语音识别界面;设置为false表示不显示浏览器内置语音识别界面。默认值为true。
  126. </p>
  127. </li>
  128. <li>onstart: <em>(<font class="type">EventHandler</font>
  129. 类型
  130. )</em>语音识别开始事件(已废弃,使用start事件)<br><p>
  131. 事件函数,语音识别开始启动,在调用startRecognize方法后触发,与onend事件成对触发。
  132. 注:iOS平台未支持
  133. </p>
  134. </li>
  135. <li>onend: <em>(<font class="type">EventHandler</font>
  136. 类型
  137. )</em>语音识别结束事件(已废弃,使用end事件)<br><p>
  138. 事件函数,语音识别结束,在调用stopRecognize方法后触发,或者在引擎内部自动完成语音识别后触发,与onstart事件成对触发。
  139. 注:iOS平台未支持
  140. </p>
  141. </li>
  142. </ul>
  143. <h1><a name="plus.speech.SpeechRecoginzeEvents">SpeechRecoginzeEvents</a></h1>
  144. <p>语音识别事件类型</p>
  145. <h2>说明:</h2>
  146. <p class="des">
  147. 描述语音过程的触发事件列表,可以通过调用plus.sppech.addEventListener方法进行注册监听。
  148. </p>
  149. <h2>常量:</h2>
  150. <ul>
  151. <li>start: <em>(<font class="type">String</font>
  152. 类型
  153. )</em>开始语音识别<br><p>
  154. 调用plus.speech.startRecognize方法开始语音识别时触发。
  155. 无回调函数参数。
  156. </p>
  157. </li>
  158. <li>volumeChange: <em>(<font class="type">String</font>
  159. 类型
  160. )</em>音量变化<br><p>
  161. 开始语音识别后,麦克风录制到的语音音量变化时触发。
  162. 回调函数参数event={volume:"Number类型,取值范围0-1"}。
  163. </p>
  164. </li>
  165. <li>recognizing: <em>(<font class="type">String</font>
  166. 类型
  167. )</em>临时语音识别结果<br><p>
  168. 返回临时语音识别结果时触发。
  169. 回调函数参数event={partialResult:"String类型,临时识别结果"}。
  170. </p>
  171. </li>
  172. <li>recognition: <em>(<font class="type">String</font>
  173. 类型
  174. )</em>最终语音识别<br><p>
  175. 返回最终语音识别结果。
  176. 回调函数参数event={result:"String类型,最佳识别结果",results:"String数组类型,所有候选结果"}。
  177. </p>
  178. </li>
  179. <li>end: <em>(<font class="type">String</font>
  180. 类型
  181. )</em>结束语音识别<br><p>
  182. 调用plus.speech.stopRecognize方法结束语音识别或语音识别完成后自动结束时触发。
  183. 无回调函数参数。
  184. </p>
  185. </li>
  186. <li>error: <em>(<font class="type">String</font>
  187. 类型
  188. )</em>语音识别错误<br><p>
  189. 语音识别发生错误时触发。
  190. 回调函数参数event={code:"Number类型,错误编码",message:"String类型,错误描述信息"}。
  191. </p>
  192. </li>
  193. </ul>
  194. <h1><a name="plus.speech.RecognitionEventCallback">RecognitionEventCallback</a></h1>
  195. <p>语音识别事件回调函数</p>
  196. <pre class="prettyprint linenums">
  197. void onEvent(event){
  198. // Event code
  199. }
  200. </pre>
  201. <h2>说明:</h2>
  202. <p class="des">
  203. 调用plus.speech.addEventListener方法监听语音识别事件的回调函数。
  204. </p>
  205. <h2>参数:</h2>
  206. <ul><li>event:
  207. <em>(
  208. <font class="type">JSON</font>
  209. )
  210. 可选 </em><br>
  211. 不同事件返回的参数不一样,详情参考SpeechRecoginzeEvents事件说明。
  212. </li></ul>
  213. <h2>返回值:</h2>
  214. <font class="type">void</font>
  215. : 无<h1><a name="plus.speech.RecognitionSuccessCallback">RecognitionSuccessCallback</a></h1>
  216. <p>语音识别成功回调</p>
  217. <pre class="prettyprint linenums">
  218. void onSuccess(result){
  219. // Recognition success code
  220. }
  221. </pre>
  222. <h2>说明:</h2>
  223. <p class="des">
  224. 语音识别成功时的回调函数,用于返回语音识别出的文本内容。
  225. </p>
  226. <h2>参数:</h2>
  227. <ul><li>result:
  228. <em>(
  229. <font class="type">String</font>
  230. )
  231. 必选 </em>语音识别出的文本内容<br>
  232. </li></ul>
  233. <h2>返回值:</h2>
  234. <font class="type">void</font>
  235. : 无<h1><a name="plus.speech.RecognitionErrorCallback%20">RecognitionErrorCallback </a></h1>
  236. <p>语音识别失败回调</p>
  237. <pre class="prettyprint linenums">
  238. void onError(error){
  239. // Recognition error code
  240. }
  241. </pre>
  242. <h2>说明:</h2>
  243. <p class="des">
  244. 当语音识别失败时的回调函数,用于返回语音识别失败的错误信息。
  245. </p>
  246. <h2>参数:</h2>
  247. <ul><li>error:
  248. <em>(
  249. <font class="type">Exception</font>
  250. )
  251. 必选 </em>语音识别失败的错误信息<br>
  252. 可通过error.code(Number类型)获取错误编码;
  253. 可通过error.message(String类型)获取错误描述信息。
  254. 详细错误描述信息可参考:http://ask.dcloud.net.cn/article/282。
  255. </li></ul>
  256. <h2>返回值:</h2>
  257. <font class="type">void</font>
  258. : 无<br><br>
  259. </div></body>
  260. </html>