QNRTCClient
- SetClientRole
- SetAutoSubscribe
- Join
- Leave
- GetConnectionState
- Publish
- UnPublish
- Subscribe
- UnSubscribe
- SendCustomMessage
- SetLiveStreamingListener
- StartLiveStreaming[1/2]
- StartLiveStreaming[2/2]
- StopLiveStreaming[1/2]
- StopLiveStreaming[2/2]
- SetTranscodingLiveStreamingTracks
- RemoveTranscodingLiveStreamingTracks
- SetRemoteAudioMixedFrameListener
- GetPublishedTracks
- GetRemoteUsers[1/2]
- GetRemoteUsers[2/2]
- GetRemoteVideoTrackStats
- GetRemoteAudioTrackStats
- GetLocalVideoTrackStats
- GetLocalAudioTrackStats
- virtual void SetClientRole(QNClientRole client_role, QNClientRoleListener* listener) = 0
- 
    设置直播场景下的用户角色 该方法在加入频道前后均可调用。 Parameters- 
        client_role: QNClientRole目标角色 
- 
        listener: QNClientRoleListener设置角色结果回调 
 
- 
        
- virtual void SetAutoSubscribe(bool auto_subscribe) = 0
- 
    设置是否启用自动订阅 当开启此选项后,房间内有任意用户新发布 Track 的时候,会自动订阅此路 Track,订阅成功后,会触发 QNClientEventListener.OnSubscribed 回调 Parameters- 
        auto_subscribe: bool是否自动订阅 
 
- 
        
- virtual void Join(const std::string& token, const std::string& user_data = "") = 0
- 
    加入房间 接口调用成功后,将会触发 QNClientEventListener.OnConnectionStateChanged 回调 请确保在 QNConnectionState.kDisconnected 状态下调用该接口加入房间,否则接口调用无效 Parameters- 
        token: string房间 Token 
- 
        user_data: string用户信息 
 
- 
        
- virtual void Leave() = 0
- 
    离开房间 成功离开房间后,会触发 QNClientEventListener.OnConnectionStateChanged 回调 
- virtual QNConnectionState GetConnectionState() = 0
- 
    获取当前房间连接状态 Returns QNConnectionState
- virtual void Publish(LocalTrackList& track_list, QNPublishResultCallback* listener) = 0
- 
    发布本地媒体流,结果通过 QNPublishResultCallback 接口通知 Parameters- 
        track_list: std::list<QNLocalTrack*>要发布的本地 Track 列表 
- 
        listener: QNPublishResultCallback发布结果回调函数 
 
- 
        
- virtual void UnPublish(LocalTrackList& track_list) = 0
- 
    取消发布本地媒体列表 Parameters- 
        track_list: std::list<QNLocalTrack*>要取消发布的本地 Track 列表 
 
- 
        
- virtual void Subscribe(const RemoteTrackList& track_list) = 0
- 
    订阅远端 Track 列表,订阅成功后,会触发 QNClientEventListener.OnSubscribed 回调 Parameters- 
        track_list: std::list<shared_ptr<QNRemoteTrack>>要订阅的远端 Track 列表 
 
- 
        
- virtual void UnSubscribe(const RemoteTrackList& track_list) = 0
- 
    取消订阅远端 Track 列表 Parameters- 
        track_list: std::list<shared_ptr<QNRemoteTrack>>要取消订阅的远端 Track 列表 
 
- 
        
- virtual void SendCustomMessage(const std::list<std::string>& users_list, const std::string& message_id, const std::string& message) = 0
- 
    发送自定义消息到指定用户群,发送成功后,会触发远端用户的 QNClientEventListener.OnMessageReceived 回调接口 Parameters- 
        users_list: std::list<std::string>用户 ID 列表 
- 
        message_id: string自定义消息 ID 
- 
        message: string自定义消息内容 
 
- 
        
- virtual void SetLiveStreamingListener(QNLiveStreamingListener* listener) = 0
- 
    设置 CDN 转推监听接口 Parameters- 
        listener: QNLiveStreamingListener转推监听接口 
 
- 
        
- virtual void StartLiveStreaming(QNDirectLiveStreamingConfig& config) = 0
- 
    开始单路 CDN 转推 Parameters- 
        config: QNDirectLiveStreamingConfig单路转推配置 
 
- 
        
- virtual void StartLiveStreaming(QNTranscodingLiveStreamingConfig& config) = 0;
- 
    开始合流转码 CDN 转推 Parameters- 
        config: QNTranscodingLiveStreamingConfig合流转推配置 
 
- 
        
- virtual void StopLiveStreaming(QNDirectLiveStreamingConfig& config) = 0
- 
    停止单路 CDN 转推 Parameters- 
        config: QNDirectLiveStreamingConfig单路 CDN 转推配置 
 
- 
        
- virtual void StopLiveStreaming(QNTranscodingLiveStreamingConfig& config) = 0
- 
    停止合流转码 CDN 转推 Parameters- 
        config: QNTranscodingLiveStreamingConfig合流转推配置 
 
- 
        
- virtual void SetTranscodingLiveStreamingTracks(std::string& stream_id, QNTranscodeingTrackList& transcoding_track_list) = 0
- 
    新增、更新合流转推布局配置 新增 track 布局以及对已有的 track 的合流布局进行更新均可通过该接口实现,只需修改 transcodingTracks 对应的 track 内容即可。 Parameters- 
        stream_id: string合流任务 stream id 
- 
        transcoding_track_list: std::list<QNTranscodingLiveStreamingTrack>待新增、更新的合流转推布局配置 
 
- 
        
- virtual void RemoveTranscodingLiveStreamingTracks(std::string& stream_id, QNTranscodeingTrackList& transcoding_track_list) = 0
- 
    移除合流转推布局配置 Parameters- 
        stream_id: string合流任务 stream id 
- 
        transcoding_track_list: std::list<QNTranscodingLiveStreamingTrack>待移除合流转推布局配置 
 
- 
        
- virtual void SetRemoteAudioMixedFrameListener(QNRemoteAudioMixedFrameListener* listener) = 0
- 
    设置监听远端所有音频 Track 混合后的音频数据 Parameters- 
        listener: QNRemoteAudioMixedFrameListener音频数据监听接口 
 
- 
        
- virtual LocalTrackList& GetPublishedTracks() = 0
- 
    获取所有已经发布的本地 Track Returns std::list<QNLocalTrack*>
- virtual QNRemoteUser& GetRemoteUsers(const std::string& user_id) = 0
- 
    获取对应 ID 的远端用户 Parameters- 
        user_id: string远端用户 ID 
 Returns QNRemoteUser
- 
        
- virtual RemoteUserList& GetRemoteUsers() = 0
- 
    获取房间内所有的远端用户 Returns std::list<QNRemoteUser>
- virtual QNRemoteVideoTrackStatsMap& GetRemoteVideoTrackStats() = 0
- 
    获取已订阅的远端视频轨道统计信息 Returns std::map<std::string, QNRemoteVideoTrackStats>
- virtual QNRemoteAudioTrackStatsMap& GetRemoteAudioTrackStats() = 0
- 
    获取已订阅的远端音频轨道统计信息 Returns std::map<std::string, QNRemoteAudioTrackStats>
- virtual QNLocalVideoTracksStatsMap& GetLocalVideoTrackStats() = 0
- 
    获取已发布的近端视频轨道统计信息 Returns std::map<std::string, std::list<QNLocalVideoTrackStats>>
- virtual QNLocalAudioTrackStatsMap& GetLocalAudioTrackStats() = 0
- 
    获取已发布的近端音频轨道统计信息 Returns std::map<std::string, QNLocalAudioTrackStats>