# jitsi-api **Repository Path**: guo_chao_nan/jitsi-api ## Basic Information - **Project Name**: jitsi-api - **Description**: 本项目基于jitsi 音视频api 编写的视频通话实例 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-04-20 - **Last Updated**: 2020-12-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # jitsi-api #### 介绍 本项目基于jitsi 音视频api 编写的视频通话实例 #### 软件架构 软件架构说明 需要先按照jitsi meet 音视频组件 #### 相关资料 //jitsi meet 是整个视频会议服务 (由React Native开发) jitsi meet https://github.com/jitsi/jitsi-meet //lib-jitsi-meet 是jitsi web api js类库 lib-jitsi-meet https://github.com/jitsi/lib-jitsi-meet //android 与 ios 的sdk jitsi-meet-sdk-samples https://github.com/jitsi/jitsi-meet-sdk-samples //electron 类库 jitsi-meet-electron-utils https://github.com/jitsi/jitsi-meet-electron-utils //视频录制方案 jibri https://github.com/jitsi/jibri #### 架构说明 ``` + + | | | | v | 443 | +-------+ | | | | | Nginx | | | | | +--+-+--+ | | | | +------------+ | | +--------------+ | | | | | | | | | jitsi-meet +<---+ +--->+ prosody/xmpp | | | |files 5280 | | | +------------+ +--------------+ v 5222,5347^ ^5347 4443,10000 +--------+ | | +-------------+ | | | | | | | jicofo +----^ ^----+ videobridge | | | | | +--------+ +-------------+ ``` prosody 为开源的xmpp服务 videobridge 为视频桥 jitsi-meet 为jitsi服务前台页面 jicofo jitsi信令服务器 jibri 视频录制 #### 安装教程 1. 安装jitsi meet 服务器版本: ubuntu 18.04 安装文档:https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md 建议设置域名 本地测试通过修改host文件进行测试 #### 使用说明 1. 在example.js设置服务器地址 ``` hosts: { domain: 'xq.jitsi', //jitsi 域名服务 muc: 'conference.xq.jitsi' // conference 为房间名 muc xmpp协议中的房间概念 }, bosh: 'https://xq.jitsi/http-bind', // xmpp 的bosh地址 // The name of client node advertised in XEP-0115 'c' stanza clientNode: 'http://jitsi.org/jitsimeet' ``` 2. 本项目为静态页面,将静态页面放入 nginx服务中访问index.html #### 功能说明 lib-jitsi-meet 文档 https://github.com/jitsi/lib-jitsi-meet/blob/master/doc/API.md 1. 挂断 2. 屏幕共享 3. 发送消息 (群发与单人发送) 4. 获取房间信息 5. 关闭摄像头 开启摄像头 6. 选择音频设备与视频设备 7. 监控通话状态 (localStatsUpdated 本地 ,remoteStatsUpdated 远端监控) #### 遇到的问题 1. jibri 视频录播官方并未给出最优方案 2. jibri 按照官方文档未安装成功 3. 未找到获取当前视频质量 初步测试,jitsi 1 对 1 视频中并未使用视频桥通讯 ,而是采用p2p 点到点方式,当房间人数大于2人,通过视频桥 进行通讯,4核4g服务器下 6人房间,通话质量稳定,视频质量较低,