NERtc Android SDK  V4.6.20
Public 成员函数 | 静态 Public 成员函数 | 所有成员列表
com.netease.lava.nertc.sdk.NERtc类 参考abstract
类 com.netease.lava.nertc.sdk.NERtc 继承关系图:
com.netease.lava.nertc.sdk.NERtcEx

Public 成员函数

abstract void init (Context context, String appkey, NERtcCallback callback, NERtcOption option) throws Exception
 
abstract void release ()
 
abstract int joinChannel (String token, String channelName, long uid)
 
abstract int leaveChannel ()
 
abstract int enableLocalAudio (boolean enable)
 
abstract int subscribeRemoteAudioStream (long uid, boolean subscribe)
 
abstract int subscribeAllRemoteAudioStreams (boolean subscribe)
 
abstract int setAudioProfile (int profile, int scenario)
 
abstract int setLocalVideoConfig (NERtcVideoConfig videoConfig)
 
abstract int setLocalVideoConfig (NERtcVideoConfig videoConfig, NERtcVideoStreamType streamType)
 
abstract int setCameraCaptureConfig (NERtcCameraCaptureConfig captureConfig)
 
abstract int setCameraCaptureConfig (NERtcCameraCaptureConfig captureConfig, NERtcVideoStreamType streamType)
 
abstract int startVideoPreview ()
 
abstract int startVideoPreview (NERtcVideoStreamType streamType)
 
abstract int stopVideoPreview ()
 
abstract int stopVideoPreview (NERtcVideoStreamType streamType)
 
abstract int setupLocalVideoCanvas (IVideoRender render)
 
abstract int setupRemoteVideoCanvas (IVideoRender render, long uid)
 
abstract int enableLocalVideo (boolean enable)
 
abstract int enableLocalVideo (NERtcVideoStreamType streamType, boolean enable)
 
abstract int subscribeRemoteVideoStream (long uid, NERtcRemoteVideoStreamType streamType, boolean subscribe)
 
abstract void setParameters (NERtcParameters params) throws IllegalArgumentException
 

静态 Public 成员函数

static NERtc getInstance ()
 
static NERtcVersion version ()
 
static List< String > checkPermission (Context context)
 

详细描述

NERtc

成员函数说明

◆ checkPermission()

static List<String> com.netease.lava.nertc.sdk.NERtc.checkPermission ( Context  context)
static

音视频通话相关的多媒体设备权限检查。

参数
context上下文。
返回
返回缺失的权限。

◆ enableLocalAudio()

abstract int com.netease.lava.nertc.sdk.NERtc.enableLocalAudio ( boolean  enable)
abstract

开启/关闭本地音频采集和发送。
当 App 加入房间时,语音功能默认为开启状态。
该方法不影响接收或播放远端音频流,enableLocalAudio(false) 适用于只下行不上行音频流的场景。
成功调用该方法后,房间内其他用户触发 onUserAudioStart 或 onUserAudioStop 回调。

注解
  • 该方法与 muteLocalAudioStream 的区别在于,enableLocalAudio 用于开启本地语音采集及处理;muteLocalAudioStream 用于停止或继续发送本地音频流。
  • 该方法设置内部引擎为启用状态,在 leaveChannel 后仍然有效。
  • 从 V4.4.0 版本开始,开启或关闭本地音频采集的操作不再影响音乐文件播放,即 enableLocalAudio(NO) 后仍旧可以通过 startAudioMixing 播放音乐文件。
参数
enable是否开启本地语音。
  • true:(默认)重新开启本地语音,即开启本地语音采集。
  • false: 关闭本地语音,即停止本地语音采集。
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

◆ enableLocalVideo() [1/2]

abstract int com.netease.lava.nertc.sdk.NERtc.enableLocalVideo ( boolean  enable)
abstract

是否开启本地视频采集。
注意

  • 该方法仅适用于视频主流,若您希望开启辅流通道的视频采集,请调用 NERtc#enableLocalVideo(NERtcVideoStreamType streamType, boolean enable) 方法。
  • 该方法在加入房间前和加入房间后均可调用。
  • 成功启用或禁用本地视频采集后,远端会触发 onUserVideoStop 或 onUserVideoStart 回调。
    参数
    enable是否启用本地视频采集:
  • true:(默认)开启本地视频采集。
  • false:关闭本地摄像头设备。关闭后,远端用户会接收不到本地用户的视频流;但本地用户依然可以接收远端用户的视频流。
    返回
    0
    方法调用成功,其他调用失败

◆ enableLocalVideo() [2/2]

abstract int com.netease.lava.nertc.sdk.NERtc.enableLocalVideo ( NERtcVideoStreamType  streamType,
boolean  enable 
)
abstract

开启或关闭本地视频的采集与发送。
通过主流或辅流视频通道进行本地视频流的采集与发送。

自从
V4.6.20
调用时机
请在初始化后调用该方法,且该方法在加入房间前后均可调用。
注解
  • 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
  • 该方法设置内部引擎为开启或关闭状态, 在 NERtc#leaveChannel() 后仍然有效。
  • 在您的应用切到后台或者其他应用占用摄像头时,可能会导致摄像头打开失败,需要注册 camera 动态权限,详细信息请参考添加权限
参数说明
参数名称 类型 描述
streamType video.NERtcVideoStreamType 视频通道类型:
  • kNERtcVideoStreamTypeMain:主流。
  • kNERtcVideoStreamTypeSub:辅流。
enable boolean 是否开启本地视频采集与发送:
  • true:开启本地视频采集。
  • false:关闭本地视频采集。关闭后,远端用户无法接收到本地用户的视频流;但本地用户仍然可以接收到远端用户的视频流。
示例代码
//打开视频主流
NERtcEx.getInstance().enableLocalVideo(NERtcVideoStreamType.kNERtcVideoStreamTypeMain, true);
//关闭视频主流
NERtcEx.getInstance().enableLocalVideo(NERtcVideoStreamType.kNERtcVideoStreamTypeMain, false);
//打开视频辅流
NERtcEx.getInstance().enableLocalVideo(NERtcVideoStreamType.kNERtcVideoStreamTypeSub, true);
//关闭视频辅流
NERtcEx.getInstance().enableLocalVideo(NERtcVideoStreamType.kNERtcVideoStreamTypeSub, false);
相关回调
返回
  • 0(OK):方法调用成功。
  • 其他:方法调用失败。
    • 30001(ENGINE_ERROR_FATAL):通用错误,一般表示引擎错误,尝试再次调用此接口即可。
    • 30005(ENGINE_ERROR_INVALID_STATE):当前状态不支持的操作,比如已开启外部视频采集。
    • 30027(ENGINE_ERROR_CAMERA_OCCUIPIED): 所选设备已被占用。比如已通过主流通道开启了摄像头,无法再通过辅流通道开启摄像头。
    • 30403(ENGINE_ERROR_MEDIA_BANNED): 已被服务器禁用视频。

◆ getInstance()

static NERtc com.netease.lava.nertc.sdk.NERtc.getInstance ( )
static

获取 NERtc 实例。

返回
NERtc 实例

com.netease.lava.nertc.sdk.NERtcEx 重载.

◆ init()

abstract void com.netease.lava.nertc.sdk.NERtc.init ( Context  context,
String  appkey,
NERtcCallback  callback,
NERtcOption  option 
) throws Exception
abstract

创建 NERtc 实例并初始化 NERTC SDK 服务。

  • 请确保在调用其他 API 前先调用该方法创建并初始化 NERtc 实例。
  • 使用同一个 App Key 的 App 才能进入同一个房间进行通话或直播。
  • 一个 App Key 只能用于创建一个 NERtc 实例。如需更换 App Key,必须先调用 NERtc#release() 方法销毁当前实例,再调用本方法重新创建实例。
  • 若不再使用 NERtc 实例,需要 NERtc#release() 调用进行销毁。
  • 创建实例时,如果参数设置错误,可能会出现异常 RuntimeException、UnsatisfiedLinkError。
    参数
    context传入的 RTC engine context 对象。
    appkey应用的 App Key。在 云信控制台 创建应用后,可以查看对应的 App Key。
    callback回调函数,所有接口均在主线程上回调, 可继承简易实现AbsNERtcCallbackEx, 或自行选择实现NERtcCallbackNERtcCallbackEx
    option其他可选配置,详细信息请参考 NERtcOption 。可设置为 null。

◆ joinChannel()

abstract int com.netease.lava.nertc.sdk.NERtc.joinChannel ( String  token,
String  channelName,
long  uid 
)
abstract

加入音视频房间。
加入音视频房间时,如果指定房间尚未创建,云信服务器内部会自动创建一个同名房间。
成功调用该方加入房间后,本地会触发 onJoinChannel 回调,远端会触发 onUserJoined 回调。

注解
  • SDK 加入房间后,同一个房间内的用户可以互相通话,多个用户加入同一个房间,可以群聊。使用不同 App Key 的 App 之间不能互通。
  • 直播场景中,观众角色可以通过 switchChannel 切换房间。
  • 调用 joinChannel 之后,NERTC SDK 会通过 Android 的 AudioManager.setMode() 方法调整音频模式(audio mode),此后请勿修改 SDK 调整过的音频模式,否则会导致音频路由错误等问题。
参数
token安全认证签名(NERTC Token)。可设置为:
  • null。调试模式下可设置为 null。安全性不高,建议在产品正式上线前在云信控制台中将鉴权方式恢复为默认的安全模式。
  • 已获取的NERTC Token。安全模式下必须设置为获取到的 Token 。若未传入正确的 Token 将无法进入房间。推荐使用安全模式。
channelName房间名称,设置相同房间名称的用户会进入同一个通话房间。
  • 字符串格式,长度为 1~64 字节。
  • 支持以下89个字符:a-z, A-Z, 0-9, space, !#$%&()+-:;≤.,>? @[]^_{|}~”
uid用户的唯一标识 id,房间内每个用户的 uid 必须是唯一的。
uid 可选,默认为 0。如果不指定(即设为 0),SDK 会自动分配一个随机 uid,并在 onJoinChannel 回调方法中返回,App 层必须记住该返回值并维护,SDK 不对该返回值进行维护。
返回
0
方法调用成功,其他失败
参见
NERtc::leaveChannel()

◆ leaveChannel()

abstract int com.netease.lava.nertc.sdk.NERtc.leaveChannel ( )
abstract

离开房间,即挂断或退出通话。
结束通话时,必须调用 leaveChannel 结束通话,否则无法开始下一次通话。
成功调用该方法离开房间后,本地会触发 onLeaveChannel 回调,远端会触发 onUserLeave 回调。

返回
0
成功,其他失败.
参见
NERtc::joinChannel(String, String, long)

◆ release()

abstract void com.netease.lava.nertc.sdk.NERtc.release ( )
abstract

销毁 NERtc 实例,释放资源。
该方法释放 NERTC SDK 使用的所有资源。有些 App 只在用户需要时才进行实时音视频通信,完成音视频通话后,则将资源释放出来用于其他操作,该方法适用于此类情况。

  • 该接口需要在调用 leaveChannel、并收到 onUserLeave 回调后调用。或收到 onDisconnect 回调、重连失败时调用此接口销毁实例,并释放资源。
  • 调用 release 方法后,您将无法再使用 SDK 的其它方法和回调。如需再次使用实时音视频通话功能,您必须等待 release 方法执行结束后,重新创建一个新的 NERtc 实例。
    注解
  • NERtc#release() 方法需要和 NERtc#leaveChannel() 方法在同一线程中,且需要在 leaveChannel 后执行。如果在不同线程中并发调用此接口可能会引起应用崩溃。
  • 如果 init 初始化引擎失败,需要等待 release 同步返回后再次初始化引擎,否则重复初始化引擎,SDK 会抛出 RuntimeException。

◆ setAudioProfile()

abstract int com.netease.lava.nertc.sdk.NERtc.setAudioProfile ( int  profile,
int  scenario 
)
abstract

设置音频编码属性。

注解
  • 该方法支持在房间内动态调用。
  • 音乐场景下,建议将 profile 设置为 HIGH_QUALITY。
  • 若您通过 NERtcEx.setChannelProfile 接口设置房间场景为直播模式,即 LIVE_BROADCASTING,但未调用此方法设置音频编码属性,或仅设置 profile 为 DEFAULT,则 SDK 会自动设置 profile 为 HIGH_QUALITY,且设置 scenario 为 MUSIC。
参数
profile设置采样率、码率、编码模式和声道数。详细信息请参考 NERtcConstants.AudioProfile
scenario设置音频应用场景。详细信息请参考 NERtcConstants.AudioScenario
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

◆ setCameraCaptureConfig() [1/2]

abstract int com.netease.lava.nertc.sdk.NERtc.setCameraCaptureConfig ( NERtcCameraCaptureConfig  captureConfig)
abstract

设置本地摄像头的采集偏好等配置。
在视频通话或直播中,SDK 自动控制摄像头的输出参数。默认情况下,SDK 根据用户的 setLocalVideoConfig 配置匹配最合适的分辨率进行采集。但是在部分业务场景中,如果采集画面质量无法满足实际需求,可以调用该接口调整摄像头的采集配置。

注解
自从
V4.5.0
参数
captureConfig摄像头采集配置,详细信息请参考 video.NERtcCameraCaptureConfig
返回
  • 0:方法调用成功。
  • 其他:方法调用失败。

◆ setCameraCaptureConfig() [2/2]

abstract int com.netease.lava.nertc.sdk.NERtc.setCameraCaptureConfig ( NERtcCameraCaptureConfig  captureConfig,
NERtcVideoStreamType  streamType 
)
abstract

设置本地摄像头的采集配置。
通过此接口可以设置本地摄像头采集的视频宽度、高度、旋转角度等。

自从
V4.6.20
调用时机
请在初始化后调用该方法,且该方法在加入房间前后均可调用。
业务场景
在视频通话或直播中,SDK 自动控制摄像头的输出参数。默认情况下,SDK 会根据用户该接口的配置匹配最合适的分辨率进行采集。但是在部分业务场景中,如果采集画面质量无法满足实际需求,可以调用该接口调整摄像头的采集配置。
注解
  • 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
  • 调用该接口设置成功后,会自动重启摄像头采集模块。
参数说明
参数名称 类型 描述
captureConfig video.NERtcCameraCaptureConfig 本地摄像头采集配置。
streamType video.NERtcVideoStreamType 视频通道类型:
  • kNERtcVideoStreamTypeMain:主流。
  • kNERtcVideoStreamTypeSub:辅流。
示例代码
//设置本地摄像头主流采集配置
NERtcCameraCaptureConfig capConfig = new NERtcCameraCaptureConfig();
capConfig.captureWidth = 1280;
capConfig.captureHeight = 720;
NERtcEx.getInstance().setCameraCaptureConfig(capConfig, NERtcVideoStreamType.kNERtcVideoStreamTypeMain);
//设置本地摄像头辅流采集配置
NERtcCameraCaptureConfig subCapConfig = new NERtcCameraCaptureConfig();
subCapConfig.captureWidth = 1280;
subCapConfig.captureHeight = 720;
NERtcEx.getInstance().setCameraCaptureConfig(subCapConfig, NERtcVideoStreamType.kNERtcVideoStreamTypeSub);
返回
  • 0(OK):方法调用成功。
  • 其他:方法调用失败。
    • 30003(ENGINE_ERROR_INVALID_PARAM):参数错误,比如 captureConfig 设置为空。
    • 30004(ENGINE_ERROR_NOT_SUPPORTED):不支持的操作,比如当前使用的是纯音频 SDK。
    • 30005(ENGINE_ERROR_INVALID_STATE):当前状态不支持的操作,比如引擎未初始化成功。

◆ setLocalVideoConfig() [1/2]

abstract int com.netease.lava.nertc.sdk.NERtc.setLocalVideoConfig ( NERtcVideoConfig  videoConfig)
abstract

设置视频编码属性。

  • 可以在加入房间前或加入房间后调用此接口。
  • 您可以通过 widthheight 进行自定义设置摄像头采集视频的编码分辨率。详细信息请参考设置视频属性
    注解
  • 该方法仅适用于视频主流,若您希望为视频辅流通道设置编码属性,请调用 NERtc#setLocalVideoConfig(NERtcVideoConfig videoConfig, NERtcVideoStreamType streamType)
  • 该接口为全量参数配置接口,重复调用此接口时,SDK 会刷新此前的所有参数配置,以最新的传参为准。所以每次修改配置时都需要设置所有参数,未设置的参数将取默认值。
  • 每个属性对应一套视频参数,例如分辨率、帧率、码率等。 所有设置的参数均为理想情况下的最大值。
    当视频引擎因网络环境等原因无法达到设置的分辨率、帧率或码率的最大值时,会取最接近最大值的那个值。
    参数
    videoConfig视频编码属性配置,详细信息请参考 video.NERtcVideoConfig
    返回
    0
    方法调用成功,其他调用失败

◆ setLocalVideoConfig() [2/2]

abstract int com.netease.lava.nertc.sdk.NERtc.setLocalVideoConfig ( NERtcVideoConfig  videoConfig,
NERtcVideoStreamType  streamType 
)
abstract

设置视频编码属性。
通过此接口可以设置视频主流或辅流的编码分辨率、裁剪模式、码率、帧率、带宽受限时的视频编码降级偏好、编码的镜像模式、编码的方向模式参数。

自从
V4.6.20
调用时机
请在初始化后调用该方法,且该方法在加入房间前后均可调用。
注解
  • 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
  • 每个属性对应一套视频参数,例如分辨率、帧率、码率等。所有设置的参数均为理想情况下的最大值。当视频引擎因网络环境等原因无法达到设置的分辨率、帧率或码率的最大值时,会取最接近最大值的那个值。
  • 此接口为全量参数配置接口,重复调用此接口时,SDK 会刷新此前的所有参数配置,以最新的传参为准。所以每次修改配置时都需要设置所有参数,未设置的参数将取默认值。
参数说明
参数名称 类型 描述
streamType video.NERtcVideoConfig 视频通道类型:
  • kNERtcVideoStreamTypeMain:主流。
  • kNERtcVideoStreamTypeSub:辅流。
videoConfig boolean 视频编码属性配置。
示例代码
//设置本地视频主流编码参数
NERtcVideoConfig config = new NERtcVideoConfig();
config.width = 640; //设置分辨率宽
config.height = 360; //设置分辨率高
config.videoCropMode = NERtcConstants.VideoCropMode.CROP_16x9; //设置裁剪格式 16:9
config.frameRate = NERtcEncodeConfig.NERtcVideoFrameRate.FRAME_RATE_FPS_30; //视频帧率
config.minFramerate = minFrameRate; //视频最小帧率
config.minBitrate = minBitRate; //视频编码码率
config.degradationPrefer = NERtcVideoConfig.NERtcDegradationPreference.DEGRADATION_DEFAULT; //带宽受限时的视频编码降级偏好
NERtcEx.getInstance().setLocalVideoConfig(config, NERtcVideoStreamType.kNERtcVideoStreamTypeMain);
//设置本地视频辅流编码参数
NERtcVideoConfig subConfig = new NERtcVideoConfig();
subConfig.width = 640; //设置分辨率宽
subConfig.height = 360; //设置分辨率高
subConfig.videoCropMode = NERtcConstants.VideoCropMode.CROP_16x9;
subConfig.frameRate = NERtcEncodeConfig.NERtcVideoFrameRate.FRAME_RATE_FPS_30;
subConfig.minFramerate = minFrameRate; //视频最小帧率
subConfig.minBitrate = minBitRate; //视频编码码率
subConfig.degradationPrefer = NERtcVideoConfig.NERtcDegradationPreference.DEGRADATION_DEFAULT;
NERtcEx.getInstance().setLocalVideoConfig(subConfig, NERtcVideoStreamType.kNERtcVideoStreamTypeSub);
返回
  • 0(OK):方法调用成功。
  • 其他:方法调用失败。
    • 30003(ENGINE_ERROR_INVALID_PARAM):参数错误,比如 videoConfig 设置为空。
    • 30004(ENGINE_ERROR_NOT_SUPPORTED):不支持的操作,比如当前使用的是纯音频 SDK。
    • 30005(ENGINE_ERROR_INVALID_STATE):当前状态不支持的操作,比如引擎未初始化成功。

◆ setParameters()

abstract void com.netease.lava.nertc.sdk.NERtc.setParameters ( NERtcParameters  params) throws IllegalArgumentException
abstract

设置音视频通话的相关参数。
注意

  • 请在调用 init 初始化之前调用此方法。
  • 此方法提供技术预览或特别定制功能,若您需要使用此接口,请咨询技术支持获取帮助。
    参数
    params音视频通话的相关参数。

◆ setupLocalVideoCanvas()

abstract int com.netease.lava.nertc.sdk.NERtc.setupLocalVideoCanvas ( IVideoRender  render)
abstract

设置本地视图。
该方法设置本地视频显示信息。只影响本地用户看到的视频画面,不影响远端。 App 通过调用此接口绑定本地视频流的显示视窗(view)。
在 App 开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。

注解
  • 该方法在加入频道前后均能调用。
  • 如果您希望在通话中更新本地用户视图的渲染或镜像模式,请使用 NERtcVideoView#setScalingType(int) 方法。
参数
render视频画布。详细信息请参考 video.NERtcVideoView
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

◆ setupRemoteVideoCanvas()

abstract int com.netease.lava.nertc.sdk.NERtc.setupRemoteVideoCanvas ( IVideoRender  render,
long  uid 
)
abstract

设置远端用户视图。
该方法绑定远端用户和显示视图,并设置远端用户视图在本地显示时的渲染模式和镜像模式,只影响本地用户看到的视频画面。
注意

  • 如果 App 无法事先知道对方的用户 ID,可以在 APP 收到 onUserJoined 事件时设置。
  • 解除某个用户的绑定视图可以把 render 设置为空。
  • 退出房间后,SDK 会清除远程用户和视图的绑定关系。
  • 如果您希望在通话中更新本地用户视图的渲染或镜像模式,请使用 NERtcVideoView#setScalingType(int) 方法。
    参数
    render视频画布。详细信息请参考 video.NERtcVideoView
    uid远端用户 ID。
    返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

◆ startVideoPreview() [1/2]

abstract int com.netease.lava.nertc.sdk.NERtc.startVideoPreview ( )
abstract

开启视频预览。

  • 该方法仅适用于视频主流,若您希望开启辅流通道的视频预览,请调用 NERtc#startVideoPreview(NERtcVideoStreamType streamType) 方法。
  • 该方法用于在进入房间前启动本地视频预览。调用该 API 前,必须调用 setupLocalVideoCanvas 设置视频画布。
    返回
    0
    方法调用成功,其他调用失败

◆ startVideoPreview() [2/2]

abstract int com.netease.lava.nertc.sdk.NERtc.startVideoPreview ( NERtcVideoStreamType  streamType)
abstract

开启视频预览。
通过本接口可以实现在加入房间前启动本地视频预览,支持预览本地摄像头或外部输入视频。

自从
V4.6.20
使用前提
请在通过 NERtc#setupLocalVideoCanvas(IVideoRender render) 接口设置视频画布后调用该方法。
调用时机
请在初始化后调用该方法,且该方法仅可当不在房间内时可调用。
业务场景
适用于加入房间前检查设备状态是否可用、预览视频效果等场景。
注解
  • 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
  • 在加入房间前预览视频效果时设置的美颜、虚拟背景等视频效果在房间内仍然生效;在房间内设置的视频效果在退出房间后预览视频时也可生效。
参数说明
参数名称 类型 描述
streamType video.NERtcVideoStreamType 视频通道类型:
  • kNERtcVideoStreamTypeMain:主流。
  • kNERtcVideoStreamTypeSub:辅流。
示例代码
//开启主流视频通道预览
NERtcEx.getInstance().startVideoPreview(NERtcVideoStreamType.kNERtcVideoStreamTypeMain);
//开启辅流视频通道预览
NERtcEx.getInstance().startVideoPreview(NERtcVideoStreamType.kNERtcVideoStreamTypeSub);
返回
  • 0(OK):方法调用成功。
  • 其他:方法调用失败。
    • 30004(ENGINE_ERROR_NOT_SUPPORTED):不支持的操作,比如已经加入房间。
    • 30005(ENGINE_ERROR_INVALID_STATE):当前状态不支持的操作,比如引擎未初始化成功。
    • 30008(ENGINE_ERROR_DEVICE_NOT_FOUND):未找到设备。
    • 30011(ENGINE_ERROR_CREATE_DEVICE_SOURCE_FAIL):创建设备源失败。
    • 30027(ENGINE_ERROR_CAMERA_OCCUIPIED): 所选设备已被占用,比如已通过主流通道开启了摄像头,无法再通过辅流通道开启摄像头预览。

◆ stopVideoPreview() [1/2]

abstract int com.netease.lava.nertc.sdk.NERtc.stopVideoPreview ( )
abstract

停止视频预览。

注解
该方法只适用于视频主流,若您希望停止辅流通道的视频预览,请调用 NERtc#stopPreview(streamType) 方法。
返回
0
方法调用成功,其他调用失败

◆ stopVideoPreview() [2/2]

abstract int com.netease.lava.nertc.sdk.NERtc.stopVideoPreview ( NERtcVideoStreamType  streamType)
abstract

停止视频预览。
通过本接口可以实现在预览本地视频后关闭预览。

自从
V4.6.20
使用前提
建议在通过 NERtc#startVideoPreview(NERtcVideoStreamType streamType) 接口开启视频预览后调用该方法。
调用时机
请在初始化后调用该方法,且该方法仅可当不在房间内时可调用。
注解
纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
参数说明
参数名称 类型 描述
streamType video.NERtcVideoStreamType 视频通道类型:
  • kNERtcVideoStreamTypeMain:主流。
  • kNERtcVideoStreamTypeSub:辅流。
示例代码
//关闭主流视频通道预览
NERtcEx.getInstance().stopVideoPreview(NERtcVideoStreamType.kNERtcVideoStreamTypeMain);
//关闭辅流视频通道预览
NERtcEx.getInstance().stopVideoPreview(NERtcVideoStreamType.kNERtcVideoStreamTypeSub);
返回
  • 0(OK):方法调用成功。
  • 其他:方法调用失败。
    • 30005(ENGINE_ERROR_INVALID_STATE):当前状态不支持的操作,比如引擎未初始化成功或已经加入房间。

◆ subscribeAllRemoteAudioStreams()

abstract int com.netease.lava.nertc.sdk.NERtc.subscribeAllRemoteAudioStreams ( boolean  subscribe)
abstract

取消或恢复订阅所有远端用户音频流。

注解
  • 加入房间时,默认订阅所有远端用户的音频,即 setParameters 接口的 KEY_AUTO_SUBSCRIBE_AUDIO 参数默认设置为 true,只有在该参数设置为 false 时,本接口的调用才生效。
  • 该方法加入房间前后都可调用。设置 subscribeAllRemoteAudioStreams 的参数为 true 后,对后续加入的用户同样生效。
参数
subscribe是否取消订阅所有远端用户的音频流。
  • true:(默认)订阅音频流。
  • false: 取消订阅音频流。
返回
0
方法调用成功,其他失败

◆ subscribeRemoteAudioStream()

abstract int com.netease.lava.nertc.sdk.NERtc.subscribeRemoteAudioStream ( long  uid,
boolean  subscribe 
)
abstract

取消或恢复订阅指定远端用户音频流。
加入房间时,默认订阅所有远端用户的音频流,您可以通过此方法取消或恢复订阅指定远端用户的音频流。
注意:该方法需要在加入房间后调用。

参数
uid指定用户的 ID。
subscribe是否订阅指定音频流。
  • true:(默认)订阅音频流。
  • false: 取消订阅音频流。
返回
  • 0: 方法调用成功。
  • 30005: 状态异常,可能是自动订阅打开,导致该接口无效。
  • 其他: 方法调用失败。

◆ subscribeRemoteVideoStream()

abstract int com.netease.lava.nertc.sdk.NERtc.subscribeRemoteVideoStream ( long  uid,
NERtcRemoteVideoStreamType  streamType,
boolean  subscribe 
)
abstract

订阅或取消订阅指定远端用户的视频流。

注解
  • 用户加入房间之后,默认不订阅远端用户的视频流。如果希望看到指定远端用户的视频,可以在监听到对方加入房间或发布视频流之后,通过此方法订阅该用户的视频流。
  • 该方法需要在加入房间后调用。
参数
uid指定用户的用户 ID。
streamType订阅的视频流类型,详细信息请参考 video.NERtcRemoteVideoStreamType
subscribe是否订阅远端用户的视频流。
  • true:订阅指定视频流。
  • false(默认):不订阅指定视频流。
返回
  • 0: 方法调用成功;
  • 其他: 方法调用失败。

◆ version()

static NERtcVersion com.netease.lava.nertc.sdk.NERtc.version ( )
static

查询 SDK 版本号。
该方法在加入房间前后都能调用。

返回
NERtcVersion 版本号

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