视频常见问题排查

更新时间: 2024/09/18 16:26:13

监控通话质量

  1. 登录网易云信控制台

  2. 在左侧导航栏中单击服务监控平台

  3. 选择音视频通话2.0 > 通话信息。按时间段、cname(房间名称) 或 uid(用户 ID) 筛选对应的数据。

    搜索房间.png

  4. 操作列中单击详情,单击发送方UID或接收方UID图形右上角的查看详情

    查看详情.png

  5. 单击视频页签,查看视频上行码率、视频下行码率、视频上行帧率、视频下行帧率、视频上行丢包率、视频下行丢包率和卡顿时长、视频上行评估带宽、视频下行分辨率。

    查看视频通话质量.png

看不到远端的画面

假设用户 A 看不到用户 B 的画面,问题排查的思路如下:

步骤1 问题自查

  1. 在服务监控平台查看视频上行码率和视频下行码率,具体步骤请参见监控通话质量

    • 如果没有视频上行码率,则是发送端问题,请执行步骤 2 排查发送端的问题。
    • 如果有视频上行码率和视频下行码率,则是接收端问题,请执行步骤 3 排查接收端的问题。
    • 如果有视频上行码率,没有视频下行码率,可能是网络异常。
  2. 排查发送端的问题。

    1. 检查用户 B 是否已调用 publish方法发布本地视频流,具体请参见设置本地视图

    2. 检查用户 B 的摄像头是否打开失败,如果日志中有 no camera permission报错,可以尝试更换或重启手机测试。具体如何获取日志请参见 SDK 的日志从哪里获取

    3. 在服务监控平台查看视频上行帧率,如果上行帧率远低于 setVideoProfile 中设置的帧率,可能是相机有问题或手机性能有问题。

  3. 排查接收端的问题。

    1. 检查用户 A 是否已调用 subscribe订阅用户 B 的视频。

    2. 检查用户 A 是否已调用 setRemoteRenderMode设置用户 B 的画布。

    3. 检查是否用户 A 给用户 B 设置了画布,但是画布没有放到 UI 上或被销毁。可以检查一下日志中是否有打印 Dropping frame - No surface

    4. 检查用户 A 和用户 B 是否已加入同一个音视频房间。通过 channelName 检查用户 A 和用户 B 加入的房间名,通过 onUserJoin userID ,检查有没有监测到对端有加入房间。

步骤2 联系技术支持

如果通过以上步骤,问题仍无法解决,请联系网易云信技术支持工程师,并提供以下信息,方便工程师快速定位问题:

信息类别 信息详情
必要信息 房间名称(channelName)。
视频发送方和接收方的用户的 uid。
问题发生的时间。
辅助信息 SDK 日志文件。具体如何获取日志请参见 SDK 的日志从哪里获取
NERTC SDK 版本号、手机的型号,手机系统的版本号,如果有外接设备(摄像头、耳麦等等),提供设备的型号。

视频画面模糊、马赛克

可能原因

视频模糊一般是由视频码率或分辨率过低导致。

步骤1 问题自查

  1. 查看 setVideoProfile 中设置的分辨率是否和您的应用场景相匹配。

    如果高分辨率低码率容易产生马赛克现象。各场景的音视频属性设置的最佳实践请参见音视频参数配置推荐

  2. 在服务监控平台查看相关的通话质量数据,具体步骤请参见监控通话质量

    1. 查看发送端的视频上行码率和接收端的下行码率,确认接收端接收的是大流还是小流。
      • 如果订阅的是小流,视频略微模糊是符合预期的,您可以调用setSubscribeConfig接口,将highOrLow参数的值设置为NERTC.STREAM_TYPE.HIGH,订阅大流。
      • 如果订阅的是大流,请继续执行下一步。
    2. 请查看视频上行丢包率和下行丢包率是否正常。网络比较差时容易降低码率导致清晰度下降。
  3. 检查是否有视频前处理,例如美颜等,请先关闭前处理,检查模糊是否由于前处理导致。

步骤2 联系技术支持

如果通过以上步骤,问题仍无法解决,请联系网易云信技术支持工程师,并提供以下信息,方便工程师快速定位问题:

信息类别 信息详情
必要信息 房间名称(channelName)。
视频发送方和接收方的用户的 uid。
视频模糊的时间段。
辅助信息 SDK 日志文件。具体如何获取日志请参见 SDK 的日志从哪里获取
NERTC SDK 版本号、手机的型号,手机系统的版本号,如果有外接设备(摄像头、耳麦等等),提供设备的型号。

视频卡顿

可能原因

视频卡顿问题一般由网络、设备性能等原因造成。

步骤1 问题自查

  1. 判断是持续性的还是一次性的卡顿。一次性的卡顿是由网络和设备的随机性导致,属于正常现象。

  2. 在服务监控平台查看相关的通话质量数据,具体步骤请参见监控通话质量

    1. 查看视频上行帧率,如果上行帧率太低,请查看 setVideoProfile 设置的帧率是否正常。
    • 在通信模式下,建议您将帧率设置为 24 fps,用户在视觉上不会出现卡顿现象。
    • 在直播模式下,建议您将帧率适当降低至 15 fps,保证直播画面的高清晰度。
    1. 如果设置的帧率正常,但服务监控平台上查看的上行帧率远低于设置的帧率,大概率是设备的CPU和内存占用过高导致卡顿,请尝试更换设备。
    2. 查看视频下行帧率,如果下行帧率太低,请查看视频上行丢包率和下行丢包率是否正常。如果丢包率过高一般是网络状况不稳定导致卡顿。
  3. 检查是否有视频前处理,例如美颜等,请先关闭前处理,检查卡顿是否由于前处理导致。

  4. 请确认是否存在一直进出频道或者一直切换订阅流的情况,导致的卡顿。

步骤2 联系技术支持

如果通过以上步骤,问题仍无法解决,请联系网易云信技术支持工程师,并提供以下信息,方便工程师快速定位问题:

信息类别 信息详情
必要信息 房间名称(channelName)。
视频发送方和接收方的用户的 uid。
出现卡顿的时间段。
辅助信息 SDK 日志文件。具体如何获取日志请参见 SDK 的日志从哪里获取
NERTC SDK 版本号、手机的型号,手机系统的版本号,如果有外接设备(摄像头、耳麦等等),提供设备的型号。

音频和画面不同步

可能原因

音频和画面不同步主要是接收端的问题。在 webrtc 中负责音频和画面同步的主要是接收模块中的 jitter buffer 模块,在 jitter buffer 中会去取 audiomax_delay,根据这个 max_delay 来估算视频的 delay,决定视频 jitter buffer 什么时候出帧。

视频帧率过低,音频丢包严重等原因也有可能造成音频和画面不同步。

步骤1 问题自查

  1. 在服务监控平台查看相关的通话质量数据,具体步骤请参见监控通话质量

    1. 查看视频上行帧率,如果上行帧率太低,请查看 setVideoProfile 设置的帧率是否正常。
    • 在通信模式下,建议您将帧率设置为 24 fps,用户在视觉上不会出现卡顿现象。
    • 在直播模式下,建议您将帧率适当降低至 15 fps,保证直播画面的高清晰度。
    1. 如果设置的帧率正常,但服务监控平台上查看的上行帧率远低于设置的帧率,大概率是设备的CPU和内存占用过高导致卡顿,请尝试更换设备。
    2. 查看视频下行帧率,如果下行帧率太低,请查看视频上行丢包率和下行丢包率是否正常。如果丢包率过高一般是网络状况不稳定导致音频和画面不同步。
  2. 检查视频帧的 timeStamp 参数的传参是否正确。

    timeStamp 的单位是毫秒。

步骤2 联系技术支持

如果通过以上步骤,问题仍无法解决,请联系网易云信技术支持工程师,并提供以下信息,方便工程师快速定位问题:

信息类别 信息详情
必要信息 房间名称(channelName)。
视频发送方和接收方的用户的 uid。
出现音频和画面不同步的时间段。
辅助信息 SDK 日志文件。具体如何获取日志请参见 SDK 的日志从哪里获取
NERTC SDK 版本号、手机的型号,手机系统的版本号,如果有外接设备(摄像头、耳麦等等),提供设备的型号。
此文档是否对你有帮助?
有帮助
去反馈
  • 监控通话质量
  • 看不到远端的画面
  • 步骤1 问题自查
  • 步骤2 联系技术支持
  • 视频画面模糊、马赛克
  • 可能原因
  • 步骤1 问题自查
  • 步骤2 联系技术支持
  • 视频卡顿
  • 可能原因
  • 步骤1 问题自查
  • 步骤2 联系技术支持
  • 音频和画面不同步
  • 可能原因
  • 步骤1 问题自查
  • 步骤2 联系技术支持