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 設置視頻動態碼率調整的范圍,最小和最大比特率