实时音视频云

  • QNRTCManager

    最近更新时间:2018-09-10 22:39:11

    QNRTCManager 是负责管理整个连麦生命周期的核心类,提供了整个连麦过程中所需要的所有控制接口。

    initialize

    定义 1

    public void initialize(Context context, QNLocalSurfaceView localWindow)
    

    说明

    执行初始化操作,会默认开启音视频的采集,该接口会使用默认的互动配置参数

    参数

    参数名 描述
    context Android 的上下文句柄
    localWindow 本地 Camera 预览窗口

    定义 2

    public void initialize(Context context, QNRTCSetting setting, QNLocalSurfaceView localWindow)
    

    说明

    执行初始化操作,会默认开启音视频的采集

    参数

    参数名 描述
    context Android 的上下文句柄
    setting 实时音视频互动配置参数
    localWindow 本地 Camera 预览窗口

    定义 3

    public void initialize(Context context, QNRTCSetting setting)
    

    说明

    执行初始化操作,可用于不需要本地视频预览的场景,也可以在初始化完后再设置预览窗口

    参数

    参数名 描述
    context Android 的上下文句柄
    setting 实时音视频互动配置参数

    定义 4

    public void initialize(Context context)
    

    说明

    执行初始化操作,内部会创建一个默认的 QNRTCSetting,可用于不需要本地视频预览的场景,也可以在初始化完后再设置预览窗口

    参数

    参数名 描述
    context Android 的上下文句柄

    setRoomEventListener

    定义

    public void setRoomEventListener(QNRoomEventListener eventListener)
    

    说明

    设置实时音视频互动过程中回调事件监听器。

    参数

    参数名 描述
    eventListener 实时音视频过程中的事件回调监听器,该监听器包含了互动过程中的所有回调函数。详情请见QNRoomEventListener

    setLocalWindow

    定义

    public void setLocalWindow(QNLocalSurfaceView localWindow)
    

    说明

    设置本地窗口的渲染控件

    参数

    参数名 描述
    localWindow 本地窗口的渲染控件

    addRemoteWindow

    定义

    public void addRemoteWindow(QNRemoteSurfaceView remoteWindow)
    

    说明

    添加远端窗口的渲染控件

    参数

    参数名 描述
    remoteWindow 远端窗口的渲染控件

    joinRoom

    定义

    public void joinRoom(String roomToken)
    

    说明

    加入音视频互动的房间,加入房间成功后会触发 onJoinedRoom() 的回调,可以在回调里面去发布媒体流到连麦服务器

    参数

    参数名 描述
    roomToken 加入房间的凭证,该 token 由 App 服务器动态生成

    leaveRoom

    定义

    public void leaveRoom()
    

    说明

    离开房间


    publish

    定义

    public void publish()
    

    说明

    发布媒体流,其中,可以通过调用 QNRTCSetting.setVideoEnabled(boolean enable) 和 QNRTCSetting.setAudioEnabled(boolean enable) 方法来配置是否发布音频或视频


    unpublish

    定义

    public void unpublish()
    

    说明

    取消发布媒体流


    subscribe

    定义

    public void subscribe(String userId)
    

    说明

    订阅远端用户的画面

    参数

    参数名 描述
    userId 远端用户的 userId

    unsubscribe

    定义

    public void unsubscribe(String userId)
    

    说明

    取消订阅远端用户的画面

    参数

    参数名 描述
    userId 远端用户的 userId

    muteLocalVideo

    定义

    public void muteLocalVideo(boolean isMute)
    

    说明

    开启/关闭本地视频,关闭后其他连麦者看不到本地的画面

    参数

    参数名 描述
    isMute 开启(false)或者关闭(true)本地视频

    muteLocalAudio

    定义

    public void muteLocalAudio(boolean isMute)
    

    说明

    开启/关闭本地音频,关闭后其他连麦者听不到本地的音频

    参数

    参数名 描述
    isMute 开启(false)或者关闭(true)本地音频

    muteRemoteAudio

    定义

    public void muteRemoteAudio(boolean isMute)
    

    说明

    开启/关闭远端音频

    参数

    参数名 描述
    isMute 开启(false)或者关闭(true)远端音频

    setPreviewEnabled

    定义

    public void setPreviewEnabled(boolean isEnabled)
    

    说明

    开启/关闭本地预览

    参数

    参数名 描述
    isEnabled 开启(true)或者关闭(false)本地预览

    setMirror

    定义

    public void setMirror(boolean isMirrorEnabled)
    

    说明

    设置是否开启镜像,默认关闭

    参数

    参数名 描述
    isMirrorEnabled 开启(true)或者关闭(false)镜像

    switchCamera

    定义

    public void switchCamera(QNCameraSwitchResultCallback callback)
    

    说明

    切换摄像头,切换成功与否会通过 QNCameraSwitchResultCallback 回调出来,若不需要结果回调,可以传入 null

    参数

    参数名 描述
    callback 切换成功与否的回调,详情请见QNCameraSwitchResultCallback

    turnLightOn

    定义

    public boolean turnLightOn()
    

    说明

    开启闪光灯

    返回值

    开启成功或者失败


    turnLightOff

    定义

    public boolean turnLightOff()
    

    说明

    关闭闪光灯

    返回值

    关闭成功或者失败


    manualFocus

    定义

    public void manualFocus(float x, float y, int viewWidth, int viewHeight)
    

    说明

    设置手动对焦

    参数

    参数名 描述
    x 对焦框的 x 坐标
    y 对焦框的 y 坐标
    viewWidth 对焦框的宽度
    viewHeight 对焦框的高度

    kickOutUser

    定义

    public void kickOutUser(String userId)
    

    说明

    踢人接口,踢人方需要有相应的踢人权限才可执行踢人的操作

    参数

    参数名 描述
    userId 远端用户的 userId

    getUserList

    定义

    public ArrayList<String> getUserList()
    

    说明

    获取参与实时音视频互动的用户列表

    返回值

    当前参与实时音视频互动的用户列表


    getPublishingUserList

    定义

    public ArrayList<String> getPublishingUserList()
    

    说明

    获取参与实时音视频互动的用户中发布音视频的用户列表

    返回值

    当前参与实时音视频互动的用户中发布音视频的用户列表


    setStatisticsInfoEnabled

    定义

    public void setStatisticsInfoEnabled(String userId, boolean enable, int periodMs)
    

    说明

    开启/关闭连麦的统计信息功能,默认为关闭状态

    参数

    参数名 描述
    userId 用户的 userId
    enable 是否开启统计
    periodMs 统计的时间间隔

    getRoomState

    定义

    public QNRoomState getRoomState()
    

    说明

    获取当前的房间状态信息

    返回值

    当前的房间状态信息,包括 IDLE、CONNECTING、CONNECTED 以及 RECONNECTING 等状态


    setBeauty

    定义

    public void setBeauty(QNBeautySetting beautySetting)
    

    说明

    设置美颜的参数

    参数

    参数名 描述
    beautySetting 美颜的配置类,详情请见QNBeautySetting

    setMergeStreamLayout

    定义

    public void setMergeStreamLayout(String userId, int x, int y, int z, int width, int height)
    

    说明

    设置服务端合流参数. 左上角为合流画面坐标原点

    参数

    参数名 描述
    userId 本次设置所对应的 userId
    x 在合流画面中的 x 轴坐标
    y 在合流画面中的 y 轴坐标
    z 在合流画面中的层次,0 在最底层
    width 在合流画面中的宽度
    height 在合流画面中的高度

    setMergeStreamLayout

    定义

    public void setMergeStreamLayout(String userId, int x, int y, int z, int width, int height, boolean isHidden, boolean isMuted)
    

    说明

    设置服务端合流参数. 左上角为合流画面坐标原点

    参数

    参数名 描述
    userId 本次设置所对应的 userId
    x 在合流画面中的 x 轴坐标
    y 在合流画面中的 y 轴坐标
    z 在合流画面中的层次,0 在最底层
    width 在合流画面中的宽度
    height 在合流画面中的高度
    isHidden 是否在合流中隐藏该用户的视频
    isMuted 是否在合流中屏蔽该用户的音频

    stopMergeStream

    定义

    public void stopMergeStream()
    

    说明

    停止合流


    setAudioSourceCallback

    定义

    public void setAudioSourceCallback(QNAudioSourceCallback callback)
    

    说明

    添加回调以监听本地音频数据

    参数

    参数名 描述
    callback 本地音频数据回调接口类,详情请见QNAudioSourceCallback

    addRemoteAudioCallback

    定义

    public void addRemoteAudioCallback(String userId, QNRemoteAudioCallback callback)
    

    说明

    添加回调以监听远端用户音频数据

    参数

    参数名 描述
    userId 远端用户 id
    callback 远端用户音频数据回调接口类,详情请见QNRemoteAudioCallback

    switchWindow

    定义

    public void switchWindow(QNRemoteSurfaceView remoteSurfaceView)
    

    说明

    切换本地和远端的渲染控件。

    参数

    参数名 描述
    remoteSurfaceView 远端窗口的渲染控件

    inputVideoFrame

    定义

    public void inputVideoFrame(byte[] buffer, int width, int height, int rotation, long timestampNs)
    

    说明

    导入外部视频数据,支持的视频格式为:NV21 格式,为兼容所有机型,建议选择软编码的方式进行导入。

    参数

    参数名 描述
    buffer 导入视频帧的数据
    width 导入视频帧的宽
    height 导入视频帧的高
    rotation 导入视频帧的旋转角度
    timestampNs 导入视频帧的时间戳

    inputAudioFrame

    定义

    public void inputAudioFrame(byte[] buffer)
    

    说明

    导入外部音频数据,支持的音频数据格式为:PCM 格式,48000 采样率,16 位宽,单声道。

    参数

    参数名 描述
    buffer 导入音频帧的数据

    destroy

    定义

    public void destroy()
    

    说明

    销毁整个对象,释放相关资源,建议在 Activity.onDestroy() 中调用

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