- 文档首页
实时音视频
实时音视频
开发指南
音频管理
范围语音
范围语音
范围语音是一种基于距离的音量衰减技术,可实现根据用户在三维空间中的相对距离实时调节语音音量:离得越近,声音越清晰;离得越远,声音越小,甚至静音。该功能常与空间音频协同使用,让用户通过声音即可直观感知对方的物理距离,在游戏或虚拟空间中构建真实的临场互动体验。 原理说明
如下图所示,用户都处于同一个 RTC 房间中。P 是收听的用户,A、B、C、D、E 是发声的用户。
- 无衰减区(浅色区 r) :在该区域内(如 A、B 用户),声音保持原音量,不受距离影响。
- 有衰减区(深色区 R) :超出 r 区域后,声音随距离增加而线性衰减(如 D 的音量衰减程度大于 C)。当距离超出 R 的最大边缘时,声音将完全静音。即 P 无法听到在 R 区域外侧边缘的用户 E 的声音。
- 小队豁免:支持设置“小队标签”,同小队成员即使处于衰减区,通话音量也保持无衰减。
实现方式
- 调用 getRangeAudio 获取范围语音接口实例。
- 调用 updatePosition 更新自身在房间中的位置坐标,此时 SDK 会根据相对位置计算衰减系数。
配合 空间音频功能使用时,应保证为同一用户分别传入的是相同的坐标信息。 - 调用 updateReceiveRange 更新具有音量衰减效果的音频接收范围。
- 调用 enableRangeAudio 开启范围语音功能,收听设定范围内音频音量衰减效果。
- (可选)调用 setNoAttenuationFlags 设定用户所属的一个或多个小队,以和同 RTC 房间内的其他小队成员无衰减通话。
API 参考
功能变更日志
- SDK 3.48:范围语音支持了无衰减的小队成员间通话。
- SDK 3.43:范围语音支持了更多的音量衰减模式选项。
最近更新时间:2026.08.19 15:47:47