【HarmonyOS NEXT】示例代码-基础语音服务(语音识别)
本示例展示了使用基础语音服务提供的语音识别能力。本示例展示了对一段音频流转换成文字的能力展示。需要使用语音识别接口@kit.CoreSpeechKit.d.ts.
介绍
本示例展示了使用基础语音服务提供的语音识别能力。
本示例展示了对一段音频流转换成文字的能力展示。
需要使用语音识别接口@kit.CoreSpeechKit.d.ts.
效果预览
| 桌面 | 主页面 | 播报 |
|---|---|---|
|
|
|
|
使用说明:
-
在手机的主屏幕,点击”asrDemo“,启动应用。
-
点击“CreateEngine”,进行能力初始化。
-
点击“startRecording”,开始识别。
-
点击“audioTotext”,写流进行识别,需开发者准备好音频流。 若demo中采用从音频文件中读取的方式获取音频流,优先执行执行如下命令: hdc file send 001.pcm /data/app/el2/100/base/com.huawei.hms.asrdemo/haps/entry/files hdc shell chmod 777 -R /data/app/el2/100/base/com.huawei.hms.asrdemo/haps/entry/files/001.pcm 将PCM格式的音频信息导入本demo的沙箱路径下。 点击“audioTotext”按钮即可从音频文件中获取音频信息并写入。
-
点击“finish”等按钮对识别事件进行控制。
-
点击“queryLanguagesCallback/queryLanguagesPromise”,查询支持的语种和音色。
工程目录
├─entry/src/main/ets // 代码区 │ ├─entryability │ │ └─EntryAbility.ets │ └─pages │ ├─AsrConstants.ts // 常量类 │ ├─AudioCapturer.ts // 录音器实现1 │ ├─FileCapturer.ts // 录音器实现2 │ ├─ICapturerInterface.ts // 录音器接口类 │ ├─Index.ets // 主界面 │ └─Util.ts // 工具类 ├─entry/src/main/resources // 应用资源目录 └─screenshots // 截图
具体实现
本示例展示了在@kit.CoreSpeechKit.d.ts定义的API:
* createEngine(createEngineParams: CreateEngineParams, callback: AsyncCallback<SpeechRecognizerEngine>): void; * createEngine(createEngineParams: CreateEngineParams): Promise<SpeechRecognizerEngine>; * setListener(listener: RecognizerListener): void; * queryLanguages(params: LanguageQuery, callback: AsyncCallback<Array<string>>): void; * queryLanguages(params: LanguageQuery): Promise<Array<string>>; * startListening(params: StartParams): void; * writeAudio(sessionId: string, audio: Uint8Array): void; * finish(sessionId: string): void; * cancel(sessionId: string): void; * shutdown(): void;
业务使用时,需要先进行import导入speechRecognizer。 调用writeAudio等接口,传入想要识别的音频,得到识别结果,观察日志等。参考entry/src/main/ets/pages/Index.ets.
相关权限
ohos.permission.MICROPHONE
更多详情参考:示例代码
更多推荐






所有评论(0)