Serverless 应用中心 部署互动直播间语音识别服务

这篇说说腾讯云TRTC实时语音识别服务,深度融合TRTC与ASR,支持实时拉取房间音频进行识别并回调至业务服务器,适用于你画我猜、语音审核和实时字幕场景,提供实时返回、流程简单、使用灵活等优势。 使用场景:支持你画我猜、语音审核、实时字幕三种典型应用。 使用流程:需开通语音识别服务,在Serverless控制台创建直播房间实时语音识别应用并部署函数。 识别结果回调:回调参数包含SdkAppId、RoomId、User。

相关产品
Serverless 应用中心 产品页,含版本规格、价格与购买入口。

一、使用场景

·你画我猜:可以实时拉取房间内某个用户的音频进行实时识别,转换成文本之后回调给客户的业务服务器,进行业务逻辑判断

·语音审核:和业务关联比较多的语音审核,可以采取该接口将数据流投递到语音识别接口进行语音识别,然后进行关键词过滤。

·实时字幕:可以通过该接口实时识别房间音频数据,形成文本,在前端做呈现。

二、架构原理

具体流程如下:


三、应用优势

·实时返回:可以将 trtc 房间的语音数据实时识别返回,快速高效。

·流程简单:深度融合 trtc 和 asr,数据流完全打通,不需要复杂接入流程。

·使用灵活:数据返回给业务服务器之后,可以和业务逻辑实时关联。

四、注意事项

·一般情况下,语音识别的处理时间较长是由于部署函数时开启了 异步执行。

·目前识别的结果将下发至业务服务器。暂不支持 websocket 的形式,无法下发至客户端。

·默认的鉴权形式是 应用鉴权,测试时可更改为 无鉴权。

五、1. 开通服务

你需要开启腾讯云语音识别服务,操作详情见 开通语音识别服务。

六、2. 部署函数服务

1. 登录 Serverless 应用控制台。

2. 单击新建应用,进入“新建应用”页面。如下:


3. 选择直播房间实时语音识别服务,并进行基础配置。如下:


·应用名:自定义名称。

·地域:根据实际情况进行选择。

·密钥信息:你可在 API密钥管理 中查看腾讯云账号密钥信息。

4. 单击完成即可。已创建的应用详情界面如下:


5. 单击云函数 > 函数名称进入函数详情页,在“触发管理”中获取访问路径。

七、3. 语音识别启动接口

proto: HTTPSMethod: POSTURL: https://service-xxx-xxxx.sh.apigw.tencentcs.com/release/asr_speech

请求参数:

参数 类型 必填 说明
SdkAppId Int 是 应用 ID,用于区分不同 TRTC 应用。
RoomId Int 否 整型房间号 ID,用于在一个 TRTC 应用中唯一标识一个房间。
StrRoomId String 否 字符串房间号 ID,RoomId 与 StrRoomId 必须配置一项,如果 RoomId 与 StrRoomId 同时配置,使用 RoomId。
UserId String 是 录制用户 ID,用于在一个 TRTC 应用中唯一标识一个用户。
UserSig String 是 录制用户签名,用于对一个用户进行登录鉴权认证。
Callback String 否 录制结束后的回调地址,并使用 POST 方式进行回调。

请求示例:

{ "SdkAppId": 1400000000, "RoomId": 43474, "UserId": "user_55952145", "UserSig": "eJwtzNEKgkAUBNBxxxxxxx", "Callback": "https:xxxxxxxx.com/post/xxx"}

八、识别结果回调接口

回调参数说明:

参数 类型 必填 说明
SdkAppId Int 是 应用 ID。
RoomId int 是 整型房间 ID。
UserId String 是 识别的用户 ID。
StrRoomId String 是 字符串房间 ID。
Result Array 是 语音识别结果 [{},{},{},{}]
Status String 是 当前用户语言识别状态,normal/finished

Result 为数组类型,元素封装为 JSON 对象,封装格式如下:

参数名称 类型 必选 描述
Voice String 是 当前一句话文本结果,编码为 UTF8。
Index Integer 是 当前一句话结果在整个音频流中的序号,从 0 开始逐句递增。
StartTime Integer 是 当前一句话结果在整个音频流中的起始时间。
EndTime Integer 是 当前一句话结果在整个音频流中的结束时间。
Message String 是 识别任务的执行结果。例如,识别结束,识别中,识别失败等。

结果示例:

{ "RequestID": "95941e2c85898384a95b81c2a5******", "SdkAppId": 1400000000, "RoomId": 43474, "UserId": "user_55952145", "Status": "recognizing/finished", "Result": [{ "Voice": "实时语音识别", "Index": 0, "StartTime": 0, "EndTime": 1024, "Message": "success" }]}

赞 (0)
上一篇 4天前
下一篇 4天前