实时音视频
  • iOS
  • Android : Java
  • macOS
  • Windows
  • HarmonyOS
  • Linux
  • Web
  • 小程序
  • Flutter
  • Electron
  • Unity3D
  • uni-app
  • React Native
  • Cocos2D
  • 产品简介
  • 下载
  • 体验 App
  • 快速开始
    • 跑通示例源码
    • 集成 SDK
    • 实现视频通话
    • 实时音视频 SDK 与实时语音 SDK 差异
    • 场景化音视频配置
  • 基础功能
  • 进阶功能
  • 最佳实践
  • 常见错误码
  • 服务端 API
  • 客户端 API
  • 常见问题

实时音视频 SDK 与实时语音 SDK 差异

更新时间:2022-08-02 15:35

从 v2.20.0 版本起,实时音视频和实时语音之间不再有 API 的差异,即可以随时从实时音视频 SDK 切换到实时语音 SDK,反之亦然。

实时语音 SDK 与实时音视频 SDK 之间只有功能上的差异:对于实时语音 SDK 来说,部分跟视频相关的 API (比如视频编码参数设置、预览和拉流的 ZegoCanvas 参数等)设置后没有效果,但不会报错。

涉及到的 API 如下:

  • startPreview
    • 在实时音视频 SDK 中的效果为:启动麦克风、启动摄像头,并且如果有在 canvas 参数中传入视图,则 SDK 会在该视图中渲染预览画面。
    • 在实时语音 SDK 中的效果为:启动麦克风。开发者可以在调用此 API 时,将 canvas 参数设置为 null,或者若存在重载函数,可以使用此 API 不带 canvas 参数的重载函数。

在实时语音 Flutter / Electron / uni-app / Unity3D / React-Native SDK 上调用 startPreview 时,仍然会启动摄像头;开发者可以在调用 startPreview 前,先调用 enableCamera 关闭摄像头,以避免 SDK 请求摄像头权限。

  • startPlayingStream
    • 在实时音视频 SDK 中的效果为:开始拉流,播放拉到的流的音频,并且如果开发者在 canvas 参数中传入视图,则 SDK 会在该视图中渲染拉到的流的视频画面。
    • 在实时语音 SDK 中的效果为:开始拉流,播放拉到的流的音频。开发者可以在调用此 API 时,将 canvas 参数设置为 null,或者若存在重载函数,可以使用此 API 不带 canvas 参数的重载函数。

其余所有与视频相关的 API 在实时语音 SDK 中都没有效果。您可以通过 API 中提供的注释 Note: This function is only available in ZegoExpressVideo SDK!,判断该 API 是否与视频相关。若存在该注释,则表示该 API 与视频相关。

本篇目录