作为对话式AI应用中的重要组成部分,百家云AI智能体能够实时地将用户的语音转换为文字,并通过接口回调给客户端应用程序,方便进行实时字幕展示,方便用户回看或者记录对话过程。另外,在播放语音不便等场景下,实时字幕的作用也尤为重要。
实时字幕分为三种类型:
以上三种类型的字幕内容,都是以流式进行输出的,它通常以词或者短句为单位实时输出。
在与AI智能体进行语音对话期间,您需要通过BRTC客户端SDK的回调事件来监听服务器下发的不同类型的实时字幕文本内容。之后根据不同的字幕类型,分别解析并渲染到应用程序的界面上。
处理的代码,以Android端为例:
BRTC brtcEngine = BRTC.sharedInstance(getApplicationContext()); brtcEngine.setListener(new BRTCListener() { @Override public void onRecvAIMsg(@NonNull String userId, byte[] data) { parseAIMessage(new String(data, StandardCharsets.UTF_8)); } private void parseAIMessage(String jsonPayload) { try { Gson gson = new Gson(); JsonObject jsonObject = gson.fromJson(jsonPayload, JsonObject.class); if (jsonObject != null && jsonObject.has("cmd")) { int cmd = jsonObject.get("cmd").getAsInt(); // cmd = 3,表示是用户说话的内容 // cmd = 5, 表示是智能体说话的内容 // cmd = 7, 表示是用户说话内容的实时翻译 } } catch (Exception e) { e.printStackTrace(); } } }); // 进房 brtcEngine.enterRoom(...);
我们提供了客户端的实现Demo代码,您也可以参考Demo代码进行实现。
所有消息是顺序下发,不需要手动排序。
实时字幕
作为对话式AI应用中的重要组成部分,百家云AI智能体能够实时地将用户的语音转换为文字,并通过接口回调给客户端应用程序,方便进行实时字幕展示,方便用户回看或者记录对话过程。另外,在播放语音不便等场景下,实时字幕的作用也尤为重要。
实时字幕分为三种类型:
以上三种类型的字幕内容,都是以流式进行输出的,它通常以词或者短句为单位实时输出。
实时字幕展示流程
在与AI智能体进行语音对话期间,您需要通过BRTC客户端SDK的回调事件来监听服务器下发的不同类型的实时字幕文本内容。之后根据不同的字幕类型,分别解析并渲染到应用程序的界面上。
处理的代码,以Android端为例:
我们提供了客户端的实现Demo代码,您也可以参考Demo代码进行实现。
注意事项
所有消息是顺序下发,不需要手动排序。