AOQ SDK 媒体流发送的启停控制
enableSendMediaStream用于控制客户端是否向 AI 服务发送音频/视频媒体流,在 AOQ 协议接入场景中精确控制发送时机。
概述
enableSendMediaStream用于控制客户端是否向 AI 服务发送音频/视频媒体流。在 AOQ 协议接入场景中,部分模型要求在收到session.updated确认后才能接收媒体数据,因此需要通过此接口精确控制发送时机。
API 定义
- iOS / Mac
- Android
- HarmonyOS (ArkTS)
| 参数 | 类型 | 说明 |
|---|---|---|
| trackType | AoqTrackType | 媒体轨道类型:.audio或.video |
| enable | Bool | true= 开启发送,false= 暂停发送 |
控制流程
典型的媒体流控制流程如下:
使用示例(iOS Swift)
connect 前禁用发送
收到 session.updated 后开启
注意事项
- 调用时机:必须在
createEngine之后调用,引擎未创建时调用无效。 - 默认行为:如果不调用此接口,connect 成功后 SDK 会立即开始发送媒体流。
- 模型兼容性:部分模型要求先收到
session.updated再接收媒体数据,建议统一采用"先禁用、后开启"模式。 - 独立控制:音频和视频可独立控制,例如仅发送音频不发送视频。
常见场景
| 场景 | 操作 | 说明 |
|---|---|---|
| 连接模型前 | enable(.audio, false) | 等待 session.updated 再发送 |
| 收到 session.updated | enable(.audio, true) | AI 已就绪,开始发送 |