/ifly_speech_recognition

A ifly speech recognition package。

Primary LanguageDartMIT LicenseMIT

ifly_speech_recognition

根据科大讯飞**语音听写(流式版)WebAPI**文档,实现60s的语音识别功能。

安装

dependencies:
  ifly_speech_recognition: ^0.3.1+3

导入

import 'package:ifly_speech_recognition/ifly_speech_recognition.dart';

配置

  • 由于依赖 flutter_sound 此三方库,所以iOS需要添加对应配置: XCode > Build Settings > Other Linker Flags : -lc++ -lstd++

  • 如果添加两个库后,出现error: ld: library not found for -lstd++,则可以只添加-lc++

更具体内容请查看 flutter_sound官方文档 底部

使用

  • 初始化一个服务

注意:app_id app_key app_secrret需要到科大讯飞开放平台进行应用申请

SpeechRecognitionService _recognitionService = SpeechRecognitionService(
  appId: 'iflyAppId',
  appKey: 'iflyApiKey',
  appSecret: 'iflyApiSecret',
);

// 初始化语音识别服务
_recognitionService.initRecorder();
  • 开启录音
_recognitionService.startRecord();
  • 停止录音
_recognitionService.stopRecord();
  • 开始语音识别
// 语音识别回调
_recognitionService.onRecordResult().listen((message) {
  // 语音识别成功,结果为 message

}, onError: (err) {
  // 语音识别失败,原因为 err

});

_recognitionService.onStopRecording().listen((isAutomatic) {
  if (isAutomatic) {
    // 录音时间到达最大值60s,自动停止

    } else {
    // 主动调用 stopRecord,停止录音

  }
});

// 开始识别
_recognitionService.speechRecognition();