# 灵感：Meeting Kit

- Link: https://www.ixiqin.com/2022/06/01/inspiration-the-meeting-kit/
- Published: 2022-06-01T06:00:00+08:00
- Author: 白宦成

文章目录

 [Toggle](https://www.ixiqin.com/2022/06/01/inspiration-the-meeting-kit/#)

 * [开源项目： Meeting Kit](https://www.ixiqin.com/2022/06/01/inspiration-the-meeting-kit/#%e5%bc%80%e6%ba%90%e9%a1%b9%e7%9b%ae%ef%bc%9a_meeting_kit)
    - [Features](https://www.ixiqin.com/2022/06/01/inspiration-the-meeting-kit/#features)
    - [项目的长期发展](https://www.ixiqin.com/2022/06/01/inspiration-the-meeting-kit/#%e9%a1%b9%e7%9b%ae%e7%9a%84%e9%95%bf%e6%9c%9f%e5%8f%91%e5%b1%95)
 * [现有项目对比](https://www.ixiqin.com/2022/06/01/inspiration-the-meeting-kit/#%e7%8e%b0%e6%9c%89%e9%a1%b9%e7%9b%ae%e5%af%b9%e6%af%94)

我最近在使用 Agora SDK 开发一个视频会议软件，在开发各种视频会议的细节功能时，我不由得
疑惑。为什么一定要开发会议当中的一些基础功能 —— 比如静音、踢人、设置设备、会议聊天。

当然， 这些东西开发起来并不复杂 —— 你只需要基于 Agora SDK 就可以开发出来，只是我在
想，这些非常基础的功能，能否有一些现成的功能 （是的，我非常懒）。

所以，我在想，能否有一个 SDK ，可以帮助我简化一下视频会议的开发（视频会议算是一个
非常普适/标准）。

## 开源项目： Meeting Kit

### Features

 * 开箱即用的视频会议功能
    - 静音 / 设置音频设备
    - 视频分享 / 设置视频设备
    - 屏幕分享 / 自定义屏幕分享设备类型（包含默认值，可自定义）
    - 虚拟背景功能 / 支持自定义虚拟背景 Template
    - 信号状态链接功能
    - 自定义功能区
    - 不同布局模式（可参考腾讯会议、Zoom 等视频软件）
    - 录屏功能
 * 配置 APPID & Token 即可初始化一个标准的视频会议应用。
 * 自定义各组件样式
 * 支持导出部分功能作为一个单独的组件在外部使用（比如需要传入 Client 和 Track）

### 项目的长期发展

 * 支持底层替换
    - 可以支持 Agora、AWS、腾讯云、自建 WebRTC 中转节点（Premium Plugin？）
 * 支持多种常用开发方案
    - 或许可以作为一个独立的 Organization，下辖 React、Vue、Flutter、iOS、Android
      插件。
 * 支持更多功能的插件
    - 比如美颜，可能需要 WebAssembly
    - 比如 Memoji
 * 产出课程 (Premium)
 * …

## 现有项目对比

 * Agora-RTC-React/Agora-RTM-React：这两个项目虽然简化了 Agora SDK 在 React 生态
   下的使用，但对于开发者来说这些也仅仅是简化了开发，对于开箱即用的应用而言，还是
   有限。
