
# 常见问题
- **加入房间时，userName必须填吗？**
  非必填。userName、userId由App自定义，但可以相同。
  - userId：必填，string\[64\]类型，用户标识，userId需要保证应用内唯一。userId支持的字符包括：a-z、A-Z、0-9、连接符 '-'、下划线 '_'。
  
  - userName：选填，string\[128\]类型，用户昵称。
   

- **microphoneId跟cameraId在哪获取？为什么是必填的？**
  分别为麦克风ID和摄像头ID ，音视频通话必须的，即在创建流的时候采集ID对应的音频、视频。
  使用[getDevices](https://support.huaweicloud.com/csdk-rtc/rtc_05_0137.html#rtc_05_0137__section18997165620324)、[getCameras](https://support.huaweicloud.com/csdk-rtc/rtc_05_0137.html#rtc_05_0137__section2207826163312)、[getMicrophones](https://support.huaweicloud.com/csdk-rtc/rtc_05_0137.html#rtc_05_0137__section5429195393312)接口可直接获取媒体输入输出、麦克风/摄像头设备ID 。
  
- **若摄像头不打开，是否显示默认的人像图标？**
  如果获取不到摄像头 ，但是能获取到麦克风，则视频是黑屏，音频有流。如果麦克风和摄像头都获取不到，则本地预览失败，不会显示默认的人像图标。
  
- **退出房间后摄像头没关，是不是需要释放摄像头？**
  退出房间不需要手动释放摄像头，会自动关闭，不再采集摄像头。
  
- **如何鉴权？在什么时候鉴权？**
  具体请参见[接入鉴权](https://support.huaweicloud.com/csdk-rtc/rtc_05_0348.html)。
  
- **客户端以** **joiner角色加入房间失败。**
  客户端调用[join](https://support.huaweicloud.com/csdk-rtc/rtc_05_0138.html#rtc_05_0138__section152490173372)时传入的角色参数不对。role是数值型，如果客户端传入的是字符串型，则会加入房间失败。
  
- **创建本地流失败，控制台提示Cannot read property 'getUserMedia' of undefined，无法获取到媒体源。**
  可能有以下原因：
  原因1：系统未允许应用访问摄像头等媒体源，解决方法请参见[授权浏览器摄像头/麦克风访问方法](https://support.huaweicloud.com/csdk-rtc/rtc_05_0147.html)。
  原因2：由于浏览器的策略，仅允许通过https://方式或者localhost的方式访问用户的摄像头和麦克风权限。
  原因3：检查摄像头等设备是否被其他应用占用了。
  
- **如果之前访问过使用Web SDK开发的App网站，又清理了该网站的权限，存在一定几率无法开启摄像头和麦克风** **。**
  在保证打开[授权浏览器摄像头/麦克风访问权限的方法](https://support.huaweicloud.com/csdk-rtc/rtc_05_0147.html)前提下。点开网页的左上角，将权限改为允许。如下图所示：
  ![](https://support.huaweicloud.com/csdk-rtc/zh-cn_image_0000001229883341.png)
  
- **输入在线音频地址，且该地址可以在浏览器中打开，但是使用Web SDK的混音功能时，启动混音失败** **。**
  需要确认在线音频文件下载服务器是否支持跨域，由于浏览器的安全策略，必须要支持跨域，否则请求失败。
  **注意**：混音只有对端可以听到，本端听不见。
  
- **音频TopN 模式（音频最大三方模式）是什么意思？**
  音频TopN模式也叫音频最大三方模式。开启音频TopN模式后，本地用户不需要通过调用接口，单独订阅某个远端用户的音频，即可接收到当前房间内音量值最大的三个用户的音频。具体接口调用可参见[切换音频模式](https://support.huaweicloud.com/bestpractice-rtc/rtc_08_0043.html)。
  
- **调用[setVolume4TopThree](https://support.huaweicloud.com/csdk-rtc/rtc_05_0138.html#rtc_05_0138__section4301855102213)设置音频最大三方音量值是设置房间内三个最大声音的用户的音量值吗？传参需要传一个参数还是三个参数？**
  是的。传参只需要传一个参数。
  
- **如果业务上App只能使用http协议，是否能够集成使用SparkRTC Web SDK ?**
  可以集成使用，但不推荐。需要用户手动关闭安全策略相关的开关。打开chrome页签，输入**chrome://flags/#unsafely-treat-insecure-origin-as-secure**，开启开关项，并把App的加载地址加入到忽略列表。
  ![](https://support.huaweicloud.com/csdk-rtc/zh-cn_image_0000001205751630.png)
  
- **Firefox浏览器中使用Web SDK，加入房间失败怎么办？**
  请排查Firefox浏览器的H264插件是否安装。浏览器中输入**about:addons**，跳转到插件安装页面，查看H264插件是否安装完成，如未安装请在该页面更新安装。
  ![](https://support.huaweicloud.com/csdk-rtc/zh-cn_image_0000001215502156.png)
  
- **使用Mac Chrome浏览器屏幕分享失败，提示 "NotAllowedError: Permission denied by system" 或 "NotReadableError: Could not start video source" 时怎么办？**
  可能是由于未开启浏览器的屏幕录制权限导致。您可以通过在Mac的"设置 \> 安全性与隐私 \> 隐私 \> 屏幕录制"中，打开Chrome屏幕录制授权后，重启Chrome浏览器。
  
 
