NERtc Android SDK
V4.6.20
|
Public 成员函数 | |
abstract String | getChannelName () |
abstract void | setChannelCallback (NERtcChannelCallback channelCallback) |
abstract void | setStatsObserver (NERtcStatsObserver statsObserver) |
abstract int | joinChannel (String token) |
abstract int | leaveChannel () |
abstract int | enableLocalAudio (boolean enable) |
abstract int | enableMediaPub (int mediaType, boolean enable) |
abstract int | muteLocalAudioStream (boolean mute) |
abstract int | subscribeRemoteAudioStream (long uid, boolean subscribe) |
abstract int | subscribeAllRemoteAudioStreams (boolean subscribe) |
abstract int | setCameraCaptureConfig (NERtcCameraCaptureConfig captureConfig) |
abstract int | setCameraCaptureConfig (NERtcCameraCaptureConfig captureConfig, NERtcVideoStreamType streamType) |
abstract int | setLocalVideoConfig (NERtcVideoConfig videoConfig) |
abstract int | setLocalVideoConfig (NERtcVideoConfig videoConfig, NERtcVideoStreamType streamType) |
abstract int | enableDualStreamMode (boolean enable) |
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 | muteLocalVideoStream (boolean mute) |
abstract int | muteLocalVideoStream (boolean mute, NERtcVideoStreamType streamType) |
abstract int | setupLocalSubStreamVideoCanvas (IVideoRender render) |
abstract int | setupRemoteSubStreamVideoCanvas (IVideoRender render, long uid) |
abstract int | startScreenCapture (NERtcScreenConfig screenConfig, Intent mediaProjectionPermissionResultData, MediaProjection.Callback mediaProjectionCallback) |
abstract void | stopScreenCapture () |
abstract int | enableLoopbackRecording (boolean enable, Intent mediaProjectionResultIntent, MediaProjection.Callback callback) |
abstract int | adjustLoopBackRecordingSignalVolume (int volume) |
abstract int | subscribeRemoteVideoStream (long uid, NERtcRemoteVideoStreamType streamType, boolean subscribe) |
abstract int | subscribeRemoteSubStreamVideo (long uid, boolean subscribe) |
abstract int | setClientRole (int role) |
abstract int | getConnectionState () |
abstract int | addLiveStreamTask (NERtcLiveStreamTaskInfo taskInfo, AddLiveTaskCallback addLiveTaskCallback) |
abstract int | updateLiveStreamTask (NERtcLiveStreamTaskInfo taskInfo, UpdateLiveTaskCallback updateLiveTaskCallback) |
abstract int | removeLiveStreamTask (String taskId, DeleteLiveTaskCallback deleteLiveTaskCallback) |
abstract int | sendSEIMsg (String seiMsg, NERtcVideoStreamType streamType) |
abstract int | sendSEIMsg (String seiMsg) |
abstract int | setLocalCanvasWatermarkConfigs (NERtcVideoStreamType type, NERtcCanvasWatermarkConfig config) |
abstract int | setRemoteCanvasWatermarkConfigs (long uid, NERtcVideoStreamType type, NERtcCanvasWatermarkConfig config) |
abstract int | takeLocalSnapshot (NERtcVideoStreamType streamType, NERtcTakeSnapshotCallback callback) |
abstract int | takeRemoteSnapshot (long uid, NERtcVideoStreamType streamType, NERtcTakeSnapshotCallback callback) |
abstract int | setLocalMediaPriority (int priority, boolean isPreemptive) |
abstract int | startChannelMediaRelay (NERtcMediaRelayParam.ChannelMediaRelayConfiguration config) |
abstract int | updateChannelMediaRelay (NERtcMediaRelayParam.ChannelMediaRelayConfiguration config) |
abstract int | stopChannelMediaRelay () |
abstract int | adjustUserPlaybackSignalVolume (long uid, int volume) |
abstract int | setLocalPublishFallbackOption (int option) |
abstract int | setRemoteSubscribeFallbackOption (int option) |
abstract int | setRemoteHighPriorityAudioStream (boolean enabled, long uid) |
abstract int | setAudioSubscribeOnlyBy (long[] uidArray) |
abstract int | enableLocalSubStreamAudio (boolean enable) |
abstract int | muteLocalSubStreamAudio (boolean mute) |
abstract int | subscribeRemoteSubStreamAudio (long uid, boolean subscribe) |
abstract void | release () |
NERtcChannel 类在指定房间中实现实时音视频功能。通过创建多个 NERtcChannel 对象,用户可以同时加入多个房间。
|
abstract |
添加房间推流任务。
成功调用该方法后,当前用户可以收到该直播流的状态通知。
taskInfo | 推流任务信息,详细信息请参考 live.NERtcLiveStreamTaskInfo。 |
addLiveTaskCallback | 操作结果回调,方法调用成功后会触发对应回调。详细信息请参考 live.AddLiveTaskCallback。 |
|
abstract |
调整共享音频音量。
volume | 采集信号量。该参数的取值范围为 0 ~ 100。 |
|
abstract |
调节本地播放的指定远端用户的信号音量。 加入房间后,您可以多次调用该方法设置本地播放的不同远端用户的音量;也可以反复调节本地播放的某个远端用户的音量。
uid | 远端用户 ID。 |
volume | 播放音量,取值范围为 [0,100]。
|
|
abstract |
设置是否开启视频大小流模式。
该方法设置单流或者双流模式。发送端开启双流模式后,接收端可以选择接收大流还是小流。其中,大流指高分辨率、高码率的视频流,小流指低分辨率、低码率的视频流。
enable | 指定是否开启双流模式。
|
|
abstract |
开启/关闭本地音频采集。
当 App 加入房间时,语音功能默认为开启状态。
该方法不影响接收或播放远端音频流,enableLocalAudio(false) 适用于只下行不上行音频流的场景。
成功调用该方法后,房间内其他用户触发 onUserAudioStart 或 onUserAudioStop 回调。
enable | 是否开启本地语音。
|
|
abstract |
开启或关闭音频辅流。
开启时远端会收到 NERtcCallbackEx#onUserSubStreamAudioStart(long),关闭时远端会收到NERtcCallbackEx#onUserSubStreamAudioStop(long)
enable | 是否开启音频辅流。
|
|
abstract |
是否开启本地视频采集。
enable | 是否启用本地视频采集:
|
|
abstract |
开启或关闭本地视频的采集与发送。
通过主流或辅流视频通道进行本地视频流的采集与发送。
参数名称 | 类型 | 描述 |
---|---|---|
streamType | video.NERtcVideoStreamType | 视频通道类型:
|
enable | boolean | 是否开启本地视频采集与发送:
|
|
abstract |
开启或关闭音频共享。
enable | 是否开启音频共享。
|
mediaProjectionResultIntent | Android 的系统权限请求 Intent,在请求权限时返回。 |
callback | 音频共享状态回调,用于监听音频共享任务的结束通知。 |
|
abstract |
@if English Publishes or unpublishes the local audio stream. <br>When a user joins a room, the feature is enabled by default. <br>The method does not affect receiving or playback remote audio streams. The enableLocalAudio(false) method is suitable for scenarios where only downstream data is received without upstream data. @note - The method controls only the main stream. - The method can be called before or after a user joins a room. @since V4.6.10 @param enable specifies whether to publish the local audio stream. - YES(default): publishes the local audio stream. - NO: unpublishes the local audio stream. @param mediaType media type. Only the audio is supported. @return - 0: success. - Others: failure @endif @if Chinese 开启或关闭本地媒体流(主流)的发送。 <br>该方法用于开始或停止向网络发送本地音频或视频数据。 <br>该方法不影响接收或播放远端媒体流,也不会影响本地音频或视频的采集状态。 @since V4.6.10 @note - 该方法暂时仅支持控制音频流的发送。 - 该方法在加入房间前后均可调用。 - 停止发送媒体流的状态会在通话结束后被重置为允许发送。 - 成功调用该方法切换本地用户的发流状态后,房间内其他用户会收到 {@link AbsNERtcCallbackEx#onUserAudioStart()}(开启发送音频)或 {@link AbsNERtcCallbackEx#onUserAudioStop()}
(停止发送音频)的回调。
enable | 是否发布本地媒体流。
|
mediaType | 媒体发布类型,暂时仅支持音频。 |
|
abstract |
获取当前房间名称。
|
abstract |
获取当前房间连接状态。
|
abstract |
加入音视频房间。
加入音视频房间时,如果指定房间尚未创建,云信服务器内部会自动创建一个同名房间。
token | 安全认证签名(NERTC Token)。可设置为:
|
|
abstract |
离开房间,即挂断或退出通话。
结束通话时,必须调用 leaveChannel 结束通话,否则无法开始下一次通话。
成功调用该方法离开房间后,本地会触发 onLeaveChannel 回调,远端会触发 onUserLeave 回调。
|
abstract |
开启或关闭本地音频主流的发送。
该方法用于向网络发送或取消发送本地音频数据。
该方法不影响接收或播放远端音频流,也不会影响本地音频的采集状态。
mute | 是否开启本地音频的发送。
|
|
abstract |
静音或解除静音本地上行的音频辅流。
mute | 是否静音本地音频辅流发送。
|
|
abstract |
取消或恢复发布本地视频流。
mute | 是否取消发布本地视频流。
|
|
abstract |
取消或恢复发布本地视频。
调用该方法取消发布本地视频主流或辅流后,SDK 不再发送本地视频流。
参数名称 | 类型 | 描述 |
---|---|---|
streamType | video.NERtcVideoStreamType | 视频通道类型:
|
muted | boolean | 是否取消发布本地视频流:
|
|
abstract |
销毁 NERtcChannel 实例,释放资源。
|
abstract |
删除房间推流任务。
taskId | 推流任务 ID。 |
deleteLiveTaskCallback | 操作结果回调,方法调用成功后会触发对应回调。详细信息请参考 live.DeleteLiveTaskCallback。 |
|
abstract |
通过主流通道发送媒体补充增强信息(SEI)。
在本端推流传输视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 onRecvSEIMsg 的回调获取 SEI 内容。
seiMsg | 自定义 SEI 数据。 |
|
abstract |
指定主流或辅流通道发送媒体增强补充信息(SEI)。
在本端推流传输视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 onRecvSEIMsg 的回调获取 SEI 内容。
seiMsg | 自定义 SEI 数据。 |
streamType | 发送 SEI 时,使用的流通道类型。详细信息请参考 video.NERtcVideoStreamType。 |
|
abstract |
设置自己的音频只能被房间内指定的人订阅。
默认房间所有其他人都可以订阅自己的音频。
uidArray | 可订阅自己音频的用户uid 列表。 |
|
abstract |
设置本地摄像头的采集偏好等配置。
在视频通话或直播中,SDK 自动控制摄像头的输出参数。默认情况下,SDK 根据用户的 setLocalVideoConfig 配置匹配最合适的分辨率进行采集。但是在部分业务场景中,如果采集画面质量无法满足实际需求,可以调用该接口调整摄像头的采集配置。
captureConfig | 摄像头采集配置,详细信息请参考 video.NERtcCameraCaptureConfig。 |
|
abstract |
设置本地摄像头的采集配置。
通过此接口可以设置本地摄像头采集的视频宽度、高度、旋转角度等。
参数名称 | 类型 | 描述 |
---|---|---|
captureConfig | video.NERtcCameraCaptureConfig | 本地摄像头采集配置。 |
streamType | video.NERtcVideoStreamType | 视频通道类型:
|
|
abstract |
设置NERtcChannel对象的事件回调。
你可以通过设置的事件回调,监听当前设置NERtcChannel对象的事件回调对象对应房间的事件,并接收房间中用户视频信息等。
channelCallback | 事件回调对象 NERtcChannelCallback |
|
abstract |
在直播场景中设置用户角色。
用户角色支持设置为主播或观众,主播和观众的权限不同。
如果你在加入频道后调用该方法切换角色,调用成功后会收到以下回调:
role | 用户角色。详细信息请参考 com.netease.lava.nertc.sdk.NERtcConstants.UserRole。 |
|
abstract |
添加本地视频画布水印。
type | 视频流类型。支持设置为主流或辅流。详细信息请参考 video.NERtcVideoStreamType}。 |
config | 画布水印设置。支持设置文字水印、图片水印和时间戳水印,设置为 null 表示清除水印。 详细信息请参考 watermark.NERtcCanvasWatermarkConfig。 |
|
abstract |
设置本地用户的媒体流优先级。 如果某个用户的优先级为高,那么该用户媒体流的优先级就会高于其他用户,弱网环境下 SDK 会优先保证高优先级用户收到的媒体流的质量。
priority | 本地用户的媒体流优先级,默认为 NERtcConstants.MediaPriority#MEDIA_PRIORITY_NORMAL,详细信息请参考 NERtcConstants.MediaPriority。 |
isPreemptive | 是否开启抢占模式。
|
|
abstract |
设置弱网条件下发布的音视频流回退选项。 在网络不理想的环境下,发布的音视频质量都会下降。使用该接口并将 option 设置为 NERtcConstants.StreamFallbackOption#AUDIO_ONLY 后:
option | 本地发布流回退处理选项。 默认为不回退处理 NERtcConstants.StreamFallbackOption#DISABLED。 |
|
abstract |
设置视频编码属性。
width
和 height
进行自定义设置摄像头采集视频的编码分辨率。详细信息请参考设置视频属性。 videoConfig | 视频编码属性配置,详细信息请参考 video.NERtcVideoConfig。 |
|
abstract |
设置视频编码属性。
通过此接口可以设置视频主流或辅流的编码分辨率、裁剪模式、码率、帧率、带宽受限时的视频编码降级偏好、编码的镜像模式、编码的方向模式参数。
参数名称 | 类型 | 描述 |
---|---|---|
streamType | video.NERtcVideoConfig | 视频通道类型:
|
videoConfig | boolean | 视频编码属性配置。 |
|
abstract |
添加远端视频画布水印。
uid | 远端用户 ID。 |
type | 视频流类型。支持设置为主流或辅流。详细信息请参考 video.NERtcVideoStreamType。 |
config | 画布水印设置。支持设置文字水印、图片水印和时间戳水印,设置为 null 表示清除水印。 详细信息请参考 watermark.NERtcCanvasWatermarkConfig。 |
|
abstract |
设置远端用户音频流的高优先级。 支持在音频自动订阅的情况下,设置某一个远端用户的音频为最高优先级,可以优先听到该用户的音频。
enabled | 是否设置音频订阅优先级。
|
uid | 用户 uid |
|
abstract |
设置弱网条件下订阅的音视频流回退选项。 弱网环境下,订阅的音视频质量会下降。调用该接口并将 option 设置为 NERtcConstants.StreamFallbackOption#VIDEO_STREAM_LOW 或者 NERtcConstants.StreamFallbackOption#AUDIO_ONLY 后:
option | 订阅音视频流的回退选项,默认为 NERtcConstants.StreamFallbackOption#VIDEO_STREAM_LOW 弱网时回退到视频小流。 |
|
abstract |
注册统计信息观测器,设置统计信息回调。
statsObserver | 统计信息观测器。详细信息请参考 stats.NERtcStatsObserver。 |
|
abstract |
设置本地辅流视频画布。
该方法设置本地辅流视频显示信息。App 通过调用此接口绑定本地辅流的显示视窗(view)。 在 App 开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。
render | 视频画布设置,详细信息请参考 video.NERtcVideoView。 |
|
abstract |
设置本地视图。
该方法设置本地视频显示信息。只影响本地用户看到的视频画面,不影响远端。 App 通过调用此接口绑定本地视频流的显示视窗(view)。
在 App 开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。
render | 视频画布。详细信息请参考 video.NERtcVideoView。 |
|
abstract |
设置远端的辅流视频画布。
该方法绑定远端用户和辅流显示视图,即指定某个 uid 使用对应的画布显示。
render | 视频画布设置:
|
uid | 远端用户 ID。 |
|
abstract |
设置远端用户视图。
该方法绑定远端用户和显示视图,并设置远端用户视图在本地显示时的渲染模式和镜像模式,只影响本地用户看到的视频画面。
注意:
render | 视频画布。详细信息请参考 video.NERtcVideoView。 |
uid | 远端用户 ID。 |
|
abstract |
开始跨房间媒体流转发。
config | 跨房间媒体流转发参数配置信息。详细信息请参考 NERtcMediaRelayParam.ChannelMediaRelayConfiguration。 |
|
abstract |
开启屏幕共享,屏幕共享内容以辅流形式发送。
如果您在加入房间后调用该方法开启辅流,调用成功后,远端触发 onUserSubStreamVideoStart 回调。
screenConfig | 本地辅流发送配置,详细信息请参考 video.NERtcScreenConfig。 |
mediaProjectionPermissionResultData | Android 的录屏请求 Intent,在请求录屏权限时返回。 |
mediaProjectionCallback | 录屏状态回调,用于监听录屏的结束通知。 |
|
abstract |
停止跨房间媒体流转发。 主播离开房间时,跨房间媒体流转发自动停止,您也可以在需要的时候随时调用 stopChannelMediaRelay 方法,此时主播会退出所有目标房间。
|
abstract |
关闭辅流形式的屏幕共享。
如果您在加入房间后调用该方法关闭辅流,调用成功后,远端触发 onUserSubStreamVideoStop 回调。
|
abstract |
取消或恢复订阅所有远端用户音频流。
subscribe | 是否取消订阅所有远端用户的音频流。
|
|
abstract |
取消或恢复订阅指定远端用户音频流。
加入房间时,默认订阅所有远端用户的音频流,您可以通过此方法取消或恢复订阅指定远端用户的音频流。
uid | 指定用户的 ID。 |
subscribe | 是否订阅指定音频流。
|
|
abstract |
取消或恢复订阅指定远端用户音频辅流。
加入房间时,默认订阅所有远端用户的音频流,您可以通过此方法取消或恢复订阅指定远端用户的音频辅流。
uid | 指定用户的 ID。 |
subscribe | 是否订阅指定音频流。
|
|
abstract |
订阅或取消订阅远端的屏幕共享辅流视频,订阅之后才能接收远端的辅流视频数据。
uid | 远端用户 ID。 |
subscribe | 是否订阅远端的屏幕共享辅流视频:
|
|
abstract |
订阅或取消订阅指定远端用户的视频流。
uid | 指定用户的用户 ID。 |
streamType | 订阅的视频流类型,详细信息请参考 video.NERtcRemoteVideoStreamType。 |
subscribe | 是否订阅远端用户的视频流。
|
|
abstract |
本地视频画面截图。 调用 takeLocalSnapshot 截取本地主流或本地辅流的视频画面,并通过 NERtcTakeSnapshotCallback 的 onTakeSnapshotResult 回调返回截图画面的数据。
streamType | 截图的视频流类型。详细信息请参考 video.NERtcVideoStreamType。 |
callback | 截图回调。详细信息请参考 video.NERtcTakeSnapshotCallback。 |
|
abstract |
远端视频画面截图。 调用 takeRemoteSnapshot 截取指定 uid 远端主流和远端辅流的视频画面,并通过 NERtcTakeSnapshotCallback 的 onTakeSnapshotResult 回调返回截图画面的数据。
uid | 远端用户 ID。 |
streamType | 截图的视频流类型。支持设置为主流或辅流。详细信息请参考 video.NERtcVideoStreamType。 |
callback | 截图回调。详细信息请参考 video.NERtcTakeSnapshotCallback。 |
|
abstract |
更新媒体流转发的目标房间。 成功开始跨房间转发媒体流后,如果你希望将流转发到多个目标房间,或退出当前的转发房间,可以调用该方法。
config | 跨房间媒体流转发参数配置信息。详细信息请参考 NERtcMediaRelayParam.ChannelMediaRelayConfiguration。 |
|
abstract |
更新修改房间推流任务。
taskInfo | 推流任务信息,详细信息请参考 live.NERtcLiveStreamTaskInfo。 |
updateLiveTaskCallback | 操作结果回调,方法调用成功后会触发对应回调。详细信息请参考 live.UpdateLiveTaskCallback。 |