跳到主要内容

快速集成

本文主要介绍如何使用 KAsrSDK 以及科达视讯平台实现实时语音识别功能。

开发环境要求

  • 操作系统:Windows 7及以上版本。
  • 开发环境:Visual Studio 2015及以上版本,推荐使用 Visual Studio 2017。

音频格式要求

  • 采样率:16KHz
  • 采样位数:16bits
  • 通道数:单通道
  • 音频格式:无压缩PCM或WAVE

调用流程

1. 初始化KAsrSDK

在调用其他 KAsrSDK 接口 前,需要初始化 KAsrSDK 库。

KAsrSdkLogParam logParam{ false, nullptr, nullptr };
KAsrSdkInitParam initParam;
KASRSDK::init(&logParam, &initParam);

2. 获取 KAsrClient 对象

为使用 KAsrSDK 视讯接口,您需要先获取 KAsrClient 对象

KASRSDK::KAsrClient* rtcClient = KASRSDK::createAsrInstance();

KAsrSDK 支持多实例模式,您需要为每个 KAsrClient 对象分别注册回调

    class MyCallBack : public KASRSDK::KAsrCallback
{


virtual void onWarning(KASRSDK::ASR_SDK_WARNING warningType, const char* content) {}

virtual void onError(KASRSDK::ASR_SDK_ERROR errorType, const char* content) {}

virtual void onRelease(int32_t result) {}

virtual void onStart(int32_t result, const char *sessionId){}

virtual void onRecogResult(KASRSDK::KAsrRecogResult *result){ }

virtual void onStop(int32_t result) {}
};

MyCallBack callback;

asrClient->init(&callback);

3. 开始会话

在进行实时转写前,您需要打开一个会话

KASRSDK::KAsrAuthParam param{ "ws://139.196.210.175:7961/","token" };
asrClient->start(&param);

验证成功后,您会收到 onStart 回调.

4. 传输音频

在成功打开会话后,就可以传输音频了(单声道,采样率16k, 量化的精度16bit )。

KASRSDK::KAsrAudioFrameData audioFrameData;
asrClient->feed(&audioFrameData);

当后台识别到文本后,您会收到onRecogResult回调

5. 结束会话

调用以下接口来结束会话,退出后SDK会自动释放相关资源

asrClient->stop();

成功结束会话时您会收到 onStop 回调