摘要 | 第3-5页 |
ABSTRACT | 第5-6页 |
第一章 绪论 | 第13-18页 |
1.1 课题研究背景和意义 | 第13-14页 |
1.1.1 研究背景 | 第13页 |
1.1.2 研究意义 | 第13-14页 |
1.2 国内外研究现状 | 第14-15页 |
1.3 研究目标以及内容 | 第15-16页 |
1.4 论文的组织结构 | 第16-17页 |
1.5 本章小结 | 第17-18页 |
第二章 技术原理介绍 | 第18-26页 |
2.1 iOS原理介绍 | 第18-22页 |
2.1.1 iOS系统介绍 | 第18页 |
2.1.2 iOS系统架构 | 第18-20页 |
2.1.3 iOS开发语言介绍以及本文优化 | 第20-21页 |
2.1.4 iOS开发工具介绍 | 第21-22页 |
2.2 rtmp流媒体协议介绍与实现 | 第22-23页 |
2.2.1 协议本身介绍 | 第22页 |
2.2.2 rtmp协议的工作原理 | 第22-23页 |
2.3 推流LFLiveKit框架的简介与使用 | 第23页 |
2.3.1 LFLiveKit简介 | 第23页 |
2.3.2 LFLiveKit使用 | 第23页 |
2.4 websocket的使用 | 第23-26页 |
第三章 系统设计分析 | 第26-30页 |
3.1 系统设计分析 | 第26-27页 |
3.2 用户角色分析 | 第27-28页 |
3.2.1 学生 | 第27页 |
3.2.2 教师 | 第27-28页 |
3.3 系统功能模块分析 | 第28页 |
3.4 系统特色简述 | 第28-29页 |
3.5 本章小结 | 第29-30页 |
第四章 系统设计 | 第30-49页 |
4.1 系统架构设计 | 第30-32页 |
4.2 客户端模块设计 | 第32-40页 |
4.2.1 登录 | 第33-34页 |
4.2.2 手机号注册 | 第34页 |
4.2.3 直播开启 | 第34-35页 |
4.2.4 课堂云盘 | 第35-36页 |
4.2.5 查看直播状态 | 第36页 |
4.2.6 录播 | 第36-37页 |
4.2.7 基于学科不同分类的热门推荐 | 第37页 |
4.2.8 教学互动(聊天) | 第37-40页 |
4.3 服务器模块设计 | 第40-44页 |
4.4 数据库设计 | 第44-48页 |
4.4.1 数据库实体关系设计 | 第44-45页 |
4.4.2 表结构 | 第45页 |
4.4.3 直播视频表,用户表,上传文件表 | 第45-47页 |
4.4.4 表中数据 | 第47-48页 |
4.5 本章小节 | 第48-49页 |
第五章 系统实现与测试 | 第49-72页 |
5.1 开发环境简介 | 第49页 |
5.2 客户端模块的实现 | 第49-58页 |
5.2.1 查看直播状态 | 第51页 |
5.2.2 录播 | 第51-52页 |
5.2.3 基于学科不同分类的热门推荐及查询 | 第52-55页 |
5.2.4 教学互动模块 | 第55-56页 |
5.2.5 语音功能以及数据持久化 | 第56-57页 |
5.2.6 系统设置模块 | 第57-58页 |
5.2.7 Nsfilemanager的文件清理 | 第58页 |
5.3 服务器功能实现 | 第58-60页 |
5.3.1 nginx直播服务器概述 | 第58-59页 |
5.3.2 ffmpeg框架介绍 | 第59页 |
5.3.3 IJKPlayer视频实现的框架介绍与使用 | 第59-60页 |
5.4 系统核心模块的实现 | 第60-70页 |
5.4.1 摄像头数据采集实现 | 第60-64页 |
5.4.2 麦克风数据采集实现 | 第64-65页 |
5.4.3 视频编码实现 | 第65-67页 |
5.4.4 音频编码实现 | 第67-68页 |
5.4.5 语音的base64转码实现 | 第68-69页 |
5.4.6 APNS开课提醒 | 第69页 |
5.4.7 利用token进行安全验证 | 第69-70页 |
5.5 系统测试 | 第70-72页 |
5.5.1 应用的集成测试 | 第70-71页 |
5.5.2 应用的系统测试 | 第71-72页 |
第六章 总结与展望 | 第72-73页 |
参考文献 | 第73-75页 |
致谢 | 第75页 |