《免费讲课软件技术文档》
1. 软件概述
免费讲课软件是一款专为教育工作者、培训讲师及个人知识分享者设计的开源教学工具,支持实时音视频授课、屏幕共享、互动白板、课程录制等功能。其核心目标是通过简化技术门槛,提供稳定、高兼容性的在线教学解决方案,适用于K12教育、职业培训、企业内训等多种场景。软件采用模块化设计,兼容Windows、macOS及主流Linux操作系统,并支持跨平台多端同步。
2. 核心功能模块
2.1 实时音视频授课
2.2 互动教学工具
2.3 课程管理与回放
3. 技术架构设计
3.1 整体架构
免费讲课软件采用分层架构设计(如图1),分为:
1. 接入层:Nginx反向代理实现负载均衡,支持HTTP/3协议提升连接效率。
2. 业务逻辑层:基于微服务拆分用户管理、课程调度、实时通信等模块。
3. 数据层:MySQL集群负责结构化数据存储,MinIO对象存储用于大文件处理。
3.2 关键模块说明
4. 使用说明
4.1 安装与部署
推荐环境:
部署步骤:
1. 下载Docker镜像:
bash
docker pull freelecture/teacher:latest
2. 启动服务:
bash
docker-compose up -d
3. 访问管理后台:`
4.2 操作流程
1. 创建课程:选择课堂模式→上传课件→设置互动规则(如举手权限、聊天审核)。
2. 学生加入:通过分享链接或课程ID进入教室,支持浏览器无插件启动。
3. 授课中控制:可随时切换共享内容、禁言特定用户或启动分组任务。
5. 配置要求
5.1 硬件建议
| 场景 | CPU核心 | 内存 | 带宽 |
| 小型课堂(≤50人) | 4核 | 8GB | 10Mbps上行 |
| 大型直播(≥1000人) | 16核 | 32GB | 100Mbps上行 |
5.2 系统依赖
5.3 安全配置
6. 常见问题解答(FAQ)
1. Q:安装时提示端口冲突?
A:修改`docker-compose.yml`中8080、1935端口映射,或关闭占用程序。
2. Q:学生端音视频卡顿?
A:检查服务器带宽负载,或启用“自适应码率”功能降低分辨率。
3. Q:白板内容无法保存?
A:确保MinIO存储服务正常运行,且用户目录具有写入权限。
免费讲课软件通过模块化设计与高性能架构,为教育工作者提供了低成本、高灵活性的在线教学解决方案。其开源特性允许开发者根据需求二次开发,未来计划集成AI助教、多语言实时翻译等进阶功能。如需获取最新版本或参与社区贡献,请访问项目GitHub仓库:`/freelecture`。