3.2.3. SDK总体介绍

3.2.3.1. 引擎提供的方法

  • AVDEngine.instance()
    
    AVDEngine
    │
    └──getVersion                                        获取当前引擎版本
    │
    └──setLogParams                      设置引擎日志配置
    │
    └──init                                                              初始化引擎
    │
    └──uninit                                                            反初始化引擎
    │
    └──setOption                                                 设置引擎全局选项
    │
    │    以下为房间管理:
    │
    └──scheduleRoom                              安排房间
    │
    └──getRoomByRoomId                   根据房间Id获取房间信息
    │
    └──getRoomByAppRoomId                根据应用层房间Id获取房间信息
    │
    └──cancelRoom                                                删除已安排房间
    

3.2.3.2. 房间对象方法

  •             Room room = Room.obtain(roomId);
    
    Room
           │
           └──join                                                                      当前用户加入房间
           │
           └──leave                                                     当前用户离开房间
           │
           └──kickoutUser                                               房间中踢出用户
           │
           └──get... "RoomName"                 获取房间名、房间主题等
           │
           └──sendPublicData                    透明通道,发送广播数据
                 │
           └──sendPrivateData                           透明通道,发送私有数据
                 │
           └──updateAppData/getAppData  应用层的房间数据管理
                 │
           └──enableStats                                       房间启用或关闭流量统计功能
                 │
           └──getRoomStats/getMediaStats/getAudioStats  获取房间的流量统计信息
           │
           └──setOption                                 设置房间选项
    

3.2.3.3. 房间中用户管理接口

  •       MUserManager um = MUserManager.getUserManager(room);
    
    MUserManager
     │
     └──getParticipants                                   获取房间中的用户列表
     │
     └──getSelfUserData/updateSelfUserData        本用户的应用层数据管理
     │
     └──getSelfUser                                                       获取本用户信息
    
          MUserManager.Listener
     │
     └──onUserJoinNotify                          用户加入房间通知
           │
     └──onUserLeaveNotify                         用户离开房间通知
           │
     └──onUserStatusNotify                                用户状态更改通知
           │
     └──onUserDataNotify                          用户应用层数据更改通知
    

3.2.3.4. 房间中音频功能接口

  •             MAudio audio = MAudio.getAudio(room);
    
    MAudio
           │
           └──openMicrophone/closeMicrophone                                            本地麦克风打开和关闭
                 │
           └──muteMicrophone/unmuteMicrophone                                   本地麦克风静默
                 │
           └──muteSpeaker/unmuteSpeaker                                                         扬声器静默
                 │
           └──monitorAudioLevel                                                                                         开启语音激励功能
    

3.2.3.5. 房间中视频功能接口

  •       MVideo video = MVideo.getVideo(room);
    
    MVideo
           │
           └──publishLocalCamera/unpublishLocalCamera           本地摄像头视频打开和关闭
                 │
           └──muteLocalCamera/unmuteLocalCamera                                 本地已经published或preview的视频暂停
                 │
           └──previewLocalCamera/unpreviewLocalCamera           本地摄像头视频预览
                 │
           └──subscribe/unsubscribe                                                                             订阅远端摄像头视频
                 │
           └──getPublishedCameras                                                                                       获取房间中已发布视频摄像头列表
                 │
           └──getSubscribedCameras                                                                                      获取本用户订阅的摄像头视频列表
                 │
           └──attachRender/detachRender                                                                 关联视频数据和显示对象,在render中显示视频
                 │
           └──setVideoBitrate                                                                                                   设置视频动态码率调整的范围,最小和最大比特率