概述
腾讯云实时音视频(TRTC)接入实时语音识别,主要是将TRTC中的音频数据传递到语音识别的音频数据源中进行实时识别。本篇讲述如何对TRTC本地和远端的音频流进行实时识别。
接入文档
TRTC SDK接入:https://cloud.tencent.com/document/product/647/32175
ASR SDK接入:https://cloud.tencent.com/document/product/1093/35722
TRTC接入实时语音识别:https://cloud.tencent.com/document/product/1093/48163
TRTC SDK文档:https://liteav.sdk.zijiebao.com/doc/api/zh-cn/md_introduction_trtc_zh_Android_Brief.html
调用流程
时序图:
相关类
TRTC相关类:TRTCCloud(核心类)、TRTCCloudDef.TRTCAudioFrameCallbackFormat(音频数据格式)、TRTCCloudListener.TRTCAudioFrameListener(音频回调监听)。
ASR相关类:AAIClient(核心类)、AudioDataSource(音频数据来源)、AudioRecognizeRequest(识别请求)。
类图结构:
调用顺序:
1.初始化实时音视频SDK,设置音频回调格式(声道、采样率),设置音频采集回调监听。如果需识别本端音频流需设置mTRTCCloud.setCapturedRawAudioFrameCallbackFormat(format),如果需识别远端传来的音频流则设置mTRTCCloud.setMixedPlayAudioFrameCallbackFormat(format),与第4步对应。
2.初始化语音识别SDK,设置实时语音识别请求参数和音频数据源(mDataSource),mDataSource的实现方式请参考TRTC接入实时语音识别文档(https://cloud.tencent.com/document/product/1093/48163)—>Android接入流程第4点—>接入 ASR 的 PcmAudioDataSource 接口实现。
3.开始实时音视频的音视数据采集,开启实时语音识别。
4.TRTC音频回调方法中获取到音频数据并开始向实时语音识别的音频数据源中写入(PCM)音频流。如果需识别本端的音频流则在onCapturedRawAudioFrame()方法中写入,如果需识别远端的音频流则在onMixedPlayAudioFrame()方法中写入,与第1步对应。回调结果TRTCloudDef.TRTCAudioFrame中包含了音频数据、当前音频流的采样率和声道数。
5.进行识别并返回识别结果。