NERTC macOS/Windows SDK V5.6.40
|
#include <nertc_channel.h>
IRtcChannel 类在指定房间中实现实时音视频功能。通过创建多个 IRtcChannel 对象,用户可以同时加入多个房间。
|
pure virtual |
添加房间内推流任务。 通过此接口可以实现增加一路旁路推流任务;若需推送多路流,则需多次调用该方法。
参数名称 | 类型 | 描述 |
---|---|---|
info | NERtcLiveStreamTaskInfo | 推流任务信息。 |
|
pure virtual |
调节本地播放的指定房间的所有远端用户的信号音量。
通过此接口可以实现在通话过程中随时调节指定房间内的所有远端用户在本地播放的混音音量。
参数名称 | 类型 | 描述 |
---|---|---|
volume | uint64_t | 播放音量,取值范围为 [0,400]。
|
|
pure virtual |
调节本地播放的指定远端用户的信号音量。
通过此接口可以实现在通话过程中随时调节指定远端用户在本地播放的混音音量。
参数名称 | 类型 | 描述 |
---|---|---|
uid | uid_t | 远端用户 ID。 |
volume | int | 播放音量,取值范围为 0 ~ 400。
|
|
pure virtual |
参数名称 | 类型 | 描述 |
---|---|---|
enable | bool | 是否启用说话者音量提示:
|
interval | uint64_t | 指定音量提示的时间间隔。单位为毫秒。必须设置为 100 毫秒的整数倍值,建议设置为 200 毫秒以上。 |
|
pure virtual |
设置是否开启视频大小流模式。
通过本接口可以实现设置单流或者双流模式。发送端开启双流模式后,接收端可以选择接收大流还是小流。其中,大流指高分辨率、高码率的视频流,小流指低分辨率、低码率的视频流。
参数名称 | 类型 | 描述 |
---|---|---|
enable | boolean | 是否开启双流模式:
|
|
pure virtual |
开启/关闭本地音频采集和发送。
通过本接口可以实现开启或关闭本地语音功能,进行本地音频采集及处理。
参数名称 | 类型 | 描述 |
---|---|---|
enabled | boolean | 是否启用本地音频的采集和发送:
|
|
pure virtual |
开启或关闭音频辅流。
开启时远端会收到 onUserSubStreamAudioStart,关闭时远端会收到 onUserSubStreamAudioStop。
[in] | enabled | 是否开启音频辅流。
|
|
pure virtual |
开启或关闭本地视频的采集与发送。
通过本接口可以实现开启或关闭本地视频,不影响接收远端视频。
参数名称 | 类型 | 描述 |
---|---|---|
enabled | bool | 是否开启本地视频采集与发送:
|
|
pure virtual |
开启或关闭本地视频的采集与发送。
通过主流或辅流视频通道进行本地视频流的采集与发送。
参数名称 | 类型 | 描述 |
---|---|---|
type | NERtcVideoStreamType | 视频通道类型:
|
enabled | bool | 是否开启本地视频采集与发送:
|
|
pure virtual |
开启或关闭本地媒体流(主流)的发送。
该方法用于开始或停止向网络发送本地音频或视频数据。
该方法不影响接收或播放远端媒体流,也不会影响本地音频或视频的采集状态。
enabled | 是否发布本地媒体流。
|
media_type | 媒体发布类型,暂时仅支持音频。 |
|
pure virtual |
开启或关闭空间音效
enable | 是否打开 3D 音效算法功能,默认为关闭状态。
|
apply_to_team | 是否仅本小队开启 3D 音效。
|
|
pure virtual |
开启或关闭空间音效的房间混响效果
enable | 混响效果开关,默认值关闭 |
|
pure virtual |
|
pure virtual |
获取当前房间连接状态。
|
pure virtual |
获得一个可以分享的屏幕和窗口的列表
屏幕共享或窗口共享前,您可以调用该方法获取可共享的屏幕和窗口的对象列表,方便用户通过列表中的缩略图选择共享某个显示器的屏幕或某个窗口。 列表中包含窗口 ID 和屏幕 ID 等重要信息,您可以获取到 ID 后再调用 startScreenCaptureByDisplayId 或 startScreenCaptureByWindowId 开启共享。
thumbSize | 屏幕或窗口的缩略图的目标尺寸(宽高单位为像素)。参考 SIZE。 SDK 会在保证原图不变形的前提下,缩放原图,使图片最长边和目标尺寸的最长边的长度一致。 例如,原图宽高为 400 × 300,thumbSize 为 100 x 100,缩略图实际尺寸为 100 × 75。 如果目标尺寸大于原图尺寸,缩略图即为原图,SDK 不进行缩放操作。 |
iconSize | 程序所对应的图标的目标尺寸(宽高单位为像素)。参考 SIZE。 SDK 会在保证原图不变形的前提下,缩放原图,使图片最长边和目标尺寸的最长边的长度一致。 例如,原图宽高为 400 × 300,iconSize 为 100 × 100,图标实际尺寸为 100 × 75。 如果目标尺寸大于原图尺寸,图标即为原图,SDK 不进行缩放操作。 |
includeScreen | 除了窗口信息外,SDK 是否还返回屏幕信息:
|
includeCurrentApplication | 是否返回当前应用的窗口,默认 false:
|
|
pure virtual |
初始化引擎 3D 音效算法
|
pure virtual |
加入音视频房间。
通过本接口可以实现加入音视频房间,加入房间后可以与房间内的其他用户进行音视频通话。
参数名称 | 类型 | 描述 |
---|---|---|
token | const char | 安全认证签名(NERTC Token),可以设置为:
|
|
pure virtual |
加入音视频房间。
通过本接口可以实现加入音视频房间,加入房间后可以与房间内的其他用户进行音视频通话。
参数名称 | 类型 | 描述 |
---|---|---|
token | const char | 安全认证签名(NERTC Token),可以设置为:
|
uid | uid_t | user id |
|
pure virtual |
加入音视频房间。
通过本接口可以实现加入音视频房间,加入房间后可以与房间内的其他用户进行音视频通话。
参数名称 | 类型 | 描述 |
---|---|---|
token | const char | 安全认证签名(NERTC Token),可以设置为:
|
channel_options | NERtcJoinChannelOptions | 加入房间时设置一些特定的房间参数。默认值为 nil。 |
uid | uid_t | user id |
|
pure virtual |
离开音视频房间。
通过本接口可以实现挂断或退出通话,并释放本房间内的相关资源。
|
pure virtual |
开启或关闭本地音频主流的发送。
该方法用于向网络发送或取消发送本地音频数据,不影响本地音频的采集状态,也不影响接收或播放远端音频流。
参数名称 | 类型 | 描述 |
---|---|---|
mute | bool | 是否关闭本地音频的发送:
|
|
pure virtual |
静音或解除静音本地上行的音频辅流。
mute | 是否静音本地音频辅流发送。
|
|
pure virtual |
取消或恢复发布本端视频主流。
调用该方法取消发布本地视频主流后,SDK 不再发送本地视频主流。
参数名称 | 类型 | 描述 |
---|---|---|
mute | bool | 是否取消发布本地视频流:
|
|
pure virtual |
取消或恢复发布本地视频。
调用该方法取消发布本地视频主流或辅流后,SDK 不再发送本地视频流。
参数名称 | 类型 | 描述 |
---|---|---|
type | NERtcVideoStreamType | 视频通道类型:
|
mute | bool | 是否取消发布本地视频流:
|
|
pure virtual |
暂停屏幕共享。
|
pure virtual |
推送外部视频帧。
该方法主动将视频帧数据用 NERtcVideoFrame 类封装后传递给 SDK。 请确保在您调用本方法前已调用 setExternalVideoSource,并将参数设为 true,否则调用本方法后会一直报错。
[in] | frame | 外部视频帧数据。详细信息请参考 NERtcVideoFrame。 |
|
pure virtual |
推送外部视频帧。
该方法主动将视频帧数据用 NERtcVideoFrame 类封装后传递给 SDK。 请确保在您调用本方法前已调用 setExternalVideoSource,并将参数设为 true,否则调用本方法后会一直报错。
[in] | frame | 视频帧数据。 |
|
pure virtual |
销毁 IRtcChannel 实例,释放资源。
|
pure virtual |
删除房间内指定推流任务。
参数名称 | 类型 | 描述 |
---|---|---|
task_id | const char* | 推流任务 ID。 |
|
pure virtual |
上报自定义事件
event_name | 事件名 不能为空 |
custom_identify | 自定义标识,比如产品或业务类型,如不需要填 null |
parameters | 参数键值对,参数值支持 String 及 java 基本类型(int 、bool....), 如不需要填 null |
|
pure virtual |
恢复屏幕共享。
在 Windows 平台中,远端会触发 onScreenCaptureStatus 回调。
|
pure virtual |
发送媒体补充增强信息(SEI)。 在本端推流传输视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 IRtcEngineEventHandlerEx::onRecvSEIMsg 的回调获取 SEI 内容。
data | 自定义 SEI 数据。 |
length | 自定义 SEI 数据长度,最大不超过 4096 字节。 |
|
pure virtual |
发送媒体补充增强信息(SEI)。
在本端推流传输视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 IRtcEngineEventHandlerEx::onRecvSEIMsg 的回调获取 SEI 内容。
data | 自定义 SEI 数据。 |
length | 自定义 SEI 数据长度,最大不超过 4096 字节。 |
type | 发送 SEI 时,使用的流通道类型。详细信息请参考 #NERtcVideoStreamType。 |
|
pure virtual |
距离范围设置
audible_distance | 监听器能够听到扬声器并接收其语音的距离扬声器的最大距离。距离有效范围:[1,max int),无默认值。 |
conversational_distance | 控制音频保持其原始音量的范围,超出该范围时,语音聊天的响度在被听到时开始淡出。 默认值为 1。 |
roll_off:距离衰减模式 | #NERtcDistanceRolloffModel,默认值 kNERtcDistanceRolloffNone |
|
pure virtual |
设置自己的音频只能被房间内指定的人订阅。
默认房间所有其他人都可以订阅自己的音频。
[in] | uid_array | 可订阅自己音频的用户 uid 列表。 |
[in] | size | uid_array 的数组长度。 |
|
pure virtual |
设置本地摄像头的视频主流采集配置。
通过此接口可以设置本地摄像头采集的主流视频宽度、高度、旋转角度等。
参数名称 | 类型 | 描述 |
---|---|---|
captureConfig | NERtcCameraCaptureConfig | 本地摄像头采集配置。 |
|
pure virtual |
设置本地摄像头的视频主流或辅流采集配置。
通过此接口可以设置本地摄像头采集的主流或辅流视频宽度、高度、旋转角度等。
参数名称 | 类型 | 描述 |
---|---|---|
type | NERtcVideoStreamType | 视频通道类型:
|
captureConfig | NERtcCameraCaptureConfig | 本地摄像头采集配置。 |
|
pure virtual |
设置 IRtcChannel 对象的事件句柄。
您可以通过设置的事件句柄,监听当前 IRtcChannel 对象对应房间的事件,并接收房间中用户视频信息等。
[in] | handler | 事件监听句柄对象 |
|
pure virtual |
设置直播场景下的用户角色。
通过本接口可以实现将用户角色在“主播”(kNERtcClientRoleBroadcaster)和“观众“(kNERtcClientRoleAudience)之间的切换,用户加入房间后默认为“主播”。
参数名称 | 类型 | 描述 |
---|---|---|
role | NERtcClientRole | 用户角色:
|
|
pure virtual |
设置共享整个屏幕或屏幕指定区域时,需要屏蔽的窗口列表。
开启屏幕共享时,可以通过 NERtcScreenCaptureParameters 设置需要屏蔽的窗口列表;开发者可以在开启屏幕共享后,通过此方法动态调整需要屏蔽的窗口列表。被屏蔽的窗口不会显示在屏幕共享区域中。
window_list | 需要屏蔽的窗口 ID 列表。 |
count | 需屏蔽的窗口的数量。 |
|
pure virtual |
开启或关闭外部视频源数据输入。
通过该方法启用外部视频数据输入功能时,需要通过 IVideoDeviceManager::setDevice 设置 kNERtcExternalVideoDeviceID 为外部视频输入源 ID。
[in] | enabled | 是否启用外部视频源数据输入。
|
|
pure virtual |
开启或关闭外部视频源数据输入。
通过该方法启用外部视频数据输入功能时,需要通过 IVideoDeviceManager::setDevice 设置 kNERtcExternalVideoDeviceID 为外部视频输入源 ID。
[in] | type | 视频流通道类型 NERtcVideoStreamType
|
[in] | enabled | 是否外部视频源数据输入:
|
|
pure virtual |
设置本地用户的媒体流优先级。
通过此接口可以实现设置某用户的媒体流优先级为高,从而弱网环境下 SDK 会优先保证其他用户收到的该用户媒体流的质量。
参数名称 | 类型 | 描述 |
---|---|---|
priority | NERtcMediaPriorityType | 本地用户的媒体流优先级,默认为 kNERtcMediaPriorityNormal,即普通优先级。 |
is_preemptive | bool | 是否开启抢占模式,默认为 NO,即不开启:
|
|
pure virtual |
设置弱网条件下发布的音视频流回退选项。
在网络不理想的环境下,发布的音视频质量都会下降。使用该接口并将 option 设置为 kNERtcStreamFallbackAudioOnly 后:
option | 发布音视频流的回退选项,默认为不开启回退 kNERtcStreamFallbackAudioOnly。详细信息请参考 nertc::NERTCStreamFallbackOption。 |
0
方法调用成功,其他调用失败
|
pure virtual |
设置画布中本地视频画面的显示模式。
通过本接口可以实现设置本地视频画面的适应性,即是否裁剪或缩放。
参数名称 | 类型 | 描述 |
---|---|---|
scaling_mode | int | 视频显示模式类型:
|
|
pure virtual |
设置画布中本地视频画面的显示模式。
通过本接口可以实现设置本地视频画面的适应性,即是否裁剪或缩放。
参数名称 | 类型 | 描述 |
---|---|---|
scaling_mode | int | 视频显示模式类型:
|
|
pure virtual |
设置本端的屏幕共享辅流视频显示模式。
该方法设置本地视图显示模式。 App 可以多次调用此方法更改显示模式。
[in] | scaling_mode | 视频显示模式。 |
|
pure virtual |
设置本地视频镜像模式。
该方法用于设置本地视频是否开启镜像模式,即画面是否左右翻转。
[in] | mirror_mode | 视频镜像模式。详细信息请参考 NERtcVideoMirrorMode 。 |
|
pure virtual |
设置本地视频镜像模式。
通过此接口可以设置本地视频是否开启镜像模式,即画面是否左右翻转。
参数名称 | 类型 | 描述 |
---|---|---|
type | NERtcVideoStreamType | 视频通道类型:
|
mirror_mode | NERtcVideoMirrorMode | 视频镜像模式:
|
|
pure virtual |
设置范围语音模式
[in] | mode | 范围语音模式 |
|
pure virtual |
设置范围语音小队
team_id | 小队 ID, 有效值: >=0 |
|
pure virtual |
设置远端用户音频流为高优先级。 支持在音频自动订阅的情况下,设置某一个远端用户的音频为最高优先级,可以优先听到该用户的音频。
[in] | enabled | 是否设置音频订阅优先级。
|
[in] | uid | 用户 ID |
|
pure virtual |
设置远端视图显示模式。 该方法设置远端视图显示模式。App 可以多次调用此方法更改显示模式。
[in] | uid | 远端用户 ID。 |
[in] | scaling_mode | 视频显示模式: NERtcVideoScalingMode |
|
pure virtual |
设置远端视图显示模式。 该方法设置远端视图显示模式。App 可以多次调用此方法更改显示模式。
[in] | uid | 远端用户 ID。 |
[in] | scaling_mode | 视频显示模式: NERtcVideoScalingMode |
[in] | stream_type | 视频流类型: NERtcVideoStreamType |
|
pure virtual |
设置弱网条件下订阅的音视频流回退选项。
弱网环境下,订阅的音视频质量会下降。使用该接口并将 option 设置为 kNERtcStreamFallbackVideoStreamLow 或者 kNERtcStreamFallbackAudioOnly 后:
option | 订阅音视频流的回退选项,默认为弱网时回退到视频小流 kNERtcStreamFallbackVideoStreamLow。详细信息请参考 nertc::NERTCStreamFallbackOption。 |
0
方法调用成功,其他调用失败
|
pure virtual |
设置远端的屏幕共享辅流视频显示模式。
在远端开启辅流形式的屏幕共享时使用。App 可以多次调用此方法更改显示模式。
[in] | uid | 远端用户 ID。 |
[in] | scaling_mode | 视频显示模式。 |
|
pure virtual |
在共享屏幕或窗口时,更新是否显示鼠标。
capture_cursor | 屏幕共享时是否捕捉鼠标光标。
|
|
pure virtual |
设置屏幕分享参数,该方法在屏幕分享过程中调用,用来快速切换采集源。
如果您期望在屏幕分享的过程中,切换想要分享的窗口,可以再次调用这个函数而不需要重新开启屏幕分享。 支持如下四种情况:
source | 指定分享源。 |
region_rect | 指定捕获的区域。 |
capture_params | 指定屏幕分享目标的属性,包括捕获鼠标,高亮捕获窗口等,详情参考 NERtcScreenCaptureParameters 定义。 |
|
pure virtual |
设置空间音效的渲染模式
mode | 渲染模式,具体请参考 NERtcSpatializerRenderMode,默认值 kNERtcSpatializerRenderBinauralHighQuality |
|
pure virtual |
设置空间音效的房间混响属性
room_property | 房间属性,具体请参考 NERtcSpatializerRoomProperty |
|
pure virtual |
注册统计信息观测器。
[in] | observer | 统计信息观测器 |
|
pure virtual |
您可以调用该方法指定只订阅的音频流。
[in] | uid_array | 只订阅此 用户 uid 列表 的音频。 |
[in] | size | uid_array 的数组长度。 |
|
pure virtual |
您可以调用该方法指定不订阅的音频流。
[in] | uid_array | 不订阅此 用户 uid 列表 的音频。 |
[in] | size | uid_array 的数组长度。 |
|
pure virtual |
设置本地辅流视频画布。
[in] | canvas | 视频画布信息。 |
|
pure virtual |
设置本地用户视图。
通过本接口可以实现绑定本地用户和显示视图,并设置本地用户视图在本地显示时的镜像模式和裁减比例,只影响本地用户看到的视频画面。
参数名称 | 类型 | 描述 |
---|---|---|
canvas | NERtcVideoCanvas | 本地用户视频的画布。设置为 NULL 表示取消并释放已设置的画布,详细信息请参考 NERtcVideoCanvas。 |
|
pure virtual |
设置远端用户的视频辅流画布。
通过此接口可以实现绑定远端用户和对应辅流的显示视图,即指定某个 uid 使用对应的画布显示。
参数名称 | 类型 | 描述 |
---|---|---|
canvas | NERtcVideoCanvas* | 视频画布。详细信息请参考 NERtcVideoCanvas。 |
uid | uid_t | 远端用户 ID。 |
|
pure virtual |
设置远端用户视图。
通过本接口可以实现绑定远端用户和显示视图,并设置远端用户视图在本地显示时的镜像模式和裁减比例,只影响本地用户看到的视频画面。
参数名称 | 类型 | 描述 |
---|---|---|
canvas | NERtcVideoCanvas | 远端用户视频的画布。 |
uid | uid_t | 远端用户的 ID。可以在 onUserJoined 回调中获取。 |
|
pure virtual |
设置视频编码属性。
通过此接口可以设置视频主流的编码分辨率、裁剪模式、码率、帧率、带宽受限时的视频编码降级偏好、编码的镜像模式、编码的方向模式参数,详细信息请参考 设置视频属性。
参数名称 | 类型 | 描述 |
---|---|---|
config | NERtcVideoConfig | 视频编码属性配置。 |
|
pure virtual |
设置视频编码属性。
通过此接口可以设置视频主流或辅流的编码分辨率、裁剪模式、码率、帧率、带宽受限时的视频编码降级偏好、编码的镜像模式、编码的方向模式参数。
参数名称 | 类型 | 描述 |
---|---|---|
type | NERtcVideoStreamType | 视频通道类型:
|
config | NERtcVideoConfig | 视频编码属性配置。 |
|
pure virtual |
开始跨房间媒体流转发。
onMediaRelayStateChanged
和 onMediaRelayEvent
回调,并在回调中报告当前的跨房间媒体流转发状态和事件。 NERtcChannelMediaRelayConfiguration
中的 dest_infos
设置目标房间。stopChannelMediaRelay
方法退出当前的转发状态。updateChannelMediaRelay
更新目标房间信息。 config | 跨房间媒体流转发参数配置信息。 |
|
pure virtual |
通过指定屏幕 ID 开启屏幕共享,屏幕共享内容以辅流形式发送。
此方法调用成功后,远端触发 onUserSubStreamVideoStart 回调。
display_id | 指定待共享的屏幕 ID。开发者需要自行实现枚举屏幕 ID 的方法,并通过该参数指定需要共享的屏幕。 |
region_rect | 指定待共享的区域相对于整个窗口的位置。如果设置的共享区域超出了窗口的边界,则只共享窗口内的内容;如果宽或高为 0,则共享整个窗口。 |
capture_params | 屏幕共享的参数配置,包括码率、帧率、编码策略、屏蔽窗口列表等。 |
|
pure virtual |
开启屏幕共享,共享范围为指定屏幕的指定区域。
调用该方法时,可以选择共享整个虚拟屏、指定屏幕,或虚拟屏、整个屏幕的某些区域范围。
此方法调用成功后,远端触发 onUserSubStreamVideoStart 和 setExcludeWindowList 回调。
screen_rect | 指定待共享的屏幕相对于虚拟屏的位置。 |
region_rect | 指定待共享区域相对于整个屏幕屏幕的位置。如果设置的共享区域超出了屏幕的边界,则只共享屏幕内的内容;如果将 width 或 height 设为 0, 则共享整个屏幕。 |
capture_params | 屏幕共享的编码参数配置。 |
|
pure virtual |
通过指定窗口 ID 开启屏幕共享,屏幕共享内容以辅流形式发送。
调用该方法时需要指定待共享的屏幕 ID,共享该屏幕的整体画面或指定区域。
此方法调用成功后:
window_id | 指定待共享的窗口 ID。 |
region_rect | 指定待共享的区域相对于整个窗口的位置。如果设置的共享区域超出了窗口的边界,则只共享指定区域中窗口内的内容;如果宽或高为 0,则共享整个窗口。 |
capture_params | 屏幕共享的参数配置,包括码率、帧率、编码策略、屏蔽窗口列表等。 |
|
pure virtual |
停止跨房间媒体流转发。
通常在主播离开房间时,跨房间媒体流转发会自动停止;您也可以根据需要随时调用该方法,此时主播会退出所有目标房间。
|
pure virtual |
关闭屏幕共享。
通过此接口可以实现关闭屏幕共享辅流。
|
pure virtual |
取消或恢复订阅所有远端用户的音频主流。
加入房间时,默认订阅所有远端用户的音频主流,即 setParameters 方法的 KEY_AUTO_SUBSCRIBE_AUDIO 参数默认设置为 true;只有当该参数的设置为 false 时,此接口的调用才会生效。
参数名称 | 类型 | 描述 |
---|---|---|
subscribe | bool | 是否订阅所有用户的音频主流:
|
|
pure virtual |
取消或恢复订阅所有远端用户的音频主流。
加入房间时,默认订阅所有远端用户的音频主流,即 setParameters 方法的 KEY_AUTO_SUBSCRIBE_AUDIO 参数默认设置为 true;只有当该参数的设置为 false 时,此接口的调用才会生效。
参数名称 | 类型 | 描述 |
---|---|---|
subscribe | bool | 是否订阅所有用户的音频主流:
|
|
pure virtual |
设置是否订阅指定远端用户的音频辅流。
参数名称 | 类型 | 描述 |
---|---|---|
uid | uid_t | 远端用户 ID。 |
subscribe | bool | 是否订阅指定音频辅流:
|
|
pure virtual |
订阅或取消订阅指定远端用户的视频主流。
加入房间后,默认不订阅所有远端用户的视频主流;若您希望看到指定远端用户的视频,可以在监听到对方加入房间或发布视频流之后,通过此方法订阅该用户的视频主流。
参数名称 | 类型 | 描述 |
---|---|---|
uid | uid_t | 指定用户的 ID。 |
streamType | NERtcRemoteVideoStreamType | 订阅的视频流类型:
|
subscribe | bool | 是否订阅远端用户的视频流:
|
|
pure virtual |
订阅或取消订阅远端用户的视频辅流。
参数名称 | 类型 | 描述 |
---|---|---|
uid | uid_t | 远端用户 ID。 |
subsribe | bool | 是否订阅远端的视频辅流:
|
|
pure virtual |
本地视频画面截图。
调用 takeLocalSnapshot 截取本地主流或本地辅流的视频画面,并通过 NERtcTakeSnapshotCallback::onTakeSnapshotResult 回调返回截图画面的数据。
stream_type | 截图的视频流类型。支持设置为主流或辅流。详细信息请参考 #NERtcVideoStreamType。 |
callback | 截图回调。详细信息请参考 NERtcTakeSnapshotCallback。 |
|
pure virtual |
远端视频画面截图。
调用 takeRemoteSnapshot 截取指定 uid 远端主流和远端辅流的视频画面,并通过 NERtcTakeSnapshotCallback::onTakeSnapshotResult 回调返回截图画面的数据。
uid | 远端用户 ID。 |
stream_type | 截图的视频流类型。支持设置为主流或辅流。详细信息请参考 #NERtcVideoStreamType。 |
callback | 截图回调。详细信息请参考 NERtcTakeSnapshotCallback。 |
|
pure virtual |
更新媒体流转发的目标房间。
成功开始跨房间转发媒体流后,如果您希望将流转发到多个目标房间,或退出当前的转发房间,可以调用该方法。
onMediaRelayStateChange
和 onMediaRelayEvent
回调,并在回调中报告当前的跨房间媒体流转发状态和事件。 startChannelMediaRelay
开始跨房间媒体流转发后,调用此方法。调用此方法前需要通过 NERtcChannelMediaRelayConfiguration
中的 dest_infos
设置目标房间。 config | 目标房间配置信息 |
|
pure virtual |
更新房间内指定推流任务。 通过此接口可以实现调整指定推流任务的编码参数、画布布局、推流模式等。
参数名称 | 类型 | 描述 |
---|---|---|
info | NERtcLiveStreamTaskInfo | 推流任务信息。 |
|
pure virtual |
更新权限密钥。
参数名称 | 类型 | 描述 |
---|---|---|
key | const char* | 新的权限密钥。 |
|
pure virtual |
更新屏幕共享参数。
开始共享屏幕或窗口后,动态更新采集帧率,目标码率,编码分辨率等屏幕共享相关参数。
参数名称 | 类型 | 描述 |
---|---|---|
captureParams | NERtcScreenCaptureParameters | 屏幕共享编码参数配置。 |
|
pure virtual |
在共享屏幕或窗口时,更新共享的区域。
在 Windows 平台中,远端会触发 onScreenCaptureStatus 回调。
region_rect | 指定待共享的区域相对于整个窗口或屏幕的位置。如果设置的共享区域超出了边界,则只共享指定区域中,窗口或屏幕内的内容;如果宽或高为 0,则共享整个窗口或屏幕。 |
|
pure virtual |
更新本地用户的空间位置。
参数名称 | 描述 |
---|---|
speaker_position | 说话者的位置信息,三个值依次表示 X、Y、Z 的坐标值。默认值{0,0,0} |
speaker_quaternion | 说话者的旋转信息,通过四元组来表示,数据格式为{w, x, y, z}。默认值{0,0,0,0} |
head_position | 接收者的位置信息,三个值依次表示 X、Y、Z 的坐标值。默认值{0,0,0} |
head_quaternion | 接收者的旋转信息,通过四元组来表示,数据格式为{w, x, y, z}。默认值{0,0,0,0} |