静音和取消静音
更新时间: 2022/10/31 09:08:38
本文介绍如何通过 NERoom SDK 静音或取消静音,包括静音本人或静音房间内其他成员。
功能介绍
NERoom SDK 支持通过 unmuteMyAudio 和 muteMyAudio 开启或关闭本地音频流的采集与上行。
注意事项
您需要先调用 joinRoom 方法加入 NERoom 的房间。
打开本地音频
配置步骤
-
加入房间后,调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将
roomUuid
设置为您所加入房间的 ID。 -
调用 unmuteMyAudio 方法开启本地音频采集。
示例代码
NERoomService roomService = NERoomKit.getInstance().getService(NERoomService.class);
NERoomContext roomContext = roomService.getRoomContext(roomUuid);
if (roomContext != null) {
roomContext.getRtcController().unmuteMyAudio(new NECallback2<Unit>() {
@Override
public void onSuccess(@Nullable Unit unit) {
super.onSuccess(unit);
Log.d(TAG,"success");
}
@Override
public void onError(int code, @Nullable String message) {
super.onError(code, message);
Log.d(TAG,"error");
}
});
}
关闭本地音频
配置步骤
-
加入房间后,调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将
roomUid
设置为您所加入房间的 ID。 -
调用 muteMyAudio 方法关闭本地音频采集。
示例代码
NERoomService roomService = NERoomKit.getInstance().getService(NERoomService.class);
NERoomContext roomContext = roomService.getRoomContext(roomUuid);
if (roomContext != null) {
roomContext.getRtcController().muteMyAudio(new NECallback2<Unit>() {
@Override
public void onSuccess(@Nullable Unit unit) {
super.onSuccess(unit);
Log.d(TAG,"success");
}
@Override
public void onError(int code, @Nullable String message) {
super.onError(code, message);
Log.d(TAG,"error");
}
});
}
静音房间其他成员
您可以在云信控制台上配置某角色是否具备静音房间其他成员的权限,只有具备该权限的角色才可以执行此操作。
配置步骤
-
加入房间后,调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将
roomUid
设置为您所加入房间的 ID。 -
调用 muteMemberAudio 方法,传入对应成员 uuid,静音房间中的某个成员。
一次只能传入一个成员的 uuid。
示例代码
NERoomService roomService = NERoomKit.getInstance().getService(NERoomService.class);
NERoomContext roomContext = roomService.getRoomContext(roomUuid);
if (roomContext != null) {
String userUuid = "uuid";
roomContext.getRtcController().muteMemberAudio(userUuid, new NECallback2<Unit>() {
@Override
public void onSuccess(@Nullable Unit unit) {
super.onSuccess(unit);
Log.d(TAG,"success");
}
@Override
public void onError(int code, @Nullable String message) {
super.onError(code, message);
Log.d(TAG,"error");
}
});
}
取消静音房间其他成员
您可以在云信控制台上配置某角色是否具备取消静音房间其他成员的权限,只有具备该权限的角色才可以执行此操作。
配置步骤
-
加入房间后,调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将 roomUid 设置为您所加入房间的 ID。
-
调用 unmuteMemberAudio 方法,传入对应成员uuid,取消静音房间中的某个成员。
一次只能传入一个成员的 uuid。
示例代码
NERoomService roomService = NERoomKit.getInstance().getService(NERoomService.class);
NERoomContext roomContext = roomService.getRoomContext(roomUuid);
if (roomContext != null) {
String userUuid = "uuid";
roomContext.getRtcController().unmuteMemberAudio(userUuid, new NECallback2<Unit>() {
@Override
public void onSuccess(@Nullable Unit unit) {
super.onSuccess(unit);
Log.d(TAG,"success");
}
@Override
public void onError(int code, @Nullable String message) {
super.onError(code, message);
Log.d(TAG,"error");
}
});
}
API 参考
方法 | 功能描述 |
---|---|
joinRoom | 加入 NERoom 的房间。 |
getRoomContext | 获取房间上下文。 |
unmuteMyAudio | 开启本地音频采集。 |
muteMyAudio | 关闭本地音频采集。 |
muteMemberAudio | 静音房间中的某个成员。 |
unmuteMemberAudio | 取消静音房间中的某个成员。 |
此文档是否对你有帮助?