一款轻量级的音视频会议的开源框架项目
本地 docker 部署
-
下载代码且本地安装好了
docker环境 -
复制
.env.example文件,并改名为.envcp env.example .env -
运行脚本文件
./gen-passwords.sh -
创建
CONFIG文件目录// For windows echo web/crontabs,web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri | % { mkdir "~/.jitsi-meet-cfg/$_" } // For Linux mkdir -p ~/.jitsi-meet-cfg/{web/crontabs,web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri} -
Run
docker-compose up -d
Mac 和 windows 的 docker desktop 默认安装了 docker-compose, 若没安装请先安装 docker-compose
-
设置公网访问地址
使用 Jitsi meet
- 创建
Jitsi实例
const domain = 'https://localhost:8443' // 也可以使用在线服务 meet.jit.si
const options = {
roomName: 'JitsiMeetAPIExample', // 默认会议名称
width: 700, // 会议窗口宽度
height: 700, // 会议窗口高度
parentNode: document.querySelector('#meet') // dom 父节点
};
const api = new JitsiMeetExternalAPI(domain, options);
- 使用截图功能
api.captureLargeVideoScreenshot().then(data => {
// data is an Object with only one param, dataURL
// data.dataURL = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAA..."
const imgs = document.getElementById('imgs')
const img = document.createElement('img')
img.setAttribute('src', data.dataURL)
imgs.appendChild(img)
});
- 其它功能请参考官方文档
目前该框架的录制功能需要安装
jibri但是需要安装在 Linux 环境下,等回头装个虚机再来分享。