NIMSDK-AOS  10.9.60
QChatRTCChannelController.java
浏览该文件的文档.
1 package com.netease.nimlib.sdk.qcmedia;
2 
3 
4 import android.content.Intent;
5 import android.media.projection.MediaProjection;
9 import java.util.List;
10 
11 /**
12  * RTC频道控制器
13  */
14 public interface QChatRTCChannelController {
15 
16  /**
17  * 添加RTC频道事件监听
18  * @param listener RTC频道监听
19  */
21 
22  /**
23  * 移除RTC频道监听
24  * @param listener RTC频道监听
25  */
27 
28  /**
29  * 移除成员
30  * @param accid 用户id
31  * @param callback 回调
32  */
33  void kickMemberOut(String accid, QCMCallback<Void> callback);
34 
35  /**
36  * 切换摄像头
37  */
38  int switchCamera();
39 
40  /**
41  * 关闭成员音频,如果accid为当前用户,则关闭本端音频发送,操作其他成员会进行权限校验
42  * @param accid 用户accid
43  * @param callback 回调
44  */
45  void muteAudio(String accid,QCMCallback<Void> callback);
46 
47  /**
48  * 打开成员音频,如果accid为当前用户,则打开本端音频发送,操作其他成员会进行权限校验
49  * @param accid 用户accid
50  * @param callback 回调
51  */
52  void unMuteAudio(String accid,QCMCallback<Void> callback);
53 
54  /**
55  * 关闭所有成员音频
56  * @param callback 回调
57  */
58  void muteAllAudio(QCMCallback<Void> callback);
59 
60  /**
61  * 打开所有成员音频
62  * @param callback 回调
63  */
64  void unMuteAllAudio(QCMCallback<Void> callback);
65 
66  /**
67  * 关闭成员视频,如果accid为当前用户,则关闭本端视频,操作其他成员会进行权限校验
68  * @param accid 用户accid
69  * @param callback 回调
70  */
71  void muteVideo(String accid,QCMCallback<Void> callback);
72 
73  /**
74  * 打开成员视频,如果accid为当前用户,则打开本端视频,操作其他成员会进行权限校验
75  * @param accid 用户accid
76  * @param callback 回调
77  */
78  void unMuteVideo(String accid,QCMCallback<Void> callback);
79 
80  /**
81  * 关闭所有成员视频
82  * @param callback 回调
83  */
84  void muteAllVideo(QCMCallback<Void> callback);
85 
86  /**
87  * 打开所有成员视频
88  * @param callback 回调
89  */
90  void unMuteAllVideo(QCMCallback<Void> callback);
91 
92  /**
93  * 开启本端屏幕共享
94  * @param screenShareResultData Android 的录屏请求结果 Intent,在请求录屏权限时返回
95  * @param mediaProjectionCallback 录屏状态回调,用于监听录屏的结束通知
96  * @param callback 回调
97  */
98  void startScreenShare(
99  Intent screenShareResultData,
100  MediaProjection.Callback mediaProjectionCallback,
101  QCMCallback<Void> callback);
102 
103  /**
104  * 关闭本端屏幕共享
105  * @param callback 回调
106  */
107  void stopScreenShare(QCMCallback<Void> callback);
108 
109  /**
110  * 尝试关闭RTC频道内成员的屏幕共享,会进行权限校验。
111  * @param accid 成员账号Id
112  * @param callback 回调
113  */
114  void stopMemberScreenShare(String accid, QCMCallback<Void> callback);
115 
116  /**
117  * 订阅指定远端用户的视频流
118  * @param accid 用户id
119  * @param streamType 流类型
120  */
121  int subscribeRemoteVideoStream(String accid, QChatMediaVideoStreamType streamType);
122 
123  /**
124  * 取消订阅指定远端用户的视频流
125  * @param accid 用户id
126  * @param streamType 流类型
127  */
128  int unsubscribeRemoteVideoStream(String accid, QChatMediaVideoStreamType streamType);
129 
130  /**
131  * 订阅指定远端用户辅流视频
132  * @param accid 用户id
133  */
134  int subscribeRemoteVideoSubStream(String accid);
135 
136  /**
137  * 取消订阅指定远端用户辅流视频
138  * @param accid 用户id
139  */
140  int unsubscribeRemoteVideoSubStream(String accid);
141 
142  /**
143  * 设置用户视图,如果accid为当前登录用户,则设置本端视图
144  * @param videoView 视频画布
145  * @param accid 用户id
146  */
147  int setupVideoCanvas(QChatMediaVideoView videoView, String accid);
148 
149 
150  /**
151  * 设置远端的辅流视频画布
152  * @param videoView 视频画布
153  * @param accid 用户id
154  */
155  int setupRemoteVideoSubStreamCanvas(QChatMediaVideoView videoView, String accid);
156 
157  /**
158  * 调节本地播放的指定远端用户的信号音量
159  * 加入RTC频道后,您可以多次调用该方法设置本地播放的不同远端用户的音量;也可以反复调节本地播放的某个远端用户的音量。
160  * @param accid 用户id
161  * @param volume 播放音量,取值范围为 [0,100]
162  */
163  int adjustUserPlaybackSignalVolume(String accid, int volume);
164 
165  /**
166  * 查询屏幕共享者的userUuid
167  */
168  String getScreenSharingUserUuid();
169 
170  /**
171  * 打开或关闭扬声器
172  */
173  int setSpeakerphoneOn(boolean on);
174 
175  /**
176  * 查询扬声器是否开启
177  */
178  boolean isSpeakerphoneOn();
179 
180  /**
181  * 启用说话者音量提示。
182  * 该方法允许 SDK 定期向 App 反馈本地发流用户和瞬时音量最高的远端用户(最多 3 位)的音量相关信息,
183  * 即当前谁在说话以及说话者的音量。启用该方法后,只要RTC频道内有发流用户,无论是否有人说话,
184  * SDK 都会在加入RTC频道后根据预设的时间间隔触发 [NERoomListener.onRtcAudioVolumeIndication] 回调
185  * @param enable 是否启用说话者音量提示。
186  * @param interval 指定音量提示的时间间隔。单位为毫秒。必须设置为 100 毫秒的整数倍值,建议设置为 200 毫秒以上。
187  */
188  int enableAudioVolumeIndication(boolean enable, int interval);
189 
190  /**
191  * 获取本端成员
192  * @return
193  */
195 
196  /**
197  * 获取远端成员(不包括本端)
198  * @return 远端成员列表
199  */
200  List<QChatMediaMember> getQChatMediaMembers();
201 }
int subscribeRemoteVideoSubStream(String accid)
订阅指定远端用户辅流视频
int adjustUserPlaybackSignalVolume(String accid, int volume)
调节本地播放的指定远端用户的信号音量 加入RTC频道后,您可以多次调用该方法设置本地播放的不同远端用户的...
void stopMemberScreenShare(String accid, QCMCallback< Void > callback)
尝试关闭RTC频道内成员的屏幕共享,会进行权限校验。
void stopScreenShare(QCMCallback< Void > callback)
关闭本端屏幕共享
int setSpeakerphoneOn(boolean on)
打开或关闭扬声器
boolean isSpeakerphoneOn()
查询扬声器是否开启
void muteAudio(String accid, QCMCallback< Void > callback)
关闭成员音频,如果accid为当前用户,则关闭本端音频发送,操作其他成员会进行权限校验
List< QChatMediaMember > getQChatMediaMembers()
获取远端成员(不包括本端)
void unMuteAllVideo(QCMCallback< Void > callback)
打开所有成员视频
void startScreenShare(Intent screenShareResultData, MediaProjection.Callback mediaProjectionCallback, QCMCallback< Void > callback)
开启本端屏幕共享
int subscribeRemoteVideoStream(String accid, QChatMediaVideoStreamType streamType)
订阅指定远端用户的视频流
void unMuteVideo(String accid, QCMCallback< Void > callback)
打开成员视频,如果accid为当前用户,则打开本端视频,操作其他成员会进行权限校验
int unsubscribeRemoteVideoStream(String accid, QChatMediaVideoStreamType streamType)
取消订阅指定远端用户的视频流
QChatMediaMember getLocalQChatMediaMember()
获取本端成员
void muteVideo(String accid, QCMCallback< Void > callback)
关闭成员视频,如果accid为当前用户,则关闭本端视频,操作其他成员会进行权限校验
int setupVideoCanvas(QChatMediaVideoView videoView, String accid)
设置用户视图,如果accid为当前登录用户,则设置本端视图
void unMuteAllAudio(QCMCallback< Void > callback)
打开所有成员音频
int enableAudioVolumeIndication(boolean enable, int interval)
启用说话者音量提示。 该方法允许 SDK 定期向 App 反馈本地发流用户和瞬时音量最高的远端用户(最多 3 位)...
void muteAllAudio(QCMCallback< Void > callback)
关闭所有成员音频
void unMuteAudio(String accid, QCMCallback< Void > callback)
打开成员音频,如果accid为当前用户,则打开本端音频发送,操作其他成员会进行权限校验
void kickMemberOut(String accid, QCMCallback< Void > callback)
移除成员
String getScreenSharingUserUuid()
查询屏幕共享者的userUuid
void muteAllVideo(QCMCallback< Void > callback)
关闭所有成员视频
void removeRTCChannelListener(QChatRTCChannelListener listener)
移除RTC频道监听
void addRTCChannelListener(QChatRTCChannelListener listener)
添加RTC频道事件监听
int setupRemoteVideoSubStreamCanvas(QChatMediaVideoView videoView, String accid)
设置远端的辅流视频画布
int unsubscribeRemoteVideoSubStream(String accid)
取消订阅指定远端用户辅流视频