QNRTCClient
- setAutoSubscribe
- join[1/2]
- join[2/2]
- leave
- publish[1/4]
- publish[2/4]
- publish[3/4]
- publish[4/4]
- unpublish[1/2]
- unpublish[2/2]
- subscribe[1/2]
- subscribe[2/2]
- unsubscribe[1/2]
- unsubscribe[2/2]
- sendMessage[1/2]
- sendMessage[2/2]
- getConnectionState
- setLiveStreamingListener
- startLiveStreaming[1/2]
- startLiveStreaming[2/2]
- stopLiveStreaming[1/2]
- stopLiveStreaming[2/2]
- setTranscodingLiveStreamingTracks
- removeTranscodingLiveStreamingTracks
- setRemoteTracksMixedAudioListener
- getPublishedTracks
- getRemoteUser
- getRemoteUsers
- setNetworkQualityListener
- getUserNetworkQuality
- getRemoteVideoTrackStats
- getRemoteAudioTrackStats
- getLocalVideoTrackStats
- getLocalAudioTrackStats
- setClientRole
- startMediaRelay
- updateMediaRelay
- stopMediaRelay
- enableAudioVolumeIndication
- void setAutoSubscribe(boolean autoSubscribe)
- 
    设置是否启用自动订阅 当开启此选项后,房间内有任意用户新发布 Track 的时候,会自动订阅此路 Track,订阅成功后,会触发 QNClientEventListener.onSubscribed 回调 Parameters- 
        autoSubscribe: boolean是否自动订阅 
 
- 
        
- void join(String token)
- 
    加入房间 接口调用成功后,将会触发 QNClientEventListener.onConnectionStateChanged 回调 请确保在 QNConnectionState.DISCONNECTED 状态下调用该接口加入房间,否则接口调用无效 Parameters- 
        token: String房间 Token RoomToken 建议通过您的服务端生成,签算方式可参考 RoomToken 签发服务。 若您的服务端还没有实现相关代码,可参考管理实时音视频文档在 portal 上生成临时的 token,需要注意 UserID 不可重复。 
 
- 
        
- void join(String token, String userData)
- 
    加入房间 接口调用成功后,将会触发 QNClientEventListener.onConnectionStateChanged 回调 请确保在 QNConnectionState.DISCONNECTED 状态下调用该接口加入房间,否则接口调用无效 Parameters- 
        token: String房间 Token RoomToken 建议通过您的服务端生成,签算方式可参考 RoomToken 签发服务。 若您的服务端还没有实现相关代码,可参考管理实时音视频文档在 portal 上生成临时的 token,需要注意 UserID 不可重复。 
- 
        userData: String用户信息 
 
- 
        
- void leave()
- 
    离开房间 成功离开房间后,会触发 QNClientEventListener.onConnectionStateChanged 回调,回调状态为 QNConnectionState.DISCONNECTED,QNConnectionDisconnectedInfo 回调 Reason 为 LEAVE 
- void publish(QNLocalTrack... tracks)
- 
    发布本地 Track,若想获取发布结果,可调用 publish(QNPublishResultCallback, QNLocalTrack...) 接口 Parameters- 
        tracks: QNLocalTrack...要发布的本地 Track 
 
- 
        
- void publish(List<QNLocalTrack> trackList)
- 
    发布本地 Track 列表,若想获取发布结果,可调用 publish(QNPublishResultCallback, List<QNLocalTrack>) 接口 Parameters- 
        trackList: List<QNLocalTrack>要发布的本地 Track 列表 
 
- 
        
- void publish(QNPublishResultCallback callback, QNLocalTrack... tracks)
- 
    发布本地 Track,并设置发布结果回调 Parameters- 
        callback: QNPublishResultCallback发布结果回调接口 
- 
        tracks: QNLocalTrack...要发布的本地 Track 
 
- 
        
- publish(QNPublishResultCallback callback, List<QNLocalTrack> trackList)
- 
    发布本地 Track 列表,并设置发布结果回调 Parameters- 
        callback: QNPublishResultCallback发布结果回调接口 
- 
        tracks: List<QNLocalTrack>要发布的本地 Track 列表 
 
- 
        
- void unpublish(QNLocalTrack... tracks)
- 
    取消发布本地 Track Parameters- 
        tracks: QNLocalTrack...要取消发布的本地 Track 
 
- 
        
- void unpublish(List<QNLocalTrack> trackList)
- 
    取消发布本地 Track 列表 Parameters- 
        trackList: List<QNLocalTrack>要取消发布的本地 Track 列表 
 
- 
        
- void subscribe(QNRemoteTrack... tracks)
- 
    订阅远端 Track,订阅成功后,会触发 QNClientEventListener.onSubscribed 回调 Parameters- 
        tracks: QNRemoteTrack...要订阅的远端 Track 
 
- 
        
- void subscribe(List<QNRemoteTrack> trackList)
- 
    订阅远端 Track 列表,订阅成功后,会触发 QNClientEventListener.onSubscribed 回调 Parameters- 
        trackList: List<QNRemoteTrack>要订阅的远端 Track 列表 
 
- 
        
- void unsubscribe(QNRemoteTrack... tracks)
- 
    取消订阅远端 Track Parameters- 
        tracks: QNRemoteTrack...要取消订阅的远端 Track 
 
- 
        
- void unsubscribe(List<QNRemoteTrack> trackList)
- 
    取消订阅远端 Track 列表 Parameters- 
        trackList: List<QNRemoteTrack>要取消订阅的远端 Track 列表 
 
- 
        
- void sendMessage(String messageId, String message)
- 
    发送自定义消息给所有用户,发送成功后,会触发远端用户的 QNClientEventListener.onMessageReceived 回调接口 Parameters- 
        messageId: String自定义消息 ID 
- 
        message: String自定义消息 内容 
 
- 
        
- void sendMessage(List<String> users, String messageId, String message)
- 
    发送自定义消息到指定用户群,发送成功后,会触发远端用户的 QNClientEventListener.onMessageReceived 回调接口 Parameters- 
        users: List<String>用户 ID 列表 
- 
        messageId: String自定义消息 ID 
- 
        message: String自定义消息 内容 
 
- 
        
- QNConnectionState getConnectionState()
- 
    获取当前房间连接状态 Returns QNConnectionState
- void setLiveStreamingListener(QNLiveStreamingListener listener)
- 
    设置 CDN 转推监听接口 Parameters- 
        listener: QNLiveStreamingListener转推监听接口 
 
- 
        
- void startLiveStreaming(QNDirectLiveStreamingConfig config)
- 
    开始单路 CDN 转推 成功开启转推后,会触发 QNLiveStreamingListener.onStarted 回调,出错会触发 QNLiveStreamingListener.onError 回调 Parameters- 
        config: QNDirectLiveStreamingConfig单路转推配置 
 
- 
        
- void startLiveStreaming(QNTranscodingLiveStreamingConfig config)
- 
    开始合流转码 CDN 转推 成功开启转推后,会触发 QNLiveStreamingListener.onStarted 回调,出错会触发 QNLiveStreamingListener.onError 回调 Parameters- 
        config: QNTranscodingLiveStreamingConfig合流转推配置 
 
- 
        
- void stopLiveStreaming(QNDirectLiveStreamingConfig config)
- 
    停止单路 CDN 转推 成功停止转推后,会触发 QNLiveStreamingListener.onStopped 回调,出错会触发 QNLiveStreamingListener.onError 回调 Parameters- 
        config: QNDirectLiveStreamingConfig单路 CDN 转推配置 
 
- 
        
- void stopLiveStreaming(QNTranscodingLiveStreamingConfig config)
- 
    停止合流转码 CDN 转推 成功停止转推后,会触发 QNLiveStreamingListener.onStopped 回调,出错会触发 QNLiveStreamingListener.onError 回调 Parameters- 
        config: QNTranscodingLiveStreamingConfig合流转推配置 
 
- 
        
- void setTranscodingLiveStreamingTracks(String streamID, List<QNTranscodingLiveStreamingTrack> transcodingTracks)
- 
    新增、更新合流转推布局配置 成功更新合流布局后,会触发 QNLiveStreamingListener.onTranscodingTracksUpdated 回调,出错会触发 QNLiveStreamingListener.onError 回调 新增 Track 布局以及对已有的 Track 的合流布局进行更新均可通过该接口实现,只需修改 transcodingTracks 对应的 Track 内容即可。 Parameters- 
        streamID: String合流任务 streamID 
- 
        transcodingTracks: List<QNTranscodingLiveStreamingTrack>待新增、更新的合流转推布局配置 
 
- 
        
- void removeTranscodingLiveStreamingTracks(String streamID, List<QNTranscodingLiveStreamingTrack> transcodingTracks)
- 
    移除合流转推布局配置 成功更新合流布局后,会触发 QNLiveStreamingListener.onTranscodingTracksUpdated 回调,出错会触发 QNLiveStreamingListener.onError 回调 Parameters- 
        streamID: String合流任务 streamID 
- 
        transcodingTracks: List<QNTranscodingLiveStreamingTrack>待移除合流转推布局配置 
 
- 
        
- void setRemoteTracksMixedAudioListener(QNAudioFrameListener listener)
- 
    设置监听远端所有音频 Track 混合后的音频数据 Parameters- 
        listener: QNAudioFrameListener音频数据监听接口 
 
- 
        
- QNRemoteUser getRemoteUser(String userID)
- 
    获取对应 ID 的远端用户 可通过获取到的 QNRemoteUser 对象进一步获取远端用户已发布的音视频 Track 列表及其订阅信息 Parameters- 
        userID: String远端用户 ID 
 Returns QNRemoteUser
- 
        
- List<QNRemoteUser> getRemoteUsers()
- 
    获取房间内所有的远端用户 可通过获取到的 QNRemoteUser 对象进一步获取远端用户已发布的音视频 Track 列表及其订阅信息 Returns List<QNRemoteUser>
- void setNetworkQualityListener(QNNetworkQualityListener listener)
- 
    设置当前应用网络质量监听 Parameters- 
        listener: QNNetworkQualityListener网络质量监听接口 
 
- 
        
- Map<String, QNNetworkQuality> getUserNetworkQuality()
- 
    获取当前订阅的远端用户网络质量 获取到的 Map 为当前订阅的远端用户 UserID 及其当前网络质量 QNNetworkQuality 的一一对应 Returns Map<String, QNNetworkQuality>
- Map<String, QNRemoteVideoTrackStats> getRemoteVideoTrackStats()
- 
    获取已订阅的远端视频轨道统计信息 获取到的 Map 为当前订阅的视频 TrackID 及其质量统计信息 QNRemoteVideoTrackStats 的一一对应 Returns Map<String, QNRemoteVideoTrackStats>
- Map<String, QNRemoteAudioTrackStats> getRemoteAudioTrackStats()
- 
    获取已订阅的远端音频轨道统计信息 获取到的 Map 为当前订阅的音频 TrackID 及其质量统计信息 QNRemoteAudioTrackStats 的一一对应 Returns Map<String, QNRemoteAudioTrackStats>
- Map<String, List<QNLocalVideoTrackStats>> getLocalVideoTrackStats()
- 
    获取已发布的近端视频轨道统计信息 获取到的 Map 为当前发布的视频 TrackID 及其质量统计信息 List<QNLocalVideoTrackStats> 的一一对应,其中,List<QNLocalVideoTrackStats> 对应已发布的不同 QNTrackProfile 的视频质量统计 Returns Map<String, List<QNLocalVideoTrackStats>>
- Map<String, QNLocalAudioTrackStats> getLocalAudioTrackStats()
- 
    获取已发布的近端音频轨道统计信息 获取到的 Map 为当前发布的音频 TrackID 及其质量统计信息 QNLocalAudioTrackStats 的一一对应 Returns Map<String, QNLocalAudioTrackStats>
- void setClientRole(QNClientRole clientRole, QNClientRoleResultCallback callback)
- 
    设置互动直播场景下的用户角色,可支持设置的角色为主播 QNClientRole.BROADCASTER 和观众 QNClientRole.AUDIENCE 该方法在加入频道前后均可调用 注意:该方法仅适用于直播场景 QNClientMode.LIVE Parameters- 
        clientRole: QNClientRole角色类型 
- 
        callback: QNClientRoleResultCallback回调接口 
 
- 
        
- void startMediaRelay(QNMediaRelayConfiguration configuration, QNMediaRelayResultCallback callback)
- 
    开启跨房媒体转发 如果已经开启,则调用失败 当所有目标房间跨房媒体转发都失败,则本次跨房媒体转发请求视为失败,使用跨房媒体转发功能需要再次调用此方法 当有任意一个目标或多个目标房间媒体转发成功,则本次跨房媒体转发请求视为成功,具体每个房间的状态参考回调结果 注意:该方法仅适用于互动直播场景中角色类型为主播的用户 Parameters- 
        configuration: QNMediaRelayConfiguration跨房媒体转发配置 
- 
        callback: QNMediaRelayResultCallback跨房媒体转发回调接口 
 
- 
        
- void updateMediaRelay(QNMediaRelayConfiguration configuration, QNMediaRelayResultCallback callback)
- 
    更新跨房媒体转发 成功开启跨房媒体转发后,如果您希望将流转发到多个目标房间,或退出当前正在转发的房间,可以调用该方法 此方法为全量更新,正在跨房媒体转发中却未被包含在参数 configuration 中的房间,将停止媒体转发 注意:调用此方法前必须确保已经成功开启跨房媒体转发,否则将调用失败;该方法仅适用互动直播场景中角色类型为主播的用户 Parameters- 
        configuration: QNMediaRelayConfiguration跨房媒体转发配置 
- 
        callback: QNMediaRelayResultCallback回调接口 
 
- 
        
- void stopMediaRelay(QNMediaRelayResultCallback callback)
- 
    停止跨房媒体转发 如果未开启,则调用失败 注意:此方法会停止在所有目标房间中的媒体转发;该方法仅适用互动直播场景中角色类型为主播的用户 Parameters- 
        callback: QNMediaRelayResultCallback回调接口 
 
- 
        
- enableAudioVolumeIndication(int intervalMs)
- 
    开启语音音量监测 参数为指定音量提示的时间间隔,≤ 0: 禁用音量提示功能,> 0: 指定数值的音量提示间隔,单位为 ms,最小取值为 100ms。 开启音量监测后,房间内的音频音量将会通过 QNClientEventListener.onUserVolumeIndication 回调进行通知,其中,本地用户的音量信息中,userID 字段将保留为空 Parameters- 
        intervalMs: int语音音量回调的间隔时间 
 
-