You need to enable JavaScript to run this app.
导航

Native 排查无声问题

最近更新时间2024.04.22 17:52:22

首次发布时间2022.05.25 17:54:24

问题详述

为什么听不到 RTC 房间内的音频?如何定位和排查问题?

问题解答

你可以按照以下步骤解决问题:

步骤 1:定位问题类型

在两个终端使用不同的手机号登录 veRTC,进入同一个房间进行语音通话:

  • 如果能听到声音,则说明是你的应用的逻辑问题。请跳转至步骤 5 检查 app 代码逻辑。
  • 如果不能听到声音,可尝试在 veRTC 设置项中切换音频设备,如果切换后可以听到声音,则可能是设备问题。请跳转至步骤 2 检查音频输入设备。

步骤 2:检查音频输入设备

  • 外部音频源:确保外部音频源可以正常输入,而且音量正常。
  • 内部音频采集:确保当前使用的音频输入设备连接正确并未被静音。

在 iOS 上,如果设备装了非苹果官方的磁性保护壳并且听不到其他人的声音,则可能是保护壳引起的问题。请先拆除保护壳,退出房间,再重新加入房间,尝试是否能听到声音。

在 PC 端对着音频输入设备说话,在系统设置的音频设备界面中检查音量条是否变化:

  • 如果发生变化,则说明音频输入设备正常工作。请跳转至步骤 3 检查音频输出设备。
  • 如果未发生变化,说明音频输入设备有问题,尝试重启设备或更换音频输入设备。

步骤 3:检查音频输出设备

确保音频输出设备连接正确并未被静音。

  1. 播放一个音频文件,检查是否能听到声音。如果不能听到声音,说明音频输出设备有问题,尝试重启或更换设备。
  2. 如果你使用了声卡,且在更换音频输出设备后未能解决问题,请跳转至步骤 4 检查声卡。

步骤 4:检查声卡

  1. 确保声卡连接正确,并且其混音功能已开启。
  2. 重装驱动,或更换声卡。

步骤 5:检查 app 逻辑

  1. 确保你的应用已获得了音频设备的使用权限。

  2. 确保用户已经加入房间。

    • 客户端已收到用户成功加入房间的回调。
    • 在控制台 > 监控台 > 诊断工具 > 用户详情 > 用户事件图表中查看是否有“加入房间成功”事件。
  3. 确保用户已经成功 / 接收发布音频流。

  4. 确保音频设备未被系统或其他应用占用,详见通话打断和恢复

  5. 确保音频采集正常

    • 内部音频采集:确保用户未主动静音。
    • 发送端是否有用户静音的回调 onUserStopAudioCapture
    • 在控制台 > 监控台 > 诊断工具 > 用户详情 > 用户事件图表中查看是否有“禁用本地音频”事件。
    • 外部音频源:确认外部采集开关 enableExternalAudioDevice 已经打开,并成功推入音频数据。详见自定义音频采集和渲染
  6. 确保播放路由设置 FollowSystemCaptureDevice 是否符合预期。

步骤 6:联系技术支持协助解决

联系技术支持时,提供以下信息:
必要信息:

  • 出现无声问题的时间点和房间 ID;
  • 出现无声现象的用户 ID(听不到远端的音频或无法让远端听到本地的音频)。

辅助信息:

  • 出现无声现象的频率,是必现还是偶现;
  • 出现无声现象时使用的设备名称和具体型号。