Android SDK 接入(旧)

该技术服务已迁移至思必驰开放平台,本文档于2020年8月25日停止更新。最新版请查看:https://cloud.aispeech.com/docs/asr_sentence_android

一、功能介绍

一句话识别SDK,对时长较短(60秒以内)的语音进行识别,非实时的返回识别结果。适用于较短的语音交互场景,如语音搜索、语音指令、语音短消息等,可集成在各类App、智能家电、智能助手等产品中。支持:

  • 可用于基于协议开发的:轻量级嵌入式设备;
  • 支持pcm,wav, ogg(speex), ogg_opus, mp3等多种格式的音频识别;
  • 支持语言模型等特殊配置,请联系商务或项目经理进行定制,或联系:asrsupport_service@aispeech.com(邮件中请提供联系方式和需求详细描述)。

二、调用限制

内容

说明

字符编码 UTF-8
语言种类 cn(默认值, 中文)
服务鉴权 一句话转写服务使用需要进行授权,详见:单项技术概述(Android)
音频属性 采样率16k、单声道
音频格式

wav, mp3, ogg(speex), ogg_opus等多种格式

服务开通 调用服务需要先购买时长

注意:请以 一句话识别server接入 为准

三、集成流程

3.1 产品创建与授权

产品创建

3.2 SDK集成准备

下载SDK

请前往:这里  下载最新版本的SDK。

SDK准备

集成SDK前,需要有jar:DUI-lite-SDK-for-Android-xxx.jar

3.3 集成SDK

SDK集成和授权

请参照文档  单项技术概述(Android)

流程图

四、SDK 使用说明

4.1 初始化

engine = AICloudASRSentenceEngine.createInstance();
// engine.init("https://lasr.duiopen.com", new AIASRSentenceListenerImple());
engine.init(new AIASRSentenceListenerImple()); // 默认域名即为 https://lasr.duiopen.com

4.2 开始请求识别

AICloudASRSentenceConfig.AudioParam audioParam = new AICloudASRSentenceConfig.AudioParam(audioType);
AICloudASRSentenceConfig config = new AICloudASRSentenceConfig();
config.setAudioParam(audioParam);

/***********文件形式识别***********/
engine.asrSentence(filePath, config);
engine.cancelASR(filePath); // 可以取消对应的识别请求
/***********另一种音频形式,可用于音频在内存里,直接请求服务器***********/
File file = new File(filePath);
// 音频文件限制在1分钟且5M之内
byte[] audioData = new byte[(int) file.length()];
readFile(file, audioData); // 这里用文件做演示
// 回调结果时会一同传出,用来区分不同。也可以写其它的有含义的uniqueId,比如    String.valueOf(audioData)
final String uniqueId = "ABC123";
engine.asrSentence(uniqueId, audioData, config);
// 可以取消对应的识别请求
engine.cancelASR(uniqueId);


/***********取消所有的识别请求***********/
engine.cancelAllASR();

4.3 响应结果

{
  errno: 0,
  error: "",
  data: {
    session_id: "5e548cf5d992b626aceea8e5",                //服务器响应唯一ID
    request: {
      audio: {
        audio_type: "wav",
        channel: 1,
        sample_bytes: 2,
        sample_rate: 16000
      },
      duration: 91718,                                      // 音频时长
      length: 2935034,                                      // 音频文件长度
      request_id: "92634b3b04dd41e3bcd966758dcc8d3c"
    },
    result: [                 //正常的识别分句结果
      {
        bg: 1850,             //开始时间(ms)
        ed: 12980,            //结束时间(ms)
        onebest: ""           //识别文本
      },
      {
        bg: 1850,
        ed: 12980,
        onebest: ""
      },
      ...
    ],
    segments: [               //当打开use_segment参数,会额外返回分词后的结果
      {
        bg: 1850,
        ed: 12980,
        onebest: ""
      },
      {
        bg: 1850,
        ed: 12980,
        onebest: ""
      },
      ...
    ]
  }
}
 

4.4 销毁引擎

engine.destroy();

五、错误码

识别时可能遇到的错误码,参考 错误码(Android)

六、常见问题

1、 如何试用服务和购买服务

您可以直接购买一句话识别服务套餐。套餐量越大越优惠。点此了解:产品服务定价

如果有更大量的需求,请线下联系商务或联系asrsupport_service@aispeech.com(邮件中请提供联系方式和需求详细描述)。

2、 对硬件的要求有什么

Android 4.0 及以上系统的设备,能联网即可。