实时语音
  • iOS
  • Android : Java
  • macOS
  • Windows
  • Linux
  • Web
  • 小程序
  • Flutter
  • Electron
  • Unreal Engine
  • Unity3D
  • uni-app
  • React Native
  • Cocos Creator
  • 产品简介
  • 下载
  • 快速开始
    • 跑通示例源码
    • 集成 SDK
    • 实现音频通话
    • 实时音视频 SDK 与实时语音 SDK 差异
    • 场景化音视频配置
  • 通信能力
  • 房间能力
  • 音频能力
  • 直播能力
  • 其他能力
  • 客户端 API
  • 服务端 API
  • 常见错误码
  • 常见问题
  • 文档中心
  • 实时语音
  • 音频能力
  • 场景化 AI 降噪

场景化 AI 降噪

更新时间:2024-01-02 18:48

功能简介

场景化 AI 降噪,是指实时自动识别不同的场景,智能调整 AI 降噪策略,提供最佳的降噪及音质效果。目前支持两种常见降噪场景:

  • 通话场景下,将除人声外的所有声音识别为噪音并进行消除。 在消除稳态噪声(详情请参考 音频 3A 处理)的基础上,有效消除非稳态噪声且实现人声高保真,主要噪声包括鼠标、键盘、敲击、空调、厨房碗碟、嘈杂餐厅、环境风声、咳嗽、吹气等非人声的噪声,以及小房间的人声混响。
  • 音乐场景下,自动调整降噪效果,还原音乐音质。 实时对 mic 输入进行音乐检测,在声卡、弹唱或近场音乐场景下,自动调整降噪等级,保证音乐的高保真音质。
  • 使用 AI 降噪功能前,请先联系 ZEGO 技术支持进行特殊编包。
  • ZEGO Express SDK 从 3.0.0 版本开始,支持智能识别音乐场景。在音乐场景下,AI 降噪可以自动降低降噪等级,提升音质体验。如需使用该功能,请联系 ZEGO 技术支持进行特殊编包与配置。

功能优势

  • 能消除 80% 的噪声。
  • 延迟低。
  • 占用内存少,和传统降噪基本一致。
  • CPU 使用率低。
  • 音乐场景识别准确率达 99%。

使用场景

本功能适用于语音房、会议、语音开黑等 1v1 或多人音视频通话场景,以及声卡、弹唱、近场音乐的直播或者在线 KTV 场景。

音乐场景识别需要打开音乐检测开关,请联系 ZEGO 技术支持配置开启音乐检测功能。

可消除的噪声

开发者可以使用本功能,消除以下噪音:

场景 一些典型噪声
会议室
  • 键盘声
  • 桌子敲击声
办公室
  • 键盘声
  • 周围同事说话声
交通工具
  • 汽笛声
  • 汽车经过的呼啸声
  • 车载音乐声
  • 雨声及雨刮声
网吧
  • 键盘声
  • 周围人语音声
咖啡厅
  • 椅子拖动声
  • 周围人说话声
  • 尖锐碰撞声

效果展示

办公室

原始音频包含:鼠标点击声、键盘声、鼓掌声、摩擦声、办公室嘈杂声、空调声等。

AI 降噪后:

公共场所

原始音频包含:雨声、电车声、炒菜声、汽车呼啸声等。

AI 降噪后:

音乐场景

原始音频:

常规 AI 降噪:消除噪音,但音乐损伤大。

场景化 AI 降噪后:消除噪音,音乐品质保真。

前提条件

在实现 AI 降噪功能之前,请确保:

使用步骤

开发者可以按照以下步骤完成 AI 降噪的相关设置:

  1. 请联系 ZEGO 技术支持配置开启音乐检测功能。如果已开启,请忽略该步骤。

  2. 初始化和登录房间的具体流程,请参考实现视频通话文档中的 “创建引擎” 及 “登录房间”。

  3. 调用 enableANS 接口,开启噪声抑制,该功能开启后可以使人声更加清晰。

  1. 开启噪声抑制后,开发者可通过调用 setANSMode 接口,设置 ANS 模式,开启 AI 降噪功能。以下展示了部分 AI 降噪模式,更多模式请参考 ZegoANSMode

    AI 降噪模式 适用场景
    ZegoANSMode.AI
    轻量模式,具有良好的降噪效果,且性能消耗极低,适用于室内噪音环境中。
    ZegoANSMode.AI_BALANCED
    均衡模式,与轻量模式相比,在相同的人声保真效果前提下,噪音抑制效果明显提升,可以达到干净无噪音或不扰人的程度;但性能消耗稍微增加。适用于街道、马路、市场等较为嘈杂(信噪比低)的户外环境中。
    // 开启 ANS
    engine.enableANS(true);
    // 注意:设置 ANS 模式 ZegoANSMode 后,ZEGO Express SDK 会强制关闭瞬态噪声抑制 [enableTransientANS]
    engine.setANSMode(ZegoANSMode.AI);
    // 可选,设置为 AI_BALANCED 模式
    engine.setANSMode(ZegoANSMode.AI_BALANCED);
本篇目录