实时音视频

  • 实时音视频 > API 文档 > Android >QNRTCClient

    QNRTCClient

    最近更新时间: 2023-10-25 14:48:26

    RTC 核心类,包含加入房间,离开房间,订阅、发布 Track,获取统计信息等功能
    Index
    Core Methods
    Core Methods
    setAutoSubscribe
    • void setAutoSubscribe(boolean autoSubscribe)
    • 设置是否启用自动订阅

      当开启此选项后,房间内有任意用户新发布 Track 的时候,会自动订阅此路 Track,订阅成功后,会触发 QNClientEventListener.onSubscribed 回调

      Parameters
      • autoSubscribe: boolean

        是否自动订阅

    join[1/2]
    join[2/2]
    leave
    publish[1/4]
    publish[2/4]
    publish[3/4]
    publish[4/4]
    unpublish[1/2]
    • void unpublish(QNLocalTrack... tracks)
    • 取消发布本地 Track

      Parameters
    unpublish[2/2]
    • void unpublish(List<QNLocalTrack> trackList)
    • 取消发布本地 Track 列表

      Parameters
      • trackList: List<QNLocalTrack>

        要取消发布的本地 Track 列表

    subscribe[1/2]
    subscribe[2/2]
    unsubscribe[1/2]
    • void unsubscribe(QNRemoteTrack... tracks)
    • 取消订阅远端 Track

      Parameters
    unsubscribe[2/2]
    • void unsubscribe(List<QNRemoteTrack> trackList)
    • 取消订阅远端 Track 列表

      Parameters
      • trackList: List<QNRemoteTrack>

        要取消订阅的远端 Track 列表

    sendMessage[1/2]
    • void sendMessage(String messageId, String message)
    • 发送自定义消息给所有用户,发送成功后,会触发远端用户的 QNClientEventListener.onMessageReceived 回调接口

      Parameters
      • messageId: String

        自定义消息 ID

      • message: String

        自定义消息 内容

    sendMessage[2/2]
    • void sendMessage(List<String> users, String messageId, String message)
    • 发送自定义消息到指定用户群,发送成功后,会触发远端用户的 QNClientEventListener.onMessageReceived 回调接口

      Parameters
      • users: List<String>

        用户 ID 列表

      • messageId: String

        自定义消息 ID

      • message: String

        自定义消息 内容

    getConnectionState
    setLiveStreamingListener
    startLiveStreaming[1/2]
    startLiveStreaming[2/2]
    stopLiveStreaming[1/2]
    stopLiveStreaming[2/2]
    setTranscodingLiveStreamingTracks
    removeTranscodingLiveStreamingTracks
    setRemoteTracksMixedAudioListener
    • void setRemoteTracksMixedAudioListener(QNAudioFrameListener listener)
    • 设置监听远端所有音频 Track 混合后的音频数据

      Parameters
    getPublishedTracks
    • List<QNTrack> getPublishedTracks()
    • 获取所有已经发布的本地 Track

      Returns List<QNTrack>
    getRemoteUser
    • QNRemoteUser getRemoteUser(String userID)
    • 获取对应 ID 的远端用户

      可通过获取到的 QNRemoteUser 对象进一步获取远端用户已发布的音视频 Track 列表及其订阅信息

      Parameters
      • userID: String

        远端用户 ID

      Returns QNRemoteUser
    getRemoteUsers
    • List<QNRemoteUser> getRemoteUsers()
    • 获取房间内所有的远端用户

      可通过获取到的 QNRemoteUser 对象进一步获取远端用户已发布的音视频 Track 列表及其订阅信息

      Returns List<QNRemoteUser>
    setNetworkQualityListener
    • void setNetworkQualityListener(QNNetworkQualityListener listener)
    • 设置当前应用网络质量监听

      Parameters
      • listener: QNNetworkQualityListener

        网络质量监听接口

    getUserNetworkQuality
    • Map<String, QNNetworkQuality> getUserNetworkQuality()
    • 获取当前订阅的远端用户网络质量

      获取到的 Map 为当前订阅的远端用户 UserID 及其当前网络质量 QNNetworkQuality 的一一对应

      Returns Map<String, QNNetworkQuality>
    getRemoteVideoTrackStats
    getRemoteAudioTrackStats
    getLocalVideoTrackStats
    getLocalAudioTrackStats
    setClientRole
    startMediaRelay
    • void startMediaRelay(QNMediaRelayConfiguration configuration, QNMediaRelayResultCallback callback)
    • 开启跨房媒体转发

      如果已经开启,则调用失败

      当所有目标房间跨房媒体转发都失败,则本次跨房媒体转发请求视为失败,使用跨房媒体转发功能需要再次调用此方法

      当有任意一个目标或多个目标房间媒体转发成功,则本次跨房媒体转发请求视为成功,具体每个房间的状态参考回调结果

      注意:该方法仅适用于互动直播场景中角色类型为主播的用户

      Parameters
    updateMediaRelay
    • void updateMediaRelay(QNMediaRelayConfiguration configuration, QNMediaRelayResultCallback callback)
    • 更新跨房媒体转发

      成功开启跨房媒体转发后,如果您希望将流转发到多个目标房间,或退出当前正在转发的房间,可以调用该方法

      此方法为全量更新,正在跨房媒体转发中却未被包含在参数 configuration 中的房间,将停止媒体转发

      注意:调用此方法前必须确保已经成功开启跨房媒体转发,否则将调用失败;该方法仅适用互动直播场景中角色类型为主播的用户

      Parameters
    stopMediaRelay
    • void stopMediaRelay(QNMediaRelayResultCallback callback)
    • 停止跨房媒体转发

      如果未开启,则调用失败

      注意:此方法会停止在所有目标房间中的媒体转发;该方法仅适用互动直播场景中角色类型为主播的用户

      Parameters
    enableAudioVolumeIndication
    • enableAudioVolumeIndication(int intervalMs)
    • 开启语音音量监测

      参数为指定音量提示的时间间隔,≤ 0: 禁用音量提示功能,> 0: 指定数值的音量提示间隔,单位为 ms,最小取值为 100ms。

      开启音量监测后,房间内的音频音量将会通过 QNClientEventListener.onUserVolumeIndication 回调进行通知,其中,本地用户的音量信息中,userID 字段将保留为空

      Parameters
      • intervalMs: int

        语音音量回调的间隔时间

    以上内容是否对您有帮助?
  • Qvm free helper
    Close