RtcNativeLibraryLoader

public interface com.ss.video.rtc.engine.loader.RtcNativeLibraryLoader

用户自定义动态库加载器实现

成员函数

返回 名称
boolean load

函数说明

load

boolean com.ss.video.rtc.engine.loader.RtcNativeLibraryLoader.load(
    String libraryName)

SDK 在需要加载动态库时通过该方法回调

传入参数

参数名 类型 说明
libraryName String 要加载的动态库名称

IGameRTCEventHandler

public interface com.ss.video.rtc.engine.handler.IGameRTCEventHandler

GameRTCEngine 回调类

成员函数

返回 名称
void onJoinRoomSuccess
void onLeaveRoom
void onUserJoined
void onUserLeave
void onMicrophoneEnabled
void onAudioSendEnabled
void onSpeakerphoneEnabled
void onAudioVolumeIndication
void onConnectionStateChanged
void onNetworkQuality
void onLogReport
void onEngineWarning
void onRoomWarning
void onRoomError

函数说明

onJoinRoomSuccess

public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onJoinRoomSuccess(
    String roomId,
    String userId,
    boolean isRejoined,
    int elapsed)

用户成功加入房间/重连进房后,收到此回调。

传入参数

参数名 类型 说明
roomId String 房间 ID
userId String 用户 ID
isRejoined boolean 是否为重连进房:
• true: 是重连进房
• false:是初次进房
elapsed int 加入房间耗时。用户从调用 joinRoom 方法到加入房间成功所经历的时间间隔,单位为 ms。

onLeaveRoom

public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onLeaveRoom(
    String roomId)

离开房间成功回调
用户调用 leaveRoom 方法后,SDK 会停止所有的发布订阅流,并释放所有通话相关的音视频资源。SDK 完成所有的资源释放后,用户收到此回调。
离开房间结束通话后,如果 App 需要使用系统音视频设备,建议在收到此回调后再初始化音视频设备.否则可能由于 SDK 占用了导致 App 初始化音视频设备失败。

传入参数

参数名 类型 说明
roomId String 房间 ID

注意 用户调用 leaveRoom 方法离开房间后,如果立即调用 destroy 方法销毁 GameRTC 引擎,则将无法收到此回调事件。

onUserJoined

public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onUserJoined(
    String roomId,
    String userId)

远端用户加入房间回调。
以下情形下,本地用户会收到此回调:

  • 远端用户首次加入房间/重连加入房间;
  • 本地用户加入房间时,会收到回调,提示已在房间中的远端用户。
  • 传入参数

    参数名 类型 说明
    roomId String 房间 ID
    userId String 用户 ID

    onUserLeave

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onUserLeave(
        String roomId,
        String userId,
        IGameRTCEventHandler.UserLeaveReasonType reason)
    

    远端用户离开房间回调。
    房间中有用户主动调用 leaveRoom 方法离开房间或断线超时离开房间时,房间中其他用户都会收到此回调。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    userId String 离开房间的用户的用户 ID
    reason IGameRTCEventHandler.UserLeaveReasonType 用户离开的原因。参看 UserLeaveReasonType

    onMicrophoneEnabled

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onMicrophoneEnabled(
        String roomId,
        String userId,
        boolean enable)
    

    远端用户开关麦克风回调
    当用户调用 enableMicrophone 更改本地音频采集和发布状态时,房间内其他用户会收到此回调。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    userId String 更改本地音频采集和发布状态的用户的 ID
    enable boolean • true: 打开麦克风
    • false: 关闭麦克风

    onAudioSendEnabled

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onAudioSendEnabled(
        String roomId,
        String userId,
        boolean enable)
    

    远端用户启停音频数据发送的回调
    当用户调用 enableAudioSend 更改本地音频发送状态时,房间内其他用户会收到此回调。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    userId String 更改本地音频发送状态的用户的 ID
    enable boolean • true: 开启音频发送
    • false: 停止音频发送

    onSpeakerphoneEnabled

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onSpeakerphoneEnabled(
        String roomId,
        String userId,
        boolean enable)
    

    远端用户启停音频数据接收的回调
    当用户调用 enableSpeakerphone 更改远端音频接收状态时,房间内其他用户会收到此回调。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    userId String 更改远端音频接收状态的用户的 ID
    enable boolean • true: 开启接收远端音频
    • false: 停止接收远端音频

    onAudioVolumeIndication

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onAudioVolumeIndication(
        String roomId,
        IGameRTCEventHandler.AudioVolumeInfoArray speakers,
        int totalVolume)
    

    提示本地采集的音量信息和在房间内订阅的远端用户的音量信息。
    本回调默认不开启。你可以通过 GameRTCRoomConfig 中的 audioVolumeIndicationInterval 参数开启。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    speakers IGameRTCEventHandler.AudioVolumeInfoArray 本地用户和订阅的远端用户的 ID 和音量。
    参见:AudioVolumeInfo。
    totalVolume int speakers 中包含的所有音频音量之和,取值范围是:[0,255]

    注意

    onConnectionStateChanged

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onConnectionStateChanged(
        IGameRTCEventHandler.ConnectionState state)
    

    用户与 RTC 服务器连接状态发生改变时,收到此回调。

    传入参数

    参数名 类型 说明
    state IGameRTCEventHandler.ConnectionState 用户当前与 RTC 服务器的连接状态,参看 ConnectionState

    onNetworkQuality

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onNetworkQuality(
        String roomId,
        String userId,
        IGameRTCEventHandler.NetworkQuality txQuality,
        IGameRTCEventHandler.NetworkQuality rxQuality)
    

    通话中用户的媒体流网络上下行质量报告回调。加入房间成功后,每隔 2 秒会触发此回调,通知房间内用户与媒体服务器之间数据交互的网络质量。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    userId String 回调的网络质量报告所属用户的用户 ID 。
    txQuality IGameRTCEventHandler.NetworkQuality 用户的媒体流上行网络质量,参看 NetworkQuality。
    rxQuality IGameRTCEventHandler.NetworkQuality 用户的媒体流下行网络质量,参看 NetworkQuality。

    注意

    onLogReport

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onLogReport(
        String logType,
        JSONObject logContent)
    

    上报日志时,回调该事件。

    传入参数

    参数名 类型 说明
    logType String 日志类型
    logContent JSONObject 日志内容

    onEngineWarning

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onEngineWarning(
        IGameRTCEventHandler.EngineWarnCode warn)
    

    SDK 运行时出现了引擎相关的警告时,收到此回调。

    传入参数

    参数名 类型 说明
    warn IGameRTCEventHandler.EngineWarnCode 警告码,详情定义见: EngineWarnCode

    注意 通常情况下,SDK 上报的警告信息可以忽略,SDK 能够自动恢复。

    onRoomWarning

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onRoomWarning(
        String roomId,
        IGameRTCEventHandler.RoomWarnCode warn)
    

    SDK 运行时,出现房间相关警告,收到此回调。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    warn IGameRTCEventHandler.RoomWarnCode 警告代码,详情定义见: RoomWarnCode

    注意 通常情况下,SDK 上报的警告信息可以忽略,SDK 能够自动恢复。

    onRoomError

    public void com.ss.video.rtc.engine.handler.IGameRTCEventHandler.onRoomError(
        String roomId,
        IGameRTCEventHandler.RoomErrorCode err)
    

    房间相关错误回调。

    传入参数

    参数名 类型 说明
    roomId String 房间 ID
    err IGameRTCEventHandler.RoomErrorCode 错误码,参见 RoomErrorCode