通话过程控制

本章节介绍音视频通话过程中网易云提供的各种控制功能。包括点对点通话的控制多人会议的控制通用控制点对点通话的控制包括发送通话控制信息、设置静音、切换通话模式等 多人会议的控制包括改变自己在会议中的角色(互动者/观众) 通用控制包括是否接收某用户的音频或视频数据等

点对点通话的控制

发送通话控制信息

API介绍

音视频通话控制,异步回调nim_vchat_cb_func见nim_vchat_def.h。

API原型

参数说明

参数 类型 说明
channel_id long long 音视频通话通道id。
type enum 音视频通话控制类型,见NIMVChatControlType。
json_extension(C) string 无效的扩展字段。
user_data(C) void* APP的自定义用户数据,SDK只负责传回给回调函数cb,不做任何处理!

返回值说明

调用成功返回true,调用失败返回false。

示例

收到通话控制信息回调

API介绍

收到别人通话控制操作的通知,通话控制操作类型见NIMVChatControlType。

API原型

参数说明

参数 类型 说明
channel_id long 频道id。
uid string 对方uid。
type int 通话控制操作类型。
参数 类型 说明
type enum 回调类型kNIMVideoChatSessionTypeControlNotify。
channel_id int64 频道id。
code int 无效错误码。
json_extension string Json string 扩展,kNIMVChatUid对应操作者id,kNIMVChatType对应通话控制类型NIMVChatControlType。
user_data void* 注册回调时的APP自定义用户数据,SDK只负责传回给回调函数cb,不做任何处理。

示例

设置静音

API介绍

设置自己的音频静音,全局有效,重新发起会话时也生效。此开关打开音频只发静音包。

获取音频静音状态。

API原型

参数说明

参数 类型 所在函数 说明
muted bool SetAudioMuted(C/C#)
nim_vchat_set_audio_mute(C)
true静音,false不静音。

返回值说明

设置静音接口无返回值。

获取静音状态接口返回静音状态。

示例

切换通话模式

API介绍

设置通话模式,在更改通话模式后,通知底层。

API原型

参数说明

参数 类型 说明
mode enum 音视频通话类型,见NIMVideoChatMode。
json_extension(C/C++) string 无效的扩展字段。

返回值说明

调用成功返回true,调用失败返回false。

示例

多人通话的控制

改变自己在会议中的角色

API介绍

设置观众模式(多人模式下),全局有效(重新发起时也生效),观众模式能减少运行开销。

获取当前是否是观众模式。

API原型

参数说明

参数 类型 所在函数 说明
viewer bool SetViewerMode(C/C#)
nim_vchat_set_viewer_mode(C)
是否设为观众模式。

返回值说明

Set函数无返回值。

Get函数返回当前是否为观众模式。

示例

通用控制

指定某用户设置是否接收其音视频数据

API介绍

设置单个成员的音频黑名单或视频黑名单状态,使得自己能接收或不接收其音频数据或视频数据。当前通话有效(只能设置进入过房间的成员)。

API原型

参数说明

参数 类型 说明
uid string 对方账号。
add bool true表示添加到黑名单,false表示从黑名单移除。
audio bool true表示音频黑名单,false表示视频黑名单。
json_extension string 无效扩展字段。
cb function 结果回调,见nim_vchat_def.h,返回的json_extension无效。
user_data(C) void* APP的自定义用户数据,SDK只负责传回给回调函数cb,不做任何处理!

返回值说明

无返回值。

示例

自动旋转对方画面

API介绍

设置不自动旋转对方画面,默认打开,全局有效(重新发起时也生效)。

获取自动旋转对方画面设置状态。

API原型

参数说明

参数 类型 所在函数 说明
rotate bool SetRotateRemoteVideo(C++/C#)
nim_vchat_set_rotate_remote_video(C)
true自动旋转,false不自动旋转。

返回值说明

设置接口无返回值。

获取接口返回true表示自动旋转对方画面,false表示不自动旋转对方画面。

示例