Package com.zego.zegorangeaudio
Class ZegoRangeAudio
- java.lang.Object
-
- com.zego.zegorangeaudio.ZegoRangeAudio
-
public class ZegoRangeAudio extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classZegoRangeAudio.ZegoRangeAudioMicrophoneState范围语音麦克风状态。classZegoRangeAudio.ZegoRangeAudioMode范围语音模式。static classZegoRangeAudio.ZegoReceiveRangeParam接收范围配置static classZegoRangeAudio.ZegoVocalRangeParam发声范围配置
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidenableMicrophone(boolean enable)详情描述: 开启麦克风,SDK 将会自动使用主通道推音频流 。 默认值 : false 关闭。 调用时机: Init 之后,UnInit 之前。 相关回调: IZegoRangeAudioCallbcak 中的 OnRangAudioMicrophone 回调查看开启麦克风结果。voidenableSpatializer(boolean enable)详情描述: 开启 3D 空间音效,开启后,在房间内非小队成员的音频,会随离我的距离,和方向产生空间变化。 默认值 : false 关闭。 调用时机: Init 之后,UnInit 之前。voidenableSpeaker(boolean enable)详情描述: 开启扬声器,将会自动拉取房间内的音频流; 若当前是仅小队模式,将只会拉取同一小队的音频流,停止非小队的音频流; 若当前是世界模式, 将优先拉取同一小队的语音,非小队成员,则按距离我最近的的开始拉取。 默认值 : false 关闭。 调用时机: Init 之后,UnInit 之前。static ZegoRangeAudiogetInstance()详情描述: 获取范围语音实例对象。booleaninit()详情描述: 初始化范围语音。 调用时机: 必须 InitSDK 之后。 使用限制: 不支持多房间 SDK 。与 UnInit 配对调用。voidmuteUser(java.lang.String userID, boolean mute)详情描述: 是否可接收指定用户音频数据。 调用时机: Init 之后,UnInit 之前。voidonRangAudioMicrophone(int state, int errorCode)voidsetAudioRecvRange(float range)详情描述: 设置音频的接收范围; 设置范围后,在开启3D音效情况下,声音将会随距离衰减,直至超出设置范围,则不再有声音; 小队内的语音,将不会受到此值的限制。 默认值 : 0.00 调用时机: Init 之后,UnInit 之前。intsetAudioRecvRange(ZegoRangeAudio.ZegoReceiveRangeParam param)详情描述: 设置音频的接收范围; 设置范围后,在开启3D音效情况下,声音将会随距离衰减,直至超出设置范围,则不再有声音; 小队内的语音,将不会受到此值的限制。 调用时机: Init 之后,UnInit 之前。booleansetCallback(IZegoRangeAudioCallbcak callback)详情描述: 设置范围语音回调相关。 调用时机: Init 之前。 相关回调: 参见 IZegoRangeAudioCallbcak 。voidsetMode(int mode)详情描述: 设置小队模式; 如设置 ZegoRangeAudioMode.World 则会听到自己小队内和房间内其它用户模式为 ZegoRangeAudioMode.World ,且在距离我音频接收范围内的语音; 如设置 ZegoRangeAudioMode.Team 则只能听到与自己同一小队的语音。 默认值 : ZegoRangeAudioMode.World 调用时机: Init 之后,UnInit 之前,可随时变更。voidsetPositionUpdateFrequency(int frequency)详情描述: 设置范围语音位置更新频率。 调用时机: Init 之后,UnInit 之前。voidsetRangeAudioVolume(int volume)详情描述: 设置范围语音音量。 调用时机: Init 之后,UnInit 之前。voidsetTeamID(java.lang.String teamID)详情描述: 设置小队ID 设置后,将能听到与房间内的其他用户属于同一小队下的声音,且不会随距离方向产生变化。 默认值 : 空。 调用时机: Init 之后,UnInit 之前。可随时变更。voidunInit()详情描述: 反初始化范围语音。 调用时机: 调用了 Init 。 使用限制: 与 Init 配对调用。voidupdateAudioSource(java.lang.String userID, float[] position)详情描述: 更新房间内的其它用户(音频源)位置。 调用时机: Init 之后,UnInit 之前,收到登录房间成功回调之后。voidupdateSelfPosition(float[] position, float[] axisForward, float[] axisRight, float[] axisUp)详情描述: 更新自己的位置。 调用时机: Init 之后,UnInit 之前,收到登录房间成功回调之后。voidupdateStreamPosition(java.lang.String streamID, float[] position)详情描述: 设置流的位置, 注意该流为调用StartPlayStream拉的流,范围语音,不会自动接管该流 调用时机: Init 之后且拉流之后。voidupdateStreamVocalRange(java.lang.String streamID, float vocalRange)详情描述: 设置流的发声范围, 注意该流为调用StartPlayStream拉的流,范围语音,不会自动接管该流 调用时机: Init 之后且拉流之后。intupdateStreamVocalRange(java.lang.String streamID, ZegoRangeAudio.ZegoVocalRangeParam param)详情描述: 设置流的发声范围, 注意该流为调用StartPlayStream拉的流,范围语音,不会自动接管该流 调用时机: Init 之后且拉流之后。
-
-
-
Method Detail
-
getInstance
public static ZegoRangeAudio getInstance()
详情描述: 获取范围语音实例对象。
-
setCallback
public boolean setCallback(IZegoRangeAudioCallbcak callback)
详情描述: 设置范围语音回调相关。 调用时机: Init 之前。 相关回调: 参见 IZegoRangeAudioCallbcak 。- Parameters:
callback- 回调指针。
-
init
public boolean init()
详情描述: 初始化范围语音。 调用时机: 必须 InitSDK 之后。 使用限制: 不支持多房间 SDK 。与 UnInit 配对调用。- Returns:
- true 成功,false 失败。
-
unInit
public void unInit()
详情描述: 反初始化范围语音。 调用时机: 调用了 Init 。 使用限制: 与 Init 配对调用。
-
setMode
public void setMode(int mode)
详情描述: 设置小队模式; 如设置 ZegoRangeAudioMode.World 则会听到自己小队内和房间内其它用户模式为 ZegoRangeAudioMode.World ,且在距离我音频接收范围内的语音; 如设置 ZegoRangeAudioMode.Team 则只能听到与自己同一小队的语音。 默认值 : ZegoRangeAudioMode.World 调用时机: Init 之后,UnInit 之前,可随时变更。- Parameters:
mode- 参见 ZegoRangeAudioMode 。
-
setTeamID
public void setTeamID(java.lang.String teamID)
详情描述: 设置小队ID 设置后,将能听到与房间内的其他用户属于同一小队下的声音,且不会随距离方向产生变化。 默认值 : 空。 调用时机: Init 之后,UnInit 之前。可随时变更。- Parameters:
teamID- 可随时变更。
-
setAudioRecvRange
public void setAudioRecvRange(float range)
详情描述: 设置音频的接收范围; 设置范围后,在开启3D音效情况下,声音将会随距离衰减,直至超出设置范围,则不再有声音; 小队内的语音,将不会受到此值的限制。 默认值 : 0.00 调用时机: Init 之后,UnInit 之前。- Parameters:
range- 接受范围。
-
setAudioRecvRange
public int setAudioRecvRange(ZegoRangeAudio.ZegoReceiveRangeParam param)
详情描述: 设置音频的接收范围; 设置范围后,在开启3D音效情况下,声音将会随距离衰减,直至超出设置范围,则不再有声音; 小队内的语音,将不会受到此值的限制。 调用时机: Init 之后,UnInit 之前。- Parameters:
param- 接收范围配置- Returns:
- 0:成功,其他:失败,见具体错误码
-
enableMicrophone
public void enableMicrophone(boolean enable)
详情描述: 开启麦克风,SDK 将会自动使用主通道推音频流 。 默认值 : false 关闭。 调用时机: Init 之后,UnInit 之前。 相关回调: IZegoRangeAudioCallbcak 中的 OnRangAudioMicrophone 回调查看开启麦克风结果。- Parameters:
enable- true 开启,false 关闭。
-
enableSpeaker
public void enableSpeaker(boolean enable)
详情描述: 开启扬声器,将会自动拉取房间内的音频流; 若当前是仅小队模式,将只会拉取同一小队的音频流,停止非小队的音频流; 若当前是世界模式, 将优先拉取同一小队的语音,非小队成员,则按距离我最近的的开始拉取。 默认值 : false 关闭。 调用时机: Init 之后,UnInit 之前。- Parameters:
enable- true 开启,false 关闭。
-
enableSpatializer
public void enableSpatializer(boolean enable)
详情描述: 开启 3D 空间音效,开启后,在房间内非小队成员的音频,会随离我的距离,和方向产生空间变化。 默认值 : false 关闭。 调用时机: Init 之后,UnInit 之前。- Parameters:
enable- true 开启,false 关闭。
-
updateAudioSource
public void updateAudioSource(java.lang.String userID, float[] position)详情描述: 更新房间内的其它用户(音频源)位置。 调用时机: Init 之后,UnInit 之前,收到登录房间成功回调之后。- Parameters:
userID- 房间内其它用户的userid。position- 长度为 3 的 float 数组,用户的三维空间坐标,顺序为前,右,上。
-
updateSelfPosition
public void updateSelfPosition(float[] position, float[] axisForward, float[] axisRight, float[] axisUp)详情描述: 更新自己的位置。 调用时机: Init 之后,UnInit 之前,收到登录房间成功回调之后。- Parameters:
position- 长度为 3 的 float 数组,自己的三维空间坐标,顺序为前,右,上。axisForward- 长度为 3 的 float 数组,前朝向的单位向量。axisRight- 长度为 3 的 float 右朝向的单位向量。axisUp- 长度为 3 的 float 上朝向的单位向量。
-
muteUser
public void muteUser(java.lang.String userID, boolean mute)详情描述: 是否可接收指定用户音频数据。 调用时机: Init 之后,UnInit 之前。- Parameters:
userID- 指定用户 ID,设置是否接受该用户的音频数据,默认接收。mute- true 表示不接收,false表示接收。
-
setPositionUpdateFrequency
public void setPositionUpdateFrequency(int frequency)
详情描述: 设置范围语音位置更新频率。 调用时机: Init 之后,UnInit 之前。- Parameters:
frequency- 单位 ms 最小为 15ms,默认100ms。
-
setRangeAudioVolume
public void setRangeAudioVolume(int volume)
详情描述: 设置范围语音音量。 调用时机: Init 之后,UnInit 之前。- Parameters:
volume- 音量默认100。取汁[0,200]。
-
updateStreamVocalRange
public void updateStreamVocalRange(java.lang.String streamID, float vocalRange)详情描述: 设置流的发声范围, 注意该流为调用StartPlayStream拉的流,范围语音,不会自动接管该流 调用时机: Init 之后且拉流之后。- Parameters:
streamID- 流id。vocalRange- 发声范围
-
updateStreamVocalRange
public int updateStreamVocalRange(java.lang.String streamID, ZegoRangeAudio.ZegoVocalRangeParam param)详情描述: 设置流的发声范围, 注意该流为调用StartPlayStream拉的流,范围语音,不会自动接管该流 调用时机: Init 之后且拉流之后。- Parameters:
streamID- 流id。param- 流发声范围配置- Returns:
- 0:成功,其他:失败,见具体错误码
-
updateStreamPosition
public void updateStreamPosition(java.lang.String streamID, float[] position)详情描述: 设置流的位置, 注意该流为调用StartPlayStream拉的流,范围语音,不会自动接管该流 调用时机: Init 之后且拉流之后。- Parameters:
streamID- 流id。position- 改流的位置
-
onRangAudioMicrophone
public void onRangAudioMicrophone(int state, int errorCode)
-
-