# 如何处理无声问题？ (/zh-CN/reference/faq/quality/audio_noaudio)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

## 解决方案 [#解决方案]

请依次按照以下解决方案排查问题。

### 定位问题类型 [#定位问题类型]

建议本地和远端用户按如下步骤定位问题类型：

1. 打开 [AVC](https://avc.agora.io/welcome)，认真阅读**声网使用条款和隐私权政策**并点击**接受**。
2. 输入相同的房间名称和房间密码，输入各自的昵称，确认已勾选**打开麦克风**，点击**加入**。
3. 允许 AVC 使用麦克风，并开始对话，检查双方是否能听到声音。
   - 如果能听到声音，则说明是 App 逻辑问题。请跳转至[检查 App 逻辑](#检查-app-逻辑)。
   - 如果不能听到声音，则说明是设备问题。请跳转至[检查音频输入设备](#检查音频输入设备)。

:::warning[注意]
在 iOS 上，如果用户的设备装了非苹果官方的磁性保护壳并且该用户听不到其他人的声音，则可能是保护壳引起的问题。请先拆除保护壳，退出频道，再重新加入频道，尝试是否能听到声音。
:::

### 检查音频输入设备 [#检查音频输入设备]

1. 确保音频输入设备连接正确。如果有多个音频输入设备，请选择一个合适的设备使用。
2. 在系统设置中，打开**声音输入设备**（或**录音设备**）窗口，确保系统使用了正确的音频输入设备，以及音频输入设备未被静音。
3. 对着音频输入设备说话，在窗口中检查设备对应的音量条是否随声音大小发生变化。
   - 如果发生变化，则说明音频输入设备正常工作。请跳转至下一步检查音频输出设备。
   - 如果未发生变化，则说明音频输入设备有问题，请尝试重启设备。如果未能解决问题，请更换音频输入设备。

### 检查音频输出设备 [#检查音频输出设备]

1. 确保音频输出设备连接正确。如果有多个音频输出设备，请选择一个合适的设备使用。
2. 在系统设置中，打开**声音输出设备**（或**播放设备**）窗口，确保系统使用了正确的音频输出设备，以及音频输出设备未被静音。
3. 播放一个音频文件，检查是否能听到声音。如果不能听到声音，则说明音频输出设备有问题，请尝试重启设备。如果未能解决问题，请更换音频输出设备。
4. 如果你使用了声卡，且在更换音频输出设备后未能解决问题，请跳转至下一步检查声卡。

### 检查声卡 [#检查声卡]

1. 确保声卡连接正确。如果用户在播放音频文件，请确保开启声卡的混音功能。
2. 重装设备驱动，检查是否能听到声音。如果不能听到声音，则说明声卡有问题。请更换声卡。

### 检查 App 逻辑 [#检查-app-逻辑]

1. 请确保用户均启用了音频设备的使用权限。
2. 请确保用户已成功加入频道，即收到 `onJoinChannelSuccess`/`didJoinChannel` 回调。
3. 检查是否调用了 `muteLocalAudioStream`、`muteRemoteAudioStream` 或 `muteAllRemoteAudioStreams` 方法取消音频流发布，或 `adjustRecordingSignalVolume(0)` 或 `adjustPlaybackSignalVolume(0)` 方法将用户设为静音。
4. 检查 `joinChannel [2/2]`/`joinChannelByToken [2/4]` 方法中的 `options` 参数，跟音频相关的设置是否符合预期：
    - `publishMicrophoneTrack` 已设置为 `true`
    - `enableAudioRecordingOrPlayout` 已设置为 `true`
4. 通过 `onAudioRouteChanged`/`didAudioRouteChanged` 回调检查当前的音频路由是否符合预期。如果不符合预期，可参考[设置音频路由](/zh-CN/realtime-media/rtc/build/audio/audio-route)修改音频路由。

### 检查 AVAudioSession 设置 [#检查-avaudiosession-设置]

iOS 系统中的 `AVAudioSession` 可能被其他 App 或本 App 内的其他模块修改，导致声网的音视频互动出现预期外问题。你需要确保 `AVAudioSession` 运行在以下状态：

- `category`：设置为 `playAndRecord`
- `mode`：
    - 在媒体音量场景下，将 `mode` 设置为 `AVAudioSessionModeDefault`
    - 在通话音量场景下，将 `mode` 设置为 `AVAudioSessionModeVoiceChat`

### 联系技术支持 [#联系技术支持]

如果上述步骤无法解决问题，请[提交工单](https://ticket.shengwang.cn)联系技术支持，并提供如下信息：

- 发生问题的频道名
- 该频道内无法听到声音的用户 ID
- 无法听到声音的时间段

你可以使用声网控制台中的[水晶球](https://analytics-lab.shengwang.cn/analytics/call/search)功能对通话质量进行跟踪和反馈，详见[水晶球教程](/zh-CN/realtime-media/usage-analytics)。
