Flutter SDK
SDK 以插件的方式封装了录音文件识别极速版功能,提供 flutter 版本的录音文件识别极速版,本文介绍 SDK 的安装方法及示例。
开发环境
Dart >= 2.18.4
Flutter >= 3.3.8
Android API Level >= 16
iOS >= 9.0
获取安装
接入指引
此插件仅支持 Android 和 iOS 两个平台且包含了平台相关的库,使用时请确保开发环境包含 Android Studio 及 XCode 否则可能会出现集成时的编译问题。
1. 将项目中 asr_plugin 目录复制到自己的 Flutter 工程下。
2. 在自己项目的配置文件 pubspec.yaml 下添加依赖。
asr_plugin:# 该路径根据asr_plugin存放路径改变path: ../asr_plugin
3. 在需要使用到的页面,导入 asr_plugin 的依赖。
import 'package:asr_plugin/asr_plugin.dart';
接口说明
接口示例代码为 demo 部分代码,完整代码请参考位于 example 里的 demo 示例。
FlashFileASRParams
示例
var _params = FlashFileASRParams();_params.data = Uint8List.view((await rootBundle.load("assets/30s.wav")).buffer);_params.voice_format = OneSentenceASRParams.FORMAT_WAV;
FlashFileASRController
控制录音文件识别极速版的流程及获取录音文件识别极速版的结果。
方法
Future<FlashFileASRResult> recognize(FlashFileASRParams params) async;
示例
var ret = (await _controller.recognize(_params));
FlashFileASRResult
参数
String response_body = ""; // 服务端返回原始信息late int code; // 0:正常,其他,发生错误late String message; // code 非0时,message 中会有错误消息late String request_id; // 请求唯一标识,请您记录该值,以便排查错误late int audio_duration; // 音频时长,单位为毫秒List<Result>? flash_result; // 声道识别结果列表
Sentence
参数
String text; // 句子/段落级别文本int start_time; // 开始时间int end_time; // 结束时间int speaker_id; // 说话人 Id(请求中如果设置了 speaker_diarization,可以按照 speaker_id 来区分说话人)List<Word>? word_list;// 词级别的识别结果列表
Result
参数
int channel_id = 0; // 声道标识,从0开始,对应音频声道数String text = ""; // 声道音频完整识别结果List<Sentence>? sentence_list; // 句子/段落级别的识别结果列表