作品简介

这是一本全面、详细讲解WebRTC技术以及如何使用它构建一个可商用的视频会议系统的著作。

技术维度,本书不仅详细讲解了WebRTC规范和全部API、信令系统、底层技术、移动端和服务端实现,而且还总结了作者多年来的“踩坑”经验;实战维度,本书不仅提供了可直接应用于视频会议和在线教育等场景的真实案例,而且开源了一个可商用的视频会议系统WiLearning,教读者如何从0到1搭建一个高并发、易扩展的视频会议系统。

栗伟:作者简介栗伟资深音视频技术专家,在该领域有多年实践经验,对WebRTC有非常深入的研究。曾任职于中科院计算所、CC视频,任职期间利用WebRTC技术开发了直播、在线课堂、视频会议等商业产品,并发用户数达到500万。开源社区的积极参与者,在GitHub上开源了视频会议项目WiLearning,免费供中小企业使用。

作品目录

  • 前言
  • 第1章 WebRTC概述
  • 1.1 WebRTC的历史
  • 1.2 WebRTC的技术架构
  • 1.3 WebRTC的网络拓扑
  • 1.4 Simulcast联播
  • 1.5 可伸缩视频编码
  • 1.6 WebRTC的兼容性
  • 1.7 其他直播技术
  • 1.8 统一计划与Plan B
  • 1.9 本章小结
  • 第2章 本地媒体
  • 2.1 媒体流
  • 2.2 媒体轨道
  • 2.3 媒体约束
  • 2.4 媒体设备
  • 2.5 从canvas获取媒体流
  • 2.6 从媒体元素获取媒体流
  • 2.7 播放媒体流
  • 2.8 录制媒体流
  • 2.9 示例
  • 2.10 本章小结
  • 第3章 传输技术
  • 3.1 RTP
  • 3.2 RTCP
  • 3.3 SRTP/SRTCP
  • 3.4 TLS/DTLS
  • 3.5 SDP
  • 3.6 ICE
  • 3.7 搭建STUN/TURN服务器
  • 3.8 本章小结
  • 第4章 连接管理
  • 4.1 WebRTC建立连接的过程
  • 4.2 RTCPeerConnection接口
  • 4.3 完美协商模式
  • 4.4 示例
  • 4.5 本章小结
  • 第5章 RTP媒体管理
  • 5.1 WebRTC编解码
  • 5.2 RTCPeerConnection RTP扩展
  • 5.3 传输媒体流
  • 5.4 RTP收发管理
  • 5.5 RTP发送器
  • 5.6 RTP接收器
  • 5.7 DTLS传输层
  • 5.8 ICE传输层
  • 5.9 使用DTMF
  • 5.10 RTC错误处理
  • 5.11 通话的挂起与恢复
  • 5.12 示例
  • 5.13 本章小结
  • 第6章 信令服务器
  • 6.1 使用Node.js
  • 6.2 使用TypeScript
  • 6.3 使用Express
  • 6.4 使用Socket.IO
  • 6.5 实现信令服务器
  • 6.6 实现信令客户端
  • 6.7 示例
  • 6.8 本章小结
  • 第7章 数据通道
  • 7.1 SCTP
  • 7.2 RTCPeerConnection数据通道扩展接口
  • 7.3 RTCSctpTransport
  • 7.4 RTCDataChannel
  • 7.5 带内协商与带外协商
  • 7.6 文字聊天与文件传输
  • 7.7 本章小结
  • 第8章 统计数据
  • 8.1 统计数据入口
  • 8.2 RTCStats及其扩展
  • 8.3 实时码率监测
  • 8.4 本章小结
  • 第9章 移动端WebRTC
  • 9.1 原生应用与混合应用
  • 9.2 原生开发环境
  • 9.3 WebView
  • 9.4 Cordova
  • 9.5 Ionic Framework
  • 9.6 基于Ionic的WebRTC移动应用
  • 9.7 本章小结
  • 第10章 从0到1打造多人视频会议系统
  • 10.1 整体设计
  • 10.2 媒体服务器
  • 10.3 Mediasoup信令交互过程
  • 10.4 服务器端实现
  • 10.5 客户端实现
  • 10.6 传输质量监控
  • 10.7 从网络故障中恢复
  • 10.8 本章小结
展开全部