cn.tee3.avd_SDK-C++  2.1.0
| Public 类型 | Public 成员函数 | 静态 Public 成员函数 | Protected 成员函数 | 所有成员列表
tee3::avd::IEasyRoom类 参考abstract

简易房间接口类 更多...

class  IListener
 简易房间回调接口类 更多...
 

Public 类型

enum  OperateType {
  ot_publishMicrophone = 1, ot_unpublishMicrophone = 2, ot_publishCamera = 3, ot_unpublishCamera = 4,
  ot_attachRender = 5, ot_detachRender = 6
}
 异步操作类型. 更多...
 
typedef void(* FuncJoinResult) (const RoomId &roomId, Result result)
 加入房间回调接口 更多...
 

Public 成员函数

virtual void release ()=0
 释放房间接口 更多...
 
virtual Result setListener (IListener *listener)=0
 房间加入退出逻辑 更多...
 
virtual Result join (const User &user, FuncJoinResult joinresult)=0
 加入房间 更多...
 
virtual bool isWorking () const =0
 
virtual Result leave (Result reason)=0
 当前用户离开房间 更多...
 
virtual Result kickoutUser (Result reason, const UserId &userId)=0
 房间中踢出用户 更多...
 
virtual Result sendPublicData (const char *data, uint32 len)=0
 透明通道,发送广播数据 更多...
 
virtual Result sendPrivateData (const char *data, uint32 len, const UserId &toId)=0
 透明通道,发送私有数据 更多...
 
virtual const RoomIdgetRoomId () const =0
 房间信息和用户信息操作 更多...
 
virtual const RoomInfogetRoomInfo () const =0
 获取房间信息 更多...
 
virtual const UsergetSelfUser () const =0
 获取本用户信息 更多...
 
virtual const UserIdgetSelfUserId () const =0
 获取本用户Id 更多...
 
virtual uint32 getParticipantsCount () const =0
 
virtual Result getParticipants (uint32 begindex, uint32 &ncount, UsersType &users)=0
 获取房间中的用户列表 更多...
 
virtual Result setVideoParams (const VideoParams &param)=0
 音视频操作 更多...
 
virtual VideoParams getVideoParams () const =0
 
virtual Result setAudioParams (const AudioParams &param)=0
 设置音频麦克风采集、推流等参数 更多...
 
virtual AudioParams getAudioParams () const =0
 
virtual Result setVideoSource (FakeVideoCapturer *vcapturer)=0
 开启直播(主播)或对讲(观众)前: 设置视频的输入数据源 更多...
 
virtual Result setAudioSource (FakeAudioCapturer *acapturer)=0
 开启直播(主播)或对讲(观众)前: 设置音频的输入数据源 更多...
 
virtual Result publishMicrophone ()=0
 打开本地麦克风发布到房间中 更多...
 
virtual Result unpublishMicrophone ()=0
 关闭本地麦克风发布到房间中 更多...
 
virtual Result previewCamera (IVideoRender *render)=0
 预览本地缺省摄像头视频 更多...
 
virtual Result unpreviewCamera ()=0
 取消预览缺省摄像头视频 更多...
 
virtual Result publishCamera ()=0
 发布缺省摄像头视频 更多...
 
virtual Result unpublishCamera ()=0
 取消发布缺省摄像头视频 更多...
 
virtual Result attachRender (const UserId &userId, IVideoRender *render)=0
 关联视频数据和显示对象,在render中显示视频 更多...
 
virtual Result detachRender (const UserId &userId)=0
 解除摄像头视频数据的所有显示对象关联 更多...
 
virtual Result switchCamera ()=0
 视频切换摄像头 更多...
 
virtual bool ismuteMicrophone () const =0
 判断本地麦克风是否静默 更多...
 
virtual Result muteMicrophone ()=0
 本地麦克风静默 更多...
 
virtual Result unmuteMicrophone ()=0
 本地麦克风静默取消 更多...
 
virtual Result setAudioMixerDataListener (IAudioRender *listener, uint32 sampleRate)=0
 音视频导出操作 更多...
 
virtual Result setVideoMixerDataListener (IVideoRender *listener)=0
 设置获取视频数据回调接口,此数据仅回调一份数据:数据为主视频+各个Overlay的视频,视频大小为主视频大小;如使用ILivecast接口,不需要设置此接口。 更多...
 
virtual IMVideoMixergetVideoMixer ()=0
 获取视频混频布局接口 更多...
 
virtual Result enableStats (bool isEnable)=0
 房间统计信息 更多...
 
virtual const RoomStatsgetRoomStats () const =0
 获取房间的流量统计信息 更多...
 
virtual Result setOption (RoomOption type, const String &value)=0
 设置房间选项 更多...
 
virtual String getOption (RoomOption type)=0
 获取房间选项 更多...
 

静态 Public 成员函数

static IEasyRoomobtain (const RoomId &roomId)
 获取或创建房间接口 更多...
 

Protected 成员函数

virtual ~IEasyRoom ()
 

详细描述

简易房间接口类

简易房间接口定义了独立的简易房间对象创建和释放、房间功能操作。

成员类型定义说明

◆ FuncJoinResult

typedef void(* tee3::avd::IEasyRoom::FuncJoinResult) (const RoomId &roomId, Result result)

加入房间回调接口

参数
[in]result加入错误代码。
参见
join

成员枚举类型说明

◆ OperateType

异步操作类型.

枚举值
ot_publishMicrophone 

房间中分享本地音频

ot_unpublishMicrophone 

房间中关闭分享本地音频

ot_publishCamera 

房间中分享本地视频

ot_unpublishCamera 

房间中关闭分享本地视频

ot_attachRender 

房间中订阅显示视频

ot_detachRender 

房间中取消订阅显示视频

构造及析构函数说明

◆ ~IEasyRoom()

virtual tee3::avd::IEasyRoom::~IEasyRoom ( )
protectedvirtual

成员函数说明

◆ attachRender()

virtual Result tee3::avd::IEasyRoom::attachRender ( const UserId userId,
IVideoRender render 
)
pure virtual

关联视频数据和显示对象,在render中显示视频

参数
[in]userId摄像头Id,唯一标示一路共享的摄像头视频。
[in]*render显示对象接口指针。
注解
视频数据可以在多个显示对象上显示,而一个显示对象某一时刻只能显示一路视频。 在本地视频发布到房间中,或者远端视频订阅成功后,调用此接口完成视频与显示对象的对接,从而在显示对象中显示视频。
返回
返回错误代码。
参见
IVideoRender

◆ detachRender()

virtual Result tee3::avd::IEasyRoom::detachRender ( const UserId userId)
pure virtual

解除摄像头视频数据的所有显示对象关联

参数
[in]userId摄像头Id,唯一标示一路共享的摄像头视频。
返回
返回错误代码。

◆ enableStats()

virtual Result tee3::avd::IEasyRoom::enableStats ( bool  isEnable)
pure virtual

房间统计信息

当前房间启用或关闭流量统计功能

参数
[in]isEnable启用或关闭。
返回
返回错误代码: AVD_OK 成功

◆ getAudioParams()

virtual AudioParams tee3::avd::IEasyRoom::getAudioParams ( ) const
pure virtual

◆ getOption()

virtual String tee3::avd::IEasyRoom::getOption ( RoomOption  type)
pure virtual

获取房间选项

参数
[in]type房间选项类型。
返回
返回房间选项字符串。

◆ getParticipants()

virtual Result tee3::avd::IEasyRoom::getParticipants ( uint32  begindex,
uint32 ncount,
UsersType users 
)
pure virtual

获取房间中的用户列表

参数
[in]begindex起始索引。
[in,out]ncount请求数量;实际返回数量。
[out]users用户列表集合。
注解
用户列表不包含本用户。
返回
返回错误代码。

◆ getParticipantsCount()

virtual uint32 tee3::avd::IEasyRoom::getParticipantsCount ( ) const
pure virtual

◆ getRoomId()

virtual const RoomId& tee3::avd::IEasyRoom::getRoomId ( ) const
pure virtual

房间信息和用户信息操作

获取房间Id

返回
返回房间Id。

◆ getRoomInfo()

virtual const RoomInfo& tee3::avd::IEasyRoom::getRoomInfo ( ) const
pure virtual

获取房间信息

返回
返回房间信息。
参见
RoomInfo

◆ getRoomStats()

virtual const RoomStats& tee3::avd::IEasyRoom::getRoomStats ( ) const
pure virtual

获取房间的流量统计信息

返回
返回房间流量统计信息。
参见
RoomStats

◆ getSelfUser()

virtual const User& tee3::avd::IEasyRoom::getSelfUser ( ) const
pure virtual

获取本用户信息

返回
返回本用户信息。

◆ getSelfUserId()

virtual const UserId& tee3::avd::IEasyRoom::getSelfUserId ( ) const
pure virtual

获取本用户Id

返回
返回本用户Id。

◆ getVideoMixer()

virtual IMVideoMixer* tee3::avd::IEasyRoom::getVideoMixer ( )
pure virtual

获取视频混频布局接口

返回
混频布局接口

◆ getVideoParams()

virtual VideoParams tee3::avd::IEasyRoom::getVideoParams ( ) const
pure virtual

◆ ismuteMicrophone()

virtual bool tee3::avd::IEasyRoom::ismuteMicrophone ( ) const
pure virtual

判断本地麦克风是否静默

返回
返回静默状态。

◆ isWorking()

virtual bool tee3::avd::IEasyRoom::isWorking ( ) const
pure virtual

◆ join()

virtual Result tee3::avd::IEasyRoom::join ( const User user,
FuncJoinResult  joinresult 
)
pure virtual

加入房间

参数
[in,out]user用户信息:用户Id(不能包含'{'、'}'字符),用户名,用户数据等;当应用层不传入user.userId时,SDK将创建一个新的guid作为user.userId,同时返回给应用层。
[in]joinresult加房间回调接口。
注解
加入房间时,可以指定结果单独回调接口;如果指定,则在指定单独接口回调,不会在Listener的onJoinResult回调。
返回
返回错误代码。
参见
User

◆ kickoutUser()

virtual Result tee3::avd::IEasyRoom::kickoutUser ( Result  reason,
const UserId userId 
)
pure virtual

房间中踢出用户

参数
[in]reason踢出用户的理由代码。
[in]userId被踢出用户Id。
注解
被踢用户将会在onLeaveIndication中接收到回调,被踢用户直接调用 leave 离开房间即可。
返回
返回错误代码。
参见
onLeaveIndication

◆ leave()

virtual Result tee3::avd::IEasyRoom::leave ( Result  reason)
pure virtual

当前用户离开房间

参数
[in]reason用户离开房间的原因代码,正常离开为AVD_OK。
注解
当前用户离开房间后,当前房间对象和房间的各功能模块都处于离会状态,功能操作无效。
返回
返回错误代码。

◆ muteMicrophone()

virtual Result tee3::avd::IEasyRoom::muteMicrophone ( )
pure virtual

本地麦克风静默

返回
返回错误代码。

◆ obtain()

static IEasyRoom* tee3::avd::IEasyRoom::obtain ( const RoomId roomId)
static

获取或创建房间接口

参数
[in]roomId房间Id。
注解
只支持单用户应用,不支持多用户应用。
返回
返回房间接口指针。

◆ previewCamera()

virtual Result tee3::avd::IEasyRoom::previewCamera ( IVideoRender render)
pure virtual

预览本地缺省摄像头视频

参数
[in]*render显示对象接口指针
注解
本地视频在发布到会议前,可以调用此接口进行视频预览;视频发布到会议中后,需要使用attachRender接口来进行视频显示,此时此接口无效。 只支持单个视频输入设备,如果设置了 FakeVideoCapturer 优先使用外部导入视频; 如果没有设置外部导入视频源,根据设置使用缺省视频设备。
返回
返回错误代码。
参见
IVideoRender

◆ publishCamera()

virtual Result tee3::avd::IEasyRoom::publishCamera ( )
pure virtual

发布缺省摄像头视频

返回
返回错误代码。
注解
发布操作为异步操作,操作结果在 onPublishResult 中返回。
参见
onPublishResult

◆ publishMicrophone()

virtual Result tee3::avd::IEasyRoom::publishMicrophone ( )
pure virtual

打开本地麦克风发布到房间中

返回
返回错误代码。
注解
为异步操作,操作结果在 onOpenMicrophoneResult 中返回。 只支持单个音频输入设备,如果设置了 FakeAudioCapturer优先使用外部导入音频; 如果没有设置外部导入音频源,根据设置使用缺省音频设备。
参见
onOpenMicrophoneResult

◆ release()

virtual void tee3::avd::IEasyRoom::release ( )
pure virtual

释放房间接口

注解
释放房间后,App层不能再使用当前房间指针,所有引用房间指针处均需设置为NULL。

◆ sendPrivateData()

virtual Result tee3::avd::IEasyRoom::sendPrivateData ( const char *  data,
uint32  len,
const UserId toId 
)
pure virtual

透明通道,发送私有数据

参数
[in]*data发送的数据指针。
[in]len发送的数据长度。
[in]toId目的用户Id。
注解
此透明通道用于承载应用层数据,发送给房间内某一特定用户。
返回
返回错误代码。

◆ sendPublicData()

virtual Result tee3::avd::IEasyRoom::sendPublicData ( const char *  data,
uint32  len 
)
pure virtual

透明通道,发送广播数据

参数
[in]*data发送的数据指针。
[in]len发送的数据长度。
注解
此透明通道用于承载应用层数据,广播给所有房间内用户。
返回
返回错误代码。

◆ setAudioMixerDataListener()

virtual Result tee3::avd::IEasyRoom::setAudioMixerDataListener ( IAudioRender listener,
uint32  sampleRate 
)
pure virtual

音视频导出操作

设置获取混音数据回调接口

参数
[in]listener混音数据回调指针。
[in]sampleRate导出混音数据的采样率:16000,44100,48000。
返回
返回错误代码。
参见
IAudioRender
ro_audio_mixerdata_callback_buffered 单次混音数据回调“10ms数据”还是“1024samples数据”
注解
如果音视频同时混合出流,建议先设置视频,再设置音频的回调接口,有助于音视频时间戳对齐。

◆ setAudioParams()

virtual Result tee3::avd::IEasyRoom::setAudioParams ( const AudioParams param)
pure virtual

设置音频麦克风采集、推流等参数

参数
[in]param音频参数。
返回
返回错误代码。

◆ setAudioSource()

virtual Result tee3::avd::IEasyRoom::setAudioSource ( FakeAudioCapturer acapturer)
pure virtual

开启直播(主播)或对讲(观众)前: 设置音频的输入数据源

参数
[in]*acapturer音频的输入数据源。
返回
返回错误代码。
参见
FakeAudioCapturer

◆ setListener()

virtual Result tee3::avd::IEasyRoom::setListener ( IListener listener)
pure virtual

房间加入退出逻辑

设置房间回调接口

参数
[in]*listener回调接口指针。
返回
返回错误代码。
参见
IListener

◆ setOption()

virtual Result tee3::avd::IEasyRoom::setOption ( RoomOption  type,
const String value 
)
pure virtual

设置房间选项

参数
[in]type房间选项类型。
[in]value房间选项值字符串。
返回
返回错误代码。

◆ setVideoMixerDataListener()

virtual Result tee3::avd::IEasyRoom::setVideoMixerDataListener ( IVideoRender listener)
pure virtual

设置获取视频数据回调接口,此数据仅回调一份数据:数据为主视频+各个Overlay的视频,视频大小为主视频大小;如使用ILivecast接口,不需要设置此接口。

返回
返回错误代码。
参见
IVideoRender
注解
如果音视频同时混合出流,建议先设置视频,再设置音频的回调接口,有助于音视频时间戳对齐。

◆ setVideoParams()

virtual Result tee3::avd::IEasyRoom::setVideoParams ( const VideoParams param)
pure virtual

音视频操作

设置视频摄像头采集、推流等参数

参数
[in]param视频参数。
返回
返回错误代码。

◆ setVideoSource()

virtual Result tee3::avd::IEasyRoom::setVideoSource ( FakeVideoCapturer vcapturer)
pure virtual

开启直播(主播)或对讲(观众)前: 设置视频的输入数据源

参数
[in]*vcapturer视频的输入数据源。
返回
返回错误代码。
参见
FakeVideoCapturer

◆ switchCamera()

virtual Result tee3::avd::IEasyRoom::switchCamera ( )
pure virtual

视频切换摄像头

返回
返回错误代码。

◆ unmuteMicrophone()

virtual Result tee3::avd::IEasyRoom::unmuteMicrophone ( )
pure virtual

本地麦克风静默取消

返回
返回错误代码。

◆ unpreviewCamera()

virtual Result tee3::avd::IEasyRoom::unpreviewCamera ( )
pure virtual

取消预览缺省摄像头视频

返回
返回错误代码。

◆ unpublishCamera()

virtual Result tee3::avd::IEasyRoom::unpublishCamera ( )
pure virtual

取消发布缺省摄像头视频

返回
返回错误代码。
注解
取消发布操作为异步操作,操作结果在 onUnpublishResult 中返回。
参见
onUnpublishResult

◆ unpublishMicrophone()

virtual Result tee3::avd::IEasyRoom::unpublishMicrophone ( )
pure virtual

关闭本地麦克风发布到房间中

返回
返回错误代码。
注解
为异步操作,操作结果在 onCloseMicrophoneResult 中返回。
参见
onCloseMicrophoneResult

该类的文档由以下文件生成: