AVDEasyRoom Class Reference

Inherits from NSObject
Declared in AVDEasyRoom.h
AVDEasyRoom.mm

Overview

  • 简易房间接口类

*

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

  videoParams

< 房间逻辑回调代理

@property (nonatomic, retain) AVDVideoParams *videoParams

Discussion

< 房间逻辑回调代理

Declared In

AVDEasyRoom.h

  audioParams

< 视频参数

@property (nonatomic, retain) AVDAudioParams *audioParams

Discussion

< 视频参数

Declared In

AVDEasyRoom.h

  roomId

< 音频参数

@property (nonatomic, retain, readonly) AVDRoomId roomId

Discussion

< 音频参数

Declared In

AVDEasyRoom.h

  roomInfo

< 当前的房间Id

@property (nonatomic, retain, readonly) AVDRoomInfo *roomInfo

Discussion

< 当前的房间Id

Declared In

AVDEasyRoom.h

  selfUserId

< 当前的房间信息

@property (nonatomic, retain, readonly) AVDUserId selfUserId

Discussion

< 当前的房间信息

Declared In

AVDEasyRoom.h

  selfUser

< 自己的用户ID

@property (nonatomic, retain, readonly) AVDUser *selfUser

Discussion

< 自己的用户ID

Declared In

AVDEasyRoom.h

  participants

< 自己的用户信息

@property (nonatomic, retain, readonly) NSMutableArray *participants

Discussion

< 自己的用户信息

Declared In

AVDEasyRoom.h

+ obtain:

获取或创建房间接口

+ (AVDEasyRoom *)obtain:(AVDRoomId)roomID

Discussion

获取或创建房间接口

*

  • @param[in] roomId 房间Id。

  • @note 只支持单用户应用,不支持多用户应用。

  • @return 返回房间接口指针。

Declared In

AVDEasyRoom.h

– destory

释放房间接口

- (void)destory

Discussion

释放房间接口

*

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

Declared In

AVDEasyRoom.h

– joinWithUser:delegate:

当前用户加入房间

- (AVDResult)joinWithUser:(AVDUser *)user delegate:(id<AVDRoomJoinDelegate>)joinresult

Discussion

当前用户加入房间

*

  • @param[in] *user 用户信息:用户Id(不能包含'{‘、’}‘字符),用户名,用户数据等;当应用层必须传入有效的user.UserId,来唯一标识一个用户。

  • @param[in] joinresult 加房间回调接口。

*

  • @return 返回错误代码。

  • @sa User

Declared In

AVDEasyRoom.h

– leave:

当前用户离开房间

- (AVDResult)leave:(AVDResult)reason

Discussion

当前用户离开房间

*

  • @param[in] reason 用户离开房间的原因代码,正常离开为AVD_OK。

*

  • @note 当前用户离开房间后,当前房间对象和房间的各功能模块都处于离会状态,功能操作无效。

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– kickoutUser:userId:

房间中踢出用户

- (AVDResult)kickoutUser:(AVDResult)reason userId:(AVDUserId)userId

Discussion

房间中踢出用户

*

  • @param[in] reason 踢出用户的理由代码。

  • @param[in] userId 被踢出用户Id。

*

  • @note 被踢用户将会在onLeaveIndication中接收到回调,被踢用户直接调用 leave 离开房间即可。

  • @return 返回错误代码。

  • @sa onLeaveIndication

Declared In

AVDEasyRoom.h

– sendPublicData:

透明通道,发送广播数据

- (AVDResult)sendPublicData:(NSData *)data

Discussion

透明通道,发送广播数据

*

  • @param[in] *data 发送的数据指针。

*

  • @note 此透明通道用于承载应用层数据,广播给所有房间内用户。

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– sendPrivateData:toUserId:

透明通道,发送私有数据

- (AVDResult)sendPrivateData:(NSData *)data toUserId:(AVDUserId)toId

Discussion

透明通道,发送私有数据

*

  • @param[in] *data 发送的数据指针。

  • @param[in] toId 目的用户Id。

*

  • @note 此透明通道用于承载应用层数据,发送给房间内某一特定用户。

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– setVideoSource:

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

- (AVDResult)setVideoSource:(AVDFakeVideoCapturer *)vcapturer

Discussion

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

*

  • @param[in] *vcapturer 视频的输入数据源。

  • @return 返回错误代码。

  • @sa FakeVideoCapturer

Declared In

AVDEasyRoom.h

– setAudioSource:

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

- (AVDResult)setAudioSource:(AVDFakeAudioCapturer *)acapturer

Discussion

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

*

  • @param[in] *acapturer 音频的输入数据源。

  • @return 返回错误代码。

  • @sa FakeAudioCapturer

Declared In

AVDEasyRoom.h

– publishMicrophone

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

- (AVDResult)publishMicrophone

Discussion

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

*

  • @return 返回错误代码。

  • @note 为异步操作,操作结果在 onOpenMicrophoneResult 中返回。

  • 只支持单个音频输入设备,如果设置了 FakeAudioCapturer优先使用外部导入音频;

  • 如果没有设置外部导入音频源,根据设置使用缺省音频设备。

  • @sa onOpenMicrophoneResult

Declared In

AVDEasyRoom.h

– unpublishMicrophone

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

- (AVDResult)unpublishMicrophone

Discussion

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

*

  • @return 返回错误代码。

  • @note 为异步操作,操作结果在 onCloseMicrophoneResult 中返回。

  • @sa onCloseMicrophoneResult

Declared In

AVDEasyRoom.h

– previewCamera:

预览本地缺省摄像头视频

- (AVDResult)previewCamera:(id<AVDVideoRenderer>)render

Discussion

预览本地缺省摄像头视频

*

  • @param[in] *render 显示对象接口指针

  • @note 本地视频在发布到会议前,可以调用此接口进行视频预览;视频发布到会议中后,需要使用attachRender接口来进行视频显示,此时此接口无效。

  • 只支持单个视频输入设备,如果设置了 FakeVideoCapturer 优先使用外部导入视频;

  • 如果没有设置外部导入视频源,根据设置使用缺省视频设备。

  • @return 返回错误代码。

  • @sa IVideoRender

Declared In

AVDEasyRoom.h

– unpreviewCamera

取消预览缺省摄像头视频

- (AVDResult)unpreviewCamera

Discussion

取消预览缺省摄像头视频

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– publishCamera

发布缺省摄像头视频

- (AVDResult)publishCamera

Discussion

发布缺省摄像头视频

*

  • @return 返回错误代码。

  • @note 发布操作为异步操作,操作结果在 onPublishResult 中返回。

  • @sa onPublishResult

Declared In

AVDEasyRoom.h

– unpublishCamera

取消发布缺省摄像头视频

- (AVDResult)unpublishCamera

Discussion

取消发布缺省摄像头视频

*

  • @return 返回错误代码。

  • @note 取消发布操作为异步操作,操作结果在 onUnpublishResult 中返回。

  • @sa onUnpublishResult

Declared In

AVDEasyRoom.h

– attachRender:render:

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

- (AVDResult)attachRender:(AVDUserId)userId render:(id<AVDVideoRenderer>)render

Discussion

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

*

  • @param[in] userId 摄像头Id,唯一标示一路共享的摄像头视频。

  • @param[in] *render 显示对象接口指针。

*

  • @note 视频数据可以在多个显示对象上显示,而一个显示对象某一时刻只能显示一路视频。

  • 在本地视频发布到房间中,或者远端视频订阅成功后,调用此接口完成视频与显示对象的对接,从而在显示对象中显示视频。
    
  • @return 返回错误代码。

  • @sa IVideoRender

Declared In

AVDEasyRoom.h

– detachRender:

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

- (AVDResult)detachRender:(AVDUserId)userId

Discussion

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

*

  • @param[in] userId 摄像头Id,唯一标示一路共享的摄像头视频。

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– switchCamera

视频切换摄像头

- (AVDResult)switchCamera

Discussion

视频切换摄像头

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– ismuteMicrophone

判断本地麦克风是否静默

- (BOOL)ismuteMicrophone

Discussion

判断本地麦克风是否静默

  • @return 返回静默状态。

Declared In

AVDEasyRoom.h

– muteMicrophone

本地麦克风静默

- (AVDResult)muteMicrophone

Discussion

本地麦克风静默

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– unmuteMicrophone

本地麦克风静默取消

- (AVDResult)unmuteMicrophone

Discussion

本地麦克风静默取消

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– setAudioMixerDataListener:sampleRate:

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

- (AVDResult)setAudioMixerDataListener:(id<AVDAudioRenderer>)listener sampleRate:(NSInteger)sampleRate

Discussion

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

  • @param[in] listener 混音数据回调指针。

  • @param[in] sampleRate 导出混音数据的采样率:16000,44100,48000。

  • @return 返回错误代码。

  • @sa IAudioRender

  • @sa ro_audio_mixerdata_callback_buffered 单次混音数据回调“10ms数据”还是“1024samples数据”

  • @note 如果音视频同时混合出流,建议先设置视频,再设置音频的回调接口,有助于音视频时间戳对齐。

Declared In

AVDEasyRoom.h

– setVideoMixerDataListener:

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

- (AVDResult)setVideoMixerDataListener:(id<AVDVideoRenderer>)listener

Discussion

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

  • @param[in] listener 混音数据回调指针。

  • @return 返回错误代码。

  • @sa IVideoRender

  • @note 如果音视频同时混合出流,建议先设置视频,再设置音频的回调接口,有助于音视频时间戳对齐。

Declared In

AVDEasyRoom.h

– getVideoMixer

获取视频混频布局接口

- (AVDVideoMixer *)getVideoMixer

Discussion

获取视频混频布局接口

  • @return 混频布局接口

Declared In

AVDEasyRoom.h

– enableStats:

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

- (AVDResult)enableStats:(BOOL)isEnable

Discussion

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

  • @param[in] isEnable 启用或关闭。

  • @return 返回错误代码:

  • AVD_OK 成功

Declared In

AVDEasyRoom.h

– getRoomStats

获取房间的流量统计信息

- (AVDRoomStats *)getRoomStats

Discussion

获取房间的流量统计信息

  • @return 返回房间流量统计信息。

  • @sa RoomStats

Declared In

AVDEasyRoom.h

– setOption:value:

设置房间选项

- (AVDResult)setOption:(enum AVDRoomOption)type value:(NSString *)svalue

Discussion

设置房间选项

*

  • @param[in] type 房间选项类型。

  • @param[in] svalue 选项内容,根据选项说明填入。

  • @return 返回错误代码。

Declared In

AVDEasyRoom.h

– getOption:

获取房间选项

- (NSString *)getOption:(enum AVDRoomOption)type

Discussion

获取房间选项

*

  • @param[in] type 房间选项类型。

  • @return 返回选项内容,根据选项说明解析。

Declared In

AVDEasyRoom.h