摘要 | 第4-5页 |
ABSTRACT | 第5页 |
1 引言 | 第9-15页 |
1.1 研究背景 | 第9-10页 |
1.2 研究意义 | 第10页 |
1.3 国内外研究现状 | 第10-13页 |
1.3.1 视频会议系统现状 | 第10-12页 |
1.3.2 WebRTC现状 | 第12页 |
1.3.3 HTML5现状 | 第12-13页 |
1.3.4 Node.js现状 | 第13页 |
1.3.5 Apache现状 | 第13页 |
1.4 本文的研究内容 | 第13-15页 |
2 系统原理 | 第15-29页 |
2.1 WebRTC | 第15-16页 |
2.1.1 总体架构 | 第15-16页 |
2.1.2 WebRTC组件介绍 | 第16页 |
2.2 JavaScript接口 | 第16-20页 |
2.2.1 getUserMedia | 第16-17页 |
2.2.2 RtcPeerConnection | 第17-20页 |
2.2.3 RTCDataChannel | 第20页 |
2.3 媒体流监听和处理 | 第20-23页 |
2.3.1 音频模块结构 | 第21-22页 |
2.3.2 音频处理流程 | 第22页 |
2.3.3 视频模块结构 | 第22页 |
2.3.4 视频处理流程 | 第22-23页 |
2.4 NAT | 第23-24页 |
2.4.1 NAT分类 | 第23页 |
2.4.2 NAT工作原理 | 第23-24页 |
2.4.3 NAT穿越 | 第24页 |
2.5 基于STUN、TURN、ICE协议的NAT穿越 | 第24-27页 |
2.5.1 STUN穿越 | 第25-26页 |
2.5.2 TURN穿越 | 第26页 |
2.5.3 ICE穿越 | 第26-27页 |
2.6 本章小结 | 第27-29页 |
3 系统设计与实现 | 第29-49页 |
3.1 系统需求分析 | 第29-31页 |
3.1.1 功能性需求分析 | 第29-30页 |
3.1.2 非功能性需求分析 | 第30-31页 |
3.2 总体架构 | 第31-32页 |
3.3 客户端实现方案 | 第32-39页 |
3.3.1 PC客户端实现 | 第32-37页 |
3.3.1.1 登录模块 | 第32-34页 |
3.3.1.2 音视频展示模块 | 第34-35页 |
3.3.1.3 音视频传输模块 | 第35页 |
3.3.1.4 即时消息模块 | 第35-36页 |
3.3.1.5 用户列表模块 | 第36-37页 |
3.3.2 iOS客户端实现 | 第37-39页 |
3.4 服务器的搭建 | 第39-43页 |
3.4.1 房间服务器的搭建 | 第39-40页 |
3.4.2 信令服务器的搭建 | 第40-42页 |
3.4.2.1 信令服务器对特殊信令的响应 | 第41-42页 |
3.4.2.2 信令服务器对一般信令的响应 | 第42页 |
3.4.3 STUN/TURN/ICE服务器的搭建 | 第42-43页 |
3.5 回声消除算法的设计与实现 | 第43-45页 |
3.6 带宽自适应算法的设计与实现 | 第45-46页 |
3.7 本章小结 | 第46-49页 |
4 系统测试 | 第49-61页 |
4.1 客户端运行效果图 | 第49-52页 |
4.2 服务器运行情况 | 第52-54页 |
4.3 网络数据监控情况 | 第54-58页 |
4.4 系统CPU占用率测试 | 第58-59页 |
4.5 本章小结 | 第59-61页 |
5 总结与展望 | 第61-63页 |
5.1 总结 | 第61页 |
5.2 展望 | 第61-63页 |
参考文献 | 第63-67页 |
致谢 | 第67页 |