JRTCSDK-iOS v2501.0
多方通话 API 文档
载入中...
搜索中...
未找到
构造函数 | 属性 | 所有成员列表
JRTCRoomJoinParam类 参考

#import <JRTCRoomJoinParam.h>

构造函数

(NSDictionary *_Nonnull) - toDictionary
 

属性

bool viewerJoin
 
bool video
 
bool enableRemoteRecord
 
NSString * cdn
 
NSString * password
 
bool smoothMode
 
float wholeRatio
 
Resolution maxResolution
 
int maxFrameRate
 
NSString * svcResolution
 
VideoDefinitionType videoDefinition
 
int heartbeatTime
 
int heartbeatTimeout
 
int capacity
 
bool uploadLocalAudio
 
bool uploadLocalVideo
 
SecurityType securityType
 
VideoEncodeType videoEncodeType
 
bool videoEncoderAutoFallback
 
AudioEncodeType audioEncodeType
 
NSString * businessId
 
NSString * traceId
 
NSString * serialId
 
NSString * extraSerialId
 
int role
 
NSString * jsmiOid
 
int minSendBwe
 
int maxSendBwe
 
int minReceiveBwe
 
int maxReceiveBwe
 
NSDictionary< NSString *, id > * otherParam
 

详细描述

加入房间配置参数类,作为 join 方法 joinParam 参数的入参

函数文档

◆ toDictionary

- (NSDictionary *_Nonnull) toDictionary

对象转字典

属性说明

◆ audioEncodeType

- (AudioEncodeType) audioEncodeType
readwritenonatomicassign

房间音频编码,默认为 AudioEncodeTypeOPUS

注解
房间全局属性,第一个加入房间成员设置成效

◆ businessId

- (NSString*) businessId
readwritenonatomiccopy

日志跟踪ID,可选

◆ capacity

- (int) capacity
readwritenonatomicassign

房间最大人数,默认值为 6

注解
房间全局属性,第一个加入房间成员设置成效

◆ cdn

- (NSString*) cdn
readwritenonatomiccopy

推流地址,默认为 nil

如果用户在加入房间时没有设置推流地址,就无法进行推流

注解
房间全局属性,第一个加入房间成员设置成效

◆ enableRemoteRecord

- (bool) enableRemoteRecord
readwritenonatomicassign

是否需要远程录制,默认不需要远程录制

注解
房间全局属性,第一个加入房间成员设置成效
设置 true,并没有真正开启远程录制,只是通知服务端这个房间需要远程录制,加入房间后, 需要通过接口 enableRemoteRecord 去开启远程录制
  • true: 需要远程录制
  • false: 不需要远程录制

◆ extraSerialId

- (NSString*) extraSerialId
readwritenonatomiccopy

外部自定义业务流水号,可选

◆ heartbeatTime

- (int) heartbeatTime
readwritenonatomicassign

通话心跳间隔时间,默认为 20 秒

心跳间隔需比心跳超时时间小。
例如设置了心跳间隔为 X 秒,那么终端会每隔 X 秒给服务器发送心跳包。

注解
房间全局属性,第一个加入房间成员设置成效

◆ heartbeatTimeout

- (int) heartbeatTimeout
readwritenonatomicassign

通话心跳超时时间,默认为 60 秒

例如设置了心跳超时时间为 X 秒,那么服务器在 X 秒内都没有收到成员心跳时,该成员会自动结束通话。

注解
房间全局属性,第一个加入房间成员设置成效

◆ jsmiOid

- (NSString*) jsmiOid
readwritenonatomiccopy

房间实例ID,可选

注解
使用场景举例:多中心场景,服务端没有部署 redis 服务,可通过该方式结合 otherParamDic 加入指定中心创建的房间

◆ maxFrameRate

- (int) maxFrameRate
readwritenonatomicassign

房间视频最大帧率 1-30, 默认值为 24

注解
房间全局属性,第一个加入房间成员设置成效
当参数 videoDefinition} 为 DefinitionCustom 时有效

◆ maxReceiveBwe

- (int) maxReceiveBwe
readwritenonatomicassign

最大接收估计带宽,单位 bps,默认值 5000

参数
maxReceiveBwe最大接收估计带宽

◆ maxResolution

- (Resolution) maxResolution
readwritenonatomicassign

房间视频最大分辨率,默认为 Resolution720

注解
房间全局属性,第一个加入房间成员设置成效

svcResolution 有值时,此参数设置无效,建议使用 svcResolution

◆ maxSendBwe

- (int) maxSendBwe
readwritenonatomicassign

最大发送估计带宽,单位 bps,默认值 5000

参数
maxSendBwe最小发送估计带宽

◆ minReceiveBwe

- (int) minReceiveBwe
readwritenonatomicassign

最小接收估计带宽,单位 bps,默认值 1500

参数
minReceiveBwe最小发送估计带宽

◆ minSendBwe

- (int) minSendBwe
readwritenonatomicassign

最小发送估计带宽,单位 bps,默认值 1500

返回
最小发送估计带宽

◆ otherParam

- (NSDictionary<NSString*, id>*) otherParam
readwritenonatomicstrong

通过房间实例ID加入房间场景的其他参数,可选

注解
使用场景举例:多中心场景,服务端没有部署 redis 服务,可通过该方式结合 jsmiOid 加入指定中心创建的房间

◆ password

- (NSString*) password
readwritenonatomiccopy

房间密码,默认为 "123456"

注解
如果是首个加入房间成员,那么就是设置房间密码,否则就是加入房间密码

◆ role

- (int) role
readwritenonatomicassign

设置用户角色

注解
该接口用于内部调试使用,不建议外部使用
参数
role角色值

◆ securityType

- (SecurityType) securityType
readwritenonatomicassign

通话媒体数据加密方式,默认SecurityTypeSrtp 加密

注解
房间全局属性,第一个加入房间成员设置成效

◆ serialId

- (NSString*) serialId
readwritenonatomiccopy

业务流水号,保证唯一,可选

◆ smoothMode

- (bool) smoothMode
readwritenonatomicassign

房间视频是否开启平滑模式,默认不开启

  • true: 开启
  • false: 不开启

◆ svcResolution

- (NSString*) svcResolution
readwritenonatomiccopy

svc 分辨率,默认为 "1 180 250 360 600 720 1400"

注解
当参数 videoDefinition 为 DefinitionCustom 时有效

用于自定义分层参数和码率

格式: 高度公约数 第一层高倍数 第一层码率 第二层高倍数 第二层码率 第三层高倍数 第三层码率 第四层高倍数 第四层码率
说明
1)默认宽高比16:9,即 wholeRatio
2)编码宽高最后被裁成16整除
例如 "1 180 250 360 600 720 1400"
第一层 分辨率 宽320(180*1/9*16)高 180(180*1); 码率250kbps
第二层 分辨率 宽640(360*1/9*16)高 360(360*1); 码率600kbps
第三层 分辨率 宽1280(720*1/9*16)高 720(720*1); 码率1400kbps
此情况下只有三层,若需要四层,则需补充为 "1 180 250 360 600 720 1400 1080 1600"
第四层 分辨率 宽1920(1080*1/9*16)高 1080(1080*1); 码率1600kbps

◆ traceId

- (NSString*) traceId
readwritenonatomiccopy

日志跟踪ID,可选

◆ uploadLocalAudio

- (bool) uploadLocalAudio
readwritenonatomicassign

是否上传本地音频,默认上传

  • true: 上传
  • false: 不上传

◆ uploadLocalVideo

- (bool) uploadLocalVideo
readwritenonatomicassign

是否上传本地视频,默认上传

  • true: 上传
  • false: 不上传

◆ video

- (bool) video
readwritenonatomicassign

房间支持视频,默认支持

  • true: 支持
  • false: 不支持

◆ videoDefinition

- (VideoDefinitionType) videoDefinition
readwritenonatomicassign

房间视频清晰度,主要通过修改 svcResolution 参数和 maxFrameRate 参数调整清晰度,默认为 DefinitionCustom

注解
房间全局属性,第一个加入房间成员设置成效

◆ videoEncoderAutoFallback

- (bool) videoEncoderAutoFallback
readwritenonatomicassign

是否开启视频编码自动回落功能,默认开启 场景:开启后,当设置房间视频编码为 AV1 时,如果当前设备性能不足导致编码时间过长则自动回落到 H264 编码

注解
房间全局属性,第一个加入房间成员设置成效

◆ videoEncodeType

- (VideoEncodeType) videoEncodeType
readwritenonatomicassign

房间视频编码,默认为 VideoEncodeTypeH264

注解
房间全局属性,第一个加入房间成员设置成效

◆ viewerJoin

- (bool) viewerJoin
readwritenonatomicassign

是否以观众身份加入房间(无感加入),默认 false

注解
如果设置 true,加入房间后,其他房间内成员不会收到该成员加入通知,该成员也不支持上传本地音视频流

◆ wholeRatio

- (float) wholeRatio
readwritenonatomicassign

房间视频全局宽高比,默认为 16/9

注解
房间全局属性,第一个加入房间成员设置成效