全部产品

重要参数

更新时间:2020-06-22 15:19:41

变量 说明
CreateRoomParams 创建房间参数。
JoinRoomParams 加入房间参数。
PublishConfig 发布媒体流参数。
UnpublishConfig 取消订阅参数 。
SubscribeConfig 订阅媒体流参数。
UnsubscribeConfig 取消订阅媒体流参数。
LocalVideoInfo 本地视频信息,可用于暂停继续本地视频流的推送。
RemoteVideoInfo 远程视频信息,可以用于暂停继续远端视频流的渲染。
LocalAudioInfo 本地音频流信息,可以用于暂停继续本地音频流的推送。
RemoteAudioInfo 远端音频流信息,可以用于暂停继续远程音频的播放。
ParticipantInfo 视频通话参与者的用户信息,可用于订阅,发布等各种用户操作。
RoomInfo 创建房间返回的房间信息。
PublishEventCode 发布相关操作返回的事件码信息。
FeedInfo 可被订阅流的信息。
SubscribeEventCode 订阅相关操作返回的事件码信息。
Logger 业务可提供自定义 log,将 SDK 的日志输出到业务的 log 处。
ErrorCode 错误码。

CreateRoomParams

  • 功能:创建房间参数。
  • 介绍:作为创建房间的参数,只有该参数填写正确,才能顺利创建音视频房间。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
uid String 用户 ID -
bizName String 业务名称,需要向服务提供方进行申请 -
signature String 业务签名 -
extraInfo String 额外信息,与业务相关 null

JoinRoomParams

  • 功能:加入房间参数。
  • 介绍:作为进房参数,只有该参数填写正确,才能顺利进入 roomId 所指定的音视频房间。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
uid String 用户 ID -
bizName String 业务名称,需要向服务提供方进行申请 -
roomId String 房间 ID -
rtoken String 进入房间所需要的 token -
signature String 业务签名 -
envType int 服务提供类型,当前支持 alipay 和 aliyun
alipay=0(默认值)
aliyun=1
0

PublishConfig

  • 功能:发布媒体流参数。
  • 介绍:配置需要发布媒体流的参数,包括音频和视频。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
videoSource PublishVideoSource 待发布媒体流的视频源
VIDEO_SOURCE_CAMERA(默认值)
-
videoProfile VideoProfile 视频属性配置
PROFILE_360_640P_15(默认值)
PROFILE_540_960P_15
audioSource PublishAudioSource 待发布媒体流的音频源
AUDIO_SOURCE_MIC(默认值)
-
videoCustomWidth int 用户自定义视频输出 width
仅当 videoProfile = PROFILE_CUSTOM 时生效
-
VideoCustomHeight int 用户自定义视频输出 height
仅当 videoProfile = PROFILE_CUSTOM 时生效
-
videoCustomFps int 用户自定义视频输出 fps
仅当 videoProfile = PROFILE_CUSTOM 时生效
-
VideoCustomBirate int 用户自定义视频输出 bitrate
仅当 videoProfile = PROFILE_CUSTOM 时生效
-
说明:无论是横屏还是竖屏,640 × 360 还是 360 × 640,videoProfile 都选择 PROFILE_360_640P_15 或者 PROFILE_360_640_P30。
  1. enum PublishVideoSource {
  2. VIDEO_SOURCE_CAMERA, //视频源是摄像头
  3. VIDEO_SOURCE_SCREEN, //视频源是屏幕共享
  4. VIDEO_SOURCE_CUSTOM, //_视频源是自定义数据
  5. VIDEO_SOURCE_NULL //禁止输出视频
  6. }
  7. enum VideoProfile {
  8. PROFILE_360_640P_15, //分辨率360 * 640,帧率15
  9. PROFILE_360_640P_30, //分辨率360 * 640,帧率30
  10. PROFILE_540_960P_15, //分辨率540 * 960,帧率15
  11. PROFILE_540_960P_30, //分辨率540 * 960,帧率30
  12. PROFILE_720_1280P_15, //分辨率720 * 1280,帧率15
  13. PROFILE_720_1280P_30, //分辨率720 * 1280,帧率30
  14. PROFILE_1080_1920P_15, //分辨率1080 * 1920,帧率30
  15. PROFILE_1080_1920P_30, //分辨率1080 * 1920,帧率30
  16. PROFILED_EFAULT, //默认,分辨率360 * 640,帧率15
  17. PROFILE_CUSTOM //自定义模式,需要设置自定义视频属性
  18. }
  19. enum PublishAudioSource {
  20. AUDIO_SOURCE_MIC, //音频源是麦克风
  21. AUDIO_SOURCE_NULL //禁止输出音频
  22. }

UnpublishConfig

  • 功能:取消订阅参数。
  • 介绍:配置需要取消发布的媒体流信息。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
videoSource PublishVideoSource 待取消发布的媒体流视频源
VIDEO_SOURCE_CAMERA(默认值)
-
audioSource PublishAudioSource 待取消发布媒体流的音频源
AUDIO_SOURCE_MIC(默认值)
-

SubscribeConfig

  • 功能:订阅媒体流参数。
  • 介绍:配置需要订阅的媒体流参数。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
info FeedInfo 需要订阅的流信息,包含 uid 和流的 feedId,tag 信息 -

UnsubscribeConfig

  • 功能:取消订阅媒体流参数。
  • 介绍:配置需要取消订阅的媒体流参数。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
info FeedInfo 需要订阅的流信息,包含 uid 和流的 feedId,tag 信息 -

LocalVideoInfo

  • 功能:本地视频信息,可用于暂停继续本地视频流的推送。
  • 介绍:包含了视频源信息。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
videoSource PublishVideoSource 本地媒体流视频源信息
VIDEO_SOURCE_CAMERA(默认值)
-

RemoteVideoInfo

  • 功能:远程视频信息,可以用于暂停继续远端视频流的渲染。
  • 介绍:包含了远端视频流信息
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
feedId String 远端媒体流 ID -

LocalAudioInfo

  • 功能:本地音频流信息,可以用于暂停继续本地音频流的推送。
  • 介绍:包含了本地音频流源信息。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
audioSource PublishAudioSource 本地音频源信息
AUDIO_SOURCE_MIC(默认值)
-

RemoteAudioInfo

  • 功能:远端音频流信息,可以用于暂停继续远程音频的播放。
  • 介绍:包含了远程音频信息。
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
feedId String 远端媒体流 ID -

FeedInfo

  • 功能:可被订阅流的信息。
  • 介绍:一条可被订阅流的信息,包含了流所属用户的uid,流的feedId,流的额外属性tag
  • 属性列表
属性 类型 字段含义 推荐值 是否必填
uid String 可被订阅流的所属用户 ID -
feedId String 可被订阅流的 ID -
tag String 可被订阅流的额外属性,目前是 PublishVideoSource 的字符串表现形式 -

ParticipantInfo

  • 功能:视频通话参与者的用户信息,可用于订阅,发布等各种用户操作。
  • 介绍:用户信息,包含用户 ID,用户发布的流信息,用户订阅的流信息。
  • 属性列表
属性 类型 字段含义
uid String 用户 uid
feedList List 用户推送的流信息,一个用户可以推送多路流供其他用户订阅
subscribeIdList List 用户订阅的流信息,一个用户可以订阅多路流

RoomInfo

  • 功能:创建房间返回的房间信息。
  • 介绍:房间信息,通过该房间信息,可以加入对应的房间,进行音视频通话。
  • 属性列表
属性 类型 字段含义
roomId String 房间 ID
rtoken String 房间对应的 token

PublishEventCode

  • 功能:发布相关操作返回的事件码信息。
  • 介绍:在发布、取消发布后,返回的对应事件码信息。
  • 属性列表
属性 字段含义
PUBLISH_START 发布操作有效,服务器接受该发布请求,本地准备资源进行发布
PUBLISH_SUCCESS 发布操作成功,媒体流成功推送到服务器上
PUBLISH_FAIL 发布操作失败,可能是媒体流获取失败,也可能是媒体流推送失败
PUBLISH_DISCONNECT 发布断开,媒体流推送遇到错误,与服务器断开连接
UNPUBLISH_SUCCESS 取消发布成功
UNPUBLISH_FAIL 取消发布失败,参数有误或者服务器出错

SubscribeEventCode

  • 功能:订阅相关操作返回的事件码信息。
  • 介绍:在订阅,取消订阅后,返回的对应事件码信息。
  • 属性列表
属性 字段含义
SUBSCRIBE_START 订阅操作有效,服务器接受该订阅请求,本地准备拉流操作
SUBSCRIBE_SUCCESS 订阅操作成功,成功从服务器拉取媒体流到本地
SUBSCRIBE_FAIL 订阅操作失败,可能是参数错误,也可能是服务器错误
SUBSCRIBE_DISCONNECT 订阅断开,媒体流推送遇到错误,与服务器断开连接
UNSUBSCRIBE_SUCCESS 取消订阅成功
UNSUBSCRIBE_FAIL 取消订阅失败,参数有误或者服务器出错

Logger

功能:业务可提供自定义 log,将 SDK 的日志输出到业务的 log 处,只需实现该 Logger 接口,然后通过 setLogger 设置到 SDK 即可。

  1. interface Logger {
  2. int v(String tag, String msg);
  3. int d(String tag, String msg);
  4. int i(String tag, String msg);
  5. int w(String tag, String msg);
  6. int e(String tag, String msg);
  7. int e(String tag, String msg, Throwable tr);
  8. }

ErrorCode

在 ErrorCode 类:

变量 说明
ERROR_NULL 0 无错误。
ERROR_CREATE_ROOM -115 创建房间失败,可能参数为 null,或者参数在服务器端验证不通过,需要查阅参数正确配置后,再次创建房间。也可能是服务器内部处理出错(概率很低),如果遇到服务器内部错误,请通知服务提供商。
ERROR_JOIN_ROOM -116 加入房间失败,可能参数为 null,或者参数在服务器端验证不通过,需要查阅参数正确配置后,再次加入房间。也可能是服务器内部处理出错(概率很低),如果遇到服务器内部错误,请通知服务提供商。
ERROR_LEAVE_ROOM -1002 退出房间失败,可能当前不在房间内,或者服务器验证不通过。无论退出房间成功与否,都会释放所有的发布和订阅。
ERROR_INVITE_TO_JOIN_ROOM -1003 邀请对方加入房间失败,可能参数为 null,或者参数在服务端验证不通过。
ERROR_NETWORK -1004 网络错误,无法正常连接到服务器,此时,无法正常执行任何发布订阅等操作。
ERROR_CAMERA_PERMISSION -104 打开相机预览失败,相机没有正确授权。
ERROR_MIC_PERMISSION -105 打开相机预览失败,麦克风没有正确授权。
ERROR_OPEN_CAMERA -1007 打开相机预览失败,无法正常打开摄像头。
ERROR_OPEN_MIC -1008 打开相机预览失败,无法正常打开麦克风。